SportAPINBAGet SportAPI Key
109–97Final

New York Knicks vs Cleveland Cavaliers Box Score

Saturday, November 7, 2026 · 8:00 PM ET · Rocket Arena · Attendance 19,432

Score by quarter

Team1234T
NY26372521109
CLE2726172797

Box score

New York Knicks

PlayerMinPtsRebAstStlBlkTOFG3PTFT+/-
Jalen Brunson G34316900112-253-74-5+11
OG Anunoby F3415620124-133-94-4-4
Karl-Anthony Towns C332913320011-212-45-50
Mikal Bridges G319640104-131-70-0+5
Landry Shamet G289112013-83-80-0+4
Miles McBride G165000002-41-30-0+14
Jordan Clarkson G159200004-51-10-0+4
Mohamed Diawara F142330001-40-30-0+16
Andre Drummond C140802110-10-00-0+10
Tyler Kolek G140451020-20-20-0-1
Dalton Knecht F50000000-00-00-0-5

Did not play: James Wiseman (Coach's decision); Jose Alvarado (Coach's decision); Pacome Dadiet (Coach's decision)

Cleveland Cavaliers

PlayerMinPtsRebAstStlBlkTOFG3PTFT+/-
Donovan Mitchell G37374421513-225-136-11-3
James Harden G347250222-91-42-2-15
Evan Mobley C3212950035-111-51-2+9
Peyton Watson G2912621205-111-51-2-9
Meleek Thomas G249400013-103-80-0-10
Tyrese Proctor G237320002-52-41-2-16
Mario Hezonja F190510000-60-50-0-1
Thomas Bryant C155310002-41-30-0-19
Craig Porter Jr. G150110000-00-00-0+1
Riley Minix F108300003-42-30-0+8

Did not play: Norchad Omier (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 1603. /api/basketball/games/1603/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/1603.

box_score.py
import requests

API_KEY = "YOUR_API_KEY"
answer = requests.get(
    "https://sportapi.ai/api/basketball/games/1603/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.