Basketball data API
Basketball data, live through one keyBasketball games, scores and standings across more than forty competitions, with box scores, play by play, teams, players and head to head.
Endpoints
Everything basketball answers
Each one opens in the docs with a live console, your key already filled in.
| Method | Address | What it gives | Free key | |
|---|---|---|---|---|
| GET | /v1/basketball/live | Every game in play now, with the score and the clock | Plan | Try it |
| GET | /v1/basketball/fixtures | Upcoming games by date | Plan | Try it |
| GET | /v1/basketball/results | Finished games by date, with the final score | Yesterday | Try it |
| GET | /v1/basketball/events/{id} | One game in full: both sides, the score, the venue and the officials | Yesterday | Try it |
| GET | /v1/basketball/events/{id}/lineups | Starters, substitutes and formations for both sides | Yesterday | Try it |
| GET | /v1/basketball/events/{id}/periods | The score by quarter, and every scoring event in order | Yesterday | Try it |
| GET | /v1/basketball/competitions | Every competition held, with its seasons | Yesterday | Try it |
| GET | /v1/basketball/standings | A league table for a competition and season | Yesterday | Try it |
| GET | /v1/basketball/teams/{id} | A team and its record | Yesterday | Try it |
| GET | /v1/basketball/players/{id} | A player and their figures | Yesterday | Try it |
| GET | /v1/basketball/head-to-head | Every meeting between two teams | Yesterday | Try it |
| GET | /v1/basketball/search | Teams, players and competitions by name | Yesterday | Try it |
A real answer
What comes back
Kept from the API each night, exactly as a caller receives it, lists cut to a few rows.
{
"data": [
{
"id": "bb_rknadrqbdk",
"competition": {
"id": "bb_k8jc1gev0h",
"name": "ABA League"
},
"season": {
"id": "bb_2h5t02xerd",
"name": "2026-27"
},
"stage": "regular",
"round": null,
"date": "2026-11-02",
"tip_off": "2026-11-02T12:00:00Z",
"status": "final",
"home": {
"id": "bb_rrb2y5qsj2",
"name": "Partizan Mozzart Bet"
},
"away": {
"id": "bb_6atbhcvk5n",
"name": "U-Bt Cluj-Napoca"
},
"home_score": 97,
"away_score": 77,
"attendance": null,
"venue": null,
"has": {
"boxscore": true,
"playbyplay": true,
"shots": false
}
},
{
"id": "bb_44r6be17jp",
"competition": {
"id": "bb_k8jc1gev0h",
"name": "ABA League"
},
"season": {
"id": "bb_2h5t02xerd",
"name": "2026-27"
},
"stage": "regular",
"round": null,
"date": "2026-11-02",
"tip_off": "2026-11-02T15:30:00Z",
"status": "final",
"home": {
"id": "bb_cgbf9rkrpq",
"name": "Dubai Basketball"
},
"away": {
"id": "bb_9brt8kce44",
"name": "Zadar"
},
"home_score": 89,
"away_score": 75,
"attendance": null,
"venue": null,
"has": {
"boxscore": true,
"playbyplay": true,
"shots": false
}
}
],
"meta": {
"sport": "basketball",
"endpoint": "/results",
"count": 20,
"page": 1,
"per_page": 50,
"total": 20,
"total_pages": 1,
"next_cursor": null,
"next_page": null,
"prev_page": null,
"cached": false,
"age_seconds": 0
}
}{
"data": {
"competition": {
"id": "bb_w24r12xjgq",
"name": "NBA"
},
"season": {
"id": "bb_s1cp0p7mh3",
"name": "2026-27"
},
"games": 103,
"through": "2026-11-02",
"table": [
{
"rank": 1,
"team": {
"id": "bb_zvde6hk0bf",
"name": "Houston Rockets"
},
"played": 8,
"won": 7,
"lost": 1,
"win_share": 0.875,
"league_points": 15,
"games_behind": 0,
"points_for": 954,
"points_against": 851,
"points_difference": 103,
"home": "4-0",
"away": "3-1",
"last_ten": "7-1",
"streak": "W2"
},
{
"rank": 2,
"team": {
"id": "bb_vb7amrwdkg",
"name": "Philadelphia 76ers"
},
"played": 8,
"won": 7,
"lost": 1,
"win_share": 0.875,
"league_points": 15,
"games_behind": 0,
"points_for": 887,
"points_against": 841,
"points_difference": 46,
"home": "4-1",
"away": "3-0",
"last_ten": "7-1",
"streak": "W4"
},
{
"rank": 3,
"team": {
"id": "bb_e0k4zbh0w3",
"name": "Memphis Grizzlies"
},
"played": 7,
"won": 6,
"lost": 1,
"win_share": 0.857,
"league_points": 13,
"games_behind": 0.5,
"points_for": 861,
"points_against": 771,
"points_difference": 90,
"home": "2-1",
"away": "4-0",
"last_ten": "6-1",
"streak": "L1"
}
],
"groups": []
},
"meta": {
"sport": "basketball",
"endpoint": "/standings",
"cached": false,
"age_seconds": 0
}
}{
"data": [
{
"id": "bb_k8jc1gev0h",
"name": "ABA League",
"slug": "europe-admiralbet-aba-league",
"country": null,
"gender": "men",
"kind": "international",
"seasons": 26,
"first_season": "2001-02",
"last_season": "2026-27",
"games": 4703,
"finals": 4702,
"detail": "box_scores",
"box_score_share": 99.9,
"play_by_play_share": 36.8
},
{
"id": "bb_b0ze23y957",
"name": "ABA League 2",
"slug": "europe-aba-league-2",
"country": null,
"gender": "men",
"kind": "international",
"seasons": 10,
"first_season": "2017-18",
"last_season": "2026-27",
"games": 984,
"finals": 981,
"detail": "box_scores",
"box_score_share": 99.1,
"play_by_play_share": 98.5
}
],
"meta": {
"sport": "basketball",
"endpoint": "/competitions",
"count": 41,
"page": 1,
"per_page": 50,
"total": 41,
"total_pages": 1,
"next_cursor": null,
"next_page": null,
"prev_page": null,
"cached": false,
"age_seconds": 0
}
}Goes well with
Sports often taken with basketball
Can I try basketball before I pay?
Yes. The free key reads yesterday's basketball data on every endpoint except live and fixtures, 50 calls a day, no card.
What does the Basketball plan include?
Every basketball endpoint, live and upcoming included, the full history we hold, 120 calls a minute and 250,000 a month, for $49 a month or $490 a year.
Does it answer like the other sports?
Yes. Basketball answers in the same shape as every other sport, through the same key, so code written for one reads the rest.
Can I use it with Claude?
Yes. The MCP server turns each basketball endpoint into a tool, on the same key.