// 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": {
        "/admin/bot": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "bot"
                ],
                "summary": "get bot info",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/svc.BotGetRes"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "consumes": [
                    "multipart/form-data"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "bot"
                ],
                "summary": "set bot info",
                "parameters": [
                    {
                        "type": "file",
                        "description": "upload avatar",
                        "name": "avatar",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "name": "name",
                        "in": "formData",
                        "required": true
                    },
                    {
                        "type": "string",
                        "name": "unknown_prompt",
                        "in": "formData",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/group": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "group"
                ],
                "summary": "list group",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "allOf": [
                                                                    {
                                                                        "$ref": "#/definitions/model.GroupWithItem"
                                                                    },
                                                                    {
                                                                        "type": "object",
                                                                        "properties": {
                                                                            "items": {
                                                                                "type": "array",
                                                                                "items": {
                                                                                    "$ref": "#/definitions/model.GroupItemInfo"
                                                                                }
                                                                            }
                                                                        }
                                                                    }
                                                                ]
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "group"
                ],
                "summary": "update group",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.GroupUpdateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "knowledge_base"
                ],
                "summary": "list kb",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/svc.KBListItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "knowledge_base"
                ],
                "summary": "create kb",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.KBCreateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "integer"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/document/file/export": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "export file document",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.FileExportReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "string"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/document/file/list": {
            "post": {
                "consumes": [
                    "multipart/form-data"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "list file documents",
                "parameters": [
                    {
                        "type": "file",
                        "description": "upload file",
                        "name": "file",
                        "in": "formData",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/anydoc.ListRes"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/document/sitemap/export": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "export sitemap document",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.SitemapExportReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "string"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/document/sitemap/list": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "list sitemap documents",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.SitemapListReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/anydoc.ListRes"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/document/task": {
            "post": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "get task info",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.TaskReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/definitions/topic.TaskMeta"
                                            }
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/document/url/export": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "export url document",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.URLExportReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "string"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/document/url/list": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "list url documents",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.URLListReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/anydoc.ListRes"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}": {
            "put": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "knowledge_base"
                ],
                "summary": "update kb",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.KBUpdateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            },
            "delete": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "knowledge_base"
                ],
                "summary": "delete kb",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/document": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "list kb document",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "enum": [
                            0,
                            1,
                            2,
                            3,
                            4,
                            5,
                            6,
                            7,
                            8,
                            9,
                            10,
                            11,
                            12,
                            13,
                            14,
                            15,
                            16,
                            17,
                            18
                        ],
                        "type": "integer",
                        "x-enum-comments": {
                            "FileTypeFile": "未知文件类型",
                            "FileTypeFolder": "文件夹"
                        },
                        "x-enum-descriptions": [
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "文件夹",
                            "未知文件类型",
                            ""
                        ],
                        "x-enum-varnames": [
                            "FileTypeUnknown",
                            "FileTypeMarkdown",
                            "FileTypeHTML",
                            "FileTypeJSON",
                            "FileTypeURL",
                            "FileTypeDOCX",
                            "FileTypeDOC",
                            "FileTypePPTX",
                            "FileTypeXLSX",
                            "FileTypeXLS",
                            "FileTypePDF",
                            "FileTypeImage",
                            "FileTypeCSV",
                            "FileTypeXML",
                            "FileTypeZIP",
                            "FileTypeEPub",
                            "FileTypeFolder",
                            "FileTypeFile",
                            "FileTypeMax"
                        ],
                        "name": "file_type",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "size",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "name": "title",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/svc.DocListItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/document/{doc_id}": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "get kb document detail",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "doc_id",
                        "name": "doc_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/model.KBDocumentDetail"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "delete": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "document"
                ],
                "summary": "delete kb document",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "doc_id",
                        "name": "doc_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/question": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "question"
                ],
                "summary": "list kb question",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "enum": [
                            0,
                            1,
                            2,
                            3,
                            4,
                            5,
                            6,
                            7,
                            8,
                            9,
                            10,
                            11,
                            12,
                            13,
                            14,
                            15,
                            16,
                            17,
                            18
                        ],
                        "type": "integer",
                        "x-enum-comments": {
                            "FileTypeFile": "未知文件类型",
                            "FileTypeFolder": "文件夹"
                        },
                        "x-enum-descriptions": [
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "文件夹",
                            "未知文件类型",
                            ""
                        ],
                        "x-enum-varnames": [
                            "FileTypeUnknown",
                            "FileTypeMarkdown",
                            "FileTypeHTML",
                            "FileTypeJSON",
                            "FileTypeURL",
                            "FileTypeDOCX",
                            "FileTypeDOC",
                            "FileTypePPTX",
                            "FileTypeXLSX",
                            "FileTypeXLS",
                            "FileTypePDF",
                            "FileTypeImage",
                            "FileTypeCSV",
                            "FileTypeXML",
                            "FileTypeZIP",
                            "FileTypeEPub",
                            "FileTypeFolder",
                            "FileTypeFile",
                            "FileTypeMax"
                        ],
                        "name": "file_type",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "size",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "name": "title",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/svc.DocListItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "question"
                ],
                "summary": "create kb question",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.DocCreateQAReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "integer"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/question/file": {
            "post": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "question"
                ],
                "summary": "upload kb question assets",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "file",
                        "description": "upload file",
                        "name": "file",
                        "in": "formData",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/question/{qa_id}": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "question"
                ],
                "summary": "kb question detail",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "qa_id",
                        "name": "qa_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/model.KBDocumentDetail"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "question"
                ],
                "summary": "update kb question",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "qa_id",
                        "name": "qa_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.DocUpdateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            },
            "delete": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "question"
                ],
                "summary": "delete kb question",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "qa_id",
                        "name": "qa_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/question/{qa_id}/review": {
            "post": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "question"
                ],
                "summary": "review kb question",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "qa_id",
                        "name": "qa_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.ReviewReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/space": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "list kb space",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/svc.ListSpaceItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "create kb space",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "request param",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.CreateSpaceReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "integer"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/space/{space_id}": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "get kb space detail",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/svc.GetSpaceRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "platform_opt": {
                                                            "$ref": "#/definitions/model.PlatformOpt"
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "update kb space",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "request param",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.UpdateSpaceReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            },
            "delete": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "delete kb space",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/space/{space_id}/folder": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "list kb space folder",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/svc.ListSpaceFolderItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "create kb space folder",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "req param",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.CreateSpaceFolderReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/space/{space_id}/folder/{folder_id}": {
            "put": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "update kb space folder",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "folder_id",
                        "name": "folder_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            },
            "delete": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "delete kb space folder",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "folder_id",
                        "name": "folder_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/space/{space_id}/refresh": {
            "put": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "update kb space all folder",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/space/{space_id}/remote": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "space"
                ],
                "summary": "list kb space remote doc",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "space_id",
                        "name": "space_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "name": "remote_folder_id",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/svc.ListSpaceKBItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/web": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "web"
                ],
                "summary": "list kb web",
                "parameters": [
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "size",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "name": "title",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/svc.ListWebItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/kb/{kb_id}/web/{doc_id}": {
            "put": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "web"
                ],
                "summary": "update kb web",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "doc_id",
                        "name": "doc_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "string"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "delete": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "web"
                ],
                "summary": "delete kb web",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "kb_id",
                        "name": "kb_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "doc_id",
                        "name": "doc_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/llm/polish": {
            "post": {
                "description": "polish text",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "llm"
                ],
                "summary": "polish text",
                "parameters": [
                    {
                        "description": "polish text",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.PolishReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "polish text",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/admin/model": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "modelkit"
                ],
                "summary": "create model",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.MKCreateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "integer"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/model/check": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "modelkit"
                ],
                "summary": "check model",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.ModelKitCheckReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/svc.CheckModelRes"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/model/list": {
            "get": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "modelkit"
                ],
                "summary": "list model",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/definitions/model.LLM"
                                            }
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/model/provider/supported": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "modelkit"
                ],
                "summary": "list model provider supported",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.MKSupportedReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/svc.MKSupportedRes"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/model/{id}": {
            "put": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "modelkit"
                ],
                "summary": "update model",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.MKUpdateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "object"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/system/login_method": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "login_method"
                ],
                "summary": "login_method detail",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/model.Auth"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "login_method"
                ],
                "summary": "update login_method config",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/model.Auth"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/system/public_address": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "public_address"
                ],
                "summary": "public_address detail",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/model.PublicAddress"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "public_address"
                ],
                "summary": "update public_address config",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/model.PublicAddress"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/system/webhook": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "webhook"
                ],
                "summary": "list webhook",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/model.Webhook"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "webhook"
                ],
                "summary": "create webhook",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.WebhookCreateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "integer"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/system/webhook/{webhook_id}": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "webhook"
                ],
                "summary": "webhook detail",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "wenhook id",
                        "name": "webhook_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/model.WebhookConfig"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "webhook"
                ],
                "summary": "update webhook config",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "wenhook id",
                        "name": "webhook_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.WebhookUpdateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            },
            "delete": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "webhook"
                ],
                "summary": "delete webhook",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "wenhook id",
                        "name": "webhook_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/admin/user": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "list user",
                "parameters": [
                    {
                        "type": "string",
                        "name": "name",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "size",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/svc.UserListItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/admin/user/{user_id}": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "user detail",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "user id",
                        "name": "user_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/svc.UserListItem"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "update user",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "user id",
                        "name": "user_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.UserUpdateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            },
            "delete": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "delete user",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "user id",
                        "name": "user_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/csrf": {
            "get": {
                "description": "get csrf",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "csrf"
                ],
                "summary": "get csrf",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "string"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/discussion": {
            "get": {
                "description": "list discussions",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "list discussions",
                "parameters": [
                    {
                        "enum": [
                            "hot",
                            "new",
                            "mine"
                        ],
                        "type": "string",
                        "x-enum-varnames": [
                            "DiscussionListFilterHot",
                            "DiscussionListFilterNew",
                            "DiscussionListFilterMine"
                        ],
                        "name": "filter",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "collectionFormat": "csv",
                        "name": "group_ids",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "name": "keyword",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "minimum": 1,
                        "type": "integer",
                        "name": "size",
                        "in": "query"
                    },
                    {
                        "enum": [
                            "qa",
                            "feedback",
                            "blog"
                        ],
                        "type": "string",
                        "x-enum-varnames": [
                            "DiscussionTypeQA",
                            "DiscussionTypeFeedback",
                            "DiscussionTypeBlog"
                        ],
                        "name": "type",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/definitions/model.DiscussionListItem"
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "post": {
                "description": "create discussion",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "create discussion",
                "parameters": [
                    {
                        "description": "discussion",
                        "name": "discussion",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.DiscussionCreateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "string"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/discussion/search": {
            "post": {
                "description": "search discussion",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "search discussion",
                "parameters": [
                    {
                        "description": "discussion",
                        "name": "discussion",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.DiscussionSearchReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/definitions/model.Discussion"
                                            }
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/discussion/upload": {
            "post": {
                "description": "discussion upload file",
                "consumes": [
                    "multipart/formdata"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "discussion upload file",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.DiscussUploadFileReq"
                        }
                    },
                    {
                        "type": "file",
                        "description": "upload file",
                        "name": "file",
                        "in": "formData",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/discussion/{disc_id}": {
            "get": {
                "description": "detail discussion",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "detail discussion",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/model.DiscussionDetail"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "description": "update discussion",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "update discussion",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "discussion",
                        "name": "discussion",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.DiscussionUpdateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {}
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "delete": {
                "description": "delete discussion",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "delete discussion",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {}
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/discussion/{disc_id}/comment": {
            "post": {
                "description": "create comment",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "create comment",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "comment",
                        "name": "comment",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.CommentCreateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "integer"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/discussion/{disc_id}/comment/{comment_id}": {
            "put": {
                "description": "update comment",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "update comment",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "number",
                        "description": "comment_id",
                        "name": "comment_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "comment",
                        "name": "comment",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.CommentUpdateReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {}
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "delete": {
                "description": "delete comment",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "delete comment",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "comment_id",
                        "name": "comment_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {}
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/discussion/{disc_id}/comment/{comment_id}/accept": {
            "post": {
                "description": "accept comment",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "accept comment",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "comment_id",
                        "name": "comment_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {}
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/discussion/{disc_id}/comment/{comment_id}/dislike": {
            "post": {
                "description": "dislike comment",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "dislike comment",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "comment_id",
                        "name": "comment_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/discussion/{disc_id}/comment/{comment_id}/like": {
            "post": {
                "description": "like comment",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "like comment",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "comment_id",
                        "name": "comment_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/discussion/{disc_id}/comment/{comment_id}/revoke_like": {
            "post": {
                "description": "revoke comment like",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "discussion"
                ],
                "summary": "revoke comment like",
                "parameters": [
                    {
                        "type": "string",
                        "description": "disc_id",
                        "name": "disc_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "comment_id",
                        "name": "comment_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/group": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "group_frontend"
                ],
                "summary": "frontend list group",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/definitions/model.ListRes"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "items": {
                                                            "type": "array",
                                                            "items": {
                                                                "allOf": [
                                                                    {
                                                                        "$ref": "#/definitions/model.GroupWithItem"
                                                                    },
                                                                    {
                                                                        "type": "object",
                                                                        "properties": {
                                                                            "items": {
                                                                                "type": "array",
                                                                                "items": {
                                                                                    "$ref": "#/definitions/model.GroupItemInfo"
                                                                                }
                                                                            }
                                                                        }
                                                                    }
                                                                ]
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/user": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "user detail",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/model.UserInfo"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "put": {
                "consumes": [
                    "multipart/form-data"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "update user",
                "parameters": [
                    {
                        "type": "file",
                        "description": "avatar",
                        "name": "avatar",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "name": "name",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "name": "old_password",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "name": "password",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/user/login": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "user login",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.UserLoginReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "string"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/user/login/third": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "get user third login url",
                "parameters": [
                    {
                        "type": "integer",
                        "name": "type",
                        "in": "query",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "string"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/user/login_method": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "login_method detail",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "allOf": [
                                {
                                    "$ref": "#/definitions/context.Response"
                                },
                                {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/definitions/svc.AuthFrontendGetRes"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                }
            }
        },
        "/user/logout": {
            "post": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "user logout",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        },
        "/user/register": {
            "post": {
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user"
                ],
                "summary": "register user",
                "parameters": [
                    {
                        "description": "request params",
                        "name": "req",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/svc.UserRegisterReq"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/context.Response"
                        }
                    }
                }
            }
        }
    },
    "definitions": {
        "anydoc.ListDoc": {
            "type": "object",
            "properties": {
                "file_type": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "summary": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "anydoc.ListRes": {
            "type": "object",
            "properties": {
                "docs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/anydoc.ListDoc"
                    }
                },
                "uuid": {
                    "type": "string"
                }
            }
        },
        "context.Response": {
            "type": "object",
            "properties": {
                "data": {},
                "err": {
                    "type": "string"
                },
                "msg": {
                    "type": "string"
                },
                "success": {
                    "type": "boolean"
                },
                "trace_id": {
                    "type": "string"
                }
            }
        },
        "model.Auth": {
            "type": "object",
            "properties": {
                "auth_infos": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/model.AuthInfo"
                    }
                },
                "enable_register": {
                    "type": "boolean"
                },
                "public_access": {
                    "type": "boolean"
                }
            }
        },
        "model.AuthConfig": {
            "type": "object",
            "properties": {
                "oauth": {
                    "$ref": "#/definitions/model.AuthConfigOauth"
                }
            }
        },
        "model.AuthConfigOauth": {
            "type": "object",
            "properties": {
                "client_id": {
                    "type": "string"
                },
                "client_secret": {
                    "type": "string"
                },
                "url": {
                    "type": "string"
                }
            }
        },
        "model.AuthInfo": {
            "type": "object",
            "properties": {
                "button_desc": {
                    "type": "string"
                },
                "config": {
                    "$ref": "#/definitions/model.AuthConfig"
                },
                "type": {
                    "type": "integer",
                    "maximum": 2,
                    "minimum": 1
                }
            }
        },
        "model.CommentLikeState": {
            "type": "integer",
            "enum": [
                1,
                2
            ],
            "x-enum-varnames": [
                "CommentLikeStateLike",
                "CommentLikeStateDislike"
            ]
        },
        "model.Discussion": {
            "type": "object",
            "properties": {
                "comment": {
                    "type": "integer"
                },
                "content": {
                    "type": "string"
                },
                "created_at": {
                    "type": "integer"
                },
                "dislike": {
                    "type": "integer"
                },
                "group_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "id": {
                    "type": "integer"
                },
                "like": {
                    "type": "integer"
                },
                "rag_id": {
                    "type": "string"
                },
                "resolved": {
                    "type": "boolean"
                },
                "resolved_at": {
                    "type": "integer"
                },
                "summary": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "title": {
                    "type": "string"
                },
                "type": {
                    "$ref": "#/definitions/model.DiscussionType"
                },
                "updated_at": {
                    "type": "integer"
                },
                "user_id": {
                    "type": "integer"
                },
                "uuid": {
                    "type": "string"
                },
                "view": {
                    "type": "integer"
                }
            }
        },
        "model.DiscussionComment": {
            "type": "object",
            "properties": {
                "accepted": {
                    "type": "boolean"
                },
                "content": {
                    "type": "string"
                },
                "dislike": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "like": {
                    "type": "integer"
                },
                "replies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/model.DiscussionReply"
                    }
                },
                "updated_at": {
                    "type": "integer"
                },
                "user_avatar": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_like_state": {
                    "$ref": "#/definitions/model.CommentLikeState"
                },
                "user_name": {
                    "type": "string"
                }
            }
        },
        "model.DiscussionDetail": {
            "type": "object",
            "properties": {
                "comment": {
                    "type": "integer"
                },
                "comments": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/model.DiscussionComment"
                    }
                },
                "content": {
                    "type": "string"
                },
                "created_at": {
                    "type": "integer"
                },
                "current_user_id": {
                    "type": "integer"
                },
                "dislike": {
                    "type": "integer"
                },
                "group_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "groups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/model.DiscussionGroup"
                    }
                },
                "id": {
                    "type": "integer"
                },
                "like": {
                    "type": "integer"
                },
                "rag_id": {
                    "type": "string"
                },
                "resolved": {
                    "type": "boolean"
                },
                "resolved_at": {
                    "type": "integer"
                },
                "summary": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "title": {
                    "type": "string"
                },
                "type": {
                    "$ref": "#/definitions/model.DiscussionType"
                },
                "updated_at": {
                    "type": "integer"
                },
                "user_avatar": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_name": {
                    "type": "string"
                },
                "uuid": {
                    "type": "string"
                },
                "view": {
                    "type": "integer"
                }
            }
        },
        "model.DiscussionGroup": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "model.DiscussionListItem": {
            "type": "object",
            "properties": {
                "comment": {
                    "type": "integer"
                },
                "content": {
                    "type": "string"
                },
                "created_at": {
                    "type": "integer"
                },
                "dislike": {
                    "type": "integer"
                },
                "group_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "id": {
                    "type": "integer"
                },
                "like": {
                    "type": "integer"
                },
                "rag_id": {
                    "type": "string"
                },
                "resolved": {
                    "type": "boolean"
                },
                "resolved_at": {
                    "type": "integer"
                },
                "summary": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "title": {
                    "type": "string"
                },
                "type": {
                    "$ref": "#/definitions/model.DiscussionType"
                },
                "updated_at": {
                    "type": "integer"
                },
                "user_avatar": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_name": {
                    "type": "string"
                },
                "uuid": {
                    "type": "string"
                },
                "view": {
                    "type": "integer"
                }
            }
        },
        "model.DiscussionReply": {
            "type": "object",
            "properties": {
                "accepted": {
                    "type": "boolean"
                },
                "content": {
                    "type": "string"
                },
                "dislike": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "like": {
                    "type": "integer"
                },
                "updated_at": {
                    "type": "integer"
                },
                "user_avatar": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_like_state": {
                    "$ref": "#/definitions/model.CommentLikeState"
                },
                "user_name": {
                    "type": "string"
                }
            }
        },
        "model.DiscussionType": {
            "type": "string",
            "enum": [
                "qa",
                "feedback",
                "blog"
            ],
            "x-enum-varnames": [
                "DiscussionTypeQA",
                "DiscussionTypeFeedback",
                "DiscussionTypeBlog"
            ]
        },
        "model.DocStatus": {
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3
            ],
            "x-enum-varnames": [
                "DocStatusUnknown",
                "DocStatusAppling",
                "DocStatusPendingReview",
                "DocStatusPendingApply"
            ]
        },
        "model.DocType": {
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3,
                4
            ],
            "x-enum-varnames": [
                "DocTypeUnknown",
                "DocTypeQuestion",
                "DocTypeDocument",
                "DocTypeSpace",
                "DocTypeWeb"
            ]
        },
        "model.ExportOpt": {
            "type": "object",
            "properties": {
                "file_type": {
                    "type": "string"
                },
                "space_id": {
                    "type": "string"
                }
            }
        },
        "model.FileType": {
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3,
                4,
                5,
                6,
                7,
                8,
                9,
                10,
                11,
                12,
                13,
                14,
                15,
                16,
                17,
                18
            ],
            "x-enum-comments": {
                "FileTypeFile": "未知文件类型",
                "FileTypeFolder": "文件夹"
            },
            "x-enum-descriptions": [
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "",
                "文件夹",
                "未知文件类型",
                ""
            ],
            "x-enum-varnames": [
                "FileTypeUnknown",
                "FileTypeMarkdown",
                "FileTypeHTML",
                "FileTypeJSON",
                "FileTypeURL",
                "FileTypeDOCX",
                "FileTypeDOC",
                "FileTypePPTX",
                "FileTypeXLSX",
                "FileTypeXLS",
                "FileTypePDF",
                "FileTypeImage",
                "FileTypeCSV",
                "FileTypeXML",
                "FileTypeZIP",
                "FileTypeEPub",
                "FileTypeFolder",
                "FileTypeFile",
                "FileTypeMax"
            ]
        },
        "model.GroupItemInfo": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "integer"
                },
                "index": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "model.GroupWithItem": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "integer"
                },
                "index": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "model.JSONB-model_ExportOpt": {
            "type": "object"
        },
        "model.JSONB-model_PlatformOpt": {
            "type": "object"
        },
        "model.KBDocumentDetail": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "integer"
                },
                "desc": {
                    "type": "string"
                },
                "doc_id": {
                    "type": "string"
                },
                "doc_type": {
                    "$ref": "#/definitions/model.DocType"
                },
                "export_opt": {
                    "$ref": "#/definitions/model.JSONB-model_ExportOpt"
                },
                "file_type": {
                    "$ref": "#/definitions/model.FileType"
                },
                "id": {
                    "type": "integer"
                },
                "json": {
                    "type": "string"
                },
                "kb_id": {
                    "type": "integer"
                },
                "markdown": {
                    "type": "string"
                },
                "parent_id": {
                    "type": "integer"
                },
                "platform": {
                    "$ref": "#/definitions/platform.PlatformType"
                },
                "platform_opt": {
                    "$ref": "#/definitions/model.JSONB-model_PlatformOpt"
                },
                "rag_id": {
                    "type": "string"
                },
                "similar_id": {
                    "type": "integer"
                },
                "status": {
                    "$ref": "#/definitions/model.DocStatus"
                },
                "title": {
                    "type": "string"
                },
                "updated_at": {
                    "type": "integer"
                }
            }
        },
        "model.LLM": {
            "type": "object",
            "properties": {
                "api_header": {
                    "type": "string"
                },
                "api_key": {
                    "type": "string"
                },
                "api_version": {
                    "type": "string"
                },
                "base_url": {
                    "type": "string"
                },
                "completion_tokens": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "is_active": {
                    "type": "boolean"
                },
                "model": {
                    "type": "string"
                },
                "parameters": {
                    "$ref": "#/definitions/model.LLMModelParam"
                },
                "prompt_tokens": {
                    "type": "integer"
                },
                "provider": {
                    "type": "string"
                },
                "rag_id": {
                    "type": "string"
                },
                "show_name": {
                    "type": "string"
                },
                "total_tokens": {
                    "type": "integer"
                },
                "type": {
                    "$ref": "#/definitions/model.LLMType"
                },
                "updated_at": {
                    "type": "integer"
                }
            }
        },
        "model.LLMModelParam": {
            "type": "object",
            "properties": {
                "context_window": {
                    "type": "integer"
                },
                "max_tokens": {
                    "type": "integer"
                },
                "r1_enabled": {
                    "type": "boolean"
                },
                "support_computer_use": {
                    "type": "boolean"
                },
                "support_images": {
                    "type": "boolean"
                },
                "support_prompt_cache": {
                    "type": "boolean"
                }
            }
        },
        "model.LLMType": {
            "type": "string",
            "enum": [
                "chat",
                "embedding",
                "rerank"
            ],
            "x-enum-varnames": [
                "LLMTypeChat",
                "LLMTypeEmbedding",
                "LLMTypeRerank"
            ]
        },
        "model.ListRes": {
            "type": "object",
            "properties": {
                "total": {
                    "type": "integer"
                }
            }
        },
        "model.PlatformOpt": {
            "type": "object",
            "properties": {
                "access_token": {
                    "type": "string"
                },
                "app_id": {
                    "type": "string"
                },
                "secret": {
                    "type": "string"
                },
                "url": {
                    "type": "string"
                }
            }
        },
        "model.PublicAddress": {
            "type": "object",
            "required": [
                "address"
            ],
            "properties": {
                "address": {
                    "type": "string"
                }
            }
        },
        "model.UserInfo": {
            "type": "object",
            "properties": {
                "avatar": {
                    "type": "string"
                },
                "builtin": {
                    "type": "boolean"
                },
                "email": {
                    "type": "string"
                },
                "key": {
                    "type": "string"
                },
                "role": {
                    "$ref": "#/definitions/model.UserRole"
                },
                "uid": {
                    "type": "integer"
                },
                "username": {
                    "type": "string"
                }
            }
        },
        "model.UserRole": {
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3,
                4
            ],
            "x-enum-varnames": [
                "UserRoleUnknown",
                "UserRoleAdmin",
                "UserRoleOperator",
                "UserRoleUser",
                "UserRoleMax"
            ]
        },
        "model.Webhook": {
            "type": "object",
            "required": [
                "type",
                "url"
            ],
            "properties": {
                "created_at": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "msg_types": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "name": {
                    "type": "string"
                },
                "sign": {
                    "type": "string"
                },
                "type": {
                    "type": "integer",
                    "maximum": 1,
                    "minimum": 1
                },
                "updated_at": {
                    "type": "integer"
                },
                "url": {
                    "type": "string"
                }
            }
        },
        "model.WebhookConfig": {
            "type": "object",
            "required": [
                "type",
                "url"
            ],
            "properties": {
                "msg_types": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "sign": {
                    "type": "string"
                },
                "type": {
                    "type": "integer",
                    "maximum": 1,
                    "minimum": 1
                },
                "url": {
                    "type": "string"
                }
            }
        },
        "platform.PlatformType": {
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3,
                4,
                5,
                6,
                7,
                8,
                9
            ],
            "x-enum-varnames": [
                "PlatformUnknown",
                "PlatformConfluence",
                "PlatformFeishu",
                "PlatformFile",
                "PlatformNotion",
                "PlatformSitemap",
                "PlatformURL",
                "PlatformWikiJS",
                "PlatformYuQue",
                "PlatformPandawiki"
            ]
        },
        "svc.AuthFrontendGetAuth": {
            "type": "object",
            "properties": {
                "button_desc": {
                    "type": "string"
                },
                "type": {
                    "type": "integer"
                }
            }
        },
        "svc.AuthFrontendGetRes": {
            "type": "object",
            "properties": {
                "auth_types": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/svc.AuthFrontendGetAuth"
                    }
                },
                "enable_register": {
                    "type": "boolean"
                },
                "public_access": {
                    "type": "boolean"
                }
            }
        },
        "svc.BotGetRes": {
            "type": "object",
            "properties": {
                "avatar": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "unknown_prompt": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "svc.CheckModelRes": {
            "type": "object",
            "properties": {
                "content": {
                    "type": "string"
                },
                "error": {
                    "type": "string"
                }
            }
        },
        "svc.CommentCreateReq": {
            "type": "object",
            "required": [
                "content"
            ],
            "properties": {
                "comment_id": {
                    "type": "integer"
                },
                "content": {
                    "type": "string"
                }
            }
        },
        "svc.CommentUpdateReq": {
            "type": "object",
            "required": [
                "content"
            ],
            "properties": {
                "content": {
                    "type": "string"
                }
            }
        },
        "svc.CreateSpaceFolderReq": {
            "type": "object",
            "required": [
                "docs"
            ],
            "properties": {
                "docs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/svc.CreateSpaceForlderItem"
                    }
                }
            }
        },
        "svc.CreateSpaceForlderItem": {
            "type": "object",
            "required": [
                "doc_id"
            ],
            "properties": {
                "doc_id": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "svc.CreateSpaceReq": {
            "type": "object",
            "required": [
                "title"
            ],
            "properties": {
                "opt": {
                    "$ref": "#/definitions/model.PlatformOpt"
                },
                "platform": {
                    "$ref": "#/definitions/platform.PlatformType"
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "svc.DiscussUploadFileReq": {
            "type": "object",
            "properties": {
                "uuid": {
                    "type": "string"
                }
            }
        },
        "svc.DiscussionCreateReq": {
            "type": "object",
            "required": [
                "title"
            ],
            "properties": {
                "content": {
                    "type": "string"
                },
                "group_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "title": {
                    "type": "string"
                },
                "type": {
                    "$ref": "#/definitions/model.DiscussionType"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "svc.DiscussionListFilter": {
            "type": "string",
            "enum": [
                "hot",
                "new",
                "mine"
            ],
            "x-enum-varnames": [
                "DiscussionListFilterHot",
                "DiscussionListFilterNew",
                "DiscussionListFilterMine"
            ]
        },
        "svc.DiscussionSearchReq": {
            "type": "object",
            "properties": {
                "keyword": {
                    "type": "string"
                }
            }
        },
        "svc.DiscussionUpdateReq": {
            "type": "object",
            "required": [
                "title"
            ],
            "properties": {
                "content": {
                    "type": "string"
                },
                "group_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "svc.DocCreateQAReq": {
            "type": "object",
            "required": [
                "markdown",
                "title"
            ],
            "properties": {
                "desc": {
                    "type": "string"
                },
                "markdown": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "svc.DocListItem": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "integer"
                },
                "desc": {
                    "type": "string"
                },
                "file_type": {
                    "$ref": "#/definitions/model.FileType"
                },
                "id": {
                    "type": "integer"
                },
                "platform": {
                    "$ref": "#/definitions/platform.PlatformType"
                },
                "similar_id": {
                    "type": "integer"
                },
                "status": {
                    "$ref": "#/definitions/model.DocStatus"
                },
                "title": {
                    "type": "string"
                },
                "updated_at": {
                    "type": "integer"
                }
            }
        },
        "svc.DocUpdateReq": {
            "type": "object",
            "required": [
                "title"
            ],
            "properties": {
                "desc": {
                    "type": "string"
                },
                "markdown": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "svc.FileExportReq": {
            "type": "object",
            "required": [
                "doc_id",
                "kb_id",
                "title",
                "uuid"
            ],
            "properties": {
                "desc": {
                    "type": "string"
                },
                "doc_id": {
                    "type": "string"
                },
                "kb_id": {
                    "type": "integer"
                },
                "title": {
                    "type": "string"
                },
                "uuid": {
                    "type": "string"
                }
            }
        },
        "svc.GetSpaceRes": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "platform": {
                    "$ref": "#/definitions/platform.PlatformType"
                },
                "title": {
                    "type": "string"
                },
                "updated_at": {
                    "type": "integer"
                }
            }
        },
        "svc.GroupUpdateReq": {
            "type": "object",
            "properties": {
                "groups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/model.GroupWithItem"
                    }
                }
            }
        },
        "svc.KBCreateReq": {
            "type": "object",
            "required": [
                "name"
            ],
            "properties": {
                "desc": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "svc.KBListItem": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "integer"
                },
                "desc": {
                    "type": "string"
                },
                "doc_count": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "qa_count": {
                    "type": "integer"
                },
                "space_count": {
                    "type": "integer"
                },
                "updated_at": {
                    "type": "integer"
                },
                "web_count": {
                    "type": "integer"
                }
            }
        },
        "svc.KBUpdateReq": {
            "type": "object",
            "required": [
                "name"
            ],
            "properties": {
                "desc": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "svc.ListSpaceFolderItem": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "integer"
                },
                "doc_id": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "rag_id": {
                    "type": "string"
                },
                "status": {
                    "$ref": "#/definitions/model.DocStatus"
                },
                "title": {
                    "type": "string"
                },
                "total": {
                    "type": "integer"
                },
                "updated_at": {
                    "type": "integer"
                }
            }
        },
        "svc.ListSpaceItem": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "platform": {
                    "$ref": "#/definitions/platform.PlatformType"
                },
                "title": {
                    "type": "string"
                },
                "total": {
                    "type": "integer"
                },
                "updated_at": {
                    "type": "integer"
                }
            }
        },
        "svc.ListSpaceKBItem": {
            "type": "object",
            "properties": {
                "desc": {
                    "type": "string"
                },
                "doc_id": {
                    "type": "string"
                },
                "file_type": {
                    "$ref": "#/definitions/model.FileType"
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "svc.ListWebItem": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "integer"
                },
                "desc": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "status": {
                    "$ref": "#/definitions/model.DocStatus"
                },
                "title": {
                    "type": "string"
                },
                "updated_at": {
                    "type": "integer"
                }
            }
        },
        "svc.MKCreateReq": {
            "type": "object",
            "required": [
                "base_url",
                "model",
                "provider",
                "type"
            ],
            "properties": {
                "api_header": {
                    "type": "string"
                },
                "api_key": {
                    "type": "string"
                },
                "api_version": {
                    "description": "for azure openai",
                    "type": "string"
                },
                "base_url": {
                    "type": "string"
                },
                "model": {
                    "type": "string"
                },
                "param": {
                    "$ref": "#/definitions/model.LLMModelParam"
                },
                "provider": {
                    "type": "string"
                },
                "show_name": {
                    "type": "string"
                },
                "type": {
                    "enum": [
                        "chat",
                        "embedding",
                        "rerank"
                    ],
                    "allOf": [
                        {
                            "$ref": "#/definitions/model.LLMType"
                        }
                    ]
                }
            }
        },
        "svc.MKModelItem": {
            "type": "object",
            "properties": {
                "model": {
                    "type": "string"
                }
            }
        },
        "svc.MKSupportedReq": {
            "type": "object",
            "required": [
                "base_url",
                "provider",
                "type"
            ],
            "properties": {
                "api_header": {
                    "type": "string"
                },
                "api_key": {
                    "type": "string"
                },
                "base_url": {
                    "type": "string"
                },
                "provider": {
                    "type": "string"
                },
                "type": {
                    "enum": [
                        "chat",
                        "embedding",
                        "rerank"
                    ],
                    "allOf": [
                        {
                            "$ref": "#/definitions/model.LLMType"
                        }
                    ]
                }
            }
        },
        "svc.MKSupportedRes": {
            "type": "object",
            "properties": {
                "error": {
                    "type": "string"
                },
                "models": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/svc.MKModelItem"
                    }
                }
            }
        },
        "svc.MKUpdateReq": {
            "type": "object",
            "required": [
                "base_url",
                "model",
                "provider",
                "type"
            ],
            "properties": {
                "api_header": {
                    "type": "string"
                },
                "api_key": {
                    "type": "string"
                },
                "api_version": {
                    "description": "for azure openai",
                    "type": "string"
                },
                "base_url": {
                    "type": "string"
                },
                "model": {
                    "type": "string"
                },
                "param": {
                    "$ref": "#/definitions/model.LLMModelParam"
                },
                "provider": {
                    "type": "string"
                },
                "show_name": {
                    "type": "string"
                },
                "type": {
                    "enum": [
                        "chat",
                        "embedding",
                        "rerank"
                    ],
                    "allOf": [
                        {
                            "$ref": "#/definitions/model.LLMType"
                        }
                    ]
                }
            }
        },
        "svc.ModelKitCheckReq": {
            "type": "object",
            "required": [
                "base_url",
                "model",
                "provider",
                "type"
            ],
            "properties": {
                "api_header": {
                    "type": "string"
                },
                "api_key": {
                    "type": "string"
                },
                "api_version": {
                    "description": "for azure openai",
                    "type": "string"
                },
                "base_url": {
                    "type": "string"
                },
                "model": {
                    "type": "string"
                },
                "provider": {
                    "type": "string"
                },
                "show_name": {
                    "type": "string"
                },
                "type": {
                    "enum": [
                        "chat",
                        "embedding",
                        "rerank"
                    ],
                    "allOf": [
                        {
                            "$ref": "#/definitions/model.LLMType"
                        }
                    ]
                }
            }
        },
        "svc.PolishReq": {
            "type": "object",
            "properties": {
                "text": {
                    "type": "string"
                }
            }
        },
        "svc.ReviewReq": {
            "type": "object",
            "required": [
                "add_new",
                "content"
            ],
            "properties": {
                "add_new": {
                    "type": "boolean"
                },
                "content": {
                    "type": "string"
                }
            }
        },
        "svc.SitemapExportReq": {
            "type": "object",
            "required": [
                "doc_id",
                "kb_id",
                "title",
                "uuid"
            ],
            "properties": {
                "desc": {
                    "type": "string"
                },
                "doc_id": {
                    "type": "string"
                },
                "kb_id": {
                    "type": "integer"
                },
                "title": {
                    "type": "string"
                },
                "uuid": {
                    "type": "string"
                }
            }
        },
        "svc.SitemapListReq": {
            "type": "object",
            "required": [
                "url"
            ],
            "properties": {
                "url": {
                    "type": "string"
                }
            }
        },
        "svc.TaskReq": {
            "type": "object",
            "required": [
                "ids"
            ],
            "properties": {
                "ids": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            }
        },
        "svc.URLExportReq": {
            "type": "object",
            "required": [
                "doc_id",
                "kb_id",
                "title",
                "uuid"
            ],
            "properties": {
                "desc": {
                    "type": "string"
                },
                "doc_id": {
                    "type": "string"
                },
                "kb_id": {
                    "type": "integer"
                },
                "title": {
                    "type": "string"
                },
                "uuid": {
                    "type": "string"
                }
            }
        },
        "svc.URLListReq": {
            "type": "object",
            "required": [
                "url"
            ],
            "properties": {
                "url": {
                    "type": "string"
                }
            }
        },
        "svc.UpdateSpaceReq": {
            "type": "object",
            "properties": {
                "opt": {
                    "$ref": "#/definitions/model.PlatformOpt"
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "svc.UserListItem": {
            "type": "object",
            "properties": {
                "avatar": {
                    "type": "string"
                },
                "builtin": {
                    "type": "boolean"
                },
                "created_at": {
                    "type": "integer"
                },
                "email": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "last_login": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "role": {
                    "$ref": "#/definitions/model.UserRole"
                },
                "updated_at": {
                    "type": "integer"
                }
            }
        },
        "svc.UserLoginReq": {
            "type": "object",
            "required": [
                "email",
                "password"
            ],
            "properties": {
                "email": {
                    "type": "string"
                },
                "password": {
                    "type": "string"
                }
            }
        },
        "svc.UserRegisterReq": {
            "type": "object",
            "required": [
                "email",
                "name",
                "password"
            ],
            "properties": {
                "email": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "password": {
                    "type": "string"
                }
            }
        },
        "svc.UserUpdateReq": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                },
                "role": {
                    "maximum": 3,
                    "minimum": 1,
                    "allOf": [
                        {
                            "$ref": "#/definitions/model.UserRole"
                        }
                    ]
                }
            }
        },
        "svc.WebhookCreateReq": {
            "type": "object",
            "required": [
                "name",
                "type",
                "url"
            ],
            "properties": {
                "msg_types": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "name": {
                    "type": "string"
                },
                "sign": {
                    "type": "string"
                },
                "type": {
                    "type": "integer",
                    "maximum": 1,
                    "minimum": 1
                },
                "url": {
                    "type": "string"
                }
            }
        },
        "svc.WebhookUpdateReq": {
            "type": "object",
            "required": [
                "name",
                "type",
                "url"
            ],
            "properties": {
                "msg_types": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "name": {
                    "type": "string"
                },
                "sign": {
                    "type": "string"
                },
                "type": {
                    "type": "integer",
                    "maximum": 1,
                    "minimum": 1
                },
                "url": {
                    "type": "string"
                }
            }
        },
        "topic.TaskMeta": {
            "type": "object",
            "properties": {
                "access_token": {
                    "type": "string"
                },
                "app_id": {
                    "type": "string"
                },
                "dbdocID": {
                    "type": "integer"
                },
                "desc": {
                    "type": "string"
                },
                "docType": {
                    "$ref": "#/definitions/model.DocType"
                },
                "doc_id": {
                    "type": "string"
                },
                "doc_type": {
                    "$ref": "#/definitions/model.FileType"
                },
                "err": {
                    "type": "string"
                },
                "exportOpt": {
                    "$ref": "#/definitions/model.ExportOpt"
                },
                "kbid": {
                    "type": "integer"
                },
                "parentID": {
                    "type": "integer"
                },
                "platform": {
                    "$ref": "#/definitions/platform.PlatformType"
                },
                "platform_id": {
                    "type": "string"
                },
                "secret": {
                    "type": "string"
                },
                "status": {
                    "$ref": "#/definitions/topic.TaskStatus"
                },
                "task_id": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                },
                "url": {
                    "type": "string"
                }
            }
        },
        "topic.TaskStatus": {
            "type": "string",
            "enum": [
                "pending",
                "in_process",
                "completed",
                "failed",
                "timeout"
            ],
            "x-enum-varnames": [
                "TaskStatusPending",
                "TaskStatusInProgress",
                "TaskStatusCompleted",
                "TaskStatusFailed",
                "TaskStatusTimeout"
            ]
        }
    }
}`

// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = &swag.Spec{
	Version:          "2.0",
	Host:             "",
	BasePath:         "/api",
	Schemes:          []string{},
	Title:            "KoalaQA API",
	Description:      "KoalaQA API swagger document.",
	InfoInstanceName: "swagger",
	SwaggerTemplate:  docTemplate,
	LeftDelim:        "{{",
	RightDelim:       "}}",
}

func init() {
	swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
}
