STAT-API

NHL Data Dictionary

Main

nhl.seasons8 fieldsendpoints →

Each NHL season — preseason exhibitions, the 82-game regular season, and the Stanley Cup Playoffs (Wild Card, Divisional, Conference Finals, Stanley Cup Finals).

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
league_idstringnullable——Official NHL season identifier
end_datetimestamptznullable———
post_season_start_datetimestamptznullable———
regular_season_start_datetimestamptznullable———
stanley_cup_finals_datetimestamptznullable———
start_datetimestamptz———
start_yearinteger———
nhl.teams18 fields· 1 refsendpoints →

The 32 NHL franchises, organized into the Eastern and Western Conferences with two divisions each (Atlantic, Metropolitan, Central, Pacific).

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
arena_idbigintnullable→ nhl.arenas——
league_team_idintegernullable——Official NHL team ID from api-web.nhle.com
abbreviationstring———
activeboolean———
citystring———
conferencestring———
divisionstring———
full_namestring———
head_coachstringnullable———
logo_urlstringnullable——URL to team logo image
namestring———
primary_colorstringnullable———
quaternary_colorstringnullable———
secondary_colorstringnullable———
tertiary_colorstringnullable———
wikipedia_logo_urlstringnullable———
wikipedia_wordmark_urlstringnullable———
nhl.players35 fields· 2 refsendpoints →

Every individual who has played in the NHL — current rosters, AHL call-ups, free agents, and retired players, with their shooting hand, position, and home country.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
draft_team_idbigintnullable→ nhl.teams——
league_idstringnullable——Official NHL player identifier
league_player_idinteger——Official NHL player ID from api-web.nhle.com
team_idbigintnullable→ nhl.teams——
birth_citystringnullable———
birth_countrystringnullable———
birth_datedatenullable———
birth_statestringnullable———
catchesstringnullable———
collegestringnullable———
draft_overall_pickintegernullable———
draft_pickintegernullable———
draft_roundintegernullable———
draft_yearintegernullable———
experienceintegernullable——Years of NHL experience
first_namestring———
full_namestring———
heightintegernullable——Height in inches
injury_body_partstringnullable———
injury_notesstringnullable———
injury_start_datetimestamptznullable———
injury_statusstringnullable———
jerseystringnullable———
last_namestring———
nationalitystringnullable———
photo_urlstringnullable——URL to player headshot image
position_categorystringnullable———
primary_positionstring———
rookie_yearintegernullable———
roster_statusstringnullable——Canonical roster status, shared across leagues. NHL source granularity is coarse: "active" (on a current api-web team roster), "free_agent" (no team), "inactive" (not currently rostered); injured_reserve where derivable. The "on a team now" set is {active, injured_reserve}.
shootsstringnullable———
weightintegernullable——Weight in pounds
youth_leaguestringnullable———
youth_teamstringnullable———
nhl.games35 fields· 4 refsendpoints →

Every scheduled and played NHL game — preseason, the 82-game regular season, and the four-round Stanley Cup Playoffs through the Stanley Cup Final.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
arena_idbigintnullable→ nhl.arenas——
away_team_idbigint→ nhl.teams——
home_team_idbigint→ nhl.teams——
league_game_idintegernullable——Official NHL game ID from api-web.nhle.com
league_idstringnullable——Official NHL game identifier
season_idbigint→ nhl.seasons——
attendanceintegernullable———
away_team_scoreintegernullable———
away_team_score_overtimeintegernullable———
away_team_score_period1integernullable———
away_team_score_period2integernullable———
away_team_score_period3integernullable———
away_team_series_winsintegernullable———
channelstringnullable———
dayinteger——Calendar day as a YYYYMMDD integer (e.g. 20240915), US Eastern.
game_timetimestamptz——Scheduled puck drop (timezone-aware).
home_team_scoreintegernullable———
home_team_score_overtimeintegernullable———
home_team_score_period1integernullable———
home_team_score_period2integernullable———
home_team_score_period3integernullable———
home_team_series_winsintegernullable———
is_overtimeboolean———
is_shootoutboolean———
last_playstringnullable———
neutral_siteboolean———
overtime_periodsintegernullable———
periodstringnullable——Current period (1, 2, 3, OT, SO, Final)
playoff_roundstringnullable——First Round, Second Round, Conference Finals, Stanley Cup Final
season_typestring——Canonical season phase (text). Was integer 1/2/3/4 before the 2026-06-29 normalization.
series_game_numberintegernullable———
statusstring———
time_remaining_minutesintegernullable———
time_remaining_secondsintegernullable———

