Skip to contents

Game-by-game box lines of a roster entry (including games with 0 minutes).

Endpoint: GET https://bnxt.sportpress.info/api/v1/boxscore/player/season-games/{roster_id}

Usage

sportpress_player_games(roster_id)

Arguments

roster_id

(required) Roster id (integer): one player on one team in one season; from the roster frames.

Value

A hoopR_data tibble: Game-by-game box lines of a roster entry (including games with 0 minutes). An empty valid answer raises hoopR_no_data; the columns are always these, in this order (sportsdataverse-py sportpress_player_games):

col_nametypedescription
roster_idintegerRoster id the lines were asked for.
game_idintegerGame id (key space: sportpress games), unique across seasons: the key of every game route.
game_timePOSIXctTip-off as a naive datetime. The source carries no offset; the league's local time is assumed and unverified. POSIXct in Europe/Brussels (league local time).
statuscharacterGame status: finished, or ready for an upcoming game.
competition_idintegerCompetition id (key space: sportpress competitions): ONE season of the league (24 = 2025-26, 25 = 2026-27). Not the season number. The key of the standings, ranking, slider and box routes.
seasonintegerSeason END year of the game's competition.
phase_idintegerPhase id (key space: sportpress phases), a stage of one competition such as the regular season or the playoffs; new every season.
phase_namecharacterPhase name as entered in the CMS ('Regular season 2026-27').
round_namecharacterRound label as entered in the CMS; often empty.
round_priorityintegerSort order of the round within the phase (provider's priority); meaning of the values is unverified.
period_namecharacterName of the period the game is in or ended in; 'Extra2' means the second overtime.
arenacharacterName of the arena where the game is played.
home_competition_team_idintegerHome side. Competition-team id (key space: sportpress competition teams): a team in ONE competition, so the same club has a new id every season (Antwerp = 3 in 2021-22, 506 in 2025-26, 541 in 2026-27). Joins competitors, rosters, box scores, film and standings. The stable club key across seasons is uu_team_id.
home_teamcharacterHome side. Display name incl. the sponsor. Teams of the playoff phases carry a ' playoff' suffix (2025-26), and standings names vary with X-Localization ('Partena Professional Okapi Aalst Playoff' (en) vs 'Okapi Aalst Playoff' (nl, fr)): never join on it.
home_team_short_namecharacterHome side. Three-letter club code (CHA, OOS, ANT, MON, LIM, ...), stable across seasons in the samples.
home_scoreintegerHome side. Final points of the side, including overtime.
away_competition_team_idintegerAway side. Competition-team id (key space: sportpress competition teams): a team in ONE competition, so the same club has a new id every season (Antwerp = 3 in 2021-22, 506 in 2025-26, 541 in 2026-27). Joins competitors, rosters, box scores, film and standings. The stable club key across seasons is uu_team_id.
away_teamcharacterAway side. Display name incl. the sponsor. Teams of the playoff phases carry a ' playoff' suffix (2025-26), and standings names vary with X-Localization ('Partena Professional Okapi Aalst Playoff' (en) vs 'Okapi Aalst Playoff' (nl, fr)): never join on it.
away_team_short_namecharacterAway side. Three-letter club code (CHA, OOS, ANT, MON, LIM, ...), stable across seasons in the samples.
away_scoreintegerAway side. Final points of the side, including overtime.
competition_team_idintegerCompetition-team id the player played for in the game.
starterlogicalTrue when the player started the game.
jerseycharacterShirt number as text; the box score sends it as an integer, so a zero-padded '00' is already lost there.
minuteintegerMinutes played; for a team total, the sum over its players (200 + 25 per overtime).
foulintegerPersonal fouls committed.
defensive_foulintegerFouls DRAWN (suffered), despite the name: equals the opponent's foul count up to scorer corrections.
dunk_madeintegerDunks made (a subset of the two-point field goals).
dunk_allintegerDunks attempted.
dunk_percentdoubleDunk percentage 0-100; 0 when none were attempted.
two_point_madeintegerTwo-point field goals made.
two_point_allintegerTwo-point field goals attempted.
two_point_percentdoubleTwo-point percentage 0-100.
three_point_madeintegerThree-point field goals made.
three_point_allintegerThree-point field goals attempted.
three_point_percentdoubleThree-point percentage 0-100.
throw_madeintegerAll field goals made, two- plus three-pointers (the provider calls them 'throw').
throw_allintegerAll field goals attempted, two- plus three-pointers (the provider calls them 'throw').
throw_percentdoubleField-goal percentage 0-100.
free_throw_madeintegerFree throws made.
free_throw_allintegerFree throws attempted.
free_throw_percentdoubleFree-throw percentage 0-100.
offensive_reboundintegerOffensive rebounds.
defensive_reboundintegerDefensive rebounds.
total_reboundintegerTotal rebounds (offensive plus defensive).
blockintegerShots blocked by the player.
block_againstintegerOwn shots blocked by an opponent.
turnoverintegerTurnovers committed.
stealintegerSteals (balls taken from an opponent).
assistintegerAssists (passes leading directly to a made basket).
pointsintegerPoints scored (2 x two-pointers + 3 x three-pointers + free throws).
valueintegerEfficiency rating (PIR with fouls drawn): points + rebounds + assists + steals + blocks + fouls drawn - missed field goals - missed free throws - turnovers.

Details

Source, terms of use, request pacing, seasons, ids, coverage and error classes of this family: see the notes in sportpress_ui_strings().

 sportpress_player_games(roster_id = 11193)