API Reference
Rankings
The Rankings module provides live world rankings for both singles and doubles categories across ATP and WTA tours. Rankings data is updated regularly to reflect the latest tournament results.
How Rankings Work
Rankings are not a separate table. They are served directly from the Player entity, which stores the current ranking snapshot on each player row. The database is updated whenever ATP/WTA publish their official weekly ranking lists.
A separate Rating table stores historical ranking snapshots â one row per player per date â enabling you to reconstruct ranking history or build charts showing how a player's position changed over time.
| Source | What it contains | Use case |
|---|---|---|
| Player entity | Current ranking: position, points, progress, surface breakdown | Today's live rankings list |
| Rating entity | Historical snapshot: date, position, point per player | Ranking history charts, "peak ranking" analysis |
Endpoint Summary
|
|
|
|
|
|
|
Get Singles Ranking
/tennis/v2/{tour_type}/ranking/singlesPath Parameter
| Parameter | Required | Description |
|---|---|---|
tour_type | Yes | Tour category. Allowed values: atp, wta. |
Query Parameter
| Parameter | Required | Description |
|---|---|---|
race | No | Set to true to return the Race to Turin / Race to Fort Worth standings instead of the standard 52-week rankings. Results are sorted by year-to-date race points (racePoints) descending. Supports filter=PlayerCountry and pagination. Example: race=true |
filter | No | Semicolon-separated filters in Key:value format. Available filters:
filter=RankingDate:2025-01-06;PlayerCountry:ESP,ITA |
pageSize | No | Results per page. Default: 10 (standard rankings) / 100 (race rankings). |
pageNo | No | Page number, 1-indexed. Default: 1. Example: pageNo=1. Use hasNextPage in the response to check for more pages. |
Get Doubles Rankings
/tennis/v2/{tour_type}/ranking/doublesPath Parameter
| Parameter | Required | Description |
|---|---|---|
tour_type | Yes | Tour category. Allowed values: atp, wta. |
Query Parameter
| Parameter | Required | Description |
|---|---|---|
filter | No | Semicolon-separated filters in Key:value format. Available filters:
filter=PlayerCountry:ESP,ITA |
Get Race Rankings (Year-to-Date)
/tennis/v2/{tour_type}/ranking/singles?race=truePath Parameter
| Parameter | Required | Description |
|---|---|---|
tour_type | Yes | Tour category. Allowed values: atp, wta. |
Query Parameter
| Parameter | Required | Description |
|---|---|---|
race | Yes | Set to true to return the Race to Turin / Race to Fort Worth standings instead of the standard 52-week rankings. Results are sorted by year-to-date race points (racePoints) descending. Supports filter=PlayerCountry and pagination. Example: race=true |
Add race=true to the singles ranking endpoint to switch from the standard 52-week rolling rankings to the year-to-date race standings. Only players with race points > 0 are returned.
Get Top 10 Rankings
/tennis/v2/ranking/{tour_type}/topPath Parameter
| Parameter | Required | Description |
|---|---|---|
tour_type | Yes | Tour category. Allowed values: atp, wta. |
Get Ranking Filters
/tennis/v2/ranking/{tour_type}/filtersPath Parameter
| Parameter | Required | Description |
|---|---|---|
tour_type | Yes | Tour category. Allowed values: atp, wta. |
Get Player Ranking History
/tennis/v2/ranking/{tour_type}/player/{player_id}/historyPath Parameter
| Parameter | Required | Description |
|---|---|---|
tour_type | Yes | Tour category. Allowed values: atp, wta. |
player_id | Yes | Player ID (âĨ 1). Obtain from the Players module. |
Get Full Rankings
/tennis/v2/ranking/{tour_type}Path Parameter
| Parameter | Required | Description |
|---|---|---|
tour_type | Yes | Tour category. Allowed values: atp, wta. |
Query Parameter
| Parameter | Required | Description |
|---|---|---|
group | Yes | Filter by group. Enum("singles", "doubles"). Example: group=singles |
date | Yes | date in DD.MM.YYYY format, e.g. date=08.07.2026 |
countryAcr | No | e.g. countryAcr=ESP |
page | No | Page number (default: 1). Example: page=1 |
limit | No | Number of rivalries to return (default: 10). Example: limit=10 |
The /tennis/v2/ranking endpoint in the Miscellaneous module returns ranking tier definitions (Grand Slam, Masters 1000, etc.) â not player rankings.