API Examples

Build with the F1 API in minutes

Copy-paste code examples in JavaScript, Python, and C# — each with a live JSON response so you know exactly what to expect before writing a single line.

Getting Started

Up and running in 3 steps

01

Get your API key

Sign up on RapidAPI — your key is generated instantly. The free tier lets you make your first calls right away.

Get API key →
02

Read the documentation

Every endpoint is documented with parameters, response schemas, and error codes. Find what you need fast.

Open docs →
03

Copy an example below

Pick an endpoint, choose your language, copy the code, and swap in your API key. That's it.

See examples ↓
Endpoint 01

Season

Retrieve Formula 1 seasons filtered by year. Returns season ID, year, and current status.

GET/v2/season?year=2026
hyprace-api · javascript
const response = await fetch(
"https://hyprace-api.p.rapidapi.com/v2/season?year=2026",
{
headers: {
"x-rapidapi-key": "<your-api-key>",
"x-rapidapi-host": "hyprace-api.p.rapidapi.com",
},
}
);
const data = await response.json();
console.log(data);
Response
200 OK
{
"items": [
{
"id": "e7d2c760-f57b-4bfd-a93c-15b330276d14",
"year": 2026,
"status": "Active"
}
],
"currentPage": 1,
"totalPages": 1,
"pageSize": 10,
"totalCount": 1,
"itemsNumber": 1,
"hasPrevious": false,
"hasNext": false
}
Endpoint 02

Current Season – Grands Prix

Retrieve all Grands Prix for the current Formula 1 season, including circuit info, round numbers, and session dates.

GET/v2/grands-prix?isCurrent=true
hyprace-api · javascript
const response = await fetch(
"https://hyprace-api.p.rapidapi.com/v2/grands-prix?isCurrent=true",
{
headers: {
"x-rapidapi-key": "<your-api-key>",
"x-rapidapi-host": "hyprace-api.p.rapidapi.com",
},
}
);
const data = await response.json();
console.log(data);
Response
200 OK
{
"items": [
{
"id": "c267fde7-de50-4d56-a2fc-1313439daa43",
"round": 3,
"name": "Japanese Grand Prix",
"circuitId": "c2fa59a7-c57a-4757-7c7e-08d9161fe87b",
"season": {
"id": "e7d2c760-f57b-4bfd-a93c-15b330276d14",
"year": 2026
},
"schedule": [
{
"id": "bfc806a1-feaa-48de-ab44-f9b6ee28335b",
"startDate": "2026-03-29T05:00:00Z",
"endDate": "2026-03-29T07:00:00Z",
"type": "MainRace"
},
{
"id": "83b18780-2a95-49ea-ab9e-75d9733b716a",
"startDate": "2026-03-28T06:00:00Z",
"endDate": "2026-03-28T07:00:00Z",
"type": "StandardQualifying"
},
{
"id": "92ad98e6-0b6f-487f-87e1-37cdcb00daf8",
"startDate": "2026-03-27T02:30:00Z",
"endDate": "2026-03-27T03:30:00Z",
"type": "FirstPractice"
}
],
"officialName": "FORMULA 1 ARAMCO JAPANESE GRAND PRIX 2026",
"status": "Finished",
"startDate": "2026-03-27T02:30:00Z",
"endDate": "2026-03-29T07:00:00Z"
}
],
"currentPage": 1,
"totalPages": 1,
"pageSize": 10,
"totalCount": 1,
"itemsNumber": 1,
"hasPrevious": false,
"hasNext": false
}
Endpoint 03

Driver Profile

Retrieve a driver's full profile by their unique ID — personal details, nationality, car number, and three-letter abbreviation.

GET/v2/drivers/:id
hyprace-api · javascript
const response = await fetch(
"https://hyprace-api.p.rapidapi.com/v2/drivers/d5a0947b-fb07-472f-200c-08d9161fe7c5",
{
headers: {
"x-rapidapi-key": "<your-api-key>",
"x-rapidapi-host": "hyprace-api.p.rapidapi.com",
},
}
);
const data = await response.json();
console.log(data);
Response
200 OK
{
"id": "d5a0947b-fb07-472f-200c-08d9161fe7c5",
"firstName": "Lewis",
"lastName": "Hamilton",
"birthDate": "1985-01-07T00:00:00",
"tla": "HAM",
"number": 44,
"country": {
"id": "19694fc2-7dba-4299-ad76-68c32594d591",
"name": "United Kingdom of Great Britain and Northern Ireland",
"alphaTwoCode": "GB",
"alphaThreeCode": "GBR",
"numCode": 826
}
}
Endpoint 04

