Documentation / Endpoints / Events
/v1/events/{id}
One event: name, dates, venue, and its disciplines with match counts.
GEThttps://api.tabletennisapi.com/v1/events/{id}
Plans:Free keyLiveArchiveComplete
Parameters
| Name | In | Type | Required | What it does | Example |
|---|---|---|---|---|---|
id | path | id | required | The event id, as returned by any list | ev_w5hw10am |
Run it live
GET /v1/events/{id}A real call to the API, from your browser
Your key stays in this page: it is sent only to api.tabletennisapi.com and never stored. Left empty, the call runs on a free key with its dates and fields, 20 calls a minute.
GEThttps://api.tabletennisapi.com/v1/events/{id}
Not run yet
Press Run it to see the answer here.
Response
A real answer from the data. Every field is described in the manual.
200 OKapplication/json
{
"data": {
"id": "ev_w5hw10am",
"name": "Champions Macao 2026 Presented by Galaxy Entertainment Group",
"start_date": "2026-09-08",
"end_date": "2026-09-13",
"venue": "Macao East Asian Games Dome",
"city": "Macao",
"country": "MAC",
"tier": 1,
"utc_offset_min": 480,
"matches": 62,
"disciplines": [
{
"discipline": "MS",
"age_group": null,
"para_class": null,
"matches": 31
},
{
"discipline": "WS",
"age_group": null,
"para_class": null,
"matches": 31
}
]
},
"meta": []
}Example
curl
curl https://api.tabletennisapi.com/v1/events/ev_w5hw10am \
-H "Authorization: Bearer $TT_KEY"Python
import os, requests res = requests.get("https://api.tabletennisapi.com/v1/events/ev_w5hw10am", headers={"Authorization": "Bearer " + os.environ["TT_KEY"]}).json()
Answers come back as data and meta; errors as error. See Errors and Pagination.