Upcoming Events
GET/tennis/v2/extend/api/events/upcoming/{tourType}
Returns a paginated list of upcoming tennis events with match details and pagination metadata.Path Parameter
| Parameter | Type |
|---|---|
{tourType}Required | string |
Tour type is "atp" or "wta" | |
Query Parameter
| Parameter | Type |
|---|---|
pageOptional | integer |
Page by default 1 | |
limitOptional | integer |
Limit by default 20 | |
Live Events
GET/tennis/v2/extend/api/events/live
Returns a list of all live eventsResponse Properties
| Parameter | Type | Description |
|---|---|---|
id | string | Unique identifier of the live match in this API. |
name | string | Display name of the match, formatted as 'Player 1 vs Player 2'. |
participant1 | string | Name of the first player. |
participant2 | string | Name of the second player. |
league | string | Tournament or event name. |
score | string | Current match score. |
status | string | Current match status (Upcoming, InPlay, Finished, etc.). |
points | string | Current point score of the ongoing game. |
indicator | string | Internal live-state indicator used for serving/player status. |
tourType | string | Competition category (ATP, WTA, ITF, Challenger, etc.). |
startTimestamp | number | Scheduled match start time as a Unix timestamp (seconds). |
matchId | string | Maps this event to the main Tennis API. Format: {player1Id}-{player2Id}-{tourId}-{roundId}. Example: 45191 = Player 1 ID, 59913 = Player 2 ID, 17112 = Tournament ID, 12 = Round ID. |
Get Event Information
GET/tennis/v2/extend/api/event/get/{player1}/{player2}/{dateOnly}
Returns detailed information for a specific tennis match, including match status, score, player names, live statistics, and the complete match timeline of games, breaks, and set events.Path Parameter
| Parameter | Type |
|---|---|
{player1}Required | string |
Player 1 name. Example: Kamil Majchrzak | |
{player2}Required | string |
Player 2 name. Example: Daniil Medvedev | |
{dateOnly}Required | string |
Date only in YYYY-MM-DD format. Example: 2026-06-13 | |
Response Properties
| Parameter | Type | Description |
|---|---|---|
success | boolean | Indicates whether the request was successful. |
result | object | Contains the detailed information for the requested match. |
message | string | Response message returned by the API. |
result.status | string | Current match status (e.g. Upcoming, InPlay, Ended, Retired, Walkover). |
result.id | string | Unique identifier of the match in the Live API. |
result.startTimestamp | number | Scheduled match start time as a Unix timestamp (seconds). |
result.name | string | Display name of the match in 'Player 1 vs Player 2' format. |
result.participant1 | string | Name of the first player. |
result.participant2 | string | Name of the second player. |
result.league | string | Tournament or event where the match is played. |
result.score | string | Current or final set score of the match. |
result.indicator | string | Internal live-state indicator used for serving/player status. |
result.points | string | Current game point score (e.g. 15-30, 40-40). |
result.matchId | string | Maps this event to the main Tennis API. Format: {player1Id}-{player2Id}-{tourId}-{roundId}. Example: 45191 = Player 1 ID, 59913 = Player 2 ID, 17112 = Tournament ID, 12 = Round ID. |
result.stats | object | Collection of available match statistics. Available statistics may vary depending on the match. |
result.stats.aces | array<string> | Number of aces by each player. Index 0 = participant1, Index 1 = participant2. |
result.stats.double_faults | array<string> | Number of double faults committed by each player. |
result.stats.win_1st_serve | array<string> | First serve win percentage for each player. |
result.stats.break_point_conversions | array<string> | Break point conversion percentage for each player. |
result.timeline | array<object> | Chronological list of important match events. |
result.timeline[].id | string | Unique identifier of the timeline event. |
result.timeline[].text | string | Human-readable description of the event, such as a game hold, break, or tie-break result. |
Get All Bookmakers
GET/tennis/v2/extend/api/bookmakers/all
Retrieves all available bookmakers.Get All Markets
GET/tennis/v2/extend/api/markets/all
Retrieves all available markets.Get Compared Odds By Market Id
GET/tennis/v2/extend/api/odds/compare/{eventId}?market_id={marketId}
Retrieves compared odds for a specific market using its market ID, allowing you to compare odds from multiple providers in a single response.Path Parameter
| Parameter | Type |
|---|---|
{eventId}Required | integer |
Required event ID | |
Query Parameter
| Parameter | Type |
|---|---|
{market_id}Required | integer |
Market ID. Example: market_id=1. You can see market list | |
Get Last 10 Odds Movements
GET/tennis/v2/extend/api/odds/summary/movements/last-10/{eventId}
Retrieves last 10 odds movement across all markets and bookmakers.Path Parameter
| Parameter | Type |
|---|---|
{eventId}Required | integer |
Event Id | |
Get Live Score
GET/tennis/v2/extend/api/event/live-score/get/{eventId}
Retrieves the live score for a specific event using its event ID. Data is returned only when the event is currently live.Path Parameter
| Parameter | Type |
|---|---|
{eventId}Required | integer |
Event Id. | |
Get Points By Points
GET/tennis/v2/extend/api/event/pbp/{player1Id}/{player2Id}/{tourId}/{roundId}
Retrieves event points by points data.Path Parameter
| Parameter | Type |
|---|---|
{player1Id}Required | integer |
First Player Id. | |
{player2Id}Required | integer |
Second Player Id. | |
{tourId}Required | integer |
Tournament Id. | |
{roundId}Required | integer |
Round Id. | |
Get Event Timeline Data
GET/tennis/v2/extend/api/event/timeline/{eventId}
Retrieves event timeline data.Path Parameter
| Parameter | Type |
|---|---|
{eventId}Required | integer |
Event Id. | |
Get Recent Odds Of The Event
GET/tennis/v2/extend/api/event/recent-odds/get/{eventId}
Retrieves recent odds of the event.Path Parameter
| Parameter | Type |
|---|---|
{eventId}Required | integer |
Event Id. | |
Get Arbitrage Odds
GET/tennis/v2/extend/api/odds/arbitrage/{eventId}?market_id={marketId}
Identifies arbitrage opportunities by comparing the best available odds across bookmakers, including the expected profit percentage and bookmakers offering the optimal odds for each outcome.Path Parameter
| Parameter | Type |
|---|---|
{eventId}Required | integer |
Required event ID | |
Query Parameter
| Parameter | Type |
|---|---|
{market_id}Required | integer |
Market ID. Example: market_id=1. You can see market list | |
Response Properties
| Parameter | Type | Description |
|---|---|---|
success | boolean | Indicates whether the request was successful. |
result | object | Contains the calculated arbitrage analysis. |
result.arbitrage | boolean | Indicates whether an arbitrage opportunity exists based on the available odds. |
result.margin | number | The implied market margin calculated from the selected best odds. A value below 1 indicates an arbitrage opportunity. |
result.profitPercentage | number | The estimated guaranteed profit percentage if the arbitrage opportunity is executed correctly. |
result.bestOdds | object | The highest available odds selected for each outcome. |
result.bestOdds.outcome1 | object | Best available odds for the first outcome. |
result.bestOdds.outcome1.bookmakerId | number | Unique identifier of the bookmaker offering the best odds for outcome 1. |
result.bestOdds.outcome1.bookmaker | string | Name of the bookmaker offering the best odds for outcome 1. |
result.bestOdds.outcome1.odds | number | Highest available decimal odds for outcome 1. |
result.bestOdds.outcome2 | object | Best available odds for the second outcome. |
result.bestOdds.outcome2.bookmakerId | number | Unique identifier of the bookmaker offering the best odds for outcome 2. |
result.bestOdds.outcome2.bookmaker | string | Name of the bookmaker offering the best odds for outcome 2. |
result.bestOdds.outcome2.odds | number | Highest available decimal odds for outcome 2. |
result.bookmakersChecked | number | Total number of bookmakers included in the arbitrage calculation. |
Get Biggest Movements Odds
GET/tennis/v2/extend/api/odds/biggest-movements/{eventId}?market_id={marketId}
Returns the largest odds movements between opening and closing prices across bookmakers and markets for an event.Path Parameter
| Parameter | Type |
|---|---|
{eventId}Required | integer |
Required event ID | |
Query Parameter
| Parameter | Type |
|---|---|
{market_id}Required | integer |
Market ID. Example: market_id=1. You can see market list | |
Response Properties
| Parameter | Type | Description |
|---|---|---|
success | boolean | Indicates whether the request was successful. |
count | number | Total number of odds movement records returned. |
results | array | List of the biggest odds movements. |
results[].marketId | number | Unique identifier of the betting market. |
results[].market | string | Name of the betting market. |
results[].bookmakerId | number | Unique identifier of the bookmaker. |
results[].bookmaker | string | Name of the bookmaker. |
results[].openingOd1 | string | Opening decimal odds for outcome 1. |
results[].closingOd1 | string | Closing decimal odds for outcome 1. |
results[].openingOd2 | string | Opening decimal odds for outcome 2. |
results[].closingOd2 | string | Closing decimal odds for outcome 2. |
results[].movementOd1 | string | Absolute movement in odds for outcome 1. |
results[].movementOd2 | string | Absolute movement in odds for outcome 2. |
results[].biggestMovement | string | Largest absolute odds movement between the two outcomes. |
results[].selection | string | The outcome with the largest movement ("outcome1" or "outcome2"). |