Multi-table

Plays

Use for play-by-play events: goals, shots, misses, blocks, faceoffs, hits, giveaways, takeaways, penalties, with rink coordinates, strength state (5v5, 5v4), zone, and the players involved. Filter by game, season, team, player (any role), event type, strength, zone, or period. Requires at least one of game_id, season or player_id. Paginate with offset. Costs 10 credits.

post/v1/get_plays

Request

  • Base URL: https://mcp.puckapi.com
  • URL: https://mcp.puckapi.com/v1/get_plays
  • Auth: one of:
    • API key in header x-api-key
    • HTTP bearer

Request body

game_idstring

NHL game ID (e.g. 2025020887)

seasonstring

Season ID, 8-digit (e.g. 20242025).

teamstring

Team abbreviation that owns the event (e.g. BUF)

player_idinteger

NHL player ID; matches the player in any role on the event

type'goal' | 'shot-on-goal' | 'missed-shot' | 'blocked-shot' | 'faceoff' | 'hit' | 'giveaway' | 'takeaway' | 'penalty' | 'delayed-penalty' | 'stoppage' | 'period-start' | 'period-end' | 'game-end' | 'shootout-complete' | 'failed-shot-attempt'

Event type

strengthstring

Skater strength from the event owner's view, e.g. 5v5, 5v4, 4v5

zone'O' | 'N' | 'D'

Zone: O offensive, N neutral, D defensive

periodinteger

Period number (4+ is overtime)

shot_attempts_onlyboolean

Only goals, shots on goal, missed shots and blocked shots (Corsi events)

limitinteger

Max events (default 200)

offsetinteger

Pagination offset

league'nhl' | 'pwhl' | 'ohl' | 'whl' | 'qmjhl' | 'echl' | 'ahl' | 'ushl'

League. Defaults to nhl. One of: nhl, pwhl, ohl, whl, qmjhl, echl, ahl, ushl.

Response

The result, wrapped in data.

Changes

No recorded changes to this operation across all 1 revision of this API.