Match Score - Match Play
Applies when Tournament(s)/`format`="Match"
This is a live websocket endpoint that returns hole by hole scores for a match. The whole json is sent whenever there is an update. You should receive a new update when a hole is completed.
The authentication token provided will be required to make a connection to this websocket endpoint.
This web socket is the match play equivalent to Team Hole by Hole Score web socket for stroke play.
Endpoint URL
wss://dde-streams.data.imgarena.com/golf/tournaments/{tournamentId}/matchscore/{matchNo}
Process for connecting the web socket endpoints
Same as Team Hole-by-Hole Score
Request parameters
Same as Team Hole-by-Hole Score
Match Score - match play via RestAPI
Note that the Match score websockets is available via Rest - https://dde-api.data.imgarena.com/golf/tournaments/{tournamentId}}/matchscore/{MatchNo}?rest=true
Response Model
Scoreboard Object
Field Name
Type
Description
OPTIONAL
tournamentId
integer
tournament identifier
timestamp
time
Time at which the scorecard feed was generated in UTC
teamScores
array
see object docs
isOfficial
boolean
Indicates whether or not the scorecard updates for the given player are complete. Occurs when a player has completed competing in the tournament either from retiring or finishing all rounds.
seqNum
integer
sequence number of the packet
scoringType
string
[Optional] is either "strokes" or "points"
YES
winningTeamNo
integer
identifier of the match winner; will be null until a winner is defined
YES
matchId
integer
match identifier
teamScores object
Field Name
Type
Description
Optional
matchTotalToPar
integer
[Optional] Integer, Score to par calculated for finished holes
YES
players
array
see object docs
matchPoints
Decimal
[Optional] Decimal, Score for team in match, usually it will be sum of points of MatchHoleScore points (available only for ScoringType set to Points)
YES
matchStrokes
integer
[Optional] Integer, Number of strokes taken in that match - based only on completed holes
YES
holeScores
array
see object docs
teamNo
integer
Team identifier
players object
Field Name
Type
Description
displayName
string
Name of the player
country
string
Country (3 upper case letters)
isAmateur
boolean
True if player is an amateur
lastName
string
Last name
firstName
string
First name
id
integer
Player ID
holescores object
Field Name
Type
Description
Optional
cumulativeScoreToPar
integer
[Optional] Integer, Contains cumulative number of strokes compared to par of current and previous holes
YES
yardage
integer
The length of the hole in yards
par
integer
Par value for the given hole
holeFinished
boolean
flag to determine if a given hole is finished
scoreToPar
integer
[Optional] integer, score to par on particular hole. This value will be empty when hole was not played yet or conceded
YES
points
double
The accumulated points score for that match
YES
holeFinishedBy
string
The reason for which the hole ended; possible values:
"BallHoled" "HoleWon" "LossOfHole" "HoleConceded"
YES
cumulativeHolesAdvantage
string
The team’s score in the match at the time that the given hole was completed, see categorical fields
YES
strokes
string
Number of strokes taken for the given hole; if a hole is conceded, the strokes value is set to "c", can also be "-". see supplementary information
YES
holeNo
integer
Number of the hole
playOffSequence
integer
A counter indicating which playoff hole number the given hole pertains to, Will be 0 for non-playoff holes, and will count up from 1 for playoff holes
PlayerScores
array
Score per player on a given hole, this will be sent when teams are playing best ball (Four Balls) format so as to know the individual player score as well as the total team score
YES
PlayerScores Object
Field
Type
Description
Optional
Strokes
integer
number of strokes on a given hole
ScoreToPar
integer
score to par on a given hole
id
integer
player ID
isBallHoled
Boolean
Flag indicating whether the ball was holed
Ryder Cup Example
Categorical Fields
Please find below all possible values for cumulativeHolesAdvantage
Supplementary information
Holescores.Strokes
holescores.strokes field is a string and indicates the number of strokes taken for the given hole. Possible values are any valid integer, as well as "c" and "-" .
Scenarios
Team holes the ball - strokes value will be an integer
Team concedes hole - strokes value will be "c"
Team wins hole but does not hole the ball - strokes value will be "-"
Team loses hole without conceding the hole or holing the ball - strokes value will be "-"
*For more information you can refer to holeScores.holeFinishedBy field (details below.)
HoleScores.playerScores.strokes
HoleScores.playerScores.strokes field is an integer and indicates the number of strokes a player had on a hole during a fourball format match (aka better ball.)
To be clear, the overarching score for the team will be taken from Holescores object, but we suggest drilling down to HoleScores.playerScores object for UI implementations as this information is important to the end user.
Suggested business logic for fourballs (aka better ball):
GIVEN fourballs scorecard
WHEN holeScores.HoleFinishedBy
is "HoleConceded" for a team
THEN display "c" for both players' strokes score on the scorecard for that team
GIVEN fourballs scorecard
WHEN holeScores.HoleFinishedBy
is "LossOfHole" for a team
THEN display "-" for both players' strokes score on the scorecard for that team
GIVEN fourballs scorecard
WHEN holeScores.HoleFinishedBy
is "HoleWon" for a team
THEN display "-" for both players strokes score on the scorecard for that team
GIVEN fourballs scorecard
WHEN holeScores.HoleFinishedBy
is "BallHoled" for a team
THEN display playerScores.strokes
IF "playerScores.isBallHoled" : "true"
AND display "-" IF "playerScores.isBallHoled" : "false"
N.B. currently do not support 'gimmes' i.e. if a player is given a concession stroke from the other player it will go down as a successful stroke or "ballHoled".
For example, player A has 2 inches to make a par putt on a par 3 and player B says to the player to pick up his ball and take a 'gimme' it will go down as 3 strokes and "holeFinishedBy" as "BallHoled".
Play-Offs
No Playoffs in Ryder Cup
Two scenarios need to be addressed.
Scenario: A play-off match is required to determine the winner of a pool.
Play-off matches will have same match score packet format as regular matches, along with unique matchNo
. Play-off matches will finish as soon as there is a winner, i.e. if the first hole is tied then a second hole is played etc. until there is a winner.
2. Scenario: There is no winner in a knock out match after 18 holes
In the case of a match not being settled in 18 holes, extra holes will be played until there is a winner. The client can determine when to use play-off logic based on the playOfSequence
field which will be "1" in the case of an extra play-off hole.
Last updated