错误
本网关与管理 API 返回的全部状态码与错误体。
由上游供应商产生的错误,响应体就是供应商自己的格式。下表列出由本网关自身产生的错误。
网关
出现于平台前缀下(/openai/…、/anthropic/… 等)。响应体统一为
{ "error": "<message>" }。
| 状态码 | error | 原因 |
|---|---|---|
401 | missing bearer token | 请求未携带 safe-key |
401 | invalid key | safe-key 不存在 |
403 | key revoked | 密钥已被吊销 |
403 | key paused | 密钥已暂停 |
403 | this route serves <platform> keys, but the key belongs to <platform> | 密钥被用到了另一个平台的前缀 |
403 | pv quota fused | 该密钥的当日 PV 配额已用尽 |
429 | uv quota exceeded | 该密钥当日的不同访客数已用尽 |
429 | per-visitor quota exceeded | 单个访客用完了自己当天的调用次数 |
502 | missing upstream key | safe 密钥所存的上游密钥无法解密 |
502 | unsupported provider | 该密钥的平台没有对应适配器 |
mock 密钥还可能返回它所模拟平台自身的错误,见 Mock 行为。
管理 API
位于 /api/…,使用会话 Cookie 鉴权。响应体同样为 { "error": "<message>" }。
| 状态码 | 原因 |
|---|---|
400 | 请求体格式错误或字段非法,例如 name is required、mode must be 'safe' or 'mock' |
401 | Unauthorized —— 无有效会话 |
402 | 超出套餐权益:密钥数量上限、PV 配额上限,或在没有该权益的套餐上配置告警邮箱(FREE) |
403 | Forbidden —— 非管理员访问仅限运营的接口 |
404 | 密钥、优惠券或订阅不存在 |
409 | Coupon code already exists |
413 | mock 素材超过 10 MB 上限 |
500 | 已存储的密钥无法解密 |