Classic NASCAR v3

Frequently Asked Questions
API API Version Data Entry Workflow
Classic NASCAR v3 Data Entry Workflow
Note: Authentication is required for all API calls.
## Daily Change Log ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/2014/02/23/changes.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", "/nascar-t3/2014/02/23/changes.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/nascar-t3/2014/02/23/changes.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. This endpoint retrieves the Daily Change Log. https://api.sportradar.us/nascar-`{access_level}{version}`/`{year}`/`{month}`/`{day}`/changes.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | 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. | To retrieve the XML Schema Definition (.XSD) for the Daily Change Log, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/changelog-v2.0.xsd?api_key=`{your_api_key}` ## Drivers ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/sc/2014/drivers/list.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", "/nascar-t3/sc/2014/drivers/list.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/nascar-t3/sc/2014/drivers/list.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. This endpoint retrieves the Drivers. https://api.sportradar.us/nascar-`{access_level}{version}`/`{nascar_series}`/`{year}`/drivers/list.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | nascar_series | Sprint Cup (sc), Camping World (cw), Gander Outdoors (go), Xfinity (xf), Monster Energy Cup (mc) or Nationwide (nw). Note that Nationwide is only used for seasons before Xfinity was a sponser. | | year | Year in 4 digit format (YYYY). | | format | xml or json. | | your_api_key | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Drivers list, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/series-v2.0.xsd?api_key=`{your_api_key}` ## Driver, Rookie, Owner, and Manufacturer Standings ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/sc/2014/standings/driver.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", "/nascar-t3/sc/2014/standings/driver.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/nascar-t3/sc/2014/standings/driver.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this for drivers, rookie, owner, or manufacturer. This endpoint retrieves the Driver, Rookie, Owner, and Manufacturer Standings. https://api.sportradar.us/nascar-`{access_level}{version}`/`{nascar_series}`/`{year}`/standings/`{standings_type}`.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | nascar_series | Sprint Cup (sc), Camping World (cw), Gander Outdoors (go), Xfinity (xf), Monster Energy Cup (mc) or Nationwide (nw). Note that Nationwide is only used for seasons before Xfinity was a sponser. | | year | Year in 4 digit format (YYYY). | | standings_type | Type of standing: driver, rookie, owner, or manufacturer. | | format | xml or json. | | your_api_key | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Driver, Rookie, Owner, and Manufacturer Standings, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/standings-v2.0.xsd?api_key=`{your_api_key}` ## Entry List ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/entry_list.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", "/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/entry_list.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/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/entry_list.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. This endpoint retrieves the Entry List. https://api.sportradar.us/nascar-`{access_level}{version}`/`{nascar_series}`/races/`{race_id}`/entry_list.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | nascar_series | Sprint Cup (sc), Camping World (cw), Gander Outdoors (go), Xfinity (xf), Monster Energy Cup (mc) or Nationwide (nw). Note that Nationwide is only used for seasons before Xfinity was a sponser. | | race_id | ID for the given race. | | format | xml or json. | | your_api_key | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Entry List, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/race-v2.0.xsd?api_key=`{your_api_key}` ## Qualifying Leaderboard ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/qualifying.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", "/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/qualifying.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/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/qualifying.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. This endpoint retrieves the Qualifying Leaderboard. https://api.sportradar.us/nascar-`{access_level}{version}`/`{nascar_series}`/races/`{race_id}`/qualifying.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | nascar_series | Sprint Cup (sc), Camping World (cw), Gander Outdoors (go), Xfinity (xf), Monster Energy Cup (mc) or Nationwide (nw). Note that Nationwide is only used for seasons before Xfinity was a sponser. | | race_id | ID for the given race. | | format | xml or json. | | your_api_key | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Qualifying Leaderboard, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/race-v2.0.xsd?api_key=`{your_api_key}` ## Race Leaderboard ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/results.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", "/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/results.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/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/results.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. This endpoint retrieves the Race Leaderboard. https://api.sportradar.us/nascar-`{access_level}{version}`/`{nascar_series}`/races/`{race_id}`/results.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | nascar_series | Sprint Cup (sc), Camping World (cw), Gander Outdoors (go), Xfinity (xf), Monster Energy Cup (mc) or Nationwide (nw). Note that Nationwide is only used for seasons before Xfinity was a sponser. | | race_id | ID for the given race. | | format | xml or json. | | your_api_key | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Race Leaderboard, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/race-v2.0.xsd?api_key=`{your_api_key}` ## Schedule ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/sc/2014/races/schedule.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", "/nascar-t3/sc/2014/races/schedule.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/nascar-t3/sc/2014/races/schedule.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. This endpoint retrieves the Schedule. https://api.sportradar.us/nascar-`{access_level}{version}`/`{nascar_series}`/`{year}`/races/schedule.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | nascar_series | Sprint Cup (sc), Camping World (cw), Gander Outdoors (go), Xfinity (xf), Monster Energy Cup (mc) or Nationwide (nw). Note that Nationwide is only used for seasons before Xfinity was a sponser. | | year | Year in 4 digit format (YYYY). | | format | xml or json. | | your_api_key | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Schedule, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/schedule-v2.0.xsd?api_key=`{your_api_key}` ## Starting Grid ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/starting_grid.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", "/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/starting_grid.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/nascar-t3/sc/races/fef6db6c-a8e2-4f15-af8e-587d850824b3/starting_grid.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. This endpoint retrieves the Starting Grid. https://api.sportradar.us/nascar-`{access_level}{version}`/`{nascar_series}`/races/`{race_id}`/starting_grid.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | nascar_series | Sprint Cup (sc), Camping World (cw), Gander Outdoors (go), Xfinity (xf), Monster Energy Cup (mc) or Nationwide (nw). Note that Nationwide is only used for seasons before Xfinity was a sponser. | | race_id | ID for the given race. | | format | xml or json. | | your_api_key | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Starting Grid, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/race-v2.0.xsd?api_key=`{your_api_key}` ## Tracks ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nascar-t3/tracks/list.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", "/nascar-t3/tracks/list.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/nascar-t3/tracks/list.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. This endpoint retrieves the Tracks. https://api.sportradar.us/nascar-`{access_level}{version}`/tracks/list.`{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 (p) or Trial (t). | | version | Version number of the API you are accessing (Current Version: 3). | | format | xml or json. | | your_api_key | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Tracks list, replace the parameters in the following URL. https://api.sportradar.us/nascar-`{access_level}{version}`/schema/track-v2.0.xsd?api_key=`{your_api_key}` ## Frequently Asked Questions

