USFL v7

Key Updates & USFL RulesFrequently Asked Questions
Quick Access
Postman Collection XSD Schema
Download
## USFL API Overview Sportradar’s USFL API offers a comprehensive suite of game and seasonal stats. Whether you are looking for the fastest gameday updates or your favorite player’s season stats, Sportradar has you covered. All game data feeds update in real-time as games are played and are compiled via expert Sportradar in-house operators. All USFL games feature full play-by-play coverage. Primary feeds will return schedules, standings, team/player data, and real-time scores. Additional feeds provide a host of complimentary stats, including:
  • Team rosters
  • Standings
  • Depth charts
  • Weekly injuries
  • Seasonal statistics
Real-time customers are also offered two delivery Push Feeds to enhance speed.
API API Version
USFL v7
Note: Authentication is required for all API calls.
## Key Updates and USFL Rules >

3-Point Samples

3-Point Attempt Fail 3-Point Attempt Success Play-by-Play with 3-Point Conversions Game Statistics with 3-Point Conversions Season Statistics with 3-Point Conversions >

Alternative Kickoff Samples

Alternative Kickoff Fail Alternative Kickoff Success >

Overtime Shootout Play-by-Play Sample

Overtime Shootout Our USFL API features the same architecture, endpoints, and attributes as our NFL and NCAA Football offerings, allowing for a smooth integration. However, there are a handful of unique USFL rules that will differentiate this product. Please reference this section for rule information and samples to aid your development. Note that samples do not feature USFL teams or players.

USFL Rule Updates

  • Kickoffs will be from the 25-yard line.
  • Each coach will get only one challenge.
  • A team may attempt a 4th and 12 play from their 33-yard line as an alternative to a kickoff or an onside kick attempt. If successful in making a first down, they will keep the ball.
  • Extra point attempts will be 1 point for a kick try snapped from the 15-yard line, 2 points for a scrimmage play snapped from the 2-yard line, and 3 points for a scrimmage play snapped from the 10-yard line.
  • Overtime will be a best of three-play shootout, with teams running alternating 2-point conversion plays from the 2-yard line. If the score is still tied after three plays, subsequent plays will be sudden death until there is a winner.
## USFL v7 API Map To best utilize the USFL API v7, you will need several parameters to create your API calls. The map below illustrates how you can obtain the parameters you need. >

Example:

