ESPN Tennis Scoreboard Scraper (ATP + WTA)
Pricing
Pay per event
ESPN Tennis Scoreboard Scraper (ATP + WTA)
Scrapes live and historical ATP + WTA match scoreboards from ESPN's hidden API. Returns match-level records with scores, status, court, round, and player details for all tournaments including Wimbledon and US Open.
Pricing
Pay per event
Rating
0.0
(0)
Developer
BowTiedRaccoon
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Share
Pulls match scoreboards from ESPN's hidden tennis API. Returns structured match records for ATP and WTA tournaments — including Wimbledon and the US Open — with round, court, player names, countries, set scores, and match status.
The API is open, unauthenticated, and returns ~1 MB of data per request. No browser, no proxy, no parsing HTML. You get clean JSON in under five seconds.
What You Get
One record per match. The schema covers what actually matters for betting analytics, DFS, and sports media applications.
| Field | Type | Description |
|---|---|---|
event_id | string | ESPN's unique competition ID |
tournament_name | string | Full tournament name (e.g. Wimbledon, US Open) |
tournament_slug | string | ESPN tournament UID |
tour | string | Tour designation — ATP or WTA |
round | string | Round label (e.g. Round 1, Quarterfinals, Final) |
court_name | string | Court within the venue (e.g. Centre Court, Court 17) |
status | string | Match state: pre, in, or post |
status_detail | string | Human-readable status (e.g. Final, In Progress, Scheduled) |
date_utc | string | Match date/time in UTC ISO-8601 |
player_1_name | string | Player 1 full name |
player_1_country | string | Player 1 country |
player_1_winner | boolean | Whether player 1 won |
player_2_name | string | Player 2 full name |
player_2_country | string | Player 2 country |
player_2_winner | boolean | Whether player 2 won |
sets | string | Pipe-separated set scores (e.g. 6-4|3-6|7-5) |
score_summary | string | ESPN's own match summary line (e.g. Sinner bt Alcaraz 6-3 6-4) |
match_type | string | Draw type (e.g. Men's Singles, Women's Doubles) |
source | string | Data origin tag (espn-atp or espn-wta) |
How It Works
Two API endpoints — one for ATP, one for WTA:
https://site.api.espn.com/apis/site/v2/sports/tennis/atp/scoreboardhttps://site.api.espn.com/apis/site/v2/sports/tennis/wta/scoreboard
Each call returns all tournaments in the current window with their full match slates. Add a ?dates=YYYYMMDD parameter to retrieve a specific day's scoreboard — useful for backfilling a tournament's fortnight.
The actor flattens the three-level nesting (tournament → round grouping → match) into a flat record stream. Both tours run as parallel queries when tour: both.
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
tour | string | both | Which tour to fetch: atp, wta, or both |
dates | string | (today) | Comma-separated dates in YYYYMMDD format (e.g. 20260629,20260630). Leave blank for the current window. |
maxItems | integer | 10 | Maximum match records to return. Set to 0 for unlimited. |
Example Use Cases
During Wimbledon or US Open: Fetch today's full match slate for both tours with one run. Add to a scheduled task to refresh every hour during the tournament fortnight.
DFS lineup research: Pull all completed first-round matches to see who's fresh and who went three sets. The sets field tells the story.
Backfill a tournament: Pass a comma-separated list of dates covering the full draw (e.g. all 14 days of Wimbledon) to reconstruct the complete results history.
Multi-sport pipelines: The same ESPN API pattern covers other sports. The source field tags each record's origin for downstream deduplication.
Notes
- ATP and WTA scoreboards are separate API roots — this actor pulls both and tags each record with
tour: ATPortour: WTA. - Odds and ATP/WTA rankings are not in the scoreboard API. The
moneylinefields from the original spec were removed — they aren't available at this endpoint. - The
setsfield uses pipe notation (6-4|3-6|7-5) — split on|to get individual set scores as an array. - Works year-round, not just during Grand Slams. All ATP and WTA tour events are covered.