レート制限とエラー
各種の上限と、ステータスコードの意味。
429 は複数の層から発生し得ます:
- こちらの無料モデルの上限:ユーザーごと、無料モデルごとに毎分1リクエスト。
- 上流の上限:無料モデルの背後にあるプロバイダーが自身の上限に達しました。
- 一部の無料プールにある1日のトークン予算。UTC の午前0時にリセットされます。
- 毎分あたりのトークン上限。非常に大きなプロンプトで発生します。
- 並列リクエストに対するユーザーごとの同時実行の上限。
有料モデルには UnoRouter が課すレート制限はありません。
毎分1回の上限に達すると、標準のレート制限ヘッダーが返ります:
HTTP/1.1 429 Too Many Requests
Retry-After: 38
X-RateLimit-Limit: 1
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1783198478Retry-After は一律の 60 ではなく、あなたのウィンドウの残り秒数です。メッセージには上限のない有料モデルの名前が示されます。
一部の有料モデルは、リクエストサイズの上限付きで無料提供されています。大きすぎるプロンプトは 413 を返します:Request body too large for gpt-4.1 model. Max size: 8000 tokens。
この上限は無料ルートにのみ適用されます。有料モデルは長さの制限なくプロンプトを受け付けます。
エラーは OpenAI のエラー形式の JSON で返ります。code は安定した識別子です。すべてのメッセージの末尾にリクエストIDが付きます:
{
"error": {
"message": "Model \"gpt-5.5-typo\" is not offered here. Check the model name for typos, or switch to a model from our supported list. (request id: 20260705...)",
"type": "new_api_error",
"code": "model_not_found"
}
}サポートへの問い合わせにはリクエストIDを添えてください。ログ内であなたのリクエストを特定できます。
キーやベース URL をまだ設定中の場合は、まず クイックスタート
実際に遭遇するステータスコード:
| コード | 意味 | 対処法 |
|---|---|---|
400 | 不正なリクエスト:パラメータの誤り、またはモデレーションでブロックされたプロンプト。 | リクエストを修正してください。そのまま再試行しても再び失敗します。 |
401 | キーが未設定、無効、期限切れ、または無効化されています。 | Authorization ヘッダーと Tokens ページを確認してください。 |
402 | このキー自身の支出上限が使い切られています。 | キーの上限を引き上げるか、新しいキーを作成してください。 |
403 | 残高がない、このキーでそのモデルが許可されていない、またはIPが許可リストにありません。 | チャージするか、キーのモデルおよび IP の制限を確認してください。 |
413 | リクエストがそのモデルの無料トライアルのサイズ上限を超えています。 | プロンプトを短くするか、有料モデルに切り替えてください。 |
429 | レート制限が発動しました(下記の種類を参照)。 | Retry-After の秒数だけ待ってから再試行するか、モデルを切り替えてください。 |
500 | 当社側または上流プロバイダーで何かが失敗しました。 | 少し待ってから再試行してください。500 が続く場合は報告してください。 |
503 | すべてのプロバイダーが混雑しているか、モデル名が存在しません。 | メッセージを読んでください:混雑は数分で解消しますが、入力ミスは解消しません。 |
まったく異なる 2 つの状況がステータス 503 を共有します。1 つ目は一時的な混雑です:
HTTP/1.1 503 Service Unavailable
{
"error": {
"message": "All providers for model \"kimi-k2.6:free\" are busy right now (they hit their rate limit). This is not a spelling error. Please try again in a little while, or switch to another model. (request id: 20260705...)",
"type": "new_api_error",
"code": "get_channel_failed"
}
}get_channel_failed は、そのモデルのすべての無料プロバイダーがレート制限中であることを意味します。数分で解消するので、再試行するかモデルを変えてください。model_not_found は名前が解決できないという意味で、再試行しても解決しません。入力ミスかカタログを確認してください。
get_channel_failed は再試行可能、model_not_found は恒久的なエラーとして扱ってください。

負荷で消えたモデルは自然に復帰します。復帰した瞬間に通知を受けるには、こちらでウォッチ: 通知
キーがプロバイダグループをピン留めしている場合、自分のピン先だけがダウンした際の第3の503があります。次を参照: グループのピン留め
429 では Retry-After に従ってください。503 の get_channel_failed は少し待ってから再試行するか、モデルを変えてください。400 系のエラーは再試行しないでください。
失敗・拒否されたリクエストは課金されません。事前ホールドと返金の仕組みは次を参照: アカウントと請求