Skip to main content

NBA — NBA Stats API (stats.nba.com) — Common

nba_stats_commonallplayers​

GET /stats/commonallplayers

Endpoint URL: GET https://stats.nba.com/stats/commonallplayers

Valid URL: https://stats.nba.com/stats/commonallplayers?IsOnlyCurrentSeason=0&LeagueID=00&Season=2024-25

API ParameterPythonPatternRequiredNullableDescription
IsOnlyCurrentSeasonis_only_current_seasonY
LeagueIDleague_idY
SeasonseasonYSeason label, e.g. 2024-25. Defaults at call time by a calendar cutoff, the month after a season's first games, so it can lag the newest rows by a few weeks. An NBA season tips off in late October and becomes the default in November (2025-26 through October 2026, 2026-27 from November 2026); a G League season (regular season from late December) in January; a Summer League (played in July, which stats.nba.com labels 2026-27 in 2026) in August; a draft combine (May) in June; a draft (drafthistory, a year; late June) in July. With season type Playoffs / PlayIn (or commonplayoffseries) the NBA and the G League roll over in May, after their playoffs start; with All Star the NBA rolls over in March, after the February game (the G League has no All-Star rows and keeps its own rule). A month table cannot follow a lockout or pandemic calendar (1998-99, 2011-12, 2020-21): pass a season then. Without one stats.nba.com answers an empty HTTP 500 or every season summed.

Returns​

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

col_nametypedescription
person_idintegerUnique player identifier (V3 endpoints).
display_last_comma_firstcharacterPlayer name formatted as "Last, First".
display_first_lastcharacterPlayer name formatted as "First Last".
rosterstatusintegerRoster status flag (1 = currently on a roster, 0 = not).
from_yearcharacterFirst season.
to_yearcharacterMost recent season.
playercodecharacterURL-style player code slug used by the league's legacy stats pages.
player_slugcharacterURL-safe player identifier.
team_idintegerUnique team identifier.
team_citycharacterTeam city or region (e.g. 'Las Vegas').
team_namecharacterFull team display name (e.g. 'Las Vegas Aces').
team_abbreviationcharacterShort team abbreviation (e.g. 'LAS').
team_codecharacterLowercase slug of the player's team used in stats.nba.com URLs (e.g. 'lakers').
team_slugcharacterURL-safe team identifier (e.g. 'lasvegas-aces' / 'aces').
games_played_flagcharacterY/N flag for whether the player has appeared in a league game.
otherleague_experience_chcharacterCode for the player's experience in another league (e.g. G League), as reported by the stats API.

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

Example​

nba_stats_commonallplayers(league_id='00', season='2024-25')

Last validated n/a.

nba_stats_commonplayerinfo​

GET /stats/commonplayerinfo

Endpoint URL: GET https://stats.nba.com/stats/commonplayerinfo

Valid URL: https://stats.nba.com/stats/commonplayerinfo?LeagueID=00&PlayerID=2544

API ParameterPythonPatternRequiredNullableDescription
LeagueIDleague_idY
PlayerIDplayer_idY

Returns​

return_parsed=True (default) — A dict of DataFrames keyed by result-set name (CommonPlayerInfo, PlayerHeadlineStats, AvailableSeasons) (one table per documented key below); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys).

CommonPlayerInfo

col_nametypedescription
person_idintegerUnique player identifier (V3 endpoints).
first_namecharacterPlayer's first name.
last_namecharacterPlayer's last name.
display_first_lastcharacterNBA or WNBA Stats value for display first last in the commonplayerinfo result set.
display_last_comma_firstcharacterNBA or WNBA Stats value for display last comma first in the commonplayerinfo result set.
display_fi_lastcharacterNBA or WNBA Stats value for display fi last in the commonplayerinfo result set.
player_slugcharacterURL-safe player identifier.
birthdatecharacterPlayer's date of birth as an ISO timestamp string (e.g. '1984-12-30T00:00:00').
schoolcharacterPlayer school / pre-draft team.
countrycharacterVenue country.
last_affiliationcharacterNBA or WNBA Stats value for last affiliation in the commonplayerinfo result set.
heightcharacterPlayer height (string e.g. '6-2' or inches).
weightcharacterPlayer weight in pounds.
season_expintegerNBA or WNBA Stats value for season exp in the commonplayerinfo result set.
jerseycharacterJersey number worn by the player.
positioncharacterListed roster position (G, F, C, etc.).
rosterstatuscharacterNBA or WNBA Stats value for rosterstatus in the commonplayerinfo result set.
games_played_current_season_flagcharacterFlag indicating games played current season flag for the requested NBA or WNBA Stats context.
team_idintegerUnique team identifier.
team_namecharacterFull team display name (e.g. 'Las Vegas Aces').
team_abbreviationcharacterShort team abbreviation (e.g. 'LAS').
team_codecharacterLowercase slug of the player's current team used in stats.nba.com URLs (e.g. 'lakers').
team_citycharacterTeam city or region (e.g. 'Las Vegas').
playercodecharacterNBA or WNBA Stats value for playercode in the commonplayerinfo result set.
from_yearintegerFirst season.
to_yearintegerMost recent season.
dleague_flagcharacterFlag indicating dleague flag for the requested NBA or WNBA Stats context.
nba_flagcharacterFlag indicating NBA flag for the requested NBA or WNBA Stats context.
games_played_flagcharacterFlag indicating games played flag for the requested NBA or WNBA Stats context.
draft_yearcharacterDraft year (4-digit).
draft_roundcharacterRound of the draft selection.
draft_numbercharacterOverall pick the player was selected with, as a string; 'Undrafted' when never drafted.
greatest_75_flagcharacterFlag indicating greatest 75 flag for the requested NBA or WNBA Stats context.

