{"openapi":"3.1.0","info":{"title":"NHL Hockey Stats API","version":"1.0.0","description":"The National Hockey League as an API, from the official NHL Web API. Get the 32 clubs, live standings (wins, losses, OT losses, points, point pct, goals for/against, current streak, last-10 record, division/conference/wildcard rank), the schedule and final scores for any date, team rosters, player profiles with current-season and full career stats (goals, assists, points, plus-minus, save pct and more), and game box scores. Resolve teams by tricode (TOR) or name (Maple Leafs), and players by name (Connor McDavid) or NHL id. Perfect for building scoreboards and standings widgets, fantasy-hockey tools, stat dashboards, Discord/Slack bots, and sports-data apps. No key for the upstream, no accounts to manage.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/nhl-api","description":"oanor gateway"}],"tags":[{"name":"Teams"},{"name":"Standings"},{"name":"Schedule"},{"name":"Rosters"},{"name":"Players"},{"name":"Games"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/teams":{"get":{"operationId":"get_v1_teams","tags":["Teams"],"summary":"The 32 NHL clubs","description":"","parameters":[{"name":"conference","in":"query","required":false,"description":"Eastern or Western","schema":{"type":"string"},"example":"Western"},{"name":"division","in":"query","required":false,"description":"Atlantic|Metropolitan|Central|Pacific","schema":{"type":"string"},"example":"Pacific"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"count":8,"teams":[{"abbr":"ANA","name":"Anaheim Ducks","division":"Pacific","conference":"Western"},{"abbr":"CGY","name":"Calgary Flames","division":"Pacific","conference":"Western"},{"abbr":"EDM","name":"Edmonton Oilers","division":"Pacific","conference":"Western"},{"abbr":"LAK","name":"Los Angeles Kings","division":"Pacific","conference":"Western"},{"abbr":"SEA","name":"Seattle Kraken","division":"Pacific","conference":"Western"},{"abbr":"SJS","name":"San Jose Sharks","division":"Pacific","conference":"Western"},{"abbr":"VAN","name":"Vancouver Canucks","division":"Pacific","conference":"Western"},{"abbr":"VGK","name":"Vegas Golden Knights","division":"Pacific","conference":"Western"}]},"meta":{"timestamp":"2026-06-01T00:04:08.666Z","request_id":"d74d10d7-2721-444c-93fe-e3cbefbbb8af"},"status":"ok","message":"Teams retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/standings":{"get":{"operationId":"get_v1_standings","tags":["Standings"],"summary":"Current league standings","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"as_of":"now","count":32,"teams":[{"team":{"abbr":"COL","name":"Colorado Avalanche"},"wins":55,"losses":16,"points":121,"streak":"W3","last_10":"7-2-1","division":"Central","goal_diff":99,"goals_for":302,"ot_losses":11,"point_pct":0.737805,"conference":"Western","league_rank":1,"games_played":82,"division_rank":1,"goals_against":203,"wildcard_rank":0,"conference_rank":1},{"team":{"abbr":"CAR","name":"Carolina Hurricanes"},"wins":53,"losses":22,"points":113,"streak":"W1","last_10":"7-2-1","division":"Metropolitan","goal_diff":56,"goals_for":296,"ot_losses":7,"point_pct":0.689024,"conference":"Eastern","league_rank":2,"games_played":82,"division_rank":1,"goals_against":240,"wildcard_rank":0,"conference_rank":1},{"team":{"abbr":"DAL","name":"Dallas Stars"},"wins":50,"losses":20,"points":112,"streak":"W5","last_10":"7-2-1","division":"Central","goal_diff":53,"goals_for":279,"ot_losses":12,"point_pct":0.682927,"conference":"Western","league_rank":3,"games_played":82,"division_rank":2,"goals_against":226,"wildcard_rank":0,"conference_rank":2},{"team":{"abbr":"BUF","name":"Buffalo Sabres"},"wins":50,"losses":23,"points":109,"streak":"OT1","last_10":"6-3-1","division":"Atlantic","goal_diff":47,"goals_for":288,"ot_losses":9,"point_pct":0.664634,"conference":"Eastern","league_rank":4,"games_played":82,"division_rank":1,"goals_against":241,"wildcard_rank":0,"conference_rank":2},{"team":{"abbr":"TBL","name":"Tampa Bay Lightning"},"wins":50,"losses":26,"points":106,"streak":"L1","last_10":"5-5-0","division":"Atlantic","goal_diff":59,"goals_for":290,"ot_losses":6,"point_pct":0.646341,"conference":"Eastern","league_rank":5,"games_played":82,"division_rank":2,"goals_against":231,"wildcard_rank":0,"conference_rank":3},{"team":{"abbr":"MTL","name":"Montréal Canadiens"},"wins":48,"losses":24,"points":106,"streak":"L1","last_10":"7-3-0","division":"Atlantic","goal_diff":27,"goals_for":283,"ot_losses":10,"point_pct":0.646341,"conference":"Eastern","league_rank":6,"games_played":82,"division_rank":3,"goals_against":256,"wildcard_rank":0,"conference_rank":4},{"team":{"abbr":"MIN","name":"Minnesota Wild"},"wins":46,"losses":24,"points":104,"streak":"W1","last_10":"6-4-0","division":"Central","goal_diff":32,"goals_for":272,"ot_losses":12,"point_pct":0.634146,"conference":"Western","league_rank":7,"games_played":82,"division_rank":3,"goals_against":240,"wildcard_rank":0,"conference_rank":3},{"team":{"abbr":"BOS","name":"Boston Bruins"},"wins":45,"losses":27,"points":100,"streak":"W2","last_10":"5-3-2","division":"Atlantic","goal_diff":22,"goals_for":272,"ot_losses":10,"point_pct":0.609756,"conference":"Eastern","league_rank":8,"games_played":82,"division_rank":4,"goals_against":250,"wildcard_rank":1,"conference_rank":5},{"team":{"abbr":"OTT","name":"Ottawa Senators"},"wins":44,"losses":27,"points":99,"streak":"W1","last_10":"6-3-1","division":"Atlantic","goal_diff":32,"goals_for":278,"ot_losses":11,"point_pct":0.603659,"conference":"Eastern","league_rank":9,"games_played":82,"division_rank":5,"goals_against":246,"wildcard_rank":2,"conference_rank":6},{"team":{"abbr":"PIT","name":"Pittsburgh Penguins"},"wins":41,"losses":25,"points":98,"streak":"L3","last_10":"5-5-0","division":"Metropolitan","goal_diff":25,"goals_for":293,"ot_losses":16,"point_pct":0.597561,"conference":"Eastern","league_rank":10,"games_played":82,"division_rank":2,"goals_against":268,"wildcard_rank":0,"conference_rank":7},{"team":{"abbr":"PHI","name":"Philadelphia Flyers"},"wins":43,"losses":27,"points":98,"streak":"W3","last_10":"7-3-0","division":"Metropolitan","goal_diff":7,"goals_for":250,"ot_losses":12,"point_pct":0.597561,"conference":"Eastern","league_rank":11,"games_played":82,"division_rank":3,"goals_against":243,"wildcard_rank":0,"conference_rank":8},{"team":{"abbr":"WSH","name":"Washington Capitals"},"wins":43,"losses":30,"points":95,"streak":"W4","last_10":"8-2-0","division":"Metropolitan","goal_diff":19,"goals_for":263,"ot_losses":9,"point_pct":0.579268,"conference":"Eastern","league_rank":12,"games_played":82,"division_rank":4,"goals_against":244,"wildcard_rank":3,"conference_rank":9},{"team":{"abbr":"VGK","name":"Vegas Golden Knights"},"wins":39,"losses":26,"points":95,"streak":"W3","last_10":"7-0-3","division":"Pacific","goal_diff":15,"goals_for":265,"ot_losses":17,"point_pct":0.579268,"conference":"Western","league_rank":13,"games_played":82,"division_rank":1,"goals_against":250,"wildcard_rank":0,"conference_rank":4},{"team":{"abbr":"EDM","name":"Edmonton Oilers"},"wins":41,"losses":30,"points":93,"streak":"W1","last_10":"6-2-2","division":"Pacific","goal_diff":13,"goals_for":282,"ot_losses":11,"point_pct":0.567073,"conference":"Western","league_rank":14,"games_played":82,"division_rank":2,"goals_against":269,"wildcard_rank":0,"conference_rank":5},{"team":{"abbr":"UTA","name":"Utah Mammoth"},"wins":43,"losses":33,"points":92,"streak":"L1","last_10":"6-4-0","division":"Central","goal_diff":28,"goals_for":268,"ot_losses":6,"point_pct":0.560976,"conference":"Western","league_rank":15,"games_played":82,"division_rank":4,"goals_against":240,"wildcard_rank":1,"conference_rank":6},{"team":{"abbr":"DET","name":"Detroit Red Wings"},"wins":41,"losses":31,"points":92,"streak":"L1","last_10":"2-6-2","division":"Atlantic","goal_diff":-17,"goals_for":241,"ot_losses":10,"point_pct":0.560976,"conference":"Eastern","league_rank":16,"games_played":82,"division_rank":6,"goals_against":258,"wildcard_rank":4,"conference_rank":10},{"team":{"abbr":"CBJ","name":"Columbus Blue Jackets"},"wins":40,"losses":30,"points":92,"streak":"L2","last_10":"2-7-1","division":"Metropolitan","goal_diff":0,"goals_for":253,"ot_losses":12,"point_pct":0.560976,"conference":"Eastern","league_rank":17,"games_played":82,"division_rank":5,"goals_against":253,"wildcard_rank":5,"conference_rank":11},{"team":{"abbr":"ANA","name":"Anaheim Ducks"},"wins":43,"losses":33,"points":92,"streak":"W1","last_10":"2-6-2","division":"Pacific","goal_diff":-15,"goals_for":273,"ot_losses":6,"point_pct":0.560976,"conference":"Western","league_rank":18,"games_played":82,"division_rank":3,"goals_against":288,"wildcard_rank":0,"conference_rank":7},{"team":{"abbr":"NYI","name":"New York Islanders"},"wins":43,"losses":34,"points":91,"streak":"L3","last_10":"3-7-0","division":"Metropolitan","goal_diff":-8,"goals_for":233,"ot_losses":5,"point_pct":0.554878,"conference":"Eastern","league_rank":19,"games_played":82,"division_rank":6,"goals_against":241,"wildcard_rank":6,"conference_rank":12},{"team":{"abbr":"LAK","name":"Los Angeles Kings"},"wins":35,"losses":27,"points":90,"streak":"L1","last_10":"6-2-2","division":"Pacific","goal_diff":-22,"goals_for":225,"ot_losses":20,"point_pct":0.54878,"conference":"Western","league_rank":20,"games_played":82,"division_rank":4,"goals_against":247,"wildcard_rank":2,"conference_rank":8},{"team":{"abbr":"NJD","name":"New Jersey Devils"},"wins":42,"losses":37,"points":87,"streak":"L1","last_10":"5-4-1","division":"Metropolitan","goal_diff":-24,"goals_for":230,"ot_losses":3,"point_pct":0.530488,"conference":"Eastern","league_rank":21,"games_played":82,"division_rank":7,"goals_against":254,"wildcard_rank":7,"conference_rank":13},{"team":{"abbr":"STL","name":"St. Louis Blues"},"wins":37,"losses":33,"points":86,"streak":"W4","last_10":"6-3-1","division":"Central","goal_diff":-27,"goals_for":231,"ot_losses":12,"point_pct":0.52439,"conference":"Western","league_rank":22,"games_played":82,"division_rank":5,"goals_against":258,"wildcard_rank":3,"conference_rank":9},{"team":{"abbr":"NSH","name":"Nashville Predators"},"wins":38,"losses":34,"points":86,"streak":"L2","last_10":"4-5-1","division":"Central","goal_diff":-22,"goals_for":247,"ot_losses":10,"point_pct":0.52439,"conference":"Western","league_rank":23,"games_played":82,"division_rank":6,"goals_against":269,"wildcard_rank":4,"conference_rank":10},{"team":{"abbr":"SJS","name":"San Jose Sharks"},"wins":39,"losses":35,"points":86,"streak":"W1","last_10":"5-4-1","division":"Pacific","goal_diff":-41,"goals_for":251,"ot_losses":8,"point_pct":0.52439,"conference":"Western","league_rank":24,"games_played":82,"division_rank":5,"goals_against":292,"wildcard_rank":5,"conference_rank":11},{"team":{"abbr":"FLA","name":"Florida Panthers"},"wins":40,"losses":38,"points":84,"streak":"W3","last_10":"5-4-1","division":"Atlantic","goal_diff":-25,"goals_for":251,"ot_losses":4,"point_pct":0.512195,"conference":"Eastern","league_rank":25,"games_played":82,"division_rank":7,"goals_against":276,"wildcard_rank":8,"conference_rank":14},{"team":{"abbr":"WPG","name":"Winnipeg Jets"},"wins":35,"losses":35,"points":82,"streak":"L4","last_10":"5-5-0","division":"Central","goal_diff":-29,"goals_for":231,"ot_losses":12,"point_pct":0.5,"conference":"Western","league_rank":26,"games_played":82,"division_rank":7,"goals_against":260,"wildcard_rank":6,"conference_rank":12},{"team":{"abbr":"SEA","name":"Seattle Kraken"},"wins":34,"losses":37,"points":79,"streak":"L3","last_10":"2-8-0","division":"Pacific","goal_diff":-37,"goals_for":226,"ot_losses":11,"point_pct":0.481707,"conference":"Western","league_rank":27,"games_played":82,"division_rank":6,"goals_against":263,"wildcard_rank":7,"conference_rank":13},{"team":{"abbr":"TOR","name":"Toronto Maple Leafs"},"wins":32,"losses":36,"points":78,"streak":"L5","last_10":"2-7-1","division":"Atlantic","goal_diff":-46,"goals_for":253,"ot_losses":14,"point_pct":0.47561,"conference":"Eastern","league_rank":28,"games_played":82,"division_rank":8,"goals_against":299,"wildcard_rank":9,"conference_rank":15},{"team":{"abbr":"CGY","name":"Calgary Flames"},"wins":34,"losses":39,"points":77,"streak":"W1","last_10":"4-5-1","division":"Pacific","goal_diff":-47,"goals_for":212,"ot_losses":9,"point_pct":0.469512,"conference":"Western","league_rank":29,"games_played":82,"division_rank":7,"goals_against":259,"wildcard_rank":8,"conference_rank":14},{"team":{"abbr":"NYR","name":"New York Rangers"},"wins":34,"losses":39,"points":77,"streak":"W1","last_10":"6-4-0","division":"Metropolitan","goal_diff":-12,"goals_for":238,"ot_losses":9,"point_pct":0.469512,"conference":"Eastern","league_rank":30,"games_played":82,"division_rank":8,"goals_against":250,"wildcard_rank":10,"conference_rank":16},{"team":{"abbr":"CHI","name":"Chicago Blackhawks"},"wins":29,"losses":39,"points":72,"streak":"W1","last_10":"2-7-1","division":"Central","goal_diff":-62,"goals_for":213,"ot_losses":14,"point_pct":0.439024,"conference":"Western","league_rank":31,"games_played":82,"division_rank":8,"goals_against":275,"wildcard_rank":9,"conference_rank":15},{"team":{"abbr":"VAN","name":"Vancouver Canucks"},"wins":25,"losses":49,"points":58,"streak":"L1","last_10":"4-6-0","division":"Pacific","goal_diff":-100,"goals_for":216,"ot_losses":8,"point_pct":0.353659,"conference":"Western","league_rank":32,"games_played":82,"division_rank":8,"goals_against":316,"wildcard_rank":10,"conference_rank":16}]},"meta":{"timestamp":"2026-06-01T00:04:08.949Z","request_id":"99d65b7f-10d0-4505-a969-f34554120a5c"},"status":"ok","message":"Standings retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/schedule":{"get":{"operationId":"get_v1_schedule","tags":["Schedule"],"summary":"Games & scores on a date","description":"","parameters":[{"name":"date","in":"query","required":false,"description":"YYYY-MM-DD (default today)","schema":{"type":"string"},"example":"2025-04-15"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"date":"2025-04-15","count":10,"games":[{"id":2024021291,"away":{"sog":26,"abbr":"NJD","name":"New Jersey Devils","score":5},"home":{"sog":24,"abbr":"BOS","name":"Boston Bruins","score":4},"type":"regular","state":"OFF","venue":"TD Garden","period":4,"start_utc":"2025-04-15T23:00:00Z"},{"id":2024021292,"away":{"sog":32,"abbr":"TOR","name":"Toronto Maple Leafs","score":4},"home":{"sog":35,"abbr":"BUF","name":"Buffalo Sabres","score":0},"type":"regular","state":"OFF","venue":"KeyBank Center","period":3,"start_utc":"2025-04-15T23:00:00Z"},{"id":2024021293,"away":{"sog":16,"abbr":"CHI","name":"Chicago Blackhawks","score":4},"home":{"sog":37,"abbr":"OTT","name":"Ottawa Senators","score":3},"type":"regular","state":"OFF","venue":"Canadian Tire Centre","period":4,"start_utc":"2025-04-15T23:00:00Z"},{"id":2024021295,"away":{"sog":34,"abbr":"CBJ","name":"Columbus Blue Jackets","score":3},"home":{"sog":29,"abbr":"PHI","name":"Philadelphia Flyers","score":0},"type":"regular","state":"OFF","venue":"Wells Fargo Center","period":3,"start_utc":"2025-04-15T23:00:00Z"},{"id":2024021294,"away":{"sog":24,"abbr":"FLA","name":"Florida Panthers","score":1},"home":{"sog":31,"abbr":"TBL","name":"Tampa Bay Lightning","score":5},"type":"regular","state":"OFF","venue":"Amalie Arena","period":3,"start_utc":"2025-04-15T23:30:00Z"},{"id":2024021296,"away":{"sog":36,"abbr":"WSH","name":"Washington Capitals","score":3},"home":{"sog":33,"abbr":"NYI","name":"New York Islanders","score":1},"type":"regular","state":"OFF","venue":"UBS Arena","period":3,"start_utc":"2025-04-15T23:30:00Z"},{"id":2024021297,"away":{"sog":23,"abbr":"UTA","name":"Utah Mammoth","score":1},"home":{"sog":29,"abbr":"STL","name":"St. Louis Blues","score":6},"type":"regular","state":"OFF","venue":"Enterprise Center","period":3,"start_utc":"2025-04-16T00:00:00Z"},{"id":2024021298,"away":{"sog":29,"abbr":"ANA","name":"Anaheim Ducks","score":2},"home":{"sog":40,"abbr":"MIN","name":"Minnesota Wild","score":3},"type":"regular","state":"OFF","venue":"Xcel Energy Center","period":4,"start_utc":"2025-04-16T00:00:00Z"},{"id":2024021299,"away":{"sog":42,"abbr":"VGK","name":"Vegas Golden Knights","score":4},"home":{"sog":28,"abbr":"CGY","name":"Calgary Flames","score":5},"type":"regular","state":"OFF","venue":"Scotiabank Saddledome","period":5,"start_utc":"2025-04-16T01:00:00Z"},{"id":2024021300,"away":{"sog":24,"abbr":"LAK","name":"Los Angeles Kings","score":6},"home":{"sog":34,"abbr":"SEA","name":"Seattle Kraken","score":5},"type":"regular","state":"OFF","venue":"Climate Pledge Arena","period":3,"start_utc":"2025-04-16T02:30:00Z"}]},"meta":{"timestamp":"2026-06-01T00:04:09.349Z","request_id":"6932dc7c-e541-4704-accf-2a85ca63153f"},"status":"ok","message":"Schedule retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/roster":{"get":{"operationId":"get_v1_roster","tags":["Rosters"],"summary":"A team roster","description":"","parameters":[{"name":"team","in":"query","required":true,"description":"Tricode or name","schema":{"type":"string"},"example":"TOR"},{"name":"season","in":"query","required":false,"description":"20242025 / 2024 / current","schema":{"type":"string"},"example":"20242025"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"team":{"abbr":"TOR","name":"Toronto Maple Leafs"},"count":42,"season":"20242025","players":[{"id":8481720,"name":"Nick Abruzzese","group":"forwards","number":26,"shoots":"L","position":"C","height_in":71,"weight_lb":183,"birth_country":"USA"},{"id":8477503,"name":"Max Domi","group":"forwards","number":11,"shoots":"L","position":"C","height_in":70,"weight_lb":209,"birth_country":"CAN"},{"id":8482130,"name":"Roni Hirvonen","group":"forwards","number":33,"shoots":"L","position":"C","height_in":70,"weight_lb":178,"birth_country":"FIN"},{"id":8480995,"name":"Pontus Holmberg","group":"forwards","number":29,"shoots":"L","position":"R","height_in":72,"weight_lb":201,"birth_country":"SWE"},{"id":8475714,"name":"Calle Jarnkrok","group":"forwards","number":19,"shoots":"R","position":"C","height_in":72,"weight_lb":191,"birth_country":"SWE"},{"id":8481147,"name":"Reese Johnson","group":"forwards","number":71,"shoots":"R","position":"C","height_in":73,"weight_lb":193,"birth_country":"CAN"},{"id":8480144,"name":"David Kampf","group":"forwards","number":64,"shoots":"L","position":"C","height_in":74,"weight_lb":193,"birth_country":"CZE"},{"id":8482720,"name":"Matthew Knies","group":"forwards","number":23,"shoots":"L","position":"L","height_in":75,"weight_lb":227,"birth_country":"USA"},{"id":8476872,"name":"Scott Laughton","group":"forwards","number":24,"shoots":"L","position":"L","height_in":73,"weight_lb":191,"birth_country":"CAN"},{"id":8478904,"name":"Steven Lorentz","group":"forwards","number":18,"shoots":"L","position":"C","height_in":76,"weight_lb":216,"birth_country":"CAN"},{"id":8481711,"name":"Matias Maccelli","group":"forwards","shoots":"L","position":"L","height_in":71,"weight_lb":185,"birth_country":"FIN"},{"id":8478483,"name":"Mitch Marner","group":"forwards","number":16,"shoots":"R","position":"R","height_in":72,"weight_lb":180,"birth_country":"CAN"},{"id":8479318,"name":"Auston Matthews","group":"forwards","number":34,"shoots":"L","position":"C","height_in":75,"weight_lb":217,"birth_country":"USA"},{"id":8482259,"name":"Bobby McMann","group":"forwards","number":74,"shoots":"L","position":"C","height_in":74,"weight_lb":215,"birth_country":"CAN"},{"id":8479423,"name":"Alex Nylander","group":"forwards","number":92,"shoots":"R","position":"L","height_in":73,"weight_lb":205,"birth_country":"CAN"},{"id":8477939,"name":"William Nylander","group":"forwards","number":88,"shoots":"R","position":"R","height_in":72,"weight_lb":202,"birth_country":"CAN"},{"id":8474157,"name":"Max Pacioretty","group":"forwards","number":67,"shoots":"L","position":"L","height_in":74,"weight_lb":217,"birth_country":"USA"},{"id":8484901,"name":"Jacob Quillan","group":"forwards","number":61,"shoots":"L","position":"C","height_in":73,"weight_lb":204,"birth_country":"CAN"},{"id":8471817,"name":"Ryan Reaves","group":"forwards","number":75,"shoots":"R","position":"R","height_in":74,"weight_lb":225,"birth_country":"CAN"},{"id":8481582,"name":"Nicholas Robertson","group":"forwards","number":89,"shoots":"L","position":"L","height_in":69,"weight_lb":178,"birth_country":"USA"},{"id":8482634,"name":"Alex Steeves","group":"forwards","number":46,"shoots":"L","position":"C","height_in":72,"weight_lb":202,"birth_country":"USA"},{"id":8475166,"name":"John Tavares","group":"forwards","number":91,"shoots":"L","position":"C","height_in":73,"weight_lb":211,"birth_country":"CAN"},{"id":8476988,"name":"Matt Benning","group":"defensemen","number":55,"shoots":"R","position":"D","height_in":73,"weight_lb":203,"birth_country":"CAN"},{"id":8481122,"name":"Simon Benoit","group":"defensemen","number":2,"shoots":"L","position":"D","height_in":76,"weight_lb":211,"birth_country":"CAN"},{"id":8478443,"name":"Brandon Carlo","group":"defensemen","number":25,"shoots":"R","position":"D","height_in":77,"weight_lb":220,"birth_country":"USA"},{"id":8475171,"name":"Oliver Ekman-Larsson","group":"defensemen","number":95,"shoots":"L","position":"D","height_in":74,"weight_lb":192,"birth_country":"SWE"},{"id":8475825,"name":"Jani Hakanpää","group":"defensemen","number":28,"shoots":"R","position":"D","height_in":79,"weight_lb":225,"birth_country":"FIN"},{"id":8481614,"name":"Mikko Kokkonen","group":"defensemen","number":84,"shoots":"L","position":"D","height_in":72,"weight_lb":200,"birth_country":"FIN"},{"id":8476931,"name":"Jake McCabe","group":"defensemen","number":22,"shoots":"L","position":"D","height_in":73,"weight_lb":212,"birth_country":"USA"},{"id":8477541,"name":"Dakota Mermis","group":"defensemen","number":36,"shoots":"L","position":"D","height_in":72,"weight_lb":197,"birth_country":"USA"},{"id":8479026,"name":"Philippe Myers","group":"defensemen","number":51,"shoots":"R","position":"D","height_in":77,"weight_lb":219,"birth_country":"CAN"},{"id":8482158,"name":"Topi Niemela","group":"defensemen","number":47,"shoots":"R","position":"D","height_in":72,"weight_lb":179,"birth_country":"FIN"},{"id":8476853,"name":"Morgan Rielly","group":"defensemen","number":44,"shoots":"L","position":"D","height_in":73,"weight_lb":225,"birth_country":"CAN"},{"id":8483546,"name":"Marshall Rifai","group":"defensemen","number":83,"shoots":"L","position":"D","height_in":74,"weight_lb":213,"birth_country":"CAN"},{"id":8475690,"name":"Chris Tanev","group":"defensemen","number":8,"shoots":"R","position":"D","height_in":75,"weight_lb":199,"birth_country":"CAN"},{"id":8482174,"name":"William Villeneuve","group":"defensemen","number":76,"shoots":"R","position":"D","height_in":74,"weight_lb":183,"birth_country":"CAN"},{"id":8481570,"name":"Cade Webber","group":"defensemen","number":52,"shoots":"L","position":"D","height_in":79,"weight_lb":212,"birth_country":"USA"},{"id":8482515,"name":"Artur Akhtyamov","group":"goalies","number":70,"shoots":"L","position":"G","height_in":74,"weight_lb":170,"birth_country":"RUS"},{"id":8483710,"name":"Dennis Hildeby","group":"goalies","number":35,"shoots":"L","position":"G","height_in":79,"weight_lb":224,"birth_country":"SWE"},{"id":8476899,"name":"Matt Murray","group":"goalies","number":30,"shoots":"L","position":"G","height_in":77,"weight_lb":220,"birth_country":"CAN"},{"id":8476932,"name":"Anthony Stolarz","group":"goalies","number":41,"shoots":"L","position":"G","height_in":78,"weight_lb":243,"birth_country":"USA"},{"id":8479361,"name":"Joseph Woll","group":"goalies","number":60,"shoots":"L","position":"G","height_in":75,"weight_lb":206,"birth_country":"USA"}]},"meta":{"timestamp":"2026-06-01T00:04:09.778Z","request_id":"bd278fa3-0bf1-48f2-8925-2f4e9338ff25"},"status":"ok","message":"Roster retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/player":{"get":{"operationId":"get_v1_player","tags":["Players"],"summary":"Player bio + season & career stats","description":"","parameters":[{"name":"id","in":"query","required":false,"description":"NHL player id","schema":{"type":"string"},"example":"8478402"},{"name":"name","in":"query","required":false,"description":"Player name","schema":{"type":"string"},"example":"Connor McDavid"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"player":{"id":8478402,"name":"Connor McDavid","team":{"abbr":"EDM","name":"Edmonton Oilers"},"number":97,"shoots":"L","headshot":"https://assets.nhle.com/mugs/nhl/20252026/EDM/8478402.png","position":"C","height_in":73,"is_active":true,"weight_lb":194,"birth_city":"Richmond Hill","birth_date":"1997-01-13","career_stats":{"pim":330,"goals":409,"shots":2713,"avgToi":"21:52","points":1220,"assists":811,"otGoals":17,"plusMinus":186,"gamesPlayed":794,"shootingPctg":0.1507,"powerPlayGoals":100,"powerPlayPoints":418,"gameWinningGoals":76,"shorthandedGoals":9,"shorthandedPoints":19,"faceoffWinningPctg":0.4792},"season_stats":{"pim":44,"goals":48,"shots":306,"points":138,"assists":90,"otGoals":1,"plusMinus":17,"gamesPlayed":82,"shootingPctg":0.156863,"powerPlayGoals":13,"powerPlayPoints":54,"gameWinningGoals":4,"shorthandedGoals":1,"shorthandedPoints":2},"birth_country":"CAN"}},"meta":{"timestamp":"2026-06-01T00:04:09.972Z","request_id":"adcfb913-9ba5-46ca-b671-f5f0dae5837d"},"status":"ok","message":"Player retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/game":{"get":{"operationId":"get_v1_game","tags":["Games"],"summary":"Box score for a game","description":"","parameters":[{"name":"id","in":"query","required":true,"description":"Game id (from /v1/schedule)","schema":{"type":"string"},"example":"2024021291"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"id":2024021291,"away":{"sog":26,"abbr":"NJD","name":"New Jersey Devils","score":5},"home":{"sog":24,"abbr":"BOS","name":"Boston Bruins","score":4},"type":"regular","state":"OFF","venue":"TD Garden","period":4,"start_utc":"2025-04-15T23:00:00Z","period_type":"OT"},"meta":{"timestamp":"2026-06-01T00:04:10.343Z","request_id":"2baf3a8d-183e-461b-8a6a-01a83d0a5acd"},"status":"ok","message":"Game retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Usage notes","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"National Hockey League data. /v1/teams = the 32 clubs (filter conference=Eastern|Western, division=Atlantic|Metropolitan|Central|Pacific); /v1/standings = current standings (W-L-OT, points, pct, goals for/against, streak, last 10, division/conference rank); /v1/schedule?date=YYYY-MM-DD = games & scores (default today); /v1/roster?team=TOR&season=20242025 = a team's roster; /v1/player?name=Connor McDavid or id=8478402 = bio + current-season & career stats; /v1/game?id=2024021291 = box score by game id. Teams resolve by tricode (TOR) or name. Official data from the NHL.","source":"NHL Web API (api-web.nhle.com) + player search (search.d3.nhle.com)","endpoints":["/v1/teams","/v1/standings","/v1/schedule","/v1/roster","/v1/player","/v1/game","/v1/meta"]},"meta":{"timestamp":"2026-06-01T00:04:10.388Z","request_id":"7224a05e-0e36-4965-9c02-5d12e55a0ce1"},"status":"ok","message":"Meta retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":3800,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":620,"monthly_call_quota":48000,"rps_limit":6,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1740,"monthly_call_quota":240000,"rps_limit":16,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":4590,"monthly_call_quota":1200000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/nhl-api"}