NFL v5

Frequently Asked Questions
API API Version XSD Schema
NFL v5 Download
Note: Authentication is required for all API calls.
## NFL v5 API Map To best utilize the NFL API v5, you will need several parameters to create your API calls. The map below illustrates how you can obtain the parameters you need. >

Examples:

>To find the team a player was drafted by: >
  1. Call the season or weekly schedule and find a Game Id that they played in
  2. Call the Game Roster using the Game Id to get the Player Id
  3. Call the Player Profile and locate the Player Draft Team Alias.
>The Alias maps to the team that drafted the player. >
    >To find a teams number of defensive sacks: >
    1. Call the season or weekly schedule and find the desired Team Id
    2. Call the Seasonal Statistics using the Team Id
    3. Locate the Team Defense Sacks.
    >The teams number of defensive sacks is displayed. Primary and additional feeds only require dates or human-readable parameters, while other feeds require a global unique identifier (GUID) to identify the game, team, or player that the feed will describe. The primary feeds provide GUIDs for games and teams, while games and teams provide GUIDS for players. ## Current Season Schedule Provides schedule information for the current season, including venue and broadcast info, and scoring results by quarter.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Boxscore Information Data Points: Attendance
    Away Team Overtime Points
    Away Team Points for Quarter
    Away Team Total Points
    Home Team Overtime Points
    Home Team Points for Quarter
    Home Team Total Points
    Overtime Id
    Overtime Number
    Overtime Sequence
    Quarter Id
    Quarter Number
    Quarter Sequence
    Game Information Data Points: Away Team Alias
    Away Team Full Name
    Away Team Game Number
    Away Team Id
    Away Team Name
    Away Team SR Id
    Broadcast Internet
    Broadcast Network
    Broadcast Satellite
    Entry Mode
    Home Team Alias
    Home Team Full Name
    Home Team Game Number
    Home Team Id
    Home Team Name
    Home Team SR Id
    Id
    Number
    Scheduled Start Date/Time
    SR Id
    Status
    Weather
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Venue Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the Schedule for the current season below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/games/current_season/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", "/nfl/official/trial/v5/en/games/current_season/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/nfl/official/trial/v5/en/games/current_season/schedule.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Current Season Schedule feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/games/current_season/schedule.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Schedule use the following URL. https://feed.elasticstats.com/schema/nfl/premium/schedule-v5.0.xsd Return to API map ## Current Week Schedule Provides schedule information for the current week, including venue and broadcast info, and scoring results by quarter.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Boxscore Information Data Points: Attendance
    Away Team Overtime Points
    Away Team Points for Quarter
    Away Team Total Points
    Home Team Overtime Points
    Home Team Points for Quarter
    Home Team Total Points
    Overtime Id
    Overtime Number
    Overtime Sequence
    Quarter Id
    Quarter Number
    Quarter Sequence
    Game Information Data Points: Away Team Alias
    Away Team Full Name
    Away Team Game Number
    Away Team Id
    Away Team Name
    Away Team SR Id
    Broadcast Internet
    Broadcast Network
    Broadcast Satellite
    Entry Mode
    Home Team Alias
    Home Team Full Name
    Home Team Game Number
    Home Team Id
    Home Team Name
    Home Team SR Id
    Id
    Number
    Scheduled Start Date/Time
    SR Id
    Status
    Weather
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Venue Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the Schedule for the current week below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/games/current_week/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", "/nfl/official/trial/v5/en/games/current_week/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/nfl/official/trial/v5/en/games/current_week/schedule.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Current Week Schedule feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/games/current_week/schedule.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Schedule use the following URL. https://feed.elasticstats.com/schema/nfl/premium/schedule-v5.0.xsd Return to API map ## Daily Change Log Provides IDs and timestamps for teams, players, game statistics, schedules, and standings that have been modified on a given date. To receive the data updates, use these unique IDs to pull relevant API feeds.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Game Information Data Points: Id Last Modified SR Id
    League Information Data Points: Alias
    Id
    Name Season Id
    Player Information Data Points: Full Name
    Id
    Last Modified SR Id
    Team Information Data Points: Alias
    Id
    Last Modified
    Market
    Name
    SR Id
    > To generate the Daily Change Log replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/league/2019/05/24/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", "/nfl/official/trial/v5/en/league/2019/05/24/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/nfl/official/trial/v5/en/league/2019/05/24/changes.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Daily Change Log feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/league/`{year}`/`{month}`/`{day}`/changes.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `year` | Year in 4 digit format (YYYY). | | `month` | Month in 2 digit format (MM). | | `day` | Day of month 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, use the following URL. https://feed.elasticstats.com/schema/nfl/premium/changelog-v5.0.xsd Return to API map ## Draft Summary Provides pre-draft pick order with live pick selections during the draft. Displays information on draft rounds, picks, teams, and prospects for a given draft year.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Draft Information Data Points: Broadcast Channel
    Broadcast Internet
    Broadcast Network
    Draft End Date
    Draft Id
    Draft Start Date
    Draft Status
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Year
    Pick Compensatory
    Pick Id
    Pick Number
    Pick Overall
    Pick Traded
    Round End Date
    Round Id
    Round Number
    Round Start Date
    Round Status
    Trade Id
    League Information Data Points: Alias Id Name
    Player Information Data Points: Prospect Birth Place
    Prospect Experience
    Prospect First Name
    Prospect Height
    Prospect Id
    Prospect Last Name
    Prospect League Id
    Prospect Name
    Prospect Position
    Prospect Publishable
    Prospect Source Id
    Prospect Top Prospect
    Prospect Weight
    Team Information Data Points: Alias
    Id
    Market
    Name
    Sequence
    Venue Information Data Points: Address
    City
    Country
    Name
    State
    > To generate the Draft Summary for 2018 replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/v1/en/2019/draft.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", "/draft/nfl/trial/v1/en/2019/draft.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/draft/nfl/trial/v1/en/2019/draft.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Draft Summary feed by replacing the parameters in the following URL: https://api.sportradar.us/draft/nfl/`{access_level}`/`{version}`/`{language_code}`/`{year}`/draft.`{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 Draft API you are accessing (current version: v1). NOTE: All draft feeds are currently v1. | | `language_code` | 2 letter code for supported languages: en (English). | | `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 Draft Summary, use the following URL. https://feed.elasticstats.com/schema/draft/summary-v1.0.xsd Return to API map ## Game Boxscore Provides game scoring information for each team, including complete play-by-play information for all scoring drives.
    Update Frequency: Real-time
    Content Type: Styled XML or Raw JSON
    Boxscore Information Data Points: Attendance
    Away Team Coin Toss Decision
    Away Team Coin Toss Direction
    Away Team Coin Toss Outcome
    Away Team Points for Quarter
    Away Team Timeouts Remaining
    Away Team Timeouts Used
    Away Team Total Points
    Clock
    Coin Toss Quarter
    Current Situation Clock
    Current Situation Down
    Current Situation Team Alias
    Current Situation Team Id
    Current Situation Team Market
    Current Situation Team Name
    Current Situation Team SR Id
    Current Situation Team Yardline
    Current Situation Possession Team Alias
    Current Situation Possession Team Id
    Current Situation Possession Team Market
    Current Situation Possession Team Name
    Current Situation Possession Team SR Id
    Current Situation Yards to First Down
    Home Team Coin Toss Decision
    Home Team Coin Toss Direction
    Home Team Coin Toss Outcome
    Home Team Points for Quarter
    Home Team Timeouts Remaining
    Home Team Timeouts Used
    Home Team Total Points
    Last Event Clock
    Last Event Description
    Last Event Id
    Last Event Sequence
    Last Event Type
    Overtime Id
    Overtime Number
    Overtime Sequence
    Quarter
    Quarter Id
    Quarter Number
    Quarter Sequence
    Game Information Data Points: Away Team Alias
    Away Team Id
    Away Team Market
    Away Team Name
    Away Team SR Id
    Entry Mode
    Home Team Alias
    Home Team Id
    Home Team Market
    Home Team Name
    Home Team SR Id
    Game Id
    Game Number
    Game Scheduled Start Date/Time
    SR Id
    Status
    Weather
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Play By Play Information Data Points: Detail Category
    Detail Description
    Detail Direction
    Detail End Location - Team Alias
    Detail End Location - Yardline
    Detail No Attempt
    Detail Penalty - Description
    Detail Penalty - Result
    Detail Penalty - Safety
    Detail Penalty - Yards
    Detail Result
    Detail Sequence
    Detail Start Location - Team Alias
    Detail Start Location - Yardline
    Detail Yards
    Drive Duration
    Drive End Reason
    Drive First Downs
    Drive Gain
    Drive Id
    Drive Inside 20 Flag
    Drive Penalty Yards
    Drive Play Count
    Drive Scoring Drive Flag
    Drive Sequence
    Drive Start Reason
    Ending Situation Clock
    Ending Situation Down
    Ending Situation - Location - Team Alias
    Ending Situation - Location - Team Id
    Ending Situation - Location - Team Market
    Ending Situation - Location - Team Name
    Ending Situation - Location - Team Yardline
    Ending Situation - Possession - Team Alias
    Ending Situation - Possession - Team Id
    Ending Situation - Possession - Team Market
    Ending Situation - Possession - Team Name
    Ending Situation - Yards to First Down
    Event Clock
    Event Description
    Event Id
    Event Sequence
    Event Type
    Play Away Points
    Play Blitz
    Play Description
    Play Fake Field Goal
    Play Fake Punt
    Play Hash Mark
    Play Home Points
    Play Huddle
    Play Id
    Play Left Tightends
    Play Men in Box
    Play Pass Route
    Play Play Action
    Play Play Direction
    Play Players Rushed
    Play Pocket Location
    Play QB at Snap
    Play Right Tightends
    Play Run Pass Option
    Play Running Lane
    Play Scoring Play
    Play Screen Pass
    Play Sequence
    Play Type
    Play Wall Clock
    Quarter Id
    Quarter Number
    Quarter Sequence
    Points After - Play Id
    Points After - Score Type
    Points After - Sequence
    Scoring - Away Team Score
    Scoring - Clock
    Scoring - Home Team Score
    Scoring - Points
    Scoring - Sequence
    Starting Situation Clock
    Starting Situation Down
    Starting Situation Location - Team Alias
    Starting Situation Location - Team Id
    Starting Situation Location - Team Market
    Starting Situation Location - Team Name
    Starting Situation Location - Team Yardline
    Starting Situation Possession - Team Alias
    Starting Situation Possession - Team Id
    Starting Situation Possession - Team Market
    Starting Situation Possession - Team Name
    Starting Situation Yards to First Down
    Play Statistics Data Points: Conversion Attempt
    Conversion Category
    Conversion Complete
    Defense Assisted Sacks
    Defense Assisted Tackles
    Defense Assisted Tackles for Loss
    Defense Batted Pass
    Defense Blitz
    Defense Block
    Defense Category
    Defense Conversion Attempt
    Defense Conversion Category
    Defense Conversion Complete
    Defense Defensive Completion
    Defense Defensive Target
    Defense Forced Fumble
    Defense Hurry
    Defense Interception
    Defense Interception Touchdown
    Defense Interception Yards
    Defense Knockdown
    Defense Missed Tackles
    Defense Nullified Play Flag
    Defense Pass Defended
    Defense Primary
    Defense QB Hit
    Defense Sack
    Defense Sack Yards
    Defense Safety
    Defense Tackle for Loss
    Defense Tackle for Loss Yards
    Defense Tackle
    Down Conversions Attempt
    Down Conversions Complete
    Down Conversions Down
    Extra Point Aborted
    Extra Point Attempt
    Extra Point Blocked
    Extra Point Missed
    Extra Point Returned
    Extra Point Safety
    Field Goal Attempt
    Field Goal Attempt Yards
    Field Goal Blocked
    Field Goal Missed
    Field Goal Returned
    Field Goal Nullified
    Field Goal Yards
    First Down Category
    Fumbles Forced
    Fumbles Fumble
    Fumbles Lost
    Fumbles Nullified
    Fumbles Opponent Recovery
    Fumbles Opponent Recovery Touchdown
    Fumbles Opponent Recovery Yards
    Fumbles Out of Bounds
    Fumbles Own Recovery
    Fumbles Own Recovery Touchdown
    Fumbles Own Recovery Yards
    Fumbles Play Category
    Kickoffs End Zone
    Kickoffs Gross Yards
    Kickoffs Inside 20
    Kickoffs Kickoff
    Kickoffs Nullified
    Kickoffs Onside Attempt
    Kickoffs Onside Success
    Kickoffs Own Recovery
    Kickoffs Own Recovery Touchdown
    Kickoffs Squib Kick
    Kickoffs Touchback
    Kickoffs Yards
    Passing Attempt
    Passing Attempt Yards
    Passing Batted Pass
    Passing Blitz
    Passing Completion
    Passing First Down
    Passing Goal to Go
    Passing Hurry
    Passing Incompletion Type
    Passing Inside 20
    Passing Interception
    Passing Knockdown
    Passing Nullified
    Passing On Target Throws
    Passing Pocket Time
    Passing Sack
    Passing Sack Yards
    Passing Touchdown
    Passing Yards
    Penalties Penalty
    Penalties Yards
    Punting Attempt
    Punting Blocked
    Punting Downed
    Punting Endzone
    Punting Fair Catch
    Punting Hang Time
    Punting Inside 20
    Punting Nullified
    Punting Out of Bounds
    Punting Touchback
    Punting Yards
    Receiving Broken Tackles
    Receiving Catchable
    Receiving Dropped
    Receiving First Down
    Receiving Goal to Go
    Receiving Inside 20
    Receiving Nullified
    Receiving Reception
    Receiving Safety
    Receiving Target
    Receiving Touchdown
    Receiving Yards
    Receiving Yards After Catch
    Receiving Yards After Contact
    Returns Category
    Returns Downed
    Returns Fair Catch
    Returns First Down
    Returns Lateral
    Returns Nullified
    Returns Out of Bounds
    Returns Play Category
    Returns Return
    Returns Touchback
    Returns Touchdown
    Returns Yards
    Rushing Attempt
    Rushing Broken Tackles
    Rushing First Down
    Rushing Goal to Go
    Rushing Inside 20
    Rushing Kneel Down
    Rushing Lateral
    Rushing Nullified
    Rushing Scramble
    Rushing Tackle for Loss
    Rushing Tackle for Loss Yards
    Rushing Touchdown
    Rushing Yards
    Rushing Yards After Contact
    Player Information Data Points: Full Name
    Id
    Jersey Number
    Position
    Role
    SR Id
    Team Information Data Points: Alias Id
    Market
    Name
    SR Id
    Venue Information Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the Game Boxscore for the Game ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/boxscore.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", "/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/boxscore.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/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/boxscore.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Game Boxscore feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/games/`{game_id}`/boxscore.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `game_id` | ID for a given game. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Game Boxscore use the following URL. https://feed.elasticstats.com/schema/nfl/premium/boxscore-v5.0.xsd Return to API map ## Game Roster Provides complete game roster information for each team, including game status and player profile data.
    Update Frequency: As Necessary
    Content Type: Styled XML or JSON
    Boxscore Information Data Points: Attendance
    Clock
    Quarter
    Officials Assignment
    Officials Full Name
    Officials Number
    Game Information Data Points: Away Team Alias
    Away Team Id
    Away Team Market
    Away Team Name
    Away Team SR Id
    Entry Mode
    Home Team Alias
    Home Team Id
    Home Team Market
    Home Team Name
    Home Team SR Id
    Game Id
    Game Number
    Game Scheduled Start Date/Time
    SR Id
    Status
    Weather
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Player Information Data Points: Abbreviated Name
    Age (at time of game)
    Birth Date
    Birth Place
    College
    College Conference
    Draft Number
    Draft Round
    Draft Year
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Team SR Id
    First Name
    Full Name
    Game Status
    Height
    High School
    Id
    Jersey Number
    Last Name
    Name Suffix
    Position
    Preferred Name
    SR Id
    Weight
    Team Information Data Points: Alias
    Coach First Name
    Coach Full Name
    Coach Id
    Coach Last Name
    Name Suffix
    Coach Position
    Id
    Market
    Name
    SR Id
    Venue Information Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the Game Roster for the Game ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/roster.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", "/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/roster.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/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/roster.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Game Roster feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/games/`{game_id}`/roster.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `game_id` | ID for a given game. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Game Roster use the following URL. https://feed.elasticstats.com/schema/nfl/premium/roster-v5.0.xsd Return to API map ## Game Statistics Provides extensive team and player level game statistics for each team.
    Update Frequency: Real-time
    Content Type: Styled XML or Raw JSON
    Boxscore Information Data Points: Attendance
    Away Team Timeouts Remaining
    Away Team Timeouts Used
    Away Team Total Points
    Clock
    Home Team Timeouts Remaining
    Home Team Timeouts Used
    Home Team Total Points
    Quarter
    Game Information Data Points: Away Team Alias
    Away Team Id
    Away Team Market
    Away Team Name
    Away Team SR Id
    Entry Mode
    Home Team Alias
    Home Team Id
    Home Team Market
    Home Team Name
    Home Team SR Id
    Game Id
    Game Number
    Game Scheduled Start Date/Time
    SR Id
    Status
    Weather
    Player Game Statistics Data Points: Conversions Attempts
    Conversion Category
    Conversion Successes
    Defense Assisted Tackles
    Defense Batted Passes
    Defense Blitzes
    Defense Combined Tackles
    Defensive Completions
    Defensive Targets
    Defense Forced Fumbles
    Defense Fumble Recoveries
    Defense Hurries
    Defense Interceptions
    Defense Knockdowns
    Defense Miscellaneous Assisted Tackles
    Defense Miscellaneous Forced Fumbles
    Defense Miscellaneous Fumble Recoveries
    Defense Miscellaneous Tackles
    Defense Missed Tackles
    Defense Passes Defended
    Defense QB Hits
    Defense Sack Yards
    Defense Sacks
    Defense Safeties
    Defense Special Teams Assisted Tackles
    Defense Special Teams Blocks
    Defense Special Teams Forced Fumbles
    Defense Special Teams Fumble Recoveries
    Defense Special Teams Tackles
    Defense Tackles
    Defense Tackles for Loss
    Defense Tackles for Loss Yards
    Extra Points Kicking Attempts
    Extra Points Kicking Blocked
    Extra Points Kicking Made
    Field Goals Attempts
    Field Goals Average Yards
    Field Goals Blocked
    Field Goals Longest
    Field Goals Made
    Field Goal Yards
    Fumbles End Zone Touchdowns
    Fumbles Force Fumbles
    Fumbles Fumbles
    Fumbles Lost Fumbles
    Fumbles Opponent Recovery
    Fumbles Opponent Recovery Touchdowns
    Fumbles Opponent Recovery Yards
    Fumbles Out of Bounds
    Fumbles Own Recovery
    Fumbles Own Recovery Touchdowns
    Fumbles Own Recovery Yards
    Interception Returns Average Yards
    Interception Returns Longest
    Interception Returns
    Interception Returns Touchdowns
    Interception Returns Yards
    Kick Returns Average Yards
    Kick Returns Fair Catches
    Kick Returns Longest
    Kick Returns Returns
    Kick Returns Touchdowns
    Kick Returns Yards
    Kickoffs End Zone
    Kickoffs Inside 20
    Kickoffs
    Kickoffs Onside Attempts
    Kickoffs Onside Successes
    Kickoffs Out of Bounds
    Kickoffs Return Yards
    Kickoffs Squib Kicks
    Kickoffs Total Endzone
    Kickoffs Touchbacks
    Kickoffs Yards
    Passing Air Yards
    Passing Attempts
    Passing Average Pocket Time
    Passing Average Yards
    Passing Batted Passes
    Passing Blitzes
    Passing Completion Percentage
    Passing Completions
    Passing Defended Passes
    Passing Dropped Passes
    Passing Hurries
    Passing Interceptions
    Passing Knockdowns
    Passing Longest
    Passing Longest Touchdown
    Passing On Target Throws
    Passing Pocket Time
    Passing Poor Throws
    Passing Rating
    Passing Red Zone Attempts
    Passing Sack Yards
    Passing Sacks
    Passing Spikes
    Passing Throw Aways
    Passing Touchdowns
    Passing Yards
    Penalties
    Penalty Yards
    Punt Return Average Yards
    Punt Return Fair Catches
    Punt Return Longest
    Punt Returns
    Punt Return Touchdowns
    Punt Return Yards
    Punts Attempts
    Punts Average Hang Time
    Punts Average Net Yards
    Punts Average Yards
    Punts Blocked
    Punts Hang Time
    Punts Inside 20
    Punts Longest
    Punts Net Yards
    Punts Return Yards
    Punts Touchbacks
    Punts Yards
    Receiving Air Yards
    Receiving Average Yards
    Receiving Broken Tackles
    Receiving Catchable Passes
    Receiving Dropped Passes
    Receiving Longest
    Receiving Longest Touchdown
    Receiving Receptions
    Receiving Red Zone Targets
    Receiving Targets
    Receiving Touchdowns
    Receiving Yards
    Receiving Yards After Catch
    Receiving Yards After Contact
    Rushing Attempts
    Rushing Average Yards
    Rushing Broken Tackles
    Rushing Kneel Downs
    Rushing Longest
    Rushing Longest Touchdown
    Rushing Red Zone Attempts
    Rushing Scrambles
    Rushing Tackle for Loss
    Rushing Tackle for Loss Yards
    Rushing Touchdowns
    Rushing Yards
    Rushing Yards After Contact
    Team Game Statistics Data Points: Conversions Defense Attempts
    Conversions Defense Successes
    Conversions Pass Attempts
    Conversions Pass Successes
    Conversions Rush Attempts
    Conversions Rush Successes
    Conversions Turnover Successes
    Defense Assisted Tackles
    Defense Batted Passes
    Defense Blitzes
    Defense Combined Tackles
    Defensive Completions
    Defensive Targets
    Defense Forced Fumbles
    Defense Fumble Recoveries
    Defense Hurries
    Defense Interceptions
    Defense Knockdowns
    Defense Miscellaneous Assisted Tackles
    Defense Miscellaneous Forced Fumbles
    Defense Miscellaneous Fumble Recoveries
    Defense Miscellaneous Tackles
    Defense Missed Tackles
    Defense Passes Defended
    Defense QB Hits
    Defense Sack Yards
    Defense Sacks
    Defense Safeties
    Defense Special Teams Assisted Tackles
    Defense Special Teams Blocks
    Defense Special Teams Forced Fumbles
    Defense Special Teams Fumble Recoveries
    Defense Special Teams Tackles
    Defense Tackles
    Defense Tackles for Loss
    Defense Tackles for Loss Yards
    Efficiency 3rd Down Attempts
    Efficiency 3rd Down Conversions
    Efficiency 3rd Down Percentage
    Efficiency 4th Down Attempts
    Efficiency 4th Down Conversions
    Efficiency 4th Down Percentage
    Efficiency Goal to Go Attempts
    Efficiency Goal to Go Conversions
    Efficiency Goal to Go Percentage
    Efficiency Red Zone Attempts
    Efficiency Red Zone Conversions
    Efficiency Red Zone Percentage
    Extra Points Kicking Attempts
    Extra Points Kicking Blocked
    Extra Points Kicking Made
    Field Goals Attempts
    Field Goals Average Yards
    Field Goals Blocked
    Field Goals Longest
    Field Goals Made
    Field Goals Net Attempts
    Field Goals Yards
    First Downs Passing
    First Downs Penalty
    First Downs Rushing
    First Downs Total
    Fumbles End Zone Touchdowns
    Fumbles Force Fumbles
    Fumbles Fumbles
    Fumbles Lost Fumbles
    Fumbles Opponent Recovery
    Fumbles Opponent Recovery Touchdowns
    Fumbles Opponent Recovery Yards
    Fumbles Out of Bounds
    Fumbles Own Recovery
    Fumbles Own Recovery Touchdowns
    Fumbles Own Recovery Yards
    Interception Returns Average Yards
    Interception Returns Longest
    Interception Returns Returns
    Interception Returns Touchdowns
    Interception Returns Yards
    Interceptions
    Interceptions Return Yards
    Interceptions Returned
    Kick Returns Average Yards
    Kick Returns Fair Catches
    Kick Returns Longest
    Kick Returns Returns
    Kick Returns Touchdowns
    Kick Returns Yards
    Kickoffs End Zone
    Kickoffs Inside 20
    Kickoffs
    Kickoffs Out of Bounds
    Kickoffs Return Yards
    Kickoffs Total Endzone
    Kickoffs Touchbacks
    Kickoffs Yards
    Misc Returns Blocked Field Goal Touchdowns
    Misc Returns Blocked Punt Touchdowns
    Misc Returns End Zone Recovery Touchdowns
    Misc Returns Field Goal Return Touchdowns
    Misc Returns Returns
    Misc Returns Touchdowns
    Misc Returns Yards
    Passing Air Yards
    Passing Attempts
    Passing Average Yards
    Passing Batted Passes
    Passing Blitzes
    Passing Completion Percentage
    Passing Completions
    Passing Defended Passes
    Passing Dropped Passes
    Passing Gross Yards
    Passing Hurries
    Passing Interceptions
    Passing Knockdowns
    Passing Longest
    Passing Longest Touchdown
    Passing Net Yards
    Passing On Target Throws
    Passing Pocket Time
    Passing Rating
    Passing Red Zone Attempts
    Passing Sack Yards
    Passing Sacks
    Passing Spikes
    Passing Throw Aways
    Passing Touchdowns
    Passing Yards
    Penalties
    Penalty Yards
    Punt Returns Average Yards
    Punt Returns Fair Catches
    Punt Returns Longest
    Punt Returns
    Punt Returns Touchdowns
    Punt Returns Yards
    Punts Attempts
    Punts Average Hang Time
    Punts Average Net Yards
    Punts Average Yards
    Punts Blocked
    Punts Hang Time
    Punts Inside 20
    Punts Longest
    Punts Net Yards
    Punts Return Yards
    Punts Touchbacks
    Punts Yards
    Receiving Air Yards
    Receiving Average Yards
    Receiving Broken Tackles
    Receiving Catachable Passes
    Receiving Dropped Passes
    Receiving Longest
    Receiving Longest Touchdown
    Receiving Receptions
    Receiving Red Zone Targets
    Receiving Targets
    Receiving Touchdowns
    Receiving Yards
    Receiving Yards After Catch
    Receiving Yards After Contact
    Rushing Attempts
    Rushing Average Yards
    Rushing Broken Tackles
    Rushing Kneel Downs
    Rushing Longest
    Rushing Longest Touchdown
    Rushing Red Zone Attempts
    Rushing Scrambles
    Rushing Tackles for Loss
    Rushing Tackles for Loss Yards
    Rushing Touchdowns
    Rushing Yards
    Rushing Yards After Contact
    Touchdowns Fumble Return
    Touchdowns Interception Return
    Touchdowns Kick Return
    Touchdowns Other
    Touchdowns Pass
    Touchdowns Punt Return
    Touchdowns Rush
    Touchdowns Total
    Touchdowns Total Return
    Team Summary Data Points: Average Gain
    Fumbles
    Fumbles Lost
    Penalties
    Penalty Yards
    Play Count
    Possession Time
    Return Yards
    Rushing Plays
    Safeties
    Total Yards
    Turnovers
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Player Information Data Points: Full Name Id
    Jersey Number
    Position
    SR Id
    Team Information Data Points: Alias Id
    Market
    Name
    SR Id
    Venue Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the Game Statistics for the Game ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/statistics.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", "/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/statistics.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/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/statistics.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Game Statistics feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/games/`{game_id}`/statistics.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `game_id` | ID for a given game. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for Game Statistics use the following URL. https://feed.elasticstats.com/schema/nfl/premium/statistics-v5.0.xsd Return to API map ## League Hierarchy Provides top-level information for each team, including conference and division distinction, venue information, and team colors.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Franchise Information Data Points: Alias Id Name
    League Information Data Points: League Alias
    Conference Alias
    Conference Id
    Conference Name
    Division Alias
    Division Id
    Division Name
    League Id
    League Name
    Team Information Data Points: Alias
    Id
    Market
    Name
    SR Id
    Venue Information Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the League Hierarchy replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/league/hierarchy.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", "/nfl/official/trial/v5/en/league/hierarchy.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/nfl/official/trial/v5/en/league/hierarchy.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the League Hierarchy feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/league/hierarchy.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the League Hierarchy use the following URL. https://feed.elasticstats.com/schema/nfl/premium/hierarchy-v5.0.xsd Return to API map ## Play-By-Play Provides a live play-by-play timeline, including possession and location information as well as all team and player statistics earned on each play.
    Update Frequency: Real-Time
    Content Type: Raw XML or JSON
    Boxscore Data Points: Attendance
    Away Team Coin Toss Decision
    Away Team Coin Toss Direction
    Away Team Coin Toss Outcome
    Away Team Points for Quarter
    Away Team Timeouts Remaining
    Away Team Timeouts Used
    Away Team Total Points
    Clock
    Coin Toss Quarter
    Home Team Coin Toss Decision
    Home Team Coin Toss Direction
    Home Team Coin Toss Outcome
    Home Team Points for Quarter
    Home Team Timeouts Remaining
    Home Team Timeouts Used
    Home Team Total Points
    Overtime Id
    Overtime Number
    Overtime Sequence
    Quarter
    Quarter Id
    Quarter Number
    Quarter Sequence
    Game Information Data Points: Away Team Alias
    Away Team Id
    Away Team Market
    Away Team Name
    Away Team SR Id
    Entry Mode
    Home Team Alias
    Home Team Id
    Home Team Market
    Home Team Name
    Home Team SR Id
    Game Id
    Game Number
    Game Scheduled Start Date/Time
    SR Id
    Status
    Weather
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Play By Play Information Data Points: Detail Category
    Detail Description
    Detail Direction
    Detail End Location - Team Alias
    Detail End Location - Yardline
    Detail No Attempt
    Detail Penalty - Description
    Detail Penalty - Result
    Detail Penalty - Safety
    Detail Penalty - Yards
    Detail Result
    Detail Sequence
    Detail Start Location - Team Alias
    Detail Start Location - Yardline
    Detail Yards
    Drive Duration
    Drive End Reason
    Drive First Downs
    Drive Gain
    Drive Id
    Drive Inside 20 Flag
    Drive Penalty Yards
    Drive Play Count
    Drive Scoring Drive Flag
    Drive Sequence
    Drive Start Reason
    Ending Situation Clock
    Ending Situation Down
    Ending Situation - Location - Team Alias
    Ending Situation - Location - Team Id
    Ending Situation - Location - Team Market
    Ending Situation - Location - Team Name
    Ending Situation - Location - Team Yardline
    Ending Situation - Possession - Team Alias
    Ending Situation - Possession - Team Id
    Ending Situation - Possession - Team Market
    Ending Situation - Possession - Team Name
    Ending Situation - Yards to First Down
    Event Clock
    Event Description
    Event Id
    Event Sequence
    Event Type
    Play Away Points
    Play Blitz
    Play Description
    Play Fake Field Goal
    Play Fake Punt
    Play Hash Mark
    Play Home Points
    Play Huddle
    Play Id
    Play Left Tightends
    Play Men in Box
    Play Pass Route
    Play Play Action
    Play Play Direction
    Play Players Rushed
    Play Pocket Location
    Play QB at Snap
    Play Right Tightends
    Play Run Pass Option
    Play Running Lane
    Play Scoring Play
    Play Screen Pass
    Play Sequence
    Play Type
    Play Wall Clock
    Quarter Id
    Quarter Number
    Quarter Sequence
    Points After - Play Id
    Points After - Score Type
    Points After - Sequence
    Scoring - Away Team Score
    Scoring - Clock
    Scoring - Home Team Score
    Scoring - Points
    Scoring - Sequence
    Starting Situation Clock
    Starting Situation Down
    Starting Situation Location - Team Alias
    Starting Situation Location - Team Id
    Starting Situation Location - Team Market
    Starting Situation Location - Team Name
    Starting Situation Location - Team Yardline
    Starting Situation Possession - Team Alias
    Starting Situation Possession - Team Id
    Starting Situation Possession - Team Market
    Starting Situation Possession - Team Name
    Starting Situation Yards to First Down
    Play Statistics Data Points: Conversion Attempt
    Conversion Category
    Conversion Complete
    Defense Assisted Sacks
    Defense Assisted Tackles
    Defense Assisted Tackles for Loss
    Defense Batted Pass
    Defense Blitz
    Defense Block
    Defense Category
    Defense Conversion Attempt
    Defense Conversion Category
    Defense Conversion Complete
    Defense Defensive Completion
    Defense Defensive Target
    Defense Forced Fumble
    Defense Hurry
    Defense Interception
    Defense Interception Touchdown
    Defense Interception Yards
    Defense Knockdown
    Defense Missed Tackles
    Defense Nullified Play Flag
    Defense Pass Defended
    Defense Primary
    Defense QB Hit
    Defense Sack
    Defense Sack Yards
    Defense Safety
    Defense Tackle for Loss
    Defense Tackle for Loss Yards
    Defense Tackle
    Down Conversions Attempt
    Down Conversions Complete
    Down Conversions Down
    Extra Point Aborted
    Extra Point Attempt
    Extra Point Blocked
    Extra Point Missed
    Extra Point Returned
    Extra Point Safety
    Field Goal Attempt
    Field Goal Attempt Yards
    Field Goal Blocked
    Field Goal Missed
    Field Goal Returned
    Field Goal Nullified
    Field Goal Yards
    First Down Category
    Fumbles Forced
    Fumbles Fumble
    Fumbles Lost
    Fumbles Nullified
    Fumbles Opponent Recovery
    Fumbles Opponent Recovery Touchdown
    Fumbles Opponent Recovery Yards
    Fumbles Out of Bounds
    Fumbles Own Recovery
    Fumbles Own Recovery Touchdown
    Fumbles Own Recovery Yards
    Fumbles Play Category
    Kickoffs End Zone
    Kickoffs Gross Yards
    Kickoffs Inside 20
    Kickoffs Kickoff
    Kickoffs Nullified
    Kickoffs Onside Attempt
    Kickoffs Onside Success
    Kickoffs Own Recovery
    Kickoffs Own Recovery Touchdown
    Kickoffs Squib Kick
    Kickoffs Touchback
    Kickoffs Yards
    Passing Attempt
    Passing Attempt Yards
    Passing Batted Pass
    Passing Blitz
    Passing Completion
    Passing First Down
    Passing Goal to Go
    Passing Hurry
    Passing Incompletion Type
    Passing Inside 20
    Passing Interception
    Passing Knockdown
    Passing Nullified
    Passing On Target Throws
    Passing Pocket Time
    Passing Sack
    Passing Sack Yards
    Passing Touchdown
    Passing Yards
    Penalties Penalty
    Penalties Yards
    Punting Attempt
    Punting Blocked
    Punting Downed
    Punting Endzone
    Punting Fair Catch
    Punting Hang Time
    Punting Inside 20
    Punting Nullified
    Punting Out of Bounds
    Punting Touchback
    Punting Yards
    Receiving Broken Tackles
    Receiving Catchable
    Receiving Dropped
    Receiving First Down
    Receiving Goal to Go
    Receiving Inside 20
    Receiving Nullified
    Receiving Reception
    Receiving Safety
    Receiving Target
    Receiving Touchdown
    Receiving Yards
    Receiving Yards After Catch
    Receiving Yards After Contact
    Returns Category
    Returns Downed
    Returns Fair Catch
    Returns First Down
    Returns Lateral
    Returns Nullified
    Returns Out of Bounds
    Returns Play Category
    Returns Return
    Returns Touchback
    Returns Touchdown
    Returns Yards
    Rushing Attempt
    Rushing Broken Tackles
    Rushing First Down
    Rushing Goal to Go
    Rushing Inside 20
    Rushing Kneel Down
    Rushing Lateral
    Rushing Nullified
    Rushing Scramble
    Rushing Tackle for Loss
    Rushing Tackle for Loss Yards
    Rushing Touchdown
    Rushing Yards
    Rushing Yards After Contact
    Player Information Data Points: Full Name
    Id
    Jersey Number
    Position
    Role
    SR Id
    Team Information Data Points: Alias Id
    Market
    Name
    SR Id
    Venue Information Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the Play-By-Play for the Game ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/pbp.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", "/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/pbp.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/nfl/official/trial/v5/en/games/030d37cf-b896-4f10-b16e-2a5120fef6cf/pbp.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Play-By-Play feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/games/`{game_id}`/pbp.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `game_id` | ID for a given game. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for Play-By-Play use the following URL. https://feed.elasticstats.com/schema/nfl/premium/pbp-v5.0.xsd Return to API map ## Player Profile Provides player biographical information, draft information, and seasonal statistics.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    League Information Data Points: Season Id
    Season Name
    Season Type Season Year
    Player Information Data Points: Abbreviated Name
    Birth Date
    Birth Place
    College
    College Conference
    Draft Info Number
    Draft Info Round
    Draft Info Year
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Team SR Id
    First Name
    Full Name
    Height
    High School
    Id
    Jersey Number
    Last Name
    Name Suffix
    Position
    Preferred Name
    SR Id
    Status
    Weight
    Seasonal Player Statistics Data Points: Conversions Defense Attempts
    Conversions Defense Successes
    Conversions Pass Attempts
    Conversions Pass Successes
    Conversions Receiving Attempts
    Conversions Receiving Successes
    Conversions Rush Attempts
    Conversions Rush Successes
    Defense Assisted Tackles
    Defense Batted Passes
    Defense Blitzes
    Defense Combined Tackles
    Defensive Completions
    Defensive Targets
    Defense Forced Fumbles
    Defense Fumble Recoveries
    Defense Hurries
    Defense Interceptions
    Defense Knockdowns
    Defense Miscellaneous Assisted Tackles
    Defense Miscellaneous Forced Fumbles
    Defense Miscellaneous Fumble Recoveries
    Defense Miscellaneous Tackles
    Defense Missed Tackles
    Defense Passes Defended
    Defense QB Hits
    Defense Sack Yards
    Defense Sacks
    Defense Safeties
    Defense Special Teams Assisted Tackles
    Defense Special Teams Blocks
    Defense Special Teams Forced Fumbles
    Defense Special Teams Fumble Recoveries
    Defense Special Teams Tackles
    Defense Tackles
    Defense Tackles for Loss
    Defense Tackles for Loss Yards
    Extra Points Kicking Attempts
    Extra Points Kicking Blocked
    Extra Points Kicking Made
    Field Goals Attempts
    Field Goals Average Yards
    Field Goals Blocked
    Field Goals Longest
    Field Goals Made
    Field Goals Yards
    Fumbles End Zone Recovery Touchdowns
    Fumbles Force Fumbles
    Fumbles
    Fumbles Lost
    Fumbles Opponent Recovery
    Fumbles Opponent Recovery Touchdowns
    Fumbles Opponent Recovery Yards
    Fumbles Out of Bounds
    Fumbles Own Recovery
    Fumbles Own Recovery Touchdowns
    Fumbles Own Recovery Yards
    Games Played
    Games Started
    Interception Returns Average Yards
    Interception Returns Longest
    Interception Returns Returns
    Interception Returns Touchdowns
    Interception Returns Yards
    Kick Returns Average Yards
    Kick Returns Fair Catches
    Kick Returns Longest
    Kick Returns
    Kick Returns Touchdowns
    Kick Returns Yards
    Kickoffs End Zone
    Kickoffs Inside 20
    Kickoffs
    Kickoffs Onside Attempts
    Kickoffs Onside Successes
    Kickoffs Out of Bounds
    Kickoffs Return Yards
    Kickoffs Squib Kicks
    Kickoffs Touchbacks
    Kickoffs Yards
    Passing Air Yards
    Passing Attempts
    Passing Average Pocket Time
    Passing Average Yards
    Passing Batted Passes
    Passing Blitzes
    Passing Completion Percentage
    Passing Completions
    Passing Defended Passes
    Passing Dropped Passes
    Passing Gross Yards
    Passing Hurries
    Passing Interceptions
    Passing Knockdowns
    Passing Longest
    Passing Longest Touchdown
    Passing On Target Throws
    Passing Net Yards
    Passing Pocket Time
    Passing Rating
    Passing Red Zone Attempts
    Passing Sack Yards
    Passing Sacks
    Passing Spikes
    Passing Throw Aways
    Passing Touchdowns
    Passing Yards
    Penalties
    Penalties Yards
    Punt Returns Average Yards
    Punt Returns Fair Catches
    Punt Returns Longest
    Punt Returns Returns
    Punt Returns Touchdowns
    Punt Returns Yards
    Punts Attempts
    Punts Average Hang Time
    Punts Average Net Yards
    Punts Average Yards
    Punts Blocked
    Punts Hang Time
    Punts Inside 20
    Punts Longest
    Punts Net Yards
    Punts Return Yards
    Punts Touchbacks
    Punts Yards
    Receiving Air Yards
    Receiving Average Yards
    Receiving Broken Tackles
    Receiving Catchable Passes
    Receiving Dropped Passes
    Receiving Longest
    Receiving Longest Touchdown
    Receiving Receptions
    Receiving Red Zone Targets
    Receiving Targets
    Receiving Touchdowns
    Receiving Yards
    Receiving Yards After Catch
    Receiving Yards After Contact
    Rushing Attempts
    Rushing Average Yards
    Rushing Broken Tackles
    Rushing Kneel Downs
    Rushing Longest
    Rushing Longest Touchdown
    Rushing Red Zone Attempts
    Rushing Scrambles
    Rushing Tackles for Loss
    Rushing Tackles for Loss Yards
    Rushing Touchdowns
    Rushing Yards
    Rushing Yards After Contact
    Team Information Data Points: Alias
    Id
    Market
    Name
    SR Id
    > To generate a Player Profile for the Player ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/players/0acdcd3b-5442-4311-a139-ae7c506faf88/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", "/nfl/official/trial/v5/en/players/0acdcd3b-5442-4311-a139-ae7c506faf88/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.us/nfl/official/trial/v5/en/players/0acdcd3b-5442-4311-a139-ae7c506faf88/profile.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Player Profile feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/players/`{player_id}`/profile.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `player_id` | ID for a given player. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Player Profile use the following URL. https://feed.elasticstats.com/schema/nfl/premium/profile-v5.0.xsd Return to API map ## Prospects Provides a list of upcoming or historical draft prospects for a given year.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Draft Information Data Points: Broadcast Channel
    Broadcast Internet
    Broadcast Network
    Draft End Date
    Draft Id
    Draft Start Date
    Draft Status
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Year
    League Information Data Points: Alias
    Conference Alias
    Conference Id
    Conference Name
    Division Alias
    Division Id
    Division Name
    Id
    Name
    Player Information Data Points: Prospect Birth Place
    Prospect Experience
    Prospect First Name
    Prospect Height
    Prospect Id
    Prospect Last Name
    Prospect League Id
    Prospect Name
    Prospect Position
    Prospect Publishable
    Prospect Source Id
    Prospect Top Prospect
    Prospect Weight
    Team Information Data Points: Alias
    Id
    Market Name
    Venue Information Data Points: Address
    City
    Country
    Name
    State
    > To generate the Prospects for the year below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/v1/en/2019/prospects.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", "/draft/nfl/trial/v1/en/2019/prospects.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/draft/nfl/trial/v1/en/2019/prospects.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Prospects feed by replacing the parameters in the following URL: https://api.sportradar.us/draft/nfl/`{access_level}`/`{version}`/`{language_code}`/`{year}`/prospects.`{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 Draft API you are accessing (current version: v1). NOTE: All draft feeds are currently v1. | | `language_code` | 2 letter code for supported languages: en (English). | | `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 Prospects use the following URL. https://feed.elasticstats.com/schema/draft/prospects-v1.0.xsd Return to API map ## Season Schedule Provides complete schedule information for a given season, including venue and broadcast info, and scoring results by quarter.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Boxscore Information Data Points: Attendance
    Away Team Overtime Points
    Away Team Points for Quarter
    Away Team Total Points
    Home Team Overtime Points
    Home Team Points for Quarter
    Home Team Total Points
    Overtime Id
    Overtime Number
    Overtime Sequence
    Quarter Id
    Quarter Number
    Quarter Sequence
    Game Information Data Points: Away Team Alias
    Away Team Full Name
    Away Team Game Number
    Away Team Id
    Away Team Name
    Away Team SR Id
    Broadcast Internet
    Broadcast Network
    Broadcast Satellite
    Entry Mode
    Home Team Alias
    Home Team Full Name
    Home Team Game Number
    Home Team Id
    Home Team Name
    Home Team SR Id
    Id
    Number
    Scheduled Start Date/Time
    SR Id
    Status
    Weather
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Venue Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the Schedule for the Season and Year below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/games/2019/reg/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", "/nfl/official/trial/v5/en/games/2019/reg/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/nfl/official/trial/v5/en/games/2019/reg/schedule.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Season Schedule feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/games/`{year}`/`{nfl_season}`/schedule.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `year` | Year in 4 digit format (YYYY). | | `nfl_season` | Preseason (PRE), Regular Season (REG), or Post-Season (PST). | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Schedule use the following URL. https://feed.elasticstats.com/schema/nfl/premium/schedule-v5.0.xsd Return to API map ## Seasonal Statistics Provides complete team and player seasonal statistics for a given season and season type.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    League Information Data Points: Season Id
    Season Name
    Season Type Season Year
    Player Information Data Points: Full Name
    Id
    Jersey Number Position
    Opponent Seasonal Statistics Data Points: Conversions Defense Attempts
    Conversions Defense Successes
    Conversions Pass Attempts
    Conversions Pass Successes
    Conversions Rush Attempts
    Conversions Rush Successes
    Conversions Turnover Successes
    Defense Assisted Tackles
    Defense Batted Passes
    Defense Blitzes
    Defense Combined Tackles
    Defensive Completions
    Defensive Targets
    Defense Forced Fumbles
    Defense Fumble Recoveries
    Defense Hurries
    Defense Interceptions
    Defense Knockdowns
    Defense Miscellaneous Assisted Tackles
    Defense Miscellaneous Forced Fumbles
    Defense Miscellaneous Fumble Recoveries
    Defense Miscellaneous Tackles
    Defense Missed Tackles
    Defense Passes Defended
    Defense QB Hits
    Defense Sack Yards
    Defense Sacks
    Defense Safeties
    Defense Special Teams Assisted Tackles
    Defense Special Teams Blocks
    Defense Special Teams Forced Fumbles
    Defense Special Teams Fumble Recoveries
    Defense Special Teams Tackles
    Defense Tackles
    Defense Tackles for Loss
    Defense Tackles for Loss Yards
    Efficiency 3rd Down Attempts
    Efficiency 3rd Down Conversions
    Efficiency 3rd Down Percentage
    Efficiency 4th Down Attempts
    Efficiency 4th Down Conversions
    Efficiency 4th Down Percentage
    Efficiency Goal to Go Attempts
    Efficiency Goal to Go Conversions
    Efficiency Goal to Go Percentage
    Efficiency Red Zone Attempts
    Efficiency Red Zone Conversions
    Efficiency Red Zone Percentage
    Extra Points Kicking Attempts
    Extra Points Kicking Blocked
    Extra Points Kicking Made
    Field Goals Attempts
    Field Goals Average Yards
    Field Goals Blocked
    Field Goals Longest
    Field Goals Made
    Field Goals Yards
    First Downs Passing
    First Downs Penalty
    First Downs Rushing
    First Downs Total
    Fumbles End Zone Recovery Touchdowns
    Fumbles Force Fumbles
    Fumbles
    Fumbles Lost
    Fumbles Opponent Recovery
    Fumbles Opponent Recovery Touchdowns
    Fumbles Opponent Recovery Yards
    Fumbles Out of Bounds
    Fumbles Own Recovery
    Fumbles Own Recovery Touchdowns
    Fumbles Own Recovery Yards
    Games Played
    Interception Returns Average Yards
    Interception Returns Longest
    Interception Returns Returns
    Interception Returns Touchdowns
    Interception Returns Yards
    Interceptions
    Interceptions Return Yards
    Interceptions Returned
    Kick Returns Average Yards
    Kick Returns Fair Catches
    Kick Returns Longest
    Kick Returns Returns
    Kick Returns Touchdowns
    Kick Returns Yards
    Kickoffs End Zone
    Kickoffs Inside 20
    Kickoffs
    Kickoffs Onside Attempts
    Onside Successes
    Out of Bounds
    Kickoffs Return Yards
    Kickoffs Returned
    Kickoffs Squib Kicks
    Kickoffs Touchbacks
    Kickoffs Yards
    Passing Air Yards
    Passing Attempts
    Passing Average Yards
    Passing Batted Passes
    Passing Blitzes
    Passing Completion Percentage
    Passing Completions
    Passing Defended Passes
    Passing Dropped Passes
    Passing Gross Yards
    Passing Hurries
    Passing Interceptions
    Passing Knockdowns
    Passing Longest
    Passing Longest Touchdown
    Passing Net Yards
    Passing On Target Throws
    Passing Pocket Time
    Passing Rating
    Passing Red Zone Attempts
    Passing Sack Yards
    Passing Sacks
    Passing Spikes
    Passing Throw Aways
    Passing Touchdowns
    Passing Yards
    Punt Returns Average Yards
    Punt Returns Fair Catches
    Punt Returns Longest
    Punt Returns
    Punt Returns Touchdowns
    Punt Returns Yards
    Punts Attempts
    Punts Average Hang Time
    Punts Average Net Yards
    Punts Average Yards
    Punts Blocked
    Punts Hang Time
    Punts Inside 20
    Punts Longest
    Punts Net Yards
    Punts Return Yards
    Punts Touchbacks
    Punts Yards
    Receiving Air Yards
    Receiving Average Yards
    Receiving Broken Tackles
    Receiving Catchable Passes
    Receiving Dropped Passes
    Receiving Longest
    Receiving Longest Touchdown
    Receiving Receptions
    Receiving Red Zone Targets
    Receiving Targets
    Receiving Touchdowns
    Receiving Yards
    Receiving Yards After Catch
    Receiving Yards After Contact
    Rushing Attempts
    Rushing Average Yards
    Rushing Broken Tackles
    Rushing Kneel Downs
    Rushing Longest
    Rushing Longest Touchdown
    Rushing Red Zone Attempts
    Rushing Scrambles
    Rushing Tackles for Loss
    Rushing Tackles for Loss Yards
    Rushing Touchdowns
    Rushing Yards
    Touchdowns Fumble Return
    Touchdowns Interception Return
    Touchdowns Kick Return
    Touchdowns Other
    Touchdowns Pass
    Touchdowns Punt Return
    Touchdowns Rush
    Touchdowns Total
    Touchdowns Total Return
    Seasonal Player Statistics Data Points: Conversions Defense Attempts
    Conversions Defense Successes
    Conversions Pass Attempts
    Conversions Pass Successes
    Conversions Receiving Attempts
    Conversions Receiving Successes
    Conversions Rush Attempts
    Conversions Rush Successes
    Defense Assisted Tackles
    Defense Batted Passes
    Defense Blitzes
    Defense Combined Tackles
    Defensive Completions
    Defensive Targets
    Defense Forced Fumbles
    Defense Fumble Recoveries
    Defense Hurries
    Defense Interceptions
    Defense Knockdowns
    Defense Miscellaneous Assisted Tackles
    Defense Miscellaneous Forced Fumbles
    Defense Miscellaneous Fumble Recoveries
    Defense Miscellaneous Tackles
    Defense Missed Tackles
    Defense Passes Defended
    Defense QB Hits
    Defense Sack Yards
    Defense Sacks
    Defense Safeties
    Defense Special Teams Assisted Tackles
    Defense Special Teams Blocks
    Defense Special Teams Forced Fumbles
    Defense Special Teams Fumble Recoveries
    Defense Special Teams Tackles
    Defense Tackles
    Defense Tackles for Loss
    Defense Tackles for Loss Yards
    Extra Points Kicking Attempts
    Extra Points Kicking Blocked
    Extra Points Kicking Made
    Field Goals Attempts
    Field Goals Average Yards
    Field Goals Blocked
    Field Goals Longest
    Field Goals Made
    Field Goals Yards
    Fumbles End Zone Recovery Touchdowns
    Fumbles Force Fumbles
    Fumbles
    Fumbles Lost
    Fumbles Opponent Recovery
    Fumbles Opponent Recovery Touchdowns
    Fumbles Opponent Recovery Yards
    Fumbles Out of Bounds
    Fumbles Own Recovery
    Fumbles Own Recovery Touchdowns
    Fumbles Own Recovery Yards
    Games Played
    Games Started
    Interception Returns Average Yards
    Interception Returns Longest
    Interception Returns Returns
    Interception Returns Touchdowns
    Interception Returns Yards
    Kick Returns Average Yards
    Kick Returns Fair Catches
    Kick Returns Longest
    Kick Returns
    Kick Returns Touchdowns
    Kick Returns Yards
    Kickoffs End Zone
    Kickoffs Inside 20
    Kickoffs
    Kickoffs Onside Attempts
    Kickoffs Onside Successes
    Kickoffs Out of Bounds
    Kickoffs Return Yards
    Kickoffs Squib Kicks
    Kickoffs Touchbacks
    Kickoffs Yards
    Passing Air Yards
    Passing Attempts
    Passing Average Pocket Time
    Passing Average Yards
    Passing Batted Passes
    Passing Blitzes
    Passing Completion Percentage
    Passing Completions
    Passing Defended Passes
    Passing Dropped Passes
    Passing Gross Yards
    Passing Hurries
    Passing Interceptions
    Passing Knockdowns
    Passing Longest
    Passing Longest Touchdown
    Passing Net Yards
    Passing On Target Throws
    Passing Pocket Time
    Passing Rating
    Passing Red Zone Attempts
    Passing Sack Yards
    Passing Sacks
    Passing Spikes
    Passing Throw Aways
    Passing Touchdowns
    Passing Yards
    Penalties
    Penalties Yards
    Punt Returns Average Yards
    Punt Returns Fair Catches
    Punt Returns Longest
    Punt Returns Returns
    Punt Returns Touchdowns
    Punt Returns Yards
    Punts Attempts
    Punts Average Hang Time
    Punts Average Net Yards
    Punts Average Yards
    Punts Blocked
    Punts Hang Time
    Punts Inside 20
    Punts Longest
    Punts Net Yards
    Punts Return Yards
    Punts Touchbacks
    Punts Yards
    Receiving Air Yards
    Receiving Average Yards
    Receiving Broken Tackles
    Receiving Catchable Passes
    Receiving Dropped Passes
    Receiving Longest
    Receiving Longest Touchdown
    Receiving Receptions
    Receiving Red Zone Targets
    Receiving Targets
    Receiving Touchdowns
    Receiving Yards
    Receiving Yards After Catch
    Receiving Yards After Contact
    Rushing Attempts
    Rushing Average Yards
    Rushing Broken Tackles
    Rushing Kneel Downs
    Rushing Longest
    Rushing Longest Touchdown
    Rushing Red Zone Attempts
    Rushing Scrambles
    Rushing Tackles for Loss
    Rushing Tackles for Loss Yards
    Rushing Touchdowns
    Rushing Yards
    Rushing Yards After Contact
    Seasonal Team Statistics Data Points: Conversions Defense Attempts
    Conversions Defense Successes
    Conversions Pass Attempts
    Conversions Pass Successes
    Conversions Rush Attempts
    Conversions Rush Successes
    Conversions Turnover Successes
    Defense Assisted Tackles
    Defense Batted Passes
    Defense Blitzes
    Defense Combined Tackles
    Defense Combined Tackles
    Defensive Completions
    Defensive Targets
    Defense Forced Fumbles
    Defense Fumble Recoveries
    Defense Hurries
    Defense Interceptions
    Defense Knockdowns
    Defense Miscellaneous Assisted Tackles
    Defense Miscellaneous Forced Fumbles
    Defense Miscellaneous Fumble Recoveries
    Defense Miscellaneous Tackles
    Defense Missed Tackles
    Defense Passes Defended
    Defense QB Hits
    Defense Sack Yards
    Defense Sacks
    Defense Safeties
    Defense Special Teams Assisted Tackles
    Defense Special Teams Blocks
    Defense Special Teams Forced Fumbles
    Defense Special Teams Fumble Recoveries
    Defense Special Teams Tackles
    Tackles
    Defense Tackles for Loss
    Defense Tackles for Loss Yards
    Efficiency 3rd Down Attempts
    Efficiency 3rd Down Conversions
    Efficiency 3rd Down Percentage
    Efficiency 4th Down Attempts
    Efficiency 4th Down Conversions
    Efficiency 4th Down Percentage
    Efficiency Goal to Go Attempts
    Efficiency Goal to Go Conversions
    Efficiency Goal to Go Percentage
    Efficiency Red Zone Attempts
    Efficiency Red Zone Conversions
    Efficiency Red Zone Percentage
    Extra Points Kicking Attempts
    Extra Points Kicking Blocked
    Extra Points Kicking Made
    Field Goals Attempts
    Field Goals Average Yards
    Field Goals Blocked
    Field Goals Longest
    Field Goals Made
    Field Goals Yards
    First Downs Passing
    First Downs Penalty
    First Downs Rushing
    First Downs Total
    Fumbles End Zone Recovery Touchdowns
    Fumbles Force Fumbles
    Fumbles
    Fumbles Lost Fumbles
    Fumbles Opponent Recovery
    Fumbles Opponent Recovery Touchdowns
    Fumbles Opponent Recovery Yards
    Fumbles Out of Bounds
    Fumbles Own Recovery
    Fumbles Own Recovery Touchdowns
    Fumbles Own Recovery Yards
    Team Games Played
    Interception Returns Average Yards
    Interception Returns Longest
    Interception Returns
    Interception Returns Touchdowns
    Interception Returns Yards
    Interceptions
    Interceptions Return Yards
    Interceptions Returned
    Kick Returns Average Yards
    Kick Returns Fair Catches
    Kick Returns Longest
    Kick Returns
    Kick Returns Touchdowns
    Kick Returns Yards
    Kickoffs End Zone
    Kickoffs Inside 20
    Kickoffs
    Kickoffs Onside Attempts
    Kickoffs Onside Successes
    Kickoffs Out of Bounds
    Kickoffs Return Yards
    Kickoffs Returned
    Kickoffs Squib Kicks
    Kickoffs Touchbacks
    Kickoffs Yards
    Passing Air Yards
    Passing Attempts
    Passing Average Yards
    Passing Batted Passes
    Passing Blitzes
    Passing Completion Percentage
    Passing Completions
    Passing Defended Passes
    Passing Dropped Passes
    Passing Gross Yards
    Passing Hurries
    Passing Interceptions
    Passing Knockdowns
    Passing Longest
    Passing Longest Touchdown
    Passing Net Yards
    Passing On Target Throws
    Passing Pocket Time
    Passing Rating
    Passing Red Zone Attempts
    Passing Sack Yards
    Passing Sacks
    Passing Spikes
    Passing Throw Aways
    Passing Touchdowns
    Passing Yards
    Penalties
    Penalty Yards
    Punt Returns Average Yards
    Punt Returns Fair Catches
    Punt Returns Longest
    Punt Returns
    Punt Returns Touchdowns
    Punt Returns Yards
    Punts Attempts
    Punts Average Hang Time
    Punts Average Net Yards
    Punts Average Yards
    Punts Blocked
    Punts Hang Time
    Punts Inside 20
    Punts Longest
    Punts Net Yards
    Punts Return Yards
    Punts Touchbacks
    Punts Yards
    Receiving Air Yards
    Receiving Average Yards
    Receiving Broken Tackles
    Receiving Catchable Passes
    Receiving Dropped Passes
    Receiving Longest
    Receiving Longest Touchdown
    Receiving Receptions
    Receiving Red Zone Targets
    Receiving Targets
    Receiving Touchdowns
    Receiving Yards
    Receiving Yards After Catch
    Receiving Yards After Contact
    Rushing Attempts
    Rushing Average Yards
    Rushing Broken Tackles
    Rushing Kneel Downs
    Rushing Longest
    Rushing Longest Touchdown
    Rushing Red Zone Attempts
    Rushing Scrambles
    Rushing Tackles for Loss
    Rushing Tackles for Loss Yards
    Rushing Touchdowns
    Rushing Yards
    Touchdowns Fumble Return
    Touchdowns Interception Return
    Touchdowns Kick Return
    Touchdowns Other
    Touchdowns Pass
    Touchdowns Punt Return
    Touchdowns Rush
    Touchdowns Total
    Touchdowns Total Return
    Team Information Data Points: Alias
    Id
    Market
    Name
    SR Id
    > To generate the Seasonal Statistics for the Season, Year, and Game ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/seasons/2019/REG/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/statistics.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", "/nfl/official/trial/v5/en/seasons/2019/REG/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/statistics.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/nfl/official/trial/v5/en/seasons/2019/REG/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/statistics.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Seasonal Statistics feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/seasons/`{year}`/`{nfl_season}`/teams/`{team_id}`/statistics.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `year` | Year in 4 digit format (YYYY). | | `nfl_season` | Preseason (PRE), Regular Season (REG), or Post-Season (PST). | | `team_id` | ID of a given team. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Seasonal Statistics use the following URL. https://feed.elasticstats.com/schema/nfl/premium/statistics-v5.0.xsd Return to API map ## Seasons Provides a list of all available seasons, including preseasons and postseasons.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    League Information Data Points: Season End Date
    Season Id
    Season Start Date
    Season Status
    Season Type Code
    Season Year
    > To generate the list of Seasons replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/league/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", "/nfl/official/trial/v5/en/league/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.us/nfl/official/trial/v5/en/league/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.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/league/seasons.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Seasons use the following URL. https://feed.elasticstats.com/schema/nfl/premium/seasons-v5.0.xsd Return to API map ## Team Draft Summary Provides pre-draft pick order with live pick selections during the draft for a given team.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Draft Information Data Points: Broadcast Channel
    Broadcast Internet
    Broadcast Network
    Draft End Date
    Draft Id
    Draft Start Date
    Draft Status
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Year
    Pick Compensatory
    Pick Id
    Pick Number
    Pick Overall
    Pick Traded
    Round End Date
    Round Id
    Round Number
    Round Start Date
    Round Status
    Trade Id
    League Information Data Points: Alias Id Name
    Player Information Data Points: Prospect Birth Place
    Prospect Experience
    Prospect First Name
    Prospect Height
    Prospect Id
    Prospect Last Name
    Prospect League Id
    Prospect Name
    Prospect Position
    Prospect Publishable
    Prospect Source Id
    Prospect Top Prospect
    Prospect Weight
    Team Information Data Points: Alias
    Id
    Market
    Name
    Sequence
    Venue Information Data Points: Address
    City
    Country
    Name
    State
    > To generate a Team Draft Summary for the Team ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/v1/en/2019/teams/d5a2eb42-8065-4174-ab79-0a6fa820e35e/draft.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", "/draft/nfl/trial/v1/en/2019/teams/d5a2eb42-8065-4174-ab79-0a6fa820e35e/draft.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/draft/nfl/trial/v1/en/2019/teams/d5a2eb42-8065-4174-ab79-0a6fa820e35e/draft.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Team Draft Summary feed by replacing the parameters in the following URL: https://api.sportradar.us/draft/nfl/`{access_level}`/`{version}`/`{language_code}`/`{year}`/teams/`{team_id}`/draft.`{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 Draft API you are accessing (current version: v1). NOTE: All draft feeds are currently v1. | | `language_code` | 2 letter code for supported languages: en (English). | | `year` | Year in 4 digit format (YYYY). | | `team_id` | ID of a given team. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Team Draft Summary use the following URL. https://feed.elasticstats.com/schema/draft/summary-v1.0.xsd Return to API map ## Team Profile Provides franchise team information, as well as a roster of active players.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Franchise Information Data Points: Alias Id Name
    League Information Data Points: Conference Alias
    Conference Id
    Conference Name
    Division Alias
    Division Id
    Division Name
    Player Information Data Points: Abbreviated Name
    Birth Date
    Birth Place
    College
    College Conference
    Draft Info Number
    Draft Info Round
    Draft Info Year
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Team SR Id
    First Name
    Full Name
    Height
    High School
    Id
    Jersey Number
    Last Name
    Name Suffix
    Position
    Preferred Name
    SR Id
    Status
    Weight
    Team Information Data Points: Alias
    Coach First Name
    Coach Full Name
    Coach Id
    Coach Last Name
    Coach Name Suffix
    Coach Position
    Id
    Market
    Name
    SR Id
    Venue Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate a team profile for the Team ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/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", "/nfl/official/trial/v5/en/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/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.us/nfl/official/trial/v5/en/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/profile.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Team Profile feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/teams/`{team_id}`/profile.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `team_id` | ID of a given team. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Team Profile use the following URL. https://feed.elasticstats.com/schema/nfl/premium/team-v5.0.xsd Return to API map ## Team Roster Provides franchise team information, as well as the complete roster of players.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Franchise Information Data Points: Alias Id Name
    League Information Data Points: Conference Alias
    Conference Id
    Conference Name
    Division Alias
    Division Id
    Division Name
    Player Information Data Points: Abbreviated Name
    Birth Date
    Birth Place
    College
    College Conference
    Draft Info Number
    Draft Info Round
    Draft Info Year
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Team SR Id
    First Name
    Full Name
    Height
    High School
    Id
    Jersey Number
    Last Name
    Name Suffix
    Position
    Preferred Name
    SR Id
    Status
    Weight
    Team Information Data Points: Alias
    Coach First Name
    Coach Full Name
    Coach Id
    Coach Last Name
    Coach Name Suffix
    Coach Position
    Id
    Market
    Name
    SR Id
    Venue Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate a Team Roster for the Team ID below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/full_roster.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", "/nfl/official/trial/v5/en/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/full_roster.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/nfl/official/trial/v5/en/teams/0d855753-ea21-4953-89f9-0e20aff9eb73/full_roster.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Team Roster feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/teams/`{team_id}`/full_roster.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `team_id` | ID of a given team. | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Team Roster use the following URL. https://feed.elasticstats.com/schema/nfl/premium/team-v5.0.xsd Return to API map ## Top Prospects Provides a list of the top prospects for a given year.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Draft Information Data Points: Broadcast Channel
    Broadcast Internet
    Broadcast Network
    Draft End Date
    Draft Id
    Draft Start Date
    Draft Status
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Year
    League Information Data Points: Alias
    Conference Alias
    Conference Id
    Conference Name
    Division Alias
    Division Id
    Division Name
    Id
    Name
    Player Information Data Points: Prospect Birth Place
    Prospect Experience
    Prospect First Name
    Prospect Height
    Prospect Id
    Prospect Last Name
    Prospect League Id
    Prospect Name
    Prospect Position
    Prospect Publishable
    Prospect Source Id
    Prospect Top Prospect
    Prospect Weight
    Team Information Data Points: Alias
    Id
    Market Name
    Venue Information Data Points: Address
    City
    Country
    Name
    State
    > To generate the Top Prospects for the year below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/v1/en/2019/top_prospects.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", "/draft/nfl/trial/v1/en/2019/top_prospects.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/draft/nfl/trial/v1/en/2019/top_prospects.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Top Prospects feed by replacing the parameters in the following URL: https://api.sportradar.us/draft/nfl/`{access_level}`/`{version}`/`{language_code}`/`{year}`/top_prospects.`{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 Draft API you are accessing (current version: v1). NOTE: All draft feeds are currently v1. | | `language_code` | 2 letter code for supported languages: en (English). | | `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 Top Prospects use the following URL. https://feed.elasticstats.com/schema/draft/prospects-v1.0.xsd Return to API map ## Trades Provides summary details of all in-draft trades.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Draft Information Data Points: Broadcast Channel
    Broadcast Internet
    Broadcast Network
    Draft End Date
    Draft Id
    Draft Start Date
    Draft Status
    Draft Team Alias
    Draft Team Id
    Draft Team Market
    Draft Team Name
    Draft Year
    Future Pick Round
    Future Pick Year
    Item Amount
    Item Id
    Item Type
    Pick Compensatory
    Pick Id
    Pick Number
    Pick Overall
    Pick Supplemental
    Round End Date
    Round Id
    Round Number
    Round Start Date
    Trade Complete
    Trade Id
    Trade Sequence
    Transaction Id
    League Information Data Points: Alias Id Name
    Player Information Data Points: First Name
    Id
    Last Name
    Position
    Source Id
    SR Id
    Team Information Data Points: Alias
    Coach First Name
    Coach Id
    Coach Last Name
    Coach Source Id
    Team Direction
    Id
    Market
    Name
    Venue Information Data Points: Address
    City
    Country
    Name
    State
    > To generate the Trades for the year below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/v1/en/2019/trades.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", "/draft/nfl/trial/v1/en/2019/trades.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/draft/nfl/trial/v1/en/2019/trades.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Trades feed by replacing the parameters in the following URL: https://api.sportradar.us/draft/nfl/`{access_level}`/`{version}`/`{language_code}`/`{year}`/trades.`{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 Draft API you are accessing (current version: v1). NOTE: All draft feeds are currently v1. | | `language_code` | 2 letter code for supported languages: en (English). | | `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 Trades use the following URL. https://feed.elasticstats.com/schema/draft/trades-v1.0.xsd Return to API map ## Weekly Depth Charts Provides depth chart information for each team for a given week.
    Update Frequency: Updated shortly before the game, but may be updated during or post game.
    Content Type: Raw XML or JSON
    Depth Chart Data Points: Position Name Depth
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Player Data Points: Full Name
    Id
    Jersey Number
    Position
    SR Id
    Team Information Data Points: Alias
    Id
    Market
    Name
    SR Id
    > To generate the Weekly Depth Charts enter the Year, Season, Week below, and replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/seasons/2019/REG/02/depth_charts.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", "/nfl/official/trial/v5/en/seasons/2019/REG/02/depth_charts.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/nfl/official/trial/v5/en/seasons/2019/REG/02/depth_charts.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Weekly Depth Charts feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/seasons/`{year}`/`{nfl_season}`/`{nfl_season_week}`/depth_charts.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `year` | Year in 4 digit format (YYYY). | | `nfl_season` | Preseason (PRE), Regular Season (REG), or Post-Season (PST). | | `nfl_season_week` | The number of weeks into the season in 2 digit format (WW). | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Weekly Depth Charts use the following URL. https://feed.elasticstats.com/schema/nfl/premium/depth_charts-v5.0.xsd Return to API map ## Weekly Injuries Provides a list of injured players for each team for a given week, including practice status.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Injury Data Points: Status
    Status Date
    Practice Status Description
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Player Data Points: Full Name
    Id
    Jersey Number
    Position
    SR Id
    Team Information Data Points: Alias
    Id
    Market
    Name
    SR Id
    > To generate the Weekly Injuries enter the Year, Season, Week below, and replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/seasons/2019/REG/02/injuries.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", "/nfl/official/trial/v5/en/seasons/2019/REG/02/injuries.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/nfl/official/trial/v5/en/seasons/2019/REG/02/injuries.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Weekly Injuries feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/seasons/`{year}`/`{nfl_season}`/`{nfl_season_week}`/injuries.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `year` | Year in 4 digit format (YYYY). | | `nfl_season` | Preseason (PRE), Regular Season (REG), or Post-Season (PST). | | `nfl_season_week` | The number of weeks into the season in 2 digit format (WW). | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Weekly Injuries use the following URL. https://feed.elasticstats.com/schema/nfl/premium/injuries-v5.0.xsd Return to API map ## Weekly Schedule Provides complete schedule information for a given week of the season, including venue, weather conditions, broadcast info, and scoring results by quarter.
    Update Frequency: As Necessary
    Content Type: Raw XML or JSON
    Boxscore Information Data Points: Attendance
    Away Team Overtime Points
    Away Team Points for Quarter
    Away Team Total Points
    Home Team Overtime Points
    Home Team Points for Quarter
    Home Team Total Points
    Overtime Id
    Overtime Number
    Overtime Sequence
    Quarter Id
    Quarter Number
    Quarter Sequence
    Game Information Data Points: Away Team Alias
    Away Team Full Name
    Away Team Game Number
    Away Team Id
    Away Team Name
    Away Team SR Id
    Broadcast Internet
    Broadcast Network
    Broadcast Satellite
    Entry Mode
    Home Team Alias
    Home Team Full Name
    Home Team Game Number
    Home Team Id
    Home Team Name
    Home Team SR Id
    Id
    Number
    Scheduled Start Date/Time
    SR Id
    Status
    Weather
    League Information Data Points: Season Id
    Season Name
    Season Type
    Season Year
    Week Id
    Week Sequence
    Week Title
    Venue Data Points: Address
    Capacity
    City
    Country
    Id
    Name
    Roof Type
    SR Id
    State
    Surface
    Zip
    > To generate the Weekly Schedule for the Year, Season, and Week below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/v5/en/games/2019/REG/02/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", "/nfl/official/trial/v5/en/games/2019/REG/02/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/nfl/official/trial/v5/en/games/2019/REG/02/schedule.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Weekly Schedule feed by replacing the parameters in the following URL: https://api.sportradar.us/nfl/official/`{access_level}`/`{version}`/`{language_code}`/games/`{year}`/`{nfl_season}`/`{nfl_season_week}`/schedule.`{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: v5). | | `language_code` | 2 letter code for supported languages: en (English), de (German), fr (French), it (Italian), es (Spanish), ja (Japanese), nl (Dutch), da (Danish), se (Swedish), no (Norwegian), fi (Finnish), or tr (Turkish). | | `year` | Year in 4 digit format (YYYY). | | `nfl_season` | Preseason (PRE), Regular Season (REG), or Post-Season (PST). | | `nfl_season_week` | The number of weeks into the season in 2 digit format (WW). | | `format` | xml or json. | | `your_api_key` | Your API key. | To retrieve the XML Schema Definition (.XSD) for the Weekly Schedule use the following URL. https://feed.elasticstats.com/schema/nfl/premium/schedule-v5.0.xsd Return to API map ## Push Feeds >To best utilize Push feeds, we have included code samples in Ruby, Java and Python which provide an example of a way you can consume the feeds. Using these samples will output the feeds content to STDOUT.
    For Java, we have also provided a Stream Client to assist your integration.

    Note: In the provided Java sample, replace "URL GOES HERE" with the desired Push feed URL. ```ruby require 'httpclient' module Sportradar module HTTP module Stream class Client attr_reader :url, :logger def initialize(url, publisher, logger) @url = url @logger = logger @publisher = publisher @client = ::HTTPClient.new(:agent_name => 'SportsData/1.0') end def start @thread ||= Thread.new do logger.debug "Starting loop" @client.get_content(url, :follow_redirect => true) do |chunk| @publisher.publish(::JSON.parse(chunk)) if @publisher end logger.debug "finished loop" end end def stop @thread.terminate if @thread end end end end end ``` ```java package com.sportradar.http.stream.client; import org.junit.After; import org.junit.Before; import org.junit.Test; public class StreamClientTest { private StreamClient client; private static String SERVICE_URL = ""; @Before public void setup() { client = new StreamClient(); } @After public void cleanup() { client.terminate(); } @Test public void testStream() throws Exception { Handler handler = new ConsoleHandler(); client.stream(SERVICE_URL, handler); System.out.println("Connecting...."); Thread.sleep(1 * 60 * 1000); System.out.println("Disconnecting...."); } } ``` Some of our APIs include Push feeds that allow you to get updates as soon as they are available. Push API feeds automatically send JSON payload to you via a push service, and can dramatically reduce the number of calls you need to make to our RESTful API feeds. The structure of the Push feeds are similar to the structure of the corresponding RESTful API feed (i.e. Push Events and Push Statistics). The push service ensures reliable and efficient delivery of the most up to date information. Our Push services are based on a HTTP publish/subscribe model. When making a call to the Push APIs, you "subscribe" to various data feeds provided by our service; whenever new content is available on one of those feeds, the server pushes that information out to your client. When no new information is available on the feed, a heartbeat message is sent every 5 seconds to keep the connection active. If you want to filter the results of the feeds, there are several optional query string parameters that can be applied to the API call. If left unfiltered, than all data for the feed is displayed (i.e. all games, events, or statistics). For your applications to accept data from our Push feeds, ensure that your application can: * Can follow a HTTP redirect or use the location provided in the feeds header within one minute of your initial request. * Can accept HTTP data transfer encoded as chunked. Our Push service does not provide a "stateful session", there is no memory of what data has been sent previously. If you are disconnected from the Push session, you can use the RESTful API to catch up or recover from the disconnection. Syntax for using our Push feeds and examples of the JSON payloads can be found below. ## Push Draft Picks ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/stream/en/picks/subscribe?api_key={your_api_key}") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body ``` ```python import requests import json r = requests.get("https://api.sportradar.com/draft/nfl/trial/stream/en/picks/subscribe", params = {'api_key': 'your_api_key'}, allow_redirects=False) redirect_url = r.headers['Location'] r = requests.get(redirect_url, stream=True) for line in r.iter_lines(): # filter out keep-alive new lines if line: decoded_line = line.decode('utf-8') print(json.loads(decoded_line)) ``` ```shell curl -L GET 'api.sportradar.us/draft/nfl/trial/stream/en/picks/subscribe?api_key={your_api_key}' ``` > The above command returns json like this. Provides pre-draft pick order with real-time (push enabled) pick selections during the draft. https://api.sportradar.us/draft/nfl/`{access_level}`/stream/en/picks/subscribe?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). | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/stream/en/picks/subscribe?api_key={your_api_key}&draft=sd:draft:04b11293-240e-4340-8f4f-ded6c6281fe9&league=NFL") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body ``` ```python import requests import json r = requests.get("https://api.sportradar.com/draft/nfl/trial/stream/en/picks/subscribe", params = {'api_key': 'your_api_key', 'draft': 'sd:draft:04b11293-240e-4340-8f4f-ded6c6281fe9', 'league': 'NFL'}, allow_redirects=False) redirect_url = r.headers['Location'] r = requests.get(redirect_url, stream=True) for line in r.iter_lines(): # filter out keep-alive new lines if line: decoded_line = line.decode('utf-8') print(json.loads(decoded_line)) ``` ```shell curl -L GET 'api.sportradar.us/draft/nfl/trial/stream/en/picks/subscribe?api_key={your_api_key}&draft=sd:draft:04b11293-240e-4340-8f4f-ded6c6281fe9&league=NFL' ``` In addition to the URL parameters listed above, you can filter the Pick information with one or more of the following optional query string parameters.
    Note: Optional query string parameters must be added after your API key with an ampersand (&). If you are filtering for more than one result, separate the results with a comma (,) and no spaces.
    Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `draft` | Draft id expressed as: sd:draft:{draft_id}.
    Example: draft=sd:draft:04b11293-240e-4340-8f4f-ded6c6281fe9 | Return to API map ## Push Draft Trades ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/stream/en/trades/subscribe?api_key={your_api_key}") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body ``` ```python import requests import json r = requests.get("https://api.sportradar.com/draft/nfl/trial/stream/en/trades/subscribe", params = {'api_key': 'your_api_key'}, allow_redirects=False) redirect_url = r.headers['Location'] r = requests.get(redirect_url, stream=True) for line in r.iter_lines(): # filter out keep-alive new lines if line: decoded_line = line.decode('utf-8') print(json.loads(decoded_line)) ``` ```shell curl -L GET 'api.sportradar.us/draft/nfl/trial/stream/en/trades/subscribe?api_key={your_api_key}' ``` > The above command returns json like this. Provides summary details of all in-draft trades in real-time. https://api.sportradar.us/draft/nfl/`{access_level}`/stream/en/trades/subscribe?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). | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/draft/nfl/trial/stream/en/trades/subscribe?api_key={your_api_key}&draft=sd:draft:04b11293-240e-4340-8f4f-ded6c6281fe9&league=NFL") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body ``` ```python import requests import json r = requests.get("https://api.sportradar.com/draft/nfl/trial/stream/en/trades/subscribe", params = {'api_key': 'your_api_key', 'draft': 'sd:draft:04b11293-240e-4340-8f4f-ded6c6281fe9', 'league': 'NFL'}, allow_redirects=False) redirect_url = r.headers['Location'] r = requests.get(redirect_url, stream=True) for line in r.iter_lines(): # filter out keep-alive new lines if line: decoded_line = line.decode('utf-8') print(json.loads(decoded_line)) ``` ```shell curl -L GET 'api.sportradar.us/draft/nfl/trial/stream/en/trades/subscribe?api_key={your_api_key}&draft=sd:draft:04b11293-240e-4340-8f4f-ded6c6281fe9&league=NFL' ``` In addition to the URL parameters listed above, you can filter the Trades information with one or more of the following optional query string parameters.
    Note: Optional query string parameters must be added after your API key with an ampersand (&). If you are filtering for more than one result, separate the results with a comma (,) and no spaces.
    Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `draft` | Draft id expressed as: sd:draft:{draft_id}.
    Example: draft=sd:draft:04b11293-240e-4340-8f4f-ded6c6281fe9 | Return to API map ## Push Events ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/stream/en/events/subscribe?api_key={your_api_key}") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body ``` ```python import requests import json r = requests.get("https://api.sportradar.com/nfl/official/trial/stream/en/events/subscribe", params = {'api_key': 'your_api_key'}, allow_redirects=False) redirect_url = r.headers['Location'] r = requests.get(redirect_url, stream=True) for line in r.iter_lines(): # filter out keep-alive new lines if line: decoded_line = line.decode('utf-8') print(json.loads(decoded_line)) ``` ```shell curl -L GET 'api.sportradar.us/nfl/official/trial/stream/en/events/subscribe?api_key={your_api_key}' ``` > The above command returns json like this. Provides detailed, real-time information on every live game event. https://api.sportradar.us/nfl/official/`{access_level}`/stream/`{language_code}`/events/subscribe?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). | | `language_code` | Optional code for supported languages: en (English) or translations (Any other language translations. See optional query string parameters for locale.) | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/stream/en/events/subscribe?api_key={your_api_key}&status=inprogress&match=sd:match:673b459c-7506-4c11-9273-1b9502537f1d") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body ``` ```python import requests import json r = requests.get("https://api.sportradar.com/nfl/official/trial/stream/en/events/subscribe", params = {'api_key': 'your_api_key', 'status': 'inprogress', 'match': 'sd:match:673b459c-7506-4c11-9273-1b9502537f1d'}, allow_redirects=False) redirect_url = r.headers['Location'] r = requests.get(redirect_url, stream=True) for line in r.iter_lines(): # filter out keep-alive new lines if line: decoded_line = line.decode('utf-8') print(json.loads(decoded_line)) ``` ```shell curl -L GET 'api.sportradar.us/nfl/official/trial/stream/en/events/subscribe?api_key={your_api_key}&status=inprogress&match=sd:match:673b459c-7506-4c11-9273-1b9502537f1d' ``` In addition to the URL parameters listed above, you can filter the Events information with one or more of the following optional query string parameters.
    Note: Optional query string parameters must be added after your API key with an ampersand (&). If you are filtering for more than one result, separate the results with a comma (,) and no spaces.
    Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `event_category` | Event category expressed as: {event_category}.
    Example: event_category=redzone
    Valid event categories: redzone, two_minute, scoring_play, big_play, turnover | | `event_type` | Event type expressed as: {event_type}.
    Example: event_type=timeout
    Valid event types: setup, timeout, tv_timeout, two_minute_warning, comment, period_end, game_over | | `locale` | Locale expressed as 2 letter code: locale={language_code}
    Example: locale:en | | `match` | Match id expressed as: sd:match:{match_id}.
    Example: sd:match:673b459c-7506-4c11-9273-1b9502537f1d | | `status` | Status type expressed as: inprogress or created.
    Example: status=inprogress | | `team` | Team id expressed as: sd:team:{team_id}.
    Example: sd:team:4415b0a7-0f24-11e2-8525-18a905767e44 | Return to API map ## Push Statistics ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/stream/en/statistics/subscribe?api_key={your_api_key}") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body ``` ```python import requests import json r = requests.get("https://api.sportradar.com/nfl/official/trial/stream/en/statistics/subscribe", params = {'api_key': 'your_api_key'}, allow_redirects=False) redirect_url = r.headers['Location'] r = requests.get(redirect_url, stream=True) for line in r.iter_lines(): # filter out keep-alive new lines if line: decoded_line = line.decode('utf-8') print(json.loads(decoded_line)) ``` ```shell curl -L GET 'api.sportradar.us/nfl/official/trial/stream/en/statistics/subscribe?api_key={your_api_key}' ``` > The above command returns json like this. Provides detailed, real-time game stats at the team and player level for all live games. https://api.sportradar.us/nfl/official/`{access_level}`/stream/`{language_code}`/statistics/subscribe?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). | | `language_code` | Optional code for supported languages: en (English) or translations (Any other language translations. See optional query string parameters for locale.) | | `your_api_key` | Your API key. | ### Optional Query String Parameters >Example including optional query string parameters: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/nfl/official/trial/stream/en/statistics/subscribe?api_key={your_api_key}&status=inprogress&match=sd:match:673b459c-7506-4c11-9273-1b9502537f1d") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body ``` ```python import requests import json r = requests.get("https://api.sportradar.com/nfl/official/trial/stream/en/statistics/subscribe", params = {'api_key': 'your_api_key', 'status': 'inprogress', 'match': 'match=sd:match:673b459c-7506-4c11-9273-1b9502537f1d'}, allow_redirects=False) redirect_url = r.headers['Location'] r = requests.get(redirect_url, stream=True) for line in r.iter_lines(): # filter out keep-alive new lines if line: decoded_line = line.decode('utf-8') print(json.loads(decoded_line)) ``` ```shell curl -L GET 'api.sportradar.us/nfl/official/trial/stream/en/statistics/subscribe?api_key={your_api_key}&status=inprogress&match=sd:match:673b459c-7506-4c11-9273-1b9502537f1d' ``` In addition to the URL parameters listed above, you can filter the Statistics information with one or more of the following optional query string parameters.
    Note: Optional query string parameters must be added after your API key with an ampersand (&). If you are filtering for more than one result, separate the results with a comma (,) and no spaces.
    Replace placeholders with the following query parameters: | Parameter | Description | | --------- | ----------- | | `locale` | Locale expressed as 2 letter code: locale={language_code}
    Example: locale:en | | `match` | Match id expressed as: sd:match:{match_id}.
    Example: sd:match:4d1c4eb9-69d4-46fc-a42b-12be98227964 | | `participant` | Team or player id expressed as: sd:team:{team_id} or sd:player:{player_id} Examples: sd:team:82cf9565-6eb9-4f01-bdbd-5aa0d472fcd9 or sd:player:e3181493-6a2a-4e95-aa6f-3fc1ddeb7512 | | `status` | Status type expressed as: inprogress or created.
    Example: status=inprogress | Return to API map ## 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: When are the game scores added to the Schedule feeds?

    A: Game and period scores will be added to the feed when the game status changes to complete.

    Q: What are the season types and their descriptions?

    A: Here are the valid season types and their descriptions:

    • PRE – Pre-season
    • REG – Regular season
    • PST – Post-season

    Q: What are the player positions I can expect to see?

    A: Below is a list of player positions that appear in our feeds and their descriptions. Note that additional decommissioned positions may appear in older seasons.

    • C - Center
    • CB - Cornerback
    • DB - Defensive Back
    • DE - Defensive End
    • DL - Defensive Lineman
    • DT - Defensive Tackle
    • FB - Fullback
    • FS - Free Safety
    • G - Offensive Guard
    • K - Kicker
    • LB - Linebacker
    • LS - Long Snapper
    • MLB - Middle Linebacker
    • NT - Nose Tackle
    • OG - Offensive Guard
    • OL - Offensive Lineman
    • OLB - Outside Linebacker
    • OT - Offensive Tackle
    • P - Punter
    • QB - Quarterback
    • RB - Running Back
    • SAF - Safety
    • SS - Strong Safety
    • T - Offensive Tackle
    • TE - Tight End
    • WR - Wide Receiver

    Q: How are player positions handled in the feeds?

    A: Players may receive a “game” position, that position may not match the position listed on the player’s profile outside the game.

    Q: What are the player statuses and their descriptions?

    A: Below is a list of the currently valid player statuses and their descriptions. Note that additional decommissioned statuses may appear in older seasons.

    • ACT - Active
    • DUP - Duplicate player profile. All profiles marked as duplicates can be ignored.
    • EXE - Exempt
    • IR - Injured Reserve
    • IRD - Injured Reserve - Designated for Return
    • NON - Non-football related injured reserve
    • NWT - Not with team
    • PRA - Practice Squad
    • PRA_IR - Practice Squad Injured Reserve
    • PUP - Physically unable to perform
    • RET - Retired
    • SUS - Suspended
    • UDF - Unsigned draft pick

    Q: What are the player game statuses and when can I expect them to populate?

    A: Below is a list of currently valid player game statuses.

    • deactivated
    • dnp (Did Not Play)
    • played
    • started

    These player game statuses will appear within the Game Roster feed exclusively. When a game is set to created all players are marked as played. At the conclusion of the game players are adjusted to deactivated,dnp, and played as necessary.

    Q: What are the venue roof types I can expect to see?

    A: Here are the valid roof types: outdoor, dome, or retractable_dome

    Q: What are the venue surfaces I can expect to see?

    A: Here are the valid venue surfaces: turf or artifical

    Q: What are the game statuses and their descriptions?

    A: Here are the valid game statuses and their descriptions:

    • scheduled – The game is scheduled to occur.
    • created – Game data (rosters, officials, etc) are being pre-loaded in preparation for the game.
    • inprogress – The game is in progress.
    • halftime – The game is currently at halftime.
    • complete – The game is over, but stat validation is not complete.
    • closed – The game is over and the stats have been validated.
    • cancelled – The game has been cancelled. No makeup game will be played as a result.
    • postponed – The game has been postponed, to be made up at another day and time. Once the makeup game is announced, a new game and ID will be created and scheduled on the announced makeup date. You should request the scheduled feed(s) regularly to identify the re-scheduled makeup game(s).
    • delayed – The scheduled game, or a game that was in progress, is now delayed for some reason.
    • suspended – The game has been suspended and will be rescheduled in the future, continuing where they left off. The game ID will remain the same.
    • flex-schedule – The game is currently scheduled to occur on a specific date and time, however, it will more than likely be moved to a different time for broadcast purposes.
    • time-tbd – The game has been scheduled, but a time has yet to be announced.

    Q: What are the start and end reasons for a drive that I can expect to see in the feeds?

    A: Here are the end reasons for a drive:

    • UNKNOWN – Start/End
    • Touchdown – Start/End
    • Safety – End
    • Field Goal – Start/End
    • Missed FG – Start/End
    • Blocked FG – Start/End
    • Blocked FG, Downs – Start/End
    • Blocked FG, Safety – End
    • Punt – Start/End
    • Blocked Punt – Start/End
    • Blocked Punt, Downs – Start/End
    • Blocked Punt, Safety – End
    • Downs – Start/End
    • Interception – Start/End
    • Fumble – Start/End
    • Fumble, Safety - End
    • Missed FG – End
    • Muffed FG – Start/End
    • Muffed Punt – Start
    • Muffed Kickoff – Start
    • Kickoff – Start
    • Own Kickoff – Start
    • Onside Kick – Start
    • Kickoff, No Play – Start
    • End of Half – End
    • End of Game – End

    Q: What are the event types I can expect to see in the feeds?

    A: Here are the valid event types:

    • setup
    • timeout
    • comment
    • period_end
    • game_over

    Q: What are the play types I can expect to see in the feeds?

    A: Here are the valid play types:

    • pass
    • rush
    • faircatch_kick
    • extra_point
    • conversion
    • free_kick
    • kickoff
    • punt
    • field_goal
    • penalty

    Q: What are the point after score types I can expect to see in the feeds?

    A: Here are the valid score types:

    • extra_point
    • conversion
    • penalty

    Q: What are the possible official assignments I can expect to see in the feeds?

    A: Here are the valid official assignments:

    • referee
    • umpire
    • headlinesman
    • linejudge
    • fieldjudge
    • sidejudge
    • backjudge
    • downjudge
    • replayofficial

    Q: How are assisted sacks calculated in the feeds?

    A: Assisted sacks are credited when two player sack the quarterback. We provide this in the play-by-play feed and game boxscore as an integer. Those sacks are rolled up into the sacks stat and can be a float, so if a player had 3 ast_sacks and 2 sacks in a game his game-level sack number would be 3.5.

    Q: What are the possible injury status values I can expect to see in the feeds?

    A: Here are the valid injury status values:

    • Questionable - The player has a 50/50 chance to play
    • Doubtful - The player is very unlikely to play
    • Out - The player will not play

    Q: What are the possible detail categories I can expect to see in the feeds?

    A: Here are the valid detail categories:

    • aborted_snap
    • aborted_snap_recovery
    • blocked_kick
    • blocked_kick_recovery
    • defensive_conversion_fumble_recovery
    • defensive_conversion_interception_recovery
    • defensive_conversion_recovery
    • downed
    • extra_point_attempt
    • fair_catch
    • field_goal
    • field_goal_return
    • forced_fumble
    • fumble
    • fumble_out_of_bounds
    • kick_off
    • kick_off_return
    • lateral
    • muffed_kick
    • onside_kick_off
    • onside_kick_off_recovery
    • opponent_fumble_recovery
    • out_of_bounds
    • own_fumble_recovery
    • pass_completion
    • pass_incompletion
    • pass_interception
    • pass_interception_return
    • pass_reception
    • penalty
    • punt
    • punt_return
    • review
    • rush
    • sack
    • safety
    • tackle
    • touchback
    • touchdown
    • two_point_attempt
    • two_point_pass
    • two_point_return
    • two_point_rush

    Q: What are subjective stats and how are they handled?

    A: Subjective stats are variety of data points that go beyond typical stats like yards, pass attempts, and touchdowns. Due to how the data is collected, it requires an operator to re-watch the game, thus there is a delay on when it is provided in the feeds. 

    These data points are delivered the following Tuesday by the end of the day (6:00 pm ET) and will show up in the existing NFL API feeds. The data is available in both XML and JSON feed formats. As the demand rises for additional data points we will continue to refine the data set collected.

    Q: Which statistics are subjective?

    A: Here are the valid subjective statistics:

    • Batted Passes
    • Broken Tackles
    • Catchable Pass
    • Defender Blitz
    • Defensive Completion
    • Defensive Target
    • Dropped Pass
    • Fake Field Goal
    • Fake Punt
    • Hang Time
    • Hash Mark
    • Huddle
    • Hurry
    • Incompletion Type
    • Kneel down
    • Knockdown
    • Left Tightends
    • Men in Box
    • Missed Tackle
    • On Target Throws
    • Onside Attempt
    • Onside Success
    • Pass Route
    • Play Action
    • Play Direction
    • Players Rushed
    • Pocket Location
    • Pocket Time
    • QB at Snap
    • QB Blitz
    • QB Hurry
    • QB Knockdown
    • Right Tightends
    • Run Pass Option
    • Running Lane
    • Scramble
    • Screen Pass
    • TE Location
    • Team Blitz
    • Yards After Contact

    Q: When can I expect NFL draftees to populate in the Prospects endpoint?

    A: Prospects are typically added in mid to late March, after the draft order is determined by the NFL.

    Q: How is the data within the Draft feeds populated?

    A: Sportradar’s experts seed players from our NCAA database. We use a variety of sources to generate a comprehensive list of players who expect to be drafted. The list is typically 500+ players.

    Q: How is an NFL prospect specified as a top prospect?

    A: Top prospects are subjective. We use the same sources for top prospects as we do when creating the initial draft pool.

    Return to top

    Docs Navigation