Skip to contents

The games of every playoff series of a bracket, one row per game.

One row per game; series_* columns describe its series and stage the round of the bracket.

Endpoint: GET https://api2.acb.com/api/seasondata/Competition/bracket

Usage

acb_bracket_games(competition_id = NULL, season = NULL)

Arguments

competition_id

(default NULL) Competition id: 1 Liga Endesa, 2 Copa del Rey, 3 Supercopa Endesa, 10 Minicopa Endesa (youth). Omitted = the API's default competition. A whole number; a whole double is accepted.

season

(default NULL) Season END year (2027 = 2026-27; the first ACB season, 1983-84, is 1984). acb_runtime sends the API's editionId = season - 1936. Omitted = the current season. A whole number; a whole double is accepted.

Value

A hoopR_data tibble, one row per record described above; the columns are always these, in this order (sportsdataverse-py acb_bracket_games):

col_nametypedescription
stagecharacterBracket stage: quarter_finals, semifinals, final, other_positions.
phase_idintegerPhase id of the series (111 = Play Off Titulo).
subphase_idintegerSub-phase id of the series (the playoff stage).
series_home_team_idintegerSeason-team entry of the series' home-court team (new every season).
series_home_club_idintegerStable club id of the series' home-court team.
series_away_team_idintegerSeason-team entry of the other team of the series.
series_away_club_idintegerStable club id of the other team of the series.
series_home_winsintegerGames won by the home-court team in the series (the API's homeScore).
series_away_winsintegerGames won by the other team in the series (the API's awayScore).
series_finishedlogicalTrue once the series is decided.
best_ofintegerSeries length (best of N) as sent; 0 in the 2016-17 final sample, so read 0 as unknown.
edition_idintegerSeason id (editionId) = season START year - 1935 (91 = 2026-27). The wrappers take the END year, season.
seasonintegerSeason END year (2027 = 2026-27) = edition_id + 1936: the key the wrappers take.
match_idintegerMatch id. Legacy ids (seasons up to 2019-20) sit below about 20000 (12559 = 2005-06 final, 17718 = 2016-17 final); from 2020-21 they start at about 100000 (102920 in 2021-22, 105401 in 2026-27). One key space across competitions: the matchId param of every matchdata route.
home_team_idintegerHome team. Season-team id: one team's entry in one competition edition (4467 = Barca in Liga 2026-27, 4388 = Real Madrid in Liga 2025-26). Changes every season and competition. Joins every homeTeamId / awayTeamId / teamId / teamEditionId. Not the club id.
away_team_idintegerAway team. Season-team id: one team's entry in one competition edition (4467 = Barca in Liga 2026-27, 4388 = Real Madrid in Liga 2025-26). Changes every season and competition. Joins every homeTeamId / awayTeamId / teamId / teamEditionId. Not the club id.
home_scoreintegerHome points (null before the match)
away_scoreintegerAway points (null before the match)
startPOSIXctTip-off, ISO 8601 UTC
statuscharacterMatch state (x-match-statuses)
is_on_half_timelogicalAt half time (live)
current_quarterintegerCurrent or last quarter (5+ = overtime); not reliable after the match (1 in the 2017 series rows)

Details

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

 acb_bracket_games(season = 2026)