NFL depth_charts API
depth_charts
nfl.depth_chartsOne player's depth-chart slot for a given team in a given NFL game — position, depth order (starter, backup, …), roster status, and game context. Exactly one active depth chart per game.
GET/api/v1/nfl/depth_chartsList depth_charts for NFL
Requires one of:
game_id or team_id — requests satisfying none of these return 400.Parameters
game_idquerybigintoptionalFilter to a single game.
team_idquerybigintoptionalFilter by team.
season_idquerybigintoptionalFilter to a single season.
weekqueryintegeroptionalFilter by week of the season.
player_idquerybigintoptionalFilter to a single player.
positionquerystringoptionalFilter by player position. Values: C, CB, DB, DE, DL, DT, FB, FS, G, ILB, K, LB, LS, MLB, NT, OLB, P, QB, RB, S, SAF, SS, T, TE, WR.
limitqueryintegeroptionaldefault 100Page size. Defaults to 100; max 5000.
from_idquerybigintoptionalReturn rows with id strictly greater than this value; page using the previous response's `next_from_id`. Omit on the first page.
Restores the documented defaults (trial keys only accept the unchanged defaults).
Request
curl -sS --compressed \
-H 'Authorization: Bearer YOUR_API_KEY' \
'https://api.stat-api.com/api/v1/nfl/depth_charts?game_id=1'Responses
200depth_charts rows matching the declared filter set, wrapped in { depth_charts, limit, next_from_id }. next_from_id is the last row's id on a full page — pass it back via ?from_id= to walk the full result; null marks the terminal page.application/jsonshow example ▸
400No declared filter set was satisfied — response body matches MissingRequiredFiltersError; pick one combo from the accepted-sets hint and resend.
application/jsonResponse Schema(14 fields)show schema ▸
| Field | Type | References | Description |
|---|---|---|---|
idkey | bigint | — | Primary Key |
game_id | bigint | FK to nfl.games — the game this depth chart is associated with. e.g. 84 | |
player_id | bigint | FK to nfl.players — the player occupying this depth-chart slot. e.g. 63 | |
season_id | bigint | FK to nfl.seasons — the season containing this game. e.g. 2024 | |
team_id | bigint | FK to nfl.teams — the team whose depth chart this row belongs to. e.g. 32 | |
depth_order | integernullable | — | Depth-chart rank at this position — 1 for the starter, 2 for the primary backup, etc. NFL depth charts typically run 1–5 deep at each position. e.g. 1 |
depth_position | string | — | Position slot on the depth chart, which can differ from the player's primary position when they're listed at a secondary position (e.g., a player whose primary position is T may also appear on the depth chart at G). Values:WRQBTECBDTLSRBDEKPCOLBFBFSNTILBSSMLB |
depth_team | stringnullable | — | Sub-team designation within the depth chart when present (e.g., a formation-specific team grouping). Sparse — typically NULL. e.g. — (all-null in sample) |
formation | stringnullable | — | Formation unit this slot belongs to (e.g., OFF, DEF, ST). Sparse — typically NULL. Values:offensedefensespecial_teams |
game_type | string | — | Phase of the season: REG (regular season), WC (Wild Card), DIV (Divisional), CON (Conference Championship), SB (Super Bowl). Values:REGWCDIVCONSB |
jersey_number | integernullable | — | Player's jersey number on the team for this game (nullable — populated when the depth chart includes uniform numbers). e.g. — (all-null in sample) |
position | string | — | Player's listed position abbreviation (e.g., QB, RB, WR, T, DT, CB, MLB, K, P). Values:WRDLDBQBTERBLSKPLBOL |
status | stringnullable | — | NFL roster status code at the time of the chart: ACT (active), DEV (practice squad / developmental), INA (inactive), RES (reserve / IR), EXE (exempt), CUT (released), TRC (traded — pending), TRD (traded), RET (retired), E01 (other transactional status). e.g. — (all-null in sample) |
week | integer | — | NFL week number within the season (1-18 regular season; postseason weeks use higher numbers per league convention). e.g. 3 |
GET/api/v1/nfl/depth_charts/{id}Get a single depth_chart by id
Parameters
idpathbigintrequiredPrimary key (id) of the depth_chart row.
Restores the documented defaults (trial keys only accept the unchanged defaults).
Request
curl -sS --compressed \
-H 'Authorization: Bearer YOUR_API_KEY' \
'https://api.stat-api.com/api/v1/nfl/depth_charts/{pk_value}'Responses
200Single depth_chart row.application/jsonshow example ▸
404Row not found.
Response Schema(14 fields)show schema ▸
| Field | Type | References | Description |
|---|---|---|---|
idkey | bigint | — | Primary Key |
game_id | bigint | FK to nfl.games — the game this depth chart is associated with. e.g. 84 | |
player_id | bigint | FK to nfl.players — the player occupying this depth-chart slot. e.g. 63 | |
season_id | bigint | FK to nfl.seasons — the season containing this game. e.g. 2024 | |
team_id | bigint | FK to nfl.teams — the team whose depth chart this row belongs to. e.g. 32 | |
depth_order | integernullable | — | Depth-chart rank at this position — 1 for the starter, 2 for the primary backup, etc. NFL depth charts typically run 1–5 deep at each position. e.g. 1 |
depth_position | string | — | Position slot on the depth chart, which can differ from the player's primary position when they're listed at a secondary position (e.g., a player whose primary position is T may also appear on the depth chart at G). Values:WRQBTECBDTLSRBDEKPCOLBFBFSNTILBSSMLB |
depth_team | stringnullable | — | Sub-team designation within the depth chart when present (e.g., a formation-specific team grouping). Sparse — typically NULL. e.g. — (all-null in sample) |
formation | stringnullable | — | Formation unit this slot belongs to (e.g., OFF, DEF, ST). Sparse — typically NULL. Values:offensedefensespecial_teams |
game_type | string | — | Phase of the season: REG (regular season), WC (Wild Card), DIV (Divisional), CON (Conference Championship), SB (Super Bowl). Values:REGWCDIVCONSB |
jersey_number | integernullable | — | Player's jersey number on the team for this game (nullable — populated when the depth chart includes uniform numbers). e.g. — (all-null in sample) |
position | string | — | Player's listed position abbreviation (e.g., QB, RB, WR, T, DT, CB, MLB, K, P). Values:WRDLDBQBTERBLSKPLBOL |
status | stringnullable | — | NFL roster status code at the time of the chart: ACT (active), DEV (practice squad / developmental), INA (inactive), RES (reserve / IR), EXE (exempt), CUT (released), TRC (traded — pending), TRD (traded), RET (retired), E01 (other transactional status). e.g. — (all-null in sample) |
week | integer | — | NFL week number within the season (1-18 regular season; postseason weeks use higher numbers per league convention). e.g. 3 |