tennis.match.startedActiveA tennis match went live. data is the match as /tennis/matches/live returns it.
- When
- A match goes live (first point played). Once per match.
- Frequency
- about 4 per day across all matches
- Delivery
- Median 128 ms, p95 282 ms, from the moment Cito recorded the event to the moment a customer endpoint answered (29 recent deliveries).
- Plan
- Pro and Scale
- Filters
matchId,tour,tournamentId,playerId- Use it to
- Flip a match to live and start your scoreboard.
The envelope match_id equals data.id.
Fields in data (34)
| Field | Type | Meaning |
|---|---|---|
| best_of | number | 3 or 5 sets. |
| canonical_id | string | The id to store. Same as id for almost all matches. |
| canonical_tournament_id | string | The tournament id to store. |
| court | null or string | Court name when known. |
| current_set | number | The set being played. |
| game_score | string | Point score of the current game. |
| id | string | The match id. Works on /tennis/matches/{id}. Same as the envelope match_id. |
| is_simulated | boolean | |
| last_updated_at | string | When this match last changed. |
| live_match_id | string | The id on /tennis/matches/live. |
| loser | null | Losing player. Null while live. |
| match_id | string | The match id. Works on the match routes for this sport. |
| outcome | null | COMPLETED, RETIREMENT, WALKOVER, DEFAULT or ABANDONED. |
| player1 | object | First player. On completed matches player1 is the winner, as on /matches/{id}. |
| player2 | object | Second player. |
| round | string | Round code, for example F or Q. |
| round_name | string | Round name in words. |
| scheduled_at | string | Scheduled start, ISO 8601 UTC. |
| server | number | Who is serving: 1 or 2. |
| sets | array | Each set with games per player and any tiebreak. |
| started_at | string | When the match started. |
| stats_available | boolean | True when serve statistics exist for this match. |
| stats_points_counted | null or number | |
| stats_unavailable_code | null or string | |
| status | string | IN_PROGRESS or COMPLETED. |
| surface | string | Hard, Clay, Grass or Carpet. |
| tiebreak_score | null | Tiebreak points while one is being played. |
| tour | string | ATP, WTA and so on. |
| tournament_display_name | string | |
| tournament_id | string | Tournament id. Works on /tennis/tournaments/{id}. |
| tournament_name | string | Tournament name. |
| tournament_short_name | string | |
| winner | null | Winning player. Null while live. |
| winner_side | null | 1 or 2. |
Full example (real payload)
{
"event": "tennis.match.started",
"id": "a1b2c3d4-0000-4000-8000-000000000000",
"timestamp": "2026-11-08T18:30:03.776Z",
"event_type": "tennis.match.started",
"match_id": "{matchId}",
"previous_state": null,
"data": {
"id": "{matchId}",
"sets": [
{
"score": "0-0",
"set_num": 1,
"tiebreak": null,
"set_number": 1,
"is_completed": false,
"player1_games": 0,
"player2_games": 0,
"tiebreak_points": null
}
],
"tour": "ATP",
"court": "Cancha Central",
"loser": null,
"round": "Q",
"server": 1,
"status": "IN_PROGRESS",
"winner": null,
"best_of": 3,
"outcome": null,
"player1": {
"id": "atp_200335",
"ioc": "BRA",
"name": "Felipe Meligeni",
"seed": null,
"sets_won": 0,
"is_serving": true,
"canonical_id": "atp_200335",
"current_game_score": "15"
},
"player2": {
"id": "atp_111797",
"ioc": "CHI",
"name": "Nicolas Jarry",
"seed": null,
"sets_won": 0,
"is_serving": false,
"canonical_id": "atp_111797",
"current_game_score": "0"
},
"surface": "Clay",
"match_id": "{matchId}",
"game_score": "15-0",
"round_name": "Qualifying (round unspecified)",
"started_at": "2026-11-08T18:20:00+00:00",
"current_set": 1,
"winner_side": null,
"canonical_id": "{matchId}",
"is_simulated": false,
"scheduled_at": "2026-11-08T18:20:00+00:00",
"live_match_id": "{id}",
"tournament_id": "{id}-challenger-lima-6948-7",
"tiebreak_score": null,
"last_updated_at": "2026-11-08T18:29:54.118590+00:00",
"stats_available": false,
"tournament_name": "Lima",
"stats_points_counted": null,
"tournament_short_name": "Lima",
"stats_unavailable_code": "not_published_yet",
"canonical_tournament_id": "{id}-challenger-lima-6948-7",
"tournament_display_name": "Lima CH"
}
}