Plays

nhl.penalties12 fields· 4 refsendpoints →

Every penalty assessed in every NHL game — the player penalized, the infraction (hooking, tripping, slashing, etc.), the minutes assessed (2-minute minor, 4-minute double minor, 5-minute major, game misconduct, match penalty), and the resulting power play.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
drawn_by_player_idbigintnullable→ nhl.players——
game_idbigint→ nhl.games——
penalty_idinteger———
player_idbigintnullable→ nhl.players——
team_idbigint→ nhl.teams——
descriptionstringnullable———
is_bench_penaltyboolean———
penalty_minutesinteger———
penalty_typestring———
period_numberinteger———
time_remainingstring——Time remaining in period (MM:SS)
nhl.periods8 fields· 1 refsendpoints →

Per-period scores for every NHL game — the three regulation periods plus any overtime and the shootout, with the away and home goals in each. (Shots and penalties per period are not carried here.)

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
game_idbigint→ nhl.games——
league_game_idinteger——Official NHL game ID from api-web.nhle.com (matches nhl.games.league_game_id).
period_idinteger———
away_team_scoreinteger———
home_team_scoreinteger———
namestring——1, 2, 3, OT, OT2, SO
period_numberinteger———
nhl.scoring_plays13 fields· 5 refsendpoints →

Every goal scored in every NHL game — the scorer, the assists, the goaltender beaten, the strength (even strength, power play, short-handed), and the score state when the goal went in.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
game_idbigint→ nhl.games——
primary_assist_player_idbigintnullable→ nhl.players——
scored_by_player_idbigintnullable→ nhl.players——
scoring_play_idinteger———
secondary_assist_player_idbigintnullable→ nhl.players——
team_idbigint→ nhl.teams——
away_team_scoreinteger———
descriptionstringnullable———
goal_typestringnullable———
home_team_scoreinteger———
period_numberinteger———
time_remainingstring——Time remaining in period (MM:SS)

Stats

nhl.operator_team_lookups6 fields· 2 refsendpoints →

How each sportsbook and fantasy operator names every NHL team — the mapping from each operator's team code to the unified franchise record.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
operator_idbigint→ main.operators—Operator id: 1 DraftKings, 2 FanDuel, 3 Yahoo, 13 sportsdata.io.
operator_team_idstring——External team ID from operator
team_idbigint→ nhl.teams—Internal nhl.teams.id reference
abbreviationstringnullable——Team abbreviation for reconciliation
team_namestringnullable——Team name for reconciliation
nhl.season_team_stats36 fields· 2 refsendpoints →

Season totals for each NHL team — wins, losses, overtime losses, points, goals for and against, shooting percentage, save percentage, power-play and penalty-kill efficiency, faceoff percentages.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
season_idbigint→ nhl.seasons——
team_idbigint→ nhl.teams——
blocked_shotsinteger———
faceoff_lossesinteger———
faceoff_percentagedecimal———
faceoff_winsinteger———
games_playedinteger———
giveawaysinteger———
goal_differentialinteger———
goals_againstinteger———
goals_against_averagedecimal———
goals_against_per_gamedecimal———
goals_forinteger———
goals_per_gamedecimal———
hitsinteger———
lossesinteger———
overtime_lossesinteger———
penalty_kill_goals_againstinteger———
penalty_kill_percentagedecimal———
penalty_minutesinteger———
power_play_goalsinteger———
power_play_opportunitiesinteger———
power_play_percentagedecimal———
ptsinteger———
pts_percentagedecimal———
save_percentagedecimal———
season_typestring——Canonical season phase (text). Was integer 1/2/3 before the 2026-06-29 normalization.
shooting_percentagedecimal———
short_handed_goalsinteger———
shots_againstinteger———
shots_forinteger———
shutoutsinteger———
takeawaysinteger———
times_shorthandedinteger———
winsinteger———
nhl.standings36 fields· 2 refsendpoints →

