フロー
1
モニタリング用クレデンシャルを発行する
バックエンドが、APIキーとユーザーの
vendor_dataを指定してPOST /v3/events/sdk-token/を呼び出します。2
デバイスから送信する
アプリが
X-Monitoring-Tokenヘッダーを付けてPOST /v1/events/(またはPOST /v1/events/batch/)に送信します。3
ルールは通常どおり実行される
イベントは、サーバーから送信されたイベントとまったく同じルールによってエンリッチされ、集計され、評価されます。
クレデンシャルの発行
発行するには、アプリケーションでイベントの取り込みが有効になっている必要があります。無効になっている間、このエンドポイントは書き込みができないクレデンシャルを渡す代わりに、
{"code": "event_monitoring_disabled"}とともに403を返します。送信
サーバー側で強制される内容
- 対象のバインド。 クレデンシャルは発行時に1つの
vendor_dataにスコープされます。リクエスト本文のsubjectブロックは上書きされるため、改ざんされたクライアントが別のユーザーのタイムラインに書き込むことはできません。 - ネットワークコンテキスト。 IPアドレス、ユーザーエージェント、accept-language、originはリクエストから導出され、ルール評価ではこれらのサーバー側で導出された値がクライアントからのヒントより優先されます。ルールのエビデンスには、その差異がフィールドソースとして記録されます。
- カテゴリのスコープ。
sessionにスコープされたクレデンシャルではpaymentイベントを送信できず、400で拒否されます。 - 使用回数の上限。 バッチではイベントごとに1回分を消費するため、500件のイベントを含むバッチを1回分として扱い、10回まで使用できるクレデンシャルの上限をすり抜けることはできません。
- オリジンのバインド。
bind_to_originが設定されている場合、Originが一致しないリクエストは拒否されます。Originがまったくないリクエストも拒否されます。
バッチ処理
バックプレッシャー時に破棄してよいもの
イベントを間引く必要がある場合は、重要度の低いものから間引いてください。次のイベントは破棄しても問題ありません。session.page_view · session.sdk_heartbeat · session.sdk_loaded · session.device_seen · session.bot_signal_observed · bonus.promotion_viewed · affiliate.referral_clicked
次のイベントは破棄しないでください。最優先でフラッシュしてください。
すべてのsecurity、payment、dispute、responsible_gamblingイベント、およびgameplay.bet_placed、gameplay.bet_settled、gameplay.p2p_settlementです。
一覧エンドポイントは同じ分類をイベントごとにis_droppableとして返すため、クライアントはハードコードしたコピーではなく、この値に基づいて動作できます。
ヘッダーの互換性
正式なヘッダーはX-Monitoring-Tokenです。すでにトランザクション用の認証情報を保持しているアプリが段階的に移行できるよう、X-Transaction-Tokenも一時的なエイリアスとして受け付けます。
レーンの選択
どちらも同一のイベントレコードを生成し、同一のルールを実行します。エンドユーザーが介在しない場合は、常にサーバーレーンを使用してください。
次のステップ
イベントの取り込み
エンベロープ、カテゴリ、保持期間、冪等性について説明します。
イベントに対するルール
ベロシティ、比率、シーケンス、相関の各ルールについて説明します。