コンテンツにスキップ

レート制限

BrazeのAPIインフラは、顧客ベース全体で大量のデータを処理できるように設計されています。このため、ワークスペースごとにAPIレート制限を設けています。

レート制限とは、APIが一定時間内に受け取れるリクエスト数のことです。大規模システムにおける負荷ベースのサービス拒否インシデントの多くは、悪意のある攻撃ではなく、ソフトウェアや設定のエラーによって引き起こされる意図しないものです。レート制限は、このようなエラーによってBraze APIのリソースがお客様に提供できなくなることを防ぎます。一定時間内に多くのリクエストが送信された場合、ステータスコード429のエラー応答が返されることがあります。これは、レート制限に達したことを示します。

リクエストタイプ別のレート制限

さまざまなリクエストタイプのデフォルトAPIレート制限については、以下を参照してください。これらのデフォルト制限はリクエストに応じて引き上げることができます。詳細については、カスタマーサクセスマネージャーまでお問い合わせください。

レート制限が異なるリクエスト

リクエストタイプ デフォルトAPIレート制限
/users/track リクエスト: レート制限は契約内容によって異なります。料金体系にデータポイントが含まれるお客様の場合、Brazeは3秒あたり3,000リクエストのバースト制限を適用します。その他のすべてのお客様の場合、制限は契約条件に従って設定されます。制限に関するご質問は、Brazeサポートまたはカスタマーサクセスマネージャーにお問い合わせください。

バッチ処理: 1つのAPIリクエストにつき、attributes、events、purchasesを合わせて最大75オブジェクトまで含めることができます。レガシーレート制限が適用されるお客様は、各配列に独立して最大75オブジェクトまで含めることができます。詳細については、ユーザートラックリクエストのバッチ処理を参照してください。

月間アクティブユーザー CY 24-25、ユニバーサルMAU、Web MAU、およびモバイルMAUの制限: 月間アクティブユーザー CY 24-25の制限を参照してください。
/users/track/status 1分あたり1,500リクエスト。
/users/export/ids 2024年8月22日以降にオンボーディングした場合: 1分あたり250リクエスト。

2024年8月22日より前にオンボーディングした場合: 1分あたり2,500リクエスト。
/users/delete
/users/alias/new
/users/alias/update
/users/identify
/users/merge
1分あたり20,000リクエスト。これらのエンドポイント間で共有されます。
/users/external_id/rename 1分あたり1,000リクエスト。
/users/external_id/remove 1分あたり1,000リクエスト。
/events/list 1時間あたり1,000リクエスト。/purchases/product_listエンドポイントと共有されます。
/purchases/product_list 1時間あたり1,000リクエスト。/events/listエンドポイントと共有されます。
/campaigns/data_series 1分あたり50,000リクエスト。
/messages/send
/campaigns/trigger/send
/canvas/trigger/send
/campaigns/trigger/schedule/create
/canvas/trigger/schedule/create
ブロードキャスト呼び出し(セグメント、フィルター、またはコネクテッドオーディエンスを広くターゲットにする場合)の場合、すべてのオーディエンスにわたって1分あたり250リクエスト、かつユニークオーディエンスごとに1分あたり10リクエスト(いずれか先に達した制限が適用されます)。

