Skip to Content

Leagues

Get a list of available leagues with optional sport filtering.

GET /api/v1/leagues

This is a public endpoint — no authentication required. Unauthenticated requests are rate-limited to 10 requests/minute. Authenticated requests receive your tier’s full rate limit.

Query Parameters

ParameterTypeDefaultDescription
sportstringallFilter by sport (e.g., basketball, football)

Example Requests

# List all leagues (no auth required) curl -X GET "https://api.sharpapi.io/api/v1/leagues" # Filter by sport curl -X GET "https://api.sharpapi.io/api/v1/leagues?sport=basketball"

Response

Success (200)

{ "data": [ { "id": "nba", "name": "NBA", "sport": "basketball", "event_count": 15, "live_count": 2 }, { "id": "ncaab", "name": "NCAAB", "sport": "basketball", "event_count": 27, "live_count": 1 }, { "id": "wnba", "name": "WNBA", "sport": "basketball", "event_count": 0, "live_count": 0 } ], "meta": { "count": 3, "total": 3, "pagination": { "limit": 50, "offset": 0, "has_more": false, "next_offset": null }, "updated_at": "2026-01-26T12:00:00Z", "filters": { "sport": "basketball" } } }

All Leagues (No Filter)

{ "data": [ { "id": "nba", "name": "NBA", "sport": "basketball", "event_count": 15, "live_count": 2 }, { "id": "ncaab", "name": "NCAAB", "sport": "basketball", "event_count": 27, "live_count": 1 }, { "id": "wnba", "name": "WNBA", "sport": "basketball", "event_count": 0, "live_count": 0 }, { "id": "nfl", "name": "NFL", "sport": "football", "event_count": 16, "live_count": 1 }, { "id": "ncaaf", "name": "NCAAF", "sport": "football", "event_count": 12, "live_count": 0 }, { "id": "nhl", "name": "NHL", "sport": "hockey", "event_count": 15, "live_count": 2 }, { "id": "mlb", "name": "MLB", "sport": "baseball", "event_count": 0, "live_count": 0 }, { "id": "epl", "name": "English Premier League", "sport": "soccer", "event_count": 10, "live_count": 2 }, { "id": "la_liga", "name": "La Liga", "sport": "soccer", "event_count": 10, "live_count": 1 }, { "id": "serie_a", "name": "Serie A", "sport": "soccer", "event_count": 10, "live_count": 1 }, { "id": "bundesliga", "name": "Bundesliga", "sport": "soccer", "event_count": 5, "live_count": 0 }, { "id": "mls", "name": "MLS", "sport": "soccer", "event_count": 0, "live_count": 0 }, { "id": "atp", "name": "ATP", "sport": "tennis", "event_count": 12, "live_count": 4 }, { "id": "wta", "name": "WTA", "sport": "tennis", "event_count": 6, "live_count": 2 }, { "id": "ufc", "name": "UFC", "sport": "mma", "event_count": 12, "live_count": 0 }, { "id": "pga", "name": "PGA Tour", "sport": "golf", "event_count": 4, "live_count": 1 } ], "meta": { "count": 16, "total": 16, "pagination": { "limit": 50, "offset": 0, "has_more": false, "next_offset": null }, "updated_at": "2026-01-26T12:00:00Z", "filters": {} } }

League Object Schema

FieldTypeDescription
idstringLeague identifier (lowercase, use in API filters)
namestringHuman-readable league name
sportstringParent sport ID
event_countintegerTotal events currently available with odds
live_countintegerEvents currently live/in-play

Leagues by Sport

Basketball

IDDisplay NameDescription
nbaNBANational Basketball Association
ncaabNCAABNCAA Men’s Basketball
wnbaWNBAWomen’s National Basketball Association

Football

IDDisplay NameDescription
nflNFLNational Football League
ncaafNCAAFNCAA Football

Hockey

IDDisplay NameDescription
nhlNHLNational Hockey League

Baseball

IDDisplay NameDescription
mlbMLBMajor League Baseball

Soccer

IDDisplay NameDescription
eplEnglish Premier LeagueEnglish Premier League
la_ligaLa LigaSpanish La Liga
serie_aSerie AItalian Serie A
bundesligaBundesligaGerman Bundesliga
mlsMLSMajor League Soccer

Tennis

IDDisplay NameDescription
atpATPAssociation of Tennis Professionals
wtaWTAWomen’s Tennis Association

MMA

IDDisplay NameDescription
ufcUFCUltimate Fighting Championship

Golf

IDDisplay NameDescription
pgaPGA TourProfessional Golfers’ Association Tour

The event_count and live_count values are dynamic. Off-season leagues (e.g., MLB in winter, WNBA in fall) will show 0 events.

Using Leagues in Filters

Use the league id as a filter parameter on other endpoints:

# Get NBA odds curl "https://api.sharpapi.io/api/v1/odds?league=nba" \ -H "X-API-Key: YOUR_API_KEY" # Get best odds for NFL and NBA curl "https://api.sharpapi.io/api/v1/odds/best?league=nfl,nba" \ -H "X-API-Key: YOUR_API_KEY"
Last updated on