Response Model
After the websockets connection has been made and the connection authorised, you will receive the packets (assuming you haven’t specified a start position).
Note that packets are checked for timeliness and in the event that data from the supplier is delayed, an extra field: delayStatus will be added to the packets below. If the field is present then the packets should be considered as not live.
The delayStatus field will typically take one of two values:
● DELAYED - click here for more information on delayed packets
● RECONSTRUCTED - click here for more information about Alarms and Reconstructions
Match Status Update
Field Name
Type
Description
matchState
object
The match state object
teamAPlayer1
string
The name of the first player in team A
teamBPlayer1
string
The name of the first player in team B
teamAPlayer2
string
(Doubles only) The name of the second player in team A
teamBPlayer2
string
(Doubles only) The name of the second player in team B
teamAPlayersDetails
object
The players details (e.g. ID and IOC country code) for team A
teamBPlayersDetails
object
The players details (e.g. ID and IOC country code) for team B
umpire
string
The name of the umpire
umpireCode
string
The code for the umpire
umpireCountry
string
The country of the umpire
scoringType
string
The scoring type being used for the match: Standard, StandardWithNoAdv, ShortSets, ProSet, MatchTieBreak, SuddenDeath, ModernSetShort, ModernSetLong, ModernSetWithNoAdv, Unknown, LastSetTiebreak12,ATPShortSetNoAdv
numSets
int
How many sets the match may involve
firstServer
string
The team who is serving first in the match
courtNum
string
The court the match is being played on
tieBreakType
string
The type of tie breaks being used in the match - possible values are “TieBreakInFinalSet” and “NoTieBreakInFinalSet”
tossWinner
string
Player who won the toss
tossChooser
string
What the player who won the toss elected to do - possible values are “Serve”, “Ends”, “GaveChoiceToOpponent”
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
matchTime
string
The match time of this packet
TeamAPlayer Details
Field Name
Type
Description
player1Id
string
The player Id of the first player in team A
player2Id
string
(Doubles only) The player Id of the second player in team A
player1Country
string
The country code of the first player in team A
player2Country
string
(Doubles only) The country code of the second player in team A
TeamBPlayer Details
Field Name
Type
Description
player1Id
string
The player Id of the first player in team A
player2Id
string
(Doubles only) The player Id of the second player in team A
player1Country
string
The country code of the first player in team A
player2Country
string
(Doubles only) The country code of the second player in team A
Match State
Field Name
Type
Description
state
string
The state of the match can be one of: NotStarted, UmpireOnCourt, PlayersArriveOnCourt, Warmup, InProgress, Suspended, Unsuspended, Complete, ToiletBreak, MedicalTimeout, MedicalTreatment, ChallengeInProgress, BallMarkInspection, CorrectionMode, PostSuspensionWarmup, PostSuspensionMatchRestart, Default, Retire
locationTimestamp*
string
(*) This is an optional field for all match state changes
suspensionType*
string
(*) This is an optional field for a Suspended/Unsuspended match state only: Rain, Heat, Darkness, Pause, TenMinuteHeatBreak, Other, Unknown
suspensionEnded*
timestamp
(*) This is an optional field for a Suspended/Unsuspended match state only
team*
string
(*) This is an optional field for a ChallengeInProgress, ToiletBreak, MedicalTreatment or Default/Retire match states only, meaning who called the challenge or who has decided to retire from the match.
playerId*
int
(*) This is an optional field for MedicalTreatment match state only indicating which player is being treated
won*
string
(*) This is an optional field for a ChallengeInProgress match state only, meaning who won the challenge.
challengeEnded*
timestamp
(*) This is an optional field for a ChallengeInProgress match state only, meaning when the challenge has ended.
reason*
string
(*) This is an optional field for a Default/Retire match states only, meaning the retirement reason: Illness, Injury, Walkover, Other, Unknown, Unspecified, UnreasonableDelay ,AudibleObscenity, VisibleObscenity, BallAbuse, RacquetAbuse, VerbalAbuse, PhysicalAbuse,Coaching, UnsportsmanlikeConduct
evaluationStarted*
timestamp
(*) This is an optional field for a MedicalTreatment match state only indicating when the physio started evaluating the player
treatmentStarted*
timestamp
(*) This is an optional field for a MedicalTreatment match state only indicating when the physio started treating the player
treatmentLocation*
string
(*) This is an optional field for a MedicalTreatment match state only indicating where the physio is treating the player. Either “OnCourt”, “OffCourt” or “Unknown”
treatmentEnded*
timestamp
(*) This is an optional field for a MedicalTreatment match state only indicating when the physio stopped treating the player
toletBreakEnded**
timestamp
(**) This will be within the second toiletBreak packet.
When there is a declined TenMinuteHeatbreak, we will return a Unsuspended packet (without a proceeding Suspended packet) with the suspensionType set as TenMinuteHeatBreak and suspensionEnded.
ToiletBreak consists of two consecutive packets - the first is the start, the second is the end of the break. The game will recommence properly with the InProgress packet that will follow shortly afterwards.
Field Name
Type
Description
state
string
The state of the match can be one of: NotStarted, UmpireOnCourt, PlayersArriveOnCourt, Warmup, InProgress, Suspended, Unsuspended, Complete, ToiletBreak, MedicalTimeout, MedicalTreatment, ChallengeInProgress, BallMarkInspection, CorrectionMode, PostSuspensionWarmup, PostSuspensionMatchRestart, Default, Retire
locationTimestamp*
string
(*) This is an optional field for all match state changes
suspensionType*
string
(*) This is an optional field for a Suspended/Unsuspended match state only: Rain, Heat, Darkness, Pause, TenMinuteHeatBreak, Other, Unknown
suspensionEnded*
timestamp
(*) This is an optional field for a Suspended/Unsuspended match state only
team*
string
(*) This is an optional field for a ChallengeInProgress, ToiletBreak, MedicalTreatment or Default/Retire match states only, meaning who called the challenge or who has decided to retire from the match.
playerId*
int
(*) This is an optional field for MedicalTreatment match state only indicating which player is being treated
won*
string
(*) This is an optional field for a ChallengeInProgress match state only, meaning who won the challenge.
challengeEnded*
timestamp
(*) This is an optional field for a ChallengeInProgress match state only, meaning when the challenge has ended.
reason*
string
(*) This is an optional field for a Default/Retire match states only, meaning the retirement reason: Illness, Injury, Walkover, Other, Unknown, Unspecified, UnreasonableDelay ,AudibleObscenity, VisibleObscenity, BallAbuse, RacquetAbuse, VerbalAbuse, PhysicalAbuse,Coaching, UnsportsmanlikeConduct
evaluationStarted*
timestamp
(*) This is an optional field for a MedicalTreatment match state only indicating when the physio started evaluating the player
treatmentStarted*
timestamp
(*) This is an optional field for a MedicalTreatment match state only indicating when the physio started treating the player
treatmentLocation*
string
(*) This is an optional field for a MedicalTreatment match state only indicating where the physio is treating the player. Either “OnCourt”, “OffCourt” or “Unknown”
treatmentEnded*
timestamp
(*) This is an optional field for a MedicalTreatment match state only indicating when the physio stopped treating the player
tolietBreakEnded**
timestamp
(**) This will be within the second toiletBreak packet.
Server
Field Name
Type
Description
team
string
Which team is serving: TeamA or TeamB
member
int
Which member of the team is serving
Field Name
Type
Description
team
string
Which team is serving: TeamA or TeamB
member
int
Which member of the team is serving
Point Scored Packet
Field Name
Type
Description
seqNum
int
Sequence number of the packet
timestamp
timestamp
Timestamp of this packet
eventElementType
string
The event element type values: PointScored, PointFault, PointStarted, PointReplayed, PointLet, CodePenalty, TimePenalty, GamePenalty, Undo, Overrule, CodeViolation, TimeViolation, PhysioCalled, PhysioCancelled, SwapServer, SwapReceiver, OnCourtCoaching, TimeAnnouncement, MoveUmpiresChair,
MatchStatusUpdate, MatchFinished,
Alarm
matchTime
string
The match time of this packet
server
object
The server of this point
nextServer
object
The next team to serve
score
object
The match score
details
object
Additional details about the how the point was scored: Ace, Double Fault
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of three values: DELAYED, RECONSTRUCTED or RECONSTRUCTED_INACCURATE
Field Name
Type
Description
seqNum
int
Sequence number of the packet
timestamp
timestamp
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The match time of this packet
server
object
The server of this point
nextServer
object
The next team to serve
score
object
The match score
details
object
Additional details about the how the point was scored: Ace, Double Fault
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of three values: DELAYED, RECONSTRUCTED or RECONSTRUCTED_INACCURATE RECONSTRUCTED_INACCURATE is very rare and is used in the extreme edge case where the reconstructed scoring packets add up to a score that does not equal the current match score sent in the latest upstream packet. This would be applied to all reconstructed packets that are sent in the catch-up stream.
Score
Field Name
Type
Description
currentGameScore
object
Current game score
currentSetScore
object
Current Set score
previousSetsScore
object
Array of previous Set scores
overallSetScore
object
The overall set score in the match
Field Name
Type
Description
currentGameScore
object
Current game score
currentSetScore
object
Current Set score
previousSetsScore
object
Array of previous Set scores
overallSetScore
object
The overall set score in the match
Current Game Score
Field Name
Type
Description
gameType
string
The type of the game (e.g. “TieBreaker” or “StandardGame”)
pointsA
string
Points scored by TeamA
pointsB
string
Points scored by TeamB
Field Name
Type
Description
gameType
string
The type of the game (e.g. “TieBreaker” or “StandardGame”)
pointsA
string
Points scored by TeamA
pointsB
string
Points scored by TeamB
Current Set Score
Field Name
Type
Description
gamesA
int
Number of games won by TeamA
gamesB
int
Number of games won by TeamB
Field Name
Type
Description
gamesA
int
Number of games won by TeamA
gamesB
int
Number of games won by TeamB
Previous Set Score
Field Name
Type
Description
gamesA
int
Number of games won by TeamA
gamesB
int
Number of games won by TeamB
tieBreakScore
object
Tie-break score for the Set
Type
Description
gamesA
int
Number of games won by TeamA
gamesB
int
Number of games won by TeamB
tieBreakScore
object
Tie-break score for the Set
Tie Break Score
Field Name
Type
Description
pointsA
int
Points scored by TeamA
pointsB
int
Points scored by TeamB
Field Name
Type
Description
pointsA
int
Points scored by TeamA
pointsB
int
Points scored by TeamB
Point Score Details
Field Name
Type
Description
scoredBy
string
The team who has scored the point
pointType
string
The type of the point: Standard, DoubleFault, Ace, Unknown
Field Name
Type
Description
scoredBy
string
The team who has scored the point
pointType
string
The type of the point: Standard, DoubleFault, Ace, Unknown
Overall Set Score Details
Field Name
Type
Description
setsA
int
Number of sets for Team A
setsB
int
Number of sets for Team b
Field Name
Type
Description
setsA
int
Number of sets for Team A
setsB
int
Number of sets for Team b
Point Started Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point (same as nextServer for this packet)
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point (same as nextServer for this packet)
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
The PointStarted packet is used to signify the start of a point. Point Started can be used to close markets for the next available point e.g.
Point Started JSON
Can be used to close markets on the next available point in this game/match.
Point Fault Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point (same as nextServer for this packet)
faultType
string
The type of the fault:“Fault”, “FootFault”
matchId
string
The match id
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point (same as nextServer for this packet)
faultType
string
The type of the fault:“Fault”, “FootFault”
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Point Replayed Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point (same as nextServer for this packet)
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point (same as nextServer for this packet)
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Point Let Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point (same as nextServer for this packet)
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
The point must be replayed. The umpire indicates this type of let by announcing "Let. First serve," or "Let. Second serve." Lets typically occur when an otherwise-valid serve makes contact with the net before hitting the ground. Theoretically, a player could serve an infinite number of otherwise-valid let serves, but a serve that touches the net and then lands out of bounds counts as one of the two allowed serves (fault). A let can also be called during play when there is some distraction to either player not caused by the players themselves, such as a ball boy moving behind a receiver, debris flying across the court in windy conditions, or a ball accidentally falling out of a player's pocket or entering from a neighbouring court. The call is made by the chair umpire when one is assigned to the match
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point (same as nextServer for this packet)
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Code Penalty Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
server
object
The server for this point
nextServer
object
The next player/team to server
team
string
The name of the team penalised (e.g. “TeamA” or “TeamB”)
score
object
The match score after the penalty has been applied
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
server
object
The server for this point
nextServer
object
The next player/team to server
team
string
The name of the team penalised (e.g. “TeamA” or “TeamB”)
score
object
The match score after the penalty has been applied
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Time Penalty Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
server
object
The server for this point
nextServer
object
The next player/team to server
team
string
The name of the team penalised(e.g. “TeamA” or “TeamB”)
score
object
The match score after the penalty has been applied
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
server
object
The server for this point
nextServer
object
The next player/team to server
team
string
The name of the team penalised(e.g. “TeamA” or “TeamB”)
score
object
The match score after the penalty has been applied
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Game Penalty Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
server
object
The server for this point
nextServer
object
The next player/team to server
team
string
The name of the team penalised(e.g. “TeamA” or “TeamB”)
score
object
The match score after the penalty has been applied
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
N.B - The game penalty packets will be delivered sequentially until a full game has been awarded to the opposing team (e.g. if a game penalty is triggered at 15-0 by the receiver, you will receive three packets sequentially to complete the game)
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
server
object
The server for this point
nextServer
object
The next player/team to server
team
string
The name of the team penalised(e.g. “TeamA” or “TeamB”)
score
object
The match score after the penalty has been applied
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Undo Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
score
object
The current score of the match
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
N.B - that the undo packet only occurs when the match state has been changed to correction mode. A number of undo packets may be received which indicates that the umpire is correcting information that has previously been entered.
Once the umpire comes out of correction mode (match state would typically move back to inProgress) they will reissue the correct score as a point scored packet, as the definitive confirmation of the current match score.
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
score
object
The current score of the match
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Overrule Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
score
object
The current score of the match
numOverrules
int
Total number of overrules in the match
server
object
The server of this point
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
score
object
The current score of the match
numOverrules
int
Total number of overrules in the match
server
object
The server of this point
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Code Violation Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The name of the team (e.g. “TeamA” or “TeamB”)
playerId
int
The identifier of the player on the team: 0 (= whole team if doubles), 1 or 2
reason
string
The reason of the code violation:
Unspecified
UnreasonableDelay
AudibleObscenity
VisibleObscenity
BallAbuse
RacquetAbuse
VerbalAbuse
PhysicalAbuse
Coaching
UnsportsmanlikeConduct
Unknown
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The name of the team (e.g. “TeamA” or “TeamB”)
playerId
int
The identifier of the player on the team: 0 (= whole team if doubles), 1 or 2
reason
string
The reason of the code violation:Unspecified, UnreasonableDelay, AudibleObscenity, VisibleObscenity, BallAbuse, RacquetAbuse, VerbalAbuse, PhysicalAbuse, Coaching, UnsportsmanlikeConduct, Unknown
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Time Violation Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The name of the team (e.g. “TeamA” or “TeamB”)
playerId
int
The identifier of the player on the team: 0 (= whole team if doubles), 1 or 2
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The name of the team (e.g. “TeamA” or “TeamB”)
playerId
int
The identifier of the player on the team: 0 (= whole team if doubles), 1 or 2
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Physio Called Packet
Field Name
Type
Description
seqNum
int
The packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The team which asked for the physio to be called
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The team which asked for the physio to be called
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Physio Cancelled Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The team which asked for the physio to be called
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The team which asked for the physio to be called
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Swap Server Packet (Doubles Only)
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Swap Receiver Packet (Doubles Only)
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next player/team to server
server
object
The server of this point
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Receiver Server Packet (Doubles Only)
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next team serving
server
object
The server of this point (same as nextServer for this packet)
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
nextServer
object
The next team serving
server
object
The server of this point (same as nextServer for this packet)
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
On Court Coaching Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The team name (“TeamA” or “TeamB”)
status
string
The status of coaching on court: “Started”, “Finished”, “Unknown”
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
team
string
The team name (“TeamA” or “TeamB”)
status
string
The status of coaching on court: “Started”, “Finished”, “Unknown”
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Time Announcement Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
time
string
The local time of the match
matchTime
string
The match time of this packet
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
time
string
The local time of the match
matchTime
string
The match time of this packet
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Move Umpires Chair Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Match Finished Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
won
string
The team name who has won the match
reason
string
The reason of winning - one of: - “Normally”, “Retirement”, “SuddenDeath”, “Default", “Unknown”
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
N.B - If you are looking for a programmatic way of closing event websocket connections at the end of a match we would recommend using the MatchFinished packet as the trigger.
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type
matchTime
string
The current match time
won
string
The team name who has won the match
reason
string
The reason of winning - one of: - “Normally”
“Retirement”
“SuddenDeath”
“Default"
“Unknown”
delayStatus
string
Optional field, if present this packet should be considered delayed. Can take one of two values: DELAYED or RECONSTRUCTED
Alarm Packet
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type - Alarm
lastReceivedTimestamp
string
The timestamp of the last received upstream event packet
The Alarm Packet is sent when we suspect we have been disconnected from an onsite event. We will resend this packet every 25 seconds until the issue has been resolved, at which point we will send the next returned packet.
Field Name
Type
Description
seqNum
int
The ATP packet sequence number
timestamp
string
Timestamp of this packet
eventElementType
string
The event element type - Alarm
lastReceivedTimestamp
string
The timestamp of the last received upstream event packet
Correction Mode
If the umpire makes a mistake when entering data on the scoring tablet they will correct it. This changes the match state to CorrectionMode.
Within correction mode a sequence of packets will be received. These will either be:
● Undo packets which will reverse previous events. The score may be altered (e.g. going from 30-0 to 15-0) and the indicator for next server may change.
● Other packets effectively replacing the ones that were undone. These could be any other standard packets.
When all corrections have been made the next packet will change the match state from CorrectionMode to whatever the correct value is. The umpire will then reissue the correct score as a point scored packet, as the definitive confirmation of the current match score. From this point all packets are standard live packets as described previously.
Last updated