---
title: "NFL season rosters"
method: GET
path: "/v1/nfl/rosters"
tags: ["nfl"]
---

# NFL season rosters

`GET /v1/nfl/rosters`

## Request

- Base URL: `https://api.bigballsdata.com`
- URL: `https://api.bigballsdata.com/v1/nfl/rosters`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Season rosters for all 32 teams, 2020 through 2026: 21,795 rows.
Keyed on the same gsis-format `player_id` as
/v1/nfl/players/{id}/stats, so joining weekly statistics to a season
roster needs no id reconciliation.

SCOPE: a row is the published snapshot for that SEASON, not a
point-in-time roster for a given week. `status` carries the roster
designation as published (ACT, RES, DEV, CUT, ...). 2026 rows exist and
describe the upcoming season.

Omitting `season` resolves to the newest season present; the resolved
value and whether it was defaulted are echoed in `meta.resolved`.

## Query parameters

- `season` integer
- `team` string
- `position` string
- `status` string
- `player_id` string
- `limit` integer
- `offset` integer

## Response `200`

ok

- object
  - `data` object[]
    - `season` integer
    - `team` string
    - `player_id` string
    - `player_name` string
    - `position` string, nullable
    - `depth_chart_position` string, nullable
    - `jersey_number` integer, nullable
    - `status` string, nullable
    - `years_exp` integer, nullable
  - `pagination` object
    - `total` integer
    - `limit` integer
    - `offset` integer
  - `meta` object
    - `resolved` object
      - `season` integer, nullable
      - `defaulted` boolean

## Other responses

- `400`: invalid query

---

[API](https://skmtc.dev/bigballsdata/apis/big-ball-sports-api.md) · [All operations](https://skmtc.dev/bigballsdata/apis/big-ball-sports-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bigballsdata/apis/big-ball-sports-api/revisions/31fb54ac414e?raw)
