レート制限
Braze API インフラストラクチャは、顧客ベース全体で大量のデータを処理するように設計されています。このために、ワークスペースごとにAPI レート制限を適用します。
レート制限は、API が特定の期間に受信できるリクエストの数です。大規模システムにおける負荷ベースのサービス拒否インシデントの多くは、意図しないものです。これは、ソフトウェアや構成のエラーによるものです。悪意のある攻撃ではありません。レート制限は、このようなエラーが顧客からのBraze APIリソースを奪うことがないことを確認します。所定の時間内に送信されるリクエストが多すぎる場合、エラーレスポンスで429
というステータスコードが表示されることがあります。これは、レート制限に達したことを示しています。
APIレートリミットは、当社システムの適切な使用方法によって変更される場合があります。私たちは、破損や誤使用を防ぐためにAPIコールを行う際には、合理的な制限を推奨します。
リクエストタイプ別のレート制限
次の表に、さまざまなリクエストタイプのデフォルトのAPI レート制限を示します。これらのデフォルトの制限は、要求に応じて増やすことができます。詳細については、カスタマー・サクセス・マネージャーにお問い合わせください。
このテーブルにリストされていないリクエストは、1 時間あたり 250,000 リクエストという合計デフォルトレート制限を共有します。
API 要求のバッチ処理
BrazeAPI はバッチ処理をサポートするように構築されています。バッチ処理を使用すると、Braze は1 回のAPI 呼び出しでできるだけ多くのデータを取り込むことができるため、多くのAPI 呼び出しを行う必要がありません。データを一度に1 回の呼び出しで処理するよりも、Braze でデータを一度に処理する方が効率的です。たとえば、1000 回のバッチAPI コールを処理すると、75,000 回の個別コールを処理するよりも少ないリソースが必要になります。バッチ処理は、1 時間に75,000 回を超えるコールが必要なアプリケーションでは非常に重要です。
REST API レート制限の増加は、API バッチ機能を使用している顧客のニーズに基づいて考慮されます。
ユーザートラック要求のバッチ処理
各/users/track
リクエストには、最大75 個のイベントオブジェクト、75 個の属性オブジェクト、および75 個の購入オブジェクトを含めることができます。各オブジェクト(イベント、属性、購入アレイ)は、各1 人のユーザーを更新できます。これにより、1回の通話で最大225人のユーザを更新できます。また、1 つのユーザープロファイルを複数のオブジェクトで更新できます。
このエンドポイントに対して行われた要求は、通常、次の順序で処理を開始します。
- 属性
- イベント
- 購入
バッチメッセージングエンドポイント要求
メッセージングエンドポイントへの単一のリクエストは、次のいずれかに到達できます。
- 最大50 個の特定の
external_ids
、それぞれ個別のメッセージパラメータを含む - Braze ダッシュボードで作成された任意のサイズのセグメント。Braze ダッシュボードで指定されます
segment_id
- リクエストで接続されたオーディエンスオブジェクトとして定義されている任意のサイズの追加のオーディエンスフィルタに一致するユーザ
レート制限の監視
Braze に送信された 1 つの API リクエストごとに、レスポンスヘッダーに以下の情報が返されます。
ヘッダ名 | 説明 |
---|---|
X-RateLimit-Limit |
指定した間隔で実行できるリクエストの最大数(レート制限)。 |
X-RateLimit-Remaining |
現在のレート制限ウィンドウに残っている要求の数。 |
X-RateLimit-Reset |
現在のレート制限ウィンドウがUTC エポック秒でリセットされる時間。 |
この情報は、Braze ダッシュボードではなく、API 要求に対する応答のヘッダーに意図的に含まれています。これにより、システムは、API とやり取りする際にリアルタイムでより効果的に反応できます。たとえば、X-RateLimit-Remaining
の値が特定のしきい値を下回った場合、すべてのトランザクションメールが確実に送信されるように送信を遅くすることができます。または、ゼロに達した場合は、X-RateLimit-Reset
で指定した時間が経過するまで、すべての送信を一時停止することができます。
API 制限についてご質問がある場合は、カスタマーサクセスマネージャーにお問い合わせいただくか、サポートチケット を開きます。
エンドポイント間の最適遅延
エラーを最小限に抑えるために、連続するエンドポイントコールの間に5 分の遅延を許可することをお勧めします。
Braze API を連続して呼び出す場合、エンドポイント間の最適な遅延を理解することが重要です。エンドポイントが他のエンドポイントの正常な処理に依存している場合、問題が発生し、呼び出しが早すぎるとエラーが発生する可能性があります。たとえば、ユーザーに/user/alias/new
エンドポイント経由でエイリアスを割り当て、そのエイリアスをヒットして/users/track
エンドポイント経由でカスタムイベントを送信する場合、どのくらいの期間待機する必要がありますか?
通常の条件下では、データの整合性が実現するまでの時間は10 ~100ms (1/10 秒) です。ただし、その整合性の発生に時間がかかる場合があるため、エラーの可能性を最小限に抑えるために、後続の呼び出しの間に5 分の遅延を許可することをお勧めします。