それ以外の場合、個別の受信者をターゲットにするリクエストは、1時間あたり250,000リクエストの共有レート制限に含まれます。
/sends/id/create 1日あたり100リクエスト。
/subscription/status/set 1分あたり5,000リクエスト。
/preference_center/v1/{preferenceCenterExternalId}/url/{userId}
/preference_center/v1/list
/preference_center/v1/{preferenceCenterExternalId}
1分あたり1,000リクエスト。
/preference_center/v1
/preference_center/v1/{preferenceCenterExternalId}
1分あたり10リクエスト。
/catalogs/{catalog_name}
/catalogs
/catalogs
1分あたり50リクエスト。これらのエンドポイント間で共有されます。
/catalogs/{catalog_name}/items
/catalogs/{catalog_name}/items
/catalogs/{catalog_name}/items
1分あたり16,000リクエスト。これらのエンドポイント間で共有されます。
/catalogs/{catalog_name}/items/{item_id}
/catalogs/{catalog_name}/items/{item_id}
/catalogs/{catalog_name}/items
/catalogs/{catalog_name}/items/{item_id}
/catalogs/{catalog_name}/items/{item_id}
1分あたり50リクエスト。これらのエンドポイント間で共有されます。
/catalogs/{catalog_name}/fields/{field_name}
/catalogs/{catalog_name}/fields
/catalogs/{catalog_name}/selections/{selection_name}
/catalogs/{catalog_name}/selections
1分あたり50リクエスト。これらのエンドポイント間で共有されます。
/scim/v2/Users/{id}
/scim/v2/Users?filter={[email protected]}
/scim/v2/Users/{id}
/scim/v2/Users/{id}}
/scim/v2/Users/
1日あたり企業ごとに20,000リクエスト。これらのエンドポイント間で共有されます。
/cdi/integrations 1分あたり50リクエスト。
/cdi/integrations/{integration_id}/sync 1分あたり20リクエスト。
/cdi/integrations/{integration_id}/job_sync_status 1分あたり100リクエスト。
/media_library/create 1時間あたり100リクエスト。
/media_library/replace_file 1時間あたり100リクエスト。

共有レート制限のリクエスト

以下のリクエストには、1時間あたり250,000リクエストの共有レート制限が適用されます。

同一ユニークオーディエンスとは?

これは以下のエンドポイントに適用されます: /messages/send、/campaigns/trigger/send、/canvas/trigger/send、/campaigns/trigger/schedule/create、および /canvas/trigger/schedule/create。

これらのエンドポイントでは、以下のすべてが一致する場合、ブロードキャストリクエストは同一のユニークオーディエンスをターゲットにしているとみなされます。

  • トリガーされるキャンペーンまたはキャンバス(APIリクエストのcampaign_idまたはcanvas_id(指定されている場合))
  • ターゲットにしているオーディエンス(セグメントまたはフィルター、またはAPIキャンペーンの場合はAPIリクエストのsegment_id)
  • コネクテッドオーディエンスフィルター(APIリクエストのaudienceオブジェクト(指定されている場合))

これらの属性のユニークな組み合わせはそれぞれ個別のオーディエンスとしてカウントされるため、各ユニークオーディエンスの追加レート制限はそれぞれの組み合わせに独立して適用されます。

APIリクエストのバッチ処理

Braze APIはバッチ処理をサポートするように構築されています。バッチ処理を使用すると、Brazeは単一のAPI呼び出しでできるだけ多くのデータを取り込むことができるため、大量のAPI呼び出しを行う必要がありません。データを一度に1回ずつ処理するよりも、バッチでデータを処理する方がBrazeにとって効率的です。たとえば、1,000件のバッチ処理されたAPI呼び出しを処理する方が、75,000件の個別の呼び出しを処理するよりもリソースの消費が少なくなります。バッチ処理は、1時間あたり75,000件を超える呼び出しが必要になる可能性のあるアプリケーションにとって非常に重要です。

ユーザーの作成および更新エンドポイントのリクエストのバッチ処理

各 /users/track リクエストには、attributes、events、purchases を合わせて最大75個のオブジェクトを含めることができます。各オブジェクトは1人のユーザーを更新できます。単一のユーザープロファイルを複数のオブジェクトで更新することも可能です。

レガシーレート制限

レガシーレート制限を使用している顧客の場合、各配列(attributes、events、purchases)にはそれぞれ独立して最大75個のオブジェクトを含めることができ、リクエストあたり最大225個のオブジェクトを組み合わせることができます。

/users/track のレート制限の詳細については、POST:ユーザーの作成と更新を参照してください。

このエンドポイントへのリクエストは、一般的に以下の順序で処理が開始されます。

  1. 属性
  2. イベント
  3. 購入

