メインコンテンツに移動

Screentime.OverrideResult

スクリーンタイムの延長リクエストが解決したときに発行されます。保護者が承認した、保護者が拒否した、または回答がないまま有効期限が切れた、のいずれかです。これは/screentime/request-overrideの呼び出しに対する回答であり、プロダクトが結果を知る唯一の手段です。

エンドポイントをこのイベントに購読させてください

k-IDはScreentime.OverrideResultを、購読しているエンドポイントにのみ配信します。それ以外には配信の試行もエラーもなく破棄されます。プロダクトのDeveloper Settingsページで、エンドポイントに対して選択してください。始める前にを参照してください。

1件のリクエストに対してScreentime.OverrideResultはちょうど1回発行されます。data.idでリクエストと対応付けてください。これは/screentime/request-overrideが返したidです。

フィールド

フィールドタイプ必須説明
eventTypestringはい常に"Screentime.OverrideResult"
dataobjectはい延長結果のデータ
data.idstring (UUID)はい延長リクエストのID。/screentime/request-overrideが返したidと一致します
data.sessionIdstring (UUID)はい延長がリクエストされたセッションID
data.productIdnumberはいプロダクトID
data.statusstringはいgranteddenied、またはexpired
data.stateobjectはい決定後のスクリーンタイムの状態。GET /screentime/get-stateのレスポンスと同じ形です

{
"eventType": "Screentime.OverrideResult",
"data": {
"id": "2e9b7c41-8d6a-4f23-bc15-3a8e9d0f1b62",
"sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672",
"productId": 42,
"status": "granted",
"state": {
"enabled": true,
"access": {
"allowed": true
},
"state": {
"timeUsedTodayMinutes": 120,
"continuousUsageMinutes": 45,
"timeLimitTodayMinutes": 150,
"timeRemainingTodayMinutes": 30,
"dayResetsAt": "2026-06-25T00:00:00Z"
},
"schedule": {
"timezone": "UTC",
"breakReminderIntervalMinutes": 45,
"dailyLimits": [
{ "day": "mon", "limitMinutes": 120 },
{ "day": "sat", "limitMinutes": 180 }
],
"quietHours": [
{
"name": "Bedtime",
"days": ["mon", "tue", "wed", "thu", "fri"],
"start": "21:00",
"end": "07:00"
}
]
}
}
}
}

拒否された結果も同じ形で、ルールは変更されていません。

{
"eventType": "Screentime.OverrideResult",
"data": {
"id": "2e9b7c41-8d6a-4f23-bc15-3a8e9d0f1b62",
"sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672",
"productId": 42,
"status": "denied",
"state": {
"enabled": true,
"access": {
"allowed": false,
"details": {
"reason": "limit_reached",
"resumesAt": "2026-06-25T00:00:00Z"
}
},
"state": {
"timeUsedTodayMinutes": 120,
"continuousUsageMinutes": 45,
"timeLimitTodayMinutes": 120,
"timeRemainingTodayMinutes": 0,
"dayResetsAt": "2026-06-25T00:00:00Z"
}
}
}
}

ステータス

status意味
granted保護者がリクエストを承認しました。本日の許容時間に追加の分数が加算されています。
denied保護者がリクエストを拒否しました。本日のルールは変更されていません。
expiredリクエストから24時間以内に保護者が回答しませんでした。本日のルールは変更されていません。

expiredはエラーではなく、配信の失敗でもありません。有効期限が切れた後、プレイヤーは改めてリクエストを送信できます。

状態はペイロードに含まれます

data.stateにはGET /screentime/get-stateのレスポンスと同じ形の内容が入り、決定が適用された後の状態が計算されています。プレイヤーが再びプレイできるかどうかを知るために追加の取得は不要です。state.access.allowedを読み、承認の場合は引き上げられたstate.state.timeLimitTodayMinutesstate.state.timeRemainingTodayMinutesを読んでください。

延長が承認されると本日の制限が引き上げられるため、以降のイベントなしにaccess.allowedtrueに戻ることがあります。プレイヤーが追加の時間を使い切って引き上げ後の制限に達しても、2度目のScreentime.LimitReachedは発行されません。このイベントはプレイヤーごとに1日最大1回しか発行されないためです。