レート制限

レート制限はAPIキー単位の固定60秒ウィンドウで適用され、境界でリセットされます。既定はキーごとに毎分60リクエストで、Productionではより高い上限を協議できます。

レスポンスヘッダー

すべてのレスポンスに現在のレート制限状態が含まれます。

ヘッダー意味
X-RateLimit-Limitウィンドウ内で許可されるリクエスト数
X-RateLimit-Remaining現在のウィンドウで残っているリクエスト数
X-RateLimit-ResetウィンドウがリセットされるUnix epoch秒

上限を超えると、HTTP 429、error.code = rate_limit_exceeded、待機秒数を含むRetry-Afterヘッダーが返されます。

HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1782604860
Retry-After: 12
{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "リクエスト上限を超えました。",
    "request_id": "req_..."
  }
}

公開(未認証)ルート

公開ルートにはAPIキーがないため、クライアントIPごとに毎分20リクエストに制限され、同じ固定ウィンドウ、ヘッダー、429 + Retry-After規約を使用します。申請作成・状態・承認claim(POST /v1/partner-applications*)とPOST /v1/api-keys/bootstrapに適用され、スパムと承認トークン総当たりを抑えます。

バックオフ指針

  • Retry-Afterを守り、指定秒数を待ってから再試行してください。エンドポイントを過剰に呼び出さないでください。
  • 繰り返す429と5xxにはジッター付き指数バックオフを使用してください。
  • 事前にスロットリングしてください。X-RateLimit-Remainingを追跡し、ゼロになる前に減速します。
  • 可能ならバッチ化してください。多数のPOST /eventsの代わりに最大500イベントのPOST /events/batchを使用します(イベントAPI)。
  • ワークロードごとにキーを分けてください。制限はキー単位なので、大量取り込みと対話的呼び出しには別のキーを使用します。
  • 対応する冪等操作は安全に再試行できます。イベントはevent_idで重複排除し、再生トークン作成、ライセンスリクエスト作成、キーローテーションはX-NU-Request-Idを受け付けます。24時間以内の完了済み再試行は元の結果を返し、処理中の重複は409 conflictを返します。

Productionのレート制限対応はProductionチェックリストの一部です。