Skip to contents

The games of one day: ids, teams, status, score, round and the data flags.

Endpoint: GET https://data-server.cbaleague.com/api/schedules/day

Usage

cba_schedule_day(day)

Arguments

day

(required) Required. Date 'YYYY-MM-DD'. The runtime always sends auto=0 (the site's auto mode jumps to the next game day) and refuses rows on another date.

Value

A hoopR_data tibble: One row per game: ids, teams, status, score, round and the data flags. An empty valid answer is a zero-row tibble with these columns, in this order (sportsdataverse-py cba_schedule_day):

col_nametypedescription
home_team_idintegerteamId (key space: CBA clubs; 5 digits 29115-29140 for the long-standing clubs, 9 digits for newer ones (100074683 = Ningbo); stable across seasons and club renames, but the display name changes with the sponsor: 29128 = 'Zhejiang Guangsha' under many sponsor names, (Chinese text) in 2025-26). Joins getTeam / teamList and the team and player routes. Not a player or schedule id.
home_team_logocharacterAbsolute URL of the home team logo (300x300 png).
home_team_loseintegerHome team's cumulative losses after this game. An integer (the API sends it as digit text).
home_team_namecharacterHome team name (Chinese) as of the game's season; changes with the sponsor. Names change with the sponsor, the id does not; teamId -> English glossary in cba_glossary.yaml.
home_team_scoreintegerHome team final points (a game not yet played has no score; a scheduled 2026-27 game outside the samples showed null).
home_team_winintegerHome team's cumulative wins after this game in the match type. An integer (the API sends it as digit text).
is_eventsintegerPlay-by-play flag: 1 = play-by-play exists (2017-18 and later in the samples), 2 = none (the 2009-10 sample answers empty pages).
is_reportintegerGame-report flag: 1 = a game report page exists (every sample).
match_orderintegerSequence number of the game within its season and match type (1-based).
match_type_idintegerMatch type id (1 regular season, 2 playoffs, 3 preseason, 4 all-star, 9 relegation; see getMatchType).
minutesintegerRegulation length of the game in minutes: 40 (4 x 10) in the 2025-26 sample, 48 (4 x 12) in the 2009-10 and 2017-18 samples.
quarterintegerNumber of periods played (4 = no overtime; 5 and up would be overtime periods).
roundintegerRound number within the match type (1-based).
round_desccharacterUnobserved: null in every sample, so no meaning is claimed beyond its name (round description).
schedule_idintegerCBA game id (key space: CBA games, ONE global 9-digit sequence 100xxxxxx across seasons and match types; the {scheduleId} of every game route). Stamped by the runtime from the request; null on a body parsed without it.
schedule_numintegerUnobserved: null in every sample on this route (the game count is filled on schedules/month). Typed Int64 like the family's other routes.
schedule_timecharacterTip-off as 'YYYY-MM-DD HH:MM:SS' (China local time, no zone).
schedule_type_namecharacterRound label (Chinese), e.g. (Chinese text)1regular season, round 1.
seasonintegerSeason START year (2025 = the 2025-26 season). The sdv season key is the END year = season + 1; map at the boundary.
secondsdoubleUnobserved: null in every sample (the clock seconds of a live game, by its name). Typed Float64 like the family's other routes.
statusintegerGame status: 4 = finished (every sampled game). 1 = not started and 2 = in progress are inferred from the site's polling logic; 3 is unobserved. See the code table.
visiting_team_idintegerteamId (key space: CBA clubs; 5 digits 29115-29140 for the long-standing clubs, 9 digits for newer ones (100074683 = Ningbo); stable across seasons and club renames, but the display name changes with the sponsor: 29128 = 'Zhejiang Guangsha' under many sponsor names, (Chinese text) in 2025-26). Joins getTeam / teamList and the team and player routes. Not a player or schedule id.
visiting_team_logocharacterAbsolute URL of the visiting team logo (300x300 png).
visiting_team_loseintegerVisiting team's cumulative losses after this game. An integer (the API sends it as digit text).
visiting_team_namecharacterVisiting team name (Chinese) as of the game's season; changes with the sponsor. Names change with the sponsor, the id does not; teamId -> English glossary in cba_glossary.yaml.
visiting_team_scoreintegerVisiting team final points.
visiting_team_winintegerVisiting team's cumulative wins after this game. An integer (the API sends it as digit text).

Details

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

Examples

# \donttest{
  try(cba_schedule_day(day = "2025-12-12"))
#> ── CBA Schedule Day from data-server.cbaleague.com ────────────── hoopR 3.2.0 ──
#> ℹ Data updated: 2026-10-31 21:27:45 UTC
#> # A tibble: 1 × 27
#>   home_team_id home_team_logo      home_team_lose home_team_name home_team_score
#>          <int> <chr>                        <int> <chr>                    <int>
#> 1        29128 https://image.cbal…              0 浙江浙商证券                88
#> # ℹ 22 more variables: home_team_win <int>, is_events <int>, is_report <int>,
#> #   match_order <int>, match_type_id <int>, minutes <int>, quarter <int>,
#> #   round <int>, round_desc <chr>, schedule_id <int>, schedule_num <int>,
#> #   schedule_time <chr>, schedule_type_name <chr>, season <int>, seconds <dbl>,
#> #   status <int>, visiting_team_id <int>, visiting_team_logo <chr>,
#> #   visiting_team_lose <int>, visiting_team_name <chr>,
#> #   visiting_team_score <int>, visiting_team_win <int>
# }