SportAPINBAGet SportAPI Key
112–124Final

Cleveland Cavaliers vs Charlotte Hornets Box Score

Monday, November 9, 2026 · 7:00 PM ET · Spectrum Center · Attendance 17,471

Score by quarter

Team1234T
CLE28252732112
CHA29403817124

Box score

Cleveland Cavaliers

PlayerMinPtsRebAstStlBlkTOFG3PTFT+/-
James Harden G2511351043-92-73-3-22
Evan Mobley C249232143-52-21-2-24
Donovan Mitchell G2311241004-111-32-2-3
Peyton Watson G2113210025-92-41-2-10
Jarrett Allen C1912710115-51-11-2-9
Meleek Thomas G2618332207-124-60-0-1
Tyrese Proctor G236141012-40-12-3-20
Mario Hezonja F1710300105-110-30-0-16
Craig Porter Jr. G169241014-60-11-1+7
Riley Minix F152200001-40-30-0+6
Thomas Bryant C1311201103-52-33-3+19
Norchad Omier C100310000-10-10-0+16

Charlotte Hornets

PlayerMinPtsRebAstStlBlkTOFG3PTFT+/-
Ryan Kalkbrenner C3381532324-70-00-0+20
Naz Reid C322513410310-264-91-2+16
Sion James G3211442004-93-60-0+18
Grayson Allen G3127462038-146-125-6-2
Coby White G2010380033-120-44-5-6
Royce O'Neale F2110311004-82-50-0+11
Tidjane Salaun F1714301004-63-43-3-3
Christian Anderson G169110023-53-40-0+6
Liam McNeeley G168110003-32-20-0+4
Hannes Steinbach F132210011-30-00-0-6

Did not play: PJ Hall (Coach's decision); Michael Ajayi (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 1616. /api/basketball/games/1616/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/1616.

box_score.py
import requests

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