STAT-API

DFS player_stats API

player_statsdfs.player_stats
One row per slate player: the slate context (slate, salary, position) joined to that player's per-game fantasy result for the scoring rule of the slate's setting — total points, the per-category point columns, and the raw stats behind them. NFL and NBA. The fields marked "NBA only" are null on NFL rows; every NFL-only field is null on NBA rows.
GET/api/v1/dfs/player_stats
Requires one of: slate_id or player_id or game_id or slate_date or operator_slate_id — requests satisfying none of these return 400.
Parameters
slate_idquerybigintoptional
Filter to one slate — every player in that slate's pool.
operator_slate_idquerybigintoptional
Operator-side slate identifier (DraftKings contest group ID, FanDuel fixtureListId). Resolves to slate_id.
player_idquerybigintoptional
Filter to a single player across slates.
game_idquerybigintoptional
Filter to the players whose slate rows resolve to one game.
slate_datequerydateoptional
Slate calendar day (YYYY-MM-DD, US Eastern). Range operators support backtesting windows. Range syntax: slate_date__gte=, slate_date__lte=, slate_date__between=.
team_idquerybigintoptional
Filter by the player's team.
scoring_formatquerystringoptional
Scoring format code (classic, showdown, single_game) — e.g. exclude showdown duplicates from a player log.
positionquerystringoptional
Roster position as listed in the slate pool (QB, RB, WR, TE, DST).
operator_idquerybigintoptional
Filter by operator: by numeric id (1 = DraftKings, 2 = FanDuel) or name (draftkings, fanduel).
operatorquerystringoptional
Filter by operator: draftkings, fanduel, yahoo (or numeric operator id).
league_idquerybigintoptional
Filter by league (1 = NFL).
limitqueryintegeroptionaldefault 50
Page size. Defaults to 50; max 5000.
from_idquerybigintoptional
Return 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/dfs/player_stats?slate_id=676551'
Responses
200player_stats rows matching the declared filter set, wrapped in { player_stats, 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/json
Response Schema(74 fields)show schema ▸
FieldTypeReferencesDescription
idkey
bigint—Primary Key
game_id
bigintnullable——
e.g. 42306
league_id
bigint——
e.g. 1
operator_id
bigint——
e.g. 2
player_id
bigint——
e.g. 1183
slate_id
bigint—
e.g. 124469
team_id
bigintnullable——
e.g. 28
blocked_kick_fpts
decimalnullable——
e.g. 0.0000
blocked_kicks
integernullable——
e.g. 0
defense_interception_fpts
decimalnullable——
e.g. 0.0000
defensive_interceptions
integernullable——
e.g. 0
defensive_sacks
floatnullable—Numeric — half-sacks exist. Player value for humans, team value for DST rows.
e.g. 0
defensive_td_fpts
decimalnullable——
e.g. 0.0000
defensive_tds
integernullable——
e.g. 0
extra_point_fpts
decimalnullable——
e.g. 0.0000
extra_pts_made
integernullable——
e.g. 0
fantasy_pts
decimalnullable——
e.g. 0.0000
field_goal_fpts
decimalnullable——
e.g. 0.0000
field_goal_missed_fpts
decimalnullable——
e.g. 0.0000
field_goals_attempted
integernullable——
e.g. 0
field_goals_made
integernullable——
e.g. 0
field_goals_made_0_19
integernullable——
e.g. 0
field_goals_made_20_29
integernullable——
e.g. 0
field_goals_made_30_39
integernullable——
e.g. 0
field_goals_made_40_49
integernullable——
e.g. 0
field_goals_made_50_plus
integernullable——
e.g. 0
fumble_lost_fpts
decimalnullable——
e.g. 0.0000
fumble_recovery_fpts
decimalnullable——
e.g. 0.0000
fumbles_recovered
integernullable——
e.g. 0
interception_fpts
decimalnullable——
e.g. 0.0000
interception_return_tds
integernullable——
e.g. 0
interceptions_thrown
integernullable——
e.g. 0
kick_return_tds
integernullable——
e.g. 0
kick_return_yds
integernullable——
e.g. 0
passing_2pt_conversion_fpts
decimalnullable——
e.g. 0.0000
passing_2pt_conversions
integernullable——
e.g. 0
passing_bonus_fpts
decimalnullable——
e.g. 0.0000
passing_td_fpts
decimalnullable——
e.g. 0.0000
passing_tds
integernullable——
e.g. 0
passing_yds
integernullable——
e.g. 0
passing_yds_fpts
decimalnullable——
e.g. 0.0000
position
string——
Values:WRRBTEMVPQBCPTDKDST
pts_allowed_def
integernullable——
e.g. 16
pts_allowed_dst
integernullable——
e.g. 16
pts_allowed_fpts
decimalnullable——
e.g. 0.0000
punt_return_tds
integernullable——
e.g. 0
punt_return_yds
integernullable——
e.g. 0
receiving_2pt_conversion_fpts
decimalnullable——
e.g. 0.0000
receiving_2pt_conversions
integernullable——
e.g. 0
receiving_bonus_fpts
decimalnullable——
e.g. 0.0000
receiving_fumbles_lost
integernullable——
e.g. 0
receiving_td_fpts
decimalnullable——
e.g. 0.0000
receiving_tds
integernullable——
e.g. 0
receiving_yds
integernullable——
e.g. 0
receiving_yds_fpts
decimalnullable——
e.g. 0.0000
reception_fpts
decimalnullable——
e.g. 0.0000
receptions
integernullable——
e.g. 0
return_td_fpts
decimalnullable——
e.g. 0.0000
return_yds_fpts
decimalnullable——
e.g. 0.0000
rushing_2pt_conversion_fpts
decimalnullable——
e.g. 0.0000
rushing_2pt_conversions
integernullable——
e.g. 0
rushing_bonus_fpts
decimalnullable——
e.g. 0.0000
rushing_fumbles_lost
integernullable——
e.g. 0
rushing_td_fpts
decimalnullable——
e.g. 0.0000
rushing_tds
integernullable——
e.g. 0
rushing_yds
integernullable——
e.g. 0
rushing_yds_fpts
decimalnullable——
e.g. 0.0000
sack_fpts
decimalnullable——
e.g. 0.0000
sack_fumbles_lost
integernullable——
e.g. 0
safeties
integernullable——
e.g. 0
safety_fpts
decimalnullable——
e.g. 0.0000
salary
integer——
e.g. 6000
scoring_format
stringnullable—Operator scoring format code (classic, showdown, single_game); null when the format has no fantasy scoring.
Values:classicsingle_gameshowdown
slate_date
date——
e.g. 2021-08-21
GET/api/v1/dfs/player_stats/{id}
Parameters
idpathbigintrequired
Primary key (id) of the player_stat 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/dfs/player_stats/43189982'
Responses
200Single player_stat row.application/jsonshow example ▸
404Row not found.
Response Schema(74 fields)show schema ▸
FieldTypeReferencesDescription
idkey
bigint—Primary Key
game_id
bigintnullable——
e.g. 42306
league_id
bigint——
e.g. 1
operator_id
bigint——
e.g. 2
player_id
bigint——
e.g. 1183
slate_id
bigint—
e.g. 124469
team_id
bigintnullable——
e.g. 28
blocked_kick_fpts
decimalnullable——
e.g. 0.0000
blocked_kicks
integernullable——
e.g. 0
defense_interception_fpts
decimalnullable——
e.g. 0.0000
defensive_interceptions
integernullable——
e.g. 0
defensive_sacks
floatnullable—Numeric — half-sacks exist. Player value for humans, team value for DST rows.
e.g. 0
defensive_td_fpts
decimalnullable——
e.g. 0.0000
defensive_tds
integernullable——
e.g. 0
extra_point_fpts
decimalnullable——
e.g. 0.0000
extra_pts_made
integernullable——
e.g. 0
fantasy_pts
decimalnullable——
e.g. 0.0000
field_goal_fpts
decimalnullable——
e.g. 0.0000
field_goal_missed_fpts
decimalnullable——
e.g. 0.0000
field_goals_attempted
integernullable——
e.g. 0
field_goals_made
integernullable——
e.g. 0
field_goals_made_0_19
integernullable——
e.g. 0
field_goals_made_20_29
integernullable——
e.g. 0
field_goals_made_30_39
integernullable——
e.g. 0
field_goals_made_40_49
integernullable——
e.g. 0
field_goals_made_50_plus
integernullable——
e.g. 0
fumble_lost_fpts
decimalnullable——
e.g. 0.0000
fumble_recovery_fpts
decimalnullable——
e.g. 0.0000
fumbles_recovered
integernullable——
e.g. 0
interception_fpts
decimalnullable——
e.g. 0.0000
interception_return_tds
integernullable——
e.g. 0
interceptions_thrown
integernullable——
e.g. 0
kick_return_tds
integernullable——
e.g. 0
kick_return_yds
integernullable——
e.g. 0
passing_2pt_conversion_fpts
decimalnullable——
e.g. 0.0000
passing_2pt_conversions
integernullable——
e.g. 0
passing_bonus_fpts
decimalnullable——
e.g. 0.0000
passing_td_fpts
decimalnullable——
e.g. 0.0000
passing_tds
integernullable——
e.g. 0
passing_yds
integernullable——
e.g. 0
passing_yds_fpts
decimalnullable——
e.g. 0.0000
position
string——
Values:WRRBTEMVPQBCPTDKDST
pts_allowed_def
integernullable——
e.g. 16
pts_allowed_dst
integernullable——
e.g. 16
pts_allowed_fpts
decimalnullable——
e.g. 0.0000
punt_return_tds
integernullable——
e.g. 0
punt_return_yds
integernullable——
e.g. 0
receiving_2pt_conversion_fpts
decimalnullable——
e.g. 0.0000
receiving_2pt_conversions
integernullable——
e.g. 0
receiving_bonus_fpts
decimalnullable——
e.g. 0.0000
receiving_fumbles_lost
integernullable——
e.g. 0
receiving_td_fpts
decimalnullable——
e.g. 0.0000
receiving_tds
integernullable——
e.g. 0
receiving_yds
integernullable——
e.g. 0
receiving_yds_fpts
decimalnullable——
e.g. 0.0000
reception_fpts
decimalnullable——
e.g. 0.0000
receptions
integernullable——
e.g. 0
return_td_fpts
decimalnullable——
e.g. 0.0000
return_yds_fpts
decimalnullable——
e.g. 0.0000
rushing_2pt_conversion_fpts
decimalnullable——
e.g. 0.0000
rushing_2pt_conversions
integernullable——
e.g. 0
rushing_bonus_fpts
decimalnullable——
e.g. 0.0000
rushing_fumbles_lost
integernullable——
e.g. 0
rushing_td_fpts
decimalnullable——
e.g. 0.0000
rushing_tds
integernullable——
e.g. 0
rushing_yds
integernullable——
e.g. 0
rushing_yds_fpts
decimalnullable——
e.g. 0.0000
sack_fpts
decimalnullable——
e.g. 0.0000
sack_fumbles_lost
integernullable——
e.g. 0
safeties
integernullable——
e.g. 0
safety_fpts
decimalnullable——
e.g. 0.0000
salary
integer——
e.g. 6000
scoring_format
stringnullable—Operator scoring format code (classic, showdown, single_game); null when the format has no fantasy scoring.
Values:classicsingle_gameshowdown
slate_date
date——
e.g. 2021-08-21