行動イベント
ユーザーの行動イベントを送信することで、パーソナライゼーションの精度が向上します。イベント送信は無料(0 クレジット)です。
イベントの送信
POST /v1/events
{
"events": [
{
"type": "click",
"session_id": "YOUR_SESSION_ID",
"user_id": "user-12345",
"tracking_token": "eyJhbGciOi...",
"occurred_at": "2026-03-01T12:00:00Z"
}
]
}
レスポンスは 202 Accepted です(非同期処理)。リクエスト/レスポンスの詳細は API リファレンス の POST /events をご覧ください。
イベント種別と必須フィールド
| イベント | 説明 | tracking_token | user_id |
|---|---|---|---|
session_start | アプリ起動 | - | 任意(送信時はユーザー自動作成) |
login | ログイン | - | 必須 |
logout | ログアウト | - | 任意 |
impression | 記事表示(ビューポート内) | 必須 | 任意(送信時はユーザー自動作成) |
click | 記事タップ | 必須 | 任意(送信時はユーザー自動作成) |
return | 記事から戻る(滞在時間計測) | 必須 | 任意(送信時はユーザー自動作成) |
share | シェア | 必須 | 任意(送信時はユーザー自動作成) |
like | 高評価 | 必須 | 任意(送信時はユーザー自動作成) |
dislike | 低評価 | 必須 | 任意(送信時はユーザー自動作成) |
tracking_token は GET /v1/feed のレスポンスに含まれる値をそのまま使用してください。
user_id の制約: 最大 128 文字、A-Za-z0-9._:@|+=- のみ使用可能。空白・タブ・絵文字・制御文字・パス区切り (/, \) は不可。UUID/ULID/数値ID 推奨。Auth0 (auth0|abc) やメールアドレス形式も技術的には許容します。違反した場合は 400 Validation を返します。
推奨する送信パターン
パーソナライゼーションに特に寄与するイベント:
session_start— アプリ起動時。session_idにセッションを一意に識別する文字列を指定(UUID v4 推奨、ULID 等も可)。同じsession_idを異なるユーザー間で共有しないでくださいlogin— ログイン完了時。user_id必須click— 記事タップ時。tracking_token必須impression— フィードの各記事がビューポートに表示されたタイミング
バッチ送信
events 配列に最大 100 件のイベントをまとめて送信できます。アプリ側でイベントをバッファリングし、定期的にまとめて送信することを推奨します。
サイズ上限
| 制約 | 上限 | 超過時の挙動 |
|---|---|---|
| リクエストボディ全体 | 2 MiB | 413 Payload Too Large |
events 配列の件数 | 100 件 | 400 Validation |
1イベントの metadata JSON バイト長 | 4096 バイト | 400 Validation (metadata: must not exceed 4096 bytes) |
metadata の上限はクライアントが送信した JSON のバイト長で評価されます(インデントや改行を含めた送信時のサイズがそのままカウントされます)。
ボディサイズ上限は HTTP プロトコル層で適用されるため、chunked transfer encoding を用いても回避できません。
login イベントでのユーザー属性送信
login イベントの metadata.user_attributes でユーザー属性を送信できます。送信された属性はユーザープロフィールにマージされ、パーソナライゼーションに活用されます。
{
"events": [
{
"type": "login",
"session_id": "YOUR_SESSION_ID",
"user_id": "user-12345",
"occurred_at": "2026-03-01T12:00:00Z",
"metadata": {
"user_attributes": {
"gender": "female",
"birth_year": 1990,
"area_names": ["渋谷"],
"area_level": "station"
}
}
}
]
}
user_id を含むあらゆる行動ログ(login / session_start だけでなく click / impression / return / share / like / dislike も含む)で、未登録ユーザーはバックグラウンドで自動作成されます。session_start を送信せずに click 等を送信したケース(イベント順序の race)でも欠損が発生しないことを保証します。詳細は ユーザー管理 をご覧ください。