NBA player game logs, by the game.

Player box scores per NBA game, the recent-form features a prop model needs. Read one player or a whole season, and join them to the lines you are scoring.

Pixel-art basketball centered on a court diagram.

NBA game logs, loaded

PlayerOpponentMinutes
Cooper Flaggvs SAC40
Kobe Sandersvs TOR38
Immanuel Quickley@ LAC38
Scottie Barnes@ LAC38
OG Anunobyvs BKN38
RJ Barrett@ LAC37

4,122 NBA games loaded, through Nov 2, 00:00 UTC. Game logs endpoint

Read a player’s recent NBA games

Ask for one player with their name and the league, and last for the most recent games. The panel above is a real loaded row. Game logs are full-game box scores, separate from line history, and exist only for the leagues in meta.stats_leagues.

curl -G "https://prizepicksapi.com/api/v1/game-logs" \
  -d player="Jayson Tatum" -d league=NBA -d last=10 \
  -H "X-User-Request: Read PrizePicks data for an integration check" -H "Authorization: Bearer $PRIZEPICKS_API_KEY"

Fields on a game-log row

FieldMeaning
game_dateThe game date, newest first.
team / opponentTeam abbreviations for the matchup.
is_homeWhether the player’s team was at home.
minutesMinutes played. Filter DNPs with include_dnp or read dnp_reason.
statsThe box-score object. A stat not reported is absent, not zero.

Read a whole season in bulk

For a backfill, bound the read with a season and page with the cursor. Use view=compact and a large limit to spend few requests. stats_player_id and stats_event_id on each row join to /api/v1/results, so you can line up recent form with how a line graded.

curl -G "https://prizepicksapi.com/api/v1/game-logs" \
  -d league=NBA -d season=2025-26 -d view=compact -d limit=1000 \
  -H "X-User-Request: Read PrizePicks data for an integration check" -H "Authorization: Bearer $PRIZEPICKS_API_KEY"

Join game logs to graded lines

Each game-log row carries stats_player_id and stats_event_id, the same ids on /api/v1/results. Join on them to line up a player’s recent box scores with how each of their lines graded, so your features and labels come from the same games.

Try it

Endpoint docs:GET /api/v1/game-logsGET /api/v1/team-statsPlans and limits

Frequently asked questions

What do the NBA game logs contain?

One row per player per game: game_date, team, opponent, is_home, minutes, started, position and a stats object with the box-score numbers. A stat missing from stats was not reported for that game and is not zero.

How far back do NBA game logs go?

Multiple seasons are loaded. On the Free plan game logs cover the last 10 games per player; Developer reads whole seasons with view=compact and limit up to 1000.

Continue building

References