API 错误与重试
按 HTTP 状态和业务错误码恢复 API 调用
API 响应结构固定为:
{"code": 0, "data": {}, "msg": "success"}失败时 code 为非零,data 可能为空;HTTP 状态仍应优先判断。
处理表
| HTTP/业务范围 | 处理方式 |
|---|---|
401、2000-2002 | 重新登录、刷新 JWT 或替换过期/无效 API Key |
403、3000-3004 | 检查权限、团队成员关系、管理员/所有者要求和 API Key 资源范围 |
404、4000-4005 | 确认资源 ID 和当前团队 |
400、1001-1004 | 修复 JSON、必填字段、类型或业务校验 |
5100-5214 | 不要自动重试;处理名称冲突、系统资源或所有权约束 |
5300-5316 | 按账户锁定、验证码、密码或 TOTP 提示操作 |
5400 | 退避并重试,降低并发 |
6000-6099 | 检查知识库、文档处理、分块和索引 |
6103/6104 | 检查模型配额和团队授权 |
6202 | 先发布 Agent |
6300-6306 | 检查 SSO 提供商、回调、审批和密码登录开关 |
可重试与不可重试
网络超时、供应商暂不可用、5400 限速和部分后台任务失败可以指数退避。请求校验、权限、资源不存在、API Key 过期、模型未授权和工作流定义错误不应盲目重试。
Agent SSE 收到 error 后保留已接收正文和 message_id;工作流 SSE 断线时使用 stream_url 和序号恢复,不要重复触发外部副作用。
这篇文章对你有帮助吗?