Submit completed screentime usage segments for a session
POST/screentime/push
Submit one or more completed segments of screentime usage for a k-ID session. Each event records when a span of usage began and how long it lasted. Use this endpoint when usage is known only after the fact - for example, a backend that buffers segments and uploads them periodically, or a game engine that reports session totals on shutdown.
Each accepted segment adds its durationSeconds to the player's
daily screentime total. If a segment crosses midnight in the
parent's configured timezone, it is split across both dates so
each day's total reflects the usage that actually happened on
that date.
Events are processed independently. The response carries a per-event status:
accepted- the segment was recorded and added to the daily total. Resubmitting an event whoseidwas already accepted is a safe no-op: it counts asacceptedagain and is not added twice, so retries after a network failure won't double-count.rejected- the segment failed validation; thereasonidentifies which rule.
The whole batch is rejected when the session does not exist or is revoked.
Real-time enforcement signals (Screentime.LimitWarning,
Screentime.LimitReached, Screentime.BreakReminder) are not
fired from this endpoint. Use /screentime/start +
/screentime/end for integrations that need those webhooks to
fire at the moment a threshold is crossed.
Request
Responses
- 200
- 400
Batch processed. Per-event statuses indicate acceptance.
Invalid request - the response body's error field carries a
specific code (e.g. NOT_FOUND, INVALID_INPUT,
FEATURE_DISABLED).