117–112Final
Oklahoma City Thunder vs Cleveland Cavaliers Box Score
Score by quarter
Box score
Oklahoma City Thunder
| Player | Min | Pts | Reb | Ast | Stl | Blk | TO | FG | 3PT | FT | +/- |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Shai Gilgeous-Alexander G | 39 | 43 | 4 | 8 | 2 | 1 | 1 | 14-35 | 4-8 | 11-12 | +7 |
| Ajay Mitchell G | 35 | 20 | 5 | 1 | 0 | 1 | 0 | 7-16 | 0-3 | 6-6 | +1 |
| Kenrich Williams G | 31 | 12 | 3 | 1 | 0 | 0 | 0 | 5-7 | 2-4 | 0-0 | +7 |
| Isaiah Hartenstein C | 28 | 5 | 14 | 4 | 2 | 0 | 1 | 2-8 | 0-0 | 1-2 | -7 |
| Jaylin Williams F | 20 | 3 | 3 | 2 | 1 | 0 | 1 | 1-6 | 1-5 | 0-0 | -14 |
| Jared McCain G | 27 | 7 | 8 | 2 | 0 | 0 | 1 | 3-11 | 0-5 | 1-1 | +5 |
| Aday Mara C | 20 | 10 | 9 | 0 | 0 | 1 | 2 | 5-7 | 0-0 | 0-0 | +8 |
| Micah Peavy G | 16 | 8 | 5 | 0 | 0 | 0 | 1 | 2-4 | 2-2 | 2-2 | -1 |
| Bennett Stirtz G | 12 | 9 | 2 | 0 | 0 | 0 | 1 | 3-4 | 3-4 | 0-0 | +9 |
| Josh Dix G | 12 | 0 | 1 | 0 | 0 | 1 | 0 | 0-0 | 0-0 | 0-0 | +10 |
Did not play: Brooks Barnhizer (Coach's decision)
Cleveland Cavaliers
| Player | Min | Pts | Reb | Ast | Stl | Blk | TO | FG | 3PT | FT | +/- |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Donovan Mitchell G | 36 | 17 | 5 | 11 | 0 | 0 | 3 | 6-17 | 4-9 | 1-4 | +5 |
| Evan Mobley C | 33 | 16 | 7 | 4 | 1 | 2 | 2 | 6-11 | 1-4 | 3-4 | -3 |
| James Harden G | 33 | 14 | 4 | 6 | 1 | 0 | 1 | 5-10 | 3-7 | 1-3 | -12 |
| Jarrett Allen C | 28 | 14 | 6 | 1 | 1 | 1 | 0 | 5-10 | 0-0 | 4-6 | +11 |
| Meleek Thomas G | 26 | 17 | 5 | 1 | 1 | 0 | 0 | 7-16 | 3-9 | 0-0 | -5 |
| Mario Hezonja F | 27 | 12 | 8 | 3 | 2 | 0 | 0 | 4-9 | 3-7 | 1-2 | -3 |
| Sam Merrill G | 26 | 8 | 3 | 2 | 1 | 0 | 0 | 2-8 | 2-8 | 2-2 | -12 |
| Tyrese Proctor G | 19 | 10 | 4 | 2 | 0 | 0 | 1 | 3-4 | 2-3 | 2-2 | +5 |
| Craig Porter Jr. G | 8 | 0 | 4 | 1 | 0 | 0 | 0 | 0-0 | 0-0 | 0-0 | -2 |
| Thomas Bryant C | 5 | 4 | 0 | 0 | 0 | 0 | 0 | 2-5 | 0-2 | 0-1 | -9 |
Did not play: Tristan Enaruna (Coach's decision); Riley Minix (Coach's decision)
Starters are marked with a bar. Min: minutes, TO: turnovers, FG, 3PT and FT: made-attempted.
Get this box score from the API
Every game has an id, and this one is 1561. /api/basketball/games/1561/players returns one line per player: minutes, points, shooting, rebounds, assists, steals, blocks, turnovers, fouls and plus-minus. Players who didn't play have the reason in dnp. The team totals are at /api/basketball/games/1561.
import requests
API_KEY = "YOUR_API_KEY"
answer = requests.get(
"https://sportapi.ai/api/basketball/games/1561/players",
headers={"X-API-Key": API_KEY},
timeout=20,
).json()
game = answer["game"]
print(game["away"]["name"], game["away"]["score"], "@", game["home"]["name"], game["home"]["score"])
for side in ("away", "home"):
print(game[side]["name"])
for row in answer["data"][side]:
if row["dnp"]:
continue
print(f' {row["player"]["name"]:<24} {row["minutes"]:>2} min {row["pts"]:>3} pts {row["reb"]:>2} reb {row["ast"]:>2} ast')The API documentation lists every basketball endpoint. The same key works for the NBA, WNBA, EuroLeague, NCAA and the other leagues, and for football too.

