Docs
Coverage MatrixDocumentationRelease LogLog In

Push Statistics

NBA G League Push Statistics retrieves detailed, real-time game stats at the team and player level for all live games.

Syntax

https://api.sportradar.us/nbdl/{access_level}/stream/{language_code}/statistics/subscribe?api_key={your_api_key}

Replace placeholders with the following query parameters:

ParameterDescription
access_levelDefines the access level of your API key as Production (production), or Trial (trial).
localeLocale expressed as 2 letter code: locale={language_code}
Example: locale=en
your_api_keyYour API key.

Optional Query String Parameters

In addition to the URL parameters listed above, you can filter the statistical information with one or more of the following optional query string parameters.

๐Ÿ“˜

Optional query string parameters must be added after your API key with an ampersand (&). If you are filtering for more than one result, separate the results with a comma (,) and no spaces.

Replace placeholders with the following query parameters:

ParameterDescription
matchMatch id expressed as: sd:match:{match_id}.
Example: match=sd:match:0f4a0ce6-9abb-44ac-867f-75cc2154bb40
playersPlayer id expressed as: sd:player:{player_id}.
Example: players=sd:player:92ec1ed2-95f7-45da-a923-71fd541d6cdb
stats_typeStat type expressed as {stats_type}.
Example: stats_type=player
teamTeam id expressed as: sd:team:{team_id}.
Example: team=sd:team:583eca2f-fb46-11e1-82cb-f4ce4684ea4c
statusStatus type expressed as: inprogress or created.
Example: status=inprogress

Code Samples

require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.us/nbdl/trial/stream/en/statistics/subscribe?api_key={your_api_key}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
import requests
import json

r = requests.get("https://api.sportradar.com/nbdl/trial/stream/en/statistics/subscribe",
    params = {'api_key': 'your_api_key'},
    allow_redirects=False)

redirect_url = r.headers['Location']
r = requests.get(redirect_url, stream=True)

for line in r.iter_lines():
    # filter out keep-alive new lines
    if line:
        decoded_line = line.decode('utf-8')
        print(json.loads(decoded_line))
curl -L GET 'api.sportradar.us/nbdl/trial/stream/en/statistics/subscribe?api_key={your_api_key}'

Samples with Query String Params

require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.us/nbdl/trial/stream/en/statistics/subscribe?api_key={your_api_key}&status=inprogress&match=sd:match:0f4a0ce6-9abb-44ac-867f-75cc2154bb40")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
import requests
import json

r = requests.get("https://api.sportradar.com/nbdl/trial/stream/en/statistics/subscribe",
    params = {'api_key': 'your_api_key'},
    allow_redirects=False)

redirect_url = r.headers['Location']
r = requests.get(redirect_url, stream=True)

for line in r.iter_lines():
    # filter out keep-alive new lines
    if line:
        decoded_line = line.decode('utf-8')
        print(json.loads(decoded_line))
curl -L GET 'api.sportradar.us/nbdl/trial/stream/en/statistics/subscribe?api_key={your_api_key}&status=inprogress&match=sd:match:0f4a0ce6-9abb-44ac-867f-75cc2154bb40'

Response Sample

The above commands return json like this.



Data Points

Starters & Activity:
AttributeParent ElementTypeDescription
activeplayerBooleanSignifies a player is on the active roster
ejectedplayerBooleanSignifies a player is ejected from a game
fouled_outplayerBooleanSignifies a player is fouled out of a game
not_playing_descriptionplayerStringText description of a "Not Playing" player
ex. Left Hamstring; Strain
not_playing_reasonplayerStringText description of a "Not Playing" reason
ex. Inactive - Injury/Illness
See our FAQ for a complete list of reasons
on_courtplayerBooleanSignifies a player is currently on the court
playedplayerBooleanSignifies a player played in a game
starterplayerBooleanSignifies a player started a game
Game:
AttributeParent ElementTypeDescription
coveragegameStringCoverage level of a game
full, extended_boxscore
idgameGUIDUnique ID of a game
ex. 1f730a9a-8221-48ff-a259-ac2103fb58b0
referencegameStringLeague reference ID of a game
ex. 1610612758
statusgameStringThe status of a game
scheduled, created, inprogress, halftime, complete, closed, cancelled, delayed, postponed, time-tbd, if-necessary, unnecessary

