---
title: "List game_drives for NFL"
method: GET
path: "/api/v1/nfl/game_drives"
tags: ["NFL"]
---

# List game_drives for NFL

`GET /api/v1/nfl/game_drives`

## Request

- Base URL: `https://api.stat-api.com`
- URL: `https://api.stat-api.com/api/v1/nfl/game_drives`
- Auth: HTTP bearer

## Query parameters

- `game_id` integer
- `possession_team_id` integer
- `limit` integer
- `from_id` integer
- `format` 'json' | 'csv'

## Response `200`

game_drives rows matching the declared filter set.

- NFLGameDrivesListResponse
  - `game_drives` NFLGameDrives[], required
    - `drive_number` integer, required: Drive sequence number in game (1-indexed)
    - `end_transition` string, nullable: How possession ended (PUNT, TOUCHDOWN, TURNOVER, etc.)
    - `end_yard_line` string, nullable: Ending field position (e.g., "OPP 10")
    - `ended_with_score` boolean, required: Drive resulted in points
    - `first_downs` integer, nullable: First downs gained
    - `first_play_id` integer, required: play_id of first play in drive
    - `fixed_drive` integer, required: Corrected drive number
    - `game_clock_end` string, nullable: Game clock at drive end (mm:ss)
    - `game_clock_start` string, nullable: Game clock at drive start (mm:ss)
    - `game_id` integer, required
    - `id` integer, required: Primary Key
    - `inside_20` boolean, required: Drive reached red zone
    - `last_play_id` integer, required: play_id of last play in drive
    - `play_count` integer, nullable: Number of plays in drive
    - `possession_team_id` integer, required: Team with possession (FK to teams)
    - `quarter_end` integer, nullable: Quarter when drive ended
    - `quarter_start` integer, nullable: Quarter when drive started
    - `result` string, nullable: Drive outcome (Touchdown, Field goal, Punt, Turnover, etc.)
    - `start_transition` string, nullable: How possession was gained (KICKOFF, PUNT, TURNOVER, etc.)
    - `start_yard_line` string, nullable: Starting field position (e.g., "KC 25")
    - `time_of_possession` string, nullable: Drive duration (mm:ss format)
    - `yds_penalized` integer, nullable: Penalty yards on drive
  - `has_more` boolean, required: True when a full page came back, so more rows can exist.
  - `limit` integer, required: Page size used for this response.
  - `next_from_id` integer, nullable, required: Pass this as `from_id` on the next request to page forward. `null` on the terminal page, and on a first page requested without `from_id` (that page uses the default sort): to walk every row, start with `from_id=0`.

## Other responses

- `400`: No declared filter set was satisfied by the request — see `accepted` in the body for the valid combinations.

---

[API](https://skmtc.dev/stat-api/apis/sports-db-public-api.md) · [All operations](https://skmtc.dev/stat-api/apis/sports-db-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/stat-api/apis/sports-db-public-api/revisions/23b66b957723?raw)
