Race Control free live analytics
Official race-direction output, delivered verbatim. racecontrolmessages is the raw FIA feed — safety car, VSC, red flag, track-limits warnings, overtake-system toggles, penalties, and steward decisions — and is often the most commercially important feed for in-play products. trackstatus carries the live flag code.
For pre-parsed structured events derived from these messages (investigation.opened, penalty.applied, lap.time.deleted, overtake.enabled, …) see the Race Events reference →
Feed ID Tier Cadence Description trackstatus free Per update Track flag code: 1=Clear, 2=Yellow, 4=SC, 5=Red, 6=VSC, 7=VSC Ending. racecontrolmessages live Per update Raw FIA race control messages: safety car, VSC, red flag, penalties, investigations. tlarcm live Per update Simplified race-control text variant. teamradio live Per update Team radio clip metadata. audiostreams analytics Per update Broadcast audio stream URIs.
Subscribe with the feedId via webhook or SSE. Tier shown is the minimum plan required.
trackstatusTrack Status free Per update
Track flag code: 1=Clear, 2=Yellow, 4=SC, 5=Red, 6=VSC, 7=VSC Ending.
Sample payload
json copy
{
"feed": "trackstatus",
"sessionId": "9560",
"utc": "2026-06-08T14:32:18.441Z",
"data": {
"status": "safetyCar",
"message": "SAFETY CAR"
}
}racecontrolmessagesRace Control Messages live Per update
Raw FIA race control messages: safety car, VSC, red flag, penalties, investigations.
Each delivery is a batch of all messages since the last update — dedupe on utc.
Field Type Description messages[].utcstringISO 8601 timestamp from the F1 timing server. messages[].categorystring"Flag" | "Drs" | "SafetyCar" | "Other" — FIA classification. messages[].messagestringRaw FIA message text. messages[].flagstring | nullFlag state if applicable: "SAFETY_CAR" | "VIRTUAL_SAFETY_CAR" | "RED" | "CLEAR" etc. messages[].lapnumber | nullRace lap when the message was issued.
Sample payload
json copy
{
"feed": "racecontrolmessages",
"sessionId": "9560",
"utc": "2026-06-08T14:32:18.441Z",
"data": {
"messages": [
{
"utc": "2026-06-08T14:22:31.000Z",
"category": "Flag",
"message": "SAFETY CAR DEPLOYED",
"flag": "SAFETY_CAR",
"lap": 42
},
{
"utc": "2026-06-08T13:58:00.000Z",
"category": "Other",
"message": "TURN 6 - INCIDENT INVOLVING CARS 4 (NOR) AND 63 (RUS) NOTED - NO FURTHER ACTION",
"flag": "CLEAR",
"lap": 21
}
]
}
}tlarcmTeam Radio & Race Control live Per update
Simplified race-control text variant.
teamradioTeam Radio live Per update
Team radio clip metadata.
Sample payload
json copy
{
"feed": "teamradio",
"sessionId": "9560",
"utc": "2026-06-08T14:32:18.441Z",
"clip": {
"driverId": "norris-lando",
"constructorId": "mclaren",
"number": "4",
"tla": "NOR",
"name": "Lando Norris",
"team": "McLaren F1 Team",
"utc": "2026-06-08T14:32:18.441Z",
"url": "https://livetiming.formula1.com/static/2026/audio/teamradio/norris_4_radio.mp3",
"expiresAt": "2026-06-08T18:00:00.000Z"
}
}audiostreamsAudio Streams analytics Per update
Broadcast audio stream URIs.
Sample payload
json copy
{
"feed": "audiostreams",
"sessionId": "9560",
"utc": "2026-06-08T14:32:18.441Z",
"data": {
"streams": [
{
"language": "en",
"name": "International",
"uri": "https://livetiming.formula1.com/static/audio/international.m3u8",
"path": "audio/international.m3u8"
},
{
"language": "de",
"name": "RTL",
"uri": "https://livetiming.formula1.com/static/audio/german.m3u8",
"path": "audio/german.m3u8"
}
]
}
}