Current conference and division standings for the NHL season — wins, losses, overtime losses, points, points percentage, games behind, and home/away splits. One snapshot per team per season (no as-of-date history).

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
season_idbigint→ nhl.seasons——
team_idbigint→ nhl.teams——
away_lossesinteger———
away_overtime_lossesinteger———
away_winsinteger———
clinched_conferenceboolean———
clinched_divisionboolean———
clinched_playoffsboolean———
clinched_presidents_trophyboolean———
conferencestring———
conference_rankinteger———
divisionstring———
division_rankinteger———
games_playedinteger———
goal_differentialinteger———
goals_againstinteger———
goals_forinteger———
home_lossesinteger———
home_overtime_lossesinteger———
home_winsinteger———
last_10_lossesinteger———
last_10_overtime_lossesinteger———
last_10_winsinteger———
lossesinteger———
overtime_lossesinteger———
ptsinteger———
pts_percentagedecimal———
rankinteger———
regulation_winsinteger———
season_typestring———
shootout_lossesinteger———
shootout_winsinteger———
streakstringnullable——Current streak (W3, L2, OTL1)
wild_card_rankintegernullable———
winsinteger———
nhl.game_player_stats67 fields· 3 refsendpoints →

Each NHL player's stat line for each game — goals, assists, plus-minus, shots on goal, hits, blocks, penalties in minutes, power-play points, time on ice, plus the goaltender line (saves, shots against, goals against, save percentage).

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
game_idbigint→ nhl.games——
opponent_idbigintnullable———
player_idbigint→ nhl.players——
team_idbigint→ nhl.teams——
assistsinteger———
blocked_shotsinteger———
empty_net_goalsinteger———
even_strength_assistsinteger———
even_strength_goalsinteger———
even_strength_time_on_ice_secondsinteger———
faceoff_percentagedecimal———
faceoffs_lostinteger———
faceoffs_woninteger———
first_period_goals_againstinteger———
game_winning_goalsinteger———
gamesinteger——1 if player appeared, 0 if not
giveawaysinteger———
goalsinteger———
goals_againstinteger———
goals_against_averagedecimal———
hitsinteger———
home_or_awaystringnullable———
is_game_overboolean———
lossesinteger———
major_penaltiesinteger———
minor_penaltiesinteger———
minutes_playedinteger——Goalie minutes played
overtime_goalsinteger———
overtime_goals_againstinteger———
overtime_lossesinteger———
penaltiesinteger———
penalty_minutesinteger———
plus_minusinteger———
power_play_assistsinteger———
power_play_goalsinteger———
power_play_goals_againstinteger———
power_play_ptsinteger———
power_play_savesinteger———
power_play_shots_againstinteger———
power_play_time_on_ice_secondsinteger———
ptsinteger———
save_percentagedecimal———
savesinteger———
second_period_goals_againstinteger———
shiftsinteger———
shooting_percentagedecimal———
shootout_attemptsinteger———
shootout_goalsinteger———
shootout_goals_againstinteger———
shootout_savesinteger———
short_handed_assistsinteger———
short_handed_goalsinteger———
short_handed_goals_againstinteger———
short_handed_ptsinteger———
short_handed_savesinteger———
short_handed_shots_againstinteger———
short_handed_time_on_ice_secondsinteger———
shotsinteger———
shots_againstinteger———
shots_on_goalinteger———
shutoutsinteger———
startedinteger———
takeawaysinteger———
third_period_goals_againstinteger———
time_on_ice_secondsinteger———
winsinteger———
nhl.game_team_stats30 fields· 2 refsendpoints →

