For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
メインナビゲーション

エラーコード

API のエラーコードと解決方法を紹介します。

このガイドでは、API公式 Python ライブラリで発生する可能性のあるエラーコードの概要を説明します。概要に記載した各エラーコードには個別のセクションがあり、詳しい対処方法を紹介しています。

API エラー

コード概要
400 - 無効な service_tier 引数原因: リクエストで指定された、または設定に基づいて決定されたサービスティアが、プロジェクトで許可されていません。
解決方法: service_tier をプロジェクトで許可されているティアに設定するか、プロジェクト設定で許可するサービスティアを更新してください。
401 - 無効な認証原因: 認証が無効です。
解決方法: 正しい API キーとリクエスト元の組織を使用していることを確認してください。
401 - 指定された API キーが不正原因: リクエストに使用した API キーが正しくありません。
解決方法: 使用している API キーが正しいことを確認するか、ブラウザのキャッシュを削除するか、新しい API キーを生成してください。
401 - API の利用には組織への所属が必要原因: アカウントが組織に所属していません。
解決方法: 新しい組織への追加についてお問い合わせいただくか、組織の管理者に組織への招待を依頼してください。
401 - 許可されていない IP原因: リクエスト元の IP アドレスが、プロジェクトまたは組織に設定された IP 許可リストと一致しません。
解決方法: 正しい IP アドレスからリクエストを送信するか、IP 許可リストの設定を更新してください。
403 - サポート対象外の国、地域、領土原因: サポート対象外の国、地域、領土から API にアクセスしています。
解決方法: 詳しくはこちらのページをご覧ください。
429 - クレジット残高の枯渇コード: credit_balance_exhausted
原因: 組織の前払いクレジットが残っていません。
解決方法: API を引き続き利用するには、クレジットを追加してください。
429 - リクエストのレート制限に到達原因: リクエストの送信頻度が高すぎます。
解決方法: リクエストの送信間隔を調整し、Retry-After ヘッダーがある場合はその指定に従ってください。レート制限ガイドをご覧ください。
429 - リクエスト頻度の引き下げが必要タイプ: rate_limit_error
コード: slow_down
原因: リクエスト頻度の増加が急すぎます。
解決方法: Retry-After ヘッダーがある場合はその指定に従い、リクエスト頻度を下げてから徐々に増やしてください。
429 - 組織の利用金額の上限に到達コード: organization_spend_limit_exceeded
原因: 組織に適用されている利用金額の上限に達しました。
解決方法: 組織の利用金額の上限を引き上げるか、解除してください。
429 - プロジェクトの利用金額の上限に到達コード: project_spend_limit_exceeded
原因: プロジェクトに適用されている利用金額の上限に達しました。
解決方法: プロジェクト設定で利用金額の上限を引き上げるか、解除してください。
429 - 組織の利用上限に到達コード: organization_usage_limit_exceeded
原因: OpenAI が組織に割り当てた利用上限に達しました。
解決方法: 承認済みの利用上限の引き上げをリクエストするか、サポートにお問い合わせください。
500 - リクエストの処理中にサーバーエラーが発生原因: OpenAI のサーバーで問題が発生しています。
解決方法: しばらく待ってからリクエストを再試行し、問題が解消しない場合はお問い合わせください。稼働状況ページを確認してください。
503 - モデルが一時的に過負荷状態タイプ: service_unavailable_error
コード: server_is_overloaded
原因: リクエストしたモデルが一時的に過負荷状態になっています。
解決方法: Retry-After ヘッダーがある場合はその指定に従ってから、リクエストを再試行してください。

請求関連のエラーでは、error.code を確認して具体的な原因を特定してください。より大きな分類を示す error.type は、引き続き insufficient_quota となる場合があります。

請求、利用金額、クォータに関するエラーは、リクエストを再試行しても API へのアクセスが復旧しません。次のリクエストを送信する前に、該当するクレジットや上限を更新してください。

WebSocket モードのエラー

