Sports Data API
Live scores, fixtures, standings, player stats and odds from 12 sports sources.
A sports data API for football (soccer) from FotMob, Transfermarkt and Understat, cricket from Cricbuzz, US sports from ESPN, Formula 1 and motorsport, UFC, chess and esports, plus betting odds from Betfair, FanDuel and other bookmakers. 94 endpoints in this category, from $1 per 1,000 calls.
- 12 platforms
- 94 endpoints
- from $1 / 1,000 calls
- 1,000 free credits / month
Sports APIs on API.SH
Each platform has its own page with endpoints, example responses and prices. One API key works for all of them.
What teams build with sports data
Live scores in your app
Show live scores, fixtures and results for the leagues your users follow.
Stats and player analysis
Pull player and team stats, xG and transfer values for analysis and scouting tools.
Odds and betting models
Collect odds across bookmakers and exchanges to compare prices and feed models.
Popular sports endpoints
| platform | endpoint | per 1,000 calls |
|---|---|---|
| ESPN | ESPN search /espn/ | $1 1 credit |
| Cricbuzz | Cricbuzz player profile and career stats /cricbuzz/ | $1 1 credit |
| FotMob | FotMob search /fotmob/ | $1 1 credit |
| Formula 1 | Formula 1 circuits /f1/ | $1 1 credit |
| Transfermarkt | Transfermarkt search /transfermarkt/ | $1 1 credit |
| UFC | UFC athlete /ufc/ | $1 1 credit |
| Sports Odds | Every market of one event at one bookmaker /odds/ | $1 1 credit |
| Understat | xG league table /understat/ | $1 1 credit |
| Esports | Esports standings: group tables and final placements /esports/ | $1 1 credit |
| Betfair | Betfair Exchange competitions of a sport /betfair/ | $1 1 credit |
| FanDuel | FanDuel Sportsbook game with all markets of a tab /fanduel/ | $1 1 credit |
| Chess | Chess.com or lichess player profile and ratings /chess/ | $1 1 credit |
One request, clean JSON
ESPN search from ESPN: GET https://api.api.sh/espn/
curl "https://api.api.sh/espn/v1/search?q=mahomes" \
-H "x-api-key: $APISH_KEY" import os, requests
res = requests.get(
"https://api.api.sh/espn/v1/search",
params={"q": "mahomes"},
headers={"x-api-key": os.environ["APISH_KEY"]},
timeout=120,
)
res.raise_for_status()
data = res.json() Why API.SH for sports data
- Public data only: no logins, cookies or accounts on the source sites
- One key and one JSON shape across 12 sports platforms and 483 in all
- Blocks, retries and parsing handled for you: no scraper to maintain
- Pay per call; failed calls cost nothing
- Also in n8n, Zapier, Make, Google Sheets and AI agents (MCP)
Compared with other data APIs
Other providers sell each platform as a separate actor, scraper or subscription. On API.SH every sports platform is under one key and one balance, priced per call on the pricing page.
Sports API questions
What is a sports data API?+
A sports data API returns scores, fixtures, standings, player and team stats and odds as structured JSON for apps, websites and models.
Is there a free sports API?+
Yes. Every API.SH account gets 1,000 free credits each month, no card needed. Paid calls start at $1 per 1,000.
Is there a live score API for football and cricket?+
Yes. FotMob and ESPN cover football (soccer) and other sports, and Cricbuzz covers live cricket scores and commentary.
Is there a sports odds API?+
Yes. Odds from Betfair, FanDuel and an aggregated sports odds endpoint are included.
Can I use it from Python?+
Yes. Every endpoint is a GET request returning JSON.