Skip to content

Season Stats & Analytics

Player tracking stats (league)

NBA-only, league-wide. Every stored row of the derived player_tracking_stats collection for the season — each item is the document /v1/nba/players/{id}/tracking returns for that player: the leaguedashptstats per-game slices drives, touches, pull_up, catch_shoot, passing, rebounding and speed_distance, plus games played and minutes per game. A slice the player had no row in (or that the adapter had not fetched when the row was written) is null, never zero-filled. Sorted by player id, then club; team narrows the list to one club's players. A season the adapter has not written yet (before the regular season tips off) is an empty list, not a 404. Written daily by statsapi:tracking.

Requires the stats entitlement (a paid plan). See Responses & Errors for the success envelope and availability rules.

GEThttps://api.sportquanta.com/v1/nba/player-tracking
GETList every NBA player's tracking stats for a season
GET/v1/nba/player-tracking

List every NBA player's tracking stats for a season

NBA-only, league-wide. Every stored row of the derived player_tracking_stats collection for the season — each item is the document /v1/nba/players/{id}/tracking returns for that player: the leaguedashptstats per-game slices drives, touches, pull_up, catch_shoot, passing, rebounding and speed_distance, plus games played and minutes per game. A slice the player had no row in (or that the adapter had not fetched when the row was written) is null, never zero-filled. Sorted by player id, then club; team narrows the list to one club's players. A season the adapter has not written yet (before the regular season tips off) is an empty list, not a 404. Written daily by statsapi:tracking.

Requires the stats entitlement (a paid plan). See Responses & Errors for the success envelope and availability rules.

Authorization
Query
List every NBA player's tracking stats for a seasoncURL
200Example

Reference context: NBA.

Overview · Response conventions

Authorizations

Authorizationstringheaderrequired

Send a workspace API token in the Authorization: Bearer <token> header.

Query Parameters

seasonintegerrequired

Season start year (2025 for the 2025-26 season).

Required range: 1920 <= x, x <= 2100

teamstring

Canonical team id; only that club's players.

limitintegerdefault:1000

Page size; the default carries a full regular season.

Required range: 1 <= x, x <= 2000

provenancebooleandefault:false

Opt in to per-field provenance on supported single game, match, team, player, and venue reads. Lists and composites accept the flag but generally omit provenance. It is returned under _meta.provenance only when source metadata exists.

Response

application/json

Every stored player tracking row for the season.

dataobjectrequired
data.seasonintegerrequired
data.itemsobject[]required
data.items.idstring
data.items.canonical_idstring
data.items.external_idsobject

Map from the exact stored source/namespace key to that provider's identifier for this entity. Keys vary by entity and league. Values are strings, even when the provider ID looks numeric. Use the exact key and value for external-ID lookups; these are distinct from the canonical ID. SOURCE_KEY below is an illustrative placeholder.

data.items.external_ids.{key}string
data.items.created_atstring<date-time>

Canonical document creation timestamp, when present; not the scheduled start or event time.

data.items.updated_atstring<date-time>

Canonical document update timestamp, when present. It is not a guarantee that every field was refreshed at this time; field provenance carries individual ingestion times.

