Curling v2

Frequently Asked Questions
Quick Access
Postman Collection XSD Schema
Download
API API Version
Curling v2
Note: Authentication is required for all API calls.
## Curling API Overview The Curling API provides schedules and results for top curling competitions. 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 complimentary stats, including:
  • Competitor profiles
  • Match win probabilities
  • Season standings
  • Historical results
  • Head-to-head statistics
## Curling v2 API Map To best utilize the Curling 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.
Update Frequency: As Necessary
Content Type: XML or JSON
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/curling/trial/v2/en/competitions/sr:competition:613/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", "/curling/trial/v2/en/competitions/sr:competition:613/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/curling/trial/v2/en/competitions/sr:competition:613/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/curling/`{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` | Supported Locales | | `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.
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/curling/trial/v2/en/competitions/sr:competition:613/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", "/curling/trial/v2/en/competitions/sr:competition:613/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/curling/trial/v2/en/competitions/sr:competition:613/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/curling/`{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` | Supported Locales | | `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.
Update Frequency: As Necessary
Content Type: XML or JSON
Category & Sport Info: 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/curling/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", "/curling/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/curling/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/curling/`{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` | Supported Locales | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Competitor Profile Provides top-level information for a given team, including a team roster.
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category Info Data Points: Category Id
Category Name
Sport Id Sport Name
Competitor Info Data Points: Competitor Abbreviation
Competitor Country
Competitor Country Code
Competitor Id
Competitor Name
Competitor Virtual
Player Info Data Points: Country Code
Date of Birth
Gender
Height
Id
Jersey Number
Name
Nationality
Weight
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/curling/trial/v2/en/competitors/sr:competitor:5704/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", "/curling/trial/v2/en/competitors/sr:competitor:5704/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/curling/trial/v2/en/competitors/sr:competitor:5704/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/curling/`{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` | Supported Locales | | `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.
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category Info Data Points: 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 Name
Round Number
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 Country
Competitor Country Code
Competitor Id
Competitor Name
Competitor Qualifier
Competitor Virtual
Match Info Data Points: 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 - Scout Abandoned
Winner Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/curling/trial/v2/en/competitors/sr:competitor:5704/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", "/curling/trial/v2/en/competitors/sr:competitor:5704/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/curling/trial/v2/en/competitors/sr:competitor:5704/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/curling/`{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` | Supported Locales | | `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.
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category Info Data Points: 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 Name
Round Number
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 Country
Competitor Country Code
Competitor Id
Competitor Name
Competitor Qualifier
Competitor Virtual
Match Info Data Points: 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 - Scout Abandoned
Winner Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/curling/trial/v2/en/competitors/sr:competitor:5704/versus/sr:competitor:5702/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", "/curling/trial/v2/en/competitors/sr:competitor:5704/versus/sr:competitor:5702/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/curling/trial/v2/en/competitors/sr:competitor:5704/versus/sr:competitor:5702/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/curling/`{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` | Supported Locales | | `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.
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category Info Data Points: 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 Name
Round Number
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 Country
Competitor Country Code
Competitor Id
Competitor Name
Competitor Qualifier
Competitor Virtual
Match Info Data Points: 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 - Scout Abandoned
Winner Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/curling/trial/v2/en/schedules/2022-02-15/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", "/curling/trial/v2/en/schedules/2022-02-15/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/curling/trial/v2/en/schedules/2022-02-15/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/curling/`{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` | Supported Locales | | `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. | ## Season Competitors Provides a list of competitors participating for a given season.
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/curling/trial/v2/en/seasons/sr:season:88617/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", "/curling/trial/v2/en/seasons/sr:season:88617/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/curling/trial/v2/en/seasons/sr:season:88617/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/curling/`{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` | Supported Locales | | `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.
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category Info Data Points: 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 Country
Competitor Country Code
Competitor Id
Competitor Name
Competitor Virtual
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/curling/trial/v2/en/seasons/sr:season:88617/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", "/curling/trial/v2/en/seasons/sr:season:88617/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/curling/trial/v2/en/seasons/sr:season:88617/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/curling/`{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` | Supported Locales | | `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. This feed can be used to compile advancement brackets for relevant seasons.
Update Frequency: As Necessary
Content Type: XML or JSON
Competition Info Data Points: Cup Round Id
Cup Round Name
Cup Round Type
Group - Group Name
Group Id
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/curling/trial/v2/en/seasons/sr:season:88617/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", "/curling/trial/v2/en/seasons/sr:season:88617/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/curling/trial/v2/en/seasons/sr:season:88617/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/curling/`{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` | Supported Locales | | `season_id` | ID of a given season. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Season Probabilities Provides 2-way match win probabilities (home team win, away team win) for all matches for a given season.
Update Frequency: As Necessary
Content Type: XML or JSON
Sport & Category Info Data Points: 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 Name
Round Number
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 Country
Competitor Country Code
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/curling/trial/v2/en/seasons/sr:season:88617/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", "/curling/trial/v2/en/seasons/sr:season:88617/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/curling/trial/v2/en/seasons/sr:season:88617/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/curling/`{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` | Supported Locales | | `season_id` | Id of a given season. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Season Standings Provides detailed standings info for a given season.
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 Country
Competitor Country Code
Competitor Id
Competitor Name
Competitor Virtual
Standings Info Data Points: Change
Current Outcome
Draws
Goal Differential
Goals Against
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/curling/trial/v2/en/seasons/sr:season:88617/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", "/curling/trial/v2/en/seasons/sr:season:88617/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/curling/trial/v2/en/seasons/sr:season:88617/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/curling/`{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` | Supported Locales | | `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.
Update Frequency: Post-match
Content Type: XML or JSON
Sport & Category Info Data Points: 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 Name
Round Number
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 Country
Competitor Country Code
Competitor Id
Competitor Name
Competitor Qualifier
Competitor Virtual
Match Info Data Points: 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 - Scout Abandoned
Winner Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/curling/trial/v2/en/seasons/sr:season:88617/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", "/curling/trial/v2/en/seasons/sr:season:88617/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/curling/trial/v2/en/seasons/sr:season:88617/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/curling/`{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` | Supported Locales | | `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 available historical season information for all supported competitions in the API.
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/curling/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", "/curling/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/curling/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/curling/`{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` | Supported Locales | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Sport Event Summary Provides scheduling info and scoring for a given match.
Update Frequency: Post-match
Content Type: XML or JSON
Sport & Category Info Data Points: 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 Name
Round Number
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 Country
Competitor Country Code
Competitor Id
Competitor Name
Competitor Qualifier
Competitor Virtual
Match Info Data Points: 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 - Scout Abandoned
Winner Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.com/curling/trial/v2/en/sport_events/sr:match:30260453/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", "/curling/trial/v2/en/sport_events/sr:match:30260453/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/curling/trial/v2/en/sport_events/sr:match:30260453/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/curling/`{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` | Supported Locales | | `match_id` | ID of a given match. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Sport Events Removed Provides ids for sport events that have been removed or deleted.
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/curling/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", "/curling/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/curling/trial/v2/en/sport_events/removed.xml?api_key={your_api_key}" ``` Access the Sport Events Removed feed by replacing the parameters in the following URL: https://api.sportradar.com/curling/`{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` | Supported Locales | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Sport Events Updated Provides ids for sport events that have been updated in the last 24 hours.
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/curling/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", "/curling/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/curling/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/curling/`{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` | Supported Locales | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Frequently Asked Questions

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/curling/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
Return to top

Docs Navigation