A minimum-dependency R interface to the NHL API.

CRAN Version CRAN Checks Dependencies Remote API Tests Coverage

{nhlapi} is an R package that provides functionality to retrieve and process the data exposed by the open NHL API. This includes information on players, teams, games, tournaments, drafts, standings, schedules and other endpoints. A lower-level interface to access the data via URLs directly is also provided. See below for a full list of endpoints.


You can install {nhlapi} from CRAN:


You can also install the latest development version from the master branch on GitHub using the {remotes} or {devtools} packages:

# With remotes

# Or with devtools

Use and develop with Docker

The Docker image jozefhajnala/nhlapi has RStudio and a set of useful packages for both interactive use of the {nhlapi} package and its development.

Running the following command and opening localhost:8787 in a web browser should open RStudio with a setup ready for analysis and development. Login user is rstudio and password is pass:

# Password can be changed by changing the PASSWORD option below:
# If you need root permissions, add `-e ROOT=true`
docker run --rm -p 8787:8787 -e PASSWORD=pass jozefhajnala/nhlapi


We retrieve the data from the NHL API by calling the functions exported by the {nhlapi} package. They start with nhl_ so you can easily find them with auto-complete in your favorite editor:

nhlapi Preview

In-depth look at use

The package’s vignettes provide a more detailed overview of some of the functionality:

Implemented API endpoints

Major endpoints

Minor endpoints

Metadata endpoints


Thanks go to Drew Hynes for documenting this so well on GitLab.

NHL and the NHL Shield are registered trademarks of the National Hockey League. NHL and NHL team marks are the property of the NHL and its teams. © NHL 2021. All Rights Reserved.