개발 문서
에러 처리
오류는 두 종류입니다. 게이트웨이가 판정해서 막은 것과 Provider가 반환한 것. 응답의 error.source로 구분합니다.
코드표
| Status | code | Meaning |
|---|---|---|
| 400 | invalid_request | Malformed body or unknown parameter |
| 401 | invalid_api_key | Missing, revoked or malformed key |
| 403 | policy_blocked | Organization policy, key scope or IP rule |
| 402 | budget_exceeded | Key budget or balance exhausted |
| 404 | model_not_found | Unknown model or route path |
| 409 | idempotency_conflict | Key reused with a different body |
| 429 | rate_limited | Provider or gateway throttling |
| 502 | provider_error | Upstream provider failed |
| 504 | provider_timeout | Upstream provider timed out |
재시도
429와 5xx만 재시도하세요. 지수 백오프에 지터를 섞고, 최대 3회로 제한하는 편이 안전합니다. 400과 403은 재시도해도 같은 결과입니다.
멱등성
같은 요청을 두 번 보낼 위험이 있으면 Idempotency-Key 헤더를 넣으세요. 24시간 안에 같은 키로 온 요청은 첫 응답을 그대로 돌려주고 과금하지 않습니다.