Skip to content

List matches with filters

GET
/api/v1/matches
curl --request GET \
--url 'https://internal.myscore.live/api/v1/api/v1/matches?tournamentId=trn_abc123&drawId=drw_abc123&status=scheduled&courtId=crt_wimbledon_centre_court&playerId=plr_federer&clubId=clb_abc123&live=true&page=1&perPage=20&sort=schedule'

Returns a paginated list of matches with player, tournament, draw, and court context. Supports filtering and sorting.

tournamentId
string
Example
trn_abc123

Filter to a specific tournament

drawId
string
Example
drw_abc123

Filter to a specific draw

status
string
Allowed values: scheduled in_progress suspended completed cancelled

Filter by match status

courtId
string
Example
crt_wimbledon_centre_court

Filter to a specific court

playerId
string
Example
plr_federer

Filter to matches involving the specified player

clubId
string
Example
clb_abc123

Filter to matches taking place at the specified venue club (the assigned court’s club, or the host/home club when no court is assigned)

live
boolean
Example
true

When true, returns only in_progress matches

page
number
Example
1

Page number (1-based)

perPage
number
Example
20

Items per page

sort
string
Allowed values: schedule

Sort order. schedule orders by scheduledTime → notBeforeTime → playOrder (NULLS LAST) with stable tiebreaker on createdAt, id.

List of matches

Media type application/json
object
data
required

Page of matches

Array<object>
object
id
required

Match ID

string
status
required

Match lifecycle status

string
Allowed values: scheduled in_progress suspended completed cancelled
sets

Set scores in chronological order

Array<object>
nullable
object
home
required

Games won by the home side in this set

number
guest
required

Games won by the guest side in this set

number
notes

Match notes (delays, incidents, etc.)

string
nullable
winnerSide

Winning side

string
nullable
Allowed values: home guest
outcome

Match outcome type

string
nullable
Allowed values: completed walkover retirement default
confirmedAt

When the match result was confirmed

string format: date-time
nullable
confirmedByUserId

User who confirmed the match

string
nullable
startedAt

When the match started

string format: date-time
nullable
completedAt

When the match was completed

string format: date-time
nullable
finishedAt

When the match finished (alias of completedAt)

string format: date-time
nullable
createdAt
required

Record creation timestamp

string format: date-time
updatedAt
required

Record last update timestamp

string format: date-time
suggestedWinner

Server-computed winner suggestion from current sets + draw format rules. Null when score does not yet determine a winner. Read-only — distinct from confirmed winnerSide.

string
nullable
Allowed values: home guest
meta
required

Pagination metadata

object
Example
{
"data": [
{
"id": "match_abc123",
"status": "scheduled",
"sets": [
{
"home": 6,
"guest": 4
}
],
"notes": "Rain delay at 3-2",
"winnerSide": "home",
"outcome": "completed",
"confirmedAt": "2026-01-15T15:30:00.000Z",
"confirmedByUserId": "usr_abc123",
"startedAt": "2026-01-15T14:00:00.000Z",
"completedAt": "2026-01-15T15:25:00.000Z",
"finishedAt": "2026-01-15T15:25:00.000Z",
"createdAt": "2026-01-15T10:30:00Z",
"updatedAt": "2026-01-15T11:00:00Z",
"suggestedWinner": "home"
}
],
"meta": {
"page": 1,
"perPage": 20,
"total": 100
}
}

Rate limit exceeded