Responses API の WebSocket モードを使用している場合は、次のエラーが発生することもあります。

  • previous_response_not_found:利用可能な状態から previous_response_id を解決できません。入力コンテキスト全体を指定し、previous_response_idnull に設定して再試行してください。
  • websocket_connection_limit_reached:接続時間が上限の 60 分に達しました。新しい WebSocket 接続を開いて続行してください。

Python ライブラリのエラータイプ

Python では、429 レスポンスに対して RateLimitError が、503 レスポンスに対して InternalServerError が発生します。これまでハンドラーでスロットリングと過負荷に対応する際に、どちらか一方の例外クラスのみをキャッチしていた場合は、両方を処理し、error.code を確認してください。たとえば、動画の過負荷では、以前は 429 が返されていましたが、現在は 503 が返されます。エンドポイントごとの変更点については、移行ガイドをご覧ください。

タイプ概要
APIConnectionError原因: OpenAI のサービスへの接続に問題があります。
解決方法: ネットワーク設定、プロキシ構成、SSL 証明書、またはファイアウォールルールを確認してください。
APITimeoutError原因: リクエストがタイムアウトしました。
解決方法: 少し待ってからリクエストを再試行し、問題が解消しない場合はお問い合わせください。
AuthenticationError原因: API キーまたはトークンが無効、有効期限切れ、または失効しています。
解決方法: API キーまたはトークンが正しく、有効であることを確認してください。アカウントのダッシュボードから新しいものを生成する必要がある場合もあります。
BadRequestError原因: リクエストの形式が不正であるか、トークンや入力などの必須パラメーターが不足しています。
解決方法: エラーメッセージに具体的な問題が示されているはずです。呼び出している API メソッドのドキュメントを参照し、有効なパラメーターを不足なく送信していることを確認してください。リクエストデータのエンコーディング、形式、サイズも確認する必要がある場合があります。
ConflictError原因: 別のリクエストによってリソースが更新されました。
解決方法: リソースの更新を再試行し、他のリクエストが同じリソースを更新しようとしていないことを確認してください。
InternalServerError原因: OpenAI 側で問題が発生しています。
解決方法: 少し待ってからリクエストを再試行し、問題が解消しない場合はお問い合わせください。
NotFoundError原因: リクエストしたリソースが存在しません。
解決方法: 正しいリソース識別子を使用していることを確認してください。
PermissionDeniedError原因: リクエストしたリソースへのアクセス権がありません。
解決方法: 正しい API キー、組織 ID、リソース ID を使用していることを確認してください。
RateLimitError原因: 割り当てられたレート制限に達したか、トラフィックを急激に増やしすぎました。
解決方法: リクエストの送信間隔を調整し、Retry-After がある場合は、再試行の制限の範囲内でその指示に従ってください。詳しくは、レート制限ガイドを参照してください。
UnprocessableEntityError原因: 形式は正しいものの、リクエストを処理できません。
解決方法: リクエストを再試行してください。

解消しないエラー

問題が解決しない場合は、チャットでサポートチームに連絡し、次の情報を伝えてください。

  • 使用していたモデル
  • 受信したエラーメッセージとエラーコード
  • 送信したリクエストデータとヘッダー
  • リクエストのタイムスタンプとタイムゾーン
  • 問題の診断に役立つその他の関連情報

サポートチームが問題を調査し、できる限り早くご連絡します。お問い合わせが多いため、対応までに時間がかかることがあります。コミュニティフォーラムに投稿することもできますが、機密情報を含めないようにしてください。

エラー処理

API が返すエラーは、プログラムで処理することをお勧めします。以下のようなコードスニペットを利用できます。

import OpenAI from "openai";

const client = new OpenAI();

try {
  const response = await client.responses.create({
    model: "gpt-6-astra",
    input: "Hello world",
  });
  console.log(response.output_text);
} catch (error) {
  if (error instanceof OpenAI.APIConnectionError) {
    console.error("Failed to connect to the OpenAI API:", error.message);
  } else if (error instanceof OpenAI.RateLimitError) {
    console.error("OpenAI API request exceeded its rate limit:", error.message);
  } else if (error instanceof OpenAI.APIError) {
    console.error("OpenAI API returned an error:", error.status, error.message);
  } else {
    throw error;
  }
}