Please see our FAQ section for a list of game status definitions
titlegameStringGame title
ex. Game 6
scheduledgamedateTimeScheduled date and time of a game
ex. 2022-09-25T20:10:00+00:00
awaygame - time_zonesStringTime zone of the away team
ex. US/Pacific
homegame - time_zonesStringTime zone of the home team
ex. US/Eastern
venuegame - time_zonesStringTime zone of the venue
ex. US/Eastern
Player Statistics (Game):
AttributeParent ElementTypeDescription
assistsplayer - statisticsIntegerNumber of assists
assists_turnover_ratioplayer - statisticsDecimalAssist to turnover ratio
blocked_attplayer - statisticsIntegerNumber of blocked attempts
blocksplayer - statisticsIntegerNumber of shots blocked
coach_ejectionsplayer - statisticsIntegerNumber of coach ejections
coach_tech_foulsplayer - statisticsIntegerNumber of coach technical fouls
defensive_ratingplayer - statisticsDecimalDefensive Rating
ex. 106.11873436165
defensive_reboundsplayer - statisticsIntegerNumber of defensive rebounds
defensive_rebounds_pctplayer - statisticsDecimalDefensive rebound percentage
ex. 27.7537372335189
double_doubleplayer - statisticsBooleanSignifies a double-double
effective_fg_pctplayer - statisticsDecimalEffective Field Goal Percentage
(FG + 0.5 * 3P) / FGA
efficiencyplayer - statisticsDecimalPlayer Efficiency Rating
(sPoints+sAssists+sBlocks+sSteals+sFoulsDrawn+sReboundsTotal)-(sTurnovers+sBlocksReceived+sFoulsPersonal+sFoulsTechnical+(sTwoPointersAttempted-sTwoPointersMade)+(sThreePointersAttempted-sThreePointersMade)+(sFreeThrowsAttempted-sFreeThrowsMade))
efficiency_game_scoreplayer - statisticsDecimalPlayer Efficiency Game Score
sPoints + 0.4 sFieldGoalsMade - 0.7 sFieldGoalsAttempted - 0.4 ( sFreeThrowsAttempted - sFreeThrowsMade) + 0.7 sReboundsOffensive + 0.3 sReboundsDefensive + sSteals + 0.7 sAssists + 0.7 sBlocks - 0.4 sFoulsPersonal - sTurnovers
fast_break_attplayer - statisticsIntegerNumber of fast break attempts
fast_break_madeplayer - statisticsIntegerNumber of fast break baskets
fast_break_pctplayer - statisticsDecimalFast break percentage
ex. 100.0
fast_break_ptsplayer - statisticsIntegerNumber of fast break points
field_goals_attplayer - statisticsIntegerNumber of field goal attempts
field_goals_madeplayer - statisticsIntegerNumber of field goals made
field_goals_pctplayer - statisticsDecimalField goal percentage
ex. 56.5
flagrant_foulsplayer - statisticsIntegerNumber of flagrant fouls
fouled_outplayer - statisticsBooleanSignifies a fouled out player
fouls_drawnplayer - statisticsIntegerNumber of fouls drawn
free_throws_attplayer - statisticsIntegerNumber of free throw attempts
free_throws_madeplayer - statisticsIntegerNumber of free throws made
free_throws_pctplayer - statisticsDecimalFree throw percentage
ex. 100.0
minusplayer - statisticsIntegerNumber of team points against while a player is on the court
minutesplayer - statisticsStringNumber of minutes played
ex. 40:07
offensive_foulsplayer - statisticsIntegerNumber of offensive fouls
offensive_ratingplayer - statisticsDecimalOffensive Rating
ex. 171.93820667994
offensive_reboundsplayer - statisticsIntegerNumber of offensive rebounds
offensive_rebounds_pctplayer - statisticsDecimalOffensive rebound percentage
ex. 20.0
personal_foulsplayer - statisticsIntegerNumber of personal fouls
plusplayer - statisticsIntegerNumber of team points scored while a player is on the court
pls_minplayer - statisticsIntegerPlus/Minus (Team scoring while a player is on the court)
ex. -1 or 12
pointsplayer - statisticsIntegerNumber of points
points_in_paintplayer - statisticsIntegerNumber of points in the paint
points_in_paint_attplayer - statisticsIntegerNumber of points in the paint attempts
points_in_paint_madeplayer - statisticsIntegerNumber of points in the paint baskets
points_in_paint_pctplayer - statisticsDecimalPoints in the paint percentage
ex. 28.6
points_off_turnoversplayer - statisticsIntegerNumber of points off turnovers
reboundsplayer - statisticsIntegerNumber of rebounds
rebounds_pctplayer - statisticsDecimalRebound percentage
ex. 26.7857142857143
second_chance_attplayer - statisticsIntegerNumber of second chance attempts
second_chance_madeplayer - statisticsIntegerNumber of second chance baskets
second_chance_pctplayer - statisticsDecimalSecond chance percentage
ex. 20.0
second_chance_ptsplayer - statisticsIntegerNumber of second chance points
stealsplayer - statisticsIntegerNumber of steals
steals_pctplayer - statisticsDecimalSteal percentage
ex. 1.23425509677491
tech_foulsplayer - statisticsIntegerNumber of total unsportsmanlike technical fouls
tech_fouls_non_unsportsmanlikeplayer - statisticsIntegerNumber of non-unsportsmanlike technical fouls
three_points_attplayer - statisticsIntegerNumber of 3-point attempts
three_points_madeplayer - statisticsIntegerNumber of 3-point baskets
three_points_pctplayer - statisticsDecimal3-point percentage
ex. 100.0
triple_doubleplayer - statisticsBooleanSignifies a triple-double
true_shooting_attplayer - statisticsDecimalNumber of attempts used to determine true shooting percentage
sFieldGoalsAttempted + (0.44 * sFreeThrowsAttempted)
true_shooting_pctplayer - statisticsDecimalTrue Shooting Percentage
100 sPoints / (2 sTrueShootingAttempts )
turnoversplayer - statisticsIntegerNumber of turnovers
turnovers_pctplayer - statisticsDecimalTurnover Percentage
ex. 3.88198757763975
two_points_attplayer - statisticsIntegerNumber of 2-point attempts
two_points_madeplayer - statisticsIntegerNumber of 2-point baskets
two_points_pctplayer - statisticsDecimal2-point percentage
ex. 100.0
Team Statistics (Game):
AttributeParent ElementTypeDescription
assiststeam - statisticsIntegerNumber of assists
assists_turnover_ratioteam - statisticsDecimalAssist to turnover ratio
bench_pointsteam - statisticsIntegerNumber of bench points
biggest_leadteam - statisticsIntegerLargest lead in points for a team
blocked_attteam - statisticsIntegerNumber of blocked attempts
blocksteam - statisticsIntegerNumber of shots blocked
coach_ejectionsteam - statisticsIntegerNumber of coach ejections
coach_tech_foulsteam - statisticsIntegerNumber of coach technical fouls
defensive_points_per_possessionteam - statisticsIntegerAverage defensive points per position
defensive_ratingteam - statisticsDecimalDefensive Rating
ex. 106.11873436165
defensive_reboundsteam - statisticsIntegerNumber of defensive rebounds
effective_fg_pctteam - statisticsDecimalEffective Field Goal Percentage
(FG + 0.5 * 3P) / FGA
efficiencyteam - statisticsDecimalPlayer Efficiency Rating
(sPoints+sAssists+sBlocks+sSteals+sFoulsDrawn+sReboundsTotal)-(sTurnovers+sBlocksReceived+sFoulsPersonal+sFoulsTechnical+(sTwoPointersAttempted-sTwoPointersMade)+(sThreePointersAttempted-sThreePointersMade)+(sFreeThrowsAttempted-sFreeThrowsMade))
efficiency_game_scoreteam - statisticsDecimalPlayer Efficiency Game Score
sPoints + 0.4 sFieldGoalsMade - 0.7 sFieldGoalsAttempted - 0.4 ( sFreeThrowsAttempted - sFreeThrowsMade) + 0.7 sReboundsOffensive + 0.3 sReboundsDefensive + sSteals + 0.7 sAssists + 0.7 sBlocks - 0.4 sFoulsPersonal - sTurnovers
ejectionsteam - statisticsIntegerNumber of ejections
fast_break_attteam - statisticsIntegerNumber of fast break attempts
fast_break_madeteam - statisticsIntegerNumber of fast break baskets
fast_break_pctteam - statisticsDecimalFast break percentage
ex. 100.0
fast_break_ptsteam - statisticsIntegerNumber of fast break points
field_goals_attteam - statisticsIntegerNumber of field goal attempts
field_goals_madeteam - statisticsIntegerNumber of field goals made
field_goals_pctteam - statisticsDecimalField goal percentage
ex. 56.5
flagrant_foulsteam - statisticsIntegerNumber of flagrant fouls
fouloutsteam - statisticsIntegerNumber of fouled out players
fouls_drawnteam - statisticsIntegerNumber of fouls drawn
free_throws_attteam - statisticsIntegerNumber of free throw attempts
free_throws_madeteam - statisticsIntegerNumber of free throws made
free_throws_pctteam - statisticsDecimalFree throw percentage
ex. 100.0
minutesteam - statisticsStringNumber of minutes played
ex. 4:25:00
opp_scoreteam - statistics - most_unansweredIntegerOpponents score when a team's largest scoring run was attained
own_scoreteam - statistics - most_unansweredIntegerTeam's score when its largest score run was attained
pointsteam - statistics - most_unansweredIntegerLongest streak of unanswered points
offensive_foulsteam - statisticsIntegerNumber of offensive fouls
offensive_points_per_possessionteam - statisticsIntegerAverage offensive points per position
offensive_ratingteam - statisticsDecimalOffensive Rating
ex. 171.93820667994
offensive_reboundsteam - statisticsIntegerNumber of offensive rebounds
opponent_possessionsteam - statisticsDecimalNumber of opponent's possessions based on the possessions formula
personal_foulsteam - statisticsIntegerNumber of personal fouls
personal_reboundsteam - statisticsIntegerTotal number of rebounds attributed to players
Note: this appears under rebounds in previous API versions
player_tech_foulsteam - statisticsIntegerNumber of player technical fouls
player_turnoversteam - statisticsIntegerNumber of turnovers attributed to players
Note: this appears under turnovers in previous API versions
pls_minteam - statisticsIntegerPlus/Minus
pointsteam - statisticsIntegerNumber of points
points_againstteam - statisticsIntegerNumber of points against
points_in_paintteam - statisticsIntegerNumber of points in the paint
points_in_paint_attteam - statisticsIntegerNumber of points in the paint attempts
points_in_paint_madeteam - statisticsIntegerNumber of points in the paint baskets
points_in_paint_pctteam - statisticsDecimalPoints in the paint percentage
ex. 28.6
points_off_turnoversteam - statisticsIntegerNumber of points off turnovers
possessionsteam - statisticsDecimalTeam possessions
0.5 ((sFieldGoalsAttempted + 0.4 sFreeThrowsAttempted - 1.07 (sReboundsOffensive / (sReboundsOffensive + sOppReboundsDefensive )) (sFieldGoalsAttempted - sFieldGoalsMade) + sTurnovers) + (sOppFieldGoalsAttempted + 0.4 sOppFreeThrowsAttempted - 1.07 (sOppReboundsOffensive / (sOppReboundsOffensive + sReboundsDefensive)) * (sOppFieldGoalsAttempted - sOppFieldGoalsMade) + sOppTurnovers))
second_chance_attteam - statisticsIntegerNumber of second chance attempts
second_chance_madeteam - statisticsIntegerNumber of second chance baskets
second_chance_pctteam - statisticsDecimalSecond chance percentage
ex. 20.0
second_chance_ptsteam - statisticsIntegerNumber of second chance points
stealsteam - statisticsIntegerNumber of steals
team_defensive_reboundsteam - statisticsIntegerNumber of team defensive rebounds
team_foulsteam - statisticsIntegerNumber of team fouls
team_offensive_reboundsteam - statisticsIntegerNumber of team offensive rebounds
team_reboundsteam - statisticsIntegerNumber of team rebounds
team_tech_foulsteam - statisticsIntegerNumber of team technical fouls
team_turnoversteam - statisticsIntegerNumber of team turnovers
technical_otherteam - statisticsIntegerNumber of other technical fouls
This stat is no longer in use but may be present for past games
three_points_attteam - statisticsIntegerNumber of 3-point attempts
three_points_madeteam - statisticsIntegerNumber of 3-point baskets
three_points_pctteam - statisticsDecimal3-point percentage
ex. 80.0
time_leadingteam - statisticsStringTime leading in a game for a team
ex. 43:14
total_foulsteam - statisticsIntegerNumber of total fouls (team fouls + personal fouls)
total_reboundsteam - statisticsIntegerNumber of total rebounds (team rebounds + player rebounds)
total_turnoversteam - statisticsIntegerNumber of total team turnovers (player_turnovers + team_turnovers)
true_shooting_attteam - statisticsDecimalNumber of attempts used to determine true shooting percentage
sFieldGoalsAttempted + (0.44 * sFreeThrowsAttempted)
true_shooting_pctteam - statisticsDecimalTrue Shooting Percentage
100 sPoints / (2 sTrueShootingAttempts )
two_points_attteam - statisticsIntegerNumber of 2-point attempts
two_points_madeteam - statisticsIntegerNumber of 2-point baskets
two_points_pctteam - statisticsDecimal2-point percentage
ex. 100.0
Metadata:
AttributeParent ElementTypeDescription
leaguemetadataStringAlias of a league
ex. NBDL
localemetadataStringLanguage code
ex. en (English)
matchmetadataGUIDUnique ID of a game
ex. sd:match:0c2d1f82-a3de-4754-987e-4c1158ba2969
operationmetadataStringOperation of an update
update, delete
playersmetadataGUIDUnique ID(s) of players associated with an event
ex. sd:player:,sd:player:7fb15c57-6024-4b0c-9493-8d52d3ef3c24,sd:player:09e2f4e8-4519-47a0-849b-10a257205e5a
stats_typemetadataStringType of statistic
ex. team or player
statusmetadataStringThe status of a game
scheduled, created, inprogress, halftime, complete, closed, cancelled, delayed, postponed, time-tbd, if-necessary, unnecessary

