# Drivers

> **🏎️ Motorsport API Required**
>
> All Drivers endpoints require an active Motorsport API subscription (€79/mo, 3,000 API calls/hr).
>
> [View pricing →](https://www.sportmonks.com/formula-one-api/)

A **driver** is the person competing in a motorsport fixture - for example, Max Verstappen or Lewis Hamilton. In other Sportmonks API v3 sports this entity is called a **player**; in the Motorsport API it is called a driver. The driver `id` is the same value referenced as `player_id` in lineup objects and `participant_id` in laps, pitstops, stints, and standings responses.

{% hint style="info" %}
Use the Drivers endpoints to retrieve driver profiles, look up IDs for use in other endpoints, filter by nationality, or search by name.

Use the `metadata` include to enrich driver responses with additional profile information such as short name and debut details. The type reference for these details is described in the [Metadata & Per-Season Data Type Reference](https://docs.sportmonks.com/v3/motorsport-api/welcome/metadata-and-per-season-data-type-reference).&#x20;
{% endhint %}

#### **Available endpoints**

* [**GET All Drivers**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/drivers/get-all-drivers): returns all drivers available in the Motorsport API.
* [**GET Driver by ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/drivers/get-driver-by-id): returns a single driver by their ID.
* [**GET Drivers by Season ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/drivers/get-drivers-by-season-id): returns all drivers available for a provided season ID.
* [**GET Drivers by Country ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/drivers/get-drivers-by-country-id): returns drivers for a provided country ID.
* [**GET Latest Updated Drivers**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/drivers/get-latest-updated-drivers): returns the most recently updated driver records.
* [**GET Drivers by Search**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/drivers/get-drivers-by-search): returns drivers matching a provided search query.

#### **Include options**

You can enrich driver responses using `include`:

[`sport`](https://docs.sportmonks.com/v3/core-api/) [`country`](https://docs.sportmonks.com/v3/core-api/entities/core#country) [`city`](https://docs.sportmonks.com/v3/core-api/entities/core#city) [`nationality`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/venue) [`teams`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/team) [`latest`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/live) [`position`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/live) [`lineups`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/live) `metadata` `seasonDetails` `seasonTeams`

{% hint style="info" %}
The `teams` include returns the driver's participation information for the current season. To include the full constructor entity alongside it, use the `teams.team` nested include.

If you only need a few fields, use `select` to request specific fields and reduce response size. See: [Request options](https://docs.sportmonks.com/v3/motorsport-api/welcome/request-options)&#x20;
{% endhint %}

> **Include depth:** Drivers endpoints support a maximum of **3** nested includes.

#### **Working with driver fields**

* **`id`** - the unique driver ID. This is the same value that appears as `player_id` in lineup objects and as `participant_id` in laps, pitstops, stints, and standings responses. Use it as the join key when combining driver profile data with session or championship data.
* **`country_id`** - the driver's country of birth. This may differ from `nationality_id`.
* **`nationality_id`** - the nationality the driver has opted to represent. Resolve either with `?include=country` or `?include=nationality` respectively.
* **`position_id`** - the driver's role within their team: first driver, second driver, or test driver. This is a team role, not a race finishing position. Resolve with `?include=position`.
* **`common_name`** - the abbreviated name used in timing displays, e.g. `"M. Verstappen"`. Suitable for compact UI elements such as leaderboard rows.
* **`display_name`** - the full name as commonly used in applications, e.g. `"Max Verstappen"`. Use this for driver profile pages and detailed views.
* **`height`** and **`weight`** - present in the schema but sparsely populated. Handle `null` values in your application.
* **`detailed_position_id`** and **`type_id`** - not used in the Motorsport API. These fields are inherited from the shared v3 response structure and can be safely ignored.

#### **Common requests**

**Look up a driver by name:**

```http
GET /v3/motorsport/drivers/search/verstappen
?api_token=YOUR_TOKEN
```

**Full driver profile with current team and nationality:**

```http
GET /v3/motorsport/drivers/DRIVER_ID
?api_token=YOUR_TOKEN&include=teams.team;nationality;metadata
```

**All drivers in a season:**

```http
GET /v3/motorsport/drivers/seasons/SEASON_ID?api_token=YOUR_TOKEN
```

**All drivers from a specific country:**

```http
GET /v3/motorsport/drivers/countries/COUNTRY_ID
?api_token=YOUR_TOKEN
```

**Lightweight driver list (name and image only):**

```http
GET /v3/motorsport/drivers/seasons/SEASON_ID
?api_token=YOUR_TOKEN&select=id,display_name,common_name,image_path
```

{% hint style="info" %}
Use the search endpoint to find a driver ID before calling other endpoints. The search endpoint accepts partial names - `"norris"`, `"hamilton"`, `"max"` - and returns matching driver records with their IDs.
{% endhint %}

#### **Related entities**

Get an overview and explanation of all the fields returned in the API response:

* [Driver](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/driver)

#### **Related pages**

* [Teams](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/teams) - The constructors drivers compete for
* [Standings](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/standings) - Championship standings using driver `participant_id`
* [Race Results](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/race-results) - Season result records using driver ID
* [Laps](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/laps) - Lap data using driver `participant_id`
* [Pitstops](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/pitstops) - Pitstop data using driver `participant_id`
* [Stints](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stints) - Stint data using driver `participant_id`
* [Metadata & Per-Season Data Type Reference](https://docs.sportmonks.com/v3/motorsport-api/welcome/metadata-and-per-season-data-type-reference)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/drivers.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