メッセージングエンドポイントリクエストのバッチ処理

メッセージングエンドポイントへの単一のリクエストで、以下のいずれかにリーチできます。

  • 最大50個の特定の external_ids(それぞれに個別のメッセージパラメータを指定)
  • Brazeダッシュボードで作成された任意のサイズのセグメント(segment_id で指定)
  • リクエスト内で コネクテッドオーディエンスオブジェクトとして定義された、任意のサイズの追加オーディエンスフィルターに一致するユーザー

バッチリクエストの例

以下の例では、external_id を使用してメールとSMSに対して1回のAPI呼び出しを行います。

curl --location --request POST 'https://rest.iad-01.braze.com/v2/subscription/status/set' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
  "subscription_groups":[
    {
      "subscription_group_id":"subscription_group_identifier",
      "subscription_state":"subscribed",
      "external_ids":["example-user","[email protected]"]
    },
    {
      "subscription_group_id":"subscription_group_identifier",
      "subscription_state":"subscribed",
      "external_ids":["example-user","[email protected]"]
    }
  ]
}

レートリミットのモニタリング

Brazeに送信されるすべてのAPIリクエストは、レスポンスヘッダーに以下の情報を返します。

ヘッダー名 説明
X-RateLimit-Limit 指定された間隔内にリクエストできる最大数(レートリミット)。
X-RateLimit-Remaining 現在のレートリミットウィンドウ内に残っているリクエスト数。
X-RateLimit-Reset 現在のレートリミットウィンドウがリセットされる時刻(UTCエポック秒)。

この情報は、Brazeダッシュボードではなく、APIリクエストのレスポンスヘッダーに意図的に含まれています。これにより、APIとのやり取り中にシステムがリアルタイムで適切に対応できます。例えば、X-RateLimit-Remainingの値が一定のしきい値を下回った場合、すべてのトランザクションメールが確実に送信されるよう、送信速度を落とすことができます。または、値がゼロに達した場合は、X-RateLimit-Resetで指定された時刻が経過するまですべての送信を一時停止することもできます。

APIリミットについてご質問がある場合は、カスタマーサクセスマネージャーに連絡するか、サポートチケットを送信してください。

エンドポイント間の最適な遅延

Braze APIに連続して呼び出しを行う場合、エンドポイント間の最適な遅延を理解することが重要です。エンドポイントが他のエンドポイントの処理完了に依存している場合、早すぎる呼び出しはエラーを引き起こす可能性があります。例えば、/user/alias/newエンドポイントを通じてユーザーにエイリアスを割り当て、その後/users/trackエンドポイントを通じてそのエイリアスにカスタムイベントを送信する場合、どのくらい待つ必要があるでしょうか。

通常の条件下では、データの結果整合性が発生するまでの時間は10〜100ミリ秒(1/10秒)です。ただし、整合性の確保により長い時間がかかる場合もあるため、エラーの可能性を最小限に抑えるために、後続の呼び出し間に5分間の遅延を設けることをお勧めします。

ペイロードサイズの制限

Braze APIリクエストには、レート制限とは別にペイロードサイズの制限があります。ほとんどのエンドポイントでは、リクエストボディのサイズは最大4 MBまで受け付けられます。リクエストが該当する制限を超えた場合、Brazeはエンドポイントに応じて HTTP 413 Request Entity Too Large または HTTP 400 Bad Request で拒否することがあります。

/users/track/bulk エンドポイントには2 MBのペイロード制限があり、リクエストボディがこの制限を超えた場合は HTTP 400 を返します。エンドポイント固有の制限やエラー処理については、ユーザーデータエンドポイントを参照してください。

レート制限のリセット

レート制限は、ローリングウィンドウではなく、時計の正時にリセットされます。たとえば、1時間あたりの制限が250,000リクエストの場合、午後10時00分から午後10時59分の間に50,000リクエストを送信し、さらに午後11時00分から午後11時59分の間に250,000リクエストを送信できます。これは、カウンターが毎時の正時にリセットされるためです。

New Stuff!