tennisMatches
Query
Paginated, filterable tennis match list for the operator Matches table (POD-659). Mirrors
footballMatches: build a WHERE from the optional filters, count + page in parallel, and return
{ items, totalCount }.
competitionId selects a template competition (e.g. “Wimbledon”) and matches every match under
it — the resolver expands the template down its parent_id spine to the stage editions that
tennis_matches.competition_id actually references. year narrows to one edition
(EXTRACT(YEAR FROM scheduled_time)). status is the coarse MultisportEventStatus, expanded to
the stored refined values in SQL (so FINISHED matches stored RETIRED/WALKOVER too). Date range
is an inclusive calendar-day span on scheduled_time (sargable — the bound is cast, never the
column) — pass orderDir: asc with a dateStart/dateEnd window for a forward view (e.g. the
dashboard’s coming-up/live). orderBy defaults to scheduledTime.
Returns: TennisMatchesResult!
Arguments
Section titled “Arguments”| Name | Type | Description |
|---|---|---|
competitionId | ID | — |
year | Int | — |
participantId | ID | Match id where this player appears on either side (singles or either doubles partner). |
status | [MultisportEventStatus!] | — |
dateStart | Date | — |
dateEnd | Date | — |
search | String | Free-text player-name search (min 2 chars) across both sides of the match. |
limit | Int | — |
offset | Int | — |
orderBy | TennisMatchesSortField | — |
orderDir | SortDirection | — |