No. 20 · Racing · Race sport
MotorsportLap by lap, stint by stint.
Formula 1, MotoGP, NASCAR and more: sessions, grid, pit stops, tyre stints, lap-by-lap positions and championships.
Scouting report
What you get for Motorsport
Motorsport covers Formula 1, MotoGP, NASCAR and more as series, race weekends and sessions: practice, qualifying, sprint and race. A classification gives grid position, pit stops, the tyre stints run and the compound on the car right now.
On Pro, the lap chart traces every driver's position at the end of every lap, with pit stops and retirements. Series standings rank drivers and teams by points, wins, podiums, poles and fastest laps.
First request
Today's motorsport in one call.
The day's motorsport races, each with all its sessions, in UTC. Change the date to read any day your plan's history reaches.
- 1Create a key in the dashboard. Free gives you 1,000 requests a day during the beta.
- 2Put it in
DATASPORTSAPI_API_KEYso the SDKs and thedsacommand find it. - 3Call
/v2/races?sport=motorsport&date=YYYY-MM-DD.
curl -H "Authorization: Bearer dsa_live_…" \
"https://api.datasportsapi.com/v2/races?sport=motorsport&date=$(date -u +%F)"The catalog
Motorsport, endpoint by endpoint
Its own detail first, then the shared spine every race sport answers on. Each row opens the endpoint’s reference page.
Where motorsport goes deeper
7 endpoints with detail specific to the sport.
- GETGETRaces
/v2/racesReturns every race that has a session beginning on a given UTC day, with all of each race’s sessions included.All plansAll plans - GETGETRace
/v2/races/{id}Full detail for a single race — series, season, round, status, dates, winner, circuit (motorsport: name, city, country, lap length), host country, laps and distance, and category (cycling)…All plansAll plans - GETGETRace results
/v2/races/{id}/resultsClassification of a race.All plansAll plans - GETGETRace laps
/v2/races/{id}/lapsLap-by-lap progress of a race session: every driver’s position at the end of each lap (lap 0 is the starting grid), his tyre compound, his pit stops (recorded on the in-lap) and the lap on…Pro + BusinessPro + Business - GETGETSeries
/v2/seriesLists the series that belong to a race-sport category.All plansAll plans - GETGETSeries standings
/v2/series/{id}/standingsA season’s championship standings, either for drivers / riders (type=competitors, the default) or for teams (type=teams), with points, wins, podiums, pole positions, fastest laps, the numbe…All plansAll plans - GETGETRace career
/v2/teams/{id}/race-careerFor race sports, the career of a driver or constructor: aggregate totals (races started, wins, podiums, poles, titles) plus one row per series season with championship position, points and…All plansAll plans
The shared spine
1 endpoints that behave the same for every race sport.
What comes back
Race results, as served
One row of a race classification: grid, laps, gap, pit stops, the tyre stints run and the fastest lap.
GET/v2/races/{id}/resultsAll plansSample from the docs, trimmed with …
{ "data": [ …,
{ "position": 2, "competitor": { "id": 700002, "name": "Charles Leclerc", … }, "team": { "id": 700010, "name": "Ferrari", … },
"state": "classified", "outReason": null, "carNumber": 16, "gridPosition": 2, "startedFromPitLane": false,
"laps": 62, "lapsBehind": null, "lapsLed": null, "pitStops": 2, "timeMs": 6128120, "gapMs": 7335, "intervalMs": 7335,
"bestLapMs": 95202, "bestLapNumber": 41, "fastestLap": true, "points": 18,
"tyreStints": [ { "compound": "soft", "laps": 24 }, { "compound": "medium", "laps": 15 }, { "compound": "soft", "laps": 23 } ],
"currentTyre": { "compound": "soft", "isNew": false }, "inPit": null,
"cycling": null }, … ],
"meta": { "race": 812345, "session": null, "count": 20 } }Switch sport
Coverage across all 24Same family · Racing
Motorsport is one query string away.
Swap ?sport=motorsport for the other race sport and the same code keeps working. Free key, no card.