# 04-AI知识库系统_API接口设计文档.docx 《04-AI知识库系统 API 接口设计文档》 版本:V1.0 规范:RESTful API 数据格式:JSON 认证方式:JWT Token(Bearer) 字符集:UTF-8 ## 第一章 接口规范 ### 1.1 请求规范 Base URL https://api.xxx.com/api/v1 Header Content-Type: application/json Authorization: Bearer {token} 成功返回 { "code": 0, "message": "success", "data": {} } 失败返回 { "code": 40001, "message": "账号已禁用", "data": null } ## 第二章 用户认证接口 ### 2.1 发送短信验证码 POST /auth/sms/send Request { "phone":"13800138000" } Response { "code":0, "message":"发送成功" } 校验规则 手机号: 必填 中国大陆手机号 限制: 60 秒内不能重复发送 每日发送次数限制(后台可配置) ### 2.2 登录 POST /auth/login Request { "phone":"13800138000", "code":"123456" } Response { "code":0, "data":{ "token":"xxxxx", "expiredAt":"2026-08-01", "user":{ "id":1, "name":"张三" } } } 系统执行: 验证码校验 ↓ 首次登录? ↓ 自动创建用户 ↓ 账号状态 ↓ 账号有效期 ↓ 登录成功 ### 2.3 退出登录 POST /auth/logout Response { "code":0 } Token:立即失效。 ## 第三章 用户接口 ### 3.1 获取当前用户 GET /user/profile Response { "code":0, "data":{ "phone":"", "name":"", "nickname":"", "dailyLimit":100, "todayUsed":35 } } ### 3.2 修改会话标题 PUT /chat/session/title Request { "sessionId":1, "title":"直播运营技巧" } ### 3.3 删除会话 DELETE /chat/session/{id} 系统:is_deleted=1 ## 第四章 AI 对话接口 ### 4.1 创建会话 POST /chat/session Response { "code":0, "data":{ "sessionId":1001 } } ### 4.2 获取会话列表 GET /chat/session/list Response { "code":0, "data":[ { "id":1, "title":"直播运营", "updatedAt":"..." } ] } ### 4.3 获取聊天记录 GET /chat/history 参数:sessionId Response { "code":0, "data":[ { "role":"user", "content":"..." }, { "role":"assistant", "content":"..." } ] } ### 4.4 AI 问答(Streaming) POST /chat/completions Request { "sessionId":1, "message":"直播间没人怎么办?" } 处理流程: 次数校验 ↓ 账号校验 ↓ 权限校验 ↓ 飞书检索 ↓ Prompt ↓ 模型 ↓ Streaming Response text/event-stream Server Sent Events: data:你好 data:直播间 data:可以 ... 结束: data:[DONE] ### 4.5 停止生成 POST /chat/stop Request { "sessionId":1 } 系统:立即取消模型请求。 ## 第五章 管理员接口 ### 5.1 登录 POST /admin/login Request { "username":"admin", "password":"******" } ### 5.2 获取首页统计 GET /admin/dashboard 参数:today, week, custom Response { "totalUser":1200, "todayUser":35, "todayChat":560, "token":980000 } ## 第六章 用户管理接口 获取用户列表 GET /admin/user/list 参数:phone, name, status, page, size 获取用户详情 GET /admin/user/{id} 新增用户 POST /admin/user 修改用户 PUT /admin/user 删除用户 DELETE /admin/user/{id} 批量授权知识库 POST /admin/user/kb Request { "userIds":[1,2], "knowledgeIds":[3,5], "effectiveAt":"2026-01-01", "expiredAt":"2027-01-01" } 批量修改聊天次数 POST /admin/user/chat-limit 批量启用 POST /admin/user/enable 批量禁用 POST /admin/user/disable 批量删除 POST /admin/user/delete ## 第七章 知识库接口 GET /admin/knowledge/list POST /admin/knowledge PUT /admin/knowledge DELETE /admin/knowledge/{id} 字段:名称, SpaceID, NodeID, 状态, 备注 ## 第八章 Prompt 接口 获取:GET /admin/prompt 保存:PUT /admin/prompt 恢复默认:POST /admin/prompt/reset ## 第九章 模型接口 获取模型:GET /admin/model/list 新增模型:POST /admin/model 启用模型:POST /admin/model/enable 删除模型:DELETE /admin/model/{id} ## 第十章 系统配置接口 获取配置:GET /admin/config 修改配置:PUT /admin/config 包含: 登录有效期 每日聊天次数 AI 超时 飞书重试次数 上下文长度 是否显示引用来源 是否允许联网(一期固定关闭) ## 第十一章 操作日志接口 获取:GET /admin/log/list 查询条件:操作人, 模块, 类型, 时间范围 ## 第十二章 聊天记录接口 查询:GET /admin/chat/list 详情:GET /admin/chat/{id} 导出:POST /admin/chat/export 导出字段:用户, 手机号, 会话标题, 提问, AI 回答, 提问时间, 回复时间 ## 第十三章 错误码规范 《API 接口设计文档》第一版完成 这份文档定义了前后端联调所需的核心接口,包括: 登录认证 用户端接口 AI 对话(SSE 流式) 管理后台 用户管理 知识库管理 Prompt 管理 模型管理 系统配置 聊天记录 操作日志 错误码规范 ## Table 1 | Code | 含义 | | --- | --- | | 0 | 成功 | | 40001 | 账号禁用 | | 40002 | 账号已过期 | | 40003 | 验证码错误 | | 40004 | 验证码过期 | | 40005 | 登录失效 | | 40006 | 今日聊天次数已用完 | | 40007 | 无知识库权限 | | 50001 | 飞书接口异常 | | 50002 | AI 模型超时 | | 50003 | AI 服务异常 | | 50004 | 系统内部错误 |