Results, teams and odds from more than 1,250 leagues and cups, from the first seasons to last night. One REST API, one MCP server, and a free key in a minute.
Every finished game arrives the same evening with goals by period, venue and attendance. The same call works for any date back to .
Each league page lists its seasons, teams and games. Full means scores, periods, lineups and player stats; results means final scores and dates.
| League | Games | |
|---|---|---|
NONHL1917-18 to 2026-27 | 73,390 | OpenAPI call |
NOAHL2003-04 to 2026-27 | 33,327 | OpenAPI call |
CAQMJHL1969-70 to 2026-27 | 32,671 | OpenAPI call |
CAWHL1995-96 to 2026-27 | 26,530 | OpenAPI call |
WOClub friendlies1903-04 to 2026-27 | 26,492 | OpenAPI call |
CAOHL1997-98 to 2026-27 | 22,814 | OpenAPI call |
NOECHL2006-07 to 2026-27 | 21,719 | OpenAPI call |
Every answer is { data, meta } with our own ids, UTC times, paging and rate-limit headers. Paid fields stay in place on the free key as nulls, so nothing breaks when you upgrade.
Your plan, calls used today and this period, limits, reset times and the data your plan covers
What the data holds: leagues, seasons, teams, finished games, games with detail and with odds, players and venues, and the first and last game dates
Every game that changed since a moment (a new result, a score corrected, a status, a day, a start time, a rink or a crowd), oldest change first, each with changed_at, and in meta.removed the games taken out (a duplicate folded into another, with into_id): keep a copy current with one call. Up to 7 days back; follow next_cursor, then ask again from the last until
How fresh the results are, measured on every game rather than claimed: for each league with a result in the last 30 days, when its newest result reached the data, how many results came in the last day, week and month, the minutes from the final buzzer (start plus 150 minutes) to the result (median and 90th percentile over 7 days), and the games past their start still waiting for one. Overall: the newest result, the result lag, and the webhook lag as our own endpoint receives every game.final (push lag and end to end). Counted every minute
Every country with the number of leagues and teams it has
Every league and competition, with country, level, age group, gender and what it holds (coverage: box scores, part box scores, scores and odds, or scores only)
One league, with its number of seasons, its latest season and exactly what it holds: finished games, how many have a box score and odds, the seasons with box scores, and how often start time, rink and attendance are known
Every season of a league, newest first, with first and last game dates, the number of games, and how many finished games have a box score and odds
Every team that has played in a league, most recent first, with its first and last season and games played
One season: its league, label, dates and number of games
Every game of a season, by date, with the same fields as the games list
The regular season table built from the results: games, wins, losses, overtime and shootout results, goals and points. The free key reads current seasons
The teams that took part in a season, with their number of games. The free key reads current seasons
Playoff series in the order they started: the two teams, wins each, the winner and every game. The free key reads current seasons
The regular season leaders in points, goals, assists, plus-minus, penalty minutes, shots or expected goals (North American top league seasons from 2009-10), for leagues with game detail
A season in numbers: goals a game, home and away wins, overtime and shootout share, average attendance and the biggest win
Teams, by name, country, or the league or season they played in
One team: its name, short name, country and the leagues it has played in
A team's results and fixtures by date, optionally for one season or a date range
A team's regular season record, season by season, newest first, with points under each league's rule
The players who dressed for a team in a season, with number, position and games, for leagues with game detail
A team's regular season in one season: overall, home and away records, shots a game, average home attendance and, in North American top league seasons from 2009-10, expected goals for and against
Every meeting of two teams your plan covers, newest first, with the first team's record against the second
Games by date, date range, league, season or team: teams, score, how it ended, venue and attendance. Every game says how exact its date is (date_precision: day, on_or_after or season, with earliest_date and latest_date); a date filter returns the games dated to the day
Scheduled games from today over the next two days, optionally for one league
One game, with its odds on paid plans
Every finished game from yesterday (UTC), on every plan
Finished games for one day or a date range, optionally for one league. Give date, or from (and to); yesterday (UTC) when left out
Goals and shots for each side, period by period, overtime and shootout included
Every goal in order: period, time, side, scorer, assists, strength, empty net and the score after it
Every penalty in order: period, time, side, player, who drew it, minutes, kind and offence
Who dressed for each side, with number, position, line, captaincy and the starting goalie
Each skater's line: goals, assists, points, plus-minus, penalty minutes, shots, hits, blocks, faceoffs and ice time; in North American top league games from 2009-10, his expected goals too
Each goalie's line: ice time, shots against, saves, goals against, save percentage and decision
Team totals for the game side by side: shots, faceoffs, power play, penalty minutes, hits, blocks, giveaways and takeaways; in North American top league games from 2009-10, expected goals too
Every event in order: type, period, time, side, players, goalie, zone, rink position and shot type, with the expected goals of each unblocked shot (our own model, North American top league from 2009-10). While a North American top league game is being played it is read again every minute, and meta.live gives the period, clock and score as they stand
The referees and linesmen of the game, each with an official_id that follows the same referee across games, seasons and leagues
Everything around the game in one call: the rink with its city and country, the start in UTC and in the rink's own time zone, and for each side the days of rest, back to back, games in the last 7 days and home or road games in a row; for the away side the city it came from; and, where the game has a line-up, the side's regulars who are not dressed. Every game, upcoming ones included. Weather and ice are always null: the game is played indoors and no open source records ice conditions
The head coach behind each bench, with side
The three stars of the game, with side
Odds for one game: three-way, moneyline, puck line and totals, opening, closing or average prices
Games with odds for one day or a date range, each with its prices. Give date, or from (and to); yesterday (UTC) when left out
The results nobody expected, each with the reasons in plain words: the chance the winner had by the closing prices, and what else stood against the favourite (the road, rest, a back to back). An upset is a win, overtime and shootout included, by a side with a 30% chance or less, the prices taken together so the margin is shared out: the closing moneyline first, else the closing three-way price (a draw after regulation counted half to each side), else the average price. upset_size runs from 0 to 100, how far under the 30% line it fell. The latest seven days by default, newest first; give a day or a range (up to 92 days), a league, a country or a team, and sort by size for the biggest first. Games with no price are left out
Players by part of the name, position, nationality or birth year
One player: name, position, shoots, birth date and place, nationality, height, weight, draft and number of awards
A player's career season by season, every league and team, regular season and playoffs, with skater or goalie numbers, and a skater's expected goals in North American top league seasons from 2009-10
Every game your plan covers in which the player has a line, newest first, with his goals, assists, shots and ice time
The trophies and awards a player has won, by season
Every pick of one draft year in order: round, pick, overall, the drafting team's code and the player
One referee or linesman: name, games worked as referee and as linesman, first and last game, and the leagues worked most
Every game your plan covers that the official worked, newest first, with the role
Arenas by part of the name or city, or by country
One arena: name, city, country and the teams that have played home games there
Games played at an arena that your plan covers, newest first
Add one address to Claude or any MCP client with your key. Fifteen tools call the same API, under the same plan and limits.
| Game 1 · Oilers v Panthers | 4 : 3 OT |
| Game 2 · Oilers v Panthers | 4 : 5 2OT |
| Game 3 · Panthers v Oilers | 6 : 1 |
| Game 4 · Panthers v Oilers | 4 : 5 OT |
| Game 5 · Oilers v Panthers | 2 : 5 |
| Game 6 · Panthers v Oilers | 5 : 1 |
Opening and closing prices next to every result, back across decades of seasons, to test a model before it costs anything.
/v1/games/{id}/oddsLast night's results and today's games for score widgets, newsletters and team sites, one call each morning.
/v1/results/yesterdayEvery season of a league with its dates and games, for records, long-run studies and the stories behind them.
/v1/leagues/{id}/seasonsThe MCP server lets Claude and other assistants answer hockey questions with real numbers instead of guesses.
/mcpLive is this season across every league. Archive is every season before it. Complete is both, with the highest limits.
Real data for yesterday, today and games scheduled ahead. No card needed.
Current seasons in every league we cover: games, scores and odds.
Every past season we hold, back to the earliest recorded games.
Live and Archive together, with the highest limits.
Pay yearly and get two months free. Cancel any time; your plan runs to the end of the period.
Sign in and your key is ready on the account page. No card.
iha_live_••••••••••••Send the key in a header and ask for any day's games.
GET /v1/games?date=2025-06-04Follow the ids from games to teams, leagues and seasons. Upgrade when you need odds or history.
GET /v1/teams/{team_id}More than 1,250 leagues and cups: the top flights in North America and Europe, second tiers, juniors, women's leagues and international tournaments. The leagues page lists every one with its seasons.
To the first recorded seasons of each league, back to for the oldest. Past seasons are on the Archive and Complete plans.
Finished games are in the API the same evening, with a second pass overnight for detail.
Yes. It covers yesterday's games in every league, 50 calls a day, with paid fields shown as nulls. Today's games, live games and the days ahead are on the paid plans.
Three-way and moneyline prices, puck lines and totals, as opening, closing or average prices, on the paid plans.
Yes. Add the MCP server address with your key and eight tools are available, under your plan's limits.
Free key, no card, 50 calls a day.