Skip to main content

VTB — VTB United League Infobasket (Russia) — Team

vtb_infobasket_team_stats​

Season totals of every team of a season (all stages).

Endpoint URL: GET https://org.infobasket.su/Comp/GetTeamStats/{season}

Valid URL: https://org.infobasket.su/Comp/GetTeamStats/2026?page=0&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached).
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
seasonintegerSeason END year (2026 = 2025-26): the season the request asked for, stamped by the runtime.
team_idintegerInfobasket team id (TeamID): one club's entry in a competition family (Lokomotiv Kuban = 2650). Joins to /Widget/Team*/{teamId} and equals the v2 API teamId.
game_countintegerGames in the totals (the whole competition, all stages, for the season-level CompID).
pointsintegerPoints. The wire's null is 0 here (null counts are filled).
shot1integerFree throws attempted. The wire's null is 0 here (null counts are filled).
goal1integerFree throws made. The wire's null is 0 here (null counts are filled).
shot2integer2-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal2integer2-point field goals made. The wire's null is 0 here (null counts are filled).
shot3integer3-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal3integer3-point field goals made. The wire's null is 0 here (null counts are filled).
shot23integerField goals (2 + 3 points) attempted. The wire's null is 0 here (null counts are filled).
goal23integerField goals (2 + 3 points) made. The wire's null is 0 here (null counts are filled).
shot1_percentnumericFree-throw percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot2_percentnumeric2-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot3_percentnumeric3-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot23_percentnumericField-goal percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
assistintegerAssists. The wire's null is 0 here (null counts are filled).
blocksintegerBlocked shots. The wire's null is 0 here (null counts are filled).
def_reboundintegerDefensive rebounds. The wire's null is 0 here (null counts are filled).
off_reboundintegerOffensive rebounds. The wire's null is 0 here (null counts are filled).
reboundintegerTotal rebounds. The wire's null is 0 here (null counts are filled).
stealintegerSteals. The wire's null is 0 here (null counts are filled).
turnoverintegerTurnovers. The wire's null is 0 here (null counts are filled).
team_def_reboundintegerTeam defensive rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_off_reboundintegerTeam offensive rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_reboundintegerTeam rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_stealintegerTeam steals (not credited to a player). The wire's null is 0 here (null counts are filled).
team_turnoverintegerTeam turnovers (not credited to a player, e.g. shot-clock violations). The wire's null is 0 here (null counts are filled).
kpiintegerEfficiency index (KPI, the platform's 'КПИ'); formula unverified.
avg_pointsnumericPer-game average of: points; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_assistnumericPer-game average of: assists; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_blocksnumericPer-game average of: blocked shots; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_def_reboundnumericPer-game average of: defensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_off_reboundnumericPer-game average of: offensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_reboundnumericPer-game average of: total rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_stealnumericPer-game average of: steals; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_turnovernumericPer-game average of: turnovers; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_foulnumericPer-game average of: personal fouls committed; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_opponent_foulnumericPer-game average of: fouls drawn; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_plus_minusnumericPer-game average of: plus-minus: point differential while on the court; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_def_reboundnumericPer-game average of: team defensive rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_off_reboundnumericPer-game average of: team offensive rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_reboundnumericPer-game average of: team rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_stealnumericPer-game average of: team steals (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_turnovernumericPer-game average of: team turnovers (not credited to a player, e.g. shot-clock violations); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
foulintegerPersonal fouls committed. The wire's null is 0 here (null counts are filled).
opponent_foulintegerFouls drawn. The wire's null is 0 here (null counts are filled).
secondsintegerPlaying time in seconds.
played_timecharacterPlaying time as 'minutes:seconds' (team rows sum the five players: '200:00' = 40 minutes x 5).
avg_played_timecharacterAverage playing time per game as 'minutes:seconds'.
plus_minusintegerPlus-minus: point differential while on the court. Null where the host sends none.
team_short_name_rucharacterThe the team's short name in Russian (as the competition names it).
team_short_name_encharacterThe the team's short name in English (as the competition names it).
team_name_rucharacterThe the team's name in Russian (as the competition names it).
team_name_encharacterThe the team's name in English (as the competition names it).
team_region_name_rucharacterThe the team's region or city in Russian (as the competition names it).
team_region_name_encharacterThe the team's region or city in English (as the competition names it).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_stats(season=2026)

Last validated n/a.

vtb_infobasket_team_stats_players​

Season totals of every player of every team of a season.

Endpoint URL: GET https://org.infobasket.su/Comp/GetTeamStats/{season}

Valid URL: https://org.infobasket.su/Comp/GetTeamStats/2026?page=0&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached).
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
seasonintegerSeason END year (2026 = 2025-26): the season the request asked for, stamped by the runtime.
team_idintegerInfobasket TeamID (2650 = Lokomotiv Kuban); the v2 teamId. Not a club-record id and not a registration id.
person_idintegerInfobasket person id (PersonID): one person (player, coach or official) across clubs and seasons. Joins to /Widget/PlayerPage/{personId} (players) and /Widget/CoachPage/{personId} (coaches).
player_numberintegerShirt number as an integer (0 when the player has none or wears 00).
display_numbercharacterShirt number as displayed ('0', '7'); a coach's is the coach order (1 = head coach).
is_activelogicalTrue while the person is on the current roster.
active_statuscharacterRoster status text ('Accepted'), empty otherwise.
pointsintegerPoints. The wire's null is 0 here (null counts are filled).
shot1integerFree throws attempted. The wire's null is 0 here (null counts are filled).
goal1integerFree throws made. The wire's null is 0 here (null counts are filled).
shot2integer2-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal2integer2-point field goals made. The wire's null is 0 here (null counts are filled).
shot3integer3-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal3integer3-point field goals made. The wire's null is 0 here (null counts are filled).
shot23integerField goals (2 + 3 points) attempted. The wire's null is 0 here (null counts are filled).
goal23integerField goals (2 + 3 points) made. The wire's null is 0 here (null counts are filled).
shot1_percentnumericFree-throw percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot2_percentnumeric2-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot3_percentnumeric3-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot23_percentnumericField-goal percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
assistintegerAssists. The wire's null is 0 here (null counts are filled).
blocksintegerBlocked shots. The wire's null is 0 here (null counts are filled).
def_reboundintegerDefensive rebounds. The wire's null is 0 here (null counts are filled).
off_reboundintegerOffensive rebounds. The wire's null is 0 here (null counts are filled).
reboundintegerTotal rebounds. The wire's null is 0 here (null counts are filled).
stealintegerSteals. The wire's null is 0 here (null counts are filled).
turnoverintegerTurnovers. The wire's null is 0 here (null counts are filled).
foulintegerPersonal fouls committed. The wire's null is 0 here (null counts are filled).
opponent_foulintegerFouls drawn. The wire's null is 0 here (null counts are filled).
plus_minusintegerPlus-minus: point differential while on the court. Null where the host sends none.
kpiintegerEfficiency index (KPI, the platform's 'КПИ'); formula unverified.
avg_pointsnumericPer-game average of: points; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_assistnumericPer-game average of: assists; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_blocksnumericPer-game average of: blocked shots; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_def_reboundnumericPer-game average of: defensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_off_reboundnumericPer-game average of: offensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_reboundnumericPer-game average of: total rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_stealnumericPer-game average of: steals; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_turnovernumericPer-game average of: turnovers; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_foulnumericPer-game average of: personal fouls committed; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_opponent_foulnumericPer-game average of: fouls drawn; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_plus_minusnumericPer-game average of: plus-minus: point differential while on the court; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_kpinumericPer-game average of: efficiency index (kpi, the platform's 'кпи'); formula unverified; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
secondsintegerPlaying time in seconds.
played_timecharacterPlaying time as 'minutes:seconds' (team rows sum the five players: '200:00' = 40 minutes x 5).
avg_played_timecharacterAverage playing time per game as 'minutes:seconds'.
in_game_countintegerGames actually played (on the court).
game_countintegerGames in the totals (the whole competition, all stages, for the season-level CompID).
start_countintegerGames the person started.
person_last_name_rucharacterLast name, Russian.
person_last_name_encharacterLast name, English.
person_first_name_rucharacterFirst name, Russian.
person_first_name_encharacterFirst name, English.
person_full_name_rucharacterFull name, 'Last First', Russian.
person_full_name_encharacterFull name, 'Last First', English.
person_genderintegerPerson gender: 1 on every sampled (male) person.
birth_datecharacterBirth date (ISO 8601 date) of a player: public bio, kept; coaches' and officials' birth data is never output.
heightcharacterHeight in centimetres.
weightcharacterWeight in kilograms.
player_positionintegerPlayer position code from the host (1 point guard, 2 shooting guard, 3 small forward ... 5 center; see position_id for the named position).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_stats_players(season=2026)

Last validated n/a.

vtb_infobasket_team_stats_coaches​

Technical fouls and games of every coach of every team of a season.

Endpoint URL: GET https://org.infobasket.su/Comp/GetTeamStats/{season}

Valid URL: https://org.infobasket.su/Comp/GetTeamStats/2026?page=0&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached).
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
seasonintegerSeason END year (2026 = 2025-26): the season the request asked for, stamped by the runtime.
team_idintegerInfobasket TeamID (2650 = Lokomotiv Kuban); the v2 teamId. Not a club-record id and not a registration id.
person_idintegerInfobasket person id (PersonID): one person (player, coach or official) across clubs and seasons. Joins to /Widget/PlayerPage/{personId} (players) and /Widget/CoachPage/{personId} (coaches).
player_numberintegerCoach order (1 head coach).
display_numbercharacterCoach order (1 head coach).
is_activelogicalTrue while the person is on the current roster.
active_statuscharacterUnobserved: null in every sample, so its type and meaning are unconfirmed.
foul_cintegerTechnical fouls on the head coach for his own conduct (scoresheet 'C').
foul_bintegerTechnical fouls on the head coach for bench conduct (scoresheet 'B').
foul_dintegerUnobserved: null in every sample, so its type and meaning are unconfirmed.
foulintegerPersonal fouls committed. The wire's null is 0 here (null counts are filled).
game_countintegerGames in the totals (the whole competition, all stages, for the season-level CompID).
person_last_name_rucharacterLast name, Russian.
person_last_name_encharacterLast name, English.
person_first_name_rucharacterFirst name, Russian.
person_first_name_encharacterFirst name, English.
person_full_name_rucharacterFull name, 'Last First', Russian.
person_full_name_encharacterFull name, 'Last First', English.
person_genderintegerPerson gender: 1 on every sampled (male) person.

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_stats_coaches(season=2026)

Last validated n/a.

vtb_infobasket_team_preview​

Season totals of a game's two teams (the pre-game preview).

Endpoint URL: GET https://org.infobasket.su/Comp/GetTeamStatsForPreview/{game_id}

Valid URL: https://org.infobasket.su/Comp/GetTeamStatsForPreview/921391?season=2026&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
game_idgame_idYInfobasket GameID (game_id in vtb_infobasket_calendar; the v2 matches' match_id), e.g. 921391. Global across seasons.
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached). Optional (the host accepts the call without it).
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
game_idintegerInfobasket GameID of the game (the v2 matches' match_id); global across seasons.
team_idintegerInfobasket team id (TeamID): one club's entry in a competition family (Lokomotiv Kuban = 2650). Joins to /Widget/Team*/{teamId} and equals the v2 API teamId.
game_countintegerGames in the totals (the whole competition, all stages, for the season-level CompID).
pointsintegerPoints. The wire's null is 0 here (null counts are filled).
shot1integerFree throws attempted. The wire's null is 0 here (null counts are filled).
goal1integerFree throws made. The wire's null is 0 here (null counts are filled).
shot2integer2-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal2integer2-point field goals made. The wire's null is 0 here (null counts are filled).
shot3integer3-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal3integer3-point field goals made. The wire's null is 0 here (null counts are filled).
shot23integerField goals (2 + 3 points) attempted. The wire's null is 0 here (null counts are filled).
goal23integerField goals (2 + 3 points) made. The wire's null is 0 here (null counts are filled).
shot1_percentnumericFree-throw percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot2_percentnumeric2-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot3_percentnumeric3-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot23_percentnumericField-goal percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
assistintegerAssists. The wire's null is 0 here (null counts are filled).
blocksintegerBlocked shots. The wire's null is 0 here (null counts are filled).
def_reboundintegerDefensive rebounds. The wire's null is 0 here (null counts are filled).
off_reboundintegerOffensive rebounds. The wire's null is 0 here (null counts are filled).
reboundintegerTotal rebounds. The wire's null is 0 here (null counts are filled).
stealintegerSteals. The wire's null is 0 here (null counts are filled).
turnoverintegerTurnovers. The wire's null is 0 here (null counts are filled).
team_def_reboundintegerTeam defensive rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_off_reboundintegerTeam offensive rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_reboundintegerTeam rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_stealintegerTeam steals (not credited to a player). The wire's null is 0 here (null counts are filled).
team_turnoverintegerTeam turnovers (not credited to a player, e.g. shot-clock violations). The wire's null is 0 here (null counts are filled).
kpiintegerEfficiency index (KPI, the platform's 'КПИ'); formula unverified.
avg_pointsnumericPer-game average of: points; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_assistnumericPer-game average of: assists; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_blocksnumericPer-game average of: blocked shots; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_def_reboundnumericPer-game average of: defensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_off_reboundnumericPer-game average of: offensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_reboundnumericPer-game average of: total rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_stealnumericPer-game average of: steals; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_turnovernumericPer-game average of: turnovers; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_foulnumericPer-game average of: personal fouls committed; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_opponent_foulnumericPer-game average of: fouls drawn; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_plus_minusnumericPer-game average of: plus-minus: point differential while on the court; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_def_reboundnumericPer-game average of: team defensive rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_off_reboundnumericPer-game average of: team offensive rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_reboundnumericPer-game average of: team rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_stealnumericPer-game average of: team steals (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_turnovernumericPer-game average of: team turnovers (not credited to a player, e.g. shot-clock violations); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
foulintegerPersonal fouls committed. The wire's null is 0 here (null counts are filled).
opponent_foulintegerFouls drawn. The wire's null is 0 here (null counts are filled).
secondsintegerPlaying time in seconds.
played_timecharacterPlaying time as 'minutes:seconds' (team rows sum the five players: '200:00' = 40 minutes x 5).
avg_played_timecharacterAverage playing time per game as 'minutes:seconds'.
plus_minusintegerPlus-minus: point differential while on the court. Null where the host sends none.
team_short_name_rucharacterThe the team's short name in Russian (as the competition names it).
team_short_name_encharacterThe the team's short name in English (as the competition names it).
team_name_rucharacterThe the team's name in Russian (as the competition names it).
team_name_encharacterThe the team's name in English (as the competition names it).
team_region_name_rucharacterThe the team's region or city in Russian (as the competition names it).
team_region_name_encharacterThe the team's region or city in English (as the competition names it).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_preview(game_id=921391, season=2026)

Last validated n/a.

vtb_infobasket_team_box_score​

Team box score of a finished game, with the head coach's technical fouls.

Endpoint URL: GET https://org.infobasket.su/Widget/GetOnline/{game_id}

Valid URL: https://org.infobasket.su/Widget/GetOnline/921391?format=json

API ParameterPythonPatternRequiredNullableDescription
game_idgame_idYInfobasket GameID (game_id in vtb_infobasket_calendar; the v2 matches' match_id), e.g. 921391. Global across seasons.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
game_idintegerInfobasket GameID of the game (the v2 matches' match_id); global across seasons.
is_homelogicalTrue for team 1, the team listed first (team A, the home side in the calendar); the body has no explicit home flag (unverified).
team_numberintegerSide: 1 team A (home), 2 team B (away).
team_idintegerInfobasket team id (TeamID): one club's entry in a competition family (Lokomotiv Kuban = 2650). Joins to /Widget/Team*/{teamId} and equals the v2 API teamId. The scope check compares both sides with the request.
scoreintegerFinal points of the team.
pointsintegerPoints. The wire's null is 0 here (null counts are filled).
shot1integerFree throws attempted. The wire's null is 0 here (null counts are filled).
goal1integerFree throws made. The wire's null is 0 here (null counts are filled).
shot2integer2-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal2integer2-point field goals made. The wire's null is 0 here (null counts are filled).
shot3integer3-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal3integer3-point field goals made. The wire's null is 0 here (null counts are filled).
shot1_percentnumericFree-throw percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot2_percentnumeric2-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot3_percentnumeric3-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
assistintegerAssists. The wire's null is 0 here (null counts are filled).
blocksintegerBlocked shots. The wire's null is 0 here (null counts are filled).
def_reboundintegerDefensive rebounds. The wire's null is 0 here (null counts are filled).
off_reboundintegerOffensive rebounds. The wire's null is 0 here (null counts are filled).
reboundintegerTotal rebounds. The wire's null is 0 here (null counts are filled).
stealintegerSteals. The wire's null is 0 here (null counts are filled).
turnoverintegerTurnovers. The wire's null is 0 here (null counts are filled).
team_def_reboundintegerTeam defensive rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_off_reboundintegerTeam offensive rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_reboundintegerTeam rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_stealintegerUnobserved: null in every sample, so its type and meaning are unconfirmed.
team_turnoverintegerTeam turnovers (not credited to a player, e.g. shot-clock violations). The wire's null is 0 here (null counts are filled).
foulintegerPersonal fouls committed by the team.
opponent_foulintegerFouls drawn. The wire's null is 0 here (null counts are filled).
secondsintegerPlaying time in seconds.
played_timecharacterPlaying time as 'minutes:seconds' (team rows sum the five players: '200:00' = 40 minutes x 5).
plus_minuscharacterUnobserved: null in every sample, so its type and meaning are unconfirmed.
team_short_name_rucharacterThe the team's short name in Russian (as the competition names it).
team_short_name_encharacterThe the team's short name in English (as the competition names it).
team_name_rucharacterThe the team's name in Russian (as the competition names it).
team_name_encharacterThe the team's name in English (as the competition names it).
team_region_name_rucharacterThe the team's region or city in Russian (as the competition names it).
team_region_name_encharacterThe the team's region or city in English (as the competition names it).
coach_person_idintegerInfobasket person id (PersonID): one person (player, coach or official) across clubs and seasons. Joins to /Widget/PlayerPage/{personId} (players) and /Widget/CoachPage/{personId} (coaches).
coach_name_encharacterHead coach's name in English, as 'Last First'.
coach_name_rucharacterHead coach's name in Russian, as 'Last First'.
coach_foul_cintegerTechnical fouls on the head coach for his own conduct (scoresheet 'C').
coach_foul_bintegerTechnical fouls on the head coach for bench conduct (scoresheet 'B').
coach_foul_dintegerDisqualifying fouls on the coach (scoresheet 'D').
coach_foulintegerFouls charged to the coach (C + B + D).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_box_score(game_id=921391)

Last validated n/a.

vtb_infobasket_team​

Club profile: names, region, country, status.

Endpoint URL: GET https://org.infobasket.su/Widget/TeamPage/{team_id}

Valid URL: https://org.infobasket.su/Widget/TeamPage/2650?format=json&lang=en&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
team_idteam_idYInfobasket TeamID (team_id in the calendar, a box score or the v2 matches), e.g. 2650 (Lokomotiv Kuban).
langlangYLabel language (en or ru). Most bodies carry both languages whatever is asked; the leader categories' labels follow it.
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
team_idintegerInfobasket team id (TeamID): one club's entry in a competition family (Lokomotiv Kuban = 2650). Joins to /Widget/Team*/{teamId} and equals the v2 API teamId. The scope check compares it with the request.
team_typeintegerTeam type code: 1 on the club record.
team_name_rucharacterClub name, Russian.
team_name_encharacterClub name, English.
team_short_name_rucharacterClub short name, Russian.
team_short_name_encharacterClub short name, English.
team_abc_name_rucharacterClub abbreviation, Russian (the full name in the sample).
team_abc_name_encharacterClub abbreviation, English.
team_genderintegerTeam gender code: 0 on every sample (men).
team_regionintegerInfobasket region id of the club's city.
team_countryintegerCountry id of the club (1 = Russia, unverified).
team_logointegerLogo flag; 0 in the samples.
team_uniform1integerFirst uniform colour code.
team_uniform2integerSecond uniform colour code.
team_statusintegerClub record status (1 active).
team_record_idintegerId of the club-record name (CurrentTeamName.TeamID, 2259 for team 2650): a different key space from team_id.

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team(team_id=2650)

Last validated n/a.

vtb_infobasket_team_seasons​

The seasons a club has data for (END year and the club's competition id).

Endpoint URL: GET https://org.infobasket.su/Widget/GetTeamSeasons/{team_id}

Valid URL: https://org.infobasket.su/Widget/GetTeamSeasons/2650?format=json&lang=en&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
team_idteam_idYInfobasket TeamID (team_id in the calendar, a box score or the v2 matches), e.g. 2650 (Lokomotiv Kuban).
langlangYLabel language (en or ru). Most bodies carry both languages whatever is asked; the leader categories' labels follow it.
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
team_idintegerInfobasket TeamID (2650 = Lokomotiv Kuban); the v2 teamId. Not a club-record id and not a registration id.
seasonintegerSeason END year of the club's season entry (2027 = 2026/2027).
comp_idintegerCompetition id of the season in the club's rfb tag (56293 for 2027), not the VTB tag's season CompID.
season_namecharacterSeason name in Russian ('Сезон 2026/2027' = 'Season 2026/2027').

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_seasons(team_id=2650)

Last validated n/a.

vtb_infobasket_team_comps​

The competitions a club played in one season.

Endpoint URL: GET https://org.infobasket.su/Widget/GetTeamComps/{team_id}

Valid URL: https://org.infobasket.su/Widget/GetTeamComps/2650?format=json&season=2026&lang=en&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
team_idteam_idYInfobasket TeamID (team_id in the calendar, a box score or the v2 matches), e.g. 2650 (Lokomotiv Kuban).
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached). Required.
langlangYLabel language (en or ru). Most bodies carry both languages whatever is asked; the leader categories' labels follow it.
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
team_idintegerInfobasket TeamID (2650 = Lokomotiv Kuban); the v2 teamId. Not a club-record id and not a registration id.
seasonintegerSeason END year (2026 = 2025-26): the season the request asked for, stamped by the runtime.
comp_idintegerCompetition id (the season or a stage of it).
comp_typeintegerStage type code: 0 season, regular season or group; 10 playoff container; 5 and 7 playoff series; -5 seen in season lists. Meanings inferred from the stage names, unverified.
comp_sortintegerSort order among sibling stages.
levelintegerDepth of the competition in the tree (1 = season level).
comp_name_rucharacterCompetition name, Russian ('Единая лига ВТБ' = 'VTB United League').
comp_name_encharacterStage name (e.g. 'Regular Season'), English.
parent_comp_idintegerUnobserved: null in every sample, so its type and meaning are unconfirmed.

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_comps(season=2026, team_id=2650)

Last validated n/a.

vtb_infobasket_team_games​

A club's games in one season (the calendar's row shape).

Endpoint URL: GET https://org.infobasket.su/Widget/TeamGames/{team_id}

Valid URL: https://org.infobasket.su/Widget/TeamGames/2650?format=json&season=2026&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
team_idteam_idYInfobasket TeamID (team_id in the calendar, a box score or the v2 matches), e.g. 2650 (Lokomotiv Kuban).
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached). Required.
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
team_idintegerInfobasket TeamID (2650 = Lokomotiv Kuban); the v2 teamId. Not a club-record id and not a registration id.
seasonintegerSeason END year (2026 = 2025-26): the season the request asked for, stamped by the runtime.
comp_idintegerSeason-level Infobasket CompID of the season (50714 = 2025-26): the id every season-keyed route takes.
game_idintegerInfobasket game id (GameID); equals the v2 API matchId. Joins to /Widget/GetOnline/{gameId} and /Widget/GamePage/{gameId}.
game_numbercharacterGame number within the competition, e.g. 'RS-002' (RS = regular season); playoff games use the series code.
game_datecharacterGame date as an ISO 8601 date (YYYY-MM-DD); the wire sends DD.MM.YYYY.
has_timelogicalTrue when a tip-off time is set.
game_timecharacterTip-off local time, 'HH:MM'.
game_time_mskcharacterTip-off time in Moscow time ('HH:MM' on calendar rows, 'HH.MM' in GetOnline).
game_date_timecharacterTip-off instant as an ISO 8601 string in Moscow time with its +03:00 offset (the wire sends a .NET /Date(ms)/ value).
game_date_time_moscowcharacterTip-off instant as an ISO 8601 string in Moscow time with its +03:00 offset (the wire's second .NET date; equal to game_date_time in every sample).
game_statusintegerGame status: 0 planned, 1 completed, 2 live (the site's widget code). Samples are completed games.
team_a_idintegerTeam A (home) TeamID. Infobasket team id (TeamID): one club's entry in a competition family (Lokomotiv Kuban = 2650). Joins to /Widget/Team*/{teamId} and equals the v2 API teamId.
team_b_idintegerTeam B (away) TeamID. Infobasket team id (TeamID): one club's entry in a competition family (Lokomotiv Kuban = 2650). Joins to /Widget/Team*/{teamId} and equals the v2 API teamId.
short_team_name_arucharacterTeam short name of team A (home), Russian.
short_team_name_brucharacterTeam short name of team B (away), Russian.
team_name_arucharacterTeam name with city in brackets of team A (home), Russian.
team_name_brucharacterTeam name with city in brackets of team B (away), Russian.
comp_team_name_arucharacterTeam name as registered in the competition of team A (home), Russian.
comp_team_name_brucharacterTeam name as registered in the competition of team B (away), Russian.
region_team_name_arucharacterTeam's city or region of team A (home), Russian.
region_team_name_brucharacterTeam's city or region of team B (away), Russian.
short_team_name_aencharacterTeam short name of team A (home), English.
short_team_name_bencharacterTeam short name of team B (away), English.
team_name_aencharacterTeam name with city in brackets of team A (home), English.
team_name_bencharacterTeam name with city in brackets of team B (away), English.
comp_team_name_aencharacterTeam name as registered in the competition of team A (home), English.
comp_team_name_bencharacterTeam name as registered in the competition of team B (away), English.
region_team_name_aencharacterTeam's city or region of team A (home), English.
region_team_name_bencharacterTeam's city or region of team B (away), English.
score_aintegerFinal score of team A (home).
score_bintegerFinal score of team B (away).
tv_rucharacterTV channels, in Russian.
tv_encharacterTV channels, in English.
region_rucharacterCity or region of the game's venue in Russian.
region_encharacterCity or region of the game's venue in English.
arena_encharacterArena name, English.
arena_rucharacterArena, Russian ('СК' = sports complex).
arena_idintegerInfobasket arena id; equals the v2 API venueId (11687 = SK Basket-Hall, Krasnodar).
game_attendanceintegerSpectators at the game (null when not recorded).
comp_name_rucharacterStage name, Russian ('Регулярный чемпионат' = 'Regular Season', 'Группа А' = 'Group A').
comp_name_encharacterStage name (e.g. 'Regular Season'), English.
league_name_rucharacterLeague name, Russian ('Единая лига ВТБ' / 'Чемпионат Единой лиги ВТБ' = 'VTB United League' / 'VTB United League Championship').
league_name_encharacterLeague name, English.
league_short_name_rucharacterLeague short name, Russian ('ВТБ' = 'VTB').
league_short_name_encharacterLeague short name, English.
genderintegerCompetition gender: 0 on every VTB sample (men). Other values unverified.

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_games(season=2026, team_id=2650)

Last validated n/a.

vtb_infobasket_team_season_stats​

A club's season totals in one season.

Endpoint URL: GET https://org.infobasket.su/Widget/TeamStats/{team_id}

Valid URL: https://org.infobasket.su/Widget/TeamStats/2650?format=json&season=2026&lang=en&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
team_idteam_idYInfobasket TeamID (team_id in the calendar, a box score or the v2 matches), e.g. 2650 (Lokomotiv Kuban).
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached). Required.
langlangYLabel language (en or ru). Most bodies carry both languages whatever is asked; the leader categories' labels follow it.
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
seasonintegerSeason END year (2026 = 2025-26): the season the request asked for, stamped by the runtime.
team_idintegerInfobasket team id (TeamID): one club's entry in a competition family (Lokomotiv Kuban = 2650). Joins to /Widget/Team*/{teamId} and equals the v2 API teamId. The scope check compares it with the request.
game_countintegerGames in the totals (the whole competition, all stages, for the season-level CompID).
pointsintegerPoints. The wire's null is 0 here (null counts are filled).
shot1integerFree throws attempted. The wire's null is 0 here (null counts are filled).
goal1integerFree throws made. The wire's null is 0 here (null counts are filled).
shot2integer2-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal2integer2-point field goals made. The wire's null is 0 here (null counts are filled).
shot3integer3-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal3integer3-point field goals made. The wire's null is 0 here (null counts are filled).
shot23integerField goals (2 + 3 points) attempted. The wire's null is 0 here (null counts are filled).
goal23integerField goals (2 + 3 points) made. The wire's null is 0 here (null counts are filled).
shot1_percentnumericFree-throw percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot2_percentnumeric2-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot3_percentnumeric3-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot23_percentnumericField-goal percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
assistintegerAssists. The wire's null is 0 here (null counts are filled).
blocksintegerBlocked shots. The wire's null is 0 here (null counts are filled).
def_reboundintegerDefensive rebounds. The wire's null is 0 here (null counts are filled).
off_reboundintegerOffensive rebounds. The wire's null is 0 here (null counts are filled).
reboundintegerTotal rebounds. The wire's null is 0 here (null counts are filled).
stealintegerSteals. The wire's null is 0 here (null counts are filled).
turnoverintegerTurnovers. The wire's null is 0 here (null counts are filled).
team_def_reboundintegerTeam defensive rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_off_reboundintegerTeam offensive rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_reboundintegerTeam rebounds (not credited to a player). The wire's null is 0 here (null counts are filled).
team_stealintegerTeam steals (not credited to a player). The wire's null is 0 here (null counts are filled).
team_turnoverintegerTeam turnovers (not credited to a player, e.g. shot-clock violations). The wire's null is 0 here (null counts are filled).
kpiintegerEfficiency index (KPI, the platform's 'КПИ'); formula unverified.
avg_pointsnumericPer-game average of: points; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_assistnumericPer-game average of: assists; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_blocksnumericPer-game average of: blocked shots; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_def_reboundnumericPer-game average of: defensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_off_reboundnumericPer-game average of: offensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_reboundnumericPer-game average of: total rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_stealnumericPer-game average of: steals; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_turnovernumericPer-game average of: turnovers; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_foulnumericPer-game average of: personal fouls committed; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_opponent_foulnumericPer-game average of: fouls drawn; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_plus_minusnumericPer-game average of: plus-minus: point differential while on the court; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_def_reboundnumericPer-game average of: team defensive rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_off_reboundnumericPer-game average of: team offensive rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_reboundnumericPer-game average of: team rebounds (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_stealnumericPer-game average of: team steals (not credited to a player); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_team_turnovernumericPer-game average of: team turnovers (not credited to a player, e.g. shot-clock violations); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
foulintegerPersonal fouls committed. The wire's null is 0 here (null counts are filled).
opponent_foulintegerFouls drawn. The wire's null is 0 here (null counts are filled).
secondsintegerPlaying time in seconds.
played_timecharacterPlaying time as 'minutes:seconds' (team rows sum the five players: '200:00' = 40 minutes x 5).
avg_played_timecharacterAverage playing time per game as 'minutes:seconds'.
plus_minusintegerPlus-minus: point differential while on the court. Null where the host sends none.
team_short_name_rucharacterThe the team's short name in Russian (as the competition names it).
team_short_name_encharacterThe the team's short name in English (as the competition names it).
team_name_rucharacterThe the team's name in Russian (as the competition names it).
team_name_encharacterThe the team's name in English (as the competition names it).
team_region_name_rucharacterThe the team's region or city in Russian (as the competition names it).
team_region_name_encharacterThe the team's region or city in English (as the competition names it).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_season_stats(season=2026, team_id=2650)

Last validated n/a.

vtb_infobasket_team_player_stats​

Season totals of every player of a club in one season.

Endpoint URL: GET https://org.infobasket.su/Widget/TeamStats/{team_id}

Valid URL: https://org.infobasket.su/Widget/TeamStats/2650?format=json&season=2026&lang=en&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
team_idteam_idYInfobasket TeamID (team_id in the calendar, a box score or the v2 matches), e.g. 2650 (Lokomotiv Kuban).
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached). Required.
langlangYLabel language (en or ru). Most bodies carry both languages whatever is asked; the leader categories' labels follow it.
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
seasonintegerSeason END year (2026 = 2025-26): the season the request asked for, stamped by the runtime.
team_idintegerInfobasket TeamID (2650 = Lokomotiv Kuban); the v2 teamId. Not a club-record id and not a registration id.
person_idintegerInfobasket person id (PersonID): one person (player, coach or official) across clubs and seasons. Joins to /Widget/PlayerPage/{personId} (players) and /Widget/CoachPage/{personId} (coaches).
player_numberintegerShirt number as an integer (0 when the player has none or wears 00).
display_numbercharacterShirt number as displayed ('0', '7'); a coach's is the coach order (1 = head coach).
is_activelogicalTrue while the person is on the current roster.
active_statuscharacterRoster status text ('Accepted'), empty otherwise.
pointsintegerPoints. The wire's null is 0 here (null counts are filled).
shot1integerFree throws attempted. The wire's null is 0 here (null counts are filled).
goal1integerFree throws made. The wire's null is 0 here (null counts are filled).
shot2integer2-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal2integer2-point field goals made. The wire's null is 0 here (null counts are filled).
shot3integer3-point field goals attempted. The wire's null is 0 here (null counts are filled).
goal3integer3-point field goals made. The wire's null is 0 here (null counts are filled).
shot23integerField goals (2 + 3 points) attempted. The wire's null is 0 here (null counts are filled).
goal23integerField goals (2 + 3 points) made. The wire's null is 0 here (null counts are filled).
shot1_percentnumericFree-throw percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot2_percentnumeric2-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot3_percentnumeric3-point percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
shot23_percentnumericField-goal percentage (0-100); parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
assistintegerAssists. The wire's null is 0 here (null counts are filled).
blocksintegerBlocked shots. The wire's null is 0 here (null counts are filled).
def_reboundintegerDefensive rebounds. The wire's null is 0 here (null counts are filled).
off_reboundintegerOffensive rebounds. The wire's null is 0 here (null counts are filled).
reboundintegerTotal rebounds. The wire's null is 0 here (null counts are filled).
stealintegerSteals. The wire's null is 0 here (null counts are filled).
turnoverintegerTurnovers. The wire's null is 0 here (null counts are filled).
foulintegerPersonal fouls committed. The wire's null is 0 here (null counts are filled).
opponent_foulintegerFouls drawn. The wire's null is 0 here (null counts are filled).
plus_minusintegerPlus-minus: point differential while on the court. Null where the host sends none.
kpiintegerEfficiency index (KPI, the platform's 'КПИ'); formula unverified.
avg_pointsnumericPer-game average of: points; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_assistnumericPer-game average of: assists; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_blocksnumericPer-game average of: blocked shots; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_def_reboundnumericPer-game average of: defensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_off_reboundnumericPer-game average of: offensive rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_reboundnumericPer-game average of: total rebounds; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_stealnumericPer-game average of: steals; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_turnovernumericPer-game average of: turnovers; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_foulnumericPer-game average of: personal fouls committed; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_opponent_foulnumericPer-game average of: fouls drawn; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_plus_minusnumericPer-game average of: plus-minus: point differential while on the court; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
avg_kpinumericPer-game average of: efficiency index (kpi, the platform's 'кпи'); formula unverified; parsed to a number (the wire sends a comma-decimal string, null when there were no attempts).
secondsintegerPlaying time in seconds.
played_timecharacterPlaying time as 'minutes:seconds' (team rows sum the five players: '200:00' = 40 minutes x 5).
avg_played_timecharacterAverage playing time per game as 'minutes:seconds'.
in_game_countintegerGames actually played (on the court).
game_countintegerGames in the totals (the whole competition, all stages, for the season-level CompID).
start_countintegerGames the person started.
person_last_name_rucharacterLast name, Russian.
person_last_name_encharacterLast name, English.
person_first_name_rucharacterFirst name, Russian.
person_first_name_encharacterFirst name, English.
person_full_name_rucharacterFull name, 'Last First', Russian.
person_full_name_encharacterFull name, 'Last First', English.
person_genderintegerPerson gender: 1 on every sampled (male) person.
birth_datecharacterBirth date (ISO 8601 date) of a player: public bio, kept; coaches' and officials' birth data is never output.
heightcharacterHeight in centimetres.
weightcharacterWeight in kilograms.
player_positionintegerPlayer position code from the host (1 point guard, 2 shooting guard, 3 small forward ... 5 center; see position_id for the named position).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_player_stats(season=2026, team_id=2650)

Last validated n/a.

vtb_infobasket_team_coach_stats​

Technical fouls and games of every coach of a club in one season.

Endpoint URL: GET https://org.infobasket.su/Widget/TeamStats/{team_id}

Valid URL: https://org.infobasket.su/Widget/TeamStats/2650?format=json&season=2026&lang=en&tag=vtb

API ParameterPythonPatternRequiredNullableDescription
team_idteam_idYInfobasket TeamID (team_id in the calendar, a box score or the v2 matches), e.g. 2650 (Lokomotiv Kuban).
seasonseasonYSeason END year (2026 = 2025-26); the wrapper maps it to the season-level Infobasket CompID with vtb_infobasket_seasons (one extra request per tag, cached). Required.
langlangYLabel language (en or ru). Most bodies carry both languages whatever is asked; the leader categories' labels follow it.
tagtagYCompetition tag scoping the profile: vtb (VTB United League, default), vtbyouth, wbc, wpremier or rfb. The season table is read for this tag.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
seasonintegerSeason END year (2026 = 2025-26): the season the request asked for, stamped by the runtime.
team_idintegerInfobasket TeamID (2650 = Lokomotiv Kuban); the v2 teamId. Not a club-record id and not a registration id.
person_idintegerInfobasket person id (PersonID): one person (player, coach or official) across clubs and seasons. Joins to /Widget/PlayerPage/{personId} (players) and /Widget/CoachPage/{personId} (coaches).
player_numberintegerCoach order (1 head coach).
display_numbercharacterCoach order (1 head coach).
is_activelogicalTrue while the person is on the current roster.
active_statuscharacterUnobserved: null in every sample, so its type and meaning are unconfirmed.
foul_cintegerTechnical fouls on the head coach for his own conduct (scoresheet 'C').
foul_bintegerTechnical fouls on the head coach for bench conduct (scoresheet 'B').
foul_dintegerUnobserved: null in every sample, so its type and meaning are unconfirmed.
foulintegerPersonal fouls committed. The wire's null is 0 here (null counts are filled).
game_countintegerGames in the totals (the whole competition, all stages, for the season-level CompID).
person_last_name_rucharacterLast name, Russian.
person_last_name_encharacterLast name, English.
person_first_name_rucharacterFirst name, Russian.
person_first_name_encharacterFirst name, English.
person_full_name_rucharacterFull name, 'Last First', Russian.
person_full_name_encharacterFull name, 'Last First', English.
person_genderintegerPerson gender: 1 on every sampled (male) person.

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

vtb_infobasket_team_coach_stats(season=2026, team_id=2650)

Last validated n/a.