Constructors Championship Standings

Get constructors championship standings per race, including position, points, chassis and engine manufacturer IDs.

GET/v2/constructors-standings?isLastStanding=true
hyprace-api · javascript
const response = await fetch(
"https://hyprace-api.p.rapidapi.com/v2/constructors-standings?isLastStanding=true",
{
headers: {
"x-rapidapi-key": "<your-api-key>",
"x-rapidapi-host": "hyprace-api.p.rapidapi.com",
},
}
);
const data = await response.json();
console.log(data);
Response
200 OK
{
"items": [
{
"id": "18628a72-bea9-4320-a893-84adc18b9d28",
"raceId": "8e3c799f-65ae-45c4-2c4f-08d9161fe895",
"seasonId": "a17bcf5f-3a25-4655-f2fb-08d9161fe86e",
"standings": [
{
"position": 1,
"points": 48,
"chassisManufacturerId": "692a50d8-dbfe-4343-b387-7b1e4a2cc751",
"engineManufacturerId": "1d21ef88-b275-4c99-89ed-94acb952be83"
},
{
"position": 2,
"points": 40,
"chassisManufacturerId": "300e67a0-9bc5-429e-a419-c2a98bf8c7a7",
"engineManufacturerId": "ae0fbc07-ccbb-4a7a-830a-f0be905e7cb2"
},
{
"position": 3,
"points": 31,
"chassisManufacturerId": "df857cdb-93d7-4136-abfc-260b2634a293",
"engineManufacturerId": "c783cf23-6688-4ce9-bec0-c72c4dbb3d93"
}
]
}
],
"currentPage": 1,
"totalPages": 7,
"pageSize": 10,
"totalCount": 69,
"itemsNumber": 10,
"hasPrevious": false,
"hasNext": true
}
Endpoint 05

Team Statistics

Retrieve aggregated statistics for a constructor — wins, podiums, poles, sprint results, and more.

GET/v2/teams/:id/statistics
hyprace-api · javascript
const response = await fetch(
"https://hyprace-api.p.rapidapi.com/v2/teams/d5802ec3-7d45-4b65-b83b-fbb496f87b2d/statistics",
{
headers: {
"x-rapidapi-key": "<your-api-key>",
"x-rapidapi-host": "hyprace-api.p.rapidapi.com",
},
}
);
const data = await response.json();
console.log(data);
Response
200 OK
{
"items": [
{
"percentage": 0.2207,
"total": 1119,
"value": 247,
"type": "Wins"
},
{
"percentage": 0.3604,
"total": 2306,
"value": 831,
"type": "Podiums"
},
{
"percentage": 1,
"total": 1119,
"value": 1119,
"type": "Results"
},
{
"percentage": 0.2315,
"total": 1119,
"value": 259,
"type": "Poles"
},
{
"percentage": 0.04,
"total": 25,
"value": 1,
"type": "SprintWins"
},
{
"percentage": 0.3061,
"total": 49,
"value": 15,
"type": "SprintPodiums"
}
],
"currentPage": 1,
"totalPages": 1,
"pageSize": 10,
"totalCount": 8,
"itemsNumber": 8,
"hasPrevious": false,
"hasNext": false
}
Endpoint 06

Error Handling – 404 Not Found

When a resource doesn't exist, the API returns a structured 404 error with a human-readable detail message, the request path, and a traceId for support.

GET/v2/teams/:id/statistics
hyprace-api · javascript
const response = await fetch(
"https://hyprace-api.p.rapidapi.com/v2/teams/d12e60bf-d848-48c0-997d-400cb510f4d5/statistics",
{
headers: {
"x-rapidapi-key": "<your-api-key>",
"x-rapidapi-host": "hyprace-api.p.rapidapi.com",
},
}
);
const data = await response.json();
console.log(data); // 404 Not Found
Response
404 Not Found
{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Not Found",
"status": 404,
"detail": "Resource 'teams' with id 'd12e60bf-d848-48c0-997d-400cb510f4d5' not found.",
"instance": "/v2/teams/d12e60bf-d848-48c0-997d-400cb510f4d5/statistics",
"traceId": "00-c3c118383d67cf3755be678652e1c53c-856cb78395dd20af-01"
}
API operational

More endpoints in the docs

These examples cover the most-used endpoints. The full API includes drivers, teams, circuits, seasons, chassis, engines, and historical archives — all documented at docs.hyprace.com.