The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Title: Scraper for National Hockey League Data
Version: 0.5.0
Description: Scrapes and cleans data from the 'NHL' and 'ESPN' APIs into data.frames and lists. Wraps 125+ endpoints documented in https://github.com/RentoSaijo/nhlscraper/wiki from high-level multi-season summaries and award winners to low-level decisecond replays and bookmakers' odds, making them more accessible. Features cleaning and visualization tools, primarily for play-by-plays.
License: GPL (≥ 3)
Encoding: UTF-8
RoxygenNote: 7.3.3
Depends: R (≥ 4.1.0)
Imports: httr2 (≥ 1.2.0), jsonlite (≥ 2.0.0)
Suggests: testthat (≥ 3.0.0), knitr (≥ 1.50.0), rmarkdown (≥ 2.29.0)
Config/testthat/edition: 3
VignetteBuilder: knitr
URL: https://rentosaijo.github.io/nhlscraper/, https://github.com/RentoSaijo/nhlscraper
BugReports: https://github.com/RentoSaijo/nhlscraper/issues
Copyright: Copyright: 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.
NeedsCompilation: no
Packaged: 2026-02-24 21:31:23 UTC; rsai_91
Author: Rento Saijo ORCID iD [aut, cre, cph], Lars Skytte [ctb]
Maintainer: Rento Saijo <rentosaijo0527@gmail.com>
Repository: CRAN
Date/Publication: 2026-02-24 21:50:02 UTC

Add goalie biometrics to (a) play-by-play(s)

Description

add_goalie_biometrics() adds goalie biometrics (height, weight, age at game date, and glove/blocker/neutral side) to (a) play-by-play(s) for Fenwick events.

Usage

add_goalie_biometrics(play_by_play, neutral_threshold = 5)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play(), gc_play_by_plays(), wsc_play_by_play(), or wsc_play_by_plays() for reference; the original columns must exist

neutral_threshold

integer; absolute yCoordNorm at or below which goalieSide is set to 'neutral'

Value

data.frame with one row per event (play) and added columns: goalieHeight, goalieWeight, goalieAge, goalieSide


Add on-ice player IDs to a play-by-play by merging with shift charts

Description

add_on_ice_players() merges a play-by-play with a shift chart to determine which players are on the ice at each event. It adds home- and away-team on-ice player ID lists, as well as event-perspective for/against player ID lists when isHome is available.

Usage

add_on_ice_players(play_by_play, shift_chart)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play(), gc_play_by_plays(), wsc_play_by_play(), or wsc_play_by_plays() for reference; the original columns must exist

shift_chart

data.frame of shift chart(s); see shift_chart() or shift_charts() for reference; the original columns must exist

Value

data.frame with one row per event (play) and added list-columns: homePlayerIds, awayPlayerIds, playerIdsFor, and playerIdsAgainst

Examples

# May take >5s, so skip.
gc_pbp_enhanced <- add_on_ice_players(gc_pbp(), shift_chart())

Add shooter biometrics to (a) play-by-play(s)

Description

add_shooter_biometrics() adds shooter biometrics (height, weight, age at game date, and onwing/offwing/neutral side) to (a) play-by-play(s) for Fenwick events.

Usage

add_shooter_biometrics(play_by_play, neutral_threshold = 5)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play(), gc_play_by_plays(), wsc_play_by_play(), or wsc_play_by_plays() for reference; the original columns must exist

neutral_threshold

integer; absolute yCoordNorm at or below which shooterSide is set to 'neutral'

Value

data.frame with one row per event (play) and added columns: shooterHeight, shooterWeight, shooterAge, shooterSide


Access the attendance by season and game type

Description

attendance() retrieves the attendance by season and game type as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context.

Usage

attendance()

Value

data.frame with one row per season

Examples

all_attendance <- attendance()

Access all the award winners/finalists

Description

award_winners() retrieves all the award winners/finalists as a data.frame where each row represents winner/finalist and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and player identity, role, handedness, and biographical profile.

Usage

award_winners()

Value

data.frame with one row per winner/finalist

Examples

all_award_winners <- award_winners()

Access all the awards

Description

awards() retrieves all the awards as a data.frame where each row represents award and includes detail on recognition, leaderboard, and milestone-watch context.

Usage

awards()

Value

data.frame with one row per award

Examples

all_awards <- awards()

Access the boxscore for a game, team, and position

Description

boxscore() retrieves the boxscore for a game, team, and position as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile plus production, workload, efficiency, and result-level performance outcomes.

Usage

boxscore(game = 2023030417, team = "home", position = "forwards")

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

team

character of 'h'/'home' or 'a'/'away'

position

character of 'f'/'forwards', 'd'/'defensemen', or 'g'/'goalies'

Value

data.frame with one row per player

Examples

boxscore_COL_forwards_Martin_Necas_legacy_game <- boxscore(
  game     = 2025020275,
  team     = 'H',
  position = 'F'
)

Access the playoff bracket for a season

Description

bracket() retrieves the playoff bracket for a season as a data.frame where each row represents series and includes detail on team identity, affiliation, and matchup-side context.

Usage

bracket(season = season_now())

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

data.frame with one row per series

Examples

bracket_20242025 <- bracket(season = 20242025)

Calculate the Euclidean angle from the attacking net for all the events (plays) in a play-by-play

Description

calculate_angle() calculates the Euclidean angle from the attacking net for all the events (plays) in a play-by-play.

Usage

