セッションのアクティビティ記録を送信する
プロダクトで宣言したアクティビティタイプに対して、アクティビティ記録をまとめて送信します。記録は1件ごとに検証され、レスポンスには記録ごとのステータス(`accepted`、または理由付きの `rejected`)が含まれます。すでに受理済みの `id` を持つ記録を再送しても安全な無操作となり、再び `accepted` として数えられ、二重に保存されることはありません。セッションが存在しない場合や無効化されている場合は、バッチ全体が拒否されます。
Authorization
api-key In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://example.com/activity/push" \ -H "Content-Type: application/json" \ -d '{ "sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672", "records": [ { "id": "7c3e0c6e-9c2a-4f1e-bd2b-1f9a3c6d8e10", "type": "2f9a1c84-6b3e-4d52-9f08-1a7c3e5d9b20", "value": { "seconds": 1800 }, "timestamp": "2026-06-24T14:32:05Z" }, { "id": "a4f2b8d1-3e7c-4a90-8b6f-2c5d9e0a1b34", "type": "8d3b6e10-4f29-4a71-bc52-9e0a1c7d3f64", "value": { "amount": 999, "currency": "USD" }, "timestamp": "2026-06-24T15:02:05Z" } ] }'{ "sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672", "accepted": 2, "rejected": 0, "records": [ { "id": "7c3e0c6e-9c2a-4f1e-bd2b-1f9a3c6d8e10", "status": "accepted" }, { "id": "a4f2b8d1-3e7c-4a90-8b6f-2c5d9e0a1b34", "status": "accepted" } ]}{ "error": "INVALID_INPUT", "errorMessage": "The request was missing a sessionId parameter."}信頼できる成人の確認を実行する POST
信頼できる成人の確認を開始し、iframeに表示するホスト型のURLを返します。これは具体的な年齢を確定するものではなく、確認を完了した人物が未成年の代理として行動できる成人であることを示すものです。そのため年齢条件は受け付けません。 プレイヤーは返されたURLで確認を完了します。結果は `/age-verification/get-status` またはWebhookから取得してください。
スクリーンタイムを終了する POST
`/screentime/start` で開始したアクティブなスクリーンタイムを終了します。その時間は当日のスクリーンタイム利用時間に加算され、現地の深夜0時をまたぐ場合はスケジュールのタイムゾーンに従って日付ごとに分割されます。 ステータスの意味: * `accepted` - `id` に一致するスクリーンタイムが終了したか、すでに終了済みのスクリーンタイムに対する再試行が冪等に処理されました。 `sessionId` に対してアクティブなスクリーンタイムが存在しない場合、またはこのリクエストの `id` がアクティブなスクリーンタイムを開始した `id` と一致しない場合は、`NOT_FOUND` コードが返されます。