PlayerHeadlineStats

col_nametypedescription
player_idintegerUnique player identifier.
player_namecharacterPlayer name.
time_framecharacter
ptsnumericPoints scored.
astnumericAssists.
rebnumericRebounds per game.
pieintegerPlayer Impact Estimate (0-1).

AvailableSeasons

col_nametypedescription
season_idcharacterUnique season identifier.

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

Example​

nba_stats_commonplayerinfo(league_id='00')

Last validated n/a.

nba_stats_commonplayoffseries​

GET /stats/commonplayoffseries

Endpoint URL: GET https://stats.nba.com/stats/commonplayoffseries

Valid URL: https://stats.nba.com/stats/commonplayoffseries?LeagueID=00&Season=2024-25&SeriesID=

API ParameterPythonPatternRequiredNullableDescription
LeagueIDleague_idY
SeasonseasonYSeason label, e.g. 2024-25. Defaults at call time by a calendar cutoff, the month after a season's first games, so it can lag the newest rows by a few weeks. An NBA season tips off in late October and becomes the default in November (2025-26 through October 2026, 2026-27 from November 2026); a G League season (regular season from late December) in January; a Summer League (played in July, which stats.nba.com labels 2026-27 in 2026) in August; a draft combine (May) in June; a draft (drafthistory, a year; late June) in July. With season type Playoffs / PlayIn (or commonplayoffseries) the NBA and the G League roll over in May, after their playoffs start; with All Star the NBA rolls over in March, after the February game (the G League has no All-Star rows and keeps its own rule). A month table cannot follow a lockout or pandemic calendar (1998-99, 2011-12, 2020-21): pass a season then. Without one stats.nba.com answers an empty HTTP 500 or every season summed.
SeriesIDseries_id_nullableY

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_idcharacterUnique game identifier.
home_team_idintegerUnique identifier for the home team.
visitor_team_idintegerUnique identifier for visitor team.
series_idcharacterPlayoff series id, the game id stem without the game sequence digit (e.g. '004230010' for the 2023-24 playoffs' first series).
game_numintegerNBA or WNBA Stats value for game number in the commonplayoffseries result set.

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

Example​

nba_stats_commonplayoffseries(league_id='00', season='2024-25')

Last validated n/a.

nba_stats_commonteamroster​

GET /stats/commonteamroster

Endpoint URL: GET https://stats.nba.com/stats/commonteamroster

Valid URL: https://stats.nba.com/stats/commonteamroster?LeagueID=00&Season=2024-25&TeamID=1610612739

API ParameterPythonPatternRequiredNullableDescription
LeagueIDleague_idY
SeasonseasonYSeason label, e.g. 2024-25. Defaults at call time by a calendar cutoff, the month after a season's first games, so it can lag the newest rows by a few weeks. An NBA season tips off in late October and becomes the default in November (2025-26 through October 2026, 2026-27 from November 2026); a G League season (regular season from late December) in January; a Summer League (played in July, which stats.nba.com labels 2026-27 in 2026) in August; a draft combine (May) in June; a draft (drafthistory, a year; late June) in July. With season type Playoffs / PlayIn (or commonplayoffseries) the NBA and the G League roll over in May, after their playoffs start; with All Star the NBA rolls over in March, after the February game (the G League has no All-Star rows and keeps its own rule). A month table cannot follow a lockout or pandemic calendar (1998-99, 2011-12, 2020-21): pass a season then. Without one stats.nba.com answers an empty HTTP 500 or every season summed.
TeamIDteam_idY

Returns​

return_parsed=True (default) — A dict of DataFrames keyed by result-set name (CommonTeamRoster, Coaches) (one table per documented key below); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys).

CommonTeamRoster

col_nametypedescription
team_idintegerUnique team identifier.
seasoncharacterSeason year.
league_idcharacterLeague identifier from the stats API ("00" = NBA, "10" = WNBA, "20" = G League).
playercharacterPlayer name.
nicknamecharacterTeam or athlete nickname.
player_slugcharacterURL-safe player identifier.
numcharacterJersey number as printed on the roster (string; may be blank or carry a suffix).
positioncharacterListed roster position (G, F, C, etc.).
heightcharacterPlayer height (string e.g. '6-2' or inches).
weightcharacterPlayer weight in pounds.
birth_datecharacterDate of birth (YYYY-MM-DD).
agenumericPlayer age (in years).
expcharacterExp.
schoolcharacterPlayer school / pre-draft team.
player_idintegerUnique player identifier.
how_acquiredcharacterHow the team acquired the player (e.g. draft, trade, free agency).

Coaches

col_nametypedescription
team_idintegerUnique team identifier.
seasoncharacterSeason year.
coach_idintegerESPN coach id.
first_namecharacterPlayer's first name.
last_namecharacterPlayer's last name.
coach_namecharacter
is_assistantinteger
coach_typecharacter
sort_sequenceinteger
sub_sort_sequenceinteger

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

Example​

nba_stats_commonteamroster(league_id='00', season='2024-25')

Last validated n/a.

nba_stats_commonteamyears​

GET /stats/commonteamyears

Endpoint URL: GET https://stats.nba.com/stats/commonteamyears

Valid URL: https://stats.nba.com/stats/commonteamyears?LeagueID=00

API ParameterPythonPatternRequiredNullableDescription
LeagueIDleague_idY

Returns​

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

col_nametypedescription
league_idcharacterLeague identifier ('10' = WNBA).
team_idintegerUnique team identifier.
min_yearcharacterMinimum year queried (echoes min_year).
max_yearcharacterMaximum year queried (echoes max_year).
abbreviationcharacterShort abbreviation.

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

Example​

nba_stats_commonteamyears(league_id='00')

Last validated n/a.