NHL season_player_stats API
season_player_stats
nhl.season_player_statsSeason totals for each NHL player — goals, assists, points, plus-minus, shots on goal, hits, blocks, penalty minutes, power-play and short-handed contributions, plus goaltender stats (wins, saves, shutouts, save percentage, goals-against average).
⚠️ This endpoint is documented but not yet live. Calls return
503 until data is wired in.GET/api/v1/nhl/season_player_statsList season_player_stats for NHL
Requires one of:
season_id or player_id — requests satisfying none of these return 400.Parameters
season_idquerybigintoptionalFilter to a single season. Defaults to the current season.
player_idquerybigintoptionalFilter to a single player.
team_idquerybigintoptionalFilter by team.
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/nhl/season_player_stats?season_id=2026'Responses
200season_player_stats rows matching the declared filter set, wrapped in { season_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/json503Coming soon — handler returns 503 until data is wired in.
Response Schema(62 fields)show schema ▸
| Field | Type | References | Description |
|---|---|---|---|
idkey | bigint | — | Primary Key |
player_id | bigint | — e.g. — (all-null in sample) | |
season_id | bigint | — e.g. — (all-null in sample) | |
team_id | bigintnullable | — e.g. — (all-null in sample) | |
assists | integer | — | — e.g. — (all-null in sample) |
assists_per_game | decimal | — | — e.g. — (all-null in sample) |
blocked_shots | integer | — | — e.g. — (all-null in sample) |
empty_net_goals | integer | — | — e.g. — (all-null in sample) |
even_strength_assists | integer | — | — e.g. — (all-null in sample) |
even_strength_goals | integer | — | — e.g. — (all-null in sample) |
even_strength_time_on_ice_seconds | integer | — | — e.g. — (all-null in sample) |
faceoff_percentage | decimal | — | — e.g. — (all-null in sample) |
faceoffs_lost | integer | — | — e.g. — (all-null in sample) |
faceoffs_won | integer | — | — e.g. — (all-null in sample) |
game_winning_goals | integer | — | — e.g. — (all-null in sample) |
games_played | integer | — | — e.g. — (all-null in sample) |
games_started | integer | — | — e.g. — (all-null in sample) |
giveaways | integer | — | — e.g. — (all-null in sample) |
goals | integer | — | — e.g. — (all-null in sample) |
goals_against | integer | — | — e.g. — (all-null in sample) |
goals_against_average | decimal | — | — e.g. — (all-null in sample) |
goals_per_game | decimal | — | — e.g. — (all-null in sample) |
hat_tricks | integer | — | — e.g. — (all-null in sample) |
hits | integer | — | — e.g. — (all-null in sample) |
losses | integer | — | — e.g. — (all-null in sample) |
major_penalties | integer | — | — e.g. — (all-null in sample) |
minor_penalties | integer | — | — e.g. — (all-null in sample) |
minutes_played | integer | — | — e.g. — (all-null in sample) |
overtime_goals | integer | — | — e.g. — (all-null in sample) |
overtime_losses | integer | — | — e.g. — (all-null in sample) |
penalties | integer | — | — e.g. — (all-null in sample) |
penalty_minutes | integer | — | — e.g. — (all-null in sample) |
plus_minus | integer | — | — e.g. — (all-null in sample) |
position | stringnullable | — | — e.g. — (all-null in sample) |
power_play_assists | integer | — | — e.g. — (all-null in sample) |
power_play_goals | integer | — | — e.g. — (all-null in sample) |
power_play_pts | integer | — | — e.g. — (all-null in sample) |
power_play_time_on_ice_seconds | integer | — | — e.g. — (all-null in sample) |
pts | integer | — | — e.g. — (all-null in sample) |
pts_per_game | decimal | — | — e.g. — (all-null in sample) |
save_percentage | decimal | — | — e.g. — (all-null in sample) |
saves | integer | — | — e.g. — (all-null in sample) |
season_type | string | — | Canonical season phase (text). Was integer 1/2/3 before the 2026-06-29 normalization. e.g. — (all-null in sample) |
shifts | integer | — | — e.g. — (all-null in sample) |
shooting_percentage | decimal | — | — e.g. — (all-null in sample) |
shootout_attempts | integer | — | — e.g. — (all-null in sample) |
shootout_goals | integer | — | — e.g. — (all-null in sample) |
shootout_goals_against | integer | — | — e.g. — (all-null in sample) |
shootout_misses | integer | — | — e.g. — (all-null in sample) |
shootout_saves | integer | — | — e.g. — (all-null in sample) |
short_handed_assists | integer | — | — e.g. — (all-null in sample) |
short_handed_goals | integer | — | — e.g. — (all-null in sample) |
short_handed_pts | integer | — | — e.g. — (all-null in sample) |
short_handed_time_on_ice_seconds | integer | — | — e.g. — (all-null in sample) |
shots | integer | — | — e.g. — (all-null in sample) |
shots_against | integer | — | — e.g. — (all-null in sample) |
shots_on_goal | integer | — | — e.g. — (all-null in sample) |
shutouts | integer | — | — e.g. — (all-null in sample) |
takeaways | integer | — | — e.g. — (all-null in sample) |
time_on_ice_per_game | decimal | — | — e.g. — (all-null in sample) |
time_on_ice_seconds | integer | — | — e.g. — (all-null in sample) |
wins | integer | — | — e.g. — (all-null in sample) |
GET/api/v1/nhl/season_player_stats/{id}Get a single season_player_stat by id
Parameters
idpathbigintrequiredPrimary key (id) of the season_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/nhl/season_player_stats/{pk_value}'Responses
200Single season_player_stat row.application/jsonshow example ▸
404Row not found.
503Coming soon — handler returns 503 until data is wired in.
Response Schema(62 fields)show schema ▸
| Field | Type | References | Description |
|---|---|---|---|
idkey | bigint | — | Primary Key |
player_id | bigint | — e.g. — (all-null in sample) | |
season_id | bigint | — e.g. — (all-null in sample) | |
team_id | bigintnullable | — e.g. — (all-null in sample) | |
assists | integer | — | — e.g. — (all-null in sample) |
assists_per_game | decimal | — | — e.g. — (all-null in sample) |
blocked_shots | integer | — | — e.g. — (all-null in sample) |
empty_net_goals | integer | — | — e.g. — (all-null in sample) |
even_strength_assists | integer | — | — e.g. — (all-null in sample) |
even_strength_goals | integer | — | — e.g. — (all-null in sample) |
even_strength_time_on_ice_seconds | integer | — | — e.g. — (all-null in sample) |
faceoff_percentage | decimal | — | — e.g. — (all-null in sample) |
faceoffs_lost | integer | — | — e.g. — (all-null in sample) |
faceoffs_won | integer | — | — e.g. — (all-null in sample) |
game_winning_goals | integer | — | — e.g. — (all-null in sample) |
games_played | integer | — | — e.g. — (all-null in sample) |
games_started | integer | — | — e.g. — (all-null in sample) |
giveaways | integer | — | — e.g. — (all-null in sample) |
goals | integer | — | — e.g. — (all-null in sample) |
goals_against | integer | — | — e.g. — (all-null in sample) |
goals_against_average | decimal | — | — e.g. — (all-null in sample) |
goals_per_game | decimal | — | — e.g. — (all-null in sample) |
hat_tricks | integer | — | — e.g. — (all-null in sample) |
hits | integer | — | — e.g. — (all-null in sample) |
losses | integer | — | — e.g. — (all-null in sample) |
major_penalties | integer | — | — e.g. — (all-null in sample) |
minor_penalties | integer | — | — e.g. — (all-null in sample) |
minutes_played | integer | — | — e.g. — (all-null in sample) |
overtime_goals | integer | — | — e.g. — (all-null in sample) |
overtime_losses | integer | — | — e.g. — (all-null in sample) |
penalties | integer | — | — e.g. — (all-null in sample) |
penalty_minutes | integer | — | — e.g. — (all-null in sample) |
plus_minus | integer | — | — e.g. — (all-null in sample) |
position | stringnullable | — | — e.g. — (all-null in sample) |
power_play_assists | integer | — | — e.g. — (all-null in sample) |
power_play_goals | integer | — | — e.g. — (all-null in sample) |
power_play_pts | integer | — | — e.g. — (all-null in sample) |
power_play_time_on_ice_seconds | integer | — | — e.g. — (all-null in sample) |
pts | integer | — | — e.g. — (all-null in sample) |
pts_per_game | decimal | — | — e.g. — (all-null in sample) |
save_percentage | decimal | — | — e.g. — (all-null in sample) |
saves | integer | — | — e.g. — (all-null in sample) |
season_type | string | — | Canonical season phase (text). Was integer 1/2/3 before the 2026-06-29 normalization. e.g. — (all-null in sample) |
shifts | integer | — | — e.g. — (all-null in sample) |
shooting_percentage | decimal | — | — e.g. — (all-null in sample) |
shootout_attempts | integer | — | — e.g. — (all-null in sample) |
shootout_goals | integer | — | — e.g. — (all-null in sample) |
shootout_goals_against | integer | — | — e.g. — (all-null in sample) |
shootout_misses | integer | — | — e.g. — (all-null in sample) |
shootout_saves | integer | — | — e.g. — (all-null in sample) |
short_handed_assists | integer | — | — e.g. — (all-null in sample) |
short_handed_goals | integer | — | — e.g. — (all-null in sample) |
short_handed_pts | integer | — | — e.g. — (all-null in sample) |
short_handed_time_on_ice_seconds | integer | — | — e.g. — (all-null in sample) |
shots | integer | — | — e.g. — (all-null in sample) |
shots_against | integer | — | — e.g. — (all-null in sample) |
shots_on_goal | integer | — | — e.g. — (all-null in sample) |
shutouts | integer | — | — e.g. — (all-null in sample) |
takeaways | integer | — | — e.g. — (all-null in sample) |
time_on_ice_per_game | decimal | — | — e.g. — (all-null in sample) |
time_on_ice_seconds | integer | — | — e.g. — (all-null in sample) |
wins | integer | — | — e.g. — (all-null in sample) |