Skip to content

TennisMatch

Object type

A tennis match (singles or doubles). Implements the contest-level SportEvent interface; status follows the shared multisport status model. Freshness is poll-bound — see the blueprint’s live-update caveats.

Implements: SportEvent

FieldArgsTypeDescription
id—ID! required—
sport—Sport! required—
competition—Competition! requiredNon-null here (covariance-legal): every tennis match belongs to a competition.
season—CompetitionSeason! required—
stage—CompetitionStage! required—
venue—Course—
scheduledTime—DateTime! required—
lifecycle—EventLifecycle! required—
status—MultisportEventStatus! required—
statusDetail—StringFine-grained provider state name, e.g. “1st set”, “Finished AET”, “Walk over”.
matchType—TennisMatchType! required—
gender—EventGender—
round—StringKnockout round label where published, e.g. “1/8”.
isKnockout—Boolean—
bestOfSets—IntBest-of format, e.g. 3 or 5 — from provider match metadata.
startedAt—DateTimeActual start time, once under way (null pre-match).
umpire—StringChair umpire, where the provider supplies it. Track C — null in the M14 feed.
surface—StringPlaying surface, e.g. “Clay”. Track C — null in the M14 feed.
court—StringThe court the match is played on, e.g. “Court 2” — the display name of venue, offered as a scalar for clients that want the name without selecting the whole Course. Null when the venue has not resolved. Use venue when you need the court’s id or country.
orderOnCourt—Int1-indexed position in the order of play on court. Sparse — only tournaments that publish an order of play supply it, so null is normal and does not imply an error. MUTABLE: re-cut intraday when a court is reshuffled, and not guaranteed contiguous once matches are withdrawn. This is an ordinal, NOT a start time — order the day’s play by this within a court, but never infer a clock time from it.
activity—[TennisActivityEntry!]Recent activity / update feed. Track C (point-by-point dormant) — empty in M14.
sides—[TennisMatchSide!]! requiredExactly two sides; each side carries 1 (singles) or 2 (doubles) players.
setScores—[SegmentScore!]! requiredPer-set scores, in set order; includes the in-progress set during live play.
games—[TennisMatchGame!]! requiredGame-by-game progression (the Match Events tab), in game order across the match. Promoted from the EnetPulse eventScopes game segments (POD-665 Tier B).
incidentslimit: Int
offset: Int
includeDeleted: Boolean
[MatchIncident!]! requiredPoint-by-point incident stream, where the provider publishes one. DORMANT in M14 (Enet Blueprint 1 §12.4 D4) — resolves to an empty list until canonical point-by-point storage lands.
createdAt—DateTime! required—
updatedAt—DateTime! required—
version—Int! required—