ESPN Scores Lookup: Games, Scores and Teams by League
Pricing
from $0.75 / 1,000 game score returneds
ESPN Scores Lookup: Games, Scores and Teams by League
ESPN scores scraper for NBA, NFL, MLB, NHL, soccer and college leagues. Extract live scores, game status, teams, venues and odds. Misses are free.
Pricing
from $0.75 / 1,000 game score returneds
Rating
0.0
(0)
Developer
Adrian Voss
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 hours ago
Last modified
Categories
Share
Get live scores, final results, team stats, venues and betting odds across major sports leagues from ESPN. Lookup current, live and scheduled game scores across the NBA, NFL, MLB, NHL, college sports, and major soccer leagues. Pay per game returned; empty scoreboards and misses are free.
Used by sports analytics teams, fantasy sports operators, odds trackers, and media publishers needing clean, structured match data without running browser scrapers.
How to use
- In the Apify Console. Open the actor page and click Start — the
leaguesfield is already pre-filled with a working example. Results land in the run's dataset as soon as each item is found. - Via the API. Call it directly with a POST request — no Console needed once you have an API token:
curl "https://api.apify.com/v2/acts/accountable_eel~espn-scores-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"leagues":["basketball/nba","football/nfl"]}'
- On a schedule. Save this actor as an Apify Task with the input you want, then add a Schedule (hourly, daily, weekly) so it runs on its own — no server of your own required.
Input
{"leagues": ["basketball/nba","football/nfl"]}
One sport/league per line (e.g. basketball/nba, football/nfl, baseball/mlb, hockey/nhl, soccer/eng.1). Accepted formats: basketball/nba, football/nfl, baseball/mlb, hockey/nhl, nba, nfl, https://www.espn.com/nba/scoreboard.
Output
One row per game, for example:
| query | found | status | gameId | gameUid | gameName | shortName | gameDate | league | leagueName | seasonYear | seasonType | gameStatus | statusState | statusDetail | isCompleted | homeTeam | homeTeamAbbreviation | homeTeamId | homeScore | homeWinner | homeRecord | awayTeam | awayTeamAbbreviation | awayTeamId | awayScore | awayWinner | awayRecord | venueName | venueCity | venueState | broadcast | oddsSpread | oddsOverUnder | gameUrl | sourceUrl | scrapedAt |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| basketball/nba | true | OK | <state (pre/in/post)> | <over/under total> | 1970-01-01T00:00:00.000Z |
A miss comes back as a row with "found": false and is never charged. When a match has not started yet, homeScore and awayScore are null (never 0).
Pricing
- Game score returned: $1.50 per 1,000 games
Plus a $0.00005 start fee per run. Charged only for games returned in the dataset — empty scoreboards or not-found leagues are never charged.
Example runs
Paste any of these into the Input tab and press Start. All three return rows with no key, no token, and no external accounts.
NBA and NFL today's scoreboard (default).
{"leagues": ["basketball/nba","football/nfl"],"maxItems": 20}
Major European soccer leagues.
{"leagues": ["soccer/eng.1","soccer/uefa.champions","soccer/esp.1"],"maxItems": 15}
Specific game date lookup for MLB and College Football.
{"leagues": ["baseball/mlb","football/college-football"],"dates": "20261010","maxItems": 20}
Use it from Clay, n8n, Make, or an AI agent
This actor runs synchronously over plain HTTP — call it directly from a script, a workflow tool, or an AI agent, no Apify Console needed once you have an API token.
curl "https://api.apify.com/v2/acts/accountable_eel~espn-scores-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"leagues":["basketball/nba","football/nfl"]}'
n8n. Add an HTTP Request node: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~espn-scores-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body Content Type JSON, JSON Body {"leagues":["basketball/nba","football/nfl"]} (swap in an expression from an earlier node for a real value).
Clay. Add an "HTTP API" column: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~espn-scores-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body {"leagues":["{{league}}"]}, mapping the row's league into the leagues array.
MCP. In Claude, Cursor, or any MCP client with the Apify MCP server, ask for "espn scraper" — the agent will find and run this actor.