STAT-API

NHL scoring_plays API

scoring_playsnhl.scoring_plays
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.
⚠️ This endpoint is documented but not yet live. Calls return 503 until data is wired in.
GET/api/v1/nhl/scoring_plays
Requires one of: game_id — requests satisfying none of these return 400.
Parameters
game_idquerybigintoptional
Filter to a single game.
team_idquerybigintoptional
Filter by scoring team.
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/nhl/scoring_plays?game_id=1'
Responses
200scoring_plays rows matching the declared filter set, wrapped in { scoring_plays, 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
503Coming soon — handler returns 503 until data is wired in.
Response Schema(13 fields)show schema ▸
FieldTypeReferencesDescription
idkey
bigint—Primary Key
game_id
bigint—
e.g. — (all-null in sample)
primary_assist_player_id
bigintnullable—
e.g. — (all-null in sample)
scored_by_player_id
bigintnullable—
e.g. — (all-null in sample)
scoring_play_id
integer——
e.g. — (all-null in sample)
secondary_assist_player_id
bigintnullable—
e.g. — (all-null in sample)
team_id
bigint—
e.g. — (all-null in sample)
away_team_score
integer——
e.g. — (all-null in sample)
description
stringnullable——
e.g. — (all-null in sample)
goal_type
stringnullable——
e.g. — (all-null in sample)
home_team_score
integer——
e.g. — (all-null in sample)
period_number
integer——
e.g. — (all-null in sample)
time_remaining
string—Time remaining in period (MM:SS)
e.g. — (all-null in sample)
GET/api/v1/nhl/scoring_plays/{id}
Parameters
idpathbigintrequired
Primary key (id) of the scoring_play 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/scoring_plays/{pk_value}'
Responses
200Single scoring_play row.application/jsonshow example ▸
404Row not found.
503Coming soon — handler returns 503 until data is wired in.
Response Schema(13 fields)show schema ▸
FieldTypeReferencesDescription
idkey
bigint—Primary Key
game_id
bigint—
e.g. — (all-null in sample)
primary_assist_player_id
bigintnullable—
e.g. — (all-null in sample)
scored_by_player_id
bigintnullable—
e.g. — (all-null in sample)
scoring_play_id
integer——
e.g. — (all-null in sample)
secondary_assist_player_id
bigintnullable—
e.g. — (all-null in sample)
team_id
bigint—
e.g. — (all-null in sample)
away_team_score
integer——
e.g. — (all-null in sample)
description
stringnullable——
e.g. — (all-null in sample)
goal_type
stringnullable——
e.g. — (all-null in sample)
home_team_score
integer——
e.g. — (all-null in sample)
period_number
integer——
e.g. — (all-null in sample)
time_remaining
string—Time remaining in period (MM:SS)
e.g. — (all-null in sample)