テナントへのリクエストがレート制限されているかを確認する
テナントログ
api_limit
api_limit イベントは、認証または のグローバルな レート制限バケット で レート制限 を超過した直後にトリガーされます。別の レート制限バケット で レート制限 を超過した場合は、新しい api_limit イベントが生成されます。これにより、どの レート制限 設定によって API 呼び出しがトリガーされているのかを顧客が特定できるため、根本原因を診断するための重要な第一歩となります。
api_limit_warning
api_limit_warning ログは、顧客のリクエスト率が特定のレート制限バケットのリクエストトークンの80%を消費したときに発生します。同じレート制限バケットで、使用されるリクエストトークン数が1分後も80%を超えたままの場合、2つ目の警告ログが生成されます。別のレート制限バケットで80%のしきい値を超えた場合は、新しい api_limit_warning ログが作成されます。
appi (Public Performance Burst のみ)
appi ログは、Public Performance Burst アドオンを利用している顧客テナントが、Authentication API の継続的なリクエストのレート制限である 100 RPS を超え、48 時間のバースト割り当てのうち 1 分間分を消費したときにトリガーされます。15 分後に、リクエストレートが再び 100 RPS の継続的なリクエスト制限を超えると、2 件目の appi ログがトリガーされます。
API レスポンス
SDK のエラー処理
エラーページ
error_description クエリ文字列パラメーターに含まれたカスタムエラーページ URL にリダイレクトされます。 詳細については、影響を受けるエンドポイント および JSON エラー の説明を参照してください。
テナントにレート制限が適用される理由を確認する
テナントへのリクエストがレート制限されるタイミングを予測する
x-ratelimit-limit: 利用可能なリクエストの最大数。x-ratelimit-remaining: バケットに追加のリクエストが補充されるまでに残っているリクエスト数。x-ratelimit-reset: 追加のリクエストがバケットに加えられる予定時刻を秒単位で示す UNIX タイムスタンプ。
- バースト制限:
1000 - 持続レート制限:
100requests per second(固定ウィンドウ)
- 持続レート制限は、固定ウィンドウで
100 requests per secondです。 - 固定ウィンドウであるため、リクエストのバケットは毎秒補充されます。
x-ratelimit-limit: 1000x-ratelimit-remaining: 50x-ratelimit-reset: 1675452600
- テナントは、その API で許可されている 1000 件のリクエストのうち 950 件を使い切っており、追加のリクエストが加えられるまで残り 50 件しかありません。
- 新しいリクエストは
1675452600、つまり 2023 年 2 月 3 日 19:30:00 UTC に追加されます。 - その時点で新たに 1 件のリクエストが追加されます
レート制限の適用例
1 秒あたりのリクエスト数の例
/ratelimitexample という新しい API を、次のレート制限値で開始すると仮定します。
- バースト制限: 5 リクエスト
- 持続レート制限: 1 秒あたり 10 リクエスト。
- API は 5 個のリクエストトークンから始まり、これを超えることはありません。これはバースト制限と同じです。
- 10 個のトークンが入るバケットは、「固定ウィンドウ」に従って毎秒補充されます。新しいトークンがバケットに追加され、毎秒の切り替わり時点で満杯になります。

- T0 - T1sec: エンドユーザーは最初の 1 秒間に 6 件のリクエストを行います。5 件のリクエスト (バースト制限と同数) には
200レスポンスが返されます。6 件目のリクエストには、バケット内のリクエストトークンが残っていないため、429エラーが返されます。 - T1sec - T2sec: Auth0 は固定ウィンドウアルゴリズムにより、リクエストトークンのバケットを満杯まで補充します。その結果、7 件目から 11 件目までのリクエストは成功し、12 件目のリクエストでバケットが使い果たされるため、
429エラーになります。 - T2sec - T3sec: Auth0 は再度トークンバケットを補充するため、次のリクエスト (13) には
200レスポンスが返されます。
1 分あたりのリクエストの例
/ratelimitexample2 という新しい API を、次のレート制限値で公開したとします。
- バースト制限: 5 件のリクエスト
- 持続レート制限: 1 分あたり 6 件のリクエスト。
- API は 5 つのリクエストトークンを持つ状態で開始され、これはバースト制限と同じです。
- 6 個のトークンを保持するバケットは、「固定ウィンドウ」を使用して 1 分ごとに補充されます。新しいトークンがバケットに追加され、毎分の開始時点で満杯まで補充されます。

- T0 - T+1min: エンドユーザーは最初の 1 分間に 6 件のリクエストを行います。5 件のリクエスト (バースト制限と同数) には
200レスポンスが返されます。6 件目のリクエストには、利用可能なリクエストトークンが残っていないため429エラーが返されます。 - T+1min - T+2min: Auth0 は固定ウィンドウアルゴリズムによりトークンバケットを補充します。その結果、7 件目から 11 件目までのリクエストは成功しますが、12 件目のリクエストでバケットが使い果たされ、
429エラーになります。 - T+2min: Auth0 は再びトークンバケットを補充するため、次のリクエスト (13 件目) には
200レスポンスが返されます。
その他のシナリオ
エンドユーザーのログインおよびサインアップ API の使用
- 認証エクスペリエンス (例: 新しい または クラシックログイン)
- 認証フロー (例: ログイン、サインアップ、またはパスワード変更)
- 認証フローの種類 (例: ユーザー名 / パスワードによるログイン、ソーシャルログインによるログイン、既存の認証トークンがすでに存在する場合のログイン)
Universal Login
修飾要因
*組み合わせて使用するものは、すべてリクエスト総数に加算されます。