>To find 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. ## 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
Season Id SR Id
League Information Data Points: Alias
Change Log End Time
Change Log Start Time
Id
Name
Season Id
Player Information Data Points: Full Name Id Last Modified
Team Information Data Points: Alias
Id
Last Modified
Market
Name
SR Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/usfl/trial/v7/en/league/2022/04/01/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", "/usfl/trial/v7/en/league/2022/04/01/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/usfl/trial/v7/en/league/2022/04/01/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `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. | Return to top ## 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 Overtime Points
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 Overtime Points
Home Team Points for Quarter
Home Team Timeouts Remaining
Home Team Timeouts Used
Home Team Total Points
Last Event Clock
Last Event Created At
Last Event Deleted
Last Event Description
Last Event Id
Last Event Sequence
Last Event Type
Last Event Updated At
Last Event Wall Clock
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
Coverage
Duration
Entry Mode
Home Team Alias
Home Team Id
Home Team Market
Home Team Name
Home Team SR Id
Game Id
Game Scheduled Start Date/Time
Game Title
Game Type
Neutral Site
SR Id
Status
Weather Condition
Weather - Humidity
Weather - Temp
Wind Direction
Wind Speed
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 First Touch
Detail No Attempt
Detail Onside
Detail Penalty - Description
Detail Penalty - No Play
Detail Penalty - Result
Detail Penalty - Safety
Detail Penalty - Yards
Detail Reason Missed
Detail Result
Detail - Sack Split
Detail Sequence
Detail Start Location - Team Alias
Detail Start Location - Yardline
Detail Yards
Drive Created At
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
Drive Updated At
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 SR Id
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 - Possession - Team SR Id
Ending Situation - Yards to First Down
Event Clock
Event Created At
Event Description
Event Id
Event Sequence
Event Type
Event Updated At
Play Away Points
Play Clock
Play Created At
Play Description
Play Home Points
Play Id
Play Play Direction
Play Scoring Play
Play Sequence
Play Type
Play Updated At
Play Wall Clock
Points After - Play Id
Points After - Score Type
Points After - Sequence
Quarter Id
Quarter Number
Quarter 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 SR Id
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 - Possession - Team SR Id
Starting Situation Yards to First Down
Play Statistics Data Points: Block Category
Blocks
Conversion Attempt
Conversion Category
Conversion Complete
Coversion of Safety
Defense Assisted Sacks
Defense Assisted Tackles
Defense Assisted Tackles for Loss
Defense Block
Defense Category
Defense Coversion Attempt
Defense Conversion Category
Defense Conversion Complete
Defense Forced Fumble
Defense Interception
Defense Interception Touchdown
Defense Interception Yards
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 Attempt
Extra Point Blocked
Extra Point Made
Extra Point Missed
Extra Point Returned
Extra Point Safety
Field Goal Attempt
Field Goal Attempt Yards
Field Goal Blocked
Field Goal Made
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 Touchback
Kickoffs Yards
Passing Attempt
Passing Attempt Yards
Passing Completion
Passing First Down
Passing Goal to Go
Passing Inside 20
Passing Interception
Passing Interception Touchdown
Passing Nullified
Passing Sack
Passing Sack Yards
Passing Safety
Passing Touchdown
Passing Yards
Penalties Penalty
Penalties Yards
Punting Attempt
Punting Blocked
Punting Downed
Punting Endzone
Punting Fair Catch
Punting Inside 20
Punting Nullified
Punting Out of Bounds
Punting Touchback
Punting Yards
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
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 First Down
Rushing Goal to Go
Rushing Inside 20
Rushing Lateral
Rushing Nullified
Rushing Safety
Rushing Tackle for Loss
Rushing Tackle for Loss Yards
Rushing Touchdown
Rushing Yards
Player Information Data Points: Full Name
Id
Jersey Number
Position
Role
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 replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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", "/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `game_id` | ID for a given game. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## 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
Officials Assignment
Officials Full Name
Officials Number
Quarter
Draft Information Data Points: Draft Number
Draft Round
Draft Team Alias
Draft Team Id
Draft Team Market
Draft Team Name
Draft Year
Game Information Data Points: Away Team Alias
Away Team Id
Away Team Market
Away Team Name
Away Team SR Id
Coverage
Duration
Entry Mode
Game Id
Game Scheduled Start Date/Time
Game Statust
Game Title
Game Type
Home Team Alias
Home Team Id
Home Team Market
Home Team Name
Home Team SR Id
Neutral Site
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 Team Alias
Draft Team Id
Draft Team Market
Draft Team Name
Draft Year
First Name
Full Name
Height
High School
Id
Jersey Number
Last Name
Name Suffix
Position
Preferred Name
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 Information Data Points: Address
Capacity
City
Country
Id
Name
Roof Type
SR Id
State
Surface
Zip
> To generate the Game Roster replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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", "/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `game_id` | ID for a given game. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## 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
Duration
Entry Mode
Home Team Alias
Home Team Id
Home Team Market
Home Team Name
Home Team SR Id
Game Id
Game Scheduled Start Date/Time
SR Id
Status
Weather - Condition
Weather - Humidity
Weather - Temperature
Wind Direction
Wind Speed
Player Game Statistics Data Points: Conversions Attempts
Conversion Category
Conversion Successes
Defense Assisted Tackles
Defense Combined Tackles
Defense Forced Fumbles
Defense Fumble Recoveries
Defense Interceptions
Defense Miscellaneous Assisted Tackles
Defense Miscellaneous Forced Fumbles
Defense Miscellaneous Fumble Recoveries
Defense Miscellaneous 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
Extra Points Kicking Missed
Extra Points Kicking Percent
Field Goals Attempts
Field Goals Attempts 1-19 Yards
Field Goals Attempts 20-29 Yards
Field Goals Attempts 30-39 Yards
Field Goals Attempts 40-49 Yards
Field Goals Attempts 50+ Yards
Field Goals Average Yards
Field Goals Blocked
Field Goals Longest
Field Goals Made
Field Goals Made 1-19 Yards
Field Goals Made 20-29 Yards
Field Goals Made 30-39 Yards
Field Goals Made 40-49 Yards
Field Goals Made 50+ Yards
Field Goals Missed
Field Goals Percent
Field Goal Yards
Fumbles End Zone Recovery 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 Longest Touchdown
Interception Returns
Interception Returns Touchdowns
Interception Returns Yards
Kick Returns Average Yards
Kick Returns Fair Catches
Kick Returns Longest
Kick Returns Longest Touchdown
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 Total Endzone
Kickoffs Touchbacks
Kickoffs Yards
Passing Air Yards
Passing Attempts
Passing Average Yards
Passing Completion Percentage
Passing Completions
Passing First Downs
Passing Interception Touchdowns
Passing Interceptions
Passing Longest
Passing Longest Touchdown
Passing Rating
Passing Red Zone Attempts
Passing Sack Yards
Passing Sacks
Passing Touchdowns
Passing Yards
Penalties
Penalty First Downs
Penalty Yards
Punt Return Average Yards
Punt Return Fair Catches
Punt Return Longest
Punt Return Longest Touchdown
Punt Returns
Punt Return Touchdowns
Punt Return Yards
Punts Attempts
Punts Average Net Yards
Punts Average Yards
Punts Blocked
Punts Inside 20
Punts Longest
Punts Net Yards
Punts Return Yards
Punts Touchbacks
Punts Yards
Receiving Air Yards
Receiving Average Yards
Receiving First Downs
Receiving Longest
Receiving Longest Touchdown
Receiving Receptions
Receiving Red Zone Targets
Receiving Targets
Receiving Touchdowns
Receiving Yards
Receiving Yards After Catch
Rushing Attempts
Rushing Average Yards
Rushing First Downs
Rushing Longest
Rushing Longest Touchdown
Rushing Red Zone Attempts
Rushing Tackle for Loss
Rushing Tackle for Loss Yards
Rushing Touchdowns
Rushing Yards
3-Point Attempts
3-Point Category
3-Point Successes
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 4th Down Stops
Defense Assisted Tackles
Defense Combined Tackles
Defense Forced Fumbles
Defense Fumble Recoveries
Defense Interceptions
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
Defense Three and Outs Forced
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
Extra Points Kicking Missed
Extra Points Kicking Percent
Field Goals Attempts
Field Goals Attempts 1-19 Yards
Field Goals Attempts 20-29 Yards
Field Goals Attempts 30-39 Yards
Field Goals Attempts 40-49 Yards
Field Goals Attempts 50+ Yards
Field Goals Average Yards
Field Goals Blocked
Field Goals Longest
Field Goals Made
Field Goals Made 1-19 Yards
Field Goals Made 20-29 Yards
Field Goals Made 30-39 Yards
Field Goals Made 40-49 Yards
Field Goals Made 50+ Yards
Field Goals Missed
Field Goals Net Attempts
Field Goals Percent
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 Longest Touchdown
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 Longest Touchdown
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 Completion Percentage
Passing Completions
Passing First Downs
Passing Gross Yards
Passing Interception Touchdowns
Passing Interceptions
Passing Longest
Passing Longest Touchdown
Passing Net Yards
Passing Rating
Passing Red Zone Attempts
Passing Sack Yards
Passing Sacks
Passing Touchdowns
Passing Yards
Penalties
Penalty First Downs
Penalty Yards
Punt Returns Average Yards
Punt Returns Fair Catches
Punt Returns Longest
Punt Returns Longest Touchdown
Punt Returns
Punt Returns Touchdowns
Punt Returns Yards
Punts Attempts
Punts Average Net Yards
Punts Average Yards
Punts Blocked
Punts Inside 20
Punts Longest
Punts Net Yards
Punts Return Yards
Punts Touchbacks
Punts Yards
Receiving Air Yards
Receiving Average Yards
Receiving First Downs
Receiving Longest
Receiving Longest Touchdown
Receiving Receptions
Receiving Red Zone Targets
Receiving Targets
Receiving Touchdowns
Receiving Yards
Receiving Yards After Catch
Rushing Attempts
Rushing Average Yards
Rushing First Downs
Rushing Longest
Rushing Longest Touchdown
Rushing Red Zone Attempts
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
3-Point Defense Attempts
3-Point Defense Successes
3-Point Pass Attempts
3-Point Pass Successes
3-Point Rush Attempts
3-Point Rush Successes
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
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 replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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", "/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `game_id` | ID for a given game. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## League Hierarchy Provides top-level information for each team, including division distinction.
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
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/usfl/trial/v7/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", "/usfl/trial/v7/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/usfl/trial/v7/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## 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
Duration
Entry Mode
Home Team Alias
Home Team Id
Home Team Market
Home Team Name
Home Team SR Id
Game Id
Game Scheduled Start Date/Time
Game Title
SR Id
Status
Weather Condition
Weather - Humidity
Weather - Temperature
Wind Direction
Wind Speed
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 - First Touch
Detail No Attempt
Detail - Onside
Detail Penalty - Description
Detail Penalty - No Play
Detail Penalty - Result
Detail Penalty - Safety
Detail Penalty - Yards
Detail - Reason Missed
Detail Result
Detail - Sack Split
Detail Sequence
Detail Start Location - Team Alias
Detail Start Location - Yardline
Detail Yards
Drive Created At
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
Drive Updated At
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 SR Id
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 - Possession - Team SR Id
Ending Situation - Yards to First Down
Event Clock
Event Created At
Event Description
Event Id
Event Sequence
Event Type
Event Updated At
Play Away Points
Play Clock
Play Created At
Play Description
Play Home Points
Play Id
Play Play Direction
Play Scoring Play
Play Sequence
Play Type
Play Updated At
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: Blocks
Block Category
Conversion Attempt
Conversion Category
Conversion Complete
Conversion Safety
Defense Assisted Sacks
Defense Assisted Tackles
Defense Assisted Tackles for Loss
Defense Block
Defense Category
Defense Conversion Attempt
Defense Conversion Category
Defense Conversion Complete
Defense Forced Fumble
Defense Interception
Defense Interception Touchdown
Defense Interception Yards
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 Attempt
Extra Point Blocked
Extra Point Made
Extra Point Missed
Extra Point Returned
Extra Point Safety
Field Goal Attempt
Field Goal Attempt Yards
Field Goal Blocked
Field Goal Made
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 Touchback
Kickoffs Yards
Passing Attempt
Passing Attempt Yards
Passing Completion
Passing First Down
Passing Goal to Go
Passing Inside 20
Passing Interception
Passing Interception Touchdown
Passing Nullified
Passing Sack
Passing Sack Yards
Passing Safety
Passing Touchdown
Passing Yards
Penalties Penalty
Penalties Yards
Punting Attempt
Punting Blocked
Punting Downed
Punting Endzone
Punting Fair Catch
Punting Inside 20
Punting Nullified
Punting Out of Bounds
Punting Touchback
Punting Yards
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
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 First Down
Rushing Fumble
Rushing Goal to Go
Rushing Inside 20
Rushing Lateral
Rushing Nullified
Rushing Safety
Rushing Tackle for Loss
Rushing Tackle for Loss Yards
Rushing Touchdown
Rushing Yards
Player Information Data Points: Full Name
Id
Jersey Number
Position
Role
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/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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", "/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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/usfl/trial/v7/en/games/f45ae2ef-4645-4157-be02-ef5623cb1433/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `game_id` | ID for a given game. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Player Profile Provides player biographical 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
First Name
Full Name
Height
High School
Id
Jersey Number
Last Name
Name Suffix
Position
Preferred Name
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 Combined Tackles
Defense Forced Fumbles
Defense Fumble Recoveries
Defense Interceptions
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
Extra Points Kicking Missed
Extra Points Kicking Percent
Field Goals Attempts
Field Goals Attempts 1-19 Yards
Field Goals Attempts 20-29 Yards
Field Goals Attempts 30-39 Yards
Field Goals Attempts 40-49 Yards
Field Goals Attempts 50+ Yards
Field Goals Average Yards
Field Goals Blocked
Field Goals Longest
Field Goals Made
Field Goals Made 1-19 Yards
Field Goals Made 20-29 Yards
Field Goals Made 30-39 Yards
Field Goals Made 40-49 Yards
Field Goals Made 50+ Yards
Field Goals Missed
Field Goals Percent
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 Returns
Interception Returns Touchdowns
Interception Returns Yards
Kick Returns Average Yards
Kick Returns Fair Catches
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 Touchbacks
Kickoffs Yards
Passing Air Yards
Passing Attempts
Passing Average Yards
Passing Completion Percentage
Passing Completions
Passing First Downs
Passing Gross Yards
Passing Interception Touchdowns
Passing Interceptions
Passing Longest
Passing Longest Touchdown
Passing Rating
Passing Red Zone Attempts
Passing Sack Yards
Passing Sacks
Passing Touchdowns
Passing Yards
Penalties
Penalties Yards
Punt Returns Average Yards
Punt Returns Fair Catches
Punt Returns Longest
Punt Returns Longest Touchdown
Punt Returns Returns
Punt Returns Touchdowns
Punt Returns Yards
Punts Attempts
Punts Average Net Yards
Punts Average Yards
Punts Blocked
Punts Inside 20
Punts Longest
Punts Net Yards
Punts Return Yards
Punts Touchbacks
Punts Yards
Receiving Air Yards
Receiving Average Yards
Receiving First Downs
Receiving Longest
Receiving Longest Touchdown
Receiving Receptions
Receiving Red Zone Targets
Receiving Targets
Receiving Touchdowns
Receiving Yards
Receiving Yards After Catch
Rushing Attempts
Rushing Average Yards
Rushing First Downs
Rushing Longest
Rushing Longest Touchdown
Rushing Red Zone Attempts
Rushing Tackles for Loss
Rushing Tackles for Loss Yards
Rushing Touchdowns
Rushing Yards
3-Point Defense Attempts
3-Point Defense Successes
3-Point Pass Attempts
3-Point Pass Successes
3-Point Reception Attempts
3-Point Reception Successes
3-Point Rush Attempts
3-Point Rush Successes
Team Information Data Points: Alias
Coach Name Suffix
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/usfl/trial/v7/en/players/f14253c0-99bc-11ec-b33c-ff458e75e8f9/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", "/usfl/trial/v7/en/players/f14253c0-99bc-11ec-b33c-ff458e75e8f9/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/usfl/trial/v7/en/players/f14253c0-99bc-11ec-b33c-ff458e75e8f9/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `player_id` | ID for a given player. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Postgame Standings Provides standings information for each team, updated postgame.
Update Frequency: As Necessary
Content Type: Raw XML or JSON
League Information Data Points: Conference Alias
Conference Id
Conference Name
Division Alias
Division Id
Division Name
Season Id
Season Name
Season Type
Season Year
Standings Information Data Points: Category
Clinched
Conference Losses
Conference Points Against
Conference Points For
Conference Rank
Conference Ties
Conference Winning Perc.
Conference Wins
Division Losses
Division Points Against
Division Points For
Division Rank
Division Ties
Division Winning Perc.
Division Wins
Home Losses
Home Points Against
Home Points For
Home Ties
Home Winning Perc.
Home Wins
Overall Losses
Overall Points Against
Overall Points For
Overall Ties
Overall Winning Perc.
Overall Wins
Road Losses
Road Points Against
Road Points For
Road Ties
Road Winning Perc.
Road Wins
Streak Description
Streak Length
Streak Type
Strength of Schedule
Strength of Schedule - Total
Strength of Schedule - Wins
Strength of Victory
Strength of Victory - Total
Strength of Victory - Wins
Team Information Data Points: Alias
Id
Market
Name
SR Id
> To generate the Postgame Standings for the Season below replace {your_api_key} with your API key: ```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/usfl/trial/v7/en/seasons/2022/REG/standings/season.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", "/usfl/trial/v7/en/seasons/2022/REG/standings/season.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/usfl/trial/v7/en/seasons/2022/REG/standings/season.xml?api_key={your_api_key}" ``` > The above command returns xml structured like this. Access the Postgame Standings feed by replacing the parameters in the following URL: https://api.sportradar.us/usfl/`{access_level}`/`{version}`/`{language_code}`/seasons/`{year}`/`{USFL_season}`/standings/season.`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `year` | Year in 4 digit format (YYYY). | | `USFL_season` | Regular Season (REG) or Postseason (PST). | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## 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 Id
Away Team Name
Away Team SR Id
Broadcast Channel
Broadcast Internet
Broadcast Network
Broadcast Satellite
Duration
Entry Mode
Home Team Alias
Home Team Full Name
Home Team Id
Home Team Name
Home Team SR Id
Id
Scheduled Start Date/Time
SR Id
Status
Weather - Condition
Weather - Humidity
Weather - Temperature
Wind Direction
Wind Speed
League Information Data Points: Bye Week Team Alias
Bye Week Team Id
Bye Week Team Name
Bye Week Team SR Id
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/usfl/trial/v7/en/games/2022/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", "/usfl/trial/v7/en/games/2022/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/usfl/trial/v7/en/games/2022/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/usfl/`{access_level}`/`{version}`/`{language_code}`/games/`{year}`/`{USFL_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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `year` | Year in 4 digit format (YYYY). | | `USFL_season` | Regular Season (REG) or Postseason (PST). | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## 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 Combined Tackles
Defense Forced Fumbles
Defense Fumble Recoveries
Defense Interceptions
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
Extra Points Kicking Percent
Field Goals Attempts
Field Goals Attempts 1-19 Yards
Field Goals Attempts 20-29 Yards
Field Goals Attempts 30-39 Yards
Field Goals Attempts 40-49 Yards
Field Goals Attempts 50+ Yards
Field Goals Average Yards
Field Goals Blocked
Field Goals Longest
Field Goals Made
Field Goals Made 1-19 Yards
Field Goals Made 20-29 Yards
Field Goals Made 30-39 Yards
Field Goals Made 40-49 Yards
Field Goals Made 50+ Yards
Field Goals Missed
Field Goals Percent
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 Longest Touchdown
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 Longest Touchdown
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 Touchbacks
Kickoffs Yards
Misc Returns - Block FG TDs
Misc Returns - Blocked Punt TDs
Misc Returns - End Zone Recovery TDs
Misc Returns - FG Return TDs
Misc Returns - Longest Touchdown
Misc Returns - Touchdowns
Misc Returns - Yards
Misc Returns
Passing Air Yards
Passing Attempts
Passing Average Yards
Passing Completion Percentage
Passing Completions
Passing Gross Yards
Passing Interceptions
Passing Longest
Passing Longest Touchdown
Passing Net Yards
Passing Rating
Passing Red Zone Attempts
Passing Sack Yards
Passing Sacks
Passing Touchdowns
Passing Yards
Penalties
Penalty Yards
Punt Returns Average Yards
Punt Returns Fair Catches
Punt Returns Longest
Punt Returns Longest Touchdown
Punt Returns
Punt Returns Touchdowns
Punt Returns Yards
Punts Attempts
Punts Average Net Yards
Punts Average Yards
Punts Blocked
Punts Inside 20
Punts Longest
Punts Net Yards
Punts Return Yards
Punts Touchbacks
Punts Yards
Receiving Air Yards
Receiving Average Yards
Receiving Longest
Receiving Longest Touchdown
Receiving Receptions
Receiving Red Zone Targets
Receiving Targets
Receiving Touchdowns
Receiving Yards
Receiving Yards After Catch
Rushing Attempts
Rushing Average Yards
Rushing Longest
Rushing Longest Touchdown
Rushing Red Zone Attempts
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
3-Point Defense Attempts
3-Point Defense Successes
3-Point Pass Attempts
3-Point Pass Successes
3-Point Rush Attempts
3-Point Rush Successes
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 Combined Tackles
Defense Forced Fumbles
Defense Fumble Recoveries
Defense Interceptions
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
Extra Points Kicking Missed
Extra Points Kicking Percent
Field Goals Attempts
Field Goals Attempts 1-19 Yards
Field Goals Attempts 20-29 Yards
Field Goals Attempts 30-39 Yards
Field Goals Attempts 40-49 Yards
Field Goals Attempts 50+ Yards
Field Goals Average Yards
Field Goals Blocked
Field Goals Longest
Field Goals Made
Field Goals Made 1-19 Yards
Field Goals Made 20-29 Yards
Field Goals Made 30-39 Yards
Field Goals Made 40-49 Yards
Field Goals Made 50+ Yards
Field Goals Missed
Field Goals Percent
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 Longest Touchdown
Interception Returns Returns
Interception Returns Touchdowns
Interception Returns Yards
Kick Returns Average Yards
Kick Returns Fair Catches
Kick Returns Longest
Kick Returns Longest Touchdown
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 Touchbacks
Kickoffs Yards
Passing Air Yards
Passing Attempts
Passing Average Yards
Passing Completion Percentage
Passing Completions
Passing First Downs
Passing Gross Yards
Passing Interception Touchdowns
Passing Interceptions
Passing Longest
Passing Longest Touchdown
Passing Net Yards
Passing Rating
Passing Red Zone Attempts
Passing Sack Yards
Passing Sacks
Passing Touchdowns
Passing Yards
Penalties
Penalties Yards
Punt Returns Average Yards
Punt Returns Fair Catches
Punt Returns Longest
Punt Returns Longest Touchdown
Punt Returns Returns
Punt Returns Touchdowns
Punt Returns Yards
Punts Attempts
Punts Average Net Yards
Punts Average Yards
Punts Blocked
Punts Inside 20
Punts Longest
Punts Net Yards
Punts Return Yards
Punts Touchbacks
Punts Yards
Receiving Air Yards
Receiving Average Yards
Receiving First Downs
Receiving Longest
Receiving Longest Touchdown
Receiving Receptions
Receiving Red Zone Targets
Receiving Targets
Receiving Touchdowns
Receiving Yards
Receiving Yards After Catch
Rushing Attempts
Rushing Average Yards
Rushing First Downs
Rushing Longest
Rushing Longest Touchdown
Rushing Red Zone Attempts
Rushing Tackles for Loss
Rushing Tackles for Loss Yards
Rushing Touchdowns
Rushing Yards
3-Point Defense Attempts
3-Point Defense Successes
3-Point Pass Attempts
3-Point Attempts
3-Point Pass Successes
3-Point Reception Attempts
3-Point Reception Successes
3-Point Rush Attempts
3-Point Rush Successes
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 4th Down Stops
Defense Assisted Tackles
Defense Combined Tackles
Defense Combined Tackles
Defense Forced Fumbles
Defense Fumble Recoveries
Defense Interceptions
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
Defense Three and Outs Forced
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
Extra Points Kicking Percent
Field Goals Attempts
Field Goals Attempts 1-19 Yards
Field Goals Attempts 20-29 Yards
Field Goals Attempts 30-39 Yards
Field Goals Attempts 40-49 Yards
Field Goals Attempts 50+ Yards
Field Goals Average Yards
Field Goals Blocked
Field Goals Longest
Field Goals Made
Field Goals Made 1-19 Yards
Field Goals Made 20-29 Yards
Field Goals Made 30-39 Yards
Field Goals Made 40-49 Yards
Field Goals Made 50+ Yards
Field Goals Missed
Field Goals Percent
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 Longest Touchdown
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 Longest Touchdown
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 Touchbacks
Kickoffs Yards
Passing Air Yards
Passing Attempts
Passing Average Yards
Passing Completion Percentage
Passing Completions
Passing Gross Yards
Passing Interception Touchdowns
Passing Interceptions
Passing Longest
Passing Longest Touchdown
Passing Net Yards
Passing Rating
Passing Red Zone Attempts
Passing Sack Yards
Passing Sacks
Passing Touchdowns
Passing Yards
Penalties
Penalty Yards
Punt Returns Average Yards
Punt Returns Fair Catches
Punt Returns Longest
Punt Returns Longest Touchdown
Punt Returns
Punt Returns Touchdowns
Punt Returns Yards
Punts Attempts
Punts Average Net Yards
Punts Average Yards
Punts Blocked
Punts Inside 20
Punts Longest
Punts Net Yards
Punts Return Yards
Punts Touchbacks
Punts Yards
Receiving Air Yards
Receiving Average Yards
Receiving Longest
Receiving Longest Touchdown
Receiving Receptions
Receiving Red Zone Targets
Receiving Targets
Receiving Touchdowns
Receiving Yards
Receiving Yards After Catch
Rushing Attempts
Rushing Average Yards
Rushing Longest
Rushing Longest Touchdown
Rushing Red Zone Attempts
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
3-Point Defense Attempts
3-Point Defense Successes
3-Point Pass Attempts
3-Point Pass Successes
3-Point Rush Attempts
3-Point Rush Successes
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/usfl/trial/v7/en/seasons/2022/REG/teams/51da96b0-9676-11ec-9ad0-d3ebe46bbb12/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", "/usfl/trial/v7/en/seasons/2022/REG/teams/51da96b0-9676-11ec-9ad0-d3ebe46bbb12/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/usfl/trial/v7/en/seasons/2022/REG/teams/51da96b0-9676-11ec-9ad0-d3ebe46bbb12/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/usfl/`{access_level}`/`{version}`/`{language_code}`/seasons/`{year}`/`{USFL_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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `year` | Year in 4 digit format (YYYY). | | `USFL_season` | Regular Season (REG) or Postseason (PST). | | `team_id` | ID of a given team. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Seasons Provides a list of all available seasons in the API.
Update Frequency: As Necessary
Content Type: Raw XML or JSON
League Information Data Points: Alias
Id
Name
Season End Date
Season Id
Season Start Date
Season Status
Season Type
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/usfl/trial/v7/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", "/usfl/trial/v7/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/usfl/trial/v7/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## 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
First Name
Full Name
Height
High School
Id
Jersey Number
Last Name
Name Suffix
Position
Preferred Name
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/usfl/trial/v7/en/teams/c8797380-9677-11ec-9193-6b32ce92fd29/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", "/usfl/trial/v7/en/teams/c8797380-9677-11ec-9193-6b32ce92fd29/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/usfl/trial/v7/en/teams/c8797380-9677-11ec-9193-6b32ce92fd29/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/usfl/`{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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `team_id` | ID of a given team. | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## 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
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/usfl/trial/v7/en/seasons/2022/REG/01/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", "/usfl/trial/v7/en/seasons/2022/REG/01/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/usfl/trial/v7/en/seasons/2022/REG/01/depth_charts.xml?api_key={your_api_key}" ``` Access the Weekly Depth Charts feed by replacing the parameters in the following URL: https://api.sportradar.us/usfl/`{access_level}`/`{version}`/`{language_code}`/seasons/`{year}`/`{USFL_season}`/`{USFL_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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `year` | Year in 4 digit format (YYYY). | | `USFL_season` | Regular Season (REG) or Postseason (PST). | | `USFL_season_week` | The number of weeks into the season in 2 digit format (WW). | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Weekly Injuries Provides a list of injured players for each team for a given week.
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
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/usfl/trial/v7/en/seasons/2022/REG/01/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", "/usfl/trial/v7/en/seasons/2022/REG/01/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/usfl/trial/v7/en/seasons/2022/REG/01/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/usfl/`{access_level}`/`{version}`/`{language_code}`/seasons/`{year}`/`{USFL_season}`/`{USFL_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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `year` | Year in 4 digit format (YYYY). | | `USFL_season` | Regular Season (REG) or Postseason (PST). | | `USFL_season_week` | The number of weeks into the season in 2 digit format (WW). | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## 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 Id
Away Team Name
Away Team SR Id
Broadcast Channel
Broadcast Internet
Broadcast Network
Broadcast Satellite
Duration
Entry Mode
Home Team Alias
Home Team Full Name
Home Team Id
Home Team Name
Home Team SR Id
Id
Scheduled Start Date/Time
SR Id
Status
League Information Data Points: Bye Week Team Alias
Bye Week Team Id
Bye Week Team Name
Bye Week Team SR Id
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/usfl/trial/v7/en/games/2022/REG/01/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", "/usfl/trial/v7/en/games/2022/REG/01/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/usfl/trial/v7/en/games/2022/REG/01/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/usfl/`{access_level}`/`{version}`/`{language_code}`/games/`{year}`/`{USFL_season}`/`{USFL_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: v7). | | `language_code` | 2 letter code for supported languages: en (English). | | `year` | Year in 4 digit format (YYYY). | | `USFL_season` | Regular Season (REG) or Postseason (PST). | | `USFL_season_week` | The number of weeks into the season in 2 digit format (WW). | | `format` | xml or json. | | `your_api_key` | Your API key. | Return to top ## Push Feeds >To best utilize Push feeds, we have included code samples in Ruby, Java and Python which provide an example of a way you can consume the feeds. Using these samples will output the feeds content to STDOUT.
For Java, we have also provided a Stream Client to assist your integration.

Note: In the provided Java sample, replace "URL GOES HERE" with the desired Push feed URL. ```ruby require 'httpclient' module Sportradar module HTTP module Stream class Client attr_reader :url, :logger def initialize(url, publisher, logger) @url = url @logger = logger @publisher = publisher @client = ::HTTPClient.new(:agent_name => 'SportsData/1.0') end def start @thread ||= Thread.new do logger.debug "Starting loop" @client.get_content(url, :follow_redirect => true) do |chunk| @publisher.publish(::JSON.parse(chunk)) if @publisher end logger.debug "finished loop" end end def stop @thread.terminate if @thread end end end end end ``` ```java package com.sportradar.http.stream.client; import org.junit.After; import org.junit.Before; import org.junit.Test; public class StreamClientTest { private StreamClient client; private static String SERVICE_URL = ""; @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 Events Provides detailed, real-time information on every live game event.
Update Frequency: Real-Time
Content Type: Raw XML or JSON
Boxscore Data Points: Attendance
Away Team Timeouts Remaining
Away Team Timeouts Used
ClockHome Team Timeouts Remaining
Home Team Timeouts Used
Quarter
Game Information Data Points: Entry Mode
Home Team SR Id
Game Id
Game Scheduled Start Date/Time
SR Id
Status
Metadata Information Data Points: Event Category
Event Type
League
Locale
Match
Operation
Status
Team
Version
Play By Play Information Data Points: Detail Category
Detail Description
Detail Direction
Detail End Location - Team Alias
Detail End Location - Yardline
Detail - First Touch
Detail No Attempt
Detail - Onside
Detail Penalty - Description
Detail Penalty - No Play
Detail Penalty - Result
Detail Penalty - Safety
Detail Penalty - Yards
Detail - Reason Missed
Detail Result
Detail - Sack Split
Detail Sequence
Detail Start Location - Team Alias
Detail Start Location - Yardline
Detail Yards
Drive Created At
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
Drive Updated At
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 SR Id
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 - Possession - Team SR Id
Ending Situation - Yards to First Down
Event Clock
Event Created At
Event Description
Event Id
Event Sequence
Event Type
Event Updated At
Period Id
Period Number
Period Sequence
Play Away Points
Play Clock
Play Created At
Play Description
Play Home Points
Play Id
Play Play Direction
Play Scoring Play
Play Scoring Description
Play Sequence
Play Type
Play Updated At
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: Blocks
Block Category
Conversion Attempt
Conversion Category
Conversion Complete
Conversion Safety
Defense Assisted Sacks
Defense Assisted Tackles
Defense Assisted Tackles for Loss
Defense Block
Defense Category
Defense Conversion Attempt
Defense Conversion Category
Defense Conversion Complete
Defense Forced Fumble
Defense Interception
Defense Interception Touchdown
Defense Interception Yards
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 Attempt
Extra Point Blocked
Extra Point Made
Extra Point Missed
Extra Point Returned
Extra Point Safety
Field Goal Attempt
Field Goal Attempt Yards
Field Goal Blocked
Field Goal Made
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 Touchback
Kickoffs Yards
Passing Attempt
Passing Attempt Yards
Passing Completion
Passing First Down
Passing Goal to Go
Passing Inside 20
Passing Interception
Passing Nullified
Passing Sack
Passing Sack Yards
Passing Safety
Passing Touchdown
Passing Yards
Penalties Penalty
Penalties Yards
Punting Attempt
Punting Blocked
Punting Downed
Punting Endzone
Punting Fair Catch
Punting Inside 20
Punting Nullified
Punting Out of Bounds
Punting Touchback
Punting Yards
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
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 First Down
Rushing Fumble
Rushing Goal to Go
Rushing Inside 20
Rushing Lateral
Rushing Nullified
Rushing Safety
Rushing Tackle for Loss
Rushing Tackle for Loss Yards
Rushing Touchdown
Rushing Yards
Player Information Data Points: Full Name
Id
Jersey Number Position
Team Information Data Points: Alias Id
Market
Name
SR Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/usfl/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/usfl/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/usfl/trial/stream/en/events/subscribe?api_key={your_api_key}' ``` https://api.sportradar.us/usfl/`{access_level}`/stream/`{language_code}`/events/subscribe?api_key=`{your_api_key}` > The above command returns xml structured like this. 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). | | `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/usfl/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/usfl/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/usfl/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 top ## Push Statistics Provides detailed, real-time game stats at the team and player level for all live games.
Update Frequency: Real-time
Content Type: Styled XML or Raw JSON
Player Game Statistics Data Points: Conversions Attempts
Conversion Category
Conversion Successes
Defense Assisted Tackles
Defense Combined Tackles
Defense Forced Fumbles
Defense Fumble Recoveries
Defense Interceptions
Defense Miscellaneous Assisted Tackles
Defense Miscellaneous Forced Fumbles
Defense Miscellaneous Fumble Recoveries
Defense Miscellaneous 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
Extra Points Kicking Missed
Extra Points Kicking Percent
Field Goals Attempts
Field Goals Attempts 1-19 Yards
Field Goals Attempts 20-29 Yards
Field Goals Attempts 30-39 Yards
Field Goals Attempts 40-49 Yards
Field Goals Attempts 50+ Yards
Field Goals Average Yards
Field Goals Blocked
Field Goals Longest
Field Goals Made
Field Goals Made 1-19 Yards
Field Goals Made 20-29 Yards
Field Goals Made 30-39 Yards
Field Goals Made 40-49 Yards
Field Goals Made 50+ Yards
Field Goals Missed
Field Goals Percent
Field Goal Yards
Fumbles End Zone Recovery 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 Longest Touchdown
Interception Returns
Interception Returns Touchdowns
Interception Returns Yards
Kick Returns Average Yards
Kick Returns Fair Catches
Kick Returns Longest
Kick Returns Longest Touchdown
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 Total Endzone
Kickoffs Touchbacks
Kickoffs Yards
Passing Air Yards
Passing Attempts
Passing Average Yards
Passing Completion Percentage
Passing Completions
Passing Interceptions
Passing Longest
Passing Longest Touchdown
Passing Rating
Passing Red Zone Attempts
Passing Sack Yards
Passing Sacks
Passing Touchdowns
Passing Yards
Penalties
Penalty Yards
Punt Return Average Yards
Punt Return Fair Catches
Punt Return Longest
Punt Return Longest Touchdown
Punt Returns
Punt Return Touchdowns
Punt Return Yards
Punts Attempts
Punts Average Net Yards
Punts Average Yards
Punts Blocked
Punts Inside 20
Punts Longest
Punts Net Yards
Punts Return Yards
Punts Touchbacks
Punts Yards
Receiving Air Yards
Receiving Average Yards
Receiving Longest
Receiving Longest Touchdown
Receiving Receptions
Receiving Red Zone Targets
Receiving Targets
Receiving Touchdowns
Receiving Yards
Receiving Yards After Catch
Rushing Attempts
Rushing Average Yards
Rushing Longest
Rushing Longest Touchdown
Rushing Red Zone Attempts
Rushing Tackle for Loss
Rushing Tackle for Loss Yards
Rushing Touchdowns
Rushing Yards
3-Point Attempts
3-Point Category
3-Point Successes
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 Combined Tackles
Defense Forced Fumbles
Defense Fumble Recoveries
Defense Interceptions
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
Extra Points Kicking Missed
Extra Points Kicking Percent
Field Goals Attempts
Field Goals Attempts 1-19 Yards
Field Goals Attempts 20-29 Yards
Field Goals Attempts 30-39 Yards
Field Goals Attempts 40-49 Yards
Field Goals Attempts 50+ Yards
Field Goals Average Yards
Field Goals Blocked
Field Goals Longest
Field Goals Made
Field Goals Made 1-19 Yards
Field Goals Made 20-29 Yards
Field Goals Made 30-39 Yards
Field Goals Made 40-49 Yards
Field Goals Made 50+ Yards
Field Goals Missed
Field Goals Net Attempts
Field Goals Percent
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 Longest Touchdown
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 Longest Touchdown
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 Completion Percentage
Passing Completions
Passing Gross Yards
Passing Interceptions
Passing Longest
Passing Longest Touchdown
Passing Net Yards
Passing Rating
Passing Red Zone Attempts
Passing Sack Yards
Passing Sacks
Passing Touchdowns
Passing Yards
Penalties
Penalty Yards
Punt Returns Average Yards
Punt Returns Fair Catches
Punt Returns Longest
Punt Returns Longest Touchdown
Punt Returns
Punt Returns Touchdowns
Punt Returns Yards
Punts Attempts
Punts Average Net Yards
Punts Average Yards
Punts Blocked
Punts Inside 20
Punts Longest
Punts Net Yards
Punts Return Yards
Punts Touchbacks
Punts Yards
Receiving Air Yards
Receiving Average Yards
Receiving Longest
Receiving Longest Touchdown
Receiving Receptions
Receiving Red Zone Targets
Receiving Targets
Receiving Touchdowns
Receiving Yards
Receiving Yards After Catch
Rushing Attempts
Rushing Average Yards
Rushing Longest
Rushing Longest Touchdown
Rushing Red Zone Attempts
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
3-Point Defense Attempts
3-Point Defense Successes
3-Point Pass Attempts
3-Point Pass Successes
3-Point Rush Attempts
3-Point Rush Successes
Team Summary Data Points: Average Gain
Fumbles
Fumbles Lost
Penalties
Penalty Yards
Play Count
Possession Time
Return Yards
Rushing Plays
Safeties
Total Yards
Turnovers
Metadata Information Data Points: League
Locale
Match
Operation
Participant
Status
Version
Player Information Data Points: Full Name
Id
Jersey Number Position
Team Information Data Points: Alias Id
Market
Name
SR Id
```ruby require 'uri' require 'net/http' require 'openssl' url = URI("https://api.sportradar.us/usfl/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/usfl/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/usfl/trial/stream/en/statistics/subscribe?api_key={your_api_key}' ``` https://api.sportradar.us/usfl/`{access_level}`/stream/`{language_code}`/statistics/subscribe?api_key=`{your_api_key}` > The above command returns xml structured like this. 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). | | `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/usfl/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/usfl/trial/stream/en/statistics/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/usfl/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 top ## 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
  • EXE - Exempt
  • IR - Injured Reserve
  • IRD - Injured Reserve - Designated for Return
  • NON - Non-football related injured reserve
  • NWT - Not with team
  • PRA - Practice Squad
  • PUP - Physically unable to perform
  • RET - Retired
  • SUS - Suspended
  • UDF - Unsigned draft pick

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.
  • 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
  • tv_timeout
  • two_minute_warning
  • 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
  • Doubtful
  • Out

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_pass
  • two_point_return
  • two_point_rush

Q: What are the possible clinched status values I can expect to see in the Postgame Standings feed?

A: Here are the valid clinched status values, and their definitions:

  • division – Clinched Division Title
  • playoff_berth – Clinched Playoff Berth
  • eliminated – Eliminated
Return to top

Docs Navigation