Each NHL team's stat line for each game — goals scored and allowed, shots on goal, power-play and penalty-kill performance, faceoff percentage, hits, blocks, and time-on-ice splits.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
game_idbigint→ nhl.games——
team_idbigint→ nhl.teams——
assistsinteger———
blocked_shotsinteger———
faceoff_percentagedecimal———
faceoffs_lostinteger———
faceoffs_woninteger———
giveawaysinteger———
goalsinteger———
goals_againstinteger———
hitsinteger———
lossesinteger———
overtime_lossesinteger———
penaltiesinteger———
penalty_kill_goals_againstinteger———
penalty_kill_percentagedecimal———
penalty_minutesinteger———
power_play_attemptsinteger———
power_play_goalsinteger———
power_play_percentagedecimal———
save_percentagedecimal———
savesinteger———
shooting_percentagedecimal———
short_handed_goalsinteger———
shotsinteger———
shots_on_goalinteger———
takeawaysinteger———
times_shorthandedinteger———
winsinteger———
nhl.operator_player_lookups9 fields· 2 refsendpoints →

How each sportsbook and fantasy operator names every NHL player — the mapping from each operator's player identifier to a unified player record.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
operator_idbigint→ main.operators—Operator id: 1 DraftKings, 2 FanDuel, 3 Yahoo, 13 sportsdata.io.
operator_player_idstring——External player ID from operator
player_idbigintnullable→ nhl.players—Internal nhl.players.id reference
decided_attimestamptznullable——When the pin or block was decided.
decided_reasonstringnullable——Evidence behind a pinned or blocked decision.
decisionstringnullable——How this mapping was decided: 'derived' (finder answer, overwritable), 'pinned' (decided on evidence, trigger-protected), 'blocked' (no player we hold is this id; player_id NULL, never retried). DB default 'derived'; a BEFORE UPDATE trigger preserves non-derived rows.
player_namestringnullable——Player name for reconciliation
positionstringnullable——Position for reconciliation
nhl.season_player_stats62 fields· 3 refsendpoints →

Season 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).

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigint→ nhl.players——
season_idbigint→ nhl.seasons——
team_idbigintnullable→ nhl.teams——
assistsinteger———
assists_per_gamedecimal———
blocked_shotsinteger———
empty_net_goalsinteger———
even_strength_assistsinteger———
even_strength_goalsinteger———
even_strength_time_on_ice_secondsinteger———
faceoff_percentagedecimal———
faceoffs_lostinteger———
faceoffs_woninteger———
game_winning_goalsinteger———
games_playedinteger———
games_startedinteger———
giveawaysinteger———
goalsinteger———
goals_againstinteger———
goals_against_averagedecimal———
goals_per_gamedecimal———
hat_tricksinteger———
hitsinteger———
lossesinteger———
major_penaltiesinteger———
minor_penaltiesinteger———
minutes_playedinteger———
overtime_goalsinteger———
overtime_lossesinteger———
penaltiesinteger———
penalty_minutesinteger———
plus_minusinteger———
positionstringnullable———
power_play_assistsinteger———
power_play_goalsinteger———
power_play_ptsinteger———
power_play_time_on_ice_secondsinteger———
ptsinteger———
pts_per_gamedecimal———
save_percentagedecimal———
savesinteger———
season_typestring——Canonical season phase (text). Was integer 1/2/3 before the 2026-06-29 normalization.
shiftsinteger———
shooting_percentagedecimal———
shootout_attemptsinteger———
shootout_goalsinteger———
shootout_goals_againstinteger———
shootout_missesinteger———
shootout_savesinteger———
short_handed_assistsinteger———
short_handed_goalsinteger———
short_handed_ptsinteger———
short_handed_time_on_ice_secondsinteger———
shotsinteger———
shots_againstinteger———
shots_on_goalinteger———
shutoutsinteger———
takeawaysinteger———
time_on_ice_per_gamedecimal———
time_on_ice_secondsinteger———
winsinteger———

