メインコンテンツへスキップ
取引はお金の動きです。イベントは、それ以外にプラットフォームが把握しているすべてのことです。出金に先立つログイン、2つのアカウント間でチップを動かしたハンド、2回受け取られたボーナス、1週間後に届いたチャージバックなどがこれにあたります。 イベントはすべてのカテゴリで共通の1つのエンベロープを使用し、設計上冪等であり、取引をスコアリングするのと同じルールエンジンで評価されます。
イベントの取り込みはオプトインです。Transactions → Settings → Event monitoringで有効にしてください。 有効にするまでは何も変わりません。既存の取引ルールは引き続き取引に対してのみ発火します。また、ルールは明示的にイベントを含めない限り取引に適用されるため、誤ってイベントルールが作成されることはありません。有効になるまでは、すべての書き込みレーン(POST /v3/events/、POST /v3/events/batch/、POST /v3/events/sdk-token/、および/v1/events/デバイスレーン)が403と{"code": "event_monitoring_disabled"}を返し、何も保存、エンリッチ、評価されることはありません。読み取りには影響しません。

エンドポイント

/v3/はサーバー向けで、取引APIの他の部分と同じx-api-key認証を使用します。/v1/events/はデバイス向けです。詳しくはSDKからのイベント送信を参照してください。

エンベロープ

カテゴリ

10種類のファーストクラスカテゴリがあり、それぞれに型付きのバリデーションと管理されたルールフィールドが用意されています。 authはプロダクト全般を対象とする広いカテゴリです。securityはリスク判定向けのサブセットで、アカウント乗っ取り対策のルールが参照する順序付きのライフサイクルを持ちます。

必須のペイロードキー

一部のアクションは特定のキーがないと関連付けができません。そのため、関連付けられない証跡を保存するのではなく、バリデーションでリジェクトします。
送信するのは参照とハッシュだけにし、生のシークレットは絶対に送信しないでください。決済手段、出金先、アカウント管理に関する変更は、送信されたハッシュ化済みの参照として保存されます。カード番号、出金先アドレスの全体、パスワードハッシュ、MFAシークレットは絶対に送信しないでください。

例: P2P精算

例: チャージバック

紛争のライフサイクルは追記専用です。訂正は新しいdisputeイベントとして送信し、最初のイベントを編集することはありません。

冪等性

event_idはアプリケーションごとに一意であり、これが冪等性の仕組みのすべてです。
  • 同じevent_idで同じ内容の場合は、200と"idempotent_replay": true、そして最初に保存されたイベントが返されます。何度でも再試行できます。
  • 同じevent_idで異なる内容の場合は、409が返されます。誤ってIDを再利用しています。

バッチ

POST /v3/events/batch/は最大500件のイベントを受け付けます。バッチは設計上、部分的な成功を許容します。不正な形式のページビュー1件が、同じバッチ内のチャージバックを巻き添えにすることがあってはならないためです。
いずれかがリジェクトされた場合のレスポンスは207 Multi-Status、すべて保存された場合は201 Createdです。

ステータス

correlation_pending: trueは、複数のサブジェクトにまたがるルールがまだ実行待ちであることを示します。数分以内に解消され、イベントのステータスとスコアが更新されます。詳しくは非同期ルールを参照してください。

データ保持

イベントは取引よりもはるかに量が多いため、受信時にそれぞれ保持クラスに振り分けられます。 この表から、次の2つのルールが導かれます。
  • ルールに一致したイベントは証跡となるため、自動的にrisk_relevantに昇格します。
  • 決済および紛争のイベントには取引の保持期間が適用されます。イベントの保持スケジュールでは期限切れにならず、クラスごとの上書き設定で短縮することもできません。
期限切れになる3つのクラスは、Transactions → Settings → Event monitoringでアプリケーションごとに上書きできます(それぞれ1〜730日)。

IPエンリッチメント

イベントには、取引と同じIPエンリッチメント(国、ASN、VPN/プロキシおよびデータセンターのフラグ)が付与されます。エンリッチメントはイベントごとではなく、一意のIPアドレスごとに取得されます。1つのアドレスから200件のページビューを送信するセッションでも、そのアドレスのエンリッチメントの取得は1回だけです。 重要度の低いテレメトリでは、エンリッチメントの参照がさらに制限されます。他のイベントがすでにそのアドレスを解決している場合にのみエンリッチメントを参照し、独自にルックアップをトリガーすることはありません。 GET /v3/events/enrichment-metrics/がその結果を返し、コンソールではイベント一覧の上に同じ数値が表示されます。

イベントの読み出し

フィルター:event_category、action_type、status、retention_class、subject_vendor_data、business_vendor_data、session_id、device_fingerprint、ip_address、game_id、round_id、affiliate_code、payment_reference_id、counterparty_vendor_data、matched_only、occurred_from、occurred_to、search。複数の値を指定するフィルターでは、パラメーターを繰り返して指定します(?status=A&status=B)。

1つの対象者のタイムライン

vendor_dataが一意となるのは、同じエンティティタイプの中だけです。同じIDがユーザーと企業の両方を指すことがあり、Diditはそれらを2つの異なる対象者として扱います。どちらを要求するかはentity_typeで指定します。指定できる値はindividual(デフォルト)またはcompanyです。企業のIDに対してこれを省略すると、両方ではなく個人のタイムラインが返されます。一覧と同じフィルターを使用できます。 GET /v3/events/{event_uuid}/は、ペイロード、デバイスコンテキスト、IPエンリッチメント、対象者のキャッシュ済みリスクシグナル、および一致したすべてのルールとその根拠を追加で返します。根拠には、一致した各フィールドがサーバー由来、SDK由来、顧客提供のいずれであるかも含まれます。 DELETE /v3/events/{event_uuid}/delete/は、1件のイベントを削除します。削除されたイベントはどの読み出しでも返されなくなり、削除は取り消せません。

次のステップ

イベントに対するルール

イベントデータに対するベロシティ、比率、シーケンス、相関のルール。

SDKによるイベント送信

スコープ付きの認証情報を使い、デバイスから直接イベントを収集します。
最終更新日 2026年11月1日