メインコンテンツまでスキップ

行動イベント

ユーザーの行動イベントを送信することで、パーソナライゼーションの精度が向上します。イベント送信は無料(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_tokenuser_id
session_startアプリ起動-任意
loginログイン-必須
logoutログアウト-任意
impression記事表示(ビューポート内)必須任意
click記事タップ必須任意
return記事から戻る(滞在時間計測)必須任意
shareシェア必須任意
like高評価必須任意
dislike低評価必須任意

tracking_tokenGET /v1/feed のレスポンスに含まれる値をそのまま使用してください。

推奨する送信パターン

パーソナライゼーションに特に寄与するイベント:

  1. session_start — アプリ起動時。session_id にセッションを一意に識別する文字列を指定(UUID v4 推奨、ULID 等も可)。同じ session_id を異なるユーザー間で共有しないでください
  2. login — ログイン完了時。user_id 必須
  3. click — 記事タップ時。tracking_token 必須
  4. impression — フィードの各記事がビューポートに表示されたタイミング

バッチ送信

events 配列に最大 100 件のイベントをまとめて送信できます。アプリ側でイベントをバッファリングし、定期的にまとめて送信することを推奨します。

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"
}
}
}
]
}
注記

login および session_start イベントで user_id が含まれている場合、未登録ユーザーはバックグラウンドで自動作成されます。詳細は ユーザー管理 をご覧ください。