コンテンツにスキップ
メインサイト ニュース コンソール

エラーコードと再試行

エラー発生時、API は 2xx 以外のステータスコードを返し、レスポンス本文は JSON です:

{
"error": {
"message": "エラーの説明",
"type": "invalid_request_error",
"code": "..."
}
}

一般的なエラーコード

HTTP ステータス主な原因推奨される対応
400パラメータエラー、リクエスト本文の形式が不正パラメータと JSON 形式を確認
401キーの欠落 / 無効Authorization: Bearer sk-... を確認
403トークンが無効、モデルグループへのアクセス権がないコンソールでトークンの状態とグループを確認
404モデル名が存在しない、または未公開モデル概要 を確認
413リクエスト本文が大きすぎる(コンテキスト超過)messages を簡素化するか、長文コンテキスト対応モデルに変更
429レート制限、または残高不足バックオフ再試行、レート制限と 429 を参照
500 / 502 / 503上流モデルの変動短いバックオフ後に再試行、ゲートウェイが利用可能な上流へ自動切り替え

再試行の推奨事項

  • 429 / 5xx には指数バックオフ + ジッターを採用する: 1s、2s、4s のように、最大 3〜5 回;
  • 400 / 401 / 403 は確定的なエラーであり、再試行は無意味なため、まずリクエストを修正する;
  • 冪等なシナリオ(例: 画像生成)では、再送前に前回リクエストの最終状態を確認し、重複課金を避ける;
  • 本番環境ではレスポンスヘッダーと error.message を記録することを推奨。どの段階でエラーが返されたかの特定に役立つ。