data.items.player_idstring
data.items.team_idstring
data.items.seasonintegerrequired
data.items.games_playedinteger | nullrequired
data.items.minutes_per_gamenumber | nullrequired
data.items.drivesobject | nullrequired
data.items.drives.drivesnumber | nullrequired
data.items.drives.field_goals_madenumber | nullrequired
data.items.drives.field_goals_attemptednumber | nullrequired
data.items.drives.field_goal_pctnumber | nullrequired
data.items.drives.free_throws_madenumber | nullrequired
data.items.drives.free_throws_attemptednumber | nullrequired
data.items.drives.free_throw_pctnumber | nullrequired
data.items.drives.pointsnumber | nullrequired
data.items.drives.passesnumber | nullrequired
data.items.drives.assistsnumber | nullrequired
data.items.drives.turnoversnumber | nullrequired
data.items.drives.foulsnumber | nullrequired
data.items.touchesobject | nullrequired
data.items.touches.touchesnumber | nullrequired
data.items.touches.front_court_touchesnumber | nullrequired
data.items.touches.time_of_possessionnumber | nullrequired
data.items.touches.avg_seconds_per_touchnumber | nullrequired
data.items.touches.avg_dribbles_per_touchnumber | nullrequired
data.items.touches.points_per_touchnumber | nullrequired
data.items.touches.elbow_touchesnumber | nullrequired
data.items.touches.post_touchesnumber | nullrequired
data.items.touches.paint_touchesnumber | nullrequired
data.items.touches.points_per_elbow_touchnumber | nullrequired
data.items.touches.points_per_post_touchnumber | nullrequired
data.items.touches.points_per_paint_touchnumber | nullrequired
data.items.pull_upobject | nullrequired
data.items.pull_up.field_goals_madenumber | nullrequired
data.items.pull_up.field_goals_attemptednumber | nullrequired
data.items.pull_up.field_goal_pctnumber | nullrequired
data.items.pull_up.three_pointers_madenumber | nullrequired
data.items.pull_up.three_pointers_attemptednumber | nullrequired
data.items.pull_up.three_point_pctnumber | nullrequired
data.items.pull_up.pointsnumber | nullrequired
data.items.pull_up.effective_field_goal_pctnumber | nullrequired
data.items.catch_shootobject | nullrequired
data.items.catch_shoot.field_goals_madenumber | nullrequired
data.items.catch_shoot.field_goals_attemptednumber | nullrequired
data.items.catch_shoot.field_goal_pctnumber | nullrequired
data.items.catch_shoot.three_pointers_madenumber | nullrequired
data.items.catch_shoot.three_pointers_attemptednumber | nullrequired
data.items.catch_shoot.three_point_pctnumber | nullrequired
data.items.catch_shoot.pointsnumber | nullrequired
data.items.catch_shoot.effective_field_goal_pctnumber | nullrequired
data.items.passingobject | nullrequired
data.items.passing.passes_madenumber | nullrequired
data.items.passing.passes_receivednumber | nullrequired
data.items.passing.assistsnumber | nullrequired
data.items.passing.secondary_assistsnumber | nullrequired
data.items.passing.potential_assistsnumber | nullrequired
data.items.passing.assist_points_creatednumber | nullrequired
data.items.passing.adjusted_assistsnumber | nullrequired
data.items.passing.assist_to_pass_pctnumber | nullrequired
data.items.passing.assist_to_pass_pct_adjnumber | nullrequired
data.items.reboundingobject | nullrequired
data.items.rebounding.reboundsnumber | nullrequired
data.items.rebounding.contested_reboundsnumber | nullrequired
data.items.rebounding.uncontested_reboundsnumber | nullrequired
data.items.rebounding.contested_rebound_pctnumber | nullrequired
data.items.rebounding.rebound_chancesnumber | nullrequired
data.items.rebounding.rebound_chance_pctnumber | nullrequired
data.items.rebounding.rebound_chances_deferrednumber | nullrequired
data.items.rebounding.rebound_chance_pct_adjnumber | nullrequired
data.items.rebounding.avg_rebound_distancenumber | nullrequired
data.items.rebounding.offensive_reboundsnumber | nullrequired
data.items.rebounding.offensive_contestednumber | nullrequired
data.items.rebounding.offensive_uncontestednumber | nullrequired
data.items.rebounding.offensive_contested_pctnumber | nullrequired
data.items.rebounding.offensive_chancesnumber | nullrequired
data.items.rebounding.offensive_chance_pctnumber | nullrequired
data.items.rebounding.defensive_reboundsnumber | nullrequired
data.items.rebounding.defensive_contestednumber | nullrequired
data.items.rebounding.defensive_uncontestednumber | nullrequired
data.items.rebounding.defensive_contested_pctnumber | nullrequired
data.items.rebounding.defensive_chancesnumber | nullrequired
data.items.rebounding.defensive_chance_pctnumber | nullrequired
data.items.speed_distanceobject | nullrequired
data.items.speed_distance.distance_feetnumber | nullrequired
data.items.speed_distance.distance_milesnumber | nullrequired
data.items.speed_distance.distance_miles_offensenumber | nullrequired
data.items.speed_distance.distance_miles_defensenumber | nullrequired
data.items.speed_distance.avg_speednumber | nullrequired
data.items.speed_distance.avg_speed_offensenumber | nullrequired
data.items.speed_distance.avg_speed_defensenumber | nullrequired
_metaobject

Response request/cache metadata. Optional evidence fields are specific to this handler; cache TTL does not measure source-data freshness.

_meta.request_idstring
_meta.served_fromenum<string>

Available options: live, cache

_meta.cache_ttl_secondsinteger

Response cache TTL; independent of source freshness. Omitted when zero.