---
title: "Player game log"
method: POST
path: "/v1/get_player_game_log"
tags: ["Stats + aggregation"]
---

# Player game log

`POST /v1/get_player_game_log`

## Request

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

Use when you need a player's game-by-game stat lines for a season, not a season total. For skaters: date, opponent, home/away, goals, assists, points, shots, PIM and power-play points for each game. For goalies: date, opponent, home/away, decision, shots against, saves, goals against and save% for each game. Built from play-by-play, so time on ice and plus/minus are not available and come back null; goalie time on ice is available only for games the goalie started. Requires player ID from search_players. Costs 5 credits.

## Request body

- object
  - `player_id` integer, required: NHL player ID
  - `season` string: Season ID, 8-digit (e.g. 20242025 for 2024-25). 2024-25 and 2024-2025 also accepted. Defaults to the most recent season with stats for this player, which is the current season once it is under way and the previous one before that. The season actually used is echoed back in the response.
  - `game_type` 'regular' | 'playoff' | 'preseason' | 'all': Which games to include: regular, playoff, preseason, or all. Defaults to regular, matching every other stats tool.
  - `limit` integer: Max games to return (default 100)
  - `offset` integer: 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 `200`

The result, wrapped in data.

- object
  - `data` object, required
    - `player` object, required
      - `id` number, required
      - `name` string, required
      - `position` string, nullable, required
    - `games` object[], required
      - `gameId` string, required
      - `gameDate` string, nullable, required
      - `gameType` string, nullable, required
      - `team` string, nullable, required
      - `opponent` string, nullable, required
      - `homeAway` 'home' | 'away', nullable, required
      - `goals` number, nullable, required
      - `assists` number, nullable, required
      - `points` number, nullable, required
      - `shots` number, nullable, required
      - `pim` number, nullable, required
      - `ppPoints` number, nullable, required
      - `plusMinus` number, nullable, required
      - `decision` 'win' | 'loss', nullable, required
      - `shotsAgainst` number, nullable, required
      - `saves` number, nullable, required
      - `goalsAgainst` number, nullable, required
      - `savePct` number, nullable, required
      - `timeOnIce` number, nullable, required
    - `count` number, required
    - `season` string, nullable, required
    - `game_type` string, required
    - `note` string
    - `next_offset` number, nullable, required

## Other responses

- `400`: Invalid arguments.
- `401`: Missing or invalid API key.
- `402`: Not enough credits.
- `429`: Rate limited.

---

[API](https://skmtc.dev/puckapi/apis/puckapi-api.md) · [All operations](https://skmtc.dev/puckapi/apis/puckapi-api/llms.txt) · [OpenAPI document](https://skmtc.dev/puckapi/apis/puckapi-api/revisions/99b3e5171ab4?raw)
