# Pitstops

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

A pitstop represents a single pit lane visit made by a driver during a motorsport fixture. Pitstop data is always scoped to a specific [fixture](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/fixtures) (session) and is available for race, qualifying, and practice sessions.&#x20;

{% hint style="warning" %}
Note that pitstop data for practice and qualifying sessions is only available from the 2023 season onwards.
{% endhint %}

{% hint style="info" %}
Use the Pitstops endpoints to retrieve pit activity across a full race, isolate a specific driver's pit strategy, or identify which lap a pitstop occurred on.

Use the `details` include to enrich each pitstop with pit duration data. The type reference for these details is described in the [Results & Live Data Type Reference](https://docs.sportmonks.com/v3/motorsport-api/welcome/results-and-live-data-type-reference).&#x20;
{% endhint %}

#### **Available endpoints**

* [**GET Pitstops by Fixture ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/pitstops/get-pitstops-by-fixture-id): returns all pitstops for a provided fixture ID.
* [**GET Pitstops by Fixture ID and Driver ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/pitstops/get-pitstops-by-fixture-id-and-driver-id): returns all pitstops for a provided fixture ID and driver ID.
* [**GET Latest Pitstops by Fixture ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/pitstops/get-latest-pitstops-by-fixture-id): returns the most recent pitstop per driver for a provided fixture ID.
* [**GET Pitstops by Fixture ID and Lap Number**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/pitstops/get-pitstops-by-fixture-id-and-lap-number): returns all pitstops that occurred on a specific lap number in a fixture.

#### **Include options**

[`fixture`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/fixture), [`participant`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/driver), `details`

{% hint style="info" %}
Want to keep responses lighter and faster? Use `select` to request only the fields you need. See: [Request options](https://docs.sportmonks.com/v3/motorsport-api/welcome/request-options)
{% endhint %}

**Using `details`**

The base pitstop response returns the lap number the stop occurred on, the driver number, and the participant ID. Add `?include=details` to get the pit duration - the time the car spent stationary in the pit box, in milliseconds. This is the key metric for pit strategy analysis and comparison.

Resolve the detail type via the [Results & Live Data Type Reference](https://docs.sportmonks.com/v3/motorsport-api/welcome/results-and-live-data-type-reference) using the `developer_name` field.

> **Include depth:** Pitstops endpoints support a maximum of **2** nested includes.

#### **Choosing the right endpoint**

| Use case                                              | Endpoint to use                           |
| ----------------------------------------------------- | ----------------------------------------- |
| All pit activity in a race                            | GET Pitstops by Fixture ID                |
| One driver's full pit strategy                        | GET Pitstops by Fixture ID and Driver ID  |
| Live pit window tracker - most recent stop per driver | GET Latest Pitstops by Fixture ID         |
| Which drivers pitted on a specific lap                | GET Pitstops by Fixture ID and Lap Number |

#### **Full pitstops vs latest pitstops**

The full pitstops endpoint (`/fixtures/FIXTURE_ID/pitstops`) returns every pit visit across the race for all drivers. A typical F1 race with 20 drivers making 1-2 stops each returns 20-40 records. This endpoint has no pagination - all records are returned in a single response.

The latest pitstops endpoint (`/fixtures/FIXTURE_ID/pitstops/latest`) returns only the **most recent pitstop per driver**. This is the right endpoint for live pit window displays where you want to show each driver's last known stop without processing the full history. Use it alongside `latestStints` to show current tyre compound and age per driver.

#### **Working with pitstop fields**

* **`lap_number`** - the lap on which the driver entered the pit lane. Cross-reference this with lap data from the [Laps endpoints](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/laps) to correlate pit timing with lap performance.
* **`driver_number`** - the driver's race number displayed on the car (e.g. `44` for Hamilton). Not a database ID.
* **`participant_id`** - the unique ID of the driver entity in the Motorsport API. Resolve it with `?include=participant` to get the driver's full profile.
* **`is_latest`** - `true` for the most recent pitstop made by that driver in the session. A driver who has made two stops will have `is_latest: false` on their first stop and `is_latest: true` on their second. The latest pitstops endpoint always returns only the records where `is_latest` would be `true`.

**Common requests**

**All pitstops in a race with pit duration:**

```http
GET /v3/motorsport/fixtures/FIXTURE_ID/pitstops
?api_token=YOUR_TOKEN&include=details
```

**A single driver's pit strategy with duration:**

```http
GET /v3/motorsport/fixtures/FIXTURE_ID/pitstops/drivers/DRIVER_ID
?api_token=YOUR_TOKEN&include=details
```

**Live pit window - most recent stop per driver:**

```http
GET /v3/motorsport/fixtures/FIXTURE_ID/pitstops/latest
?api_token=YOUR_TOKEN&include=details;participant
```

**All drivers who pitted on lap 28:**

```http
GET /v3/motorsport/fixtures/FIXTURE_ID/pitstops/lap/28
?api_token=YOUR_TOKEN&include=participant
```

{% hint style="info" %}
Pitstop data is also available as an include directly on fixture and livescores responses via `pitstops` and `latestPitstops`. Use these when you are already fetching session state and want to avoid a separate API call: `?include=lineups.details;latestPitstops;latestStints`. Use the dedicated Pitstops endpoints when you need pit data independently or want to query by lap number.
{% endhint %}

#### **Related entities**

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

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

#### **Related pages**

* [Fixtures](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/fixtures) - The session a pitstop belongs to
* [Live](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/live) - Active session data, includes `latestPitstops` as an include option
* [Laps](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/laps) - Lap timing to correlate with pitstop lap numbers
* [Stints](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stints) - Tyre stints that connect consecutive pitstops
* [Drivers](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/drivers) - Resolve `participant_id` to full driver profiles
* [Results & Live Data Type Reference](https://docs.sportmonks.com/v3/motorsport-api/welcome/results-and-live-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/pitstops.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.
