Frequently asked questions for NFL v7
Click on the categories below or browse questions on the right panel.
Categories
.
Coverage
How is each NFL game covered?
Coverage information for the NFL can be found here.
Do you cover the Pro Bowl?
No. We do not currently cover the Pro Bowl in the NFL API.
Integration
How can I get started with my integration?
Set up an account, learn the NFL API basics, study our game workflows, tackle in-depth integration scenarios, and more by visiting our NFL v7 Integration Guide!
Are simulations available for this API?
Yes! You can replay past games as though they were live using our on-demand Simulations service.
What format are date fields presented in?
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
What format are the date/time fields presented in?
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
How do I locate the TTL (Time to Live)/cache on an API endpoint?
The cache (in seconds) can be accessed in the returned header information on each RESTful API call, under cache-control
.
ex. cache-control: max-age=1, public, s-maxage=1
or
cache-control: public, must-revalidate, max-age=120
Game Statuses
What are the game statuses and their descriptions?
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 Schedule feed(s) regularly to identify the re-scheduled makeup game(s).delayed
– The scheduled game, or a game that was in progress, is now delayed for some reason.suspended
– The game has been suspended and will be rescheduled in the future, continuing where they left off. The game ID will remain the same.flex-schedule
– The game is currently scheduled to occur on a specific date and time, however, it will more than likely be moved to a different time for broadcast purposes.time-tbd
– The game has been scheduled, but a time has yet to be announced.
Data Workflow
How can I find timings for data entry updates?
Our NFL Data Entry Workflow section covers data availability updates. This includes updates for transactions, rankings, depth charts, stat validation, and more.
Season Types
What are the season types and their descriptions?
Here are the valid season types and their descriptions:
PRE
– Pre-seasonREG
– Regular seasonPST
– Post-season
Player Statuses
What are the player statuses and their descriptions?
Below is a list of the currently valid player statuses and their descriptions. Note that additional decommissioned statuses may appear in older seasons.
ACT
- ActiveDUP
- Duplicate player profile. All profiles marked as duplicates can be ignored.EXE
- ExemptFRES
- Reserve/FutureIR
- Injured ReserveIRD
- Injured Reserve - Designated for ReturnNON
- Non-football related injured reserveNWT
- Not with teamPRA
- Practice SquadPRA_IR
- Practice Squad Injured ReservePUP
- Physically unable to performRET
- RetiredSUS
- SuspendedUDF
- Unsigned draft pickUFA
- Unsigned free agent
What are the player game statuses and when can I expect them to populate?
Below is a list of currently valid player game statuses.
deactivated
dnp
(Did Not Play)played
started
These player game statuses will appear within the Game Roster feed exclusively.
When a game is set to created
all players are marked as played
. Approximately 90 minutes before kickoff, NFL teams will announce inactive players for their game. At this time, affected players are adjusted to deactivated
. At the conclusion of the game players are adjusted to started
, played
, and dnp
as necessary.
<player id="56b26b71-8f1e-416c-a7e5-62cd67c98f4b" name="Matthew Orzech" jersey="42"
last_name="Orzech" first_name="Matthew" abbr_name="M.Orzech" birth_date="1995-04-12"
weight="245.0" height="75" position="LS" age="28" birth_place="San Diego, CA, USA"
high_school="Paloma Valley (CA)" college="Azusa Pacific" college_conf="Great Northwest Athletic Conference"
rookie_year="2019" status="played" sr_id="sr:player:1737543" in_game_status="active">
</player>
<player id="a93e2eb0-d264-11ec-b16e-cf7159baf83d" name="Zyon Gilbert" jersey="27"
last_name="Gilbert" first_name="Zyon" abbr_name="Z.Gilbert" birth_date="1999-02-04"
weight="182.0" height="73" position="CB" age="24" birth_place="Montgomery, AL, USA"
high_school="Jefferson Davis (AL)" college="Florida Atlantic" college_conf="Conference USA"
rookie_year="2022" status="dnp" sr_id="sr:player:1236108" in_game_status="active">
</player>
<player id="b5d116d8-11d4-43b1-8f0b-9a3ba26648c9" name="Elgton Jenkins" jersey="74"
last_name="Jenkins" first_name="Elgton" abbr_name="E.Jenkins" birth_date="1995-12-26" weight="311.0"
height="77" position="OL" age="27" birth_place="Clarksdale, MS, USA" high_school="Clarksdale (MS)"
college="Mississippi State" college_conf="Southeastern Conference" rookie_year="2019"
status="started" sr_id="sr:player:1203480" in_game_status="active">
</player>
{
"id": "56b26b71-8f1e-416c-a7e5-62cd67c98f4b",
"name": "Matthew Orzech",
"jersey": "42",
"last_name": "Orzech",
"first_name": "Matthew",
"abbr_name": "M.Orzech",
"birth_date": "1995-04-12",
"weight": 245.0,
"height": 75,
"position": "LS",
"age": 28,
"birth_place": "San Diego, CA, USA",
"high_school": "Paloma Valley (CA)",
"college": "Azusa Pacific",
"college_conf": "Great Northwest Athletic Conference",
"rookie_year": 2019,
"status": "played",
"sr_id": "sr:player:1737543",
"in_game_status": "active"
},
{
"id": "a93e2eb0-d264-11ec-b16e-cf7159baf83d",
"name": "Zyon Gilbert",
"jersey": "27",
"last_name": "Gilbert",
"first_name": "Zyon",
"abbr_name": "Z.Gilbert",
"birth_date": "1999-02-04",
"weight": 182.0,
"height": 73,
"position": "CB",
"age": 24,
"birth_place": "Montgomery, AL, USA",
"high_school": "Jefferson Davis (AL)",
"college": "Florida Atlantic",
"college_conf": "Conference USA",
"rookie_year": 2022,
"status": "dnp",
"sr_id": "sr:player:1236108",
"in_game_status": "active"
},
{
"id": "b5d116d8-11d4-43b1-8f0b-9a3ba26648c9",
"name": "Elgton Jenkins",
"jersey": "74",
"last_name": "Jenkins",
"first_name": "Elgton",
"abbr_name": "E.Jenkins",
"birth_date": "1995-12-26",
"weight": 311.0,
"height": 77,
"position": "OL",
"age": 27,
"birth_place": "Clarksdale, MS, USA",
"high_school": "Clarksdale (MS)",
"college": "Mississippi State",
"college_conf": "Southeastern Conference",
"rookie_year": 2019,
"status": "started",
"sr_id": "sr:player:1203480",
"in_game_status": "active",
"draft": {
"year": 2019,
"round": 2,
"number": 44,
"team": {
"id": "a20471b4-a8d9-40c7-95ad-90cc30e46932",
"name": "Packers",
"market": "Green Bay",
"alias": "GB",
"sr_id": "sr:competitor:4420"
}
}
},
What are the possible in-game player status updates (player.in_game_status
) I can expect to see in the Game Roster endpoint?
player.in_game_status
) I can expect to see in the Game Roster endpoint?Here are the valid in-game player statuses we provide:
active
probable
questionable
doubtful
out
benched
unknown
<player id="bbd0942c-6f77-4f83-a6d0-66ec6548019e" name="Kirk Cousins" jersey="08" last_name="Cousins"
first_name="Kirk" abbr_name="K.Cousins" birth_date="1988-08-19" weight="205.0" height="75"
position="QB" age="35" birth_place="Barrington, IL, USA" high_school="Holland Christian (MI)"
college="Michigan State" college_conf="Big Ten Conference" rookie_year="2012" status="started"
sr_id="sr:player:828891" in_game_status="out">
<draft year="2012" round="4" number="102">
<team id="22052ff7-c065-42ee-bc8f-c4691c50e624" name="Commanders" market="Washington" alias="WAS" sr_id="sr:competitor:4432"/>
</draft>
</player>
{
"id": "bbd0942c-6f77-4f83-a6d0-66ec6548019e",
"name": "Kirk Cousins",
"jersey": "08",
"last_name": "Cousins",
"first_name": "Kirk",
"abbr_name": "K.Cousins",
"birth_date": "1988-08-19",
"weight": 205.0,
"height": 75,
"position": "QB",
"age": 35,
"birth_place": "Barrington, IL, USA",
"high_school": "Holland Christian (MI)",
"college": "Michigan State",
"college_conf": "Big Ten Conference",
"rookie_year": 2012,
"status": "started",
"sr_id": "sr:player:828891",
"in_game_status": "out",
"draft": {
"year": 2012,
"round": 4,
"number": 102,
"team": {
"id": "22052ff7-c065-42ee-bc8f-c4691c50e624",
"name": "Commanders",
"market": "Washington",
"alias": "WAS",
"sr_id": "sr:competitor:4432"
}
}
},
Player Positions
What are the player positions I can expect to see?
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
- CenterCB
- CornerbackDB
- Defensive BackDE
- Defensive EndDL
- Defensive LinemanDT
- Defensive TackleFB
- FullbackFS
- Free SafetyG
- Offensive GuardK
- KickerLB
- LinebackerLS
- Long SnapperMLB
- Middle LinebackerNT
- Nose TackleOG
- Offensive GuardOL
- Offensive LinemanOLB
- Outside LinebackerOT
- Offensive TackleP
- PunterQB
- QuarterbackRB
- Running BackSAF
- SafetySS
- Strong SafetyT
- Offensive TackleTE
- Tight EndWR
- Wide Receiver
How are player positions handled in the feeds?
Players may receive a “game” position, that position may not match the position listed on the player’s profile outside the game.
Play Types & Details
What are the play types I can expect to see?
Here are the valid play types:
pass
rush
faircatch_kick
extra_point
conversion
free_kick
kickoff
punt
field_goal
penalty
What are the event types I can expect to see?
Here are the valid event types:
setup
timeout
tv_timeout
two_minute_warning
comment
period_end
game_over
What are the possible detail categories I can expect to see?
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
first_down
forced_fumble
fourth_down_conversion
fumble
fumble_out_of_bounds
kick_off
kick_off_return
kneel
lateral
muffed_kick
muffed_punt
no_play
onside_kick_off
onside_kick_off_recovery
opponent_aborted_snap_recovery
opponent_blocked_kick_recovery
opponent_fumble_recovery
out_of_bounds
own_aborted_snap_recovery
own_blocked_kick_recovery
own_fumble_recovery
pass
pass_completion
pass_incompletion
pass_interception
pass_interception_return
pass_reception
penalty
punt
punt_return
pushed_out_of_bounds
ran_out_of_bounds
review
rush
sack
safety
scramble
spike
stat_correction
tackle
team_timeout
third_down_conversion
touchback
touchdown
two_point_attempt
two_point_pass
two_point_return
two_point_result
two_point_rush
<detail category="pass_incompletion" sequence="1" direction="short middle">
<description>J.Allen pass incomplete short middle intended for D.Knox.</description>
<start_location alias="BUF" yardline="42"/>
<end_location alias="BUF" yardline="45"/>
<players>
<player id="5fb525c5-4e70-4ede-8c49-94ad0cf66b7d" name="Dawson Knox" jersey="88" position="TE" sr_id="sr:player:1229734" role="receive"/>
<player id="3069db07-aa43-4503-ab11-2ae5c0002721" name="Josh Allen" jersey="17" position="QB" sr_id="sr:player:1208608" role="pass"/>
</players>
</detail>
{
"category": "pass_incompletion",
"description": "J.Allen pass incomplete short middle intended for D.Knox.",
"sequence": 1,
"direction": "short middle",
"start_location": {
"alias": "BUF",
"yardline": 42
},
"end_location": {
"alias": "BUF",
"yardline": 45
},
"players": [
{
"id": "5fb525c5-4e70-4ede-8c49-94ad0cf66b7d",
"name": "Dawson Knox",
"jersey": "88",
"position": "TE",
"sr_id": "sr:player:1229734",
"role": "receive"
},
{
"id": "3069db07-aa43-4503-ab11-2ae5c0002721",
"name": "Josh Allen",
"jersey": "17",
"position": "QB",
"sr_id": "sr:player:1208608",
"role": "pass"
}
]
}
What are the possible player role
values in play details?
role
values in play details?Here are the valid detail categories:
ast_sack
ast_tackle
block
catch
conversion
defend
defender
down
fair_catch
first_down
force_fum
force_fum_ast
fum_rec
fumble
hit
hold
kick
lateral
miss
muff
out_of_bounds
pass
penalty
punt
receive
recovery
return
reviewed_by
rush
sack
safety
snap
tackle
timeout
touchback
<details>
<detail category="pass" sequence="0">
<description>B.Purdy steps back to pass.</description>
<start_location alias="SF" yardline="30"/>
<end_location alias="SF" yardline="30"/>
<players>
<player id="d5aef708-ad61-4ab8-a637-62ff96e92040" name="Brock Purdy" jersey="13" position="QB" sr_id="sr:player:1420461" role="pass"/>
</players>
</detail>
<detail category="pass_incompletion" sequence="1" direction="deep left">
<description>B.Purdy pass incomplete deep left intended for D.Samuel.</description>
<start_location alias="SF" yardline="30"/>
<end_location alias="SF" yardline="47"/>
<players>
<player id="628a6a0a-4fde-4024-8d7c-28674953d5af" name="Deebo Samuel Sr." jersey="19" position="WR" sr_id="sr:player:1218302" role="receive"/>
<player id="d5aef708-ad61-4ab8-a637-62ff96e92040" name="Brock Purdy" jersey="13" position="QB" sr_id="sr:player:1420461" role="pass"/>
</players>
</detail>
</details>
"details": [
{
"category": "pass_completion",
"description": "B.Purdy pass short middle complete to KC 46.",
"sequence": 0,
"direction": "short middle",
"yards": 11,
"start_location": {
"alias": "SF",
"yardline": 49
},
"end_location": {
"alias": "KC",
"yardline": 46
},
"players": [
{
"id": "d5aef708-ad61-4ab8-a637-62ff96e92040",
"name": "Brock Purdy",
"jersey": "13",
"position": "QB",
"sr_id": "sr:player:1420461",
"role": "pass"
}
]
},
{
"category": "pass_reception",
"description": "Catch made by C.McCaffrey at KC 46. Gain of 11 yards.",
"sequence": 1,
"yards": 11,
"result": "tackled",
"start_location": {
"alias": "KC",
"yardline": 46
},
"end_location": {
"alias": "KC",
"yardline": 40
},
"players": [
{
"id": "f96db0af-5e25-42d1-a07a-49b4e065b364",
"name": "Christian McCaffrey",
"jersey": "23",
"position": "RB",
"sr_id": "sr:player:1129507",
"role": "catch"
}
]
},
What are the possible review type
values in play details?
type
values in play details?Below are possible detail - review.type
values.
The review/challenge outcome appears under review.result
as either overturned
or upheld
. In cases where a team initiates a challenge (rather than an official review), a team
object will appear within review
.
backward pass
first down
fumble
illegal forward pass
ineligible receiver
kick touched
loose ball recovery
pass completion
pass interception
potential foul
runner broke the plane
runner was down by contact
running into the kicker
safety
short of the line to gain
targeting
tipped pass
too many players on field
touchback
<play id="a7fddcb0-7e8f-11ef-a8f8-6731672f2233" sequence="1727634146815.0" clock="2:23" home_points="0" away_points="28" wall_clock="2024-09-29T18:22:20+00:00" players_rushed="4" men_in_box="7" fake_punt="false" fake_field_goal="false" screen_pass="false" blitz="false" play_direction="Middle" left_tightends="0" right_tightends="2" hash_mark="Right Hash" pocket_location="Middle" qb_at_snap="Shotgun" huddle="Huddle" pass_route="In" play_action="false" run_pass_option="false" created_at="2024-09-29T18:22:26+00:00" updated_at="2024-09-30T18:17:42+00:00" type="pass">
<start_situation clock="2:23" down="2" yfd="10">
<possession id="a20471b4-a8d9-40c7-95ad-90cc30e46932" name="Packers" market="Green Bay" alias="GB" sr_id="sr:competitor:4420"/>
<location id="33405046-04ee-4058-a950-d606f8c30852" name="Vikings" market="Minnesota" alias="MIN" sr_id="sr:competitor:4423" yardline="34"/>
</start_situation>
<end_situation clock="2:16" down="3" yfd="10">
<possession id="a20471b4-a8d9-40c7-95ad-90cc30e46932" name="Packers" market="Green Bay" alias="GB" sr_id="sr:competitor:4420"/>
<location id="33405046-04ee-4058-a950-d606f8c30852" name="Vikings" market="Minnesota" alias="MIN" sr_id="sr:competitor:4423" yardline="34"/>
</end_situation>
<description>J.Love steps back to pass. Pass incomplete deep middle intended for D.Wicks. Green Bay challenged the pass completion and the play was upheld. Timeout #1 by GB.</description>
<statistics>
<timeout>
<team id="a20471b4-a8d9-40c7-95ad-90cc30e46932" name="Packers" market="Green Bay" alias="GB" sr_id="sr:competitor:4420"/>
</timeout>
<pass attempt="1" complete="0" att_yards="0" firstdown="0" inside_20="0" goaltogo="0" incompletion_type="Poorly Thrown" blitz="0" hurry="0" knockdown="0" pocket_time="3.015" on_target_throw="0" batted_pass="0">
<team id="a20471b4-a8d9-40c7-95ad-90cc30e46932" name="Packers" market="Green Bay" alias="GB" sr_id="sr:competitor:4420"/>
<player id="e5094779-e94f-4052-8597-bdbee3719f6b" name="Jordan Love" jersey="10" position="QB" sr_id="sr:player:2040035"/>
</pass>
<receive firstdown="0" target="1" inside_20="0" goaltogo="0" dropped="0" catchable="0">
<team id="a20471b4-a8d9-40c7-95ad-90cc30e46932" name="Packers" market="Green Bay" alias="GB" sr_id="sr:competitor:4420"/>
<player id="ea3d1393-8c3b-4e81-a519-f636d28d692e" name="Dontayvion Wicks" jersey="13" position="WR" sr_id="sr:player:1692361"/>
</receive>
<defense missed_tackles="0" def_target="1" def_comp="0" blitz="0" hurry="0" knockdown="0" batted_pass="0">
<team id="33405046-04ee-4058-a950-d606f8c30852" name="Vikings" market="Minnesota" alias="MIN" sr_id="sr:competitor:4423"/>
<player id="bcbbd7af-5a61-41f2-bae6-1e034755e7ef" name="Kamu Grugier-Hill" jersey="54" position="LB" sr_id="sr:player:1074210"/>
</defense>
</statistics>
<details>
<detail category="pass" sequence="0">
<description>J.Love steps back to pass.</description>
<start_location alias="MIN" yardline="34"/>
<end_location alias="MIN" yardline="34"/>
<players>
<player id="e5094779-e94f-4052-8597-bdbee3719f6b" name="Jordan Love" jersey="10" position="QB" sr_id="sr:player:2040035" role="pass"/>
</players>
</detail>
<detail category="pass_incompletion" sequence="1" direction="deep middle">
<description>Pass incomplete deep middle intended for D.Wicks.</description>
<start_location alias="MIN" yardline="34"/>
<end_location alias="MIN" yardline="34"/>
<players>
<player id="ea3d1393-8c3b-4e81-a519-f636d28d692e" name="Dontayvion Wicks" jersey="13" position="WR" sr_id="sr:player:1692361" role="receive"/>
<player id="e5094779-e94f-4052-8597-bdbee3719f6b" name="Jordan Love" jersey="10" position="QB" sr_id="sr:player:2040035" role="pass"/>
</players>
</detail>
<detail category="review" sequence="2">
<description>Green Bay challenged the pass completion and the play was upheld.</description>
<start_location alias="MIN" yardline="34"/>
<end_location alias="MIN" yardline="34"/>
<review result="upheld" type="pass completion">
<team id="a20471b4-a8d9-40c7-95ad-90cc30e46932" name="Packers" market="Green Bay" alias="GB" sr_id="sr:competitor:4420"/>
</review>
<players>
</players>
</detail>
<detail category="team_timeout" sequence="3">
<description>Timeout #1 by GB.</description>
<start_location alias="MIN" yardline="34"/>
<end_location alias="MIN" yardline="34"/>
<players>
</players>
</detail>
</details>
</play>
{
"type": "play",
"id": "a7fddcb0-7e8f-11ef-a8f8-6731672f2233",
"sequence": 1727634146815.0,
"clock": "2:23",
"home_points": 0,
"away_points": 28,
"play_type": "pass",
"wall_clock": "2024-09-29T18:22:20+00:00",
"description": "J.Love steps back to pass. Pass incomplete deep middle intended for D.Wicks. Green Bay challenged the pass completion and the play was upheld. Timeout #1 by GB.",
"players_rushed": 4,
"men_in_box": 7,
"fake_punt": false,
"fake_field_goal": false,
"screen_pass": false,
"blitz": false,
"play_direction": "Middle",
"left_tightends": 0,
"right_tightends": 2,
"hash_mark": "Right Hash",
"pocket_location": "Middle",
"qb_at_snap": "Shotgun",
"huddle": "Huddle",
"pass_route": "In",
"play_action": false,
"run_pass_option": false,
"created_at": "2024-09-29T18:22:26+00:00",
"updated_at": "2024-09-30T18:17:42+00:00",
"start_situation": {
"clock": "2:23",
"down": 2,
"yfd": 10,
"possession": {
"id": "a20471b4-a8d9-40c7-95ad-90cc30e46932",
"name": "Packers",
"market": "Green Bay",
"alias": "GB",
"sr_id": "sr:competitor:4420"
},
"location": {
"id": "33405046-04ee-4058-a950-d606f8c30852",
"name": "Vikings",
"market": "Minnesota",
"alias": "MIN",
"sr_id": "sr:competitor:4423",
"yardline": 34
}
},
"end_situation": {
"clock": "2:16",
"down": 3,
"yfd": 10,
"possession": {
"id": "a20471b4-a8d9-40c7-95ad-90cc30e46932",
"name": "Packers",
"market": "Green Bay",
"alias": "GB",
"sr_id": "sr:competitor:4420"
},
"location": {
"id": "33405046-04ee-4058-a950-d606f8c30852",
"name": "Vikings",
"market": "Minnesota",
"alias": "MIN",
"sr_id": "sr:competitor:4423",
"yardline": 34
}
},
"statistics": [
{
"stat_type": "timeout",
"team": {
"id": "a20471b4-a8d9-40c7-95ad-90cc30e46932",
"name": "Packers",
"market": "Green Bay",
"alias": "GB",
"sr_id": "sr:competitor:4420"
}
},
{
"stat_type": "pass",
"attempt": 1,
"complete": 0,
"att_yards": 0,
"firstdown": 0,
"inside_20": 0,
"goaltogo": 0,
"incompletion_type": "Poorly Thrown",
"blitz": 0,
"hurry": 0,
"knockdown": 0,
"pocket_time": 3.015,
"on_target_throw": 0,
"batted_pass": 0,
"player": {
"id": "e5094779-e94f-4052-8597-bdbee3719f6b",
"name": "Jordan Love",
"jersey": "10",
"position": "QB",
"sr_id": "sr:player:2040035"
},
"team": {
"id": "a20471b4-a8d9-40c7-95ad-90cc30e46932",
"name": "Packers",
"market": "Green Bay",
"alias": "GB",
"sr_id": "sr:competitor:4420"
}
},
{
"stat_type": "receive",
"firstdown": 0,
"target": 1,
"inside_20": 0,
"goaltogo": 0,
"dropped": 0,
"catchable": 0,
"player": {
"id": "ea3d1393-8c3b-4e81-a519-f636d28d692e",
"name": "Dontayvion Wicks",
"jersey": "13",
"position": "WR",
"sr_id": "sr:player:1692361"
},
"team": {
"id": "a20471b4-a8d9-40c7-95ad-90cc30e46932",
"name": "Packers",
"market": "Green Bay",
"alias": "GB",
"sr_id": "sr:competitor:4420"
}
},
{
"stat_type": "defense",
"missed_tackles": 0,
"def_target": 1,
"def_comp": 0,
"blitz": 0,
"hurry": 0,
"knockdown": 0,
"batted_pass": 0,
"player": {
"id": "bcbbd7af-5a61-41f2-bae6-1e034755e7ef",
"name": "Kamu Grugier-Hill",
"jersey": "54",
"position": "LB",
"sr_id": "sr:player:1074210"
},
"team": {
"id": "33405046-04ee-4058-a950-d606f8c30852",
"name": "Vikings",
"market": "Minnesota",
"alias": "MIN",
"sr_id": "sr:competitor:4423"
}
}
],
"details": [
{
"category": "pass",
"description": "J.Love steps back to pass.",
"sequence": 0,
"start_location": {
"alias": "MIN",
"yardline": 34
},
"end_location": {
"alias": "MIN",
"yardline": 34
},
"players": [
{
"id": "e5094779-e94f-4052-8597-bdbee3719f6b",
"name": "Jordan Love",
"jersey": "10",
"position": "QB",
"sr_id": "sr:player:2040035",
"role": "pass"
}
]
},
{
"category": "pass_incompletion",
"description": "Pass incomplete deep middle intended for D.Wicks.",
"sequence": 1,
"direction": "deep middle",
"start_location": {
"alias": "MIN",
"yardline": 34
},
"end_location": {
"alias": "MIN",
"yardline": 34
},
"players": [
{
"id": "ea3d1393-8c3b-4e81-a519-f636d28d692e",
"name": "Dontayvion Wicks",
"jersey": "13",
"position": "WR",
"sr_id": "sr:player:1692361",
"role": "receive"
},
{
"id": "e5094779-e94f-4052-8597-bdbee3719f6b",
"name": "Jordan Love",
"jersey": "10",
"position": "QB",
"sr_id": "sr:player:2040035",
"role": "pass"
}
]
},
{
"category": "review",
"description": "Green Bay challenged the pass completion and the play was upheld.",
"sequence": 2,
"start_location": {
"alias": "MIN",
"yardline": 34
},
"end_location": {
"alias": "MIN",
"yardline": 34
},
"review": {
"result": "upheld",
"type": "pass completion",
"team": {
"id": "a20471b4-a8d9-40c7-95ad-90cc30e46932",
"name": "Packers",
"market": "Green Bay",
"alias": "GB",
"sr_id": "sr:competitor:4420"
}
},
"players": []
},
{
"category": "team_timeout",
"description": "Timeout #1 by GB.",
"sequence": 3,
"start_location": {
"alias": "MIN",
"yardline": 34
},
"end_location": {
"alias": "MIN",
"yardline": 34
},
"players": []
}
]
},
What are the point after score types I can expect to see in the feeds?
Here are the valid score types:
extra_point
conversion
penalty
What are the play results (details.result
or pulse.details.result
) I can expect to see?
details.result
or pulse.details.result
) I can expect to see?Below are the valid result types. These are available in Game Play-by-Play, Push Events, and Push Pulse.
accepted
backward pass
blocked
declined
downed
fair catch
fumbled
good
missed
muffed
no good
nullified touchdown
offset
overturned
pass
penalty
pushed out of bounds
ran out of bounds
returned
rush
tackled
touchback
touchdown
Transactions
What are the valid transaction_code and transaction_type values?
Here is a list of the valid transaction codes and types:
ACT
- ActivatedCL
- ClaimedCEXP
- Contract ExpiredCEXT
- Contract ExtensionDEC
- DeceasedFA
- Declared Free AgencyTAG
– Designated Franchise TagDRA
- DraftedSUS
- League SuspensionABS
- Leave of AbsenceNWT
- Not with TeamTRAN
- Other TransactionEXE
– Placed on Exempt/Commissioner’s ListIR
– Placed on Injured ReserveIRDR
– Placed on Injured Reserve – Designated for ReturnPUP
– Placed on Physically Unable to Perform ListNON
– Placed on Reserve/Non Football Injury ListRSGN
- Re-SignedRSUS
- Reinstated from SuspensionREL
- ReleasedRET
- RetiredEDRA
- Selected in Expansion DraftSGN
– SignedPRA
– Assigned to Practice SquadTSUS
- Team SuspensionTRD
- TradedWA
– WaivedWAI
– Waived – Injury
<player id="18be19e0-cc7e-11ec-8d55-87af3a9174bd" name="Stanley Berryhill" first_name="Stanley" last_name="Berryhill" position="WR" sr_id="sr:player:1261410">
<transaction id="69bea440-6ceb-11ee-8808-8d33a3153a68" desc="WR Stanley Berryhill was reinstated from suspension." effective_date="2023-10-17" last_modified="2023-10-17T12:48:35Z" transaction_type="Reinstated from Suspension" transaction_code="RSUS" transaction_year="2023" status_before="SUS" status_after="UFA">
</transaction>
</player>
{
"id": "c816f5e3-7abe-4fc5-b6e0-4151017210b0",
"name": "Jack Jones",
"first_name": "Jack",
"last_name": "Jones",
"jersey": "13",
"position": "DB",
"sr_id": "sr:player:1209584",
"transactions": [
{
"id": "fa1ea9a0-6d0d-11ee-935e-2d7aaab01588",
"desc": "The New England Patriots placed DB Jack Jones on IRD.",
"effective_date": "2023-10-17",
"last_modified": "2023-10-17T16:55:53Z",
"transaction_type": "Placed on Injury Reserve - Designated for Return",
"transaction_code": "IRDR",
"transaction_year": 2023,
"status_before": "IR",
"status_after": "IRD",
"from_team": {
"id": "97354895-8c77-4fd4-a860-32e62ea7382a",
"name": "Patriots",
"market": "New England",
"alias": "NE",
"sr_id": "sr:competitor:4424"
},
"to_team": {
"id": "97354895-8c77-4fd4-a860-32e62ea7382a",
"name": "Patriots",
"market": "New England",
"alias": "NE",
"sr_id": "sr:competitor:4424"
}
}
]
},
What is the breadth of your transaction availability?
Our NFL transaction data goes back to 2002. All data can be accessed via the Daily Transactions endpoint.
Standings
What are the possible clinched status values I can expect to see in the Postgame Standings feed?
Here are the valid clinched status values, and their definitions:
- conference – Clinched Home-Field Advantage
- division_first_round_bye – Clinched First-Round Bye
- division – Clinched Division Title
- playoff_berth – Clinched Playoff Berth
- wildcard – Clinched Wild Card
- eliminated – Eliminated
<team id="386bdbf9-9eea-4869-bb9a-274b0bc66e80" name="Eagles" market="Philadelphia" alias="PHI" sr_id="sr:competitor:4428" wins="14" losses="3" ties="0" win_pct="0.824" points_for="477" points_against="344">
<rank conference="1" division="1" clinched="conference"/>
{
"id": "6680d28d-d4d2-49f6-aace-5292d3ec02c2",
"name": "Chiefs",
"market": "Kansas City",
"alias": "KC",
"sr_id": "sr:competitor:4422",
"rank": {
"conference": 1,
"division": 1,
"clinched": "conference"
},
Officials
What are the possible official assignments I can expect to see in the feeds?
Here are the valid official assignments:
referee
umpire
headlinesman
linejudge
fieldjudge
sidejudge
backjudge
downjudge
replayofficial
<officials>
<official full_name="Shawn Hochuli" number="83" assignment="referee"/>
<official full_name="Tim Podraza" number="47" assignment="linejudge"/>
<official full_name="Jason Ledet" number="72" assignment="fieldjudge"/>
<official full_name="Rich Martinez" number="39" assignment="backjudge"/>
<official full_name="Chad Hill" number="125" assignment="sidejudge"/>
<official full_name="Terry Killens" number="77" assignment="umpire"/>
<official full_name="Tyler Cerimeli" number="0" assignment="replayofficial"/>
<official full_name="Patrick Holt" number="106" assignment="downjudge"/>
</officials>
"officials": [
{
"full_name": "Shawn Hochuli",
"number": "83",
"assignment": "referee"
},
{
"full_name": "Tim Podraza",
"number": "47",
"assignment": "linejudge"
},
{
"full_name": "Jason Ledet",
"number": "72",
"assignment": "fieldjudge"
},
{
"full_name": "Rich Martinez",
"number": "39",
"assignment": "backjudge"
},
{
"full_name": "Chad Hill",
"number": "125",
"assignment": "sidejudge"
},
{
"full_name": "Terry Killens",
"number": "77",
"assignment": "umpire"
},
{
"full_name": "Tyler Cerimeli",
"number": "0",
"assignment": "replayofficial"
},
{
"full_name": "Patrick Holt",
"number": "106",
"assignment": "downjudge"
}
],
Injuries
What are the possible injury status values I can expect to see in the feeds?
Here are the valid injury status values:
Questionable
- The player has a 50/50 chance to playDoubtful
- The player is very unlikely to playOut
- The player will not play
Statistics
How are assisted sacks calculated in the feeds?
Assisted sacks are credited when two players 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.
For example, if a player had 3 ast_sacks
and 2 sacks
in a game his game-level sack number would be 3.5.
<player id="bc69c92c-58ff-44b2-a18b-07a08ee78dc6" name="Jonathan Greenard" jersey="52" position="DE"
sr_id="sr:player:2040593" tackles="3" assists="3" combined="6" sacks="2.5" sack_yards="25.0"
interceptions="0" passes_defended="0" forced_fumbles="0" fumble_recoveries="0" qb_hits="4" tloss="2.0"
tloss_yards="21.0" safeties="0" sp_tackles="0" sp_assists="0" sp_forced_fumbles="0" sp_fumble_recoveries="0"
sp_blocks="0" misc_tackles="0" misc_assists="0" misc_forced_fumbles="0" misc_fumble_recoveries="0"
def_targets="0" def_comps="0" blitzes="0" hurries="0" knockdowns="0" missed_tackles="0" batted_passes="0"/>
{
"id": "bc69c92c-58ff-44b2-a18b-07a08ee78dc6",
"name": "Jonathan Greenard",
"jersey": "52",
"position": "DE",
"sr_id": "sr:player:2040593",
"tackles": 3,
"assists": 3,
"combined": 6,
"sacks": 2.5,
"sack_yards": 25.0,
"interceptions": 0,
"passes_defended": 0,
"forced_fumbles": 0,
"fumble_recoveries": 0,
"qb_hits": 4,
"tloss": 2.0,
"tloss_yards": 21.0,
"safeties": 0,
"sp_tackles": 0,
"sp_assists": 0,
"sp_forced_fumbles": 0,
"sp_fumble_recoveries": 0,
"sp_blocks": 0,
"misc_tackles": 0,
"misc_assists": 0,
"misc_forced_fumbles": 0,
"misc_fumble_recoveries": 0,
"def_targets": 0,
"def_comps": 0,
"blitzes": 0,
"hurries": 0,
"knockdowns": 0,
"missed_tackles": 0,
"batted_passes": 0
},
Subjective Statistics
What are subjective stats and how are they handled?
Subjective stats are variety of data points that go beyond typical stats like yards, pass attempts, and touchdowns. Due to how the data is collected, it requires an operator to re-watch the game, thus there is a delay on when it is provided in the feeds.
These data points are delivered the following Tuesday by the end of the day (6:00 pm ET) and will show up in the existing NFL API feeds. The data is available in both XML and JSON feed formats. As the demand rises for additional data points we will continue to refine the data set collected.
Which statistics are subjective?
Here are the valid subjective statistics:
Batted Passes
Broken Tackles
Catchable Pass
Defender Blitz
Defensive Completion
Defensive Target
Dropped Pass
Fake Field Goal
Fake Punt
Hang Time
Hash Mark
Huddle
Hurry
Incompletion Type
Kneel down
Knockdown
Left Tightends
Men in Box
Missed Tackle
On Target Throws
Onside Attempt
Onside Success
Pass Route
Play Action
Play Direction
Players Rushed
Pocket Location
Pocket Time
QB at Snap
QB Blitz
QB Hurry
QB Knockdown
Right Tightends
Run Pass Option
Running Lane
Scramble
Screen Pass
TE Location
Team Blitz
Yards After Contact
Draft
When can I expect NFL draftees to populate in the Prospects endpoint?
Prospects are typically added in mid to late March, after the draft order is determined by the NFL.
How is the data within the Draft feeds populated?
Sportradar’s experts seed players from our NCAA database. We use a variety of sources to generate a comprehensive list of players who expect to be drafted. The list is typically 500+ players.
How is an NFL prospect specified as a top prospect?
Top prospects are subjective. We use the same sources for top prospects as we do when creating the initial draft pool.
When are drafted players added to the core endpoints?
Drafted players will be available on their NFL team (Team Profile) after each completed round.
For more on how to integrate a draft day solution, see this guide.
Drives
What are the start and end reasons for a drive that I can expect to see?
Here are the end reasons for a drive:
UNKNOWN
– Start/EndTouchdown
– Start/EndSafety
– EndField Goal
– Start/EndMissed FG
– Start/EndBlocked FG
– Start/EndBlocked FG, Downs
– Start/EndBlocked FG, Safety
– EndPunt
– Start/EndBlocked Punt
– Start/EndBlocked Punt, Downs
– Start/EndBlocked Punt, Safety
– EndDowns
– Start/EndInterception
– Start/EndFumble
– Start/EndFumble, Safety
- EndMissed FG
– EndMuffed FG
– Start/EndMuffed Punt
– StartMuffed Kickoff
– StartKickoff
– StartOwn Kickoff
– StartOnside Kick
– StartKickoff, No Play
– StartEnd of Half
– EndEnd of Game
– End
Venues
What are the venue roof types I can expect to see?
Here are the valid roof types: outdoor
, dome
, or retractable_dome
What are the venue surfaces I can expect to see?
Here are the valid venue surfaces: turf
or artifical
Scoring
When are the game scores added to the Schedule feeds?
Game and period scores are added to the feed when the game status changes to complete
.
Pulse Data
What are the possible event types (payload.pulse.event_type
) I can expect to see covered in the Push Pulse feed?
payload.pulse.event_type
) I can expect to see covered in the Push Pulse feed?Here are the valid event types we provide:
timeout
time_adjusted
delete
timeout_over
game_suspended
game_suspended_over
coin_toss
play_start
play_over
challenge
tv_timeout
tv_timeout_over
review
review_over
players_lining_up
in_game_player_status
game_complete
Schedules
How do I pull in schedule data for future games in which teams are not yet known?
This API features a TBD
team used for every entry in to-be-determined matchups. This virtual team will have its own unique ID specific to this API.
Find the TBD
team in the Teams endpoint.
<team id="23ed0bf0-f058-11ee-9989-93cc4251593a" name="TBD" market="Team" alias="TBD"/>
The matchups will appear as below in the Schedule endpoints.
<series id="0f81bb4d-1d0c-4a3b-82de-507534154095" title="NBA Finals - TBD vs TBD" round="4" start_date="2024-06-06" status="scheduled">
<games>
<game id="342f103b-0fd7-47ac-a84d-1391e3605e96" status="time-tbd" title="Game 1" coverage="full" scheduled="2024-06-06T17:00:00+00:00" neutral_site="false" track_on_court="true" home_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6" away_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
<time_zones/>
<home name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</home>
<away name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</away>
</game>
<game id="71d8d5fc-6836-43c1-85a0-61a828296a06" status="time-tbd" title="Game 2" coverage="full" scheduled="2024-06-09T17:00:00+00:00" neutral_site="false" track_on_court="true" home_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6" away_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
<time_zones/>
<home name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</home>
<away name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</away>
</game>
<game id="50b170b9-37e2-47d0-b517-e56ebb960cba" status="time-tbd" title="Game 3" coverage="full" scheduled="2024-06-12T17:00:00+00:00" neutral_site="false" track_on_court="true" home_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6" away_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
<time_zones/>
<home name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</home>
<away name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</away>
</game>
<game id="8e94445c-c223-4a49-a759-0b651e440b95" status="time-tbd" title="Game 4" coverage="full" scheduled="2024-06-14T17:00:00+00:00" neutral_site="false" track_on_court="true" home_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6" away_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
<time_zones/>
<home name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</home>
<away name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</away>
</game>
<game id="aaa3ddb3-dd1b-459e-a686-d2bfc4408881" status="if-necessary" title="Game 5 (if necessary)" coverage="full" scheduled="2024-06-17T17:00:00+00:00" neutral_site="false" track_on_court="true" home_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6" away_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
<time_zones/>
<home name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</home>
<away name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</away>
</game>
<game id="7c16f1ec-6629-4675-aaaa-2a31835862a6" status="if-necessary" title="Game 6 (if necessary)" coverage="full" scheduled="2024-06-20T17:00:00+00:00" neutral_site="false" track_on_court="true" home_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6" away_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
<time_zones/>
<home name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</home>
<away name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</away>
</game>
<game id="09129676-2320-4151-976d-713ea785d97b" status="if-necessary" title="Game 7 (if necessary)" coverage="full" scheduled="2024-06-23T17:00:00+00:00" neutral_site="false" track_on_court="true" home_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6" away_team="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
<time_zones/>
<home name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</home>
<away name="Team TBD" alias="TBD" id="907dc4e5-6957-4d19-b7d4-b1b7003b91e6">
</away>
</game>
</games>
</series>
"series": [
{
"id": "0f81bb4d-1d0c-4a3b-82de-507534154095",
"title": "NBA Finals - TBD vs TBD",
"round": 4,
"start_date": "2024-06-06",
"status": "scheduled",
"participants": [],
"games": [
{
"id": "342f103b-0fd7-47ac-a84d-1391e3605e96",
"status": "time-tbd",
"title": "Game 1",
"coverage": "full",
"scheduled": "2024-06-06T17:00:00+00:00",
"neutral_site": false,
"track_on_court": true,
"home": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
},
"away": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
}
},
{
"id": "71d8d5fc-6836-43c1-85a0-61a828296a06",
"status": "time-tbd",
"title": "Game 2",
"coverage": "full",
"scheduled": "2024-06-09T17:00:00+00:00",
"neutral_site": false,
"track_on_court": true,
"home": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
},
"away": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
}
},
{
"id": "50b170b9-37e2-47d0-b517-e56ebb960cba",
"status": "time-tbd",
"title": "Game 3",
"coverage": "full",
"scheduled": "2024-06-12T17:00:00+00:00",
"neutral_site": false,
"track_on_court": true,
"home": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
},
"away": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
}
},
{
"id": "8e94445c-c223-4a49-a759-0b651e440b95",
"status": "time-tbd",
"title": "Game 4",
"coverage": "full",
"scheduled": "2024-06-14T17:00:00+00:00",
"neutral_site": false,
"track_on_court": true,
"home": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
},
"away": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
}
},
{
"id": "aaa3ddb3-dd1b-459e-a686-d2bfc4408881",
"status": "if-necessary",
"title": "Game 5 (if necessary)",
"coverage": "full",
"scheduled": "2024-06-17T17:00:00+00:00",
"neutral_site": false,
"track_on_court": true,
"home": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
},
"away": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
}
},
{
"id": "7c16f1ec-6629-4675-aaaa-2a31835862a6",
"status": "if-necessary",
"title": "Game 6 (if necessary)",
"coverage": "full",
"scheduled": "2024-06-20T17:00:00+00:00",
"neutral_site": false,
"track_on_court": true,
"home": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
},
"away": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
}
},
{
"id": "09129676-2320-4151-976d-713ea785d97b",
"status": "if-necessary",
"title": "Game 7 (if necessary)",
"coverage": "full",
"scheduled": "2024-06-23T17:00:00+00:00",
"neutral_site": false,
"track_on_court": true,
"home": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
},
"away": {
"name": "Team TBD",
"alias": "TBD",
"id": "907dc4e5-6957-4d19-b7d4-b1b7003b91e6"
}
}
]
},
Make note of the status
attribute to determine whether the time of the game is known. A status of time-tbd
indicates the game has been scheduled, but a time has yet to be announced. A status of scheduled
indicates the game time is known.
More questions?
Reach out to [email protected] for further assistance.