Catalog
Teams for a sport
GET/v1/teams
Bearer keyCursor paginatedJSON onlyReturns Team[]
Request
curl
curl "https://api.thebettinginsider.com/v1/teams?sport=nba" \
-H "Authorization: Bearer tbi_live_YOUR_KEY"Parameters
| Parameter | Type | Description |
|---|---|---|
| sportrequired | enum | Sport. ncaaf is FBS college football.mlbnflncaafnbanhl |
Paging and CSV behave the same on every list endpoint — see Pagination & CSV.
Response
Captured from production on 2026-10-13, trimmed to two rows. GET /v1/teams?sport=nba
200 OK
{
"data": [
{
"team_id": 94,
"abbreviation": "ATL",
"name": "Atlanta Hawks",
"city": "Atlanta",
"school": "Atlanta",
"mascot": "Hawks",
"conference": "Eastern Conference",
"division": "Southeast",
"logo_url": "https://a.espncdn.com/i/teamlogos/nba/500-dark/atl.png"
},
{
"team_id": 96,
"abbreviation": "BKN",
"name": "Brooklyn Nets",
"city": "Newark",
"school": "Brooklyn",
"mascot": "Nets",
"conference": "Eastern Conference",
"division": "Atlantic",
"logo_url": "https://a.espncdn.com/i/teamlogos/nba/500-dark/bkn.png"
}
],
"next_cursor": null,
"meta": {
"count": 30,
"request_id": "0ee31d32-813c-4b1b-8952-ccc9d56a91c1"
}
}Envelope: { data: Team[], next_cursor: string | null, meta: { count, request_id } }.
Team fields
| Field | Type | Description |
|---|---|---|
| team_id | integer | — |
| abbreviation | string | — |
| name | string | — |
| city | string | null | — |
| school | string | null | College only |
| mascot | string | null | — |
| conference | string | null | — |
| division | string | null | — |
| logo_url | string | null | — |
Errors
| Status | When |
|---|---|
| 400 | Invalid parameter |
| 401 | Missing or unknown API key |
| 403 | Key revoked or subscription inactive |
| 429 | Rate limit or monthly quota exceeded (see Retry-After) |
All errors share one envelope — see Errors.