SportAPINBAGet SportAPI Key
108–97Final

Boston Celtics vs Orlando Magic Box Score

Sunday, November 1, 2026 · 3:30 PM ET · Kia Center · Attendance 18,236

Score by quarter

Team1234T
BOS24312231108
ORL2327242397

Box score

Boston Celtics

PlayerMinPtsRebAstStlBlkTOFG3PTFT+/-
Jayson Tatum F3432470248-191-515-17+7
Derrick White G3412222014-82-52-2+18
Paul George F3317682246-143-102-2+10
Neemias Queta C278910214-90-10-0-2
Hugo Gonzalez G147112003-51-30-10
Payton Pritchard G277631113-110-71-1+3
Luka Garza C2112641004-72-42-3+11
Baylor Scheierman G2010210004-52-30-0+10
Sam Hauser F173201001-31-30-0+2
Jordan Walsh G130320010-30-30-0-4

Did not play: Amari Williams (Coach's decision); Ron Harper Jr. (Coach's decision); Mike Conley (Coach's decision); Chris Cenac Jr. (Coach's decision)

Orlando Magic

PlayerMinPtsRebAstStlBlkTOFG3PTFT+/-
Desmond Bane G4019212137-135-90-0-10
Franz Wagner F40146120035-201-43-4-7
Wendell Carter Jr. C3571002032-61-52-4-7
Anthony Black G3323832046-121-510-11-11
Jase Richardson G264130002-80-40-0-8
Tristan da Silva F35231020029-145-80-0-1
Jamal Cain F185110002-51-40-0-7
Nikola Vucevic C72420111-20-00-0-5
Goga Bitadze C50100000-10-00-0+1

Did not play: Alex Morales (Coach's decision); Colin Castleton (Coach's decision); Jevon Carter (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 1557. /api/basketball/games/1557/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/1557.

box_score.py
import requests

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