Appearance
Turnovers
The turnovers section in the markings response contains details on each official turnover.
Sample Response
json
{
"markings": {
"turnovers": [
{
"attacking_positive_x": null,
"defensive_team_id_nba": 1610612740,
"event_pbp_descriptor": null,
"event_pbp_id": 20,
"event_pbp_qualifiers": null,
"event_pbp_subtype": "badpass",
"event_pbp_turnover_total": 1,
"game_clock": 636,
"game_clock_running": true,
"game_id_nba": "0022500404",
"pbp_event_id": 20,
"period": 1,
"player_id_nba": 1642948,
"possession_team_id_nba": 1610612742,
"shot_clock": 12,
"shot_clock_running": true,
"stealer_id_nba": 1642852,
"turnover_he_frame": 8690,
"turnover_id_ctg": "turnover_a2ec347932d326efe9d81bcebcf08390",
"turnover_wall_clock": "2025-12-23T01:12:59.297+00:00"
}
]
}
}Fields
Identifiers
game_id_nba
Type: string
NBA game ID
turnover_id_ctg
Type: string
CTG-generated unique turnover ID
player_id_nba
Type: integer
NBA player ID who committed the turnover
possession_team_id_nba
Type: integer
NBA team ID of the team that lost possession
defensive_team_id_nba
Type: integer
NBA team ID of the team that gained possession
stealer_id_nba
Type: integer
NBA player ID who recorded the steal. null if not a steal
Timing
period
Type: integer
Period when the turnover occurred
game_clock
Type: float
Game clock (seconds remaining) at the turnover
shot_clock
Type: float
Shot clock at the turnover. null if the shot clock is off
turnover_he_frame
Type: integer
Hawk-Eye frame of the turnover. null if there is no corresponding Hawk-Eye frame in the Hawk-Eye event data
turnover_wall_clock
Type: string
UTC timestamp corresponding to turnover_he_frame. null if there is no corresponding Hawk-Eye frame.
game_clock_running deprecated
Type: boolean
true if game clock was running
Deprecated
This field is unreliable and not particularly useful for analyzing turnover events. This field will be removed in a future version.
shot_clock_running deprecated
Type: boolean
true if shot clock was running
Deprecated
This field is unreliable and not particularly useful for analyzing turnover events. This field will be removed in a future version.
Court Context
attacking_positive_x deprecated
Type: boolean
true if offensive team was attacking positive X basket. null if unknown
Deprecated
This information is not particularly accurate and not useful for analyzing turnover events. This field will be removed in a future version.
Play-by-Play Data
pbp_event_id
Type: integer
Play-by-play event ID
event_pbp_id deprecated
Type: integer
Play-by-play event ID
Deprecated
Use pbp_event_id instead. This field will be removed in a future version.
event_pbp_subtype
Type: string
Turnover type (see values below)
event_pbp_descriptor deprecated
Type: string
Additional description (e.g., "lostball" for out of bounds). null if not provided
Deprecated
This information is not particularly useful for analyzing turnover events. This field will be removed in a future version.
event_pbp_qualifiers deprecated
Type: string
Qualifier information. null if not provided
Deprecated
This information is not useful for analyzing turnover events. This field will be removed in a future version.
event_pbp_turnover_total deprecated
Type: integer
Player's turnover total for the game at this point in the game
Deprecated
This data is already available in the official NBA play-by-play feed. This field will be removed in a future version.
