Global Ice Hockey v2
Quick Access | |
Postman Collection | XSD Schema |
Download |
- Standings
- Player profiles
- Team profiles
- Historical results
- Game lineups
- Seasonal statistics
- Match win probabilities
API | API Version |
Global Ice Hockey | v2 |
Note: Authentication is required for all API calls. |
Example:
>To find the probability of a home team win for a given game: >- Call the Daily Schedule for the day the sport event takes place and find the Season Id for the chosen sport event
- Make note of the Sport Event Id for the given sport event
- Call the Season Probabilities using the Season Id
- Find Sport Event Id within the results locate the home team and the outcome probability
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info: | Category Country Code | Category Id | Category Name |
Competition Info Data Points: | Competition Gender | Competition Id | Competition Name |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Competition Info Data Points: | Season Competition Id Season End Date |
Season Id Season Name |
Season Start Date Season Year |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info: | Category Country Code | Category Id | Category Name |
Competition Info Data Points: | Competition Gender | Competition Id | Competition Name |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Mapping Info Data Points: | External Id | Id |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/competitors/mappings.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/competitors/mappings.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/competitors/mappings.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the summaries with one or more of the following optional query string parameters. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Competitor Merge Mappings Provides the valid Sportradar Id in cases when two competitors have been merged into one. Mapping entries will remain in the feed for 7 days.
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Mappings Info Data Points: | Name | Merged Id | Retained Id |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country Competitor Country Code Competitor Gender Competitor Id Competitor Name |
Jersey Base Color Jersey Horizontal Stripes Jersey Number Color Jersey Shirt Type Jersey Sleeve Color |
Jersey Split Jersey Squares Jersey Stripes Jersey Type |
Player Info Data Points: | Country Code Date of Birth Gender Height |
Id Jersey Number Nationality |
Name Position Weight |
Venue Info Data Points: | Capacity City Country Code |
Country Name Id |
Map Coordinates Name |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Live Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Away Score Period Home Score Period Number Period Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
TTL / Cache: | 60 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Live Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Away Score Period Home Score Period Number Period Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
Note: Pagination will often be required to pull all data within this feed. By default, the feed will return 200 sport events. |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Live Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Away Score Period Home Score Period Number Period Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/schedules/2019-01-15/summaries.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/schedules/2019-01-15/summaries.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/schedules/2019-01-15/summaries.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the summaries with one or more of the following optional query string parameters. This will often be required to access all available data in this feed. By default the limit is set to 200.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, suggested maximum value is 75.
Example: limit=75 | Return to top ## Live Summaries Provides game information for all currently live games, including team scoring. This feed updates in real time as games are played.
TTL / Cache: | 1 second | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Live Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Away Score Period Home Score Period Number Period Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
TTL / Cache: | 1 second | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Match Info Data Points: | Period Score Away Score Period Score Home Score Period Score Number Period Score Type Sport Event Status |
Sport Event Status Away Score Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status |
Sport Event Status Scout Abandoned Sport Event Status Winner Id Sport Event Timeline Id Sport Event Timeline Start Time |
Timeline Info Data Points: | Assist Player Id Assist Player Name Assist Type Away Score Break Name |
Competitor Home Score Id Match Clock Match Time |
Period Period Name Suspension Minutes Time Type |
TTL / Cache: | 1 second | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Match Info Data Points: | Period Score Away Score Period Score Home Score Period Score Number Period Score Type Sport Event Status |
Sport Event Status Away Score Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status |
Sport Event Status Scout Abandoned Sport Event Status Winner Id Sport Event Timeline Id Sport Event Timeline Start Time |
Timeline Info Data Points: | Assist Player Id Assist Player Name Assist Type Away Score Break Name |
Competitor Home Score Id Match Clock Match Time |
Period Period Name Suspension Minutes Time Type |
Note: Pagination will often be required to pull all data within this feed. By default, the feed will return 1,000 player mappings. |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Mapping Info Data Points: | External Id | Id |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/players/mappings.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/players/mappings.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/players/mappings.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the summaries with one or more of the following optional query string parameters. This may be required to access all available data in this feed. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Player Merge Mappings Provides valid ids for players who have had their profiles merged. While Sportradar always strives to provide one unique player id, it is a possibility for two ids to be created. This feed provides the correct id once profiles have been merged.
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Mapping Info Data Points: | Merged Id | Name | Retained Id |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/players/merge_mappings.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/players/merge_mappings.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/players/merge_mappings.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the summaries with one or more of the following optional query string parameters. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Player Profile Provides player biographical information, including current team.
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Country Code Date Of Birth Gender Height |
Id Jersey Number Nationality |
Name Position Weight |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Live Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Away Score Period Home Score Period Number Period Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Competitor Info Data Points: | Competitor Abbreviation | Competitor Id Competitor Name |
Competitor Short Name |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Group Id Group Max Rounds Group Name Info Competition Status Info Venue Reduced Capacity |
Info Venue Reduced Capacity Max Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Competitor Info Data Points: | Competitor Abbreviation | Competitor Id | Competitor Name |
Player Info Data Points: | Player Id | Player Name | Multiple Competitors Flag |
Season Leader Info Data Points: | Data Point Type Data Point Value |
Leader Rank | List Type |
Note: Pagination will often be required to pull all data within this feed. By default, the feed will return 200 sport events. |
TTL / Cache: | 30 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Competition Parent Id Coverage Live Coverage Property Type Coverage Property Value Group - Group Name Group Id |
Group Name Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date |
Season Year Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country Competitor Country Code Competitor Gender Competitor Id Competitor Name Jersey Base Color Jersey Horizontal Stripes |
Jersey Number Color Jersey Shirt Type Jersey Sleeve Color Jersey Split Jersey Squares Jersey Stripes Jersey Type |
Manager Country Code Manager Date of Birth Manager Gender Manager Id Manager Name Manager Nationality Manager Nickname |
Player Info Data Points: | Country Code Date of Birth Height Id |
Jersey Number Nationality Name Played |
Position Starter Weight |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Score Away Score Period Score Home Score Period Score Number Period Score Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/seasons/sr:season:78917/lineups.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/seasons/sr:season:78917/lineups.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/seasons/sr:season:78917/lineups.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the lineup information with one or more of the following optional query string parameters.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, suggested maximum value is 75.
Example: limit=75 | Return to top ## Season Links Provides information about linked cup rounds for a given season. Use this feed to compile full advancement brackets for relevant seasons/tournaments. Links between all matches and rounds are available when competitors (TBD vs. TBD) are not yet known.
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Competition Info Data Points: | Cup Round Id Cup Round Name Cup Round Order Cup Round State Cup Round Type Cup Round Winner Id Group - Group Name |
Group Id Stage End Date Stage Phase |
Stage Start Date Stage Type Stage Year |
Match Info Data Points: | Sport Event Id | Sport Event Start Time | Sport Event Start Time Confirmed |
Note: Pagination will often be required to pull all data within this feed. By default, the feed will return 1,000 season mappings. |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Mapping Info Data Points: | External Id | Id |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/seasons/mappings.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/seasons/mappings.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/seasons/mappings.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the summaries with one or more of the following optional query string parameters. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Season Players Provides names and ids for all participating players for a given season.
Note: Pagination may be required to pull all data within this feed. By default, the feed will return 1,000 players. |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Player Info Data Points: | Display First Name Display Last Name First Name |
Player Id Last Name |
Name Nickname |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/seasons/sr:season:78917/players.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/seasons/sr:season:78917/players.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/seasons/sr:season:78917/players.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the response with one or more of the following optional query string parameters. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Season Probabilities Provides 3-way match win probabilities (home team win, away team win, draw) for all games for a given season.
TTL / Cache: | 60 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Type Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Probability Info Data Points: | Home Team Win Probability Home Team Win Probability |
Market Name | Outcome Name |
Match Info Data Points: | Competitor Qualifier Neutral Ground Sport Event Id |
Sport Event Replaced By Sport Event Start Time |
Sport Event Start Time Confirmed |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/seasons/sr:season:78917/probabilities.xml?api_key={your_api_key}&start=200") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.com") conn.request("GET", "/icehockey/trial/v2/en/seasons/sr:season:78917/probabilities.xml?api_key={your_api_key}&start=200") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.com/icehockey/trial/v2/en/seasons/sr:season:78917/probabilities.xml?api_key={your_api_key}&start=200'In addition to the URL parameters listed above, you can paginate the response with one or more of the following optional query string parameters.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 200.
Example: limit=200 | Return to top ## Season Standings Provides detailed standings info for a given season.
TTL / Cache: | 10 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Competition Info Data Points: | Group - Group Name Group Live Group Id Group Name |
Stage End Date Stage Order Stage Phase |
Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Standings Info Data Points: | Change Current Outcome Draw Goals Against Goals Difference Goals For Loss |
Loss Normal Time Loss Overtime Loss Shootout Played Points Rank Round |
Tie Break Rule Type Win Win Normal Time Win Overtime Win Shootout |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/seasons/sr:season:78917/standings.xml?api_key={your_api_key}&round=1") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/seasons/sr:season:78917/standings.xml?api_key={your_api_key}&round=1") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.com/icehockey/trial/v2/en/seasons/sr:season:78917/standings.xml?api_key={your_api_key}&round=1'In addition to the URL parameters listed above, you can filter the Season Standings information with the following optional query string parameter.
Note: 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. |
Example: round=1 | | `live` | Live standings expressed as a boolean value.
Example: live=true | Return to top ## Season Summaries Provides schedule information for all matches from a given season including scoring and statistics at the match level.
Note: Pagination will often be required to pull all data within this feed. By default, the feed will return 200 sport events. |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Type Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Away Score Period Home Score Period Number Period Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/seasons/sr:season:78917/summaries.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/seasons/sr:season:78917/summaries.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/seasons/sr:season:78917/summaries.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the summaries with one or more of the following optional query string parameters. This may be required to access all available data in this feed.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, suggested maximum value is 75.
Example: limit=75 | Return to top ## Seasonal Competitor Statistics Provides team seasonal statistics for a given team and season.
TTL / Cache: | 30 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Sport Id | Sport Name | |
Competition Info Data Points: | Season Competition Id Season End Date |
Season Id Season Name |
Season Start Date Season Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Competitor Season Statistics Data Points: | Form Goals Goals Allowed Matches Lost |
Matches Played Matches Won Number of Penalties Penalty Minutes |
Saves Shots on Target Shutouts |
Player Season Statistics Data Points: | Assists First Assists First Goals Goals |
Last Goals Minutes Played Penalties Penalty Minutes |
Plus Minus Points Saves Shots on Target |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Competition Info Data Points: | Season Competition Id Season End Date |
Season Id Season Name |
Season Start Date Season Year |
TTL / Cache: | 1 second | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Type Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country Competitor Country Code Competitor Gender Competitor Id Competitor Name Jersey Base Color Jersey Horizontal Stripes |
Jersey Number Color Jersey Shirt Type Jersey Sleeve Color Jersey Split Jersey Squares Jersey Stripes Jersey Type |
Manager Country Code Manager Date of Birth Manager Gender Manager Id Manager Name Manager Nationality Manager Nickname |
Player Info Data Points: | Country Code Date of Birth Height Id |
Jersey Number Nationality Name Played |
Type Starter Weight |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Score Away Score Period Score Home Score Period Score Number Period Score Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Note: Pagination will often be required to pull all data within this feed. By default, the feed will return 1,000 sport event mappings. |
TTL / Cache: | 300 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Mapping Info Data Points: | External Id | Id |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/sport_events/mappings.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/sport_events/mappings.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/sport_events/mappings.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the summaries with one or more of the following optional query string parameters. This may be required to access all available data in this feed. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Sport Event Summary Provides real-time match-level statistics for a given match. Including player stats, team stats, and scoring by period. Please note that data returned is determined by coverage level.
TTL / Cache: | 1 second | ||
Update Frequency: | Realtime | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Type Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Score Away Score Period Score Home Score Period Score Number Period Score Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
TTL / Cache: | 1 second | ||
Update Frequency: | Realtime | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Coverage Type Group - Group Name Group Id Group Name Round Name |
Round Number Season Competition Id Season End Date Season Id Season Name Season Start Date Season Year |
Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Competitor Abbreviation Competitor Age Group Competitor Country |
Competitor Country Code Competitor Gender Competitor Id |
Competitor Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Match Info Data Points: | Competitor Qualifier Neutral Ground Period Score Away Score Period Score Home Score Period Score Number Period Score Type |
Sport Event Id Sport Event Replaced By Sport Event Start Time Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score |
Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id Time Played Time Remaining |
Timeline Info Data Points: | Assist Player Id Assist Player Name Assist Type Away Score Break Name |
Competitor Home Score Id Match Clock Match Time |
Period Period Name Suspension Minutes Time Type |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
TTL / Cache: | 60 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Match Info Data Points: | Active Season Flag | Id | Created At |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/sport_events/created.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/sport_events/created.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/sport_events/created.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the response with one or more of the following optional query string parameters. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Sport Events Removed Provides ids for sport events that have been removed from the API due to an entry error. Ids will remain in the response for 2 weeks.
TTL / Cache: | 60 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Match Info Data Points: | Sport Event Removed Id |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/sport_events/removed.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/sport_events/removed.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/sport_events/removed.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the response with one or more of the following optional query string parameters. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Sport Events Updated Provides ids for sport events that have been updated in the last 24 hours.
TTL / Cache: | 60 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Match Info Data Points: | Id | Updated At |
require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/v2/en/sport_events/updated.xml?api_key={your_api_key}&start=0&limit=75") 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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/icehockey/trial/v2/en/sport_events/updated.xml?api_key={your_api_key}&start=0&limit=75") res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
curl -L GET 'api.sportradar.us/icehockey/trial/v2/en/sport_events/updated.xml?api_key={your_api_key}&start=0&limit=75'In addition to the URL parameters listed above, you can paginate the response with one or more of the following optional query string parameters. By default the limit is set to 1000.
Note: Optional query string parameters must be added after your API key with an ampersand (&). |
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to top ## Push Feeds >To best utilize Push feeds, we have included code samples in Ruby, Java and Python which provide an example of a way you can consume the feeds. Using these samples will output the feeds content to STDOUT.
For Java, we have also provided a Stream Client to assist your integration.
Note: In the provided Java sample, replace "URL GOES HERE" with the desired Push feed URL. ```ruby require 'httpclient' module Sportradar module HTTP module Stream class Client attr_reader :url, :logger def initialize(url, publisher, logger) @url = url @logger = logger @publisher = publisher @client = ::HTTPClient.new(:agent_name => 'SportsData/1.0') end def start @thread ||= Thread.new do logger.debug "Starting loop" @client.get_content(url, :follow_redirect => true) do |chunk| @publisher.publish(::JSON.parse(chunk)) if @publisher end logger.debug "finished loop" end end def stop @thread.terminate if @thread end end end end end ``` ```java package com.sportradar.http.stream.client; import org.junit.After; import org.junit.Before; import org.junit.Test; public class StreamClientTest { private StreamClient client; private static String SERVICE_URL = "
Note: 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. |
Example: channel=icehockey | | `competition_id` | Competition Id expressed as: {competition_id}.
Example: competition_id=sr:competition:237 | | `event_id` | Event type expressed as: {event_type}.
Example: event_id=score_change | | `format` | Format type expressed as: {format}.
Example: format=json | | `season_id` | Season id expressed as: {season_id}.
Example: season_id=sr:season:68178 | | `sport_event_id` | Sport event id expressed as: {sport_event_id}.
Example: sport_event_id=sr:sport_event:18449748 | | `sport_id` | Sport id expressed as: {sport_id}.
Example: sport_id=sr:sport:4 | ## Push Statistics Provides real-time team and player match-level statistics for all live matches. ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/stream/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 ``` ```python import requests import json r = requests.get("https://api.sportradar.com/icehockey/trial/stream/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)) ``` ```shell curl -L "GET api.sportradar.com/icehockey/trial/stream/statistics/subscribe?api_key={your_api_key}" ``` >The above command returns json like this. Access the Push Statistics feed by replacing the parameters in the following URL: https://api.sportradar.com/icehockey/`{access_level}`/stream/statistics/subscribe?api_key=`{your_api_key}` | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/icehockey/trial/stream/statistics/subscribe?api_key={your_api_key}&format=json&sport_event_id=sr:sport_event_id:18449748") 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 ``` ```python import requests import json r = requests.get("https://api.sportradar.com/icehockey/trial/stream/statistics/subscribe", params = {'api_key': 'your_api_key', 'format': 'json', 'sport_event_id': 'sr:sport_event_id:18449748'}, 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)) ``` ```shell curl -L GET 'https://api.sportradar.com/icehockey/trial/stream/statistics/subscribe?api_key={your_api_key}&format=json&sport_event_id=sr:sport_event_id:18449748' ``` In addition to the URL parameters listed above, you can filter the Statistics information with one or more of the following optional query string parameters.
Note: 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. |
Example: channel=icehockey | | `competition_id` | Competition Id expressed as: {competition_id}.
Example: competition_id=sr:competition:237 | | `event_id` | Event type expressed as: {event_type}.
Example: event_id=score_change | | `format` | Format type expressed as: {format}.
Example: format=json | | `season_id` | Season id expressed as: {season_id}.
Example: season_id=sr:season:68178 | | `sport_event_id` | Sport event id expressed as: {sport_event_id}.
Example: sport_event_id=sr:sport_event:18449748 | | `sport_id` | Sport id expressed as: {sport_id}.
Example: sport_id=sr:sport:4 | ## Probabilities Feeds This collection of probability feeds is available for licensing as an add-on feature. They are an extension of the Season Probabilities feed in the main package which provides pre-match probabilities for the sport event winner market. The main features of the Probabilities extension (where coverage applies) are:
- Live Probabilities that update throughout game
- Season Outright Probabilities for the Tournament Winner market
- Live Probabilities Coverage indicator for the next 24 hours
TTL / Cache: | 1 second | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Competition Parent Id Competition Properties - Brackets Competition Properties - Schedules Competition Properties - Season Player Stats Competition Properties - Season Stats Leaders Competition Properties - Season Team Stats Competition Properties - Standings Competition Properties - Team Squads |
Coverage Type Group - Group Name Group Id Group Name Round Name Round Number Season Competition Id Season End Date Season Id |
Season Name Season Start Date Season Year Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Abbreviation Age Group Country |
Country Code Gender Id |
Name |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Probability Info Data Points: | Away Team Win Probability Home Team Win Probability Market Away Score Market Home Score |
Market Last Updated Market Live Market Name Market Removed |
Match Time Outcome Name Remaining Time Remaining Time in Period |
Match Info Data Points: | Away Score Competitor Qualifier Home Score Neutral Ground Period Number Period Type Sport Event Id Sport Event Properties - Basic Play by Play Sport Event Properties - Basic Team Statistics |
Sport Event Properties - Deeper Player Stats Sport Event Properties - Deeper Team Stats Sport Event Properties - Lineups Sport Event Properties - Goal Scorers Sport Event Properties - Scores Sport Event Replaced By Sport Event Resumed Time Sport Event Start Time |
Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
TTL / Cache: | 60 seconds | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Competitor Info Data Points: | Abbreviation Age Group Country |
Country Code Gender Id |
Name |
Probability Info Data Points: | Win Probability | Market Name | Outcome Name |
TTL / Cache: | 1 second | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Competition Parent Id Competition Properties - Brackets Competition Properties - Schedules Competition Properties - Season Player Stats Competition Properties - Season Stats Leaders Competition Properties - Season Team Stats Competition Properties - Standings Competition Properties - Team Squads |
Coverage Type Group - Group Name Group Id Group Name Round Name Round Number Season Competition Id Season End Date Season Id |
Season Name Season Start Date Season Year Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Abbreviation Age Group Country |
Country Code Gender Id |
Name |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Probability Info Data Points: | Away Team Win Probability Home Team Win Probability Market Away Score Market Home Score |
Market Last Updated Market Live Market Name Market Removed |
Match Time Outcome Name Remaining Time Remaining Time in Period |
Match Info Data Points: | Away Score Competitor Qualifier Home Score Neutral Ground Period Number Period Type Sport Event Id Sport Event Properties - Basic Play by Play Sport Event Properties - Basic Team Statistics |
Sport Event Properties - Deeper Player Stats Sport Event Properties - Deeper Team Stats Sport Event Properties - Lineups Sport Event Properties - Goal Scorers Sport Event Properties - Scores Sport Event Replaced By Sport Event Resumed Time Sport Event Start Time |
Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
TTL / Cache: | 1 second | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Match Info Data Points: | Sport Event Upcoming Id |
TTL / Cache: | 1 second | ||
Update Frequency: | As Necessary | ||
Content Type: | XML or JSON | ||
Category & Sport Info Data Points: | Category Country Code Category Id |
Category Name Sport Id |
Sport Name |
Competition Info Data Points: | Competition Gender Competition Id Competition Name Competition Parent Id Competition Properties - Brackets Competition Properties - Schedules Competition Properties - Season Player Stats Competition Properties - Season Stats Leaders Competition Properties - Season Team Stats Competition Properties - Standings Competition Properties - Team Squads |
Coverage Type Group - Group Name Group Id Group Name Round Name Round Number Season Competition Id Season End Date Season Id |
Season Name Season Start Date Season Year Stage End Date Stage Order Stage Phase Stage Start Date Stage Type Stage Year |
Competitor Info Data Points: | Abbreviation Age Group Country |
Country Code Gender Id |
Name |
Player Info Data Points: | Id | Name | |
Venue Info Data Points: | Capacity Changed City Country Code |
Country Name Id Map Coordinates |
Name Reduced Capacity Reduced Capacity Max |
Probability Info Data Points: | Away Team Win Probability Home Team Win Probability Market Away Score Market Home Score |
Market Last Updated Market Live Market Name Market Removed |
Match Time Outcome Name Remaining Time Remaining Time in Period |
Match Info Data Points: | Away Score Competitor Qualifier Home Score Neutral Ground Period Number Period Type Sport Event Id Sport Event Properties - Basic Play by Play Sport Event Properties - Basic Team Statistics |
Sport Event Properties - Deeper Player Stats Sport Event Properties - Deeper Team Stats Sport Event Properties - Lineups Sport Event Properties - Goal Scorers Sport Event Properties - Scores Sport Event Replaced By Sport Event Resumed Time Sport Event Start Time |
Sport Event Start Time Confirmed Sport Event Status Sport Event Status Away Score Sport Event Status Decided by Fed Sport Event Status Home Score Sport Event Status Match Status Sport Event Status Scout Abandoned Sport Event Status Winner Id |
Competitor Match Statistics Data Points: | Goals Goals Conceded Goals in Power Play Goals While Short Handed |
Penalties Penalty Minutes Power Plays Puck Possessions |
Saves Shots on Target Shutouts Suspensions Minutes Suspensions Number |
Player Match Statistics Data Points: | Assists First Assists Goalie Minutes Played |
Penalties Penalty Minutes Plus Minus Points |
Saves Second Assists Shots on Target |
Q: What leagues do you cover, and at what level?
Coverage information can be found via our Coverage Matrix.
Q: What format are date fields presented in?
A: When we present date only values we present these in the ISO 8601 standard format.
ex: 2013-04-03
We use these for attributes that have date and no time (such as birthdate). For more information: https://en.wikipedia.org/wiki/ISO_8601
Q: What format are the date/time fields presented in?
A: All of our Date/Time attributes are in UTC, presented in the ISO 8601 standard format.
ex: 2013-04-03T18:15:00+00:00
For more information: https://en.wikipedia.org/wiki/ISO_8601
Q: How can I find the values for various enum data points within the API?
A: Many enum values are listed in the FAQ below. For the most up-to-date values, please see the Schema section of the OpenAPI specification here: https://api.sportradar.com/icehockey/trial/v2/openapi/swagger/index.html
Q: What are the valid sport event status (sport_event_status – status) values?
A: Here are the valid sport event status values and their definitions:
- not_started – The match is scheduled to be played
- live – The match is currently in progress
- postponed – The match has been postponed to a future date
- delayed – The match has been temporarily delayed and will be continued
- interrupted - The match began, but coverage has stopped for a short time. Note that match scores may not be updated during this period, the last recorded match score will be displayed instead
- cancelled – The match has been cancelled and will not be played
- ended – The match is over
- closed – The match results have been confirmed.
Q: What are the valid match status (sport_event_status – match_status) values?
A: Here are the valid sport event status values and their definitions:
- not_started – The match is scheduled to be played
- live – The match is currently in progress
- 1st_period – The match is in the first period
- 2nd_period – The match is in the second period
- 3rd_period – The match is in the third period
- overtime – The match is in overtime
- 1st_extra – The match is in the first extra period
- 2nd_extra – The match is in the second extra period
- 3rd_extra – The match is in the third extra period
- awaiting_penalties – Waiting for announcement of penalties
- penalties – Penalties are ongoing
- pause – The match is paused
- awaiting_extra_time – Waiting on referee to announce extra time
- interrupted – The match has been interrupted
- abandoned – The match has been abandoned
- postponed – The match has been postponed to a future date
- delayed – The match has been temporarily delayed and will be continued
- cancelled – The match has been cancelled and will not be played
- ended – The match is over
- aet – The match is after extra time
- ap – The match is in after penalties
Q: How do I access past seasons’ result and stats?
A: Use the Competition Seasons endpoint to locate the season_id for the season you want to access. Use that season_id to interrogate the various seasons endpoints.
Q: What are the valid outcomes for probabilities?
A: Here are the valid outcome probabilities:
- home_team_winner
- away_team_winner
Q: How do I find out the coverage for a particular match?
A: Within the Summaries, and Timeline feeds, find the node for “coverage”. Coverage nodes have two types: season level and sport_event level.
The season level describes data coverage you can expect for matches involved in that given season.
The sport_event level, this exists to describe the data depth of a specific match within the group and season.
Note: There are occasions when the sport_event coverage can vary from the anticipated season coverage and this node exists to highlight that in that event to assist in handling any discrepancies.
Q: Why do different groups have coverage information for a tournament?
A: The notion of “groups” is versatile and is used to distinguish between playoffs, and our competition structures and is therefore necessary to describe coverage at a group level for consistency. Generally, however, within a competition in Ice Hockey, there will be no difference between competition coverage between conferences.
Q: What are the possible event types logged?
A: Here are all of the possible event types we log:
- match_started
- period_started
- period_score
- score_change (goal_scorer, primary_assist, secondary_assist)
- suspension
- break_start
- match_ended
Q: What are markets and what are the different markets?
Markets are something you can bet on, for which we provide probabilities. Over time we intend to provide more and more markets in the API. Currently we provide 3-way (home win, away win, or draw) and Next Goal (which team will score the next goal) markets.
Q: What are the possible outcomes?
A: Different markets have different outcomes. The available markets are currently:
- home_team_winner
- away_team_winner
- draw
- none
Q: Why are the “shots_on_target” incorrect for Finland Liiga?
A: At this time, the league does not provide shots on target instead (for Finland Liiga only) we provide this data point as a total number of shots.
Q: What are the possible player positions in the feeds?
A: Here are the valid player - types:
- F - Forward
- D - Defenseman
- G – Goalie
- F-D – Forward/Defenseman
- LW – Left Wing
- RW – Right Wing
- C - Center
Q: How are group IDs delivered in the stage array with the various types?
A: With the type of "league" they will have a sr:league prefix. With the type of "cup" they will have a sr:cup prefix.
Q: How are “live” feeds handled in the API?
A: Sport Events appear in the feed 10 minutes before the scheduled start time and are removed 10 minutes after the Sport Event is ended.
Q: What is the probabilities package?
A: The probabilities package is an add-on set of feeds that are an extension of the Season Probabilities feed in the main package (which already provides pre-match probabilities for the sport event winner market). The main features of the Probabilities extension are: Live Probabilities that update throughout game, Season Outright Probabilities for the Tournament Winner market, and Live Probabilities Coverage indicator for the next 24 hours.
Q: Is there Live Probability coverage for every game you cover in the Global Ice Hockey API?
A: Live Probability coverage depends on a number of factors and we can’t guarantee that every game will be covered for any given league, however, Sportradar aims to cover close to 100% of games from the following Tier 1 league: National Hockey League (NHL) – USA
Q: Can I utilize the Probabilities extension if I license the Sportradar NHL API?
A: If you have a license for our NHL API you can also integrate Live Probabilities by utilizing the ID Mapping feeds available in Global Ice Hockey v2 to connect games between the two products.
Q: What are the possible standings types I can observe in the Standings feed?
A: Listed below are the values for standing – type.
- total
- home
- away
- first_half_total
- first_half_home
- first_half_away
- second_half_total
- second_half_home
- second_half_away
Q: Why can't I find a particular match in the Daily Summaries, Season Summaries or Sport Events Updated feeds?
A: These endpoints support pagination and return 200 entries by default. To return more matches, an additional query string parameter must be used after your API key. For example, appending &start=200 will return the next 200 entries per page, &start=400 will return the next 200, and so on.
Q: How will a sport event behave when it is not covered with live scores?
A: When a sport_event is not covered live, the status and match_status will remain as not_started until results are entered post-match.
Q: What are the possible values for break_name in the feeds?
A: Here are the valid break names:
- 1st_pause
- 2nd_pause
- awaiting_extra
- awaiting_penalties
Q: What are the possible values for player type in the feeds?
A: Here are the valid player type values:
- scorer
- assist
- secondary_assist
Q: How do I locate the TTL (Time to Live)/cache on an API endpoint?
A: The cache (in seconds) can be accessed in the returned header information on each RESTful API call, under cache-control
.
ex. cache-control: max-age=1, public, s-maxage=1
or
cache-control: public, must-revalidate, max-age=120
Q: What are the possible values for cup_round
– state
in the Season Links feed?
A: Listed below are the values and definitions for cup_round
- state
. These can be leveraged to determine the status of a cup round.
empty
- A matchup has been created but neither the match details nor the competitors are known.unseeded_fixture
- Match details are known but competitors are unknown.partial_seeded
- One competitor is known.partial_seeded_fixture
- Match details and one competitor are known.seeded
- Both competitors are known.seeded_fixture
- Match details and both competitors are known.unstarted
- Match(es) have been added.on_going
- The first match has started.decided
- The last match has ended.winner
- The winner is known.cancelled
– The matchup has been cancelled.
Docs Navigation
- Documentation
- Football (American Football)
- Football (Soccer)
- Australian Rules Football
- Baseball
- Basketball
- NBA v8
- NBA v7
- NBA v5
- NBA v4
- WNBA v8
- WNBA v7
- WNBA v4
- WNBA v3
- NBA G League v8
- NBA G League v7
- NBA G League v5
- NCAA Men's Basketball v8
- NCAA Men's Basketball v7
- NCAA Men's Basketball v4
- NCAA Men's Basketball v3
- NCAA Women's Basketball v8
- NCAA Women's Basketball v7
- NCAA Women's Basketball v3
- Global Basketball v2
- Global Basketball v1
- NBA Historical v1
- Combat Sports
- Cricket
- Editorial Content
- Golf
- Handball
- Hockey
- Images
- Insights
- Insights User Interface
- NBA Insights v1
- NHL Insights v1
- MLB Insights v1
- NFL Insights v1
- MLB Betting Splits v2
- MLB Betting Splits v1
- NBA Betting Splits v2
- NBA Betting Splits v1
- NCAAFB Betting Splits v2
- NCAAFB Betting Splits v1
- NCAAMB Betting Splits v2
- NCAAMB Betting Splits v1
- NFL Betting Splits v2
- NFL Betting Splits v1
- NHL Betting Splits v2
- NHL Betting Splits v1
- Soccer Betting Splits v2
- Soccer Betting Splits v1
- Odds
- Broadcast Graphics
- Racing
- Rugby
- Tennis
- Widgets
- Baseline Sports Coverage
- Badminton v2
- Badminton v1
- Bandy v2
- Bandy v1
- Beach Soccer v2
- Beach Soccer v1
- Curling v2
- Curling v1
- Cycling v2
- Darts v2
- Darts v1
- Field Hockey v2
- Field Hockey v1
- Floorball v2
- Floorball v1
- Futsal v2
- Futsal v1
- Pesapallo v2
- Pesapallo v1
- Snooker v2
- Snooker v1
- Squash v2
- Squash v1
- Table Tennis v2
- Volleyball (Beach) v2
- Volleyball (Beach) v1
- Volleyball (Indoor) v2
- Volleyball (Indoor) v1
- Waterpolo v2
- Waterpolo v1
- Winter Sports v1