Feed Catalog
Session Timing
sessiontiming is a RaceHooks-computed feed that aggregates TrackStatus, ExtrapolatedClock, LapCount, SessionData, and RaceControlMessages into a single coherent snapshot. It fires on every state change so you always have an up-to-date picture of the session without subscribing to multiple raw feeds.
Feed ID
sessiontimingliveCadence: per state change · every lap tick, flag change, clock update, and qualifying segment boundary
Subscribe
Payload
Every delivery is a full snapshot — not a diff. The payload always represents the current session state at the moment of delivery.
Fields
| Field | Type | Description |
|---|---|---|
state | string | Derived session state — see State values below. |
flag | string | "green" | "yellow" | "sc" | "vsc" | "red" | "checkered". Current track flag. |
lap | number | Current race lap number. 0 during formation lap. |
totalLaps | number | Total scheduled laps for the session. 0 for timed sessions (practice, qualifying). |
sessionType | string | "Race" | "Sprint" | "Qualifying" | "Practice1" | "Practice2" | "Practice3" |
clock | object | null | Session clock: remaining time, extrapolating boolean, and F1 server UTC timestamp. null before session start. |
clock.remaining | string | Remaining session time in "H:MM:SS" format. |
clock.extrapolating | boolean | true when F1 is extrapolating the clock (paused periods, formation lap). The clock value is an estimate. |
resumeAt | string | null | Local time ("HH:MM") of announced restart if a race is red-flagged. null otherwise. |
resumeAtUtc | string | null | UTC ISO 8601 of the announced restart. null otherwise. |
qualifyingSegment | number | null | 1, 2, or 3 for the active qualifying segment (Q1/Q2/Q3). null outside qualifying. |
State values
The state field is derived from the combination of track status code, session started/finished flags, lap number, and qualifying segment. It is the recommended field for branching your integration logic.