# Stints

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

A **stint** represents a continuous run on a single tyre compound between pitstops. A driver's first stint begins at the race start and ends when they make their first pitstop. Their second stint begins when they re-join the track and ends at their next stop (or the race finish). Stint data is always scoped to a specific [fixture](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/fixtures) (session) and driver.

{% hint style="info" %}
Use the Stints endpoints to analyse tyre strategies, track compound usage across a race, or build live undercut/overcut visualisations.

Use the `details` include to enrich each stint with its start and end lap numbers. This tells you exactly which laps each tyre compound covered. 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).
{% endhint %}

#### **Available endpoints**

* [**GET Stints by Fixture ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stints/get-stints-by-fixture-id): returns all stints for a provided fixture ID.
* [**GET Stints by Fixture ID and Driver ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stints/get-stints-by-fixture-id-and-driver-id): returns all stints for a provided fixture ID and specific driver ID.
* [**GET Latest Stints by Fixture ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stints/get-latest-stints-by-fixture-id): returns the most recent stint per driver for a provided fixture ID.
* [**GET Stints by Fixture ID and Stint Number**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stints/get-stints-by-fixture-id-and-stint-number): returns all drivers' stints for a specific stint 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 stint response returns only the stint number, driver number, and participant ID. Add `?include=details` to get the start and end lap numbers for each stint - the essential data for tyre strategy analysis.

The `details` array returns the start and end lap numbers for the stint. The end lap number is `null` for a driver's current active stint during a live session. Resolve the exact type values via the [Results & Live Data Type Reference](https://docs.sportmonks.com/v3/motorsport-api/welcome/results-and-live-data-type-reference).

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

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

| Use case                                                 | Endpoint to use                           |
| -------------------------------------------------------- | ----------------------------------------- |
| Full tyre strategy overview for all drivers              | GET Stints by Fixture ID                  |
| One driver's complete stint breakdown                    | GET Stints by Fixture ID and Driver ID    |
| Live tyre tracker - current stint per driver             | GET Latest Stints by Fixture ID           |
| All drivers on their second stint (e.g. post-safety car) | GET Stints by Fixture ID and Stint Number |

#### **Full stints vs latest stints**

The full stints endpoint (`/fixtures/FIXTURE_ID/stints`) returns every stint across the race for all drivers. A typical F1 race with 20 drivers making 1-2 stops each produces 40-60 stint records. No pagination - all records returned in one response.

The latest stints endpoint (`/fixtures/FIXTURE_ID/stints/latest`) returns only the **current (most recent) stint per driver**. This is the correct endpoint for live tyre trackers where you want to show the active compound and the lap it was fitted. Pair it with `latestPitstops` to show both the current tyre and how many laps it has been on:

```http
GET /v3/motorsport/livescores?api_token=YOUR_TOKEN&include=latestStints;latestPitstops
```

#### **Working with stint fields**

* **`stint_number`** - the sequential count of stints for a driver in the session. `1` = first stint from race start, `2` = second stint after first pitstop, and so on. Use the by-stint-number endpoint to compare all drivers at the same point in their strategy (e.g. everyone currently on their second stint).
* **`driver_number`** - the driver's race number displayed on the car. 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 driver's current active stint. During a live race a driver on their second stint will have `is_latest: false` on stint 1 and `is_latest: true` on stint 2. Once a race ends, `is_latest: true` marks the final stint of each driver.

#### **Connecting stints to pitstops**

Stints and pitstops are complementary datasets. A driver's pitstop on lap 28 ends their first stint and begins their second. To reconstruct a full strategy view, combine:

* Stints with `?include=details` - for start/end lap numbers and therefore stint length
* Pitstops with `?include=details` - for the lap the stop occurred on and pit duration

Both datasets use the same `driver_number` and `participant_id` fields, making them straightforward to join in your application.

#### **Common requests**

**Full tyre strategy for all drivers with lap ranges:**

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

**Single driver's stint breakdown:**

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

**Live tyre tracker - current stint per driver:**

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

**All drivers currently on their second stint:**

```http
GET /v3/motorsport/fixtures/FIXTURE_ID/stints/stint/2
?api_token=YOUR_TOKEN&include=details;participant
```

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

#### **Related entities**

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

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

#### **Related pages**

* [Fixtures](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/fixtures) - The session a stint belongs to
* [Live](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/live) - Active session data, includes `latestStints` as an include option
* [Pitstops](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/pitstops) - The pit visits that begin and end each stint
* [Laps](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/laps) - Lap timing to correlate with stint start and end laps
* [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/stints.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.
