Bandy v2

Frequently Asked Questions
Quick Access
Postman Collection XSD Schema
Download
API API Version
Bandy v2
Note: Authentication is required for all API calls.
## Bandy API Overview The Bandy API provides schedules and results for top leagues. Data is collected via Sportradar operators and is available post-match. The API is consistent in structure, format and behavior with other General Sport APIs. Primary feeds will return competitions, seasons, schedules, and results. Additional feeds provide complementary stats, including:
  • Competitor profiles
  • Match win probabilities
  • Historical results
  • Head-to-head statistics
## Bandy v2 API Map To best utilize the Bandy API, you will need several parameters to create your API calls. The map below illustrates how you can obtain the parameters you need. >

Example:

>To find the probability of a home team win for a given match: >
  1. Call the Daily Summaries feed for the day the match takes place and find the Season Id for the chosen match
  2. Make note of the Sport Event Id for the given match
  3. Call the Season Probabilities endpoint using the Season Id
  4. Find Sport Event Id and within the results locate the home team and the outcome probability
>The probability of a home team win is displayed. The primary feeds require only a date or human-readable parameters to call the endpoints. Those feeds provide Sport Event Ids, Competitor Ids, or Season Ids which can be used to generate the season, sport event, and competitor feeds. ## Competition Info Provides the name, id, and gender for a given competition.
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 Competition Parent Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/competitions/sr:competition:647/info.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/competitions/sr:competition:647/info.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/competitions/sr:competition:647/info.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Competition Info feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/competitions/`{competition_id}`/info.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `competition_id` | Id of a given competition. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Competition Seasons Provides historical season information for a given competition. Competitions will return a maximum of three seasons of data, including current or newly created seasons.
TTL / Cache: 300 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Competition Info Data Points: Season Competition Id
Season Disabled
Season End Date
Season Id
Season Name
Season Start Date
Season Year
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/competitions/sr:competition:444/seasons.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/competitions/sr:competition:444/seasons.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/competitions/sr:competition:444/seasons.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Competition Seasons feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/competitions/`{competition_id}`/seasons.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `competition_id` | Id of a given competition. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Competitions Provides a list of all available competitions.
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 Competition Parent Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/competitions.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/competitions.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/competitions.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Competitions feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/competitions.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `format` | xml or json. | | `your_api_key` | Your API key. | 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
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/competitors/merge_mappings.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.com") conn.request("GET", "/bandy/trial/v2/en/competitors/merge_mappings.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/competitors/merge_mappings.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Competitor Merge Mappings feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/competitors/merge_mappings.`{format}`?api_key=`{your_api_key}` | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Competitor Profile Provides top-level information for a given team.
TTL / Cache: 300 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Competitor Virtual
Venue Info Data Points: Capacity
City Name
Country Code
Country Name
Id
Map Coordinates
Name
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/competitors/sr:competitor:90974/profile.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/competitors/sr:competitor:90974/profile.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/competitors/sr:competitor:90974/profile.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Competitor Profile feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/competitors/`{competitor_id}`/profile.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `competitor_id` | Id of a given competitor. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Competitor Summaries Provides previous and upcoming match information for a given competitor, including results for past matches and scheduling info for upcoming matches.
TTL / Cache: 300 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group - Group Name
Group Id
Group Name
Round - Cup Round Id
Round - Cup Round Number of Sport Events
Round - Cup Round Sport Event Number
Round Name
Round Number
Round - Other Sport Event Id
Season Competition Id
Season Disabled
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
Competitor Qualifier
Competitor Virtual
Match Info Data Points: Period Number
Period Score - Away Score
Period Score - Home Score
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 Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status - Scout Abandoned
Winner Id
Venue Info Data Points: Capacity
City Name
Country Code
Country Name
Id
Map Coordinates
Name
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/competitors/sr:competitor:90974/summaries.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/competitors/sr:competitor:90974/summaries.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/competitors/sr:competitor:90974/summaries.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Competitor Summaries feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/competitors/`{competitor_id}`/summaries.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `competitor_id` | ID for a given competitor. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Competitor vs Competitor Provides previous and upcoming matches between two competitors, including scoring information.
TTL / Cache: 60 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group - Group Name
Group Id
Group Name
Round - Cup Round Id
Round - Cup Round Number of Sport Events
Round - Cup Round Sport Event Number
Round Name
Round Number
Round - Other Sport Event Id
Season Competition Id
Season Disabled
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
Competitor Qualifier
Competitor Virtual
Match Info Data Points: Period Number
Period Score - Away Score
Period Score - Home Score
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 Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status - Scout Abandoned
Winner Id
Venue Info Data Points: Capacity
City Name
Country Code
Country Name
Id
Map Coordinates
Name
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/competitors/sr:competitor:90974/versus/sr:competitor:8052/summaries.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/competitors/sr:competitor:90974/versus/sr:competitor:8052/summaries.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/competitors/sr:competitor:90974/versus/sr:competitor:8052/summaries.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Competitor vs Competitor feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/competitors/`{competitor_id}`/versus/`{competitor2_id}`/summaries.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `competitor_id` | ID for a given competitor. | | `competitor2_id` | ID for a given competitor. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Daily Summaries Provides game schedules for a given day, including scoring information.
TTL / Cache: 300 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group - Group Name
Group Id
Group Name
Round - Cup Round Id
Round - Cup Round Number of Sport Events
Round - Cup Round Sport Event Number
Round Name
Round Number
Round - Other Sport Event Id
Season Competition Id
Season Disabled
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
Competitor Qualifier
Competitor Virtual
Match Info Data Points: Period Number
Period Score - Away Score
Period Score - Home Score
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 Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status - Scout Abandoned
Winner Id
Venue Info Data Points: Capacity
City Name
Country Code
Country Name
Id
Map Coordinates
Name
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/schedules/2022-02-05/summaries.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/schedules/2022-02-05/summaries.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/schedules/2022-02-05/summaries.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Daily Summaries feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/schedules/`{year}`-`{month}`-`{day}`/summaries.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `year` | Year in 4 digit format (YYYY). | | `month` | Month in 2 digit format (MM). | | `day` | Day in 2 digit format (DD). | | `format` | xml or json. | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters:
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.com/bandy/trial/v2/en/schedules/2022-02-05/summaries.xml?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 http.client

