錯誤碼
Gateway 錯誤回應格式與常見狀態碼
Hakila Gateway 的錯誤回應為 JSON:
{
"error": {
"message": "Invalid or disabled API key.",
"code": 401
}
}code 與 HTTP status 相同。
常見狀態碼
| HTTP | 情境 |
|---|---|
400 | 請求 body 不是有效 JSON,或缺少 model |
401 | 缺少 Authorization、金鑰無效/停用、或已過期 |
402 | API Key 預算已用盡(內部以 BudgetUsd 比對累計花費) |
502 | 找不到可用的上游 Provider Key,或 hakila/auto 無法選路 |
範例
缺少 Authorization
{
"error": {
"message": "Missing Authorization header. Expected: Bearer <api key>",
"code": 401
}
}預算用盡
{
"error": {
"message": "API key budget exceeded.",
"code": 402
}
}上游金鑰未設定
{
"error": {
"message": "Provider 'openai' 尚未設定 API 金鑰。請在 ProviderKeys 資料表或 Providers:openai:ApiKey 設定中填入。",
"code": 502
}
}hakila/auto 無法選路
{
"error": {
"message": "hakila/auto 找不到可用的上游供應商金鑰。請先在 BYOK 或 Providers 設定中填入至少一組金鑰。",
"code": 502
}
}上游供應商本身回傳的非 2xx 錯誤,會盡可能原樣轉發其 status 與 body。