The ATP API that remembers Laver and streams Sinner

Every ATP match since 1968, every ranking Monday, every draw — with live scores when the tour is playing, and the WTA in the same key at no extra step.

$ curl "https://api.citoapi.com/api/v1/tennis/rankings?tour=ATP&date=1990-08-13" \
    -H "x-api-key: YOUR_API_KEY"

{ "ranking_date": "1990-08-13", "tour": "ATP",
  "items": [ { "rank": 1, "player_name": "Stefan Edberg", "points": 3389 } ] }

Complete ATP coverage, tier by tier

Tour-level main draws, qualifying, and the Challenger grind — 59 seasons of it, with set scores, serve stats, seeds, and rounds. Filter /tennis/matches with tour=ATP and go as deep as your product needs.

The ATP rankings, every week they've existed

From the 1970s to the current table: full weekly snapshots by date, top-N cuts, and per-player career curves. Chart the 286 weeks of a dominant No. 1 or the climb of this year's breakout in the same two calls.

One key, both tours

Everything here has a WTA mirror — same endpoints, tour=WTA. Build once, cover the sport.

The dataset behind it

1,730,276 matches

Every ATP and WTA match since 1968 — main draws, qualifying, Challengers, and ITF — with set scores and serve stats.

5,566,184 ranking rows

Every published weekly ranking Monday for both tours, queryable by exact date.

137,410 players

Bios, handedness, countries, activity status, and career statistics with surface and year filters.

57,910 tournaments

Editions with tier, surface, dates, season calendars, and round-by-round draw brackets.

Head-to-head engine

Any two players in history — or a whole group via the H2H matrix — with surface, finals, and Slam splits.

Live scoreboards

In-progress matches with per-match detailed state, plus recent results the moment they finish.

Frequently asked

Ready to go
live ?

Get your API key in minutes. Stream live scores, stats, and rankings from the ATP and WTA tours