ドキュメント上限とレート制限

上限とレート制限

キーごとの利用上限、残高が足りないとき、レート制限、モデルごとの上限、リクエストの大きさの上限と、それぞれを超えたときに返るエラーです。

Echo のリクエストには、次の 5 つの上限があります。

上限決める単位超えたときの HTTP ステータス
キーの利用上限キーごと(決めるかどうかは任意)403 または 401
残高アカウント403
レート制限(一定時間に送れるリクエスト数)アカウント、接続元の IP アドレス429
モデルごとの上限(リクエスト数、トークン数、同時リクエスト数)アカウントとモデルの組み合わせ、モデル全体429
リクエスト本文の大きさリクエストごと400

キーの利用上限

  • キーの発行時に「利用上限(円)」を入れると、そのキーはその金額まで使えます。空欄のキーは、アカウントの残高の範囲で使えます
  • 利用上限は、使った分だけ減ります。月ごとなどに自動で元に戻ることはありません
  • リクエストを送る前に、見込みの料金とキーの残りの利用上限を比べます。見込みの料金のほうが多いときは、送らずに 403 を返します(This API key has reached its spending limit)
  • 料金は回答が終わったあとに実際のトークン数で確定するため、利用上限を超えることがあります。同時に複数のリクエストを送ると、それぞれが上の判定を通るため、超える額が 1 回分より大きくなることがあります。超えた分も残高から差し引きます。超える額を小さく抑えたいときは、同時に送るリクエストの数を減らしてください
  • 利用上限を使い切ったキーは、キーが間違っているときと同じ 401 を返します(Invalid API key)。キーに心当たりがないのに 401 が出るときは、コンソールの「APIキー」で、そのキーの状態と残りの利用上限を確認してください
  • 上限額は、コンソールの「APIキー」で、キーごとに「利用上限を変更」から変えられます。上限に達したキーも、上限を増やすと自動で再開します。プログラムのキーを差し替える必要はありません

キーの発行と一覧の見方はAPI キーと利用状況にあります。

残高が足りないとき

残高を使い切ると、リクエストを止めます(HTTP 403、Insufficient balance)。ただし、残高もキーの利用上限と同じく送る前の見込みの料金で判定するため、料金が残高を上回ることがあります(同時に複数のリクエストを送ると、上回る額が 1 回分より大きくなることがあります)。上回った分は残高がマイナスになり、次のチャージから差し引きます。

チャージして残高に反映されると、また使えるようになります。反映には、数秒から 1 分ほどかかることがあります。料金とチャージの詳細は料金とチャージにあります。

レート制限

数える単位上限(暫定)超えたとき
アカウント。同じアカウントのキーは、まとめて数えます1 分あたり 60 回。Premium 会員は 600 回429 と Rate limit exceeded for your account, please retry after 60 seconds を返します。Retry-After: 60 ヘッダーが付きます
接続元の IP アドレス。/v1 で始まるパスへのリクエストを数えます1 分あたり 3,000 回429 と Too many requests from your IP address, please retry after the number of seconds in the Retry-After header を返します。Retry-After ヘッダーに、待つ秒数が入ります

経由先の API(モデルを実際に動かしている各社の API)にもレート制限があります。経由先のレート制限を超えたときは、429 と The model service is temporarily rate limited, please retry after 60 seconds を返します。Retry-After: 60 ヘッダーが付きます。

レート制限で断ったリクエストに、料金はかかりません。経由先のレート制限による 429 にも、料金はかかりません。

モデルごとの上限

モデルによっては、上のレート制限とは別に、モデルごとの上限があります。数えるのは次の 3 つです。上限の値は、モデルとアカウントによって異なります。

上限数え方
1 分あたりのリクエスト数直近 60 秒に受け付けたリクエストの数
1 分あたりのトークン数直近 1 分間に使ったトークン数(入力と出力の合計)。実際に使った量で判断するため、反映に 10〜20 秒ほどの遅れがあります
同時リクエスト数回答がまだ終わっていないリクエストの数。ストリーミングは、最後まで届いた時点で終わりと数えます

上限は 2 段階あります。どちらを超えても 429 を返し、Retry-After ヘッダーに待つ秒数が入ります。

超えた上限返るメッセージ
あなたのアカウントが、そのモデルで使える分You have reached your rate limit for the model <モデル ID> (<上限の種類>), please retry after <秒数> seconds
そのモデル全体の上限(すべての利用者の合計)The model <モデル ID> is receiving too many requests right now (<上限の種類>), please retry after <秒数> seconds

<上限の種類> には、requests per minute、tokens per minute、concurrent requests のどれかが入ります。エラー本文の形式は、ほかの 429 と同じです(/v1/messages は Anthropic の形式、それ以外は OpenAI の形式。エラーと対処)。

送り直すときは、Retry-After の秒数以上待ってください。OpenAI と Anthropic の SDK は、429 を受け取ると Retry-After に従って自動で再試行します。同時リクエスト数の上限に当たるときは、同時に送る数を減らすか、前のリクエストが終わってから次を送ってください。モデルごとの上限で断ったリクエストに、料金はかかりません。

モデルごとの上限を数えるために、Echo はリクエスト本文をすべて受け取ってからモデルに送ります。本文の送信に時間がかかりすぎると、408 と The request body was not received in time, please send the request again を返します。料金はかかりません。同じリクエストを送り直してください。大きな画像やファイルを含むリクエストで起きる場合は、回線の上りの速度を確認するか、1 回のリクエストに含める量を減らしてください。

リクエストの大きさ

項目内容
リクエスト本文の大きさの上限128 MB(暫定)。超えると 400 と Invalid request: request body exceeds 128 MB: request body too large を返します
入力できるトークン数モデルごとのコンテキスト長(一度に扱えるトークン数)までです。モデル一覧の各モデルのページに載せます

経由先の API にも、それぞれリクエストの大きさの上限があります。4 MB の画像を base64 で含むリクエストが、そのまま経由先に届くことを確認しています。入力がコンテキスト長を超えると、経由先の API が 400 を返します。

確認した情報源

内容情報源確認日
レート制限の値、リクエスト本文の大きさの上限Echo の中継サーバーの設定(2026-09-28 時点)2026-09-28
見込みの料金が利用上限より多いときの 403、利用上限を使い切ったキーの 401、レート制限の 429 と Retry-After、レート制限をアカウントごとに数えること、レート制限で断ったリクエストに料金がかからないこと、128 MB を超えるリクエストの 400Echo の検証環境での実測。本番と同じ中継設定で、経由先の API の代わりに試験用の応答を返すサーバーを使いました2026-09-28
同時に送ったリクエストがそれぞれ見込みの判定を通り、合計で利用上限・残高を上回ること、上回った分も残高から差し引くことEcho の検証環境での実測(同上)2026-09-28
4 MB の画像が届くことEcho の検証環境での実測(同上)2026-09-27
利用上限の変更、上限に達したキーの再開、残高がマイナスになったときの扱いEcho Token Station のコンソール(2026-09-28 時点の画面)2026-09-28
モデルごとの上限を超えたときの 429 と 2 種類のメッセージ、Retry-After、断ったリクエストに料金がかからないこと、本文の送信が遅いときの 408Echo の検証環境での実測(同上)2026-10-11