Please see our FAQ section for a list of game status definitions
teammetadataGUIDUnique ID(s) of team(s) associated with an event
ex. sd:team:fb26de83-c7a1-44be-902a-9bf60f74f610
versionmetadataStringVersion of the API
ex. v7
Play-by-Play - Home/Away Teams:
AttributeParent ElementTypeDescription
bonusgame - awayBooleanSignifies a team is in the bonus
pointsgame - awayIntegerTotal points for the away team
idgame - awayGUIDUnique ID of the away team
ex. 67a79348-041a-45f6-bb12-722d38dc8dbf
marketgame - awayStringMarket name of the away team
ex. Delaware
namegame - awayStringAway team name
ex. Blue Coats
remaining_timeoutsgame - awayIntegerRemaining timeouts for the away team
bonusgame - homeBooleanSignifies a team is in the bonus
pointsgame - homeIntegerTotal points for the home team
idgame - homeGUIDUnique ID of the home team
ex. 67a79348-041a-45f6-bb12-722d38dc8dbf
marketgame - homeStringMarket name of the home team
ex. Delaware
namegame - homeStringHome team name
ex. Blue Coats
remaining_timeoutsgame - homeIntegerRemaining timeouts for the home team
Player:
AttributeParent ElementTypeDescription
first_nameplayerStringFirst name of a player
ex. Anthony
full_nameplayerStringFull name of a player
ex. Anthony Tarke
idplayerGUIDUnique player ID
ex. 89c7cd33-6143-48dd-82c4-ccbfed25ddaa
jersey_numberplayerIntegerNumber of a player's jersey
last_nameplayerStringLast name of a player
ex. Tarke
positionplayerStringPosition of a player
NA, C, C-F, F, F-C, F-G, G, G-F
primary_positionplayerStringPrimary position of a player
NA, C, PF, PG, SF, SG
Team:
AttributeParent ElementTypeDescription
idteamGUIDUnique ID of a team
ex. 67a79348-041a-45f6-bb12-722d38dc8dbf
marketteamStringMarket name of a team
ex. Delaware
nameteamStringTeam name
ex. Blue Coats