NFL projected_team_snaps API
projected_team_snaps
nfl.projected_team_snapsPre-kickoff projected and post-game realized pace, offensive plays, pass/run playcalling mix, and personnel rates for NFL teams.
GET/api/v1/nfl/projected_team_snapsList projected_team_snaps for NFL
Requires one of:
game_id or season_id + week or season_id + team_id — requests satisfying none of these return 400.Parameters
game_idquerybigintoptionalFilter to a single game.
team_idquerybigintoptionalFilter by team.
season_idquerybigintoptionalFilter to a season by year (e.g., 2025). Defaults to current season.
weekqueryintegeroptionalFilter by NFL week number.
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 1000.
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/projected_team_snaps?game_id=1'Responses
200projected_team_snaps rows matching the declared filter set, wrapped in { projected_team_snaps, 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(33 fields)show schema ▸
| Field | Type | References | Description |
|---|---|---|---|
idkey | bigint | — | Primary Key |
game_id | bigint | — e.g. 141 | |
opponent_team_id | bigint | — e.g. 10 | |
season_id | bigint | — e.g. 2024 | |
team_id | bigint | — e.g. 23 | |
actual_defensive_snaps | integernullable | — | Realized post-game actual defensive plays faced. e.g. 61 |
actual_offensive_snaps | integernullable | — | Realized post-game actual offensive plays executed. e.g. 61 |
actual_pass_attempts | integernullable | — | Realized post-game actual pass attempts. e.g. 30 |
actual_pass_rate | decimalnullable | — | Realized post-game actual pass playcalling rate. e.g. 0.5000 |
actual_rush_attempts | integernullable | — | Realized post-game actual rushing attempts. e.g. 25 |
actual_rush_rate | decimalnullable | — | Realized post-game actual rush playcalling rate. e.g. 0.5000 |
as_of | timestamptz | — | Point in time the projection reflects (UTC). Set when the projection is published; a backfilled row is never later than its write time. e.g. 2026-09-19T21:45:25.265Z |
implied_team_total | decimalnullable | — | Pre-kickoff implied team points based on Vegas spread and total. e.g. 20.50 |
is_home | boolean | — | True if playing at home, false if away. Values:truefalse |
no_huddle_rate | decimalnullable | — | Pre-kickoff projected no-huddle rate percentage. e.g. 0.1000 |
pass_attempts_error | decimalnullable | — | Calibration error: actual_pass_attempts minus projected_pass_attempts. e.g. -3.63 |
pass_oe | decimalnullable | — | Pre-kickoff pass rate over expectation (PROE). e.g. 0.0000 |
projected_defensive_snaps | decimalnullable | — | Pre-kickoff projected team defensive snaps (opponent offensive snaps). e.g. 64.00 |
projected_offensive_snaps | decimal | — | Pre-kickoff projected team offensive plays/snaps. e.g. 62.62 |
projected_pass_attempts | decimal | — | Pre-kickoff projected team pass attempts. e.g. 33.32 |
projected_pass_rate | decimal | — | Pre-kickoff projected pass playcalling percentage (0.0000 - 1.0000). e.g. 0.5825 |
projected_personnel_11_rate | decimalnullable | — | Pre-kickoff projected 11-personnel grouping rate (1 RB, 1 TE, 3 WR). e.g. 0.6500 |
projected_personnel_12_rate | decimalnullable | — | Pre-kickoff projected 12-personnel grouping rate (1 RB, 2 TE, 2 WR). e.g. 0.2200 |
projected_personnel_21_rate | decimalnullable | — | Pre-kickoff projected 21-personnel grouping rate (2 RB, 1 TE, 2 WR). e.g. 0.0800 |
projected_rush_attempts | decimal | — | Pre-kickoff projected team rushing attempts. e.g. 29.69 |
projected_rush_rate | decimal | — | Pre-kickoff projected rush playcalling percentage (0.0000 - 1.0000). e.g. 0.4175 |
rush_attempts_error | decimalnullable | — | Calibration error: actual_rush_attempts minus projected_rush_attempts. e.g. -4.54 |
seconds_per_play | decimalnullable | — | Pre-kickoff projected pace in neutral-game seconds per offensive play. e.g. 27.5 |
snap_error | decimalnullable | — | Calibration error: actual_offensive_snaps minus projected_offensive_snaps. e.g. -3.62 |
source | string | — | SOTA model source version (e.g. STAT_API_SOTA). e.g. STAT_API_SOTA |
vegas_spread | decimalnullable | — | Pre-kickoff consensus closing spread from this team's perspective. e.g. 3.00 |
vegas_total | decimalnullable | — | Pre-kickoff consensus closing over/under game total. e.g. 44.50 |
week | integer | — | NFL regular season week number. e.g. 1 |
GET/api/v1/nfl/projected_team_snaps/{id}Get a single projected_team_snap by id
Parameters
idpathbigintrequiredPrimary key (id) of the projected_team_snap 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/projected_team_snaps/{pk_value}'Responses
200Single projected_team_snap row.application/jsonshow example ▸
404Row not found.
Response Schema(33 fields)show schema ▸
| Field | Type | References | Description |
|---|---|---|---|
idkey | bigint | — | Primary Key |
game_id | bigint | — e.g. 141 | |
opponent_team_id | bigint | — e.g. 10 | |
season_id | bigint | — e.g. 2024 | |
team_id | bigint | — e.g. 23 | |
actual_defensive_snaps | integernullable | — | Realized post-game actual defensive plays faced. e.g. 61 |
actual_offensive_snaps | integernullable | — | Realized post-game actual offensive plays executed. e.g. 61 |
actual_pass_attempts | integernullable | — | Realized post-game actual pass attempts. e.g. 30 |
actual_pass_rate | decimalnullable | — | Realized post-game actual pass playcalling rate. e.g. 0.5000 |
actual_rush_attempts | integernullable | — | Realized post-game actual rushing attempts. e.g. 25 |
actual_rush_rate | decimalnullable | — | Realized post-game actual rush playcalling rate. e.g. 0.5000 |
as_of | timestamptz | — | Point in time the projection reflects (UTC). Set when the projection is published; a backfilled row is never later than its write time. e.g. 2026-09-19T21:45:25.265Z |
implied_team_total | decimalnullable | — | Pre-kickoff implied team points based on Vegas spread and total. e.g. 20.50 |
is_home | boolean | — | True if playing at home, false if away. Values:truefalse |
no_huddle_rate | decimalnullable | — | Pre-kickoff projected no-huddle rate percentage. e.g. 0.1000 |
pass_attempts_error | decimalnullable | — | Calibration error: actual_pass_attempts minus projected_pass_attempts. e.g. -3.63 |
pass_oe | decimalnullable | — | Pre-kickoff pass rate over expectation (PROE). e.g. 0.0000 |
projected_defensive_snaps | decimalnullable | — | Pre-kickoff projected team defensive snaps (opponent offensive snaps). e.g. 64.00 |
projected_offensive_snaps | decimal | — | Pre-kickoff projected team offensive plays/snaps. e.g. 62.62 |
projected_pass_attempts | decimal | — | Pre-kickoff projected team pass attempts. e.g. 33.32 |
projected_pass_rate | decimal | — | Pre-kickoff projected pass playcalling percentage (0.0000 - 1.0000). e.g. 0.5825 |
projected_personnel_11_rate | decimalnullable | — | Pre-kickoff projected 11-personnel grouping rate (1 RB, 1 TE, 3 WR). e.g. 0.6500 |
projected_personnel_12_rate | decimalnullable | — | Pre-kickoff projected 12-personnel grouping rate (1 RB, 2 TE, 2 WR). e.g. 0.2200 |
projected_personnel_21_rate | decimalnullable | — | Pre-kickoff projected 21-personnel grouping rate (2 RB, 1 TE, 2 WR). e.g. 0.0800 |
projected_rush_attempts | decimal | — | Pre-kickoff projected team rushing attempts. e.g. 29.69 |
projected_rush_rate | decimal | — | Pre-kickoff projected rush playcalling percentage (0.0000 - 1.0000). e.g. 0.4175 |
rush_attempts_error | decimalnullable | — | Calibration error: actual_rush_attempts minus projected_rush_attempts. e.g. -4.54 |
seconds_per_play | decimalnullable | — | Pre-kickoff projected pace in neutral-game seconds per offensive play. e.g. 27.5 |
snap_error | decimalnullable | — | Calibration error: actual_offensive_snaps minus projected_offensive_snaps. e.g. -3.62 |
source | string | — | SOTA model source version (e.g. STAT_API_SOTA). e.g. STAT_API_SOTA |
vegas_spread | decimalnullable | — | Pre-kickoff consensus closing spread from this team's perspective. e.g. 3.00 |
vegas_total | decimalnullable | — | Pre-kickoff consensus closing over/under game total. e.g. 44.50 |
week | integer | — | NFL regular season week number. e.g. 1 |