Integration GuidesReference Docs
Coverage MatrixDocumentationChange LogLog InContact Us
Reference Docs

Push Statistics

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

Syntax

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

Parameters

ParameterDescription
access_levelDefines the access level of your API key

production, trial
language_codeOptional code for supported languages

en (English)
your_api_keyYour API key

Optional Query String Parameters

By default, a Push feed will provide all data available for all in progress games. If needed, you can filter the data returned by including query strings.

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.

ParameterDescription
localeLanguage returned expressed as a 2-letter code

en (English)

Example: locale=en
matchMatch id

Example: match=sd:match:d613a22d-91aa-451a-8148-fcff2a5970cc
playerPlayer id

Example: players=sd:player:82643a21-c4ec-4725-b729-f4c65727c93d
statusGame status

inprogress, created

Example: status=inprogress
stats_typeStatistic type

Example: stats_type=player
teamTeam id expressed as: sd:team:{team_id}.
Example: team=sd:team:2ed86226-3fff-4083-90fa-6b02307e6f73


Code Samples

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

url = URI("https://api.sportradar.us/ncaamb/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/ncaamb/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/ncaamb/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/ncaamb/trial/stream/en/events/subscribe?api_key={your_api_key}&status=inprogress&match=sd:match:d613a22d-91aa-451a-8148-fcff2a5970cc")

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/ncaamb/trial/stream/en/events/subscribe",
    params = {'api_key': 'your_api_key', 'status': 'inprogress', 'match': 'sd:match:d613a22d-91aa-451a-8148-fcff2a5970cc'},
    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/ncaamb/trial/stream/en/events/subscribe?api_key={your_api_key}&status=inprogress&match=sd:match:d613a22d-91aa-451a-8148-fcff2a5970cc'


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
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
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. South Regional - Elite Eight - Game 1
scheduledgamedateTimeScheduled date and time of a game
ex. 2024-02-14T05:00:00Z
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
defensive_reboundsplayer - statisticsIntegerNumber of defensive rebounds
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
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
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
minutesplayer - statisticsStringNumber of minutes played
ex. 40:07
offensive_foulsplayer - statisticsIntegerNumber of offensive fouls
offensive_reboundsplayer - statisticsIntegerNumber of offensive rebounds
personal_foulsplayer - statisticsIntegerNumber of personal fouls
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
second_chance_ptsplayer - statisticsIntegerNumber of second chance points
stealsplayer - statisticsIntegerNumber of steals
tech_foulsplayer - statisticsIntegerNumber of 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
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_tech_foulsteam - statisticsIntegerNumber of coach technical fouls
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_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
most_unanswered_run_opp_pointsteam - statisticsIntegerOpponents score when a team's largest scoring run was attained
most_unanswered_run_own_pointsteam - statisticsIntegerTeam's score when its largest score run was attained
most_unanswered_pointsteam - statisticsIntegerLongest streak of unanswered points
offensive_foulsteam - statisticsIntegerNumber of offensive fouls
offensive_reboundsteam - statisticsIntegerNumber of offensive rebounds
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_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
second_chance_ptsteam - statisticsIntegerNumber of second chance points
stealsteam - statisticsIntegerNumber of steals
team_defensive_reboundsteam - statisticsIntegerNumber of team defensive rebounds
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
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
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. NCAAM
localemetadataStringLanguage code
ex. en (English)
matchmetadataGUIDUnique ID of a game
ex. sd:match:0db78438-9663-470f-b3ae-1f9106298e47
operationmetadataStringOperation of an update
create, update, delete
playersmetadataGUIDUnique ID(s) of players associated with an event
ex. sd:player:6897db83-b25f-4c54-832a-0ff0c3cb86ff,sd:player:481ffe40-392b-4a1b-89ec-0d9453495639
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
stats_typemetadataStringType of statistic
ex. team or player
teammetadataGUIDUnique ID(s) of team(s) associated with an event
ex. sd:team:bdc2561d-f603-4fab-a262-f1d2af462277
versionmetadataStringVersion of the API
ex. v7
Play-by-Play - Home/Away Teams:
AttributeParent ElementTypeDescription
bonusgame - awayBooleanSignifies the away team is in the bonus (available for full coverage games only)
double_bonusgame - awayBooleanSignifies the away team is in the double bonus (available for full coverage games only)
pointsgame - awayIntegerTotal points for the away team
idgame - awayGUIDUnique ID of the away team
ex. bdc2561d-f603-4fab-a262-f1d2af462277
marketgame - awayStringMarket name of the away team
ex. Michigan
namegame - awayStringAway team name
ex. Wolverines
remaining_timeoutsgame - awayIntegerRemaining timeouts for the away team
bonusgame - homeBooleanSignifies the home team is in the bonus (available for full coverage games only)
double_bonusgame - homeBooleanSignifies the home team is in the double bonus (available for full coverage games only)
pointsgame - homeIntegerTotal points for the home team
idgame - homeGUIDUnique ID of the home team
ex. bdc2561d-f603-4fab-a262-f1d2af462277
marketgame - homeStringMarket name of the home team
ex. Michigan
namegame - homeStringHome team name
ex. Wolverines
remaining_timeoutsgame - homeIntegerRemaining timeouts for the home team
Player:
AttributeParent ElementTypeDescription
first_nameplayerStringFirst name of a player
ex. Isaiah
full_nameplayerStringFull name of a player
ex. Isaiah Livers
idplayerGUIDUnique player ID
ex. 34736ed7-c86a-472c-8c1c-683002de6487
jersey_numberplayerIntegerNumber of a player's jersey
last_nameplayerStringLast name of a player
ex. Livers
name_suffixplayerStringSuffix of a player
ex. Jr.
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. bdc2561d-f603-4fab-a262-f1d2af462277
marketteamStringMarket name of a team
ex. Michigan
nameteamStringTeam name
ex. Wolverines