BYTETOOLS

NHL Web API

Free NHL API with no key: live scores, standings, team rosters, player statistics and schedules from the official NHL data service. Tested curl example.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 19 Aug 2026

What is the NHL Web API?

The NHL Web API is a free, key-free service providing official National Hockey League data — live scores, standings, schedules, team rosters and detailed player statistics.

The NHL publishes an unusually complete free API with no key requirement. Standings, schedules, box scores, play-by-play and player statistics are all available, and the data is official rather than scraped.

It is undocumented in the formal sense — the NHL does not publish a developer portal — but the endpoints are stable and widely used by the hockey analytics community. The `/standings/now` path is a convenient alias that redirects to the current date.

Quick facts

Base URL
https://api-web.nhle.com/v1
Authentication
No API key required. The API is officially undocumented but publicly accessible.
Rate limit
No published limit; reasonable use expected.
Pricing
Free.
CORS
Not enabled — call it from your server
Official docs
Read the docs

How to use the NHL Web API

Every request below was executed against the live API on 19 Aug 2026, and the response shown is the real body it returned — not an illustration.

1. Fetch current NHL standings

GET https://api-web.nhle.com/v1/standings/now

curl
curl 'https://api-web.nhle.com/v1/standings/now'
JavaScript (fetch)
const res = await fetch("https://api-web.nhle.com/v1/standings/now");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://api-web.nhle.com/v1/standings/now", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "wildCardIndicator": true,
  "standingsDateTimeUtc": "2026-08-19T20:28:15Z",
  "standings": [
    {
      "clinchIndicator": "p",
      "conferenceAbbrev": "W",
      "conferenceHomeSequence": 1,
      "conferenceL10Sequence": 2,
      "conferenceName": "Western",
      "conferenceRoadSequence": 1,
      "conferenceSequence": 1,
      "date": "2026-04-17",
      "divisionAbbrev": "C",
      "divisionHomeSequence": 1,
      "divisionL10Sequence": 1,
      "divisionName": "Central",
      "divisionRoadSequence": 1,
      "divisionSequence": 1,
      "gameTypeId": 2,
      "gamesPlayed": 82,
      "goalDifferential": 99,
      "goalDifferentialPctg": 1.207317,
      "goalAgainst": 203,
      "goalFor": 302,
      "goalsForPctg": 3.682927,
      "homeGamesPlayed": 41,
      "homeGoalDifferential": 49,
      "homeGoalsAgainst": 108,
      "homeGoalsFor": 157,
      "homeLosses": 9,
      "homeOtLosses": 6,
      "homePoints": 58,
      "homeRegulationPlusOtWins": 25,
      "homeRegulationWins": 25,
      "homeTies": 0,
      "homeWins": 26,
      "l10GamesPlayed": 10,
      "l10GoalDifferential": 14,
      "l10GoalsAgainst": 20,
      "l10GoalsFor": 34,
      "l10Losses": 2,
      "l10OtLosses": 1,
      "l10Points": 15,
      "l10RegulationPlusOtWins": 6,
      "l10RegulationWins": 6,
      "l10Ties": 0,
      "l10Wins": 7,
      "leagueHomeSequence": 3,
      "leagueL10Sequence": 4,
      "leagueRoadSequence": 1,
      "leagueSequence": 1,
      "losses": 16,
      "otLosses": 11,
      "placeName": {
        "default": "Colorado"
      },
      "pointPctg": 0.737805,

Parameters

ParameterTypeRequiredDescription
standings/nowpathOptionalCurrent standings; redirects to today's date. standings/now
standings/<date>pathOptionalStandings as of a specific date. 2026-01-15
club-schedule-season/<team>/nowpathOptionalFull season schedule for a team. TOR
player/<id>/landingpathOptionalPlayer profile and career statistics. 8478402
gamecenter/<gameId>/boxscorepathOptionalBox score for a game. 2023020204

Response fields

standings[].teamNameobject
Team name with localised variants.
standings[].pointsinteger
Points in the standings.
standings[].wins / losses / otLossesinteger
Win-loss record including overtime losses.
standings[].conferenceAbbrev / divisionAbbrevstring
Conference and division.
standings[].clinchIndicatorstring
Playoff clinch status such as `p` for presidents trophy or `x` for clinched.
standingsDateTimeUtcstring
Timestamp the standings were generated.

What you can build with the NHL Web API

  • Build an NHL standings or scoreboard display
  • Track a team's schedule and results through a season
  • Analyse player statistics for fantasy hockey
  • Create hockey analytics tooling with official data

Common errors and how to fix them

404

Wrong path structure or an invalid team abbreviation.

Fix: Team codes are three-letter uppercase, e.g. TOR, BOS, EDM.

Endpoints change without notice

The API is officially undocumented.

Fix: The community reference on GitHub is the practical source of truth; pin behaviour with tests.

Empty standings out of season

No games have been played yet.

Fix: Handle the off-season case; standings for a future date return an empty or zeroed structure.

NHL Web API — frequently asked questions

Is the NHL API free?

Yes, free with no API key. It is officially undocumented but publicly accessible and widely used by the hockey analytics community.

Where is the documentation?

The NHL does not publish a developer portal. A community-maintained reference on GitHub documents the endpoints, and it is the practical source of truth.

Does it provide live scores?

Yes, the gamecenter endpoints provide live box scores and play-by-play during games.

Is it stable enough to build on?

The endpoints have been stable in practice, but because it is undocumented the NHL could change it without notice. Write tests around your integration.

Tools that pair with this API

Alternatives to NHL Web API

If NHL Web API does not fit, these sports & fitness apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.

APIWhat it doesAuthCORSLast verified
TheSportsDBFree sports database API with a public test key: teams, players, leagues, fixtures and results across football, basketball, cricket and more, with images. Tested.No keyYes19 Aug 2026
OpenLigaDBFree OpenLigaDB API with no key: Bundesliga fixtures, results, tables and goalscorers, plus other leagues. Community-maintained open data. Tested example.No keyNo19 Aug 2026
wger Workout ManagerFree wger fitness API with no key for public data: exercise database with muscles worked, equipment, categories, images and nutrition information. Tested.No keyYes19 Aug 2026
Squiggle (AFL)Free Australian Football League API with no key: teams, fixtures, results, ladder standings and computer model predictions. Community-run. Tested example.No keyNo21 Aug 2026
NHL RecordsFree NHL Records API with no key: every franchise since 1917 including defunct teams, plus records, milestones and historical statistics. Tested example included.No keyNo21 Aug 2026
OpenF1Free Formula 1 API with no key: live and historical timing, car telemetry, radio messages, pit stops and driver positions at sub-second resolution. Tested example included.No keyYes21 Aug 2026
All Sports & Fitness APIs

NHL Web API is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 19 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.