INDEPENDENT DEVELOPER REFERENCE
NHL shots on goal data for developers
Read NHL Shots on Goal rows from Pick6 and shotsTotal from ESPN box scores, without letting the SOG label mislead the mapping.
Editorial review: · Not a live coverage report
NHL labels seen in Pick6
Pick6 uses the label Shots on Goal, abbreviated SOG. On 2026-11-03 NHL captures also held Goals, Points, Assists, Anytime Goal Scorer - 1st Period, Saves and Blocks, plus period labels such as 1P Shots on Goal, 1P Assists and 1P Points. Read status for current counts.
curl --fail-with-body "https://draftkingsapi.com/api/v1/pick6/projections?sport=NHL&stat=Shots%20on%20Goal&limit=25" \
-H "Authorization: Bearer $DRAFTKINGS_API_KEY"Both sides and alternatives
NHL rows make the selection structure easy to see. A low target can carry both More and Less at 1x, while a higher target for the same skater carries More alone at a larger multiplier. Both are valid rows, and neither lets you derive the other.
| target_value | selections |
|---|---|
| 1.5 | More at 1x, Less at 1x |
| 3.5 | More at 3.7x |
Pick6 rows carry standings multipliers such as 1.5x. A standings multiplier is not decimal odds, a probability or an established entry payout.
Some NHL rows are paused. Keep is_paused in your output, and do not treat a paused row as selectable.
The label trap in ESPN box scores
Do not map by the label SOG. In ESPN NHL box scores, SOG is the label on the shootoutGoals stat. Shots appear under the key shotsTotal with label S, and missed shots under shotsMissed.
| key | label | Note |
|---|---|---|
shotsTotal | S | The likely counterpart to Shots on Goal. Confirm it yourself. |
shootoutGoals | SOG | Same letters as the Pick6 abbreviation, different meaning. |
shotsMissed | SM | Not a shot on goal. |
ytdGoals | YTDG | scope is season-to-date. Not a game value. |
Pairing Pick6 Shots on Goal with ESPN shotsTotal is a mapping you must confirm against a few games you check yourself. This API does not assert that the two share a settlement definition.
Read shots by key and category
Skater rows use the category forwards or defenses, and goalies use goalies. The scope field marks whether a value belongs to the game. Time values such as 13:10 have a null numeric and stay display-only.
def shots(row):
if row["data"]["category"] not in ("forwards", "defenses"):
return None
for stat in row["data"]["stats"]:
if stat["key"] == "shotsTotal" and stat["scope"] == "game":
return stat["numeric"]
return NoneSeasons and sample size
NHL season uses the ending year: season=2027 is 2026-27, and season=2026 is 2025-26. Independent ESPN statistics cover NBA, NFL and NHL as limited retained game samples, not full seasons. As of 2026-11-03 those samples were captured after the games were played, so they do not show what was known at game time.
curl --fail-with-body "https://draftkingsapi.com/api/v1/stats/player-games?sport=NHL&season=2027&completed=true&limit=50" \
-H "Authorization: Bearer $DRAFTKINGS_API_KEY"/api/v1/context/player-stats?sport=NHL is a second source, attached to games the sportsbook collector observed. It uses value strings in a statistics array and supports event_id and athlete_id filters with offset pagination. Read key there too.
Watching shots targets move
Use /api/v1/pick6/history?sport=NHL&stat=Shots%20on%20Goal to read recorded changes, with previous on each record. Unchanged captures create no record, and an empty result can be valid. Recording began around 2026-11-03. Retained history is short, and it is not a complete opening-to-close archive. It does not contain seasons of past lines, and there is no public graded-results endpoint.
python3 line-movement.py --dataset pick6 --sport NHL --stat "Shots on Goal" --max-pages 3 --state .line-movement-cursor.jsonTry it
Fetch a bounded NHL board, then one skater's game log.
python3 pick6-board.py --sport NHL --stat "Shots on Goal" --limit 25 --max-pages 2
python3 player-game-log.py --sport NHL --season 2027 --athlete-id ID --stat shotsTotal --max-pages 3Check the recorded data
Questions
Which ESPN stat matches Pick6 Shots on Goal?
The likely counterpart is the key shotsTotal, label S. Confirm it against games you check yourself, because this API does not assert the two share a settlement definition. Do not match on the label SOG.
Why is SOG a shootout stat in the box score?
ESPN labels shootoutGoals as SOG. The Pick6 abbreviation SOG means shots on goal. Always read statistics by key, because labels mean different things in different sources.
Are NHL shots on goal available as sportsbook odds?
As of 2026-11-03, native sportsbook scopes cover New York NFL, NHL, college basketball and college football game lines and New York NHL Shots on Goal, points, assists, saves, goalscorers, power-play points and first-period shots. Read snapshots and streamed changes through the sportsbook endpoints. ESPN-attributed DraftKings moneyline, spread and total observations are also available across eight leagues. Current scope inventory is listed at /api/v1/sportsbook/scopes.
Do goalie rows include shots?
Goalies use their own category with different stats. Read the keys actually returned in those rows rather than reusing skater logic.
Related resources
Inspect selected multi-sport Pick6 market rows, explicit selections, standings multipliers and actual changed observations.
Track DraftKings line movement with the APIFollow recorded Pick6 changes with a resumable cursor, read sportsbook history by sequence, and compute moves without overclaiming.
DraftKings API league coverage by datasetWhich leagues each dataset configures, why the sport filter differs between sportsbook, Pick6, DFS and stats, and how to measure current coverage.
Does the API have NHL player props?Native NHL shots, points, assists, saves, goalscorers, power-play points and first-period shots, alongside separate Pick6 rows.
Independent service operated by DD Inc., not affiliated with or endorsed by DraftKings. Technical access is not a redistribution license. No wagering: this service does not place, recommend or settle entries or bets. Check sources and status for actual capture context.