Frequently asked questions for Formula 1 v2
Click on the categories below or browse questions on the right panel.
Categories
.
Coverage
What races are covered in the F1 API?
The entire F1 Championship. For a more detailed breakdown, reference our Coverage Matrix.
What is the update frequency for races?
Races update in real-time on a lap-by-lap basis.
What is the update frequency for qualifying and practice sessions?
Beginning the 2025 season, qualifying and practice sessions update in real-time on a lap-by-lap basis.
Data Workflow
What is the typical workflow during an event weekend?
Below is the update workflow for a typical F1 event weekend. Please note that details are subject to change on an event-by-event basis.
Normal format:
- Thursday - Drivers and Teams are confirmed
- Friday - Practice 1 and 2
- Saturday - Practice 3, Qualification, and Starting Grid update
- Sunday - Race, Points and season standings update
Sprint format:
- Thursday - Drivers and Teams are confirmed
- Friday - Practice 1, Sprint Qualifying, and Sprint starting grid update
- Saturday - Sprint (including points added), Qualification, and Starting Grid update
- Sunday - Race, Points and season standings update
Integration
What format are date fields presented in?
When we present date only values we present these in the ISO 8601 standard format.
ex: 2013-04-03
We use these for attributes that have date and no time (such as birthdate). For more information: https://en.wikipedia.org/wiki/ISO_8601
What format are the date/time fields presented in?
All of our Date/Time attributes are in UTC, presented in the ISO 8601 standard format.
ex: 2013-04-03T18:15:00+00:00
For more information: https://en.wikipedia.org/wiki/ISO_8601
How do I locate the TTL (Time to Live)/cache on an API endpoint?
The cache (in seconds) can be accessed in the returned header information on each RESTful API call, under cache-control
.
ex. cache-control: max-age=1, public, s-maxage=1
or
cache-control: public, must-revalidate, max-age=120
How do I know what 'stage' I am currently looking at?
Each stage has a stage
element. The stage
element has an attribute type
which displays the stage type. The valid stage types are listed here.
<stage id="sr:stage:686254" description="Australian Grand Prix 2021" scheduled="2021-11-19T01:30:00+00:00"
scheduled_end="2021-11-21T08:00:00+00:00" type="event" status="Cancelled" single_event="false">
"stages": [
{
"id": "sr:stage:686254",
"description": "Australian Grand Prix 2021",
"scheduled": "2021-11-19T01:30:00+00:00",
"scheduled_end": "2021-11-21T08:00:00+00:00",
"type": "event",
"status": "Cancelled",
"single_event": false,
"venue": {
"id": "sr:venue:1011",
"name": "Melbourne Grand Prix Circuit",
"city": "Melbourne",
"country": "Australia",
"coordinates": "-37.840089,144.953527",
"country_code": "AUS",
"length": 5303,
"url_official": "http://www.grandprix.com.au",
"debut": 1996,
"curves_left": 6,
"curves_right": 10,
"laps": 58,
"timezone": "Australia/Melbourne"
},
"stages": [
{
"id": "sr:stage:686256",
"description": "Practice 1",
"scheduled": "2021-11-19T01:30:00+00:00",
"scheduled_end": "2021-11-19T02:30:00+00:00",
"type": "practice",
"single_event": false
},
{
"id": "sr:stage:686258",
"description": "Practice 2",
"scheduled": "2021-11-19T05:00:00+00:00",
"scheduled_end": "2021-11-19T06:00:00+00:00",
"type": "practice",
"single_event": false
},
{
"id": "sr:stage:686260",
"description": "Practice 3",
"scheduled": "2021-11-20T03:00:00+00:00",
"scheduled_end": "2021-11-20T04:00:00+00:00",
"type": "practice",
"single_event": false
},
{
"id": "sr:stage:686262",
"description": "Qualification",
"scheduled": "2021-11-20T06:00:00+00:00",
"scheduled_end": "2021-11-20T07:00:00+00:00",
"type": "qualifying",
"single_event": false,
"stages": [
{
"id": "sr:stage:686264",
"description": "Q1",
"scheduled": "2021-03-20T00:00:00+00:00",
"scheduled_end": "2021-03-20T00:00:00+00:00",
"type": "qualifying_part",
"single_event": false
},
{
"id": "sr:stage:686266",
"description": "Q2",
"scheduled": "2021-03-20T00:00:00+00:00",
"scheduled_end": "2021-03-20T00:00:00+00:00",
"type": "qualifying_part",
"single_event": false
},
{
"id": "sr:stage:686268",
"description": "Q3",
"scheduled": "2021-03-20T00:00:00+00:00",
"scheduled_end": "2021-03-20T00:00:00+00:00",
"type": "qualifying_part",
"single_event": false
}
]
},
{
"id": "sr:stage:686270",
"description": "Race",
"scheduled": "2021-11-21T06:00:00+00:00",
"scheduled_end": "2021-11-21T08:00:00+00:00",
"type": "race",
"single_event": false
}
]
},
How do I retrieve information about an individual driver?
Use the Competitor Profile endpoint with the required driver's competitor ID. The best place to get the driver's competitor ID is the Stage Summary endpoint, using the season stage ID.
Stage Types
What are the valid stage types?
sport
season
event
practice
qualifying
qualifying_part
sprint_race
race
lap
Stage & Driver Statuses
What are the valid stage and driver statuses?
Stage Status
- Completed - The stage is over and is being finalized
- Closed - The stage has been finalized
- Running - The stage is currently in progress
- Cancelled - The stage has been cancelled and will not be played
- Finished - The stage is over and cars are returning to parc ferme
- Not started - The stage is scheduled to begin
- Red flag - The stage is currently in a red flag
- Yellow flag - The stage is currently in a yellow flag (hazard on the track)
- Red and yellow flag - The stage has track conditions deteriorating due to oil or water on the surface
- White flag - The stage is currently in a white flag (slower vehicle on the track)
- Safety car - The stage has the safety car on the track and the cars will align behind it
- Warmup - The stage is about to begin, as cars are going through their warmup lap
- In grid - The stage will begin soon, as cars have moved into grid formation
- Grid must be cleared - The stage needs personnel to leave the track
Stage Sub Status
- 2 hour rule - The stage has been shortened and will need to be completed in under two hours
- 75% rule - The stage was shortened but was complete enough to recognize full points
- All laps completed - The stage was completed with all expected laps
- Entire track - The entire track has been shown the appropriate state status flag
- Abandoned - The event is no longer scheduled to occur
- Accident - An accident has occurred on the track
- Bad track conditions - Track officials have deemed the track in poor condition, which can lead to lower speeds
- Confirmed results - Event results have been validated
- Last lap - The event is in the final lap
- Preliminary results - The event results are in, but are yet to be validated
- Sector - There is a possible issue (e.g., yellow flag) in a specific sector of the track
- Unknown - The event is in an undefined status
Driver Status
- Pit stop - The driver is currently in a pit stop
- Finished - The driver has completed the race
- Disqualified - The driver has been disqualified
- Did not start - The driver did not start the race
- Out - The driver is out of the race
- In race - The driver is currently active in the race
Driver Sub Status
- Unknown - The status of the driver is unknown
- Retired - The driver has retired from the race
Probabilities
How do I get probabilities for the entire Championship? Or only one race?
You can use season, event, and race stage IDs as parameters for the Stage Probabilities endpoint.
Probabilities are available for the individual driver to win the season, a single event, and race stage. Probabilities are not available on the Sport, Practice, Qualifying, or Lap stages.
Standings
How do I see the Championship points table?
Use the Stage Summary endpoint and a season stage ID as the parameter. The competitors
node lists competitors, ranked with points, position, victories, races, races with points, and podiums.
<competitors>
<competitor id="sr:competitor:178318" name="Verstappen, Max" gender="male" nationality="Netherlands" country_code="NLD">
<team id="sr:competitor:4978" name="Red Bull Racing" gender="male" nationality="Austria" country_code="AUT"/>
<result points="524" car_number="1" position="1" victories="17" races="20" races_with_points="20" polepositions="11" podiums="19" fastest_laps="8" victory_pole_and_fastest_lap="5"/>
</competitor>
<competitor id="sr:competitor:46337" name="Perez, Sergio" gender="male" nationality="Mexico" country_code="MEX">
<team id="sr:competitor:4978" name="Red Bull Racing" gender="male" nationality="Austria" country_code="AUT"/>
<result points="258" car_number="11" position="2" victories="2" races="20" races_with_points="17" polepositions="2" podiums="8" fastest_laps="2"/>
</competitor>
<competitor id="sr:competitor:7135" name="Hamilton, Lewis" gender="male" nationality="Great Britain" country_code="GBR">
<team id="sr:competitor:41127" name="Mercedes AMG Motorsport" gender="male" nationality="Germany" country_code="DEU"/>
<result points="226" car_number="44" position="3" races="20" races_with_points="19" polepositions="1" podiums="6" fastest_laps="4"/>
</competitor>
More questions?
Reach out to [email protected] for further assistance.