NFL game_team_rosters API
game_team_rosters
nfl.game_team_rostersThe gameday roster for each NFL game — every player who suited up that day, who started, who was inactive, and at what position.
GET/api/v1/nfl/game_team_rostersList game_team_rosters for NFL
Requires one of:
game_id — requests satisfying none of these return 400.Parameters
game_idquerybigintoptionalFilter to a single game.
team_idquerybigintoptionalFilter by team.
player_idquerybigintoptionalFilter to a single player.
positionquerystringoptionalFilter by player position. Values: C, CB, DB, DE, DL, DT, FB, FS, G, H, ILB, K, LB, LILB, LOLB, LOT, LS, MLB, NT, OL, OLB, OT, P, PK, PR, QB, RB, RILB, ROT, S, SAF, T, TE, WR.
statusquerystringoptionalFilter by game-roster status (readable single-word vocabulary; PracticeSquadReleased covers the league TRC/TRD transaction codes). Values: Active, Cut, Exempt, ExemptInternational, Inactive, NonFootballInjury, PhysicallyUnableToPerform, PracticeSquad, PracticeSquadReleased, ReleasedFromInjuredReserve, Reserve, RestrictedFreeAgent, Retired, Suspended, UnrestrictedFreeAgent, Waived.
depth_orderqueryintegeroptionalFilter by depth-chart rank (e.g., 1 for starters). Range syntax: depth_order__lte=.
formationquerystringoptionalFilter by unit/formation. Values: offense, defense, special_teams.
injury_statusquerystringoptionalFilter by injury status designation. Values: Active, Doubtful, Injured Reserve, Note, Out, Questionable, Unknown.
modequerystringoptionaldefault preTime wall. `pre` (default): each value as it stood at its game's kickoff; post-game fields are null. `full`: the latest value before week end (the first Tuesday 04:00 ET after the game), post-game fields included. See the Data timing guide. Values: pre, full.
limitqueryintegeroptionaldefault 50Page size. Defaults to 50; 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/game_team_rosters?game_id=1'Responses
200game_team_rosters rows matching the declared filter set, wrapped in { game_team_rosters, 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(12 fields)show schema ▸
| Field | Type | References | Description |
|---|---|---|---|
idkey | bigint | — | Primary Key |
game_id | bigint | — e.g. 120 | |
player_id | bigint | — e.g. 19 | |
team_id | bigint | — e.g. 32 | |
comment | stringnullable | — | Optional note from the gameday roster report (e.g., reason for inactive). e.g. Knee |
depth_order | integernullable | — | Depth-chart rank at this position for this game (1 = starter, 2 = backup, etc.). e.g. 1 |
depth_position | stringnullable | — | Position slot on the depth chart for this game (e.g. QB, RB, WR, LT, CB). e.g. WR |
formation | stringnullable | — | Formation unit this slot belongs to (offense, defense, special_teams). Values:offensedefensespecial_teams |
injury_status | stringnullable | — | Final game injury report designation as of kickoff lock (e.g. Questionable, Doubtful, Out, or NULL if uninjured). Values:QuestionableOutDoubtfulNote |
position | stringnullable | — | Position the player suited up at for this game. Values:DLOLDBWRLBQBLSTEKPRB |
starter | boolean | — | True if the player started this game. Values:truefalse |
status | stringnullable | — | Roster status for the game, readable single-word vocabulary (`Active`, `Inactive`, `PracticeSquad`, `Reserve`, `Cut`, `Retired`, `Exempt`, `PracticeSquadReleased`). Values:ActiveReservePracticeSquadInactiveRetiredCutExempt |
GET/api/v1/nfl/game_team_rosters/{id}Get a single game_team_roster by id
Parameters
idpathbigintrequiredPrimary key (id) of the game_team_roster row.
modequerystringoptionaldefault preTime wall. `pre` (default): each value as it stood at its game's kickoff; post-game fields are null. `full`: the latest value before week end (the first Tuesday 04:00 ET after the game), post-game fields included. See the Data timing guide. Values: pre, full.
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/game_team_rosters/{pk_value}'Responses
200Single game_team_roster row.application/jsonshow example ▸
404Row not found.
Response Schema(12 fields)show schema ▸
| Field | Type | References | Description |
|---|---|---|---|
idkey | bigint | — | Primary Key |
game_id | bigint | — e.g. 120 | |
player_id | bigint | — e.g. 19 | |
team_id | bigint | — e.g. 32 | |
comment | stringnullable | — | Optional note from the gameday roster report (e.g., reason for inactive). e.g. Knee |
depth_order | integernullable | — | Depth-chart rank at this position for this game (1 = starter, 2 = backup, etc.). e.g. 1 |
depth_position | stringnullable | — | Position slot on the depth chart for this game (e.g. QB, RB, WR, LT, CB). e.g. WR |
formation | stringnullable | — | Formation unit this slot belongs to (offense, defense, special_teams). Values:offensedefensespecial_teams |
injury_status | stringnullable | — | Final game injury report designation as of kickoff lock (e.g. Questionable, Doubtful, Out, or NULL if uninjured). Values:QuestionableOutDoubtfulNote |
position | stringnullable | — | Position the player suited up at for this game. Values:DLOLDBWRLBQBLSTEKPRB |
starter | boolean | — | True if the player started this game. Values:truefalse |
status | stringnullable | — | Roster status for the game, readable single-word vocabulary (`Active`, `Inactive`, `PracticeSquad`, `Reserve`, `Cut`, `Retired`, `Exempt`, `PracticeSquadReleased`). Values:ActiveReservePracticeSquadInactiveRetiredCutExempt |