Skip to content

get_game_detail

10 creditsMulti-tablePOST /v1/get_game_detail

Data refreshed · changelog

Full game detail including odds snapshots and the goalies who started, with time on ice.

Use it when you want everything about a single game in one call: scores, odds from multiple bookmakers, and confirmed goalie starts. Saves you from making separate get_odds and search_players calls.

Parameters

game_idstringrequired
Game ID (e.g. "2025020887")
leagueenum: nhl | pwhl | ohl | whl | qmjhl | echl | ahl | ushloptional
League. Defaults to nhl. One of: nhl, pwhl, ohl, whl, qmjhl, echl, ahl, ushl.

Notes

  • Over MCP, ask for it in plain English and the client calls get_game_detail itself. Point any MCP client at https://mcp.puckapi.com/mcp?key=YOUR_API_KEY.
  • Each call costs 10 credits, taken before it runs and refunded if the server errors.
  • Not the call you need? Find the right call by what you are trying to answer.

Request

curl -X POST https://mcp.puckapi.com/v1/get_game_detail \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
  "game_id": "2025020887"
}'

Response

json
{
  "game": {
    "id": "2025020887",
    "season": "20252026",
    "gameDate": "2026-03-15",
    "startTime": "19:00:00",
    "homeTeam": "BUF",
    "awayTeam": "TOR",
    "homeScore": 5,
    "awayScore": 3,
    "gameState": "FINAL",
    "gameType": "regular",
    "venue": "KeyBank Center"
  },
  "home_team": {
    "abbrev": "BUF",
    "fullName": "Buffalo Sabres",
    "conference": "Eastern",
    "division": "Atlantic",
    "arena": "KeyBank Center"
  },
  "away_team": {
    "abbrev": "TOR",
    "fullName": "Toronto Maple Leafs",
    "conference": "Eastern",
    "division": "Atlantic",
    "arena": "Scotiabank Arena"
  },
  "odds": [
    {
      "bookmaker": "draftkings",
      "snapshotType": "closing",
      "mlHome": -125,
      "mlAway": 105,
      "mlHomeProb": 0.556,
      "mlAwayProb": 0.488,
      "spreadHome": -1.5,
      "total": 6.5,
      "totalOverOdds": -110,
      "totalUnderOdds": -110
    },
    {
      "bookmaker": "fanduel",
      "snapshotType": "closing",
      "mlHome": -130,
      "mlAway": 110,
      "mlHomeProb": 0.565,
      "mlAwayProb": 0.476,
      "spreadHome": -1.5,
      "total": 6.5,
      "totalOverOdds": -108,
      "totalUnderOdds": -112
    }
  ],
  "goalie_starts": {
    "homeGoalieId": 8480045,
    "homeGoalieName": "Ukko-Pekka Luukkonen",
    "homeGoalieToi": 3600,
    "awayGoalieId": 8479361,
    "awayGoalieName": "Joseph Woll",
    "awayGoalieToi": 3600,
    "confirmed": false,
    "source": "play-by-play"
  }
}

Response fields

game.idstring
Game ID
game.gameDatestring
Date
game.homeScoreinteger
Home team score
game.awayScoreinteger
Away team score
game.gameStatestring
FUT, LIVE, FINAL, or OFF
home_team.abbrevstring
Home team abbreviation
home_team.fullNamestring
Full team name
away_team.abbrevstring
Away team abbreviation
away_team.fullNamestring
Full team name
odds[]array
Odds snapshots from all bookmakers
goalie_startsobject|null
Starting goalies with time on ice, derived from play-by-play. Null for games that have not been played
goalie_starts.homeGoalieNamestring
Home starting goalie
goalie_starts.awayGoalieNamestring
Away starting goalie

Related endpoints

Try it

500 free credits every month: 50 calls to get_game_detail, and no card.