SportAPINBAGet SportAPI Key
118–102Final

Memphis Grizzlies vs Toronto Raptors Box Score

Monday, November 9, 2026 · 7:30 PM ET · Scotiabank Arena · Attendance 19,106

Score by quarter

Team1234T
MEM25343029118
TOR26272821102

Box score

Memphis Grizzlies

PlayerMinPtsRebAstStlBlkTOFG3PTFT+/-
Cameron Boozer F3322881069-170-54-5+17
Ty Jerome G3227620039-195-114-4+14
Cedric Coward F283642101-61-40-0+19
Jaylen Wells F2614410005-84-50-0+21
Zach Edey C238910132-30-04-4+11
Javon Small G249250003-51-22-2-2
Jerami Grant F2217321106-93-32-20
Cam Spencer G177242033-51-20-0+3
GG Jackson F172100100-30-12-2-6
Taylor Hendricks F169301124-51-10-0+4
Quinten Post C20100000-00-00-0-1
Olivier-Maxence Prosper F10000000-00-00-00
Kris Murray F10000000-00-00-00

Toronto Raptors

PlayerMinPtsRebAstStlBlkTOFG3PTFT+/-
Jamal Shead G36202112036-174-104-4-14
RJ Barrett F3619320117-211-64-9-23
Ja'Kobe Walter G3412600114-132-72-2-21
Jakob Poeltl C3118821439-120-00-0-15
Kyle Anderson F166220103-40-00-0-10
Jamison Battle F2918120016-125-111-2-3
Alijah Martin G212331011-40-20-00
Trayce Jackson-Davis F144612112-30-00-0+2
Allen Graves F133211001-41-20-0+2
Jaden Bradley G90130020-00-00-0+2
Malachi Smith G10000000-00-00-00

Did not play: Kevin McCullar Jr. (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 1618. /api/basketball/games/1618/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/1618.

box_score.py
import requests

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