calculate_angle(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added angle column


Calculate the Euclidean distance from the attacking net for all the events (plays) in a play-by-play

Description

calculate_distance() calculates the Euclidean distance from the attacking net for all the events (plays) in a play-by-play.

Usage

calculate_distance(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added distance column


Calculate the expected goals for all the shots in (a) play-by-plays

Description

calculate_expected_goals() calculates the expected goals for all the shots in (a) play-by-play(s) using the provided model.

Usage

calculate_expected_goals(play_by_play, model = 1)

calculate_xG(play_by_play, model = 1)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play(), gc_play_by_plays(), wsc_play_by_play(), or wsc_play_by_plays() for reference; the original columns must exist

model

integer in 1:4 indicating which expected goals model to use; see web documentation for what variables each model considers

Value

data.frame with one row per event (play) and added xG column

Examples

# May take >5s, so skip.

  pbp <- gc_play_by_play()
  pbp_with_xG_v3 <- calculate_expected_goals(play_by_play = pbp, model = 3)


Calculate event-to-event deltas and speeds in normalized x/y, distance, and angle for a play-by-play

Description

calculate_speed() calculates event-to-event deltas and speeds in normalized x/y, distance, and angle for a play-by-play.

Usage

calculate_speed(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play(), gc_play_by_plays(), wsc_play_by_play(), or wsc_play_by_plays() for reference; the original columns must exist

Value

data.frame with one row per event (play) and added columns: dXN, dYN, dD, dA, dT, dXNdT, dYNdT, dDdT, dAdT


Access the career statistics for all the coaches

Description

coach_career_statistics() retrieves the career statistics for all the coaches as a data.frame where each row represents coach and includes detail on ranking movement, points pace, and division/conference position signals.

Usage

coach_career_statistics()

coach_career_stats()

Value

data.frame with one row per coach

Examples

coach_career_stats <- coach_career_statistics()

Access the statistics for all the coaches by franchise and game type

Description

coach_franchise_statistics() retrieves the statistics for all the coaches by franchise and game type as a data.frame where each row represents franchise per coach per game type and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and player identity, role, handedness, and biographical profile.

Usage

coach_franchise_statistics()

coach_franchise_stats()

Value

data.frame with one row per franchise per coach per game type

Examples

coach_franchise_stats <- coach_franchise_statistics()

Access all the coaches

Description

coaches() retrieves all the coaches as a data.frame where each row represents coach and includes detail on team identity, affiliation, and matchup-side context plus player identity, role, handedness, and biographical profile.

Usage

coaches()

Value

data.frame with one row per coach

Examples

all_coaches <- coaches()

Access the draft combine reports

Description

combine_reports() retrieves the draft combine reports as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile.

Usage

combine_reports()

Value

data.frame with one row per player

Examples

combine_reports <- combine_reports()

Access all contracts from packaged internal data

Description

contracts() loads preprocessed contract records bundled with the package and returns a cleaned data.frame with package-consistent column names, season IDs, numeric money fields, and team/player identifiers.

Usage

contracts()

Value

data.frame with one row per contract

Examples

all_contracts <- contracts()

Count the as-of-event goal, shots on goal, Fenwick, and Corsi attempts and differentials for all the events (plays) in a play-by-play by perspective

Description

count_goals_shots() counts the as-of-event goal, shots on goal, Fenwick, and Corsi attempts and differentials for all the events (plays) in a play-by-play by perspective.

Usage

count_goals_shots(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added columns: homeGoals, awayGoals, homeSOG, awaySOG, homeFenwick, awayFenwick, homeCorsi, awayCorsi, goalsFor, goalsAgainst, SOGFor, SOGAgainst, fenwickFor, fenwickAgainst, corsiFor, corsiAgainst, goalDifferential, SOGDifferential, fenwickDifferential, and corsiDifferential


Access all the countries

Description

countries() retrieves all the countries as a data.frame where each row represents country and includes detail on reference metadata, regional context, and media availability detail.

Usage

countries()

Value

data.frame with one row per country

Examples

all_countries <- countries()

Convert dot-delimited names to camelCase

Description

Convert dot-delimited names to camelCase

Usage

dot_to_camel(x)

Arguments

x

character vector

Value

character vector


Access all the draft picks

Description

draft_picks() retrieves all the draft picks as a data.frame where each row represents pick and includes detail on team identity, affiliation, and matchup-side context plus player identity, role, handedness, and biographical profile.

Usage

draft_picks()

Value

data.frame with one row per pick

Examples

# May take >5s, so skip.
all_draft_picks <- draft_picks()

Access all the draft prospects

Description

draft_prospects() retrieves all the draft prospects as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile plus broadcast carriage, media availability, and viewing-link metadata.

Usage

draft_prospects()

Value

data.frame with one row per player

Examples

# May take >5s, so skip.
all_prospects <- draft_prospects()

Access the draft rankings for a class and category

Description

draft_rankings() retrieves the draft rankings for a class and category as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile plus draft-board context, scouting background, and pick/round progression.

Usage

draft_rankings(class = season_now()%%10000, category = 1)

Arguments

class

integer in YYYY (e.g., 2017); see drafts() for reference

category

integer in 1:4 (where 1 = North American Skaters, 2 = International Skaters, 3 = North American Goalies, and 4 = International Goalies) OR character of 'NAS'/'NA Skaters'/'North American Skaters', 'INTLS'/'INTL Skaters'/'International Skaters', 'NAG'/'NA Goalies'/'North American Goalies', 'INTLG'/'INTL Goalies'/'International Goalies'

Value

data.frame with one row per player

Examples

draft_rankings_INTL_Skaters_2017 <- draft_rankings(
  class    = 2017, 
  category = 2
)

Access the real-time draft tracker

Description

draft_tracker() retrieves the real-time draft tracker as a data.frame where each row represents player and includes detail on team identity, affiliation, and matchup-side context, player identity, role, handedness, and biographical profile, and venue/location geography and regional metadata.

Usage

draft_tracker()

Value

data.frame with one row per player

Examples

draft_tracker <- draft_tracker()

Access all the drafts

Description

drafts() retrieves all the drafts as a data.frame where each row represents draft and includes detail on venue/location geography and regional metadata.

Usage

drafts()

Value

data.frame with one row per draft

Examples

all_drafts <- drafts()

Draw a full NHL rink

Description

draw_NHL_rink() draws a full NHL rink such that the x and y coordinates span -100 to 100 and -43 to +43, respectively. Use graphics::points() to create custom graphs; check out an example on the online documentation!

Usage

draw_NHL_rink()

Value

NULL

Examples

draw_NHL_rink()

Draw an arc on the rink

Description

draw_rink_arc() draws an arc on the rink.

Usage

draw_rink_arc(cx, cy, r, theta1, theta2, n = 100, col = "black", lwd = 1)

Arguments

cx

numeric x coordinate of the circle center

cy

numeric y coordinate of the circle center

r

numeric radius

theta1

numeric start angle of arc

theta2

numeric end angle of arc

n

integer number of points used to approximate arc

col

character color

lwd

numeric line width

Value

NULL


Draw a circle on the rink

Description

draw_rink_circle() draws a circle on the rink.

Usage

draw_rink_circle(x, y, r, n = 200, col = "black", lwd = 1)

Arguments

x

numeric x coordinate of the circle center

y

numeric y coordinate of the circle center

r

numeric radius

n

integer number of points used to approximate circle

col

character color

lwd

numeric line width

Value

NULL


Call the ESPN API with 429 (rate limit) error-handling

Description

Call the ESPN API with 429 (rate limit) error-handling

Usage

espn_api(path, query = list(), type)

Arguments

path

character

query

list

type

character of 'g' for general and 'c' for core

Value

parsed JSON (i.e., data.frame or list)


Access the ESPN futures for a season

Description

espn_futures() retrieves the ESPN futures for a season as a data.frame where each row represents type and includes detail on betting market snapshots with side/total prices and provider variation.

Usage

espn_futures(season = season_now())

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

nested data.frame with one row per type (outer) and book (inner)

Examples

ESPN_futures_20252026 <- espn_futures(20252026)

Access the ESPN odds for a game

Description

espn_game_odds() retrieves the ESPN odds for a game as a data.frame where each row represents provider and includes detail on team identity, affiliation, and matchup-side context plus betting market snapshots with side/total prices and provider variation.

Usage

espn_game_odds(game = 401777460)

Arguments

game

integer ID (e.g., 401777460); see espn_games() for reference

Value

data.frame with one row per provider

Examples

ESPN_odds_SCF_20242025 <- espn_game_odds(game = 401777460)

Access the ESPN summary for a game

Description

espn_game_summary() retrieves the ESPN summary for a game as a nested list that separates summary and detail blocks for date/season filtering windows and chronological context, venue/location geography and regional metadata, and playoff-series progression, round status, and series leverage.

Usage

espn_game_summary(game = 401777460)

Arguments

game

integer ID (e.g., 401777460); see espn_games() for reference

Value

list with various items

Examples

ESPN_summary_SCF_20242025 <- espn_game_summary(game = 401777460)

Access the ESPN games for a season

Description

espn_games() retrieves the ESPN games for a season as a data.frame where each row represents ESPN and includes detail on game timing, matchup state, scoring flow, and situational event detail.

Usage

espn_games(season = season_now())

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

data.frame with one row per ESPN game

Examples

ESPN_games_20242025 <- espn_games(season = 20242025)

Access the real-time ESPN injury reports

Description

espn_injuries() retrieves the real-time ESPN injury reports as a data.frame where each row represents team and includes detail on availability status tracking for injuries or transactions.

Usage

espn_injuries()

Value

nested data.frame with one row per team (outer) and player (inner)

Examples

ESPN_injuries_now <- espn_injuries()

Access the ESPN play-by-play for a game

Description

espn_play_by_play() retrieves the ESPN play-by-play for a game as a data.frame where each row represents event and includes detail on game timeline state, period/clock progression, and matchup flow, team identity, affiliation, and matchup-side context, and situational splits across home/road, strength state, and overtime/shootout states.

Usage

espn_play_by_play(game = 401777460)

espn_pbp(game = 401777460)

Arguments

game

integer ID (e.g., 401777460); see espn_games() for reference

Value

data.frame with one row per event (play)

Examples

ESPN_pbp_SCF_20242025 <- espn_play_by_play(game = 401777460)

Access the ESPN summary for a player

Description

espn_player_summary() retrieves the ESPN summary for a player as a data.frame where each row represents one result and includes detail on game timing, matchup state, scoring flow, and situational event detail.

Usage

espn_player_summary(player = 3988803)

Arguments

player

integer ID (e.g., 3988803); see espn_players() for reference

Value

data.frame with one row

Examples

ESPN_summary_Charlie_McAvoy <- espn_player_summary(player = 3988803)

Access all the ESPN players

Description

espn_players() retrieves all the ESPN players as a data.frame where each row represents ESPN player and includes detail on person-level profile context and performance history with situational splits.

Usage

espn_players()

Value

data.frame with one row per ESPN player

Examples

all_ESPN_players <- espn_players()

Access the ESPN summary for a team

Description

espn_team_summary() retrieves the ESPN summary for a team as a data.frame where each row represents one result and includes detail on game timing, matchup state, scoring flow, and situational event detail.

Usage

espn_team_summary(team = 1)

Arguments

team

integer ID (e.g., 1); see espn_teams() for reference

Value

data.frame with one row

Examples

ESPN_summary_Boston_Bruins <- espn_team_summary(team = 1)

Access all the ESPN teams

Description

espn_teams() retrieves all the ESPN teams as a data.frame where each row represents ESPN team and includes detail on team composition, matchup context, and season progression detail.

Usage

espn_teams()

Value

data.frame with one row per ESPN team

Examples

all_ESPN_teams <- espn_teams()

Access the ESPN transactions for a season

Description

espn_transactions() retrieves the ESPN transactions for a season as a data.frame where each row represents transaction and includes detail on availability and transaction-status tracking detail.

Usage

espn_transactions(season = season_now())

Arguments

season

integer in YYYYYYYY (e.g., 20242025); the summer of the latter year is included

Value

data.frame with one row per transaction

Examples

ESPN_transactions_20242025 <- espn_transactions(season = 20242025)

Access all the expansion draft picks

Description

expansion_draft_picks() retrieves all the expansion draft picks as a data.frame where each row represents pick and includes detail on date/season filtering windows and chronological context plus team identity, affiliation, and matchup-side context.

Usage

expansion_draft_picks()

Value

data.frame with one row per pick

Examples

all_expansion_draft_picks <- expansion_draft_picks()

Access all the expansion drafts

Description

expansion_drafts() retrieves all the expansion drafts as a data.frame where each row represents expansion draft and includes detail on date/season filtering windows and chronological context plus reference definitions and rules-framework information.

Usage

expansion_drafts()

Value

data.frame with one row per expansion draft

Examples

all_expansion_drafts <- expansion_drafts()

Flag if the event belongs to the home team or not for all the events (plays) in a play-by-play

Description

flag_is_home() flags if the event belongs to the home team or not for all the events (plays) in a play-by-play.

Usage

flag_is_home(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added isHome column


Flag if the shot attempt is a rebound attempt or creates a rebound for all the shots in a play-by-play

Description

flag_is_rebound() flags whether a shot attempt is a rebound attempt (i.e., taken within 3 seconds of a prior blocked, missed, or saved attempt with no stoppage in between), and whether a shot attempt creates a rebound under the same definition.

Usage

flag_is_rebound(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added columns: createdRebound and isRebound


Flag if the shot attempt is a rush attempt or not for all the shots in a play-by-play

Description

flag_is_rush() flags whether a shot attempt is a rush attempt, defined as any shot attempt occurring within 4 seconds of a prior event in the neutral or defensive zone with no stoppage in play in between.

Usage

flag_is_rush(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added isRush column


Access the playoff series results for all the franchises by situation

Description

franchise_playoff_situational_results() retrieves the playoff series results for all the franchises by situation as a data.frame where each row represents franchise per situation and includes detail on team identity, affiliation, and matchup-side context.

Usage

franchise_playoff_situational_results()

Value

data.frame with one row per franchise per situation

Examples

franchise_playoff_situational_results <- 
  franchise_playoff_situational_results()

Access the statistics for all the franchises by season and game type

Description

franchise_season_statistics() retrieves the statistics for all the franchises by season and game type as a data.frame where each row represents franchise per season per game type and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and production, workload, efficiency, and result-level performance outcomes.

Usage

franchise_season_statistics()

franchise_season_stats()

Value

data.frame with one row per franchise per season per game type

Examples

# May take >5s, so skip.
franchise_season_stats <- franchise_season_statistics()

Access the all-time statistics for all the franchises by game type

Description

franchise_statistics() retrieves the all-time statistics for all the franchises by game type as a data.frame where each row represents franchise per game type and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and production, workload, efficiency, and result-level performance outcomes.

Usage

franchise_statistics()

franchise_stats()

Value

data.frame with one row per franchise per game type

Examples

franchise_stats <- franchise_statistics()

Access the all-time statistics for all the franchises by team and game type

Description

franchise_team_statistics() retrieves the all-time statistics for all the franchises by team and game type as a data.frame where each row represents team per franchise per game type and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and production, workload, efficiency, and result-level performance outcomes.

Usage

franchise_team_statistics()

franchise_team_stats()

Value

data.frame with one row per team per franchise per game type

Examples

franchise_team_stats <- franchise_team_statistics()

Access the all-time statistics versus other franchises for all the franchises by game type

Description

franchise_versus_franchise() retrieves the all-time statistics versus other franchises for all the franchises by game type as a data.frame where each row represents franchise per franchise per game type and includes detail on date/season filtering windows and chronological context plus team identity, affiliation, and matchup-side context.

Usage

franchise_versus_franchise()

franchise_vs_franchise()

Value

data.frame with one row per franchise per franchise per game type

Examples

# May take >5s, so skip.
franchise_vs_franchise <- franchise_versus_franchise()

Access all the franchises

Description

franchises() retrieves all the franchises as a data.frame where each row represents franchise and includes detail on team identity, affiliation, and matchup-side context.

Usage

franchises()

Value

data.frame with one row per franchise

Examples

all_franchises <- franchises()

Access the real-time game odds for a country by partnered bookmaker

Description

game_odds() retrieves the real-time game odds for a country by partnered bookmaker as a data.frame where each row represents game and includes detail on betting market lines, prices, and provider-level context.

Usage

game_odds(country = "US")

Arguments

country

two-letter code (e.g., 'CA'); see countries() for reference

Value

data.frame with one row per game

Examples

game_odds_CA <- game_odds(country = 'CA')

Access the rosters for a game

Description

game_rosters() retrieves the rosters for a game as a data.frame where each row represents player and includes detail on team identity, affiliation, and matchup-side context plus player identity, role, handedness, and biographical profile.

Usage

game_rosters(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

data.frame with one row per player

Examples

rosters_Martin_Necas_legacy_game <- game_rosters(game = 2025020275)

Access the game type as of now

Description

game_type_now() retrieves the game type as of now and returns a scalar integer used as the current-context default in season/game-type dependent wrappers.

Usage

game_type_now()

Value

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season)

Examples

game_type_now <- game_type_now()

Access all the games

Description

games() retrieves all the games as a data.frame where each row represents game and includes detail on game timeline state, period/clock progression, and matchup flow plus date/season filtering windows and chronological context.

Usage

games()

Value

data.frame with one row per game

Examples

# May take >5s, so skip.
all_games <- games()

Access the GameCenter (GC) play-by-play for a game

Description

gc_play_by_play() retrieves the GameCenter (GC) play-by-play for a game as a data.frame where each row represents event and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and player identity, role, handedness, and biographical profile.

Usage

gc_play_by_play(game = 2023030417)

gc_pbp(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

data.frame with one row per event (play)

Examples

gc_pbp_Martin_Necas_legacy_game <- gc_play_by_play(game = 2025020275)

Access the GameCenter (GC) play-by-plays for a season

Description

gc_play_by_plays() loads the GC play-by-plays for a given season.

Usage

gc_play_by_plays(season = 20242025)

gc_pbps(season = 20242025)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

data.frame with one row per event (play) per game

Examples

# May take >5s, so skip.
gc_pbps_20212022 <- gc_play_by_plays(season = 20212022)

Access the GameCenter (GC) summary for a game

Description

gc_summary() retrieves the GameCenter (GC) summary for a game as a nested list that separates summary and detail blocks for game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and venue/location geography and regional metadata.

Usage

gc_summary(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

list of various items

Examples

gc_summary_Martin_Necas_legacy_game <- gc_summary(game = 2025020275)

Access all the general managers

Description

general_managers() retrieves all the general managers as a data.frame where each row represents general manager and includes detail on player identity, role, handedness, and biographical profile.

Usage

general_managers()

gms()

Value

data.frame with one row per general manager

Examples

all_GMs <- general_managers()

Access the attendance by season and game type

Description

get_attendance() is deprecated. Use attendance() instead.

Usage

get_attendance()

Value

data.frame with one row per season


Access all the award winners/finalists

Description

get_award_winners() is deprecated. Use award_winners() instead.

Usage

get_award_winners()

Value

data.frame with one row per winner/finalist


Access all the awards

Description

get_awards() is deprecated. Use awards() instead.

Usage

get_awards()

Value

data.frame with one row per award


Access the playoff bracket for a season

Description

get_bracket() is deprecated. Use bracket() instead.

Usage

get_bracket(season = season_now())

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

data.frame with one row per series


Access the configurations for team, skater, and goalie reports

Description

get_configuration() is defunct. Use team_report_configurations(), skater_report_configurations(), and/or goalie_report_configurations() instead.

Usage

get_configuration()

Access all the countries

Description

get_countries() is deprecated. Use countries() instead.

Usage

get_countries()

Value

data.frame with one row per country


Access all the draft picks

Description

get_draft_picks() is deprecated. Use draft_picks() instead.

Usage

get_draft_picks()

Value

data.frame with one row per pick


Access the draft rankings for a year and player type

Description

get_draft_rankings() is deprecated. Use draft_rankings() instead.

Usage

get_draft_rankings(year = season_now()%/%10000, player_type = 1)

Arguments

year

integer in YYYY (e.g., 2017); see drafts() for reference

player_type

integer in 1:4 (where 1 = North American Skaters, 2 = International Skaters, 3 = North American Goalies, and 4 = International Goalies)

Value

data.frame with one row per player


Access the real-time draft tracker

Description

get_draft_tracker() is deprecated. Use draft_tracker() instead.

Usage

get_draft_tracker()

Value

data.frame with one row per player


Access all the drafts

Description

get_drafts() is deprecated. Use drafts() instead.

Usage

get_drafts()

Value

data.frame with one row per draft


Access the ESPN summary for an athlete (player) and season

Description

get_espn_athlete() is defunct. Use espn_player_summary() instead.

Usage

get_espn_athlete()

Access all the ESPN athletes (players)

Description

get_espn_athletes() is deprecated. Use espn_players() instead.

Usage

get_espn_athletes()

Value

data.frame with one row per ESPN athlete (player)


Access the ESPN statistics for a coach and (multiple) season(s)

Description

get_espn_coach() is defunct. Use coach_career_statistics() instead.

Usage

get_espn_coach()

Access the career ESPN statistics for a coach

Description

get_espn_coach_career() is defunct. Use coach_career_statistics() instead.

Usage

get_espn_coach_career()

Access the ESPN coaches for a season

Description

get_espn_coaches() is defunct. Use coaches() instead.

Usage

get_espn_coaches()

Access the ESPN summary for an event (game)

Description

get_espn_event() is deprecated. Use espn_game_summary() instead.

Usage

get_espn_event(event = 401777460)

Arguments

event

integer ID (e.g., 401777460); see espn_games() for reference

Value

data.frame with one row per event (game)


Access the ESPN odds for an event (game)

Description

get_espn_event_odds() is deprecated. Use espn_game_odds() instead.

Usage

get_espn_event_odds(event = 401777460)

Arguments

event

integer ID (e.g., 401777460); see espn_games() for reference

Value

data.frame with one row per provider


Access the officials for an ESPN event (game)

Description

get_espn_event_officials() is defunct. Use gc_summary() and/or wsc_summary() instead.

Usage

get_espn_event_officials()

Access the ESPN play-by-play for an event (game)

Description

get_espn_event_play_by_play() is deprecated. Use espn_play_by_play() instead.

Usage

get_espn_event_play_by_play(event = 401777460)

Arguments

event

integer ID (e.g., 401777460); see espn_games() for reference

Value

data.frame with one row per play


Access the three stars for an ESPN event (game)

Description

get_espn_event_stars() is defunct. Use gc_summary() and/or wsc_summary() instead.

Usage

get_espn_event_stars()

Access the ESPN events (games) by start and end dates

Description

get_espn_events() is defunct. Use espn_games() instead.

Usage

get_espn_events()

Access the ESPN futures for a season

Description

get_espn_futures() is defunct. Use espn_futures() instead.

Usage

get_espn_futures()

Access the real-time ESPN injury reports

Description

get_espn_injuries() is deprecated. Use espn_injuries() instead.

Usage

get_espn_injuries()

Value

nested data.frame with one row per team (outer) and player (inner)


Access the ESPN summary for a team and season

Description

get_espn_team() is defunct. Use espn_team_summary() instead.

Usage

get_espn_team()

Access all the ESPN teams for a season

Description

get_espn_teams() is defunct. Use espn_teams() instead.

Usage

get_espn_teams()

Access the ESPN transactions by start and end dates

Description

get_espn_transactions() is defunct. Use espn_transactions() instead.

Usage

get_espn_transactions()

Access the statistics for all the franchises by season and game type

Description

get_franchise_season_by_season() is deprecated. Use franchise_season_statistics() instead.

Usage

get_franchise_season_by_season()

Value

data.frame with one row per franchise per season per game type


Access the all-time statistics for all the franchises by team and game type

Description

get_franchise_team_totals() is deprecated. Use franchise_team_statistics() instead.

Usage

get_franchise_team_totals()

Value

data.frame with one row per team per franchise per game type


Access the all-time statistics versus other franchises for all the franchises by game type

Description

get_franchise_vs_franchise() is deprecated. Use franchise_versus_franchise() instead.

Usage

get_franchise_vs_franchise()

Value

data.frame with one row per franchise per franchise per game type


Access all the franchises

Description

get_franchises() is deprecated. Use franchises() instead.

Usage

get_franchises()

Value

data.frame with one row per franchise


Access the boxscore for a game, team, and player type

Description

get_game_boxscore() is deprecated. Use boxscore() instead.

Usage

get_game_boxscore(game = 2023030417, team = "home", player_type = "forwards")

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

team

character of 'home' or 'away'

player_type

character of 'forwards', 'defense', or 'goalies'

Value

data.frame with one row per player


Access the GameCenter (GC) summary for a game

Description

get_game_landing() is deprecated. Use gc_summary() instead.

Usage

get_game_landing(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

list of various items


Access the World Showcase (WSC) summary for a game

Description

get_game_story() is deprecated. Use wsc_summary() instead.

Usage

get_game_story(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

list of various items


Access all the games

Description

get_games() is deprecated. Use games() instead.

Usage

get_games()

Value

data.frame with one row per game


Access the GameCenter (GC) play-by-play for a game

Description

get_gc_play_by_play() is deprecated. Use gc_play_by_play() instead.

Usage

get_gc_play_by_play(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

data.frame with one row per event (play)


Access the glossary

Description

get_glossary() is deprecated. Use glossary() instead.

Usage

get_glossary()

Value

data.frame with one row per terminology


Access the goalie statistics leaders for a season, game type, and category

Description

get_goalie_leaders() is deprecated. Use goalie_leaders() instead.

Usage

get_goalie_leaders(season = "current", game_type = "", category = "wins")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character of 'wins', 'shutouts', 'savePctg', or 'goalsAgainstAverage'

Value

data.frame with one row per player


Access the goalies on milestone watch

Description

get_goalie_milestones() is deprecated. Use goalie_milestones() instead.

Usage

get_goalie_milestones()

Value

data.frame with one row per player


Access various reports for all the goalies by season or game

Description

get_goalie_statistics() is defunct. Use goalie_season_report() or goalie_game_report() instead.

Usage

get_goalie_statistics()

Access all the goalies for a range of seasons

Description

get_goalies() is defunct. Use players() instead.

Usage

get_goalies()

Access all the officials

Description

get_officials() is deprecated. Use officials() instead.

Usage

get_officials()

Value

data.frame with one row per official


Access the real-time game odds for a country by partnered bookmaker

Description

get_partner_odds() is deprecated. Use game_odds() instead.

Usage

get_partner_odds(country = "US")

Arguments

country

two-letter code (e.g., 'CA'); see countries() for reference

Value

data.frame with one row per game


Access the game log for a player, season, and game type

Description

get_player_game_log() is deprecated. Use player_game_log() instead.

Usage

get_player_game_log(player = 8478402, season = "now", game_type = "")

Arguments

player

integer ID (e.g., 8480039); see players() for reference

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

Value

data.frame with one row per game


Access the summary for a player

Description

get_player_landing() is deprecated. Use player_summary() instead.

Usage

get_player_landing(player = 8478402)

Arguments

player

integer ID (e.g., 8480039); see players() for reference

Value

list with various items


Access all the players

Description

get_players() is deprecated. Use players() instead.

Usage

get_players()

Value

data.frame with one row per player


Access the schedule for a date

Description

get_schedule() is deprecated. Use schedule() instead.

Usage

get_schedule(date = "2025-01-01")

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per game


Access the scoreboards for a date

Description

get_scoreboards() is deprecated. Use scores() instead.

Usage

get_scoreboards(date = "now")

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per game


Access the scores for a date

Description

get_scores() is deprecated. Use scores() instead.

Usage

get_scores(date = "now")

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per game


Access the season and game type as of now

Description

get_season_now() is defunct. Use season_now() and/or game_type_now() instead.

Usage

get_season_now()

Access all the seasons

Description

get_seasons() is deprecated. Use seasons() instead.

Usage

get_seasons()

Value

data.frame with one row per season


Access the playoff series for a season and round

Description

get_series() is defunct.

Usage

get_series()

Access the playoff schedule for a season and series

Description

get_series_schedule() is deprecated. Use series_schedule() instead.

Usage

get_series_schedule(season = season_now(), series = "a")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

series

one-letter code (e.g., 'O'); see series() and/or bracket() for reference

Value

data.frame with one row per game


Access the shift charts for a game

Description

get_shift_charts() is deprecated. Use shift_chart() instead.

Usage

get_shift_charts(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

data.frame with one row per shift


Access the skater statistics leaders for a season, game type, and category

Description

get_skater_leaders() is deprecated. Use skater_leaders() instead.

Usage

get_skater_leaders(season = "current", game_type = "", category = "points")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character of 'assists', 'goals', 'goalsSh', 'goalsPp', 'points, 'penaltyMins', 'toi', 'plusMinus', or 'faceoffLeaders'

Value

data.frame with one row per player


Access the skaters on milestone watch

Description

get_skater_milestones() is deprecated. Use skater_milestones() instead.

Usage

get_skater_milestones()

Value

data.frame with one row per player


Access various reports for all the skaters by season or game

Description

get_skater_statistics() is defunct. Use skater_season_report() or skater_game_report() instead.

Usage

get_skater_statistics()

Access all the skaters for a range of seasons

Description

get_skaters() is defunct. Use players() instead.

Usage

get_skaters()

Access the spotlight players

Description

get_spotlight_players() is deprecated. Use spotlight_players() instead.

Usage

get_spotlight_players()

Value

data.frame with one row per player


Access the standings for a date

Description

get_standings() is deprecated. Use standings() instead.

Usage

get_standings(date = "2025-01-01")

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per team


Access the standings rules by season

Description

get_standings_information() is deprecated. Use standings_rules() instead.

Usage

get_standings_information()

Value

data.frame with one row per season


Access all the streams

Description

get_streams() is deprecated. Use streams() instead.

Usage

get_streams()

Value

data.frame with one row per stream


Access the prospects for a team and position

Description

get_team_prospects() is deprecated. Use team_prospects() instead.

Usage

get_team_prospects(team = "NJD", player_type = "forwards")

Arguments

team

three-letter code (e.g., 'COL'); see teams() for reference

player_type

character of 'forwards', 'defensemen', or 'goalies'

Value

data.frame with one row per player


Access the roster for a team, season, and player type

Description

get_team_roster() is deprecated. Use roster() instead.

Usage

get_team_roster(team = "NJD", season = "current", player_type = "forwards")

Arguments

team

three-letter code (e.g., 'COL'); see teams() for reference

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

player_type

character of 'forwards', 'defensemen', or 'goalies'

Value

data.frame with one row per player


Access the roster statistics for a team, season, game type, and player type

Description

get_team_roster_statistics() is deprecated. Use roster_statistics() instead.

Usage

get_team_roster_statistics(
  team = "NJD",
  season = "now",
  game_type = 2,
  player_type = "skaters"
)

Arguments

team

three-letter code (e.g., 'COL'); see teams() for reference

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

player_type

character of 'skaters' or 'goalies'

Value

data.frame with one row per player


Access the schedule for a team and season

Description

get_team_schedule() is deprecated. Use team_season_schedule() instead.

Usage

get_team_schedule(team = "NJD", season = "now")

Arguments

team

three-letter code (e.g., 'COL'); see teams() for reference

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

data.frame with one row per game


Access the team scoreboard as of now

Description

get_team_scoreboard() is defunct.

Usage

get_team_scoreboard()

Access the season(s) and game type(s) in which a team played

Description

get_team_seasons() is deprecated. Use team_seasons() instead.

Usage

get_team_seasons(team = "NJD")

Arguments

team

three-letter code (e.g., 'COL'); see teams() for reference

Value

data.frame with one row per season


Access various reports for all the teams by season or game

Description

get_team_statistics() is defunct. Use team_season_report() and/or team_game_report() instead.

Usage

get_team_statistics()

Access all the teams

Description

get_teams() is deprecated. Use teams() instead.

Usage

get_teams()

Value

data.frame with one row per team


Access the NHL Network TV schedule for a date

Description

get_tv_schedule() is deprecated. Use tv_schedule() instead.

Usage

get_tv_schedule(date = "now")

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per program


Access all the venues

Description

get_venues() is deprecated. Use venues() instead.

Usage

get_venues()

Value

data.frame with one row per venue


Access the World Showcase (WSC) play-by-play for a game

Description

get_wsc_play_by_play() is deprecated. Use wsc_play_by_play() instead.

Usage

get_wsc_play_by_play(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

data.frame with one row per event (play)


Access the glossary

Description

glossary() retrieves the glossary as a data.frame where each row represents terminology and includes detail on reference definitions and rules-framework information.

Usage

glossary()

Value

data.frame with one row per terminology

Examples

glossary <- glossary()

Access the EDGE 5 vs. 5 statistics for a goalie, season, game type, and category

Description

goalie_edge_five_versus_five() retrieves the EDGE 5 vs. 5 statistics for a goalie, season, game type, and category as a nested list that separates summary and detail blocks for production, workload, efficiency, and result-level performance outcomes plus NHL EDGE style tracking outputs and relative-performance context.

Usage

goalie_edge_five_versus_five(
  player = 8476945,
  season = "now",
  game_type = "",
  category = "details"
)

goalie_edge_5_vs_5(
  player = 8476945,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

player

integer ID (e.g., 8478406)

season

integer in YYYYYYYY (e.g., 20242025); see goalie_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see goalie_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 'l'/'l10'/'last 10'

Value

list with four items (category = 'details') or data.frame with one row per game (category = 'last 10')

Examples

Mackenzie_Blackwood_L10_5_vs_5_regular_20242025 <- goalie_edge_five_versus_five(
  player    = 8478406,
  season    = 20242025,
  game_type = 2,
  category  = 'L'
 )

Access the goalie EDGE statistics leaders for a season and game type

Description

goalie_edge_leaders() retrieves the goalie EDGE statistics leaders for a season and game type as a nested list that separates summary and detail blocks for NHL EDGE style tracking outputs and relative-performance context.

Usage

goalie_edge_leaders(season = "now", game_type = "")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see goalie_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see goalie_edge_seasons() for reference; most functions will NOT support pre-season

Value

list of various items

Examples

goalie_EDGE_leaders_regular_20242025 <- goalie_edge_leaders(
  season    = 20242025,
  game_type = 2
)

Access the EDGE save percentage statistics for a goalie, season, game type, and category

Description

goalie_edge_save_percentage() retrieves the EDGE save percentage statistics for a goalie, season, game type, and category as a nested list that separates summary and detail blocks for NHL EDGE style tracking outputs and relative-performance context.

Usage

goalie_edge_save_percentage(
  player = 8476945,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

player

integer ID (e.g., 8478406)

season

integer in YYYYYYYY (e.g., 20242025); see goalie_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see goalie_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 'l'/'l10'/'last 10'

Value

list with two items (category = 'details') or data.frame with one row per game (category = 'last 10')

Examples

Mackenzie_Blackwood_L10_sP_regular_20242025 <- 
  goalie_edge_save_percentage(
    player    = 8478406,
    season    = 20242025,
    game_type = 2,
    category  = 'L'
  )

Access the season(s) and game type(s) in which there exists goalie EDGE statistics

Description

goalie_edge_seasons() retrieves the season(s) and game type(s) in which there exists goalie EDGE statistics as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context plus NHL EDGE style tracking outputs and relative-performance context.

Usage

goalie_edge_seasons()

Value

data.frame with one row per season

Examples

goalie_EDGE_seasons <- goalie_edge_seasons()

Access the EDGE shot location statistics for a goalie, season, game type, and category

Description

goalie_edge_shot_location() retrieves the EDGE shot location statistics for a goalie, season, game type, and category as a data.frame where each row represents shot location and includes detail on production, workload, efficiency, and result-level performance outcomes plus NHL EDGE style tracking outputs and relative-performance context.

Usage

goalie_edge_shot_location(
  player = 8476945,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

player

integer ID (e.g., 8478406)

season

integer in YYYYYYYY (e.g., 20242025); see goalie_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see goalie_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/details' or 't'/'totals'

Value

data.frame with one row per shot location

Examples

Mackenzie_Blackwood_shot_location_totals_regular_20242025 <- 
  goalie_edge_shot_location(
    player    = 8478406,
    season    = 20242025,
    game_type = 2,
    category  = 'T'
  )

Access the EDGE summary for a goalie, season, and game type

Description

goalie_edge_summary() retrieves the EDGE summary for a goalie, season, and game type as a nested list that separates summary and detail blocks for player identity, role, handedness, and biographical profile plus NHL EDGE style tracking outputs and relative-performance context.

Usage

goalie_edge_summary(player = 8476945, season = "now", game_type = "")

Arguments

player

integer ID (e.g., 8478406)

season

integer in YYYYYYYY (e.g., 20242025); see goalie_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see goalie_edge_seasons() for reference; most functions will NOT support pre-season

Value

list of various items

Examples

Mackenzie_Blackwood_EDGE_summary_regular_20242025 <- goalie_edge_summary(
  player    = 8478406, 
  season    = 20242025,
  game_type = 2
)

Access various reports for a season, game type, and category for all the goalies by game

Description

goalie_game_report() retrieves various reports for a season, game type, and category for all the goalies by game as a data.frame where each row represents game per goalie and includes detail on game timeline state, period/clock progression, and matchup flow, player identity, role, handedness, and biographical profile, and production, workload, efficiency, and result-level performance outcomes.

Usage

goalie_game_report(
  season = season_now(),
  game_type = game_type_now(),
  category = "summary"
)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character (e.g., 'advanced'); see goalie_report_configurations() for reference

Value

data.frame with one row per game per goalie

Examples

# May take >5s, so skip.
advanced_goalie_game_report_playoffs_20212022 <- 
  goalie_game_report(
    season    = 20212022, 
    game_type = 3, 
    category  = 'advanced'
  )

Access the scoring statistics for all the goalies by game

Description

goalie_game_scoring() retrieves the scoring statistics for all the goalies by game as a data.frame with detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and team identity, affiliation, and matchup-side context.

Usage

goalie_game_scoring()

Value

data.frame with one row per player per game

Examples

goalie_game_scoring <- goalie_game_scoring()

Access the statistics for all the goalies by game

Description

goalie_game_statistics() retrieves the statistics for all the goalies by game as a data.frame with detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and team identity, affiliation, and matchup-side context.

Usage

goalie_game_statistics()

goalie_game_stats()

Value

data.frame with one row per goalie per game

Examples

goalie_game_stats <- goalie_game_statistics()

Access the goalie statistics leaders for a season, game type, and category

Description

goalie_leaders() retrieves the goalie statistics leaders for a season, game type, and category as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile.

Usage

goalie_leaders(season = "current", game_type = "", category = "wins")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character of 'w'/'wins', 's'/shutouts', 's%'/'sP'/'save %'/'save percentage', or 'gaa'/'goals against average'

Value

data.frame with one row per player

Examples

GAA_leaders_regular_20242025 <- goalie_leaders(
  season    = 20242025,
  game_type = 2,
  category  = 'GAA'
)

Access the goalies on milestone watch

Description

goalie_milestones() retrieves the goalies on milestone watch as a data.frame where each row represents player and includes detail on date/season filtering windows and chronological context, player identity, role, handedness, and biographical profile, and ranking movement, points pace, and division/conference position signals.

Usage

goalie_milestones()

Value

data.frame with one row per player

Examples

goalie_milestones <- goalie_milestones()

Access the career regular season statistics for all the goalies

Description

goalie_regular_statistics() retrieves the career regular season statistics for all the goalies as a data.frame where each row represents goalie and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and player identity, role, handedness, and biographical profile.

Usage

goalie_regular_statistics()

goalie_regular_stats()

Value

data.frame with one row per goalie

Examples

goalie_career_regular_statistics <- goalie_regular_statistics()

Access the configurations for goalie reports

Description

goalie_report_configurations() retrieves the configurations for goalie reports as a nested list that separates summary and detail blocks for situational splits across home/road, strength state, and overtime/shootout states plus configuration catalogs for valid report categories and filters.

Usage

goalie_report_configurations()

goalie_report_configs()

Value

list with various items

Examples

goalie_report_configs <- goalie_report_configurations()

Access the career scoring statistics for all the goalies

Description

goalie_scoring() retrieves the career scoring statistics for all the goalies as a data.frame where each row represents player and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and player identity, role, handedness, and biographical profile.

Usage

goalie_scoring()

Value

data.frame with one row per player

Examples

goalie_scoring <- goalie_scoring()

Access various reports for a season, game type, and category for all the goalies by season

Description

goalie_season_report() retrieves various reports for a season, game type, and category for all the goalies by season as a data.frame where each row represents player and includes detail on date/season filtering windows and chronological context, player identity, role, handedness, and biographical profile, and production, workload, efficiency, and result-level performance outcomes.

Usage

goalie_season_report(
  season = season_now(),
  game_type = game_type_now(),
  category = "summary"
)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character (e.g., 'advanced'); see goalie_report_configurations() for reference

Value

data.frame with one row per player

Examples

# May take >5s, so skip.
advanced_goalie_season_report_playoffs_20212022 <- 
  goalie_season_report(
    season    = 20212022, 
    game_type = 3, 
    category  = 'advanced'
  )

Access the statistics for all the goalies by season, game type, and team.

Description

goalie_season_statistics() retrieves the statistics for all the goalies by season, game type, and team as a data.frame where each row represents player per season per game type, separated by team if applicable and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and player identity, role, handedness, and biographical profile.

Usage

goalie_season_statistics()

goalie_season_stats()

Value

data.frame with one row per player per season per game type, separated by team if applicable

Examples

goalie_season_stats <- goalie_season_statistics()

Access the playoff statistics for all the goalies by series

Description

goalie_series_statistics() retrieves the playoff statistics for all the goalies by series as a data.frame where each row represents player per series and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and player identity, role, handedness, and biographical profile.

Usage

goalie_series_statistics()

goalie_series_stats()

Value

data.frame with one row per player per series

Examples

goalie_series_stats <- goalie_series_statistics()

Access the career statistics for all the goalies

Description

goalie_statistics() retrieves the career statistics for all the goalies as a data.frame where each row represents player and includes detail on team identity, affiliation, and matchup-side context, player identity, role, handedness, and biographical profile, and production, workload, efficiency, and result-level performance outcomes.

Usage

goalie_statistics()

goalie_stats()

Value

data.frame with one row per player

Examples

goalie_stats <- goalie_statistics()

Save an Instagram (IG) share-able cumulative expected goals (xG) time-series plot for a game

Description

ig_game_cumulative_expected_goals() saves an IG share-able cumulative xG time-series plot for a given game as a PNG.

Usage

ig_game_cumulative_expected_goals(game = 2023030417, model = 1, save = TRUE)

ig_game_cum_xG(game = 2023030417, model = 1)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

model

integer in 1:4 indicating which expected goals model to use; see web documentation for what variables each version considers

save

logical only FALSE for tests

Value

NULL

Examples

# May take >5s, so skip.
ig_game_cumulative_expected_goals(
  game  = 2023030417, 
  model = 1, 
  save  = FALSE
)

Save an Instagram (IG) share-able shot-location plot for a game

Description

ig_game_shot_locations() saves an IG share-able shot location plot for a given game.

Usage

ig_game_shot_locations(
  game = 2023030417,
  team = "home",
  model = 1,
  save = TRUE
)

ig_game_shot_locs(game = 2023030417, team = "home", model = 1)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

team

character of 'h'/'home' or 'a'/'away'

model

integer in 1:4 indicating which expected goals model to use; see web documentation for what variables each version considers

save

logical only FALSE for tests

Value

NULL

Examples

# May take >5s, so skip.
ig_game_shot_locations(
  game  = 2023030417, 
  model = 1, 
  team  = 'H', 
  save  = FALSE
)

Access the location for a zip code

Description

location() retrieves the location for a zip code as a data.frame where each row represents team and includes detail on venue/location geography and regional metadata.

Usage

location(zip = 10001)

Arguments

zip

integer (e.g., 48304)

Value

data.frame with one row per team

Examples

Cranbrook_Schools <- location(48304)

Access the draft lottery odds

Description

lottery_odds() retrieves the draft lottery odds as a data.frame where each row represents draft lottery and includes detail on draft-cycle evaluation, ranking, and selection tracking detail.

Usage

lottery_odds()

Value

data.frame with one row per draft lottery

Examples

lottery_odds <- lottery_odds()

Call the NHL API with 429 (rate limit) error-handling

Description

Call the NHL API with 429 (rate limit) error-handling

Usage

nhl_api(path, query = list(), type)

Arguments

path

character

query

list

type

character of 'w' for web, 's' for stats, and 'r' for records

Value

parsed JSON (i.e., data.frame or list)


Normalize the x and y coordinates for all the events (plays) in a play-by-play

Description

normalize_coordinates() normalizes the x and y coordinates for all the events (plays) in a play-by-play such that they all attack towards +x. If homeTeamDefendingSide is not available, the home defending side in period 1 is inferred using zoneCode, isHome, and xCoord.

Usage

normalize_coordinates(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added columns xCoordNorm and yCoordNorm


Normalize locale-style dotted columns to camelCase

Description

Converts dotted names (e.g., firstName.default, name.cs) to camelCase and removes trailing Default from default-language fields.

Usage

normalize_locale_names(x)

Arguments

x

character vector

Value

character vector


Normalize team abbreviation columns to team tri-code names

Description

Normalize team abbreviation columns to team tri-code names

Usage

normalize_team_abbrev_cols(x)

Arguments

x

character vector

Value

character vector


Normalize the team key

Description

Normalize the team key

Usage

normalize_team_key(team)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL')

Value

integer in 1:68, character full name, OR three-letter code


Access all the officials

Description

officials() retrieves all the officials as a data.frame where each row represents official and includes detail on player identity, role, handedness, and biographical profile plus coach/management/officiating identity and assignment history.

Usage

officials()

Value

data.frame with one row per official

Examples

all_officials <- officials()

Access all the penalty shots

Description

penalty_shots() retrieves all the penalty shots as a data.frame where each row represents penalty shot and includes detail on game timeline state, period/clock progression, and matchup flow plus date/season filtering windows and chronological context.

Usage

penalty_shots()

pss()

Value

data.frame with one row per penalty shot

Examples

all_pss <- penalty_shots()

Ping

Description

ping() is defunct.

Usage

ping()

Access the game log for a player, season, and game type

Description

player_game_log() retrieves the game log for a player, season, and game type as a data.frame where each row represents game and includes detail on game timeline state, period/clock progression, and matchup flow plus production, workload, efficiency, and result-level performance outcomes.

Usage

player_game_log(player = 8478402, season = "now", game_type = "")

Arguments

player

integer ID (e.g., 8480039); see players() for reference

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

Value

data.frame with one row per game

Examples

Martin_Necas_game_log_regular_20242025 <- player_game_log(
  player    = 8480039,
  season    = 20242025,
  game_type = 2
)

Access the season(s) and game type(s) in which a player played

Description

player_seasons() retrieves the season(s) and game type(s) in which a player played as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context.

Usage

player_seasons(player = 8478402)

Arguments

player

integer ID (e.g., 8480039); see players() for reference

Value

data.frame with one row per season

Examples

Martin_Necas_seasons <- player_seasons(player = 8480039)

Access the summary for a player

Description

player_summary() retrieves the summary for a player as a nested list that separates summary and detail blocks for player identity, role, handedness, and biographical profile.

Usage

player_summary(player = 8478402)

Arguments

player

integer ID (e.g., 8480039); see players() for reference

Value

list with various items

Examples

Martin_Necas_summary <- player_summary(player = 8480039)

Access all the players

Description

players() retrieves all the players as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile.

Usage

players()

Value

data.frame with one row per player

Examples

# May take >5s, so skip.
all_players <- players()

Access the playoff statistics by season

Description

playoff_season_statistics() retrieves the playoff statistics by season as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context.

Usage

playoff_season_statistics()

playoff_season_stats()

Value

data.frame with one row per season

Examples

playoff_season_stats <- playoff_season_statistics()

Access all the penalty shots

Description

ps() is deprecated. Use penalty_shots() instead.

Usage

ps()

Value

data.frame with one row per penalty shot


Access the replay for an event

Description

replay() retrieves the replay for an event as a data.frame where each row represents decisecond and includes detail on team identity, affiliation, and matchup-side context plus player identity, role, handedness, and biographical profile.

Usage

replay(game = 2023030417, event = 866)

Arguments

game

integer ID (e.g., 2025020262); see games() for reference

event

integer ID (e.g., 751); see gc_play_by_play() and/or wsc_play_by_play() for reference; must be a 'goal' event

Value

data.frame with one row per decisecond

Examples

Gabriel_Landeskog_first_regular_goal_back_replay <- replay(
  game  = 2025020262,
  event = 751
)

Access the roster for a team, season, and position

Description

roster() retrieves the roster for a team, season, and position as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile.

Usage

roster(team = 1, season = "current", position = "forwards")

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

position

character of 'f'/'forwards', 'd'/'defensemen', or 'g'/'goalies'

Value

data.frame with one row per player

Examples

COL_defensemen_20242025 <- roster(
  team     = 21,
  season   = 20242025,
  position = 'D'
)

Access the roster statistics for a team, season, game type, and position

Description

roster_statistics() retrieves the roster statistics for a team, season, game type, and position as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile plus production, workload, efficiency, and result-level performance outcomes.

Usage

roster_statistics(
  team = 1,
  season = "now",
  game_type = "",
  position = "skaters"
)

roster_stats(team = 1, season = "now", game_type = "", position = "skaters")

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

position

character of 's'/'skaters' or 'g'/'goalies'

Value

data.frame with one row per player

Examples

COL_goalies_statistics_regular_20242025 <- roster_statistics(
  team      = 21,
  season    = 20242025,
  game_type = 2,
  position  = 'G'
)

Access the schedule for a date

Description

schedule() retrieves the schedule for a date as a data.frame where each row represents game and includes detail on game timing, matchup state, scoring flow, and situational event detail.

Usage

schedule(date = Sys.Date())

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per game

Examples

schedule_Halloween_2025 <- schedule(date = '2025-10-31')

Scope generic person-name columns to an entity

Description

Scope generic person-name columns to an entity

Usage

scope_person_name_cols(x, prefix)

Arguments

x

character vector

prefix

character scalar (e.g., 'player', 'goalie', 'skater')

Value

character vector


Access the scores for a date

Description

scores() retrieves the scores for a date as a data.frame where each row represents game and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and team identity, affiliation, and matchup-side context.

Usage

scores(date = "now")

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per game

Examples

scores_Halloween_2025 <- scores(date = '2025-10-31')

Access the season as of now

Description

season_now() retrieves the season as of now and returns a scalar integer used as the current-context default in season/game-type dependent wrappers.

Usage

season_now()

Value

integer in YYYYYYYY (e.g., 20242025)

Examples

season_now <- season_now()

Access all the seasons

Description

seasons() retrieves all the seasons as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context.

Usage

seasons()

Value

data.frame with one row per season

Examples

all_seasons <- seasons()

Access all the playoff series by game

Description

series() retrieves all the playoff series by game as a data.frame where each row represents game per series and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and playoff-series progression, round status, and series leverage.

Usage

series()

Value

data.frame with one row per game per series

Examples

# May take >5s, so skip.
all_series <- series()

Access the playoff schedule for a season and series

Description

series_schedule() retrieves the playoff schedule for a season and series as a data.frame where each row represents game and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and team identity, affiliation, and matchup-side context.

Usage

series_schedule(season = season_now() - 10001, series = "a")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

series

one-letter code (e.g., 'O'); see series() and/or bracket() for reference

Value

data.frame with one row per game

Examples

SCF_schedule_20212022 <- series_schedule(
  season = 20212022, 
  series = 'O'
)

Access the shift chart for a game

Description

shift_chart() retrieves the shift chart for a game as a data.frame where each row represents shift and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and team identity, affiliation, and matchup-side context.

Usage

shift_chart(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

data.frame with one row per shift

Examples

shifts_Martin_Necas_legacy_game <- shift_chart(game = 2025020275)

Access the shift charts for a season

Description

shift_charts() loads the shift charts for a given season.

Usage

shift_charts(season = 20242025)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

data.frame with one row per event (play) per game

Examples

# May take >5s, so skip.
shift_charts_20212022 <- shift_charts(season = 20212022)

Access the shift charts for a game

Description

shifts() is deprecated. Use shift_chart() instead.

Usage

shifts(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

data.frame with one row per shift


Access the skater EDGE statistics leaders for a season and game type

Description

skater_edge_leaders() retrieves the skater EDGE statistics leaders for a season and game type as a nested list that separates summary and detail blocks for NHL EDGE style tracking outputs and relative-performance context.

Usage

skater_edge_leaders(season = "now", game_type = "")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see skater_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see skater_edge_seasons() for reference; most functions will NOT support pre-season

Value

list of various items

Examples

skater_EDGE_leaders_regular_20242025 <- skater_edge_leaders(
  season    = 20242025,
  game_type = 2
)

Access the season(s) and game type(s) in which there exists skater EDGE statistics

Description

skater_edge_seasons() retrieves the season(s) and game type(s) in which there exists skater EDGE statistics as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context plus NHL EDGE style tracking outputs and relative-performance context.

Usage

skater_edge_seasons()

Value

data.frame with one row per season

Examples

skater_EDGE_seasons <- skater_edge_seasons()

Access the EDGE shot location statistics for a skater, season, game type, and category

Description

skater_edge_shot_location() retrieves the EDGE shot location statistics for a skater, season, game type, and category as a data.frame where each row represents shot location and includes detail on production, workload, efficiency, and result-level performance outcomes plus NHL EDGE style tracking outputs and relative-performance context.

Usage

skater_edge_shot_location(
  player = 8478402,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

player

integer ID (e.g., 8480039); see players() for reference

season

integer in YYYYYYYY (e.g., 20242025); see skater_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see skater_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/details' or 't'/'totals'

Value

data.frame with one row per shot location

Examples

Martin_Necas_shot_location_totals_regular_20242025 <- 
  skater_edge_shot_location(
    player    = 8480039,
    season    = 20242025,
    game_type = 2,
    category  = 'T'
  )

Access the EDGE shot speed statistics for a skater, season, game type, and category

Description

skater_edge_shot_speed() retrieves the EDGE shot speed statistics for a skater, season, game type, and category as a nested list that separates summary and detail blocks for NHL EDGE style tracking outputs and relative-performance context.

Usage

skater_edge_shot_speed(
  player = 8478402,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

player

integer ID (e.g., 8480039); see players() for reference

season

integer in YYYYYYYY (e.g., 20242025); see skater_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see skater_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 'h'/'hardest'

Value

list with six items (category = 'details') or data.frame with one row per shot (category = 'hardest')

Examples

Martin_Necas_hardest_shots_regular_20242025 <- skater_edge_shot_speed(
  player    = 8480039,
  season    = 20242025,
  game_type = 2,
  category  = 'H'
)

Access the EDGE skating distance statistics for a skater, season, game type, and category

Description

skater_edge_skating_distance() retrieves the EDGE skating distance statistics for a skater, season, game type, and category as a data.frame where each row represents strength state and includes detail on team identity, affiliation, and matchup-side context, player identity, role, handedness, and biographical profile, and tracking/spatial detail such as location, speed, distance, and zone distribution.

Usage

skater_edge_skating_distance(
  player = 8478402,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

player

integer ID (e.g., 8480039); see players() for reference

season

integer in YYYYYYYY (e.g., 20242025); see skater_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see skater_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 'l'/'l10'/'last 10'

Value

data.frame with one row per strength state (category = 'details') or game (category = 'last 10')

Examples

Martin_Necas_L10_skating_distance_regular_20242025 <- 
  skater_edge_skating_distance(
    player    = 8480039,
    season    = 20242025,
    game_type = 2,
    category  = 'L'
  )

Access the EDGE skating speed statistics for a skater, season, game type, and category

Description

skater_edge_skating_speed() retrieves the EDGE skating speed statistics for a skater, season, game type, and category as a nested list that separates summary and detail blocks for NHL EDGE style tracking outputs and relative-performance context.

Usage

skater_edge_skating_speed(
  player = 8478402,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

player

integer ID (e.g., 8480039); see players() for reference

season

integer in YYYYYYYY (e.g., 20242025); see skater_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see skater_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 't'/'top'/'top speeds'

Value

list with four items (category = 'details') or data.frame with one row per burst (category = 'top speeds')

Examples

Martin_Necas_top_speeds_regular_20242025 <- skater_edge_skating_speed(
  player    = 8480039,
  season    = 20242025,
  game_type = 2,
  category  = 'T'
)

Access the EDGE summary for a skater, season, and game type

Description

skater_edge_summary() retrieves the EDGE summary for a skater, season, and game type as a nested list that separates summary and detail blocks for player identity, role, handedness, and biographical profile plus NHL EDGE style tracking outputs and relative-performance context.

Usage

skater_edge_summary(player = 8478402, season = "now", game_type = "")

Arguments

player

integer ID (e.g., 8480039); see players() for reference

season

integer in YYYYYYYY (e.g., 20242025); see skater_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see skater_edge_seasons() for reference; most functions will NOT support pre-season

Value

list of various items

Examples

Martin_Necas_EDGE_summary_regular_20242025 <- skater_edge_summary(
  player    = 8480039, 
  season    = 20242025,
  game_type = 2
)

Access the EDGE zone time statistics for a skater, season, game type, and category

Description

skater_edge_zone_time() retrieves the EDGE zone time statistics for a skater, season, game type, and category as a data.frame where each row represents strength state and includes detail on NHL EDGE style tracking outputs and relative-performance context.

Usage

skater_edge_zone_time(
  player = 8478402,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

player

integer ID (e.g., 8480039); see players() for reference

season

integer in YYYYYYYY (e.g., 20242025); see skater_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see skater_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 's'/'starts'

Value

data.frame with one row per strength state (category = 'details') or list with six items (category = 'starts')

Examples

Martin_Necas_starts_regular_20242025 <- skater_edge_zone_time(
  player    = 8480039,
  season    = 20242025,
  game_type = 2,
  category  = 'S'
)

Access various reports for a season, game type, and category for all the skaters by game

Description

skater_game_report() retrieves various reports for a season, game type, and category for all the skaters by game as a data.frame where each row represents game per player and includes detail on game timeline state, period/clock progression, and matchup flow, player identity, role, handedness, and biographical profile, and production, workload, efficiency, and result-level performance outcomes.

Usage

skater_game_report(
  season = season_now(),
  game_type = game_type_now(),
  category = "summary"
)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character (e.g., 'puckPossessions'); see skater_report_configurations() for reference

Value

data.frame with one row per game per player

Examples

# May take >5s, so skip.
possession_skater_game_report_playoff_20212022 <- 
  skater_game_report(
    season    = 20212022, 
    game_type = 3, 
    category  = 'puckPossessions'
  )

Access the skater statistics leaders for a season, game type, and category

Description

skater_leaders() retrieves the skater statistics leaders for a season, game type, and category as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile.

Usage

skater_leaders(season = "current", game_type = "", category = "points")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

string of 'a'/'assists', 'g'/goals', 'shg'/'shorthanded goals', 'ppg'/'powerplay goals', 'p'/'points', 'pim'/penalty minutes'/'penalty infraction minutes', 'toi'/'time on ice', 'pm'/'plus minus', or 'f'/'faceoffs'

Value

data.frame with one row per player

Examples

TOI_leaders_regular_20242025 <- skater_leaders(
  season    = 20242025,
  game_type = 2,
  category  = 'TOI'
)

Access the skaters on milestone watch

Description

skater_milestones() retrieves the skaters on milestone watch as a data.frame where each row represents player and includes detail on date/season filtering windows and chronological context, player identity, role, handedness, and biographical profile, and production, workload, efficiency, and result-level performance outcomes.

Usage

skater_milestones()

Value

data.frame with one row per player

Examples

skater_milestones <- skater_milestones()

Access the career playoff statistics for all the skaters

Description

skater_playoff_statistics() retrieves the career playoff statistics for all the skaters as a data.frame where each row represents player and includes detail on team identity, affiliation, and matchup-side context, player identity, role, handedness, and biographical profile, and production, workload, efficiency, and result-level performance outcomes.

Usage

skater_playoff_statistics()

skater_playoff_stats()

Value

data.frame with one row per player

Examples

skater_playoff_stats <- skater_playoff_statistics()

Access the career regular season statistics for all the skaters

Description

skater_regular_statistics() retrieves the career regular season statistics for all the skaters as a data.frame where each row represents player and includes detail on team identity, affiliation, and matchup-side context, player identity, role, handedness, and biographical profile, and production, workload, efficiency, and result-level performance outcomes.

Usage

skater_regular_statistics()

skater_regular_stats()

Value

data.frame with one row per player

Examples

skater_regular_stats <- skater_regular_statistics()

Access the configurations for skater reports

Description

skater_report_configurations() retrieves the configurations for skater reports as a nested list that separates summary and detail blocks for production, workload, efficiency, and result-level performance outcomes, situational splits across home/road, strength state, and overtime/shootout states, and configuration catalogs for valid report categories and filters.

Usage

skater_report_configurations()

skater_report_configs()

Value

list with various items

Examples

skater_report_configs <- skater_report_configurations()

Access various reports for a season, game type, and category for all the skaters by season

Description

skater_season_report() retrieves various reports for a season, game type, and category for all the skaters by season as a data.frame where each row represents player and includes detail on date/season filtering windows and chronological context, player identity, role, handedness, and biographical profile, and production, workload, efficiency, and result-level performance outcomes.

Usage

skater_season_report(
  season = season_now(),
  game_type = game_type_now(),
  category = "summary"
)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character (e.g., 'puckPossessions'); see skater_report_configurations() for reference

Value

data.frame with one row per player

Examples

# May take >5s, so skip.
possession_skater_season_report_playoff_20212022 <- 
  skater_season_report(
    season    = 20212022, 
    game_type = 3, 
    category  = 'puckPossessions'
  )

Access the statistics for all the skaters by season, game type, and team

Description

skater_season_statistics() retrieves the statistics for all the skaters by season, game type, and team as a data.frame where each row represents player per season per game type, separated by team if applicable and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and player identity, role, handedness, and biographical profile.

Usage

skater_season_statistics()

skater_season_stats()

Value

data.frame with one row per player per season per game type, separated by team if applicable

Examples

# May take >5s, so skip.
skater_season_stats <- skater_season_statistics()

Access the playoff statistics for all the skaters by series

Description

skater_series_statistics() retrieves the playoff statistics for all the skaters by series as a data.frame where each row represents player per series and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and player identity, role, handedness, and biographical profile.

Usage

skater_series_statistics()

skater_series_stats()

Value

data.frame with one row per player per series

Examples

# May take >5s, so skip.
skater_series_stats <- skater_series_statistics()

Access the career statistics for all the skaters

Description

skater_statistics() retrieves the career statistics for all the skaters as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile plus production, workload, efficiency, and result-level performance outcomes.

Usage

skater_statistics()

skater_stats()

Value

data.frame with one row per player

Examples

skater_stats <- skater_statistics()

Access the spotlight players

Description

spotlight_players() retrieves the spotlight players as a data.frame where each row represents player and includes detail on team identity, affiliation, and matchup-side context plus player identity, role, handedness, and biographical profile.

Usage

spotlight_players()

Value

data.frame with one row per player

Examples

spotlight_players <- spotlight_players()

Access the standings for a date

Description

standings() retrieves the standings for a date as a data.frame where each row represents team and includes detail on date/season filtering windows and chronological context, production, workload, efficiency, and result-level performance outcomes, and ranking movement, points pace, and division/conference position signals.

Usage

standings(date = "now")

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per team

Examples

standings_Halloween_2025 <- standings(date = '2025-10-31')

Access the standings rules by season

Description

standings_rules() retrieves the standings rules by season as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context.

Usage

standings_rules()

Value

data.frame with one row per season

Examples

standings_rules <- standings_rules()

Access all the streams

Description

streams() retrieves all the streams as a data.frame where each row represents stream and includes detail on reference metadata, regional context, and media availability detail.

Usage

streams()

Value

data.frame with one row per stream

Examples

all_streams <- streams()

Strip the game ID into the season ID, game type ID, and game number for all the events (plays) in a play-by-play

Description

strip_game_id() strips the game ID into season ID, game type ID, and game number for all the events (plays) in a play-by-play.

Usage

strip_game_id(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added columns: seasonId, gameTypeId, and gameNumber


Strip the situation code into goalie and skater counts, man differential, and strength state for all the events (plays) in a play-by-play by perspective

Description

strip_situation_code() strips the situation code into goalie and skater counts for home and away teams, then (from the event owner's perspective) computes man differential and a strength state classification.

Usage

strip_situation_code(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added columns: homeIsEmptyNet, awayIsEmptyNet, homeSkaterCount, awaySkaterCount, isEmptyNetFor, isEmptyNetAgainst, skaterCountFor, skaterCountAgainst, manDifferential, and strengthState


Strip the timestamp and period number into the time elapsed in the period and game for all the events (plays) in a play-by-play

Description

strip_time_period() strips the timestamp and period number into the time elapsed in the period and game for all the events (plays) in a play-by-play.

Usage

strip_time_period(play_by_play)

Arguments

play_by_play

data.frame of play-by-play(s); see gc_play_by_play() and/or wsc_play_by_play() for reference

Value

data.frame with one row per event (play) and added columns secondsElapsedInPeriod and secondsElapsedInGame


Access the team EDGE statistics leaders for a season and game type

Description

team_edge_leaders() retrieves the team EDGE statistics leaders for a season and game type as a nested list that separates summary and detail blocks for NHL EDGE style tracking outputs and relative-performance context.

Usage

team_edge_leaders(season = "now", game_type = "")

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see team_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see team_edge_seasons() for reference; most functions will NOT support pre-season

Value

list of various items

Examples

team_EDGE_leaders_regular_20242025 <- team_edge_leaders(
  season    = 20242025,
  game_type = 2
)

Access the season(s) and game type(s) in which there exists team EDGE statistics

Description

team_edge_seasons() retrieves the season(s) and game type(s) in which there exists team EDGE statistics as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context plus NHL EDGE style tracking outputs and relative-performance context.

Usage

team_edge_seasons()

Value

data.frame with one row per season

Examples

team_EDGE_seasons <- team_edge_seasons()

Access the EDGE shot location statistics for a team, season, game type, and category

Description

team_edge_shot_location() retrieves the EDGE shot location statistics for a team, season, game type, and category as a data.frame where each row represents location and includes detail on production, workload, efficiency, and result-level performance outcomes plus NHL EDGE style tracking outputs and relative-performance context.

Usage

team_edge_shot_location(
  team = 1,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see team_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see team_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/details' or 't'/'totals'

Value

data.frame with one row per location (category = 'details') or combination of strength state and position (category = 'totals')

Examples

COL_shot_location_totals_regular_20242025 <- team_edge_shot_location(
  team      = 21,
  season    = 20242025,
  game_type = 2,
  category  = 'T'
)

Access the EDGE shot speed statistics for a team, season, game type, and category

Description

team_edge_shot_speed() retrieves the EDGE shot speed statistics for a team, season, game type, and category as a data.frame where each row represents position and includes detail on team identity, affiliation, and matchup-side context, player identity, role, handedness, and biographical profile, and ranking movement, points pace, and division/conference position signals.

Usage

team_edge_shot_speed(
  team = 1,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see team_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see team_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 'h'/'hardest'

Value

data.frame with one row per position (category = 'details') or shot (category = 'hardest')

Examples

COL_hardest_shots_regular_20242025 <- team_edge_shot_speed(
  team      = 21,
  season    = 20242025,
  game_type = 2,
  category  = 'H'
)

Access the EDGE skating distance statistics for a team, season, game type, and category

Description

team_edge_skating_distance() retrieves the EDGE skating distance statistics for a team, season, game type, and category as a data.frame where each row represents combination of strength state and position and includes detail on team identity, affiliation, and matchup-side context, ranking movement, points pace, and division/conference position signals, and NHL EDGE style tracking outputs and relative-performance context.

Usage

team_edge_skating_distance(
  team = 1,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see team_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see team_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 'l'/'l10'/'last 10'

Value

data.frame with one row per combination of strength state and position (category = 'details') or game (category = 'last 10') game

Examples

COL_L10_skating_distance_regular_20242025 <- team_edge_skating_distance(
  team      = 21,
  season    = 20242025,
  game_type = 2,
  category  = 'L'
)

Access the EDGE skating speed statistics for a team, season, game type, and category

Description

team_edge_skating_speed() retrieves the EDGE skating speed statistics for a team, season, game type, and category as a data.frame where each row represents position and includes detail on team identity, affiliation, and matchup-side context, player identity, role, handedness, and biographical profile, and ranking movement, points pace, and division/conference position signals.

Usage

team_edge_skating_speed(
  team = 1,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see team_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see team_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 't'/'top'/'top speeds'

Value

data.frame with one row per position (category = 'details') or burst (category = 'top speeds')

Examples

COL_top_speeds_regular_20242025 <- team_edge_skating_speed(
  team      = 21,
  season    = 20242025,
  game_type = 2,
  category  = 'T'
)

Access the EDGE summary for a team, season, and game type

Description

team_edge_summary() retrieves the EDGE summary for a team, season, and game type as a nested list that separates summary and detail blocks for team identity, affiliation, and matchup-side context plus NHL EDGE style tracking outputs and relative-performance context.

Usage

team_edge_summary(team = 1, season = "now", game_type = "")

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see team_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see team_edge_seasons() for reference; most functions will NOT support pre-season

Value

list of various items

Examples

COL_EDGE_summary_regular_20242025 <- team_edge_summary(
  team      = 21, 
  season    = 20242025,
  game_type = 2
)

Access the EDGE zone time statistics for a team, season, game type, and category

Description

team_edge_zone_time() retrieves the EDGE zone time statistics for a team, season, game type, and category as a data.frame where each row represents strength state and includes detail on NHL EDGE style tracking outputs and relative-performance context.

Usage

team_edge_zone_time(
  team = 1,
  season = "now",
  game_type = "",
  category = "details"
)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see team_edge_seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'; see team_edge_seasons() for reference; most functions will NOT support pre-season

category

character of 'd'/'details' or 'dS'/'dSOG'/'dShot'/'shot differential'

Value

data.frame with one row per strength state (category = 'details') or list with four items (category = 'shot differential')

Examples

COL_dS_regular_20242025 <- team_edge_zone_time(
  team      = 21,
  season    = 20242025,
  game_type = 2,
  category  = 'dS'
)

Access various reports for a season, game type, and category for all the teams by game

Description

team_game_report() retrieves various reports for a season, game type, and category for all the teams by game as a data.frame where each row represents game per team and includes detail on game timeline state, period/clock progression, and matchup flow, team identity, affiliation, and matchup-side context, and production, workload, efficiency, and result-level performance outcomes.

Usage

team_game_report(
  season = season_now(),
  game_type = game_type_now(),
  category = "summary"
)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character (e.g., 'leadingtrailing'); see team_report_configurations() for reference

Value

data.frame with one row per game per team

Examples

situational_team_game_report_playoffs_20212022 <- team_game_report(
  season    = 20212022, 
  game_type = 3, 
  category  = 'leadingtrailing'
)

Access all the team logos

Description

team_logos() retrieves all the team logos as a data.frame where each row represents logo and includes detail on team identity, affiliation, and matchup-side context.

Usage

team_logos()

Value

data.frame with one row per logo

Examples

all_team_logos <- team_logos()

Access the schedule for a team and month

Description

team_month_schedule() retrieves the schedule for a team and month as a data.frame where each row represents game and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and team identity, affiliation, and matchup-side context.

Usage

team_month_schedule(team = 1, month = "now")

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

month

character in 'YYYY-MM' (e.g., '2025-01'); see seasons() for reference

Value

data.frame with one row per game

Examples

COL_schedule_December_2025 <- team_month_schedule(
  team  = 21, 
  month = '2025-12'
)

Access the prospects for a team and position

Description

team_prospects() retrieves the prospects for a team and position as a data.frame where each row represents player and includes detail on player identity, role, handedness, and biographical profile.

Usage

team_prospects(team = 1, position = "forwards")

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

position

character of 'f'/'forwards', 'd'/'defensemen', or 'g'/'goalies'

Value

data.frame with one row per player

Examples

COL_forward_prospects <- team_prospects(
  team     = 21,
  position = 'F'
)

Access the configurations for team reports

Description

team_report_configurations() retrieves the configurations for team reports as a nested list that separates summary and detail blocks for situational splits across home/road, strength state, and overtime/shootout states plus configuration catalogs for valid report categories and filters.

Usage

team_report_configurations()

team_report_configs()

Value

list with various items

Examples

team_report_configs <- team_report_configurations()

Access various reports for a season, game type, and category for all the teams by season

Description

team_season_report() retrieves various reports for a season, game type, and category for all the teams by season as a data.frame where each row represents team and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and production, workload, efficiency, and result-level performance outcomes.

Usage

team_season_report(
  season = season_now(),
  game_type = game_type_now(),
  category = "summary"
)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or playoff'/'post'; see seasons() for reference; most functions will NOT support pre-season

category

character (e.g., 'leadingtrailing'); see team_report_configurations() for reference

Value

data.frame with one row per team

Examples

situational_team_season_report_playoffs_20212022 <- team_season_report(
  season    = 20212022, 
  game_type = 3, 
  category  = 'leadingtrailing'
)

Access the schedule for a team and season

Description

team_season_schedule() retrieves the schedule for a team and season as a data.frame where each row represents game and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and team identity, affiliation, and matchup-side context.

Usage

team_season_schedule(team = 1, season = "now")

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

data.frame with one row per game

Examples

COL_schedule_20252026 <- team_season_schedule(
  team   = 21, 
  season = 20252026
)

Access the statistics for all the teams by season and game type

Description

team_season_statistics() retrieves the statistics for all the teams by season and game type as a data.frame where each row represents team per season per game type and includes detail on date/season filtering windows and chronological context, team identity, affiliation, and matchup-side context, and production, workload, efficiency, and result-level performance outcomes.

Usage

team_season_statistics()

team_season_stats()

Value

data.frame with one row per team per season per game type

Examples

# May take >5s, so skip.
team_season_statistics <- team_season_statistics()

Access the season(s) and game type(s) in which a team played

Description

team_seasons() retrieves the season(s) and game type(s) in which a team played as a data.frame where each row represents season and includes detail on date/season filtering windows and chronological context.

Usage

team_seasons(team = 1)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

Value

data.frame with one row per season

Examples

COL_seasons <- team_seasons(team = 21)

Access the schedule for a team and week since a date

Description

team_week_schedule() retrieves the schedule for a team and week since a date as a data.frame where each row represents game and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and team identity, affiliation, and matchup-side context.

Usage

team_week_schedule(team = 1, date = "now")

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL'); see teams() for reference; ID is preferable as there now exists duplicate three-letter codes (i.e., 'UTA' for 'Utah Hockey Club' and 'Utah Mammoth')

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per game

Examples

COL_schedule_Family_Week_2025 <- team_week_schedule(
  team = 21,
  date = '2025-10-06'
)

Access all the teams

Description

teams() retrieves all the teams as a data.frame where each row represents team and includes detail on team identity, affiliation, and matchup-side context.

Usage

teams()

Value

data.frame with one row per team

Examples

all_teams <- teams()

Convert to the appropriate game type ID

Description

Convert to the appropriate game type ID

Usage

to_game_type_id(game_type)

Arguments

game_type

integer in 1:3 (where 1 = pre-season, 2 = regular season, 3 = playoff/post-season) OR character of 'pre', 'regular', or 'playoff'/'post'

Value

integer in 1:3


Convert to the appropriate team ID

Description

Convert to the appropriate team ID

Usage

to_team_id(team, lookup = .to_team_id)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL')

Value

integer in 1:68


Convert to the appropriate team three-letter code

Description

Convert to the appropriate team three-letter code

Usage

to_team_tri_code(team, lookup = .to_team_tri_code)

Arguments

team

integer ID (e.g., 21), character full name (e.g., 'Colorado Avalanche'), OR three-letter code (e.g., 'COL')

Value

three-letter code


Access the NHL Network TV schedule for a date

Description

tv_schedule() retrieves the NHL Network TV schedule for a date as a data.frame where each row represents program and includes detail on date/season filtering windows and chronological context.

Usage

tv_schedule(date = "now")

Arguments

date

character in 'YYYY-MM-DD' (e.g., '2025-01-01'); see seasons() for reference

Value

data.frame with one row per program

Examples

tv_schedule_Halloween_2025 <- tv_schedule(date = '2025-10-31')

Access all the venues

Description

venues() retrieves all the venues as a data.frame where each row represents venue and includes detail on venue/location geography and regional metadata.

Usage

venues()

Value

data.frame with one row per venue

Examples

all_venues <- venues()

Access the World Showcase (WSC) play-by-play for a game

Description

wsc_play_by_play() retrieves the World Showcase (WSC) play-by-play for a game as a data.frame where each row represents event and includes detail on game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and player identity, role, handedness, and biographical profile.

Usage

wsc_play_by_play(game = 2023030417)

wsc_pbp(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

data.frame with one row per event (play)

Examples

wsc_pbp_Martin_Necas_legacy_game <- wsc_play_by_play(game = 2025020275)

Access the World Showcase (WSC) play-by-plays for a season

Description

wsc_play_by_plays() loads the WSC play-by-plays for a given season.

Usage

wsc_play_by_plays(season = 20242025)

wsc_pbps(season = 20242025)

Arguments

season

integer in YYYYYYYY (e.g., 20242025); see seasons() for reference

Value

data.frame with one row per event (play) per game

Examples

# May take >5s, so skip.
wsc_pbps_20212022 <- wsc_play_by_plays(season = 20212022)

Access the World Showcase (WSC) summary for a game

Description

wsc_summary() retrieves the World Showcase (WSC) summary for a game as a nested list that separates summary and detail blocks for game timeline state, period/clock progression, and matchup flow, date/season filtering windows and chronological context, and venue/location geography and regional metadata.

Usage

wsc_summary(game = 2023030417)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

Value

list of various items

Examples

wsc_summary_Martin_Necas_legacy_game <- wsc_summary(game = 2025020275)

Save an X (Twitter) share-able cumulative expected goals (xG) time-series plot for a game

Description

x_game_cumulative_expected_goals() saves an X share-able cumulative xG time-series plot for a given game as a PNG.

Usage

x_game_cumulative_expected_goals(game = 2023030417, model = 1, save = TRUE)

x_game_cum_xG(game = 2023030417, model = 1)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

model

integer in 1:4 indicating which expected goals model to use; see web documentation for what variables each version considers

save

logical only FALSE for tests

Value

NULL

Examples

# May take >5s, so skip.
x_game_cumulative_expected_goals(
  game  = 2023030417, 
  model = 1,
  save  = FALSE
)

Save an X (Twitter) share-able shot-location plot for a game

Description

x_game_shot_locations() saves an X share-able shot-location plot for a given game.

Usage

x_game_shot_locations(game = 2023030417, team = "home", model = 1, save = TRUE)

x_game_shot_locs(game = 2023030417, team = "home", model = 1)

Arguments

game

integer ID (e.g., 2025020275); see games() for reference

team

character of 'h'/'home' or 'a'/'away'

model

integer in 1:4 indicating which expected goals model to use; see web documentation for what variables each version considers

save

logical only FALSE for tests

Value

NULL

Examples

# May take >5s, so skip.
x_game_shot_locations(
  game  = 2023030417, 
  model = 1, 
  team  = 'H',
  save  = FALSE
)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.