conn = http.client.HTTPSConnection("api.sportradar.com")

conn.request("GET", "/bandy/trial/v2/en/schedules/2022-02-05/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.com/bandy/trial/v2/en/schedules/2022-02-05/summaries.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.
Note: Optional query string parameters must be added after your API key with an ampersand (&).
Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `start` | Number to start the list of results from.
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 ## Live Summaries Provides game information for all currently live games, including team scoring. This feed updates in real time as matches are played.
TTL / Cache: 1 second
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group - Group Name
Group Id
Group Name
Round - Cup Round Id
Round - Cup Round Number of Sport Events
Round - Cup Round Sport Event Number
Round Name
Round Number
Round - Other Sport Event Id
Season Competition Id
Season Disabled
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
Competitor Qualifier
Competitor Virtual
Match Info Data Points: Period Number
Period Away Score
Period Home Score
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 Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status - Scout Abandoned
Winner Id
Venue Info Data Points: Capacity
City Name
Country Code
Country Name
Id
Map Coordinates
Name
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/schedules/live/summaries.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/schedules/live/summaries.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/schedules/live/summaries.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Live Summaries feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/competitors/`{competitor_id}`/summaries.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `competitor_id` | ID for a given competitor. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Live Timelines Provides an event timeline for currently live games.
TTL / Cache: 1 second
Update Frequency: As Necessary
Content Type: XML or JSON
Match Info Data Points: Period Away Score
Period Home Score
Period Number
Period Type
Sport Event Status
Sport Event Status Away Score
Sport Event Status Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status Scout Abandoned
Sport Event Timeline Id
Sport Event Timeline Start Time
Winner Id
Timeline Info Data Points: Away Score
Break Name
Competitor
Home Score
Id
Period
Period Name
Time
Type
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/schedules/live/timelines.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/schedules/live/timelines.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/schedules/live/timelines.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Live Timelines feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/schedules/live/timelines.`{format}`?api_key=`{your_api_key}` | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Live Timelines Delta Provides a 10 second live delta of game information, including scoring and an event timeline.
TTL / Cache: 1 second
Update Frequency: As Necessary
Content Type: XML or JSON
Match Info Data Points: Period Away Score
Period Home Score
Period Number
Period Type
Sport Event Status
Sport Event Status Away Score
Sport Event Status Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status Scout Abandoned
Sport Event Timeline Delta Id
Sport Event Timeline Delta Start Time
Winner Id
Timeline Info Data Points: Away Score
Break Name
Competitor
Home Score
Id
Period
Period Name
Time
Type
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/schedules/live/timelines_delta.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/schedules/live/timelines_delta.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/schedules/live/timelines_delta.xml?api_key={your_api_key}" ``` Access the Live Timelines Delta feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/schedules/live/timelines_delta.`{format}`?api_key=`{your_api_key}` | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Season Competitors Provides a list of competitors participating for a given season.
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
Competitor Virtual
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88447/competitors.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/seasons/sr:season:88447/competitors.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88447/competitors.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Season Competitors feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/seasons/`{season_id}`/competitors.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `season_id` | ID of a given season. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Season Info Provides detailed information for a given season, including participating competitors and league structure.
TTL / Cache: 300 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group Group Name
Group Id
Group Max Rounds
Group Name
Season Competition Id
Season Disabled
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
Competitor Virtual
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88447/info.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/seasons/sr:season:88447/info.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88447/info.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Season Info feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/seasons/`{season_id}`/info.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `season_id` | ID of a given season. | | `format` | xml or json. | | `your_api_key` | Your API key. | 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
Group Live
Stage End Date
Stage Phase
Stage Start Date
Stage Type
Stage Year
Sport Event Info Data Points: Sport Event Id Sport Event Start Time Sport Event Start Time Confirmed
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:62797/stages_groups_cup_rounds.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/seasons/sr:season:62797/stages_groups_cup_rounds.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:62797/stages_groups_cup_rounds.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Season Links feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/seasons/`{season_id}`/stages_groups_cup_rounds.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `season_id` | ID of a given season. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Season Probabilities Provides 3-way match win probabilities (home team win, away team win, draw) for all matches for a given season.
TTL / Cache: 60 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group - Group Name
Group Id
Group Name
Round - Cup Round Id
Round - Cup Round Number of Sport Events
Round - Cup Round Sport Event Number
Round Name
Round Number
Round - Other Sport Event Id
Season Competition Id
Season Disabled
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 Gender
Competitor Id
Competitor Name
Competitor Qualifier
Competitor Virtual
Probability Info Data Points: Market Name Outcome Name Outcome Probability
Match Info Data Points: Sport Event Id
Sport Event Replaced By
Start Time Start Time Confirmed
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88447/probabilities.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/seasons/sr:season:88447/probabilities.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88447/probabilities.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Season Probabilities feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/seasons/`{season_id}`/probabilities.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `season_id` | Id of a given season. | | `format` | xml or json. | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters:
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88447/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", "/bandy/trial/v2/en/seasons/sr:season:88447/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/bandy/trial/v2/en/seasons/sr:season:88447/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 (&).
Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `start` | Number to start the list of results from.
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: 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
Competitor Virtual
Standings Info Data Points: Change
Current Outcome
Draws
Goals Against
Goal Differential
Goals For
Group - Group Name
Group Id
Group Live
Group Name
Losses
Matches Played
Points
Rank
Round
Tie Break Rule
Type
Wins
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:62797/standings.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/seasons/sr:season:62797/standings.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:62797/standings.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Season Standings feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/seasons/`{season_id}`/standings.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `season_id` | ID of a given season. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Season Summaries Provides schedule information and results for all matches from a given season.
TTL / Cache: 300 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group - Group Name
Group Id
Group Name
Round - Cup Round Id
Round - Cup Round Number of Sport Events
Round - Cup Round Sport Event Number
Round Name
Round Number
Round - Other Sport Event Id
Season Competition Id
Season Disabled
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
Competitor Qualifier
Competitor Virtual
Match Info Data Points: Period Number
Period Score - Away Score
Period Score - Home Score
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 Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status - Scout Abandoned
Winner Id
Venue Info Data Points: Capacity
City Name
Country Code
Country Name
Id
Map Coordinates
Name
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88599/summaries.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/seasons/sr:season:88599/summaries.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/seasons/sr:season:88599/summaries.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Season Summaries feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/seasons/`{season_id}`/summaries.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `season_id` | ID of a given season. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Seasons Provides a list of historical season information for all competitions. Competitions will return a maximum of three seasons of data, including current or newly created seasons.
TTL / Cache: 300 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Competition Info Data Points: Season Competition Id
Season Disabled
Season End Date
Season Id
Season Name
Season Start Date
Season Year
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/seasons.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/seasons.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/seasons.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Seasons feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/seasons.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Sport Event Summary Provides scoring for a given match. Please note that data returned is determined by coverage level.
TTL / Cache: 1 second
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group - Group Name
Group Id
Group Name
Round - Cup Round Id
Round - Cup Round Number of Sport Events
Round - Cup Round Sport Event Number
Round Name
Round Number
Round - Other Sport Event Id
Season Competition Id
Season Disabled
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
Competitor Qualifier
Competitor Virtual
Match Info Data Points: Period Number
Period Score - Away Score
Period Score - Home Score
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 Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status - Scout Abandoned
Winner Id
Venue Info Data Points: Capacity
City Name
Country Code
Country Name
Id
Map Coordinates
Name
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/sport_events/sr:match:24408878/summary.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/sport_events/sr:match:24408878/summary.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/sport_events/sr:match:24408878/summary.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Sport Event Summary feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/sport_events/`{match_id}`/summary.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `match_id` | ID of a given match. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Sport Event Timeline Provides scoring and an event timeline for a given game. Please note that data returned is determined by coverage level.
TTL / Cache: 1 second
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category 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
Group - Group Name
Group Id
Group Name
Round - Cup Round Id
Round - Cup Round Number of Sport Events
Round - Cup Round Sport Event Number
Round Name
Round Number
Round - Other Sport Event Id
Season Competition Id
Season Disabled
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
Competitor Qualifier
Competitor Virtual
Match Info Data Points: Period Number
Period Score - Away Score
Period Score - Home Score
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 Home Score
Sport Event Status - Match Status
Sport Event Status - Match Tie
Sport Event Status - Scout Abandoned
Winner Id
Timeline Info Data Points: Away Score
Break Name
Competitor
Home Score
Id
Period
Period Name
Time
Type
Venue Info Data Points: Capacity
City Name
Country Code
Country Name
Id
Map Coordinates
Name
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/bandy/trial/v2/en/sport_events/sr:sport_event:31605495/timeline.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/sport_events/sr:sport_event:31605495/timeline.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.us/bandy/trial/v2/en/sport_events/sr:sport_event:31605495/timeline.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Sport Event Timeline feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/sport_events/`{sport_event_id}`/timeline.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `sport_event_id` | ID of a given sport event. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Sport Events Created Provides ids for sport events that have been created in the last 24 hours.
TTL / Cache: 60 seconds
Update Frequency: As Necessary
Content Type: XML or JSON
Sport Event Info Data Points: Active Season Flag Id Created At
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/sport_events/created.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/sport_events/created.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/sport_events/created.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Sport Events Created feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/sport_events/created.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `format` | xml or json. | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters:
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.com/bandy/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.com")

conn.request("GET", "/bandy/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.com/bandy/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 (&).
Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `start` | Number to start the list of results from.
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to API map ## 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
Sport Event Info Data Points: Sport Event Removed Id Sport Event Removed - Replaced By
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/sport_events/removed.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/sport_events/removed.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/sport_events/removed.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Sport Events Removed feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/sport_events/removed.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `format` | xml or json. | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters:
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.com/bandy/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.com")

conn.request("GET", "/bandy/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.com/bandy/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 (&).
Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `start` | Number to start the list of results from.
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to API map ## 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
Sport Event Info Data Points: Sport Event Updated Id Sport Event Updated - Updated At
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/bandy/trial/v2/en/sport_events/updated.xml?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 http.client conn = http.client.HTTPSConnection("api.sportradar.us") conn.request("GET", "/bandy/trial/v2/en/sport_events/updated.xml?api_key={your_api_key}") res = conn.getresponse() data = res.read() print(data.decode("utf-8")) ``` ```shell curl -X GET "https://api.sportradar.com/bandy/trial/v2/en/sport_events/updated.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Sport Events Updated feed by replacing the parameters in the following URL: https://api.sportradar.com/bandy/`{access_level}`/`{version}`/`{language_code}`/sport_events/updated.`{format}`?api_key=`{your_api_key}` Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `access_level` | Defines the access level of your API key as Production (production) or Trial (trial). | | `version` | Version number of the API you are accessing (Current Version: v2). | | `language_code` | 2 letter code for supported languages

English (en) is the only fully supported language for this API. | | `format` | xml or json. | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters:
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.com/bandy/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.com")

conn.request("GET", "/bandy/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.com/bandy/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 (&).
Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `start` | Number to start the list of results from.
Example: start=0 | | `limit` | Number to limit the number of results. Minimum value is 1, maximum value is 1000.
Example: limit=75 | Return to API map ## Frequently Asked Questions

Q: What leagues do you cover, and at what level?

Coverage information can be found via our Coverage Matrix.

Q: What is the Date format?

A: We present date only values 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 time zone 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/bandy/trial/v2/openapi/swagger/index.html

Q: What are the valid sport_event_status – status values?

A: Here are the valid match status values and their definitions:

  • not_started – The match is scheduled to be played
  • started – The match has begun
  • postponed – The match has been postponed to a future date
  • suspended – The match has been suspended
  • cancelled – The match has been cancelled and will not be played
  • delayed – The match has been temporarily delayed and will be continued
  • live – The match is currently in progress
  • 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
  • ended – The match is over
  • closed – The match results have been confirmed

Q: What are the valid sport_event_status – match_status values?

A: Here are the valid match_status values:

  • not_started
  • 1st_period
  • 2nd_period
  • aet
  • ended
  • postponed
  • cancelled
  • started

Q: How do I access past results 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
  • draw

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: Why can't I find a particular match in the Daily 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 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_roundstate 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.
Return to top

Docs Navigation