Q: What format are date fields presented in?

A: When we present date only values we present these in the ISO 8601 standard format.
ex: 2013-04-03
We use these for attributes that have date and no time (such as birthdate). For more information: https://en.wikipedia.org/wiki/ISO_8601

Q: What format are the date/time fields presented in?

A: All of our Date/Time attributes are in UTC, presented in the ISO 8601 standard format.
ex: 2013-04-03T18:15:00+00:00
For more information: https://en.wikipedia.org/wiki/ISO_8601

Q: What are the race statuses I can expect to see in the feeds and what are their definitions?

A: Here are the race statuses and their descriptions:

  • scheduled – The race is scheduled to occur.
  • initialized – We are ready to begin recording actions against the scheduled race.
  • practice – We are currently in the practice round.
  • qualifying – We are currently in the qualifying round.
  • prerace – The qualifying round is over, the main race has not begun.
  • inprogress – The race is in progress.
  • complete – The race is over, we are in the process of validating the race statistics.
  • closed – The race is over and the statistics have been validated.
  • delayed – The race has been delayed.
  • canceled – The race has been canceled.
  • rescheduled – The race has been rescheduled.
  • maintenance – The closed race has been reopened to correct one or more statistics.
  • warmup – The scheduled race is set to take place and will begin soon.

Q: What are the race conditions I can expect to see in the feeds and their definitions?

A: Here are the race conditions and their descriptions:

  • normal – The race is under normal racing conditions.
  • accident_caution – The race is under caution due to an accident.
  • conditions_caution – The race is under caution due to track conditions.
  • weather_caution – The race is under caution due to weather conditions.
  • accident_suspended – The race has been suspended due to an accident.
  • conditions_suspended – The race has been suspended due to track conditions.
  • weather_suspended – The race has been suspended due to weather conditions
  • accident_shortened – The race has been shortened due to an accident.
  • conditions_shortened – The race has been shortened due to track conditions.
  • weather_shortened –The race has been shortened due to weather conditions.
  • pitstops – The race is in progress, but all cars are in the pits.

Q: What are the possible driver statuses for the practice, qualifying, and race session that I can expect and what are their definitions?

A: We have 2 different sets of driver statuses: statuses that are used during the session and statuses used post session.

Here are the live race driver statuses and their descriptions:

  • ontrack – The driver is currently active in the session.
  • garage – The driver is currently in the garage.
  • accident – The driver is currently off the track, or ended his/her session due to an accident.

Here are the post race driver statuses and their descriptions:

  • garage – The driver ended the session in the garage for an unknown reason.
  • running – The driver ended the session running.
  • engine – The driver ended the session due to engine issues.
  • vibration – The driver ended the session due to vibration issues.
  • brakes – The driver ended the session due to a brake issue.
  • fuelpump – The driver ended the session due to issue with the fuel pump.
  • spindle – The driver ended the session due to an issues with the spindle.
  • transmission – The driver ended the session due to a transmission issue.
  • handling – The driver ended the session due to handling issues.
  • ignition – The driver ended the session due to an ignition issue.
  • oilleak – The driver ended the session due to an oil leak.
  • overheating – The driver ended the session due to an overheating issue.
  • electrical – The driver ended the session due to an electrical issue.
  • axle – The driver ended the session due to an issue with an axle.
  • clutch – The driver ended the session due to an issue with the clutch.
  • suspension - The driver ended the session due to suspension issues.
  • reargear – The driver ended the session due to rear gear issues.
  • dnq – The driver did not qualify for the race.
  • withdrew – The driver has withdrawn.

Q: Why is the Qualifying Leaderboard empty for the Camping World race at Eldora?

A: For the Camping World Truck race at Eldora, the qualifying feed will be empty, as qualifying is handled differently at that track. The starting grid will not be finalized until 15 minutes prior to the scheduled race start and will be available in the Starting Grid feed.

Return to top