Odds

nhl.game_odds13 fields· 1 refsendpoints →

NHL game betting lines — moneylines, puck lines (the hockey point-spread equivalent), and over/under totals from sportsbooks, captured over time as the lines move from opening to closing.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
game_idbigint→ nhl.games——
away_money_lineintegernullable———
away_point_spreaddecimalnullable———
away_point_spread_payoutintegernullable———
draw_money_lineintegernullable———
home_money_lineintegernullable———
home_point_spreaddecimalnullable———
home_point_spread_payoutintegernullable———
over_payoutintegernullable———
over_underdecimalnullable———
sportsbookstringnullable——DraftKings, FanDuel, BetMGM, etc.
under_payoutintegernullable———

Lineups & Roster

nhl.line_combinations11 fields· 2 refsendpoints →

NHL forward and defensive pair groupings — which players skate together as a line (first, second, third, fourth) or defensive pairing for each team.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player1_idbigint———
player2_idbigintnullable———
player3_idbigintnullable———
player4_idbigintnullable———
player5_idbigintnullable———
season_idbigint→ nhl.seasons——
team_idbigint→ nhl.teams——
daydate———
line_numberinteger———
line_typestring———
nhl.goalie_depth_charts6 fields· 3 refsendpoints →

Each NHL team's goaltender depth — the starter, backup, and any third-string netminders, with the date the depth was last updated.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigint→ nhl.players——
season_idbigint→ nhl.seasons——
team_idbigint→ nhl.teams——
daydate———
depth_orderinteger——1=Starter, 2=Backup, 3=Third string

Misc

nhl.arenas19 fieldsendpoints →

NHL arenas — current home venues and historical buildings, with capacity, surface type, and ice-rink dimensions.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
league_arena_idintegernullable——Official NHL arena ID from api-web.nhle.com
addressstringnullable———
capacityintegernullable———
citystring———
closed_datetimestamptznullable———
countrystringnullable———
descriptionstringnullable———
elevationfloatnullable——Elevation in feet above sea level
image_urlstringnullable——URL to aerial/overview image of arena
latitudefloatnullable———
longitudefloatnullable———
namestring———
opened_datetimestamptznullable———
roof_typestringnullable——Arena roof type (all indoor)
statestringnullable———
surfacestring——Playing surface type
team_namestringnullable———
timezonestringnullable——IANA timezone (e.g., America/New_York)
nhl.playoff_series15 fields· 4 refsendpoints →

NHL Stanley Cup Playoff series — best-of-seven matchups in each round (First Round, Second Round, Conference Finals, Stanley Cup Final), with seeds, wins, and series outcomes.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
away_team_idbigint→ nhl.teams——
home_team_idbigint→ nhl.teams——
season_idbigint→ nhl.seasons——
series_idintegernullable———
winner_team_idbigintnullable→ nhl.teams——
away_team_seedinteger———
away_team_winsinteger———
conferencestringnullable———
games_playedinteger———
home_team_seedinteger———
home_team_winsinteger———
max_gamesinteger———
playoff_roundstring———
statusstring———
nhl.draft_picks9 fields· 3 refsendpoints →

Every NHL Draft selection — round, pick number, drafting team, the league/country the player came from, and the career stats that followed.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
draft_idintegernullable———
original_team_idintegernullable→ nhl.teams—Team that originally owned the pick
player_idbigintnullable→ nhl.players——
team_idbigint→ nhl.teams——
overall_pickinteger———
pick_in_roundinteger———
roundinteger———
yearinteger———
nhl.player_injuries16 fields· 3 refsendpoints →

The ongoing injury record for each NHL player — body part, severity, designation (day-to-day, IR, LTIR), and expected return timeline.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
player_idbigint→ nhl.players——
season_idbigint→ nhl.seasons——
team_idbigint→ nhl.teams——
body_partstring———
descriptionstringnullable———
end_datetimestamptznullable———
expected_return_datetimestamptznullable———
games_missedinteger———
injury_typestringnullable———
is_surgery_requiredbooleannullable———
sidestringnullable———
sourcestringnullable———
start_datetimestamptz———
statusstring———
updated_datetimestamptz———
nhl.player_news28 fields· 4 refsendpoints →

News about NHL players — trades, IR placements, line changes, suspensions, and general beat-reporter updates.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
external_idstringnullable——Unique identifier from the news provider.
game_idbigintnullable→ nhl.games—Associated game ID when this news item relates to a specific game.
news_idintegernullable——External news item ID from the provider.
opponent_team_idbigintnullable→ nhl.teams—Opponent team ID when this news item relates to an upcoming or active game matchup.
player_idbigintnullable→ nhl.players—Player ID associated with the news report.
team_idbigintnullable→ nhl.teams—Team ID of the player at the time of publication.
ai_processedboolean——Whether this story was generated or enriched via LLM summarization.
authorstringnullable——Reporter or author of the article.
categoriesstringnullable——Comma-separated raw topic tags.
categorystringnullable——injury, transaction, lineup, general
contentstringnullable——Full text content of the news report.
descriptionstringnullable——Brief synopsis or summary of the news event.
first_reported_attimestamptznullable——Timestamp when this story was first reported before multi-source compaction.
linkstringnullable——URL link to the original article or source video.
news_timetimestamptz——Publication timestamp of the news story.
original_sourcestringnullable——Original publishing outlet or syndicate.
original_source_urlstringnullable——Canonical permalink on the original publisher.
priorityinteger——Display priority score (1-10).
situational_impactjsonbnullable——Structured situational impact assessment and fantasy implications for the player.
sourcestringnullable——Primary news source or publication.
sourcesjsonbnullable——Source citations with source name, URL, author, and published timestamp.
status_enumstringnullable——Standardized player status designation (RULED_OUT, DOUBTFUL, QUESTIONABLE, PROBABLE, CLEARED, MINUTES_LIMIT, MINUTES_LIFTED, STARTING, BENCHED, INACTIVE, ACTIVE, IR_PLACED, IR_ACTIVATED, TRADED, RELEASED, SIGNED, ROUTINE).
terms_of_usestringnullable——Syndication terms and attribution.
titlestring——Headline of the news report.
updated_timetimestamptznullable——Timestamp when the story was last revised.
urgencystringnullable——Urgency level of the news event (BREAKING_GAME_TIME, HIGH, MEDIUM, ROUTINE).
urlstringnullable——Original source URL.
nhl.team_news12 fields· 3 refsendpoints →

News and updates about NHL teams — game previews, coaching changes, front-office moves, and beat reports.

FieldTypeReferencesExampleDescription
idkeybigint——Primary Key
external_idstringnullable——Canonical external identifier for deduplication.
game_idbigintnullable→ nhl.games—Associated game ID when news relates to a specific game.
opponent_team_idbigintnullable→ nhl.teams—Opponent team ID when news relates to an upcoming or completed game matchup.
team_idbigint→ nhl.teams—Team ID that this news event pertains to.
ai_processedbooleannullable——Whether this story was generated or enriched via LLM summarization.
categorystringnullable——game_preview, coaching, transaction, general
news_timetimestamptz——Publication timestamp of the team story.
sourcesjsonbnullable——Source citations with publisher name, URL, author, and published timestamp.
summarystring——Concise journalistic summary of the team news event.
titlestring——Headline of the team news story.
urgencystringnullable——ROUTINE, MEDIUM, HIGH, BREAKING_GAME_TIME