OrbTop

ESPN Tennis Scoreboard Scraper (ATP + WTA)

SPORTSAI

ESPN Tennis Scoreboard Scraper (ATP + WTA)

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/scoreboard
https://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: ATP or tour: WTA.
  • Odds and ATP/WTA rankings are not in the scoreboard API. The moneyline fields from the original spec were removed — they aren't available at this endpoint.
  • The sets field 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.