# Stages

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

A **stage** represents a full race weekend within a championship season - for example, the Australian Grand Prix or the Chinese Grand Prix. Each stage contains multiple [fixtures](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/fixtures) (individual sessions such as Practice 1, Qualifying, and the Race itself).

Use the Stages endpoints to retrieve race weekend details, list all weekends in a season, or search for a specific grand prix.

> **Stages vs Fixtures:** A Stage is the race weekend as a whole. A Fixture is a single on-track session within that weekend. If you are looking for session-level data (results, lap times, pitstops), start with the [Fixtures endpoints](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/fixtures). See the [Data Model](https://docs.sportmonks.com/v3/motorsport-api/welcome/data-model) for the full hierarchy.

#### **Available endpoints**

* [**GET All Stages**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stages/get-all-stages): returns all stages available in the Motorsport API.
* [**GET Stage by ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stages/get-stage-by-id): returns a single stage by its ID.
* [**GET Stages by Season ID**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stages/get-stages-by-season-id): returns all stages linked to a provided season ID.
* [**GET Stages by Search**](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/stages/get-stages-by-search): returns stages that match your search query.

#### **Include options**

You can enrich stage responses using `include`:

[`sport`](https://docs.sportmonks.com/v3/core-api/entities/core#sport), [`league`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/league), [`season`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/season), [`type`](https://docs.sportmonks.com/v3/core-api/entities/core#type), [`fixtures`](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/entities/fixture)

{% hint style="info" %}
&#x20;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)&#x20;
{% endhint %}

#### **Using `fixtures`**

Adding `?include=fixtures` returns all sessions for a stage in a single call - Practice 1 through to the Race. This is the most efficient way to build a race weekend schedule view. You can nest further includes on the returned fixtures up to a total include depth of 4:

```
GET /v3/motorsport/stages/STAGE_ID?api_token=YOUR_TOKEN&include=fixtures;fixtures.venue;fixtures.state
```

#### **Using `type`**

The `type_id` field on a stage indicates the stage type. Resolve it with `?include=type` to get the human-readable label. For Formula 1 race weekends this will typically return `"Race"` or `"Sprint"`, allowing you to distinguish standard weekends from Sprint weekends programmatically.

**Working with stage fields**

* **`sort_order`** - the calendar position of the stage within the season (1 = first race weekend, 2 = second, etc.). Use this field to order race weekends correctly when displaying a season calendar. Do not rely on `starting_at` alone for ordering, as dates can occasionally be updated.
* **`starting_at` / `ending_at`** - date only (`YYYY-MM-DD`), not datetime. A race weekend typically runs Thursday to Sunday. For session-level start times (with time of day), use `?include=fixtures` and read `starting_at` on the individual fixture objects.
* **`finished`** - `true` once all sessions in the stage are complete. Useful for filtering between upcoming, in-progress, and completed race weekends.
* **`is_current`** - `true` for the stage that is currently active or most recently completed. Only one stage carries this flag at a time.
* **`games_in_current_week`** and **`tie_breaker_rule_id`** - not used in the Motorsport API. These fields are inherited from the shared v3 response structure and can be safely ignored.

#### **Common requests**

**All race weekends in a season:**

```
GET /v3/motorsport/stages/seasons/SEASON_ID?api_token=YOUR_TOKEN
```

**Single race weekend with all its sessions:**

```
GET /v3/motorsport/stages/STAGE_ID?api_token=YOUR_TOKEN&include=fixtures;fixtures.state
```

**All upcoming race weekends (not yet finished):**

```
GET /v3/motorsport/stages/seasons/SEASON_ID?api_token=YOUR_TOKEN&filters=stageFinished:false
```

**Search for a specific grand prix by name:**

```
GET /v3/motorsport/stages/search/australian?api_token=YOUR_TOKEN
```

{% hint style="info" %}
&#x20;To retrieve all stages and their fixtures in a single call, use the [Schedules endpoint](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/schedules) instead. It returns the full season structure - stages, fixtures, and venues - in one response and is the most efficient option for building season calendars.&#x20;
{% endhint %}

#### **Related entities**

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

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

#### **Related pages**

* [Data Model](https://docs.sportmonks.com/v3/motorsport-api/welcome/data-model) - How stages fit into the League > Season > Stage > Fixture hierarchy
* [Fixtures](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/fixtures) - Individual sessions within a stage
* [Seasons](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/seasons) - The season a stage belongs to
* [Schedules](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/schedules) - Full season stage and fixture list in one call
* [Venues](https://docs.sportmonks.com/v3/motorsport-api/endpoints-and-entities/endpoints/venues) - The circuit a stage is held at


---

# 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/stages.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.
