Files
base/docs/docs.go
2026-04-10 18:25:21 +03:30

3151 lines
102 KiB
Go

// Package docs Code generated by swaggo/swag. DO NOT EDIT
package docs
import "github.com/swaggo/swag"
const docTemplate = `{
"schemes": {{ marshal .Schemes }},
"swagger": "2.0",
"info": {
"description": "{{escape .Description}}",
"title": "{{.Title}}",
"termsOfService": "http://swagger.io/terms/",
"contact": {
"name": "API Support",
"url": "http://www.abric.io/support",
"email": "support@abric.io"
},
"license": {
"name": "Apache 2.0",
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
},
"version": "{{.Version}}"
},
"host": "{{.Host}}",
"basePath": "{{.BasePath}}",
"paths": {
"/api/specialists/v1/page-sections": {
"get": {
"security": [
{
"Bearer": []
}
],
"produces": [
"application/json"
],
"tags": [
"Specialist"
],
"summary": "get page sections",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.PageSectionsResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/specialists/v1/page-sections/contact": {
"put": {
"security": [
{
"Bearer": []
}
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Specialist"
],
"summary": "update contact section",
"parameters": [
{
"description": "contact section",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.ContactDTO"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/specialists/v1/page-sections/hero": {
"put": {
"security": [
{
"Bearer": []
}
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Specialist"
],
"summary": "update hero section",
"parameters": [
{
"description": "hero section",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.HeroDTO"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/specialists/v1/page-sections/skills": {
"put": {
"security": [
{
"Bearer": []
}
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Specialist"
],
"summary": "update skills section",
"parameters": [
{
"description": "skills section",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.SkillsUpdateRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/specialists/v1/profile": {
"get": {
"security": [
{
"Bearer": []
}
],
"produces": [
"application/json"
],
"tags": [
"Specialist"
],
"summary": "get specialist profile",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.ProfileResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/assets": {
"post": {
"description": "create a new asset",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Asset"
],
"summary": "create asset",
"parameters": [
{
"description": "create asset request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.CreateAssetRequest"
}
}
],
"responses": {
"201": {
"description": "asset response",
"schema": {
"$ref": "#/definitions/dto.AssetResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "category not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/assets/categories": {
"get": {
"description": "returns all asset categories",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Asset"
],
"summary": "list asset categories",
"responses": {
"200": {
"description": "list of categories",
"schema": {
"$ref": "#/definitions/dto.ListCategoriesResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/assets/categories/preview": {
"post": {
"description": "returns asset categories, each with up to N sample assets (default 8). Use for carousels and landing previews.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Asset"
],
"summary": "list categories with preview assets",
"parameters": [
{
"description": "filter options",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.CategoriesPreviewRequest"
}
}
],
"responses": {
"200": {
"description": "categories with preview assets",
"schema": {
"$ref": "#/definitions/dto.CategoriesPreviewResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/assets/categories/{id}/assets": {
"get": {
"description": "returns paginated assets for the given category. Use after fetching categories from GET /assets/categories.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Asset"
],
"summary": "list assets by category ID",
"parameters": [
{
"type": "string",
"description": "category UUID",
"name": "id",
"in": "path",
"required": true
},
{
"type": "integer",
"description": "max items per page (default 10)",
"name": "limit",
"in": "query"
},
{
"type": "integer",
"description": "page number (default 1)",
"name": "page",
"in": "query"
}
],
"responses": {
"200": {
"description": "paginated assets for category",
"schema": {
"$ref": "#/definitions/dto.ListAssetsByCategoryIDResponse"
}
},
"400": {
"description": "invalid category ID",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "category not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/assets/{id}": {
"get": {
"description": "get asset by ID",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Asset"
],
"summary": "get asset by ID",
"parameters": [
{
"type": "string",
"description": "asset ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "asset response",
"schema": {
"$ref": "#/definitions/dto.AssetResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "asset not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
},
"put": {
"description": "update an existing asset",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Asset"
],
"summary": "update asset",
"parameters": [
{
"type": "string",
"description": "asset ID",
"name": "id",
"in": "path",
"required": true
},
{
"description": "update asset request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateAssetRequest"
}
}
],
"responses": {
"200": {
"description": "asset response",
"schema": {
"$ref": "#/definitions/dto.AssetResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "asset not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
},
"delete": {
"description": "delete an asset",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Asset"
],
"summary": "delete asset",
"parameters": [
{
"type": "string",
"description": "asset ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "success response",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "asset not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/login": {
"post": {
"description": "login with email and password",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "login with credentials",
"parameters": [
{
"description": "login request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.LoginRequest"
}
}
],
"responses": {
"200": {
"description": "token response",
"schema": {
"$ref": "#/definitions/dto.TokenResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"401": {
"description": "invalid credentials",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/oauth/callback": {
"post": {
"description": "handle OAuth callback and authenticate user",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "oauth callback",
"parameters": [
{
"description": "oauth callback request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.OAuthCallbackRequest"
}
}
],
"responses": {
"200": {
"description": "oauth callback response",
"schema": {
"$ref": "#/definitions/dto.OAuthCallbackResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/oauth/redirect-url": {
"post": {
"description": "get OAuth redirect URL for the specified provider",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "get oauth redirect url",
"parameters": [
{
"description": "oauth redirect url request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.OAuthRedirectURLRequest"
}
}
],
"responses": {
"200": {
"description": "oauth redirect url response",
"schema": {
"$ref": "#/definitions/dto.OAuthRedirectURLResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/refresh-token": {
"post": {
"description": "refresh access token using refresh token",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "refresh token",
"parameters": [
{
"description": "refresh token request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.RefreshTokenRequest"
}
}
],
"responses": {
"200": {
"description": "token response",
"schema": {
"$ref": "#/definitions/dto.TokenResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"401": {
"description": "invalid refresh token",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/register": {
"post": {
"description": "register a new user with email and password",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "register with credentials",
"parameters": [
{
"description": "register request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.RegisterRequest"
}
}
],
"responses": {
"200": {
"description": "token response",
"schema": {
"$ref": "#/definitions/dto.TokenResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/reset-password": {
"post": {
"description": "reset password with reset code",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "reset password",
"parameters": [
{
"description": "reset password request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.ResetPasswordRequest"
}
}
],
"responses": {
"200": {
"description": "token response",
"schema": {
"$ref": "#/definitions/dto.TokenResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/send-reset-password-email": {
"post": {
"description": "send password reset email",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "send reset password email",
"parameters": [
{
"description": "send reset password email request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.SendResetPasswordEmailRequest"
}
}
],
"responses": {
"200": {
"description": "success response",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/send-verification-email": {
"post": {
"security": [
{
"Bearer": []
}
],
"description": "send verification email to the authenticated user",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "send verification email",
"parameters": [
{
"description": "send verification email request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.SendVerificationEmailRequest"
}
}
],
"responses": {
"200": {
"description": "success response",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/auth/verify-account": {
"post": {
"security": [
{
"Bearer": []
}
],
"description": "verify account with verification code",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Public"
],
"summary": "verify account",
"parameters": [
{
"description": "verify account request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.VerifyAccountRequest"
}
}
],
"responses": {
"200": {
"description": "success response",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/backoffice/profile-roles": {
"get": {
"description": "returns all profile roles (id, title, status)",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"BackOffice"
],
"summary": "list profile roles",
"responses": {
"200": {
"description": "list of profile roles",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.ProfileRole"
}
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
},
"post": {
"security": [
{
"BearerAuth": []
}
],
"description": "create a new profile role",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"BackOffice"
],
"summary": "create profile role",
"parameters": [
{
"description": "create request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.CreateProfileRoleRequest"
}
}
],
"responses": {
"201": {
"description": "created profile role",
"schema": {
"$ref": "#/definitions/dto.ProfileRole"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"401": {
"description": "unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/backoffice/profile-roles/{id}": {
"get": {
"description": "get profile role by ID",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"BackOffice"
],
"summary": "get profile role by ID",
"parameters": [
{
"type": "string",
"description": "profile role ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "profile role",
"schema": {
"$ref": "#/definitions/dto.ProfileRole"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
},
"put": {
"security": [
{
"BearerAuth": []
}
],
"description": "update an existing profile role",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"BackOffice"
],
"summary": "update profile role",
"parameters": [
{
"type": "string",
"description": "profile role ID",
"name": "id",
"in": "path",
"required": true
},
{
"description": "update request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateProfileRoleRequest"
}
}
],
"responses": {
"200": {
"description": "updated profile role",
"schema": {
"$ref": "#/definitions/dto.ProfileRole"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"401": {
"description": "unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
},
"delete": {
"security": [
{
"BearerAuth": []
}
],
"description": "delete a profile role",
"produces": [
"application/json"
],
"tags": [
"BackOffice"
],
"summary": "delete profile role",
"parameters": [
{
"type": "string",
"description": "profile role ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "success",
"schema": {
"$ref": "#/definitions/dto.Response"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"401": {
"description": "unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/landing": {
"get": {
"description": "returns landing page with categories, specialist roles, assets by category, specialists, and blogs",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Landing"
],
"summary": "get landing page",
"responses": {
"200": {
"description": "landing page data",
"schema": {
"$ref": "#/definitions/dto.Landing"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/platform/overview/discovery": {
"get": {
"security": [
{
"BearerAuth": []
}
],
"description": "overview for browsing users (latest assets, recently joined profiles, analytics). No profile required.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Platform"
],
"summary": "get discovery overview",
"responses": {
"200": {
"description": "overview response",
"schema": {
"$ref": "#/definitions/dto.OverviewFetchedResponse"
}
},
"401": {
"description": "unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/platform/overview/specialist": {
"get": {
"security": [
{
"BearerAuth": []
}
],
"description": "get overview for specialist view with assets, profile, skills, recently joined, analytics",
"produces": [
"application/json"
],
"tags": [
"Platform"
],
"summary": "get specialist overview",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.SpecialistOverviewFetchedResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "profile not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/platform/profile-roles": {
"get": {
"description": "returns all profile roles (id, title) for platform - use role_id when calling setup-profile",
"produces": [
"application/json"
],
"tags": [
"Platform"
],
"summary": "list profile roles",
"responses": {
"200": {
"description": "list of profile roles",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.ProfileRole"
}
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/platform/skills": {
"get": {
"description": "returns all skills from the catalog for profile update skill selection",
"produces": [
"application/json"
],
"tags": [
"Platform"
],
"summary": "list skills",
"responses": {
"200": {
"description": "list of skills",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.Skill"
}
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/platform/user/info": {
"get": {
"security": [
{
"Bearer": []
}
],
"description": "returns user and profile_id for the authenticated user",
"produces": [
"application/json"
],
"tags": [
"Platform"
],
"summary": "get account info",
"responses": {
"200": {
"description": "account info",
"schema": {
"$ref": "#/definitions/dto.UserInfoResponse"
}
},
"401": {
"description": "unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "user not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/profiles": {
"get": {
"description": "list profiles with filtering and pagination",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Profile"
],
"summary": "list profiles",
"parameters": [
{
"type": "string",
"description": "role ID",
"name": "role_id",
"in": "query"
},
{
"type": "string",
"description": "first name",
"name": "first_name",
"in": "query"
},
{
"type": "string",
"description": "last name",
"name": "last_name",
"in": "query"
},
{
"type": "string",
"description": "company",
"name": "company",
"in": "query"
},
{
"type": "string",
"description": "skill name",
"name": "skill_name",
"in": "query"
},
{
"type": "integer",
"default": 1,
"description": "page number",
"name": "page",
"in": "query"
},
{
"type": "integer",
"default": 10,
"description": "page size",
"name": "page_size",
"in": "query"
},
{
"type": "string",
"description": "sort field",
"name": "sorted_by",
"in": "query"
},
{
"type": "boolean",
"default": false,
"description": "ascending order",
"name": "ascending",
"in": "query"
}
],
"responses": {
"200": {
"description": "list profiles response",
"schema": {
"$ref": "#/definitions/dto.ListProfilesResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
},
"post": {
"description": "create a new profile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Profile"
],
"summary": "create profile",
"parameters": [
{
"description": "create profile request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.CreateProfileRequest"
}
}
],
"responses": {
"201": {
"description": "profile response",
"schema": {
"$ref": "#/definitions/dto.ProfileResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/profiles/handle/{handle}": {
"get": {
"description": "get profile by handle",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Profile"
],
"summary": "get profile by handle",
"parameters": [
{
"type": "string",
"description": "profile handle",
"name": "handle",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "profile response",
"schema": {
"$ref": "#/definitions/dto.ProfileResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "profile not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/profiles/{id}": {
"get": {
"description": "get profile by ID",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Profile"
],
"summary": "get profile by ID",
"parameters": [
{
"type": "string",
"description": "profile ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "profile response",
"schema": {
"$ref": "#/definitions/dto.ProfileResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "profile not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
},
"put": {
"description": "update an existing profile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Profile"
],
"summary": "update profile",
"parameters": [
{
"type": "string",
"description": "profile ID",
"name": "id",
"in": "path",
"required": true
},
{
"description": "update profile request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateProfileRequest"
}
}
],
"responses": {
"200": {
"description": "profile response",
"schema": {
"$ref": "#/definitions/dto.ProfileResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "profile not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
},
"delete": {
"description": "delete a profile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Profile"
],
"summary": "delete profile",
"parameters": [
{
"type": "string",
"description": "profile ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "success response",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "profile not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/profiles/{id}/assets": {
"get": {
"description": "list all assets for a profile",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Asset"
],
"summary": "list assets by profile ID",
"parameters": [
{
"type": "string",
"description": "profile ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "list assets response",
"schema": {
"$ref": "#/definitions/dto.ListAssetsResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
},
"/api/v1/user/platform/setup-profile": {
"post": {
"security": [
{
"Bearer": []
}
],
"description": "complete profile with handle, role, level, and short bio. Requires authentication.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"Platform"
],
"summary": "setup profile after registration",
"parameters": [
{
"description": "setup profile request",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/dto.SetupProfileRequest"
}
}
],
"responses": {
"200": {
"description": "success response",
"schema": {
"$ref": "#/definitions/dto.SuccessResponse"
}
},
"400": {
"description": "invalid request",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"401": {
"description": "unauthorized",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"404": {
"description": "user not found",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"409": {
"description": "profile already exists or handle already taken",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
},
"500": {
"description": "internal server error",
"schema": {
"$ref": "#/definitions/dto.ErrorResponse"
}
}
}
}
}
},
"definitions": {
"dto.AboutDTO": {
"type": "object",
"properties": {
"about": {
"type": "string"
},
"achievements": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.AchievementDTO"
}
},
"profile_picture": {
"type": "string"
}
}
},
"dto.AchievementDTO": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"title": {
"type": "string"
},
"value": {
"type": "string"
}
}
},
"dto.AchievementItemDTO": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"value": {
"type": "string"
}
}
},
"dto.AnalyticsDTO": {
"type": "object",
"properties": {
"total_assets": {
"type": "integer"
},
"total_profiles": {
"type": "integer"
}
}
},
"dto.AssetResponse": {
"type": "object",
"properties": {
"asset_category_id": {
"type": "string"
},
"category": {
"$ref": "#/definitions/dto.CategoryDTO"
},
"cover_image": {
"type": "string"
},
"created_at": {
"type": "string"
},
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"link": {
"type": "string"
},
"owner_id": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"status": {
"type": "integer"
},
"title": {
"type": "string"
},
"updated_at": {
"type": "string"
}
}
},
"dto.Blog": {
"type": "object",
"properties": {
"author": {
"type": "string"
},
"category": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
}
}
},
"category_id": {
"type": "string"
},
"content": {
"type": "string"
},
"content_html": {
"type": "string"
},
"content_json": {},
"cover_image": {
"type": "string"
},
"created_at": {
"type": "string"
},
"id": {
"type": "string"
},
"is_featured": {
"type": "boolean"
},
"meta_tags": {},
"slug": {
"type": "string"
},
"status": {
"type": "string"
},
"summary": {
"type": "string"
},
"title": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"view_count": {
"type": "integer"
}
}
},
"dto.CategoriesPreviewRequest": {
"type": "object",
"properties": {
"assets_per_category": {
"type": "integer"
},
"category_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"featured_only": {
"type": "boolean"
}
}
},
"dto.CategoriesPreviewResponse": {
"type": "object",
"properties": {
"categories": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.CategoryWithPreviewAssetsDTO"
}
}
}
},
"dto.CategoryDTO": {
"type": "object",
"properties": {
"card_type": {
"type": "string"
},
"color": {
"type": "string"
},
"description": {
"type": "string"
},
"featured": {
"type": "boolean"
},
"icon": {
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"dto.CategoryWithPreviewAssetsDTO": {
"type": "object",
"properties": {
"assets": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.AssetResponse"
}
},
"category": {
"$ref": "#/definitions/dto.CategoryDTO"
},
"has_more": {
"type": "boolean"
},
"total_assets": {
"type": "integer"
}
}
},
"dto.ContactDTO": {
"type": "object",
"properties": {
"email": {
"type": "string"
},
"phone": {
"type": "string"
},
"social_links": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.SocialLinkDTO"
}
}
}
},
"dto.CreateAssetRequest": {
"type": "object",
"properties": {
"asset_category_id": {
"type": "string"
},
"description": {
"type": "string"
},
"link": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"title": {
"type": "string"
}
}
},
"dto.CreateProfileRequest": {
"type": "object",
"properties": {
"about": {
"$ref": "#/definitions/dto.AboutDTO"
},
"contact": {
"$ref": "#/definitions/dto.ContactDTO"
},
"handle": {
"type": "string"
},
"hero": {
"$ref": "#/definitions/dto.HeroDTO"
},
"page_section_order": {
"type": "object",
"additionalProperties": {
"type": "integer"
}
},
"page_setting": {
"$ref": "#/definitions/dto.PageSettingDTO"
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.SkillDTO"
}
}
}
},
"dto.CreateProfileRoleRequest": {
"type": "object",
"properties": {
"title": {
"type": "string"
}
}
},
"dto.ErrorResponse": {
"type": "object",
"properties": {
"message": {
"type": "string"
},
"status": {
"type": "integer",
"example": 400
}
}
},
"dto.FlatProfileDTO": {
"type": "object",
"properties": {
"about": {
"type": "string"
},
"achievements": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/dto.AchievementItemDTO"
}
},
"background_image": {
"type": "string"
},
"contact_email": {
"type": "string"
},
"contact_phone": {
"type": "string"
},
"country": {
"type": "string"
},
"created_at": {
"type": "string"
},
"cta_action": {
"type": "string"
},
"cta_enabled": {
"type": "boolean"
},
"current_company": {
"type": "string"
},
"custom_roles": {
"type": "string"
},
"display_name": {
"type": "string"
},
"first_name": {
"type": "string"
},
"handle_updated_at": {
"type": "string"
},
"id": {
"type": "string"
},
"last_name": {
"type": "string"
},
"profile_handle": {
"type": "string"
},
"profile_picture": {
"type": "string"
},
"resume_link": {
"type": "string"
},
"role": {
"$ref": "#/definitions/dto.RoleDTO"
},
"role_id": {
"type": "string"
},
"role_level": {
"type": "string"
},
"short_description": {
"type": "string"
},
"social_links": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.SocialLinkDTO"
}
},
"status": {
"type": "string"
},
"updated_at": {
"type": "string"
}
}
},
"dto.HeroDTO": {
"type": "object",
"properties": {
"avatar": {
"type": "string"
},
"company": {
"type": "string"
},
"cta_enabled": {
"type": "boolean"
},
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
},
"resume_link": {
"type": "string"
},
"role_id": {
"type": "string"
},
"role_level": {
"type": "string"
},
"short_description": {
"type": "string"
}
}
},
"dto.Landing": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/dto.LandingPageData"
},
"message": {
"type": "string"
}
}
},
"dto.LandingAssetData": {
"type": "object",
"properties": {
"assets": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.AssetResponse"
}
},
"icon": {
"type": "string"
},
"id": {
"type": "string"
},
"title": {
"type": "string"
}
}
},
"dto.LandingPageData": {
"type": "object",
"properties": {
"assets": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.LandingAssetData"
}
},
"blogs": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.Blog"
}
},
"categories": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.CategoryDTO"
}
},
"specialist_roles": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.ProfileRole"
}
},
"specialists": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.Specialist"
}
}
}
},
"dto.ListAssetsByCategoryIDResponse": {
"type": "object",
"properties": {
"assets": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.AssetResponse"
}
},
"category": {
"$ref": "#/definitions/dto.CategoryDTO"
},
"page": {
"type": "integer"
},
"page_size": {
"type": "integer"
},
"total": {
"type": "integer"
},
"total_pages": {
"type": "integer"
}
}
},
"dto.ListAssetsResponse": {
"type": "object",
"properties": {
"assets": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.AssetResponse"
}
}
}
},
"dto.ListCategoriesResponse": {
"type": "object",
"properties": {
"categories": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.CategoryDTO"
}
}
}
},
"dto.ListProfilesResponse": {
"type": "object",
"properties": {
"page": {
"type": "integer"
},
"page_size": {
"type": "integer"
},
"profiles": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.ProfileResponse"
}
},
"total": {
"type": "integer"
}
}
},
"dto.LoginRequest": {
"type": "object",
"properties": {
"email": {
"type": "string"
},
"password": {
"type": "string"
}
}
},
"dto.OAuthCallbackRequest": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"provider": {
"$ref": "#/definitions/oauth.Provider"
}
}
},
"dto.OAuthCallbackResponse": {
"type": "object",
"properties": {
"access_token": {
"type": "string"
},
"is_new_user": {
"type": "boolean"
},
"refresh_token": {
"type": "string"
}
}
},
"dto.OAuthRedirectURLRequest": {
"type": "object",
"properties": {
"provider": {
"$ref": "#/definitions/oauth.Provider"
}
}
},
"dto.OAuthRedirectURLResponse": {
"type": "object",
"properties": {
"redirect_url": {
"type": "string"
}
}
},
"dto.OverviewAssetDTO": {
"type": "object",
"properties": {
"asset_category": {
"$ref": "#/definitions/dto.CategoryDTO"
},
"asset_category_id": {
"type": "string"
},
"content": {
"type": "string"
},
"cover_image": {
"type": "string"
},
"created_at": {
"type": "string"
},
"currency": {
"type": "string"
},
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"link": {
"type": "string"
},
"owner_id": {
"type": "string"
},
"price": {
"type": "integer"
},
"profile": {},
"profile_id": {
"type": "string"
},
"rating": {
"type": "integer"
},
"status": {
"type": "string"
},
"title": {
"type": "string"
},
"updated_at": {
"type": "string"
}
}
},
"dto.OverviewFetchedDataDTO": {
"type": "object",
"properties": {
"analytics": {
"$ref": "#/definitions/dto.AnalyticsDTO"
},
"assets": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.OverviewAssetDTO"
}
},
"recently_joined": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.FlatProfileDTO"
}
}
}
},
"dto.OverviewFetchedResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/dto.OverviewFetchedDataDTO"
},
"message": {
"type": "string"
}
}
},
"dto.PageSectionsResponse": {
"type": "object",
"properties": {
"contact": {
"$ref": "#/definitions/dto.ContactDTO"
},
"hero": {
"$ref": "#/definitions/dto.HeroDTO"
},
"page_section_order": {
"type": "object",
"additionalProperties": {
"type": "integer"
}
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.SkillDTO"
}
}
}
},
"dto.PageSettingDTO": {
"type": "object",
"properties": {
"visibility_level": {
"type": "string"
}
}
},
"dto.ProfileResponse": {
"type": "object",
"properties": {
"about": {
"$ref": "#/definitions/dto.AboutDTO"
},
"contact": {
"$ref": "#/definitions/dto.ContactDTO"
},
"handle": {
"type": "string"
},
"hero": {
"$ref": "#/definitions/dto.HeroDTO"
},
"id": {
"type": "string"
},
"page_section_order": {
"type": "object",
"additionalProperties": {
"type": "integer"
}
},
"page_setting": {
"$ref": "#/definitions/dto.PageSettingDTO"
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.SkillDTO"
}
}
}
},
"dto.ProfileRole": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
}
}
},
"dto.RefreshTokenRequest": {
"type": "object",
"properties": {
"refresh_token": {
"type": "string"
}
}
},
"dto.RegisterRequest": {
"type": "object",
"properties": {
"email": {
"type": "string"
},
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
},
"password": {
"type": "string"
},
"phone_number": {
"type": "string"
}
}
},
"dto.ResetPasswordRequest": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"email": {
"type": "string"
},
"password": {
"type": "string"
}
}
},
"dto.Response": {
"type": "object",
"properties": {
"data": {},
"message": {
"type": "string"
},
"status": {
"type": "integer"
}
}
},
"dto.RoleDTO": {
"type": "object",
"properties": {
"ID": {
"type": "string"
},
"Name": {
"type": "string"
}
}
},
"dto.SendResetPasswordEmailRequest": {
"type": "object",
"properties": {
"email": {
"type": "string"
}
}
},
"dto.SendVerificationEmailRequest": {
"type": "object",
"properties": {
"email": {
"type": "string"
}
}
},
"dto.SetupProfileRequest": {
"type": "object",
"properties": {
"handle": {
"type": "string"
},
"role_id": {
"type": "string"
},
"role_level": {
"type": "string"
},
"short_description": {
"type": "string"
}
}
},
"dto.Skill": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"dto.SkillDTO": {
"type": "object",
"properties": {
"level": {
"type": "string"
},
"skill_name": {
"type": "string"
}
}
},
"dto.SkillsUpdateRequest": {
"type": "object",
"properties": {
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.SkillDTO"
}
}
}
},
"dto.SocialLinkDTO": {
"type": "object",
"properties": {
"link": {
"type": "string"
},
"link_type": {
"type": "string"
}
}
},
"dto.Specialist": {
"type": "object",
"properties": {
"avatar": {
"type": "string"
},
"handle": {
"type": "string"
},
"id": {
"type": "string"
}
}
},
"dto.SpecialistOverviewFetchedDataDTO": {
"type": "object",
"properties": {
"analytics": {
"$ref": "#/definitions/dto.AnalyticsDTO"
},
"assets": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.OverviewAssetDTO"
}
},
"completionPercent": {
"type": "integer"
},
"profile": {
"$ref": "#/definitions/dto.ProfileResponse"
},
"recently_joined": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.FlatProfileDTO"
}
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.SkillDTO"
}
},
"tasks": {
"$ref": "#/definitions/dto.TasksDTO"
}
}
},
"dto.SpecialistOverviewFetchedResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/dto.SpecialistOverviewFetchedDataDTO"
},
"message": {
"type": "string"
}
}
},
"dto.SuccessResponse": {
"type": "object",
"properties": {
"message": {
"type": "string"
},
"status": {
"type": "integer",
"example": 200
}
}
},
"dto.TasksDTO": {
"type": "object",
"properties": {
"about_action": {
"type": "boolean"
},
"profile_action": {
"type": "boolean"
},
"publish_action": {
"type": "boolean"
},
"skills_action": {
"type": "boolean"
},
"social_action": {
"type": "boolean"
},
"works_action": {
"type": "boolean"
}
}
},
"dto.TokenResponse": {
"type": "object",
"properties": {
"access_token": {
"type": "string"
},
"refresh_token": {
"type": "string"
}
}
},
"dto.UpdateAssetRequest": {
"type": "object",
"properties": {
"asset_category_id": {
"type": "string"
},
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"link": {
"type": "string"
},
"status": {
"type": "integer"
},
"title": {
"type": "string"
}
}
},
"dto.UpdateProfileRequest": {
"type": "object",
"properties": {
"about": {
"$ref": "#/definitions/dto.AboutDTO"
},
"contact": {
"$ref": "#/definitions/dto.ContactDTO"
},
"handle": {
"type": "string"
},
"hero": {
"$ref": "#/definitions/dto.HeroDTO"
},
"id": {
"type": "string"
},
"page_section_order": {
"type": "object",
"additionalProperties": {
"type": "integer"
}
},
"page_setting": {
"$ref": "#/definitions/dto.PageSettingDTO"
},
"skills": {
"type": "array",
"items": {
"$ref": "#/definitions/dto.SkillDTO"
}
}
}
},
"dto.UpdateProfileRoleRequest": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
}
}
},
"dto.UserInfoResponse": {
"type": "object",
"properties": {
"email": {
"type": "string"
},
"email_verified": {
"type": "boolean"
},
"first_name": {
"type": "string"
},
"id": {
"type": "string"
},
"last_name": {
"type": "string"
},
"phone_number": {
"type": "string"
},
"profile_id": {
"type": "string"
},
"status": {
"type": "string"
}
}
},
"dto.VerifyAccountRequest": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"email": {
"type": "string"
}
}
},
"oauth.Provider": {
"type": "integer",
"enum": [
0,
1,
2,
3,
4,
5
],
"x-enum-varnames": [
"Unknown",
"Credentials",
"Google",
"GitHub",
"Linkedin",
"Mock"
]
}
},
"securityDefinitions": {
"Bearer": {
"description": "Type \"Bearer\" followed by a space and JWT token.",
"type": "apiKey",
"name": "Authorization",
"in": "header"
}
}
}`
// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = &swag.Spec{
Version: "1.0.0",
Host: "localhost:8101",
BasePath: "/",
Schemes: []string{"http", "https"},
Title: "Base API",
Description: "API for base application",
InfoInstanceName: "swagger",
SwaggerTemplate: docTemplate,
LeftDelim: "{{",
RightDelim: "}}",
}
func init() {
swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
}