ERROR HANDLING
先分清错误,再决定是否重试。
无限重试会放大故障和费用。客户端应按状态码分类,并记录请求时间、模型和请求 ID。
| 状态码 | 稳定错误码 | 处理建议 |
|---|---|---|
400 | invalid_request | 修正请求,不自动重试。 |
401 | invalid_api_key | 检查 Authorization,不记录完整密钥。 |
403 | access_denied | 检查密钥的模型、分组和出口 IP 限制。 |
429 | rate_limit_exceeded 或 insufficient_balance | 按错误码选择退避或补充余额。 |
500–504 | api_error / 上游错误码 | 有限次数退避重试,并保留请求 ID。 |
标准错误结构
{
"error": {
"message": "Invalid token (request id: ...)",
"type": "api_error",
"code": "invalid_api_key"
}
}提交支持信息
- 请求发生时间和时区。
- 模型 ID、HTTP 状态码和请求 ID。
- 是否流式、是否重试、影响范围。
- 不要发送完整 API Key、密码或提示词正文。