| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| // 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}}", |
| "contact": {}, |
| "version": "{{.Version}}" |
| }, |
| "host": "{{.Host}}", |
| "basePath": "{{.BasePath}}", |
| "paths": { |
| "/": { |
| "get": { |
| "description": "if config file not exist try to redirect to install page", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "installation" |
| ], |
| "summary": "if config file not exist try to redirect to install page", |
| "responses": {} |
| } |
| }, |
| "/answer/admin/api/answer/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Status:[available,deleted,pending]", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "AdminAnswerPage admin answer page", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "enum": [ |
| "available", |
| "deleted", |
| "pending" |
| ], |
| "type": "string", |
| "description": "user status", |
| "name": "status", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "answer id or question title", |
| "name": "query", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "question id", |
| "name": "question_id", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/answer/status": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update answer status", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update answer status", |
| "parameters": [ |
| { |
| "description": "AdminUpdateAnswerStatusReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AdminUpdateAnswerStatusReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/badge/status": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update badge status", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "AdminBadge" |
| ], |
| "summary": "update badge status", |
| "parameters": [ |
| { |
| "description": "UpdateBadgeStatusReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateBadgeStatusReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/badges": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "list all badges by page", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "AdminBadge" |
| ], |
| "summary": "list all badges by page", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "enum": [ |
| "", |
| "active", |
| "inactive" |
| ], |
| "type": "string", |
| "description": "badge status", |
| "name": "status", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "search param", |
| "name": "q", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetBadgeListPagedResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/dashboard": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "DashboardInfo", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "DashboardInfo", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/delete/permanently": { |
| "delete": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "delete permanently", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "delete permanently", |
| "parameters": [ |
| { |
| "description": "DeletePermanentlyReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.DeletePermanentlyReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/language/options": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Get language options", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Lang" |
| ], |
| "summary": "Get language options", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/plugin/config": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get plugin config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "AdminPlugin" |
| ], |
| "summary": "get plugin config", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "plugin_slug_name", |
| "name": "plugin_slug_name", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetPluginConfigResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update plugin config", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "AdminPlugin" |
| ], |
| "summary": "update plugin config", |
| "parameters": [ |
| { |
| "description": "UpdatePluginConfigReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdatePluginConfigReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/plugin/status": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update plugin status", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "AdminPlugin" |
| ], |
| "summary": "update plugin status", |
| "parameters": [ |
| { |
| "description": "UpdatePluginStatusReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdatePluginStatusReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/plugins": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get plugin list", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "AdminPlugin" |
| ], |
| "summary": "get plugin list", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "status: active/inactive", |
| "name": "status", |
| "in": "query" |
| }, |
| { |
| "type": "boolean", |
| "description": "have config", |
| "name": "have_config", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetPluginListResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/question/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Status:[available,closed,deleted,pending]", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "AdminQuestionPage admin question page", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "enum": [ |
| "available", |
| "closed", |
| "deleted", |
| "pending" |
| ], |
| "type": "string", |
| "description": "user status", |
| "name": "status", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "question id or title", |
| "name": "query", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/question/status": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update question status", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update question status", |
| "parameters": [ |
| { |
| "description": "AdminUpdateQuestionStatusReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AdminUpdateQuestionStatusReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/reasons": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get reasons by object type and action", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "reason" |
| ], |
| "summary": "get reasons by object type and action", |
| "parameters": [ |
| { |
| "enum": [ |
| "question", |
| "answer", |
| "comment", |
| "user" |
| ], |
| "type": "string", |
| "description": "object_type", |
| "name": "object_type", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "enum": [ |
| "status", |
| "close", |
| "flag", |
| "review" |
| ], |
| "type": "string", |
| "description": "action", |
| "name": "action", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/roles": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get role list", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get role list", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetRoleResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/setting/privileges": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "GetPrivilegesConfig get privileges config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "GetPrivilegesConfig get privileges config", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetPrivilegesConfigResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update privileges config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update privileges config", |
| "parameters": [ |
| { |
| "description": "config", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdatePrivilegesConfigReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/setting/smtp": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "GetSMTPConfig get smtp config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "GetSMTPConfig get smtp config", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetSMTPConfigResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update smtp config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update smtp config", |
| "parameters": [ |
| { |
| "description": "smtp config", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateSMTPConfigReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/branding": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site interface", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site interface", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteBrandingResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site info branding", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site info branding", |
| "parameters": [ |
| { |
| "description": "branding info", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteBrandingReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/custom-css-html": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site info custom html css config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site info custom html css config", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteCustomCssHTMLResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site custom css html config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site custom css html config", |
| "parameters": [ |
| { |
| "description": "login info", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteCustomCssHTMLReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/general": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site general information", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site general information", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteGeneralResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site general information", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site general information", |
| "parameters": [ |
| { |
| "description": "general", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteGeneralReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/interface": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site interface", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site interface", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteInterfaceResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site info interface", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site info interface", |
| "parameters": [ |
| { |
| "description": "general", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteInterfaceReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/legal": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Set the legal information for the site", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "Set the legal information for the site", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteLegalResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site legal info", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site legal info", |
| "parameters": [ |
| { |
| "description": "write info", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteLegalReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/login": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site info login config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site info login config", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteLoginResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site login", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site login", |
| "parameters": [ |
| { |
| "description": "login info", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteLoginReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/seo": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site seo information", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site seo information", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteSeoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site seo information", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site seo information", |
| "parameters": [ |
| { |
| "description": "seo", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteSeoReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/theme": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site info theme config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site info theme config", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteThemeResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site custom css html config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site custom css html config", |
| "parameters": [ |
| { |
| "description": "login info", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteThemeReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/users": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site user config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site user config", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteUsersResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site info config about users", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site info config about users", |
| "parameters": [ |
| { |
| "description": "users info", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteUsersReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/siteinfo/write": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get site interface", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get site interface", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteWriteResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update site write info", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update site write info", |
| "parameters": [ |
| { |
| "description": "write info", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SiteWriteReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/theme/options": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Get theme options", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "Get theme options", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/user": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add user", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "add user", |
| "parameters": [ |
| { |
| "description": "user", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AddUserReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/user/activation": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get user activation", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get user activation", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "user id", |
| "name": "user_id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetUserActivationResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/user/password": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update user password", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update user password", |
| "parameters": [ |
| { |
| "description": "user", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateUserPasswordReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/user/profile": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "edit user profile", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "edit user profile", |
| "parameters": [ |
| { |
| "description": "user", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.EditUserProfileReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/user/role": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update user role", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update user role", |
| "parameters": [ |
| { |
| "description": "user", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateUserRoleReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/user/status": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update user", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "update user", |
| "parameters": [ |
| { |
| "description": "user", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateUserStatusReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/users": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add users", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "add users", |
| "parameters": [ |
| { |
| "description": "user", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AddUsersReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/users/activation": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "send user activation", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "send user activation", |
| "parameters": [ |
| { |
| "description": "SendUserActivationReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.SendUserActivationReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/admin/api/users/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get user page", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "admin" |
| ], |
| "summary": "get user page", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "search query: email, username or id:[id]", |
| "name": "query", |
| "in": "query" |
| }, |
| { |
| "type": "boolean", |
| "description": "staff user", |
| "name": "staff", |
| "in": "query" |
| }, |
| { |
| "enum": [ |
| "suspended", |
| "deleted", |
| "inactive" |
| ], |
| "type": "string", |
| "description": "user status", |
| "name": "status", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "records": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetUserPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/activity/timeline": { |
| "get": { |
| "description": "get object timeline", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Comment" |
| ], |
| "summary": "get object timeline", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "object id", |
| "name": "object_id", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "tag slug name", |
| "name": "tag_slug_name", |
| "in": "query" |
| }, |
| { |
| "enum": [ |
| "question", |
| "answer", |
| "tag" |
| ], |
| "type": "string", |
| "description": "object type", |
| "name": "object_type", |
| "in": "query" |
| }, |
| { |
| "type": "boolean", |
| "description": "is show vote", |
| "name": "show_vote", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetObjectTimelineResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/activity/timeline/detail": { |
| "get": { |
| "description": "get object timeline detail", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Comment" |
| ], |
| "summary": "get object timeline detail", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "revision id", |
| "name": "revision_id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetObjectTimelineResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/answer": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Update Answer", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Answer" |
| ], |
| "summary": "Update Answer", |
| "parameters": [ |
| { |
| "description": "AnswerUpdateReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AnswerUpdateReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add answer", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Answer" |
| ], |
| "summary": "Add Answer", |
| "parameters": [ |
| { |
| "description": "add answer request", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AnswerAddReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "delete": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "delete answer", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Answer" |
| ], |
| "summary": "delete answer", |
| "parameters": [ |
| { |
| "description": "answer", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.RemoveAnswerReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/answer/acceptance": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Accept Answer", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Answer" |
| ], |
| "summary": "Accept Answer", |
| "parameters": [ |
| { |
| "description": "AcceptAnswerReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AcceptAnswerReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/answer/info": { |
| "get": { |
| "description": "Get Answer Detail", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Answer" |
| ], |
| "summary": "Get Answer Detail", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "id", |
| "name": "id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetAnswerInfoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/answer/page": { |
| "get": { |
| "description": "AnswerList \u003cbr\u003e \u003cb\u003eorder\u003c/b\u003e (default or updated)", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Answer" |
| ], |
| "summary": "AnswerList", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "question_id", |
| "name": "question_id", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "description": "order", |
| "name": "order", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "description": "page", |
| "name": "page", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "description": "page_size", |
| "name": "page_size", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/answer/recover": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "recover the deleted answer", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Answer" |
| ], |
| "summary": "recover answer", |
| "parameters": [ |
| { |
| "description": "answer", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.RecoverAnswerReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/badge": { |
| "get": { |
| "description": "get badge info", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "api-badge" |
| ], |
| "summary": "get badge info", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "string", |
| "description": "id", |
| "name": "id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetBadgeInfoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/badge/awards/page": { |
| "get": { |
| "description": "get badge award list", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "api-badge" |
| ], |
| "summary": "get badge award list", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "badge id", |
| "name": "badge_id", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "description": "only list the award by username", |
| "name": "username", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetBadgeInfoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/badge/user/awards": { |
| "get": { |
| "description": "get user badge award list", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "api-badge" |
| ], |
| "summary": "get user badge award list", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "user name", |
| "name": "username", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetUserBadgeAwardListResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/badge/user/awards/recent": { |
| "get": { |
| "description": "get user badge award list", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "api-badge" |
| ], |
| "summary": "get user badge award list", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "user name", |
| "name": "username", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetUserBadgeAwardListResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/badges": { |
| "get": { |
| "description": "list all badges group by group", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "api-badge" |
| ], |
| "summary": "list all badges group by group", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetBadgeListResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/collection/switch": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add collection", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Collection" |
| ], |
| "summary": "add collection", |
| "parameters": [ |
| { |
| "description": "collection", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.CollectionSwitchReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.CollectionSwitchResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/comment": { |
| "get": { |
| "description": "get comment by id", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Comment" |
| ], |
| "summary": "get comment by id", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "id", |
| "name": "id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetCommentResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update comment", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Comment" |
| ], |
| "summary": "update comment", |
| "parameters": [ |
| { |
| "description": "comment", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateCommentReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add comment", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Comment" |
| ], |
| "summary": "add comment", |
| "parameters": [ |
| { |
| "description": "comment", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AddCommentReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetCommentResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "delete": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "remove comment", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Comment" |
| ], |
| "summary": "remove comment", |
| "parameters": [ |
| { |
| "description": "comment", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.RemoveCommentReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/comment/page": { |
| "get": { |
| "description": "get comment page", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Comment" |
| ], |
| "summary": "get comment page", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "object id", |
| "name": "object_id", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "enum": [ |
| "vote" |
| ], |
| "type": "string", |
| "description": "query condition", |
| "name": "query_cond", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetCommentResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/connector/binding/email": { |
| "post": { |
| "description": "external login binding user send email", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "PluginConnector" |
| ], |
| "summary": "external login binding user send email", |
| "parameters": [ |
| { |
| "description": "external login binding user send email", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.ExternalLoginBindingUserSendEmailReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.ExternalLoginBindingUserSendEmailResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/connector/info": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get all enabled connectors", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "PluginConnector" |
| ], |
| "summary": "get all enabled connectors", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.ConnectorInfoResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/connector/user/info": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get all connectors info about user", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "PluginConnector" |
| ], |
| "summary": "get all connectors info about user", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.ConnectorUserInfoResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/connector/user/unbinding": { |
| "delete": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "unbind external user login", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "PluginConnector" |
| ], |
| "summary": "unbind external user login", |
| "parameters": [ |
| { |
| "description": "ExternalLoginUnbindingReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.ExternalLoginUnbindingReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/embed/config": { |
| "get": { |
| "description": "get embed plugin config", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Plugin" |
| ], |
| "summary": "get embed plugin config", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/plugin.EmbedConfig" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/file": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "upload file", |
| "consumes": [ |
| "multipart/form-data" |
| ], |
| "tags": [ |
| "Upload" |
| ], |
| "summary": "upload file", |
| "parameters": [ |
| { |
| "enum": [ |
| "post", |
| "post_attachment", |
| "avatar", |
| "branding" |
| ], |
| "type": "string", |
| "description": "identify the source of the file upload", |
| "name": "source", |
| "in": "formData", |
| "required": true |
| }, |
| { |
| "type": "file", |
| "description": "file", |
| "name": "file", |
| "in": "formData", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "string" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/follow": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "follow object or cancel follow operation", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Activity" |
| ], |
| "summary": "follow object or cancel follow operation", |
| "parameters": [ |
| { |
| "description": "follow", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.FollowReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.FollowResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/follow/tags": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update user follow tags", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Activity" |
| ], |
| "summary": "update user follow tags", |
| "parameters": [ |
| { |
| "description": "follow", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateFollowTagsReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/language/config": { |
| "get": { |
| "description": "get language config mapping", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Lang" |
| ], |
| "summary": "get language config mapping", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "Accept-Language", |
| "name": "Accept-Language", |
| "in": "header", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/language/options": { |
| "get": { |
| "description": "Get language options", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Lang" |
| ], |
| "summary": "Get language options", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/meta/reaction": { |
| "get": { |
| "description": "get reaction for an object", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Meta" |
| ], |
| "summary": "get reaction", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "object_id", |
| "name": "object_id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.ReactionRespItem" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update reaction. if not exist, add one", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Meta" |
| ], |
| "summary": "add or update reaction", |
| "parameters": [ |
| { |
| "description": "reaction", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateReactionReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/notification/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get notification list", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Notification" |
| ], |
| "summary": "get notification list", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "enum": [ |
| "inbox", |
| "achievement" |
| ], |
| "type": "string", |
| "description": "type", |
| "name": "type", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "enum": [ |
| "all", |
| "posts", |
| "invites", |
| "votes" |
| ], |
| "type": "string", |
| "description": "inbox_type", |
| "name": "inbox_type", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/notification/read/state": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "ClearUnRead", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Notification" |
| ], |
| "summary": "ClearUnRead", |
| "parameters": [ |
| { |
| "description": "NotificationClearIDRequest", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.NotificationClearIDRequest" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/notification/read/state/all": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "ClearUnRead", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Notification" |
| ], |
| "summary": "ClearUnRead", |
| "parameters": [ |
| { |
| "description": "NotificationClearRequest", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.NotificationClearRequest" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/notification/status": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "GetRedDot", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Notification" |
| ], |
| "summary": "GetRedDot", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "DelRedDot", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Notification" |
| ], |
| "summary": "DelRedDot", |
| "parameters": [ |
| { |
| "description": "NotificationClearRequest", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.NotificationClearRequest" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/permission": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "check user permission", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Permission" |
| ], |
| "summary": "check user permission", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "access-token", |
| "name": "Authorization", |
| "in": "header", |
| "required": true |
| }, |
| { |
| "enum": [ |
| "question.add", |
| "question.edit", |
| "question.edit_without_review", |
| "question.delete", |
| "question.close", |
| "question.reopen", |
| "question.vote_up", |
| "question.vote_down", |
| "question.pin", |
| "question.unpin", |
| "question.hide", |
| "question.show", |
| "answer.add", |
| "answer.edit", |
| "answer.edit_without_review", |
| "answer.delete", |
| "answer.accept", |
| "answer.vote_up", |
| "answer.vote_down", |
| "answer.invite_someone_to_answer", |
| "comment.add", |
| "comment.edit", |
| "comment.delete", |
| "comment.vote_up", |
| "comment.vote_down", |
| "report.add", |
| "tag.add", |
| "tag.edit", |
| "tag.edit_slug_name", |
| "tag.edit_without_review", |
| "tag.delete", |
| "tag.synonym", |
| "link.url_limit", |
| "vote.detail", |
| "answer.audit", |
| "question.audit", |
| "tag.audit", |
| "tag.use_reserved_tag" |
| ], |
| "type": "string", |
| "description": "permission key", |
| "name": "action", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "object", |
| "additionalProperties": { |
| "type": "boolean" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/personal/answer/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "list personal answers", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Personal" |
| ], |
| "summary": "list personal answers", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "string", |
| "description": "username", |
| "name": "username", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "enum": [ |
| "newest", |
| "score" |
| ], |
| "type": "string", |
| "description": "order", |
| "name": "order", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "default": "0", |
| "description": "page", |
| "name": "page", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "default": "20", |
| "description": "page_size", |
| "name": "page_size", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/personal/collection/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "list personal collections", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Collection" |
| ], |
| "summary": "list personal collections", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "0", |
| "description": "page", |
| "name": "page", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "default": "20", |
| "description": "page_size", |
| "name": "page_size", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/personal/comment/page": { |
| "get": { |
| "description": "user personal comment list", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Comment" |
| ], |
| "summary": "user personal comment list", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "username", |
| "name": "username", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetCommentPersonalWithPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/personal/qa/top": { |
| "get": { |
| "description": "UserTop", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "UserTop", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "string", |
| "description": "username", |
| "name": "username", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/personal/rank/page": { |
| "get": { |
| "description": "user personal rank list", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Rank" |
| ], |
| "summary": "user personal rank list", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "username", |
| "name": "username", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetRankPersonalPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/personal/user/info": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "GetOtherUserInfoByUsername", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "GetOtherUserInfoByUsername", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "username", |
| "name": "username", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetOtherUserInfoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/personal/vote/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get user personal votes", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Activity" |
| ], |
| "summary": "get user personal votes", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetVoteWithPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/plugin/status": { |
| "get": { |
| "description": "get all plugins status", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Plugin" |
| ], |
| "summary": "get all plugins status", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetPluginListResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/post/render": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "render post content", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Upload" |
| ], |
| "summary": "render post content", |
| "parameters": [ |
| { |
| "description": "PostRenderReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.PostRenderReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update question", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "update question", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.QuestionUpdate" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add question", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "add question", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.QuestionAdd" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "delete": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "delete question", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "delete question", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.RemoveQuestionReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/answer": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add question and answer", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "add question and answer", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.QuestionAddByAnswer" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/info": { |
| "get": { |
| "description": "get question details", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "get question details", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "1", |
| "description": "Question TagID", |
| "name": "id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/invite": { |
| "get": { |
| "description": "get question invite user info", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "get question invite user info", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "1", |
| "description": "Question ID", |
| "name": "id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update question invite user", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "update question invite user", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.QuestionUpdateInviteUser" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/link": { |
| "get": { |
| "description": "get question link", |
| "tags": [ |
| "Question" |
| ], |
| "summary": "get question link", |
| "parameters": [ |
| { |
| "minimum": 1, |
| "type": "integer", |
| "name": "in_days", |
| "in": "query" |
| }, |
| { |
| "enum": [ |
| "newest", |
| "active", |
| "hot", |
| "score", |
| "unanswered", |
| "recommend", |
| "frequent" |
| ], |
| "type": "string", |
| "name": "order", |
| "in": "query" |
| }, |
| { |
| "minimum": 1, |
| "type": "integer", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "maximum": 100, |
| "minimum": 1, |
| "type": "integer", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "name": "question_id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.QuestionPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/operation": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Operation question \\n operation [pin unpin hide show]", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "Operation question", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.OperationQuestionReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/page": { |
| "get": { |
| "description": "get questions by page", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "get questions by page", |
| "parameters": [ |
| { |
| "description": "QuestionPageReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.QuestionPageReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.QuestionPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/recommend/page": { |
| "get": { |
| "description": "get recommend questions by page", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "get recommend questions by page", |
| "parameters": [ |
| { |
| "description": "QuestionPageReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.QuestionPageReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.QuestionPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/recover": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "recover deleted question", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "recover deleted question", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.QuestionRecoverReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/reopen": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "reopen question", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "reopen question", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.ReopenQuestionReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/similar": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "fuzzy query similar questions based on title", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "fuzzy query similar questions based on title", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "string", |
| "description": "title", |
| "name": "title", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/similar/tag": { |
| "get": { |
| "description": "Search Similar Question", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "Search Similar Question", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "", |
| "description": "question_id", |
| "name": "question_id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/status": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "Close question", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Question" |
| ], |
| "summary": "Close question", |
| "parameters": [ |
| { |
| "description": "question", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.CloseQuestionReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/question/tags": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get tag list", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "get tag list", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "tag", |
| "name": "tag", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetTagBasicResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/reasons": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get reasons by object type and action", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "reason" |
| ], |
| "summary": "get reasons by object type and action", |
| "parameters": [ |
| { |
| "enum": [ |
| "question", |
| "answer", |
| "comment", |
| "user" |
| ], |
| "type": "string", |
| "description": "object_type", |
| "name": "object_type", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "enum": [ |
| "status", |
| "close", |
| "flag", |
| "review" |
| ], |
| "type": "string", |
| "description": "action", |
| "name": "action", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/render/config": { |
| "get": { |
| "description": "GetRenderConfig", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "PluginRender" |
| ], |
| "summary": "GetRenderConfig", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/plugin.RenderConfig" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/report": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add report \u003cbr\u003e source (question, answer, comment, user)", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Report" |
| ], |
| "summary": "add report", |
| "parameters": [ |
| { |
| "description": "report", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AddReportReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/report/review": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "review report", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Report" |
| ], |
| "summary": "review report", |
| "parameters": [ |
| { |
| "description": "flag", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.ReviewReportReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/report/unreviewed/post": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get unreviewed report post page", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Report" |
| ], |
| "summary": "get unreviewed report post page", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page", |
| "name": "page", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetReportListPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/review/pending/post": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update review", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Review" |
| ], |
| "summary": "update review", |
| "parameters": [ |
| { |
| "description": "review", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateReviewReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/review/pending/post/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get unreviewed post page", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Review" |
| ], |
| "summary": "get unreviewed post page", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "object_id", |
| "name": "object_id", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetUnreviewedPostPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/reviewing/type": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get reviewing type", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Revision" |
| ], |
| "summary": "get reviewing type", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetReviewingTypeResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/revisions": { |
| "get": { |
| "description": "get revision list", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Revision" |
| ], |
| "summary": "get revision list", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "object id", |
| "name": "object_id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetRevisionResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/revisions/audit": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "revision audit operation:approve or reject", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Revision" |
| ], |
| "summary": "revision audit", |
| "parameters": [ |
| { |
| "description": "audit", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.RevisionAuditReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/revisions/edit/check": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "check can update revision", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Revision" |
| ], |
| "summary": "check can update revision", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "string", |
| "description": "id", |
| "name": "id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/revisions/unreviewed": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get unreviewed revision list", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Revision" |
| ], |
| "summary": "get unreviewed revision list", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "page id", |
| "name": "page", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetUnreviewedRevisionResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/search": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "search object", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Search" |
| ], |
| "summary": "search object", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "query string", |
| "name": "q", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "enum": [ |
| "newest", |
| "active", |
| "score", |
| "relevance" |
| ], |
| "type": "string", |
| "description": "order", |
| "name": "order", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SearchResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/search/desc": { |
| "get": { |
| "description": "get search description", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Search" |
| ], |
| "summary": "get search description", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SearchResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/siteinfo": { |
| "get": { |
| "description": "get site info", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "site" |
| ], |
| "summary": "get site info", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.SiteInfoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/siteinfo/legal": { |
| "get": { |
| "description": "get site legal info", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "site" |
| ], |
| "summary": "get site legal info", |
| "parameters": [ |
| { |
| "enum": [ |
| "tos", |
| "privacy" |
| ], |
| "type": "string", |
| "description": "legal information type", |
| "name": "info_type", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetSiteLegalInfoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/tag": { |
| "get": { |
| "description": "get tag one", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "get tag one", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "tag id", |
| "name": "tag_id", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "description": "tag name", |
| "name": "tag_name", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetTagResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update tag", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "update tag", |
| "parameters": [ |
| { |
| "description": "tag", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateTagReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add tag", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "add tag", |
| "parameters": [ |
| { |
| "description": "tag", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AddTagReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "delete": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "delete tag", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "delete tag", |
| "parameters": [ |
| { |
| "description": "tag", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.RemoveTagReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/tag/merge": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "merge tag", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "merge tag", |
| "parameters": [ |
| { |
| "description": "tag", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.AddTagReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/tag/recover": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "recover delete tag", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "recover delete tag", |
| "parameters": [ |
| { |
| "description": "tag", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.RecoverTagReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/tag/synonym": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update tag", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "update tag", |
| "parameters": [ |
| { |
| "description": "tag", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateTagSynonymReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/tag/synonyms": { |
| "get": { |
| "description": "get tag synonyms", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "get tag synonyms", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "tag id", |
| "name": "tag_id", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetTagSynonymsResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/tags": { |
| "get": { |
| "description": "get tags list by slug name", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "get tags list", |
| "parameters": [ |
| { |
| "type": "array", |
| "items": { |
| "type": "string" |
| }, |
| "collectionFormat": "csv", |
| "description": "string collection", |
| "name": "tags", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetTagBasicResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/tags/following": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get following tag list", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "get following tag list", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetFollowingTagsResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/tags/page": { |
| "get": { |
| "description": "get tag page", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Tag" |
| ], |
| "summary": "get tag page", |
| "parameters": [ |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page", |
| "in": "query" |
| }, |
| { |
| "type": "integer", |
| "description": "page size", |
| "name": "page_size", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "description": "slug_name", |
| "name": "slug_name", |
| "in": "query" |
| }, |
| { |
| "enum": [ |
| "popular", |
| "name", |
| "newest" |
| ], |
| "type": "string", |
| "description": "query condition", |
| "name": "query_cond", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/pager.PageModel" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "list": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetTagPageResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/action/record": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "ActionRecord", |
| "tags": [ |
| "User" |
| ], |
| "summary": "ActionRecord", |
| "parameters": [ |
| { |
| "enum": [ |
| "login", |
| "e_mail", |
| "find_pass" |
| ], |
| "type": "string", |
| "description": "action", |
| "name": "action", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.ActionRecordResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/email": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "user change email verification", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "user change email verification", |
| "parameters": [ |
| { |
| "description": "UserChangeEmailVerifyReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UserChangeEmailVerifyReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/email/change/code": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "send email to the user email then change their email", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "send email to the user email then change their email", |
| "parameters": [ |
| { |
| "description": "UserChangeEmailSendCodeReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UserChangeEmailSendCodeReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/email/verification": { |
| "post": { |
| "description": "UserVerifyEmail", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "UserVerifyEmail", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "", |
| "description": "code", |
| "name": "code", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.UserLoginResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/email/verification/send": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "UserVerifyEmailSend", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "UserVerifyEmailSend", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "", |
| "description": "captcha_id", |
| "name": "captcha_id", |
| "in": "query" |
| }, |
| { |
| "type": "string", |
| "default": "", |
| "description": "captcha_code", |
| "name": "captcha_code", |
| "in": "query" |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/info": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get user info, if user no login response http code is 200, but user info is null", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "GetUserInfoByUserID", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetCurrentLoginUserInfoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "UserUpdateInfo update user info", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "UserUpdateInfo update user info", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "access-token", |
| "name": "Authorization", |
| "in": "header", |
| "required": true |
| }, |
| { |
| "description": "UpdateInfoRequest", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateInfoRequest" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/info/search": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "SearchUserListByName", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "SearchUserListByName", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "username", |
| "name": "username", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetOtherUserInfoResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/interface": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "UserUpdateInterface update user interface config", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "UserUpdateInterface update user interface config", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "access-token", |
| "name": "Authorization", |
| "in": "header", |
| "required": true |
| }, |
| { |
| "description": "UpdateInfoRequest", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateUserInterfaceRequest" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/login/email": { |
| "post": { |
| "description": "UserEmailLogin", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "UserEmailLogin", |
| "parameters": [ |
| { |
| "description": "UserEmailLogin", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UserEmailLoginReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.UserLoginResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/logout": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "user logout", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "user logout", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/notification/config": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update user's notification config", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "update user's notification config", |
| "parameters": [ |
| { |
| "description": "UpdateUserNotificationConfigReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateUserNotificationConfigReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| }, |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get user's notification config", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "get user's notification config", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetUserNotificationConfigResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/notification/unsubscribe": { |
| "put": { |
| "description": "unsubscribe notification", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "unsubscribe notification", |
| "parameters": [ |
| { |
| "description": "UserUnsubscribeNotificationReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UserUnsubscribeNotificationReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/password": { |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "UserModifyPassWord", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "UserModifyPassWord", |
| "parameters": [ |
| { |
| "description": "UserModifyPasswordReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UserModifyPasswordReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/password/replacement": { |
| "post": { |
| "description": "UseRePassWord", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "UseRePassWord", |
| "parameters": [ |
| { |
| "description": "UserRePassWordRequest", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UserRePassWordRequest" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/password/reset": { |
| "post": { |
| "description": "RetrievePassWord", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "RetrievePassWord", |
| "parameters": [ |
| { |
| "description": "UserRetrievePassWordRequest", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UserRetrievePassWordRequest" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/plugin/config": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get user plugin config", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "UserPlugin" |
| ], |
| "summary": "get user plugin config", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "plugin_slug_name", |
| "name": "plugin_slug_name", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetPluginConfigResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| }, |
| "put": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "update user plugin config", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "UserPlugin" |
| ], |
| "summary": "update user plugin config", |
| "parameters": [ |
| { |
| "description": "UpdatePluginConfigReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UpdateUserPluginConfigReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/plugin/configs": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "get plugin list that used for user.", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "UserPlugin" |
| ], |
| "summary": "get plugin list that used for user.", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.GetUserPluginListResp" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/ranking": { |
| "get": { |
| "description": "get user ranking", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "get user ranking", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.UserRankingResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/register/email": { |
| "post": { |
| "description": "UserRegisterByEmail", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "UserRegisterByEmail", |
| "parameters": [ |
| { |
| "description": "UserRegisterReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.UserRegisterReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.UserLoginResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/user/staff": { |
| "get": { |
| "description": "get user staff", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "User" |
| ], |
| "summary": "get user staff", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "username", |
| "name": "username", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "description": "page_size", |
| "name": "page_size", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.GetUserStaffResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/vote/down": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add vote", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Activity" |
| ], |
| "summary": "vote down", |
| "parameters": [ |
| { |
| "description": "vote", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.VoteReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.VoteResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/answer/api/v1/vote/up": { |
| "post": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "add vote", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Activity" |
| ], |
| "summary": "vote up", |
| "parameters": [ |
| { |
| "description": "vote", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/schema.VoteReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/schema.VoteResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/custom.css": { |
| "get": { |
| "description": "get site custom CSS", |
| "produces": [ |
| "text/css" |
| ], |
| "tags": [ |
| "site" |
| ], |
| "summary": "get site custom CSS", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| }, |
| "/installation/base-info": { |
| "post": { |
| "description": "init base info", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "installation" |
| ], |
| "summary": "init base info", |
| "parameters": [ |
| { |
| "description": "InitBaseInfoReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/install.InitBaseInfoReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/installation/config-file/check": { |
| "post": { |
| "description": "check config file if exist when installation", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "installation" |
| ], |
| "summary": "check config file if exist when installation", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/install.CheckConfigFileResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/installation/db/check": { |
| "post": { |
| "description": "check database if exist when installation", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "installation" |
| ], |
| "summary": "check database if exist when installation", |
| "parameters": [ |
| { |
| "description": "CheckDatabaseReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/install.CheckDatabaseReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "$ref": "#/definitions/install.CheckConfigFileResp" |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/installation/init": { |
| "post": { |
| "description": "init environment", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "installation" |
| ], |
| "summary": "init environment", |
| "parameters": [ |
| { |
| "description": "CheckDatabaseReq", |
| "name": "data", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/install.CheckDatabaseReq" |
| } |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/installation/language/config": { |
| "get": { |
| "description": "get installation language config mapping", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Lang" |
| ], |
| "summary": "get installation language config mapping", |
| "parameters": [ |
| { |
| "type": "string", |
| "description": "installation language", |
| "name": "lang", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/installation/language/options": { |
| "get": { |
| "description": "get installation language options", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Lang" |
| ], |
| "summary": "get installation language options", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "allOf": [ |
| { |
| "$ref": "#/definitions/handler.RespBody" |
| }, |
| { |
| "type": "object", |
| "properties": { |
| "data": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/translator.LangOption" |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| } |
| } |
| }, |
| "/personal/question/page": { |
| "get": { |
| "security": [ |
| { |
| "ApiKeyAuth": [] |
| } |
| ], |
| "description": "list personal questions", |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "Personal" |
| ], |
| "summary": "list personal questions", |
| "parameters": [ |
| { |
| "type": "string", |
| "default": "string", |
| "description": "username", |
| "name": "username", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "enum": [ |
| "newest", |
| "score" |
| ], |
| "type": "string", |
| "description": "order", |
| "name": "order", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "default": "0", |
| "description": "page", |
| "name": "page", |
| "in": "query", |
| "required": true |
| }, |
| { |
| "type": "string", |
| "default": "20", |
| "description": "page_size", |
| "name": "page_size", |
| "in": "query", |
| "required": true |
| } |
| ], |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "$ref": "#/definitions/handler.RespBody" |
| } |
| } |
| } |
| } |
| }, |
| "/robots.txt": { |
| "get": { |
| "description": "get site robots information", |
| "produces": [ |
| "application/json" |
| ], |
| "tags": [ |
| "site" |
| ], |
| "summary": "get site robots information", |
| "responses": { |
| "200": { |
| "description": "OK", |
| "schema": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| } |
| }, |
| "definitions": { |
| "constant.NotificationChannelKey": { |
| "type": "string", |
| "enum": [ |
| "email" |
| ], |
| "x-enum-varnames": [ |
| "EmailChannel" |
| ] |
| }, |
| "constant.Privilege": { |
| "type": "object", |
| "properties": { |
| "key": { |
| "type": "string" |
| }, |
| "label": { |
| "type": "string" |
| }, |
| "value": { |
| "type": "integer", |
| "minimum": 1 |
| } |
| } |
| }, |
| "entity.BadgeLevel": { |
| "type": "integer", |
| "enum": [ |
| 1, |
| 2, |
| 3 |
| ], |
| "x-enum-varnames": [ |
| "BadgeLevelBronze", |
| "BadgeLevelSilver", |
| "BadgeLevelGold" |
| ] |
| }, |
| "handler.RespBody": { |
| "type": "object", |
| "properties": { |
| "code": { |
| "description": "http code", |
| "type": "integer" |
| }, |
| "data": { |
| "description": "response data" |
| }, |
| "msg": { |
| "description": "response message", |
| "type": "string" |
| }, |
| "reason": { |
| "description": "reason key", |
| "type": "string" |
| } |
| } |
| }, |
| "install.CheckConfigFileResp": { |
| "type": "object", |
| "properties": { |
| "config_file_exist": { |
| "type": "boolean" |
| }, |
| "db_connection_success": { |
| "type": "boolean" |
| }, |
| "db_table_exist": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "install.CheckDatabaseReq": { |
| "type": "object", |
| "required": [ |
| "db_type" |
| ], |
| "properties": { |
| "db_file": { |
| "type": "string" |
| }, |
| "db_host": { |
| "type": "string" |
| }, |
| "db_name": { |
| "type": "string" |
| }, |
| "db_password": { |
| "type": "string" |
| }, |
| "db_type": { |
| "type": "string", |
| "enum": [ |
| "postgres", |
| "sqlite3", |
| "mysql" |
| ] |
| }, |
| "db_username": { |
| "type": "string" |
| }, |
| "ssl_cert": { |
| "type": "string" |
| }, |
| "ssl_enabled": { |
| "type": "boolean" |
| }, |
| "ssl_key": { |
| "type": "string" |
| }, |
| "ssl_mode": { |
| "type": "string" |
| }, |
| "ssl_root_cert": { |
| "type": "string" |
| } |
| } |
| }, |
| "install.InitBaseInfoReq": { |
| "type": "object", |
| "required": [ |
| "contact_email", |
| "email", |
| "external_content_display", |
| "lang", |
| "name", |
| "password", |
| "site_name", |
| "site_url" |
| ], |
| "properties": { |
| "contact_email": { |
| "type": "string", |
| "maxLength": 500 |
| }, |
| "email": { |
| "type": "string", |
| "maxLength": 500 |
| }, |
| "external_content_display": { |
| "type": "string", |
| "enum": [ |
| "always_display", |
| "ask_before_display" |
| ] |
| }, |
| "lang": { |
| "type": "string", |
| "maxLength": 30 |
| }, |
| "login_required": { |
| "type": "boolean" |
| }, |
| "name": { |
| "type": "string", |
| "maxLength": 30, |
| "minLength": 2 |
| }, |
| "password": { |
| "type": "string", |
| "maxLength": 32, |
| "minLength": 8 |
| }, |
| "site_name": { |
| "type": "string", |
| "maxLength": 30 |
| }, |
| "site_url": { |
| "type": "string", |
| "maxLength": 512 |
| } |
| } |
| }, |
| "pager.PageModel": { |
| "type": "object", |
| "properties": { |
| "count": { |
| "type": "integer" |
| }, |
| "list": {} |
| } |
| }, |
| "plugin.EmbedConfig": { |
| "type": "object", |
| "properties": { |
| "enable": { |
| "type": "boolean" |
| }, |
| "platform": { |
| "type": "string" |
| } |
| } |
| }, |
| "plugin.RenderConfig": { |
| "type": "object", |
| "properties": { |
| "select_theme": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.AcceptAnswerReq": { |
| "type": "object", |
| "required": [ |
| "question_id" |
| ], |
| "properties": { |
| "answer_id": { |
| "type": "string" |
| }, |
| "question_id": { |
| "type": "string", |
| "maxLength": 30 |
| } |
| } |
| }, |
| "schema.ActObjectInfo": { |
| "type": "object", |
| "properties": { |
| "answer_id": { |
| "type": "string" |
| }, |
| "display_name": { |
| "type": "string" |
| }, |
| "main_tag_slug_name": { |
| "type": "string" |
| }, |
| "object_type": { |
| "type": "string" |
| }, |
| "question_id": { |
| "type": "string" |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "username": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.ActObjectTimeline": { |
| "type": "object", |
| "properties": { |
| "activity_id": { |
| "type": "string" |
| }, |
| "activity_type": { |
| "type": "string" |
| }, |
| "cancelled": { |
| "type": "boolean" |
| }, |
| "cancelled_at": { |
| "type": "integer" |
| }, |
| "comment": { |
| "type": "string" |
| }, |
| "created_at": { |
| "type": "integer" |
| }, |
| "object_id": { |
| "type": "string" |
| }, |
| "object_type": { |
| "type": "string" |
| }, |
| "revision_id": { |
| "type": "string" |
| }, |
| "user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| } |
| } |
| }, |
| "schema.ActionRecordResp": { |
| "type": "object", |
| "properties": { |
| "captcha_id": { |
| "type": "string" |
| }, |
| "captcha_img": { |
| "type": "string" |
| }, |
| "verify": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.AddCommentReq": { |
| "type": "object", |
| "required": [ |
| "object_id", |
| "original_text" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "mention_username_list": { |
| "description": "@ user id list", |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "object_id": { |
| "description": "object id", |
| "type": "string" |
| }, |
| "original_text": { |
| "description": "original comment content", |
| "type": "string", |
| "maxLength": 600, |
| "minLength": 2 |
| }, |
| "reply_comment_id": { |
| "description": "reply comment id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.AddReportReq": { |
| "type": "object", |
| "required": [ |
| "object_id", |
| "report_type" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "description": "captcha_id", |
| "type": "string" |
| }, |
| "content": { |
| "description": "report content", |
| "type": "string", |
| "maxLength": 500 |
| }, |
| "object_id": { |
| "description": "object id", |
| "type": "string", |
| "maxLength": 20 |
| }, |
| "report_type": { |
| "description": "report type", |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.AddTagReq": { |
| "type": "object", |
| "required": [ |
| "display_name", |
| "original_text", |
| "slug_name" |
| ], |
| "properties": { |
| "display_name": { |
| "description": "display_name", |
| "type": "string", |
| "maxLength": 35 |
| }, |
| "original_text": { |
| "description": "original text", |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "slug_name": { |
| "description": "slug_name", |
| "type": "string", |
| "maxLength": 35 |
| } |
| } |
| }, |
| "schema.AddUserReq": { |
| "type": "object", |
| "required": [ |
| "display_name", |
| "email", |
| "password" |
| ], |
| "properties": { |
| "display_name": { |
| "type": "string", |
| "maxLength": 30, |
| "minLength": 2 |
| }, |
| "email": { |
| "type": "string", |
| "maxLength": 500 |
| }, |
| "password": { |
| "type": "string", |
| "maxLength": 32, |
| "minLength": 8 |
| } |
| } |
| }, |
| "schema.AddUsersReq": { |
| "type": "object", |
| "properties": { |
| "users": { |
| "description": "users info line by line", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.AdminUpdateAnswerStatusReq": { |
| "type": "object", |
| "required": [ |
| "answer_id", |
| "status" |
| ], |
| "properties": { |
| "answer_id": { |
| "type": "string" |
| }, |
| "status": { |
| "type": "string", |
| "enum": [ |
| "available", |
| "deleted" |
| ] |
| } |
| } |
| }, |
| "schema.AdminUpdateQuestionStatusReq": { |
| "type": "object", |
| "required": [ |
| "question_id", |
| "status" |
| ], |
| "properties": { |
| "question_id": { |
| "type": "string" |
| }, |
| "status": { |
| "type": "string", |
| "enum": [ |
| "available", |
| "closed", |
| "deleted" |
| ] |
| } |
| } |
| }, |
| "schema.AnswerAddReq": { |
| "type": "object", |
| "required": [ |
| "content" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "content": { |
| "type": "string", |
| "maxLength": 65535, |
| "minLength": 6 |
| }, |
| "question_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.AnswerInfo": { |
| "type": "object", |
| "properties": { |
| "accepted": { |
| "type": "integer" |
| }, |
| "collected": { |
| "type": "boolean" |
| }, |
| "content": { |
| "type": "string" |
| }, |
| "create_time": { |
| "type": "integer" |
| }, |
| "html": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "member_actions": { |
| "description": "MemberActions", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.PermissionMemberAction" |
| } |
| }, |
| "question_id": { |
| "type": "string" |
| }, |
| "question_info": { |
| "$ref": "#/definitions/schema.QuestionInfoResp" |
| }, |
| "status": { |
| "type": "integer" |
| }, |
| "update_time": { |
| "type": "integer" |
| }, |
| "update_user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| }, |
| "user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| }, |
| "vote_count": { |
| "type": "integer" |
| }, |
| "vote_status": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.AnswerUpdateReq": { |
| "type": "object", |
| "required": [ |
| "content" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "content": { |
| "type": "string", |
| "maxLength": 65535, |
| "minLength": 6 |
| }, |
| "edit_summary": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "question_id": { |
| "type": "string" |
| }, |
| "title": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.AvatarInfo": { |
| "type": "object", |
| "properties": { |
| "custom": { |
| "type": "string", |
| "maxLength": 200 |
| }, |
| "gravatar": { |
| "type": "string", |
| "maxLength": 200 |
| }, |
| "type": { |
| "type": "string", |
| "maxLength": 100 |
| } |
| } |
| }, |
| "schema.BadgeListInfo": { |
| "type": "object", |
| "properties": { |
| "award_count": { |
| "description": "badge award count", |
| "type": "integer" |
| }, |
| "earned_count": { |
| "description": "badge earned count", |
| "type": "integer" |
| }, |
| "icon": { |
| "description": "badge icon", |
| "type": "string" |
| }, |
| "id": { |
| "description": "badge id", |
| "type": "string" |
| }, |
| "level": { |
| "description": "badge level", |
| "allOf": [ |
| { |
| "$ref": "#/definitions/entity.BadgeLevel" |
| } |
| ] |
| }, |
| "name": { |
| "description": "badge name", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.BadgeStatus": { |
| "type": "string", |
| "enum": [ |
| "active", |
| "inactive" |
| ], |
| "x-enum-varnames": [ |
| "BadgeStatusActive", |
| "BadgeStatusInactive" |
| ] |
| }, |
| "schema.CloseQuestionReq": { |
| "type": "object", |
| "required": [ |
| "id" |
| ], |
| "properties": { |
| "close_msg": { |
| "description": "close_type", |
| "type": "string" |
| }, |
| "close_type": { |
| "description": "close_type", |
| "type": "integer" |
| }, |
| "id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.CollectionSwitchReq": { |
| "type": "object", |
| "required": [ |
| "group_id", |
| "object_id" |
| ], |
| "properties": { |
| "bookmark": { |
| "type": "boolean" |
| }, |
| "group_id": { |
| "type": "string" |
| }, |
| "object_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.CollectionSwitchResp": { |
| "type": "object", |
| "properties": { |
| "object_collection_count": { |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.ConfigField": { |
| "type": "object", |
| "properties": { |
| "description": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| }, |
| "options": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.ConfigFieldOption" |
| } |
| }, |
| "required": { |
| "type": "boolean" |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "type": { |
| "type": "string" |
| }, |
| "ui_options": { |
| "$ref": "#/definitions/schema.ConfigFieldUIOptions" |
| }, |
| "value": {} |
| } |
| }, |
| "schema.ConfigFieldOption": { |
| "type": "object", |
| "properties": { |
| "label": { |
| "type": "string" |
| }, |
| "value": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.ConfigFieldUIOptions": { |
| "type": "object", |
| "properties": { |
| "action": { |
| "$ref": "#/definitions/schema.UIOptionAction" |
| }, |
| "class_name": { |
| "type": "string" |
| }, |
| "field_class_name": { |
| "type": "string" |
| }, |
| "input_type": { |
| "type": "string" |
| }, |
| "label": { |
| "type": "string" |
| }, |
| "placeholder": { |
| "type": "string" |
| }, |
| "rows": { |
| "type": "string" |
| }, |
| "text": { |
| "type": "string" |
| }, |
| "variant": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.ConnectorInfoResp": { |
| "type": "object", |
| "properties": { |
| "icon": { |
| "type": "string" |
| }, |
| "link": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.ConnectorUserInfoResp": { |
| "type": "object", |
| "properties": { |
| "binding": { |
| "type": "boolean" |
| }, |
| "external_id": { |
| "type": "string" |
| }, |
| "icon": { |
| "type": "string" |
| }, |
| "link": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.DeletePermanentlyReq": { |
| "type": "object", |
| "required": [ |
| "type" |
| ], |
| "properties": { |
| "type": { |
| "type": "string", |
| "enum": [ |
| "users", |
| "questions", |
| "answers" |
| ] |
| } |
| } |
| }, |
| "schema.EditUserProfileReq": { |
| "type": "object", |
| "required": [ |
| "display_name", |
| "email", |
| "user_id" |
| ], |
| "properties": { |
| "display_name": { |
| "type": "string", |
| "maxLength": 30, |
| "minLength": 2 |
| }, |
| "email": { |
| "type": "string", |
| "maxLength": 500 |
| }, |
| "user_id": { |
| "type": "string" |
| }, |
| "username": { |
| "type": "string", |
| "maxLength": 30, |
| "minLength": 2 |
| } |
| } |
| }, |
| "schema.ExternalLoginBindingUserSendEmailReq": { |
| "type": "object", |
| "required": [ |
| "binding_key", |
| "email" |
| ], |
| "properties": { |
| "binding_key": { |
| "type": "string", |
| "maxLength": 100 |
| }, |
| "email": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "must": { |
| "description": "If must is true, whatever email if exists, try to bind user.\nIf must is false, when email exist, will only be prompted with a warning.", |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.ExternalLoginBindingUserSendEmailResp": { |
| "type": "object", |
| "properties": { |
| "access_token": { |
| "type": "string" |
| }, |
| "email_exist_and_must_be_confirmed": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.ExternalLoginUnbindingReq": { |
| "type": "object", |
| "required": [ |
| "external_id" |
| ], |
| "properties": { |
| "external_id": { |
| "type": "string", |
| "maxLength": 128 |
| } |
| } |
| }, |
| "schema.FollowReq": { |
| "type": "object", |
| "required": [ |
| "object_id" |
| ], |
| "properties": { |
| "is_cancel": { |
| "description": "is cancel", |
| "type": "boolean" |
| }, |
| "object_id": { |
| "description": "object id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.FollowResp": { |
| "type": "object", |
| "properties": { |
| "follows": { |
| "description": "the followers of object", |
| "type": "integer" |
| }, |
| "is_followed": { |
| "description": "if user is followed object will be true,otherwise false", |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.GetAnswerInfoResp": { |
| "type": "object", |
| "properties": { |
| "info": { |
| "$ref": "#/definitions/schema.AnswerInfo" |
| }, |
| "question": { |
| "$ref": "#/definitions/schema.QuestionInfoResp" |
| } |
| } |
| }, |
| "schema.GetBadgeInfoResp": { |
| "type": "object", |
| "properties": { |
| "award_count": { |
| "description": "badge award count", |
| "type": "integer" |
| }, |
| "description": { |
| "description": "badge description", |
| "type": "string" |
| }, |
| "earned_count": { |
| "description": "badge earned count", |
| "type": "integer" |
| }, |
| "icon": { |
| "description": "badge icon", |
| "type": "string" |
| }, |
| "id": { |
| "description": "badge id", |
| "type": "string" |
| }, |
| "is_single": { |
| "description": "badge is single or multiple", |
| "type": "boolean" |
| }, |
| "level": { |
| "description": "badge level", |
| "allOf": [ |
| { |
| "$ref": "#/definitions/entity.BadgeLevel" |
| } |
| ] |
| }, |
| "name": { |
| "description": "badge name", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetBadgeListPagedResp": { |
| "type": "object", |
| "properties": { |
| "award_count": { |
| "description": "badge award count", |
| "type": "integer" |
| }, |
| "description": { |
| "description": "badge description", |
| "type": "string" |
| }, |
| "earned": { |
| "description": "badge earned count", |
| "type": "boolean" |
| }, |
| "group_name": { |
| "description": "badge group name", |
| "type": "string" |
| }, |
| "icon": { |
| "description": "badge icon", |
| "type": "string" |
| }, |
| "id": { |
| "description": "badge id", |
| "type": "string" |
| }, |
| "level": { |
| "description": "badge level", |
| "allOf": [ |
| { |
| "$ref": "#/definitions/entity.BadgeLevel" |
| } |
| ] |
| }, |
| "name": { |
| "description": "badge name", |
| "type": "string" |
| }, |
| "status": { |
| "description": "badge status", |
| "allOf": [ |
| { |
| "$ref": "#/definitions/schema.BadgeStatus" |
| } |
| ] |
| } |
| } |
| }, |
| "schema.GetBadgeListResp": { |
| "type": "object", |
| "properties": { |
| "badges": { |
| "description": "badge list info", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.BadgeListInfo" |
| } |
| }, |
| "group_name": { |
| "description": "badge group name", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetCommentPersonalWithPageResp": { |
| "type": "object", |
| "properties": { |
| "answer_id": { |
| "description": "answer id", |
| "type": "string" |
| }, |
| "comment_id": { |
| "description": "comment id", |
| "type": "string" |
| }, |
| "content": { |
| "description": "content", |
| "type": "string" |
| }, |
| "created_at": { |
| "description": "create time", |
| "type": "integer" |
| }, |
| "object_id": { |
| "description": "object id", |
| "type": "string" |
| }, |
| "object_type": { |
| "description": "object type", |
| "type": "string", |
| "enum": [ |
| "question", |
| "answer", |
| "tag", |
| "comment" |
| ] |
| }, |
| "question_id": { |
| "description": "question id", |
| "type": "string" |
| }, |
| "title": { |
| "description": "title", |
| "type": "string" |
| }, |
| "url_title": { |
| "description": "url title", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetCommentResp": { |
| "type": "object", |
| "properties": { |
| "comment_id": { |
| "description": "comment id", |
| "type": "string" |
| }, |
| "created_at": { |
| "description": "create time", |
| "type": "integer" |
| }, |
| "is_vote": { |
| "description": "current user if already vote this comment", |
| "type": "boolean" |
| }, |
| "member_actions": { |
| "description": "MemberActions", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.PermissionMemberAction" |
| } |
| }, |
| "object_id": { |
| "description": "object id", |
| "type": "string" |
| }, |
| "original_text": { |
| "description": "original comment content", |
| "type": "string" |
| }, |
| "parsed_text": { |
| "description": "parsed comment content", |
| "type": "string" |
| }, |
| "reply_comment_id": { |
| "description": "reply comment id", |
| "type": "string" |
| }, |
| "reply_user_display_name": { |
| "description": "reply user display name", |
| "type": "string" |
| }, |
| "reply_user_id": { |
| "description": "reply user id", |
| "type": "string" |
| }, |
| "reply_user_status": { |
| "description": "reply user status", |
| "type": "string" |
| }, |
| "reply_username": { |
| "description": "reply user username", |
| "type": "string" |
| }, |
| "user_avatar": { |
| "description": "user avatar", |
| "type": "string" |
| }, |
| "user_display_name": { |
| "description": "user display name", |
| "type": "string" |
| }, |
| "user_id": { |
| "description": "user id", |
| "type": "string" |
| }, |
| "user_status": { |
| "description": "user status", |
| "type": "string" |
| }, |
| "username": { |
| "description": "username", |
| "type": "string" |
| }, |
| "vote_count": { |
| "description": "user vote amount", |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.GetCurrentLoginUserInfoResp": { |
| "type": "object", |
| "properties": { |
| "access_token": { |
| "description": "access token", |
| "type": "string" |
| }, |
| "answer_count": { |
| "description": "answer count", |
| "type": "integer" |
| }, |
| "authority_group": { |
| "description": "authority group", |
| "type": "integer" |
| }, |
| "avatar": { |
| "$ref": "#/definitions/schema.AvatarInfo" |
| }, |
| "bio": { |
| "description": "bio markdown", |
| "type": "string" |
| }, |
| "bio_html": { |
| "description": "bio html", |
| "type": "string" |
| }, |
| "color_scheme": { |
| "description": "Color scheme", |
| "type": "string" |
| }, |
| "created_at": { |
| "description": "create time", |
| "type": "integer" |
| }, |
| "display_name": { |
| "description": "display name", |
| "type": "string" |
| }, |
| "e_mail": { |
| "description": "email", |
| "type": "string" |
| }, |
| "follow_count": { |
| "description": "follow count", |
| "type": "integer" |
| }, |
| "have_password": { |
| "description": "user have password", |
| "type": "boolean" |
| }, |
| "id": { |
| "description": "user id", |
| "type": "string" |
| }, |
| "language": { |
| "description": "language", |
| "type": "string" |
| }, |
| "last_login_date": { |
| "description": "last login date", |
| "type": "integer" |
| }, |
| "location": { |
| "description": "location", |
| "type": "string" |
| }, |
| "mail_status": { |
| "description": "mail status(1 pass 2 to be verified)", |
| "type": "integer" |
| }, |
| "mobile": { |
| "description": "mobile", |
| "type": "string" |
| }, |
| "notice_status": { |
| "description": "notice status(1 on 2off)", |
| "type": "integer" |
| }, |
| "question_count": { |
| "description": "question count", |
| "type": "integer" |
| }, |
| "rank": { |
| "description": "rank", |
| "type": "integer" |
| }, |
| "role_id": { |
| "description": "role id", |
| "type": "integer" |
| }, |
| "status": { |
| "description": "user status", |
| "type": "string" |
| }, |
| "suspended_until": { |
| "description": "suspended until timestamp", |
| "type": "integer" |
| }, |
| "username": { |
| "description": "username", |
| "type": "string" |
| }, |
| "visit_token": { |
| "description": "visit token", |
| "type": "string" |
| }, |
| "website": { |
| "description": "website", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetFollowingTagsResp": { |
| "type": "object", |
| "properties": { |
| "display_name": { |
| "description": "display name", |
| "type": "string" |
| }, |
| "main_tag_slug_name": { |
| "description": "if main tag slug name is not empty, this tag is synonymous with the main tag", |
| "type": "string" |
| }, |
| "recommend": { |
| "type": "boolean" |
| }, |
| "reserved": { |
| "type": "boolean" |
| }, |
| "slug_name": { |
| "description": "slug name", |
| "type": "string" |
| }, |
| "tag_id": { |
| "description": "tag id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetObjectTimelineResp": { |
| "type": "object", |
| "properties": { |
| "object_info": { |
| "$ref": "#/definitions/schema.ActObjectInfo" |
| }, |
| "timeline": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.ActObjectTimeline" |
| } |
| } |
| } |
| }, |
| "schema.GetOtherUserInfoByUsernameResp": { |
| "type": "object", |
| "properties": { |
| "answer_count": { |
| "description": "answer count", |
| "type": "integer" |
| }, |
| "avatar": { |
| "description": "avatar", |
| "type": "string" |
| }, |
| "bio": { |
| "description": "bio markdown", |
| "type": "string" |
| }, |
| "bio_html": { |
| "description": "bio html", |
| "type": "string" |
| }, |
| "created_at": { |
| "description": "create time", |
| "type": "integer" |
| }, |
| "display_name": { |
| "description": "display name", |
| "type": "string" |
| }, |
| "follow_count": { |
| "description": "email\nfollow count", |
| "type": "integer" |
| }, |
| "id": { |
| "description": "user id", |
| "type": "string" |
| }, |
| "last_login_date": { |
| "description": "last login date", |
| "type": "integer" |
| }, |
| "location": { |
| "description": "location", |
| "type": "string" |
| }, |
| "mobile": { |
| "description": "mobile", |
| "type": "string" |
| }, |
| "question_count": { |
| "description": "question count", |
| "type": "integer" |
| }, |
| "rank": { |
| "description": "rank", |
| "type": "integer" |
| }, |
| "status": { |
| "type": "string" |
| }, |
| "status_msg": { |
| "type": "string" |
| }, |
| "suspended_until": { |
| "description": "suspended until timestamp", |
| "type": "integer" |
| }, |
| "username": { |
| "description": "username", |
| "type": "string" |
| }, |
| "website": { |
| "description": "website", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetOtherUserInfoResp": { |
| "type": "object", |
| "properties": { |
| "info": { |
| "$ref": "#/definitions/schema.GetOtherUserInfoByUsernameResp" |
| } |
| } |
| }, |
| "schema.GetPluginConfigResp": { |
| "type": "object", |
| "properties": { |
| "config_fields": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.ConfigField" |
| } |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| }, |
| "slug_name": { |
| "type": "string" |
| }, |
| "version": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetPluginListResp": { |
| "type": "object", |
| "properties": { |
| "description": { |
| "type": "string" |
| }, |
| "enabled": { |
| "type": "boolean" |
| }, |
| "have_config": { |
| "type": "boolean" |
| }, |
| "link": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| }, |
| "slug_name": { |
| "type": "string" |
| }, |
| "version": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetPrivilegesConfigResp": { |
| "type": "object", |
| "properties": { |
| "options": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.PrivilegeOption" |
| } |
| }, |
| "selected_level": { |
| "$ref": "#/definitions/schema.PrivilegeLevel" |
| } |
| } |
| }, |
| "schema.GetRankPersonalPageResp": { |
| "type": "object", |
| "properties": { |
| "answer_id": { |
| "description": "answer id", |
| "type": "string" |
| }, |
| "content": { |
| "description": "content", |
| "type": "string" |
| }, |
| "created_at": { |
| "description": "create time", |
| "type": "integer" |
| }, |
| "object_id": { |
| "description": "object id", |
| "type": "string" |
| }, |
| "object_type": { |
| "description": "object type", |
| "type": "string", |
| "enum": [ |
| "question", |
| "answer", |
| "tag", |
| "comment" |
| ] |
| }, |
| "question_id": { |
| "description": "question id", |
| "type": "string" |
| }, |
| "rank_type": { |
| "description": "rank type", |
| "type": "string" |
| }, |
| "reputation": { |
| "description": "reputation", |
| "type": "integer" |
| }, |
| "title": { |
| "description": "title", |
| "type": "string" |
| }, |
| "url_title": { |
| "description": "url title", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetReportListPageResp": { |
| "type": "object", |
| "properties": { |
| "answer_accepted": { |
| "type": "boolean" |
| }, |
| "answer_count": { |
| "type": "integer" |
| }, |
| "answer_id": { |
| "type": "string" |
| }, |
| "author_user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| }, |
| "comment_id": { |
| "type": "string" |
| }, |
| "created_at": { |
| "type": "integer" |
| }, |
| "flag_id": { |
| "type": "string" |
| }, |
| "object_id": { |
| "type": "string" |
| }, |
| "object_show_status": { |
| "type": "integer" |
| }, |
| "object_status": { |
| "type": "integer" |
| }, |
| "object_type": { |
| "type": "string", |
| "enum": [ |
| "question", |
| "answer", |
| "comment" |
| ] |
| }, |
| "original_text": { |
| "type": "string" |
| }, |
| "parsed_text": { |
| "type": "string" |
| }, |
| "question_id": { |
| "type": "string" |
| }, |
| "reason": { |
| "$ref": "#/definitions/schema.ReasonItem" |
| }, |
| "reason_content": { |
| "type": "string" |
| }, |
| "submit_at": { |
| "type": "integer" |
| }, |
| "submitter_user": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| }, |
| "tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagResp" |
| } |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "url_title": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetReviewingTypeResp": { |
| "type": "object", |
| "properties": { |
| "label": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| }, |
| "todo_amount": { |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.GetRevisionResp": { |
| "type": "object", |
| "properties": { |
| "content": {}, |
| "create_at": { |
| "type": "integer" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "object_id": { |
| "type": "string" |
| }, |
| "reason": { |
| "type": "string" |
| }, |
| "status": { |
| "type": "integer" |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "url_title": { |
| "type": "string" |
| }, |
| "use_id": { |
| "type": "string" |
| }, |
| "user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| } |
| } |
| }, |
| "schema.GetRoleResp": { |
| "type": "object", |
| "properties": { |
| "description": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "integer" |
| }, |
| "name": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetSMTPConfigResp": { |
| "type": "object", |
| "properties": { |
| "encryption": { |
| "description": "\"\" SSL TLS", |
| "type": "string" |
| }, |
| "from_email": { |
| "type": "string" |
| }, |
| "from_name": { |
| "type": "string" |
| }, |
| "smtp_authentication": { |
| "type": "boolean" |
| }, |
| "smtp_host": { |
| "type": "string" |
| }, |
| "smtp_password": { |
| "type": "string" |
| }, |
| "smtp_port": { |
| "type": "integer" |
| }, |
| "smtp_username": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetSiteLegalInfoResp": { |
| "type": "object", |
| "properties": { |
| "privacy_policy_original_text": { |
| "type": "string" |
| }, |
| "privacy_policy_parsed_text": { |
| "type": "string" |
| }, |
| "terms_of_service_original_text": { |
| "type": "string" |
| }, |
| "terms_of_service_parsed_text": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetTagBasicResp": { |
| "type": "object", |
| "properties": { |
| "display_name": { |
| "type": "string" |
| }, |
| "recommend": { |
| "type": "boolean" |
| }, |
| "reserved": { |
| "type": "boolean" |
| }, |
| "slug_name": { |
| "type": "string" |
| }, |
| "tag_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetTagPageResp": { |
| "type": "object", |
| "properties": { |
| "created_at": { |
| "description": "created time", |
| "type": "integer" |
| }, |
| "description": { |
| "description": "description", |
| "type": "string" |
| }, |
| "display_name": { |
| "description": "display_name", |
| "type": "string" |
| }, |
| "excerpt": { |
| "description": "excerpt", |
| "type": "string" |
| }, |
| "follow_count": { |
| "description": "follower amount", |
| "type": "integer" |
| }, |
| "is_follower": { |
| "description": "is follower", |
| "type": "boolean" |
| }, |
| "original_text": { |
| "description": "original text", |
| "type": "string" |
| }, |
| "parsed_text": { |
| "description": "parsed_text", |
| "type": "string" |
| }, |
| "question_count": { |
| "description": "question amount", |
| "type": "integer" |
| }, |
| "recommend": { |
| "type": "boolean" |
| }, |
| "reserved": { |
| "type": "boolean" |
| }, |
| "slug_name": { |
| "description": "slug_name", |
| "type": "string" |
| }, |
| "tag_id": { |
| "description": "tag_id", |
| "type": "string" |
| }, |
| "updated_at": { |
| "description": "updated time", |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.GetTagResp": { |
| "type": "object", |
| "properties": { |
| "created_at": { |
| "type": "integer" |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "display_name": { |
| "type": "string" |
| }, |
| "excerpt": { |
| "type": "string" |
| }, |
| "follow_count": { |
| "type": "integer" |
| }, |
| "is_follower": { |
| "type": "boolean" |
| }, |
| "main_tag_slug_name": { |
| "description": "if main tag slug name is not empty, this tag is synonymous with the main tag", |
| "type": "string" |
| }, |
| "member_actions": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.PermissionMemberAction" |
| } |
| }, |
| "original_text": { |
| "type": "string" |
| }, |
| "parsed_text": { |
| "type": "string" |
| }, |
| "question_count": { |
| "type": "integer" |
| }, |
| "recommend": { |
| "type": "boolean" |
| }, |
| "reserved": { |
| "type": "boolean" |
| }, |
| "slug_name": { |
| "type": "string" |
| }, |
| "status": { |
| "type": "string" |
| }, |
| "tag_id": { |
| "type": "string" |
| }, |
| "updated_at": { |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.GetTagSynonymsResp": { |
| "type": "object", |
| "properties": { |
| "member_actions": { |
| "description": "MemberActions", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.PermissionMemberAction" |
| } |
| }, |
| "synonyms": { |
| "description": "synonyms", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagSynonym" |
| } |
| } |
| } |
| }, |
| "schema.GetUnreviewedPostPageResp": { |
| "type": "object", |
| "properties": { |
| "answer_id": { |
| "type": "string" |
| }, |
| "author_user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| }, |
| "comment_id": { |
| "type": "string" |
| }, |
| "created_at": { |
| "type": "integer" |
| }, |
| "object_id": { |
| "type": "string" |
| }, |
| "object_show_status": { |
| "type": "integer" |
| }, |
| "object_status": { |
| "type": "integer" |
| }, |
| "object_type": { |
| "type": "string", |
| "enum": [ |
| "question", |
| "answer", |
| "comment" |
| ] |
| }, |
| "original_text": { |
| "type": "string" |
| }, |
| "parsed_text": { |
| "type": "string" |
| }, |
| "question_id": { |
| "type": "string" |
| }, |
| "reason": { |
| "type": "string" |
| }, |
| "review_id": { |
| "type": "integer" |
| }, |
| "submit_at": { |
| "type": "integer" |
| }, |
| "submitter_display_name": { |
| "type": "string" |
| }, |
| "tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagResp" |
| } |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "url_title": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetUnreviewedRevisionResp": { |
| "type": "object", |
| "properties": { |
| "info": { |
| "$ref": "#/definitions/schema.UnreviewedRevisionInfoInfo" |
| }, |
| "type": { |
| "type": "string" |
| }, |
| "unreviewed_info": { |
| "$ref": "#/definitions/schema.GetRevisionResp" |
| } |
| } |
| }, |
| "schema.GetUserActivationResp": { |
| "type": "object", |
| "properties": { |
| "activation_url": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetUserBadgeAwardListResp": { |
| "type": "object", |
| "properties": { |
| "earned_count": { |
| "description": "badge award count", |
| "type": "integer" |
| }, |
| "icon": { |
| "description": "badge icon", |
| "type": "string" |
| }, |
| "id": { |
| "description": "badge id", |
| "type": "string" |
| }, |
| "level": { |
| "description": "badge level", |
| "allOf": [ |
| { |
| "$ref": "#/definitions/entity.BadgeLevel" |
| } |
| ] |
| }, |
| "name": { |
| "description": "badge name", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetUserNotificationConfigResp": { |
| "type": "object", |
| "properties": { |
| "all_new_question": { |
| "$ref": "#/definitions/schema.NotificationChannelConfig" |
| }, |
| "all_new_question_for_following_tags": { |
| "$ref": "#/definitions/schema.NotificationChannelConfig" |
| }, |
| "inbox": { |
| "$ref": "#/definitions/schema.NotificationChannelConfig" |
| } |
| } |
| }, |
| "schema.GetUserPageResp": { |
| "type": "object", |
| "properties": { |
| "avatar": { |
| "description": "avatar", |
| "type": "string" |
| }, |
| "created_at": { |
| "description": "create time", |
| "type": "integer" |
| }, |
| "deleted_at": { |
| "description": "delete time", |
| "type": "integer" |
| }, |
| "display_name": { |
| "description": "display name", |
| "type": "string" |
| }, |
| "e_mail": { |
| "description": "email", |
| "type": "string" |
| }, |
| "rank": { |
| "description": "rank", |
| "type": "integer" |
| }, |
| "role_id": { |
| "description": "role id", |
| "type": "integer" |
| }, |
| "role_name": { |
| "description": "role name", |
| "type": "string" |
| }, |
| "status": { |
| "description": "user status(normal,suspended,deleted,inactive)", |
| "type": "string" |
| }, |
| "suspended_at": { |
| "description": "suspended time", |
| "type": "integer" |
| }, |
| "suspended_until": { |
| "description": "suspended until time", |
| "type": "integer" |
| }, |
| "user_id": { |
| "description": "user id", |
| "type": "string" |
| }, |
| "username": { |
| "description": "username", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetUserPluginListResp": { |
| "type": "object", |
| "properties": { |
| "name": { |
| "type": "string" |
| }, |
| "slug_name": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetUserStaffResp": { |
| "type": "object", |
| "properties": { |
| "avatar": { |
| "description": "avatar", |
| "type": "string" |
| }, |
| "display_name": { |
| "description": "display name", |
| "type": "string" |
| }, |
| "username": { |
| "description": "username", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.GetVoteWithPageResp": { |
| "type": "object", |
| "properties": { |
| "answer_id": { |
| "description": "answer id", |
| "type": "string" |
| }, |
| "content": { |
| "description": "content", |
| "type": "string" |
| }, |
| "created_at": { |
| "description": "create time", |
| "type": "integer" |
| }, |
| "object_id": { |
| "description": "object id", |
| "type": "string" |
| }, |
| "object_type": { |
| "description": "object type", |
| "type": "string", |
| "enum": [ |
| "question", |
| "answer", |
| "tag", |
| "comment" |
| ] |
| }, |
| "question_id": { |
| "description": "question id", |
| "type": "string" |
| }, |
| "title": { |
| "description": "title", |
| "type": "string" |
| }, |
| "url_title": { |
| "description": "url title", |
| "type": "string" |
| }, |
| "vote_type": { |
| "description": "vote type", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.LoadingAction": { |
| "type": "object", |
| "properties": { |
| "state": { |
| "type": "string" |
| }, |
| "text": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.NotificationChannelConfig": { |
| "type": "object", |
| "properties": { |
| "enable": { |
| "type": "boolean" |
| }, |
| "key": { |
| "$ref": "#/definitions/constant.NotificationChannelKey" |
| } |
| } |
| }, |
| "schema.NotificationClearIDRequest": { |
| "type": "object", |
| "properties": { |
| "id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.NotificationClearRequest": { |
| "type": "object", |
| "required": [ |
| "type" |
| ], |
| "properties": { |
| "type": { |
| "type": "string", |
| "enum": [ |
| "inbox", |
| "achievement" |
| ] |
| } |
| } |
| }, |
| "schema.OnCompleteAction": { |
| "type": "object", |
| "properties": { |
| "refresh_form_config": { |
| "type": "boolean" |
| }, |
| "toast_return_message": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.Operation": { |
| "type": "object", |
| "properties": { |
| "description": { |
| "type": "string" |
| }, |
| "level": { |
| "$ref": "#/definitions/schema.OperationLevel" |
| }, |
| "msg": { |
| "type": "string" |
| }, |
| "time": { |
| "type": "integer" |
| }, |
| "type": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.OperationLevel": { |
| "type": "string", |
| "enum": [ |
| "info", |
| "danger", |
| "warning", |
| "secondary" |
| ], |
| "x-enum-varnames": [ |
| "OperationLevelInfo", |
| "OperationLevelDanger", |
| "OperationLevelWarning", |
| "OperationLevelSecondary" |
| ] |
| }, |
| "schema.OperationQuestionReq": { |
| "type": "object", |
| "required": [ |
| "id" |
| ], |
| "properties": { |
| "id": { |
| "type": "string" |
| }, |
| "operation": { |
| "description": "operation [pin unpin hide show]", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.PermissionMemberAction": { |
| "type": "object", |
| "properties": { |
| "action": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| }, |
| "type": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.PostRenderReq": { |
| "type": "object", |
| "properties": { |
| "content": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.PrivilegeLevel": { |
| "type": "integer", |
| "enum": [ |
| 1, |
| 2, |
| 3, |
| 99 |
| ], |
| "x-enum-varnames": [ |
| "PrivilegeLevel1", |
| "PrivilegeLevel2", |
| "PrivilegeLevel3", |
| "PrivilegeLevelCustom" |
| ] |
| }, |
| "schema.PrivilegeOption": { |
| "type": "object", |
| "properties": { |
| "level": { |
| "$ref": "#/definitions/schema.PrivilegeLevel" |
| }, |
| "level_desc": { |
| "type": "string" |
| }, |
| "privileges": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/constant.Privilege" |
| } |
| } |
| } |
| }, |
| "schema.QuestionAdd": { |
| "type": "object", |
| "required": [ |
| "content", |
| "tags", |
| "title" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "description": "captcha_id", |
| "type": "string" |
| }, |
| "content": { |
| "description": "content", |
| "type": "string", |
| "maxLength": 65535, |
| "minLength": 6 |
| }, |
| "tags": { |
| "description": "tags", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagItem" |
| } |
| }, |
| "title": { |
| "description": "question title", |
| "type": "string", |
| "maxLength": 150, |
| "minLength": 6 |
| } |
| } |
| }, |
| "schema.QuestionAddByAnswer": { |
| "type": "object", |
| "required": [ |
| "answer_content", |
| "content", |
| "tags", |
| "title" |
| ], |
| "properties": { |
| "answer_content": { |
| "type": "string", |
| "maxLength": 65535, |
| "minLength": 6 |
| }, |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "description": "captcha_id", |
| "type": "string" |
| }, |
| "content": { |
| "description": "content", |
| "type": "string", |
| "maxLength": 65535, |
| "minLength": 6 |
| }, |
| "mention_username_list": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "tags": { |
| "description": "tags", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagItem" |
| } |
| }, |
| "title": { |
| "description": "question title", |
| "type": "string", |
| "maxLength": 150, |
| "minLength": 6 |
| } |
| } |
| }, |
| "schema.QuestionInfoResp": { |
| "type": "object", |
| "properties": { |
| "accepted_answer_id": { |
| "type": "string" |
| }, |
| "answer_count": { |
| "type": "integer" |
| }, |
| "answered": { |
| "type": "boolean" |
| }, |
| "collected": { |
| "type": "boolean" |
| }, |
| "collection_count": { |
| "type": "integer" |
| }, |
| "content": { |
| "type": "string" |
| }, |
| "create_time": { |
| "type": "integer" |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "edit_time": { |
| "type": "integer" |
| }, |
| "extends_actions": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.PermissionMemberAction" |
| } |
| }, |
| "first_answer_id": { |
| "type": "string" |
| }, |
| "follow_count": { |
| "type": "integer" |
| }, |
| "html": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "is_followed": { |
| "type": "boolean" |
| }, |
| "last_answer_id": { |
| "type": "string" |
| }, |
| "last_answered_user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| }, |
| "member_actions": { |
| "description": "MemberActions", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.PermissionMemberAction" |
| } |
| }, |
| "operation": { |
| "$ref": "#/definitions/schema.Operation" |
| }, |
| "pin": { |
| "type": "integer" |
| }, |
| "show": { |
| "type": "integer" |
| }, |
| "status": { |
| "type": "integer" |
| }, |
| "tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagResp" |
| } |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "unique_view_count": { |
| "type": "integer" |
| }, |
| "update_time": { |
| "type": "integer" |
| }, |
| "update_user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| }, |
| "url_title": { |
| "type": "string" |
| }, |
| "user_info": { |
| "$ref": "#/definitions/schema.UserBasicInfo" |
| }, |
| "view_count": { |
| "type": "integer" |
| }, |
| "vote_count": { |
| "type": "integer" |
| }, |
| "vote_status": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.QuestionPageReq": { |
| "type": "object", |
| "properties": { |
| "in_days": { |
| "type": "integer", |
| "minimum": 1 |
| }, |
| "order": { |
| "type": "string", |
| "enum": [ |
| "newest", |
| "active", |
| "hot", |
| "score", |
| "unanswered", |
| "recommend", |
| "frequent" |
| ] |
| }, |
| "page": { |
| "type": "integer", |
| "minimum": 1 |
| }, |
| "page_size": { |
| "type": "integer", |
| "minimum": 1 |
| }, |
| "tag": { |
| "type": "string", |
| "maxLength": 100 |
| }, |
| "username": { |
| "type": "string", |
| "maxLength": 100 |
| } |
| } |
| }, |
| "schema.QuestionPageResp": { |
| "type": "object", |
| "properties": { |
| "accepted_answer_id": { |
| "description": "answer information", |
| "type": "string" |
| }, |
| "answer_count": { |
| "type": "integer" |
| }, |
| "collection_count": { |
| "type": "integer" |
| }, |
| "created_at": { |
| "type": "integer" |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "follow_count": { |
| "type": "integer" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "last_answer_id": { |
| "type": "string" |
| }, |
| "operated_at": { |
| "description": "operator information", |
| "type": "integer" |
| }, |
| "operation_type": { |
| "type": "string" |
| }, |
| "operator": { |
| "$ref": "#/definitions/schema.QuestionPageRespOperator" |
| }, |
| "pin": { |
| "description": "1: unpin, 2: pin", |
| "type": "integer" |
| }, |
| "show": { |
| "description": "0: show, 1: hide", |
| "type": "integer" |
| }, |
| "status": { |
| "type": "integer" |
| }, |
| "tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagResp" |
| } |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "unique_view_count": { |
| "type": "integer" |
| }, |
| "url_title": { |
| "type": "string" |
| }, |
| "view_count": { |
| "description": "question statistical information", |
| "type": "integer" |
| }, |
| "vote_count": { |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.QuestionPageRespOperator": { |
| "type": "object", |
| "properties": { |
| "avatar": { |
| "type": "string" |
| }, |
| "display_name": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "rank": { |
| "type": "integer" |
| }, |
| "status": { |
| "type": "string" |
| }, |
| "username": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.QuestionRecoverReq": { |
| "type": "object", |
| "required": [ |
| "question_id" |
| ], |
| "properties": { |
| "question_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.QuestionUpdate": { |
| "type": "object", |
| "required": [ |
| "content", |
| "id", |
| "tags", |
| "title" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "description": "captcha_id", |
| "type": "string" |
| }, |
| "content": { |
| "description": "content", |
| "type": "string", |
| "maxLength": 65535, |
| "minLength": 6 |
| }, |
| "edit_summary": { |
| "description": "edit summary", |
| "type": "string" |
| }, |
| "id": { |
| "description": "question id", |
| "type": "string" |
| }, |
| "invite_user": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "tags": { |
| "description": "tags", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagItem" |
| } |
| }, |
| "title": { |
| "description": "question title", |
| "type": "string", |
| "maxLength": 150, |
| "minLength": 6 |
| } |
| } |
| }, |
| "schema.QuestionUpdateInviteUser": { |
| "type": "object", |
| "required": [ |
| "id" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "description": "captcha_id", |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "invite_user": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| } |
| } |
| }, |
| "schema.ReactionRespItem": { |
| "type": "object", |
| "properties": { |
| "count": { |
| "description": "Count is the number of users who reacted", |
| "type": "integer" |
| }, |
| "emoji": { |
| "description": "Emoji is the reaction emoji", |
| "type": "string" |
| }, |
| "is_active": { |
| "description": "IsActive is if current user has reacted", |
| "type": "boolean" |
| }, |
| "tooltip": { |
| "description": "Tooltip is the user's name who reacted", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.ReasonItem": { |
| "type": "object", |
| "properties": { |
| "content_type": { |
| "type": "string" |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| }, |
| "placeholder": { |
| "type": "string" |
| }, |
| "reason_key": { |
| "type": "string" |
| }, |
| "reason_type": { |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.RecoverAnswerReq": { |
| "type": "object", |
| "required": [ |
| "answer_id" |
| ], |
| "properties": { |
| "answer_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.RecoverTagReq": { |
| "type": "object", |
| "required": [ |
| "tag_id" |
| ], |
| "properties": { |
| "tag_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.RemoveAnswerReq": { |
| "type": "object", |
| "required": [ |
| "id" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.RemoveCommentReq": { |
| "type": "object", |
| "required": [ |
| "comment_id" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "comment_id": { |
| "description": "comment id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.RemoveQuestionReq": { |
| "type": "object", |
| "required": [ |
| "id" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "description": "captcha_id", |
| "type": "string" |
| }, |
| "id": { |
| "description": "question id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.RemoveTagReq": { |
| "type": "object", |
| "required": [ |
| "tag_id" |
| ], |
| "properties": { |
| "tag_id": { |
| "description": "tag_id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.ReopenQuestionReq": { |
| "type": "object", |
| "properties": { |
| "question_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.ReviewReportReq": { |
| "type": "object", |
| "required": [ |
| "flag_id", |
| "operation_type" |
| ], |
| "properties": { |
| "close_msg": { |
| "type": "string" |
| }, |
| "close_type": { |
| "type": "integer" |
| }, |
| "content": { |
| "type": "string", |
| "maxLength": 65535, |
| "minLength": 6 |
| }, |
| "flag_id": { |
| "type": "string" |
| }, |
| "operation_type": { |
| "type": "string", |
| "enum": [ |
| "edit_post", |
| "close_post", |
| "delete_post", |
| "unlist_post", |
| "ignore_report" |
| ] |
| }, |
| "tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagItem" |
| } |
| }, |
| "title": { |
| "type": "string", |
| "maxLength": 150, |
| "minLength": 6 |
| } |
| } |
| }, |
| "schema.RevisionAuditReq": { |
| "type": "object", |
| "required": [ |
| "id", |
| "operation" |
| ], |
| "properties": { |
| "id": { |
| "description": "object id", |
| "type": "string" |
| }, |
| "operation": { |
| "description": "approve or reject", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SearchObject": { |
| "type": "object", |
| "properties": { |
| "accepted": { |
| "type": "boolean" |
| }, |
| "answer_count": { |
| "type": "integer" |
| }, |
| "created_at": { |
| "type": "integer" |
| }, |
| "excerpt": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "question_id": { |
| "type": "string" |
| }, |
| "status": { |
| "description": "Status", |
| "type": "string" |
| }, |
| "tags": { |
| "description": "tags", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagResp" |
| } |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "url_title": { |
| "type": "string" |
| }, |
| "user_info": { |
| "description": "user info", |
| "allOf": [ |
| { |
| "$ref": "#/definitions/schema.SearchObjectUser" |
| } |
| ] |
| }, |
| "vote_count": { |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.SearchObjectUser": { |
| "type": "object", |
| "properties": { |
| "display_name": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "rank": { |
| "type": "integer" |
| }, |
| "status": { |
| "type": "string" |
| }, |
| "username": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SearchResp": { |
| "type": "object", |
| "properties": { |
| "count": { |
| "type": "integer" |
| }, |
| "list": { |
| "description": "search response", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.SearchResult" |
| } |
| } |
| } |
| }, |
| "schema.SearchResult": { |
| "type": "object", |
| "properties": { |
| "object": { |
| "description": "this object", |
| "allOf": [ |
| { |
| "$ref": "#/definitions/schema.SearchObject" |
| } |
| ] |
| }, |
| "object_type": { |
| "description": "object_type", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SendUserActivationReq": { |
| "type": "object", |
| "required": [ |
| "user_id" |
| ], |
| "properties": { |
| "user_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SiteBrandingReq": { |
| "type": "object", |
| "properties": { |
| "favicon": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "logo": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "mobile_logo": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "square_icon": { |
| "type": "string", |
| "maxLength": 512 |
| } |
| } |
| }, |
| "schema.SiteBrandingResp": { |
| "type": "object", |
| "properties": { |
| "favicon": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "logo": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "mobile_logo": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "square_icon": { |
| "type": "string", |
| "maxLength": 512 |
| } |
| } |
| }, |
| "schema.SiteCustomCssHTMLReq": { |
| "type": "object", |
| "properties": { |
| "custom_css": { |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "custom_footer": { |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "custom_head": { |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "custom_header": { |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "custom_sidebar": { |
| "type": "string", |
| "maxLength": 65536 |
| } |
| } |
| }, |
| "schema.SiteCustomCssHTMLResp": { |
| "type": "object", |
| "properties": { |
| "custom_css": { |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "custom_footer": { |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "custom_head": { |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "custom_header": { |
| "type": "string", |
| "maxLength": 65536 |
| }, |
| "custom_sidebar": { |
| "type": "string", |
| "maxLength": 65536 |
| } |
| } |
| }, |
| "schema.SiteGeneralReq": { |
| "type": "object", |
| "required": [ |
| "contact_email", |
| "name", |
| "site_url" |
| ], |
| "properties": { |
| "check_update": { |
| "type": "boolean" |
| }, |
| "contact_email": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "description": { |
| "type": "string", |
| "maxLength": 2000 |
| }, |
| "name": { |
| "type": "string", |
| "maxLength": 128 |
| }, |
| "short_description": { |
| "type": "string", |
| "maxLength": 255 |
| }, |
| "site_url": { |
| "type": "string", |
| "maxLength": 512 |
| } |
| } |
| }, |
| "schema.SiteGeneralResp": { |
| "type": "object", |
| "required": [ |
| "contact_email", |
| "name", |
| "site_url" |
| ], |
| "properties": { |
| "check_update": { |
| "type": "boolean" |
| }, |
| "contact_email": { |
| "type": "string", |
| "maxLength": 512 |
| }, |
| "description": { |
| "type": "string", |
| "maxLength": 2000 |
| }, |
| "name": { |
| "type": "string", |
| "maxLength": 128 |
| }, |
| "short_description": { |
| "type": "string", |
| "maxLength": 255 |
| }, |
| "site_url": { |
| "type": "string", |
| "maxLength": 512 |
| } |
| } |
| }, |
| "schema.SiteInfoResp": { |
| "type": "object", |
| "properties": { |
| "branding": { |
| "$ref": "#/definitions/schema.SiteBrandingResp" |
| }, |
| "custom_css_html": { |
| "$ref": "#/definitions/schema.SiteCustomCssHTMLResp" |
| }, |
| "general": { |
| "$ref": "#/definitions/schema.SiteGeneralResp" |
| }, |
| "interface": { |
| "$ref": "#/definitions/schema.SiteInterfaceResp" |
| }, |
| "login": { |
| "$ref": "#/definitions/schema.SiteLoginResp" |
| }, |
| "revision": { |
| "type": "string" |
| }, |
| "site_legal": { |
| "$ref": "#/definitions/schema.SiteLegalSimpleResp" |
| }, |
| "site_seo": { |
| "$ref": "#/definitions/schema.SiteSeoResp" |
| }, |
| "site_users": { |
| "$ref": "#/definitions/schema.SiteUsersResp" |
| }, |
| "site_write": { |
| "$ref": "#/definitions/schema.SiteWriteResp" |
| }, |
| "theme": { |
| "$ref": "#/definitions/schema.SiteThemeResp" |
| }, |
| "version": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SiteInterfaceReq": { |
| "type": "object", |
| "required": [ |
| "default_avatar", |
| "language", |
| "time_zone" |
| ], |
| "properties": { |
| "default_avatar": { |
| "type": "string", |
| "enum": [ |
| "system", |
| "gravatar" |
| ] |
| }, |
| "gravatar_base_url": { |
| "type": "string" |
| }, |
| "language": { |
| "type": "string", |
| "maxLength": 128 |
| }, |
| "time_zone": { |
| "type": "string", |
| "maxLength": 128 |
| } |
| } |
| }, |
| "schema.SiteInterfaceResp": { |
| "type": "object", |
| "required": [ |
| "default_avatar", |
| "language", |
| "time_zone" |
| ], |
| "properties": { |
| "default_avatar": { |
| "type": "string", |
| "enum": [ |
| "system", |
| "gravatar" |
| ] |
| }, |
| "gravatar_base_url": { |
| "type": "string" |
| }, |
| "language": { |
| "type": "string", |
| "maxLength": 128 |
| }, |
| "time_zone": { |
| "type": "string", |
| "maxLength": 128 |
| } |
| } |
| }, |
| "schema.SiteLegalReq": { |
| "type": "object", |
| "required": [ |
| "external_content_display" |
| ], |
| "properties": { |
| "external_content_display": { |
| "type": "string", |
| "enum": [ |
| "always_display", |
| "ask_before_display" |
| ] |
| }, |
| "privacy_policy_original_text": { |
| "type": "string" |
| }, |
| "privacy_policy_parsed_text": { |
| "type": "string" |
| }, |
| "terms_of_service_original_text": { |
| "type": "string" |
| }, |
| "terms_of_service_parsed_text": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SiteLegalResp": { |
| "type": "object", |
| "required": [ |
| "external_content_display" |
| ], |
| "properties": { |
| "external_content_display": { |
| "type": "string", |
| "enum": [ |
| "always_display", |
| "ask_before_display" |
| ] |
| }, |
| "privacy_policy_original_text": { |
| "type": "string" |
| }, |
| "privacy_policy_parsed_text": { |
| "type": "string" |
| }, |
| "terms_of_service_original_text": { |
| "type": "string" |
| }, |
| "terms_of_service_parsed_text": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SiteLegalSimpleResp": { |
| "type": "object", |
| "required": [ |
| "external_content_display" |
| ], |
| "properties": { |
| "external_content_display": { |
| "type": "string", |
| "enum": [ |
| "always_display", |
| "ask_before_display" |
| ] |
| } |
| } |
| }, |
| "schema.SiteLoginReq": { |
| "type": "object", |
| "properties": { |
| "allow_email_domains": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "allow_email_registrations": { |
| "type": "boolean" |
| }, |
| "allow_new_registrations": { |
| "type": "boolean" |
| }, |
| "allow_password_login": { |
| "type": "boolean" |
| }, |
| "login_required": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.SiteLoginResp": { |
| "type": "object", |
| "properties": { |
| "allow_email_domains": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "allow_email_registrations": { |
| "type": "boolean" |
| }, |
| "allow_new_registrations": { |
| "type": "boolean" |
| }, |
| "allow_password_login": { |
| "type": "boolean" |
| }, |
| "login_required": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.SiteSeoReq": { |
| "type": "object", |
| "required": [ |
| "permalink", |
| "robots" |
| ], |
| "properties": { |
| "permalink": { |
| "type": "integer", |
| "maximum": 4, |
| "minimum": 0 |
| }, |
| "robots": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SiteSeoResp": { |
| "type": "object", |
| "required": [ |
| "permalink", |
| "robots" |
| ], |
| "properties": { |
| "permalink": { |
| "type": "integer", |
| "maximum": 4, |
| "minimum": 0 |
| }, |
| "robots": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SiteThemeReq": { |
| "type": "object", |
| "required": [ |
| "theme" |
| ], |
| "properties": { |
| "color_scheme": { |
| "type": "string", |
| "maxLength": 100 |
| }, |
| "theme": { |
| "type": "string", |
| "maxLength": 255 |
| }, |
| "theme_config": { |
| "type": "object", |
| "additionalProperties": true |
| } |
| } |
| }, |
| "schema.SiteThemeResp": { |
| "type": "object", |
| "properties": { |
| "color_scheme": { |
| "type": "string" |
| }, |
| "theme": { |
| "type": "string" |
| }, |
| "theme_config": { |
| "type": "object", |
| "additionalProperties": true |
| }, |
| "theme_options": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.ThemeOption" |
| } |
| } |
| } |
| }, |
| "schema.SiteUsersReq": { |
| "type": "object", |
| "required": [ |
| "default_avatar" |
| ], |
| "properties": { |
| "allow_update_avatar": { |
| "type": "boolean" |
| }, |
| "allow_update_bio": { |
| "type": "boolean" |
| }, |
| "allow_update_display_name": { |
| "type": "boolean" |
| }, |
| "allow_update_location": { |
| "type": "boolean" |
| }, |
| "allow_update_username": { |
| "type": "boolean" |
| }, |
| "allow_update_website": { |
| "type": "boolean" |
| }, |
| "default_avatar": { |
| "type": "string", |
| "enum": [ |
| "system", |
| "gravatar" |
| ] |
| }, |
| "gravatar_base_url": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SiteUsersResp": { |
| "type": "object", |
| "required": [ |
| "default_avatar" |
| ], |
| "properties": { |
| "allow_update_avatar": { |
| "type": "boolean" |
| }, |
| "allow_update_bio": { |
| "type": "boolean" |
| }, |
| "allow_update_display_name": { |
| "type": "boolean" |
| }, |
| "allow_update_location": { |
| "type": "boolean" |
| }, |
| "allow_update_username": { |
| "type": "boolean" |
| }, |
| "allow_update_website": { |
| "type": "boolean" |
| }, |
| "default_avatar": { |
| "type": "string", |
| "enum": [ |
| "system", |
| "gravatar" |
| ] |
| }, |
| "gravatar_base_url": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.SiteWriteReq": { |
| "type": "object", |
| "properties": { |
| "authorized_attachment_extensions": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "authorized_image_extensions": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "max_attachment_size": { |
| "type": "integer" |
| }, |
| "max_image_megapixel": { |
| "type": "integer" |
| }, |
| "max_image_size": { |
| "type": "integer" |
| }, |
| "recommend_tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.SiteWriteTag" |
| } |
| }, |
| "required_tag": { |
| "type": "boolean" |
| }, |
| "reserved_tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.SiteWriteTag" |
| } |
| }, |
| "restrict_answer": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.SiteWriteResp": { |
| "type": "object", |
| "properties": { |
| "authorized_attachment_extensions": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "authorized_image_extensions": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "max_attachment_size": { |
| "type": "integer" |
| }, |
| "max_image_megapixel": { |
| "type": "integer" |
| }, |
| "max_image_size": { |
| "type": "integer" |
| }, |
| "recommend_tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.SiteWriteTag" |
| } |
| }, |
| "required_tag": { |
| "type": "boolean" |
| }, |
| "reserved_tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.SiteWriteTag" |
| } |
| }, |
| "restrict_answer": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "schema.SiteWriteTag": { |
| "type": "object", |
| "required": [ |
| "slug_name" |
| ], |
| "properties": { |
| "display_name": { |
| "type": "string" |
| }, |
| "slug_name": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.TagItem": { |
| "type": "object", |
| "properties": { |
| "display_name": { |
| "description": "display_name", |
| "type": "string", |
| "maxLength": 35 |
| }, |
| "original_text": { |
| "description": "original text", |
| "type": "string" |
| }, |
| "slug_name": { |
| "description": "slug_name", |
| "type": "string", |
| "maxLength": 35 |
| } |
| } |
| }, |
| "schema.TagResp": { |
| "type": "object", |
| "properties": { |
| "display_name": { |
| "type": "string" |
| }, |
| "main_tag_slug_name": { |
| "description": "if main tag slug name is not empty, this tag is synonymous with the main tag", |
| "type": "string" |
| }, |
| "recommend": { |
| "type": "boolean" |
| }, |
| "reserved": { |
| "type": "boolean" |
| }, |
| "slug_name": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.TagSynonym": { |
| "type": "object", |
| "properties": { |
| "display_name": { |
| "description": "display name", |
| "type": "string" |
| }, |
| "main_tag_slug_name": { |
| "description": "if main tag slug name is not empty, this tag is synonymous with the main tag", |
| "type": "string" |
| }, |
| "slug_name": { |
| "description": "slug name", |
| "type": "string" |
| }, |
| "tag_id": { |
| "description": "tag id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.ThemeOption": { |
| "type": "object", |
| "properties": { |
| "label": { |
| "type": "string" |
| }, |
| "value": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UIOptionAction": { |
| "type": "object", |
| "properties": { |
| "loading": { |
| "$ref": "#/definitions/schema.LoadingAction" |
| }, |
| "method": { |
| "type": "string" |
| }, |
| "on_complete": { |
| "$ref": "#/definitions/schema.OnCompleteAction" |
| }, |
| "url": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UnreviewedRevisionInfoInfo": { |
| "type": "object", |
| "properties": { |
| "answer_accepted": { |
| "type": "boolean" |
| }, |
| "answer_count": { |
| "type": "integer" |
| }, |
| "answer_id": { |
| "type": "string" |
| }, |
| "comment_id": { |
| "type": "string" |
| }, |
| "content": { |
| "type": "string" |
| }, |
| "created_at": { |
| "type": "integer" |
| }, |
| "html": { |
| "type": "string" |
| }, |
| "object_creator_user_id": { |
| "type": "string" |
| }, |
| "object_id": { |
| "type": "string" |
| }, |
| "object_type": { |
| "type": "string" |
| }, |
| "question_id": { |
| "type": "string" |
| }, |
| "show_status": { |
| "type": "integer" |
| }, |
| "status": { |
| "type": "integer" |
| }, |
| "tags": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagResp" |
| } |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "url_title": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UpdateBadgeStatusReq": { |
| "type": "object", |
| "required": [ |
| "id", |
| "status" |
| ], |
| "properties": { |
| "id": { |
| "description": "badge id", |
| "type": "string" |
| }, |
| "status": { |
| "description": "badge status", |
| "allOf": [ |
| { |
| "$ref": "#/definitions/schema.BadgeStatus" |
| } |
| ] |
| } |
| } |
| }, |
| "schema.UpdateCommentReq": { |
| "type": "object", |
| "required": [ |
| "comment_id", |
| "original_text" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "description": "whether user can delete it", |
| "type": "string" |
| }, |
| "comment_id": { |
| "description": "comment id", |
| "type": "string" |
| }, |
| "original_text": { |
| "description": "original comment content", |
| "type": "string", |
| "maxLength": 600, |
| "minLength": 2 |
| } |
| } |
| }, |
| "schema.UpdateFollowTagsReq": { |
| "type": "object", |
| "properties": { |
| "slug_name_list": { |
| "description": "tag slug name list", |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| } |
| } |
| }, |
| "schema.UpdateInfoRequest": { |
| "type": "object", |
| "properties": { |
| "avatar": { |
| "$ref": "#/definitions/schema.AvatarInfo" |
| }, |
| "bio": { |
| "type": "string", |
| "maxLength": 4096 |
| }, |
| "display_name": { |
| "type": "string", |
| "maxLength": 30, |
| "minLength": 2 |
| }, |
| "location": { |
| "type": "string", |
| "maxLength": 100 |
| }, |
| "username": { |
| "type": "string", |
| "maxLength": 30, |
| "minLength": 2 |
| }, |
| "website": { |
| "type": "string", |
| "maxLength": 500 |
| } |
| } |
| }, |
| "schema.UpdatePluginConfigReq": { |
| "type": "object", |
| "required": [ |
| "plugin_slug_name" |
| ], |
| "properties": { |
| "config_fields": { |
| "type": "object", |
| "additionalProperties": {} |
| }, |
| "plugin_slug_name": { |
| "type": "string", |
| "maxLength": 100 |
| } |
| } |
| }, |
| "schema.UpdatePluginStatusReq": { |
| "type": "object", |
| "required": [ |
| "plugin_slug_name" |
| ], |
| "properties": { |
| "enabled": { |
| "type": "boolean" |
| }, |
| "plugin_slug_name": { |
| "type": "string", |
| "maxLength": 100 |
| } |
| } |
| }, |
| "schema.UpdatePrivilegesConfigReq": { |
| "type": "object", |
| "required": [ |
| "level" |
| ], |
| "properties": { |
| "custom_privileges": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/constant.Privilege" |
| } |
| }, |
| "level": { |
| "minimum": 1, |
| "allOf": [ |
| { |
| "$ref": "#/definitions/schema.PrivilegeLevel" |
| } |
| ] |
| } |
| } |
| }, |
| "schema.UpdateReactionReq": { |
| "type": "object", |
| "required": [ |
| "emoji", |
| "object_id", |
| "reaction" |
| ], |
| "properties": { |
| "emoji": { |
| "type": "string", |
| "enum": [ |
| "heart", |
| "smile", |
| "frown" |
| ] |
| }, |
| "object_id": { |
| "type": "string" |
| }, |
| "reaction": { |
| "type": "string", |
| "enum": [ |
| "activate", |
| "deactivate" |
| ] |
| } |
| } |
| }, |
| "schema.UpdateReviewReq": { |
| "type": "object", |
| "required": [ |
| "review_id", |
| "status" |
| ], |
| "properties": { |
| "review_id": { |
| "type": "integer" |
| }, |
| "status": { |
| "type": "string", |
| "enum": [ |
| "approve", |
| "reject" |
| ] |
| } |
| } |
| }, |
| "schema.UpdateSMTPConfigReq": { |
| "type": "object", |
| "properties": { |
| "encryption": { |
| "description": "\"\" SSL TLS", |
| "type": "string", |
| "enum": [ |
| "SSL", |
| "TLS" |
| ] |
| }, |
| "from_email": { |
| "type": "string", |
| "maxLength": 256 |
| }, |
| "from_name": { |
| "type": "string", |
| "maxLength": 256 |
| }, |
| "smtp_authentication": { |
| "type": "boolean" |
| }, |
| "smtp_host": { |
| "type": "string", |
| "maxLength": 256 |
| }, |
| "smtp_password": { |
| "type": "string", |
| "maxLength": 256 |
| }, |
| "smtp_port": { |
| "type": "integer", |
| "maximum": 65535, |
| "minimum": 1 |
| }, |
| "smtp_username": { |
| "type": "string", |
| "maxLength": 256 |
| }, |
| "test_email_recipient": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UpdateTagReq": { |
| "type": "object", |
| "required": [ |
| "tag_id" |
| ], |
| "properties": { |
| "display_name": { |
| "description": "display_name", |
| "type": "string", |
| "maxLength": 35 |
| }, |
| "edit_summary": { |
| "description": "edit summary", |
| "type": "string" |
| }, |
| "original_text": { |
| "description": "original text", |
| "type": "string" |
| }, |
| "slug_name": { |
| "description": "slug_name", |
| "type": "string", |
| "maxLength": 35 |
| }, |
| "tag_id": { |
| "description": "tag_id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UpdateTagSynonymReq": { |
| "type": "object", |
| "required": [ |
| "synonym_tag_list", |
| "tag_id" |
| ], |
| "properties": { |
| "synonym_tag_list": { |
| "description": "synonym tag list", |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.TagItem" |
| } |
| }, |
| "tag_id": { |
| "description": "tag_id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UpdateUserInterfaceRequest": { |
| "type": "object", |
| "required": [ |
| "color_scheme", |
| "language" |
| ], |
| "properties": { |
| "color_scheme": { |
| "description": "Color scheme", |
| "type": "string", |
| "maxLength": 100 |
| }, |
| "language": { |
| "description": "language", |
| "type": "string", |
| "maxLength": 100 |
| } |
| } |
| }, |
| "schema.UpdateUserNotificationConfigReq": { |
| "type": "object", |
| "properties": { |
| "all_new_question": { |
| "$ref": "#/definitions/schema.NotificationChannelConfig" |
| }, |
| "all_new_question_for_following_tags": { |
| "$ref": "#/definitions/schema.NotificationChannelConfig" |
| }, |
| "inbox": { |
| "$ref": "#/definitions/schema.NotificationChannelConfig" |
| } |
| } |
| }, |
| "schema.UpdateUserPasswordReq": { |
| "type": "object", |
| "required": [ |
| "password", |
| "user_id" |
| ], |
| "properties": { |
| "password": { |
| "type": "string", |
| "maxLength": 32, |
| "minLength": 8 |
| }, |
| "user_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UpdateUserPluginConfigReq": { |
| "type": "object", |
| "required": [ |
| "plugin_slug_name" |
| ], |
| "properties": { |
| "config_fields": { |
| "type": "object", |
| "additionalProperties": {} |
| }, |
| "plugin_slug_name": { |
| "type": "string", |
| "maxLength": 100 |
| } |
| } |
| }, |
| "schema.UpdateUserRoleReq": { |
| "type": "object", |
| "required": [ |
| "role_id", |
| "user_id" |
| ], |
| "properties": { |
| "role_id": { |
| "description": "role id", |
| "type": "integer" |
| }, |
| "user_id": { |
| "description": "user id", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UpdateUserStatusReq": { |
| "type": "object", |
| "required": [ |
| "status", |
| "user_id" |
| ], |
| "properties": { |
| "remove_all_content": { |
| "type": "boolean" |
| }, |
| "status": { |
| "type": "string", |
| "enum": [ |
| "normal", |
| "suspended", |
| "deleted", |
| "inactive" |
| ] |
| }, |
| "suspend_duration": { |
| "type": "string", |
| "enum": [ |
| "24h", |
| "48h", |
| "72h", |
| "7d", |
| "14d", |
| "1m", |
| "2m", |
| "3m", |
| "6m", |
| "1y", |
| "forever" |
| ] |
| }, |
| "user_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UserBasicInfo": { |
| "type": "object", |
| "properties": { |
| "avatar": { |
| "type": "string" |
| }, |
| "display_name": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "language": { |
| "type": "string" |
| }, |
| "location": { |
| "type": "string" |
| }, |
| "rank": { |
| "type": "integer" |
| }, |
| "status": { |
| "type": "string" |
| }, |
| "suspended_until": { |
| "type": "integer" |
| }, |
| "username": { |
| "type": "string" |
| }, |
| "website": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UserChangeEmailSendCodeReq": { |
| "type": "object", |
| "required": [ |
| "e_mail" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "e_mail": { |
| "type": "string", |
| "maxLength": 500 |
| }, |
| "pass": { |
| "type": "string", |
| "maxLength": 32, |
| "minLength": 8 |
| } |
| } |
| }, |
| "schema.UserChangeEmailVerifyReq": { |
| "type": "object", |
| "required": [ |
| "code" |
| ], |
| "properties": { |
| "code": { |
| "type": "string", |
| "maxLength": 500 |
| } |
| } |
| }, |
| "schema.UserEmailLoginReq": { |
| "type": "object", |
| "required": [ |
| "e_mail", |
| "pass" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "e_mail": { |
| "type": "string", |
| "maxLength": 500 |
| }, |
| "pass": { |
| "type": "string", |
| "maxLength": 32, |
| "minLength": 8 |
| } |
| } |
| }, |
| "schema.UserLoginResp": { |
| "type": "object", |
| "properties": { |
| "access_token": { |
| "description": "access token", |
| "type": "string" |
| }, |
| "answer_count": { |
| "description": "answer count", |
| "type": "integer" |
| }, |
| "authority_group": { |
| "description": "authority group", |
| "type": "integer" |
| }, |
| "avatar": { |
| "description": "avatar", |
| "type": "string" |
| }, |
| "bio": { |
| "description": "bio markdown", |
| "type": "string" |
| }, |
| "bio_html": { |
| "description": "bio html", |
| "type": "string" |
| }, |
| "color_scheme": { |
| "description": "Color scheme", |
| "type": "string" |
| }, |
| "created_at": { |
| "description": "create time", |
| "type": "integer" |
| }, |
| "display_name": { |
| "description": "display name", |
| "type": "string" |
| }, |
| "e_mail": { |
| "description": "email", |
| "type": "string" |
| }, |
| "follow_count": { |
| "description": "follow count", |
| "type": "integer" |
| }, |
| "have_password": { |
| "description": "user have password", |
| "type": "boolean" |
| }, |
| "id": { |
| "description": "user id", |
| "type": "string" |
| }, |
| "language": { |
| "description": "language", |
| "type": "string" |
| }, |
| "last_login_date": { |
| "description": "last login date", |
| "type": "integer" |
| }, |
| "location": { |
| "description": "location", |
| "type": "string" |
| }, |
| "mail_status": { |
| "description": "mail status(1 pass 2 to be verified)", |
| "type": "integer" |
| }, |
| "mobile": { |
| "description": "mobile", |
| "type": "string" |
| }, |
| "notice_status": { |
| "description": "notice status(1 on 2off)", |
| "type": "integer" |
| }, |
| "question_count": { |
| "description": "question count", |
| "type": "integer" |
| }, |
| "rank": { |
| "description": "rank", |
| "type": "integer" |
| }, |
| "role_id": { |
| "description": "role id", |
| "type": "integer" |
| }, |
| "status": { |
| "description": "user status", |
| "type": "string" |
| }, |
| "suspended_until": { |
| "description": "suspended until timestamp", |
| "type": "integer" |
| }, |
| "username": { |
| "description": "username", |
| "type": "string" |
| }, |
| "visit_token": { |
| "description": "visit token", |
| "type": "string" |
| }, |
| "website": { |
| "description": "website", |
| "type": "string" |
| } |
| } |
| }, |
| "schema.UserModifyPasswordReq": { |
| "type": "object", |
| "required": [ |
| "pass" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "old_pass": { |
| "type": "string", |
| "maxLength": 32, |
| "minLength": 8 |
| }, |
| "pass": { |
| "type": "string", |
| "maxLength": 32, |
| "minLength": 8 |
| } |
| } |
| }, |
| "schema.UserRankingResp": { |
| "type": "object", |
| "properties": { |
| "staffs": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.UserRankingSimpleInfo" |
| } |
| }, |
| "users_with_the_most_reputation": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.UserRankingSimpleInfo" |
| } |
| }, |
| "users_with_the_most_vote": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/schema.UserRankingSimpleInfo" |
| } |
| } |
| } |
| }, |
| "schema.UserRankingSimpleInfo": { |
| "type": "object", |
| "properties": { |
| "avatar": { |
| "description": "avatar", |
| "type": "string" |
| }, |
| "display_name": { |
| "description": "display name", |
| "type": "string" |
| }, |
| "rank": { |
| "description": "rank", |
| "type": "integer" |
| }, |
| "username": { |
| "description": "username", |
| "type": "string" |
| }, |
| "vote_count": { |
| "description": "vote", |
| "type": "integer" |
| } |
| } |
| }, |
| "schema.UserRePassWordRequest": { |
| "type": "object", |
| "required": [ |
| "code", |
| "pass" |
| ], |
| "properties": { |
| "code": { |
| "type": "string", |
| "maxLength": 100 |
| }, |
| "pass": { |
| "type": "string", |
| "maxLength": 32 |
| } |
| } |
| }, |
| "schema.UserRegisterReq": { |
| "type": "object", |
| "required": [ |
| "e_mail", |
| "name", |
| "pass" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "e_mail": { |
| "type": "string", |
| "maxLength": 500 |
| }, |
| "name": { |
| "type": "string", |
| "maxLength": 30, |
| "minLength": 2 |
| }, |
| "pass": { |
| "type": "string", |
| "maxLength": 32, |
| "minLength": 8 |
| } |
| } |
| }, |
| "schema.UserRetrievePassWordRequest": { |
| "type": "object", |
| "required": [ |
| "e_mail" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "e_mail": { |
| "type": "string", |
| "maxLength": 500 |
| } |
| } |
| }, |
| "schema.UserUnsubscribeNotificationReq": { |
| "type": "object", |
| "required": [ |
| "code" |
| ], |
| "properties": { |
| "code": { |
| "type": "string", |
| "maxLength": 500 |
| } |
| } |
| }, |
| "schema.VoteReq": { |
| "type": "object", |
| "required": [ |
| "object_id" |
| ], |
| "properties": { |
| "captcha_code": { |
| "type": "string" |
| }, |
| "captcha_id": { |
| "type": "string" |
| }, |
| "is_cancel": { |
| "type": "boolean" |
| }, |
| "object_id": { |
| "type": "string" |
| } |
| } |
| }, |
| "schema.VoteResp": { |
| "type": "object", |
| "properties": { |
| "down_votes": { |
| "type": "integer" |
| }, |
| "up_votes": { |
| "type": "integer" |
| }, |
| "vote_status": { |
| "type": "string" |
| }, |
| "votes": { |
| "type": "integer" |
| } |
| } |
| }, |
| "translator.LangOption": { |
| "type": "object", |
| "properties": { |
| "label": { |
| "type": "string" |
| }, |
| "progress": { |
| "description": "Translation completion percentage", |
| "type": "integer" |
| }, |
| "value": { |
| "type": "string" |
| } |
| } |
| } |
| }, |
| "securityDefinitions": { |
| "ApiKeyAuth": { |
| "type": "apiKey", |
| "name": "Authorization", |
| "in": "header" |
| } |
| } |
| }` |
| |
| // SwaggerInfo holds exported Swagger Info so clients can modify it |
| var SwaggerInfo = &swag.Spec{ |
| Version: "", |
| Host: "", |
| BasePath: "/", |
| Schemes: []string{}, |
| Title: "Apache Answer", |
| Description: "Apache Answer API", |
| InfoInstanceName: "swagger", |
| SwaggerTemplate: docTemplate, |
| LeftDelim: "{{", |
| RightDelim: "}}", |
| } |
| |
| func init() { |
| swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo) |
| } |