Standard Stroke Events

Addressing Ball

This event will be sent when a player is about to hit the ball, i.e, they are standing over the ball literally about to take their stroke.

Addressing Ball Object

Field Name
Type
Description

seqNum

integer

The sequence number of the packet.

groupId

integer

The group ID of the player who did the event

groupNo

integer

[Optional] The group number of the player who did the event

teamNo

integer

The team number of the player who did the event

playerId

integer

The player ID of the player who did the event

holeNo

integer

The hole in which the event took place

holeOrder

integer

The hole order of the hole in which the event took place (e.g. if a player starts a round on hole 10, this will be 1) – always starts at 1 and ends on 18

courseId

integer

The ID of the course where the event took place

strokeNo

integer

The stroke associated with the event

timestamp

date

The timestamp of the event, in UTC

timestampReceived

date

The server time of the moment that this packet has been processed

eventElementType

string

The type of event, in this case AddressingBall.

Full list of values include:

  • TglHammerThrown

  • RefereeCalled

  • HoleScoreUpdate

  • Correction

  • ModeChange

  • Penalty

  • RoundStatusUpdate

  • BallDrop

  • ProvisionalBallSelected

  • HitBall

  • AddressingBall

  • ApproximateLie

  • DetailedLie

  • BallHoled

provisionalIndex

integer

indicates if the event is part of a provisional ball. 0 if not, 1 if first provisional ball, 2 if second provisional ball for that stroke, e.t.c…

player

object

See object below

clubTypeCode

string

This is the type of Club a player used for the shot. NB. this is only populated for Drives.

roundNo

integer

The current round number

Player Object

Field Name
Type
Description

displayName

string

The full name or display name of that player

country

string

The affiliated country (typically birthplace)

gender

string

The gender of player

isAmateur

string

Is that player an amateur or not (true/false)

lastName

string

The surname of the player

firstName

string

The forename of that player

id

Integer

The Player unique Id

Club Types

clubTypeCode

Description

CDR

Driver

CFW

Fairway Wood

CIR

Iron

CUK

Unknown

Sample Event Packet:

Hit Ball

This event will be sent as soon as the player has hit the ball.

Hit Ball Object

Field Name
Type
Description

seqNum

integer

The sequence number of the packet.

groupID

integer

The group ID of the player who did the event

groupNo

integer

[Optional] The group number of the player who did the event

teamNo

integer

The team number of the player who did the event

playerId

integer

The player ID of the player who did the event

holeNo

integer

The hole in which the event took place

holeOrder

integer

The hole order of the hole in which the event took place (e.g. if a player starts a round on hole 10, this will be 1) – always starts at 1 and ends on 18

courseId

integer

The ID of the course where the event took place

strokeNo

integer

The stroke associated with the event

timestamp

date

The timestamp of the event, in UTC

timestampReceived

date

The server time of the moment that this packet has been processed

eventElementType

string

The type of event, in this case HitBall

Full list of values include:

  • TglHammerThrown

  • RefereeCalled

  • HoleScoreUpdate

  • Correction

  • ModeChange

  • Penalty

  • RoundStatusUpdate

  • BallDrop

  • ProvisionalBallSelected

  • HitBall

  • AddressingBall

  • ApproximateLie

  • DetailedLie

  • BallHoled

provisionalIndex

integer

indicates if the event is part of a provisional ball. 0 if not, 1 if first provisional ball, 2 if second provisional ball for that stroke, e.t.c…

player

object

See object below

roundNo

integer

round number of the event

score

object

See object below

Player Object

Field Name
Type
Description

displayName

string

The full name or display name of that player

country

string

The affiliated country (typically birthplace)

isAmateur

string

Is that player an amateur or not (true/false)

gender

string

the gender of the player

lastName

string

The surname of the player

firstName

string

The forename of that player

id

Integer

The Player unique Id

Score Object

Field Name
Type
Description

currentHoleStrokes

integer

The number of strokes that the team is on for that hole; Can be greater than ‘stroke’ above in the instance that the team has been awarded a penalty

currentHolePar

integer

The par score for the current hole

currentRoundScoreToPar

object

The team’s current ‘To Par’ score for the current round

overallScoreToPar

object

The team’s current ‘To Par’ score for the tournament

Sample Event Packet:

Approximate Ball Lie

This will be sent as soon as we have any information on the lie of the ball. It is approximate because it assumes the data collector has not been able to get to where the ball has landed on the course, and will be estimating it’s lie based on a map.

Approximate Ball Lie Object

Field Name
Type
Description

seqNum

integer

The sequence number of the packet.

strokesAssessed

integer

Default as 1.

groupID

integer

The group ID of the player who did the event

groupNo

integer

[Optional] The group number of the player who did the event

teamNo

integer

The team number of the player who did the event

playerId

integer

The player ID of the player who did the event

holeNo

integer

The hole in which the event took place

holeOrder

integer

The hole order of the hole in which the event took place (e.g. if a player starts a round on hole 10, this will be 1) – always starts at 1 and ends on 18

courseId

integer

The ID of the course where the event took place

strokeNo

integer

The stroke associated with the event

timestamp

date

The timestamp of the event, in UTC

timestampReceived

date

The server time of the moment that this packet has been processed

eventElementType

string

The type of event, in this case ApproximateLie

Full list of values include:

  • TglHammerThrown

  • RefereeCalled

  • HoleScoreUpdate

  • Correction

  • ModeChange

  • Penalty

  • RoundStatusUpdate

  • BallDrop

  • ProvisionalBallSelected

  • HitBall

  • AddressingBall

  • ApproximateLie

  • DetailedLie

  • BallHoled

ballLie

object

See object below

player

object

See object below

provisionalIndex

integer

indicates if the event is part of a provisional ball. 0 if not, 1 if first provisional ball, 2 if second provisional ball for that stroke, e.t.c…

inTheHole

boolean

allows to notify downstream that there has been a possible hole in one on the packet (so operators can suspend markets), but then confirmation will come thereafter

Ball Lie Object

Field Name

Type

Description

coordinates

object

See object below

shotDistance

decimal

How far the shot went for that stroke. Data returned in meters.

distanceToPin

integer

How far the ball is from the pin. Data returned in meters

surfaceType

string

Text string which describes the lie of the ball, can be inconsistent across different data collection systems / Tours. We recommend using the 3 letter codes.

See Surface Types table below.

surfaceTypeCode

string

3 letter enum code which describes the lie of the ball.

See Surface Types table below.

obstructions

boolean

true if the team has an obstruction next to the ball that makes the ball hard to hit

blindshot

boolean

true if the team cannot see the pin from where they are taking the shot

distanceToPinProb

array

distance to ping probability - only for PGA events

isPredictionUnconfident

boolean

isWaterProbable

boolean

if the ball is in the water - only for PGA events

strokesToPinProb

array

strokes to ping probability - only for PGA events

coordinates object:

Field
Type
Description

x

decimal

X co-ordinate of the ball

y

decimal

Y co-ordinate of the ball

z

decimal

Z co-ordinate of the ball

Surface Types:

surfaceTypeCode

surfaceType

OFW

Fairway

OGR

Green

OIR

IntermediateRough

ORO

Rough or PrimaryRough

OST

FairwayBunker

OGS

Greenside Bunker

OCO

Fringe

ONA

NativeArea

OTO

Trees or TreeOutline

OBU

Bushes

ODS

Desert

OWA

Water

OTH

Other

OCA

CartPath

ODO

Dirt or DirtOutline

OTF

OtherFairway

OOB

OutOfBounds

OWB

WasteBunker

OUK

Unknown

Player Object

Field Name
Type
Description

displayName

string

The full name or display name of that player

country

string

The affiliated country (typically birthplace)

gender

string

The gender of the player

isAmateur

string

Is that player an amateur or not (true/false)

lastName

string

The surname of the player

firstName

string

The forename of that player

id

Integer

The Player unique Id

Sample Event Packet:

Detailed Ball Lie

This will be sent as soon as we have more detailed information on the lie of the ball – I.e the data collector has been able to walk over to the lie of the ball and give the exact GPS location of the ball.

Detailed Ball Lie Object

Field Name
Type
Description

ballLie

object

See object below

seqNum

integer

The sequence number of the packet.

strokesAssessed

integer

Default as 1.

groupNo

integer

[Optional] The group number of the player who did the event

groupId

integer

the group Id of the player who did the event

teamNo

integer

The team number of the player who did the event

playerId

integer

The player ID of the player who did the event

player

object

See object below

holeNo

integer

The hole in which the event took place

holeOrder

integer

The hole order of the hole in which the event took place (e.g. if a player starts a round on hole 10, this will be 1) – always starts at 1 and ends on 18

courseId

integer

The ID of the course where the event took place

strokeNo

integer

The stroke associated with the event

timestamp

date

The timestamp of the event, in UTC

timestampReceived

date

The server time of the moment that this packet has been processed

eventElementType

string

The type of event, in this case DetailedLie

Full list of values include:

  • TglHammerThrown

  • RefereeCalled

  • HoleScoreUpdate

  • Correction

  • ModeChange

  • Penalty

  • RoundStatusUpdate

  • BallDrop

  • ProvisionalBallSelected

  • HitBall

  • AddressingBall

  • ApproximateLie

  • DetailedLie

  • BallHoled

provisionalIndex

integer

indicates if the event is part of a provisional ball. 0 if not, 1 if first provisional ball, 2 if second provisional ball for that stroke, e.t.c…

roundNo

integer

round number of the event

inTheHole

boolean

allows to notify downstream that there has been a possible hole in one on the packet (so operators can suspend markets), but then confirmation will come thereafter

Ball Lie Object

Field Name
Type
Description

coordinates

decimal

Z co-ordinate of the ball

shotDistance

integer

How far the shot went for that stroke. Data returned in meters

distanceToPin

integer

How far the ball is from the pin. Data returned in meters

surfaceType

string

Text string which describes the lie of the ball, can be inconsistent across different data collection systems / Tours. We recommend using the 3 letter codes.

See Surface Types table above.

surfaceTypeCode

string

3 letter enum code which describes the lie of the ball.

See Surface Types table above.

obstructions

boolean

true if the team has an obstruction next to the ball that makes the ball hard to hit

blindshot

boolean

true if the team cannot see the pin from where they are taking the shot

coordinates object:

Field
Type
Description

x

decimal

X co-ordinate of the ball

y

decimal

Y co-ordinate of the ball

z

decimal

Z co-ordinate of the ball

Player Object

Field Name
Type
Description

displayName

string

The full name or display name of that player

country

string

The affiliated country (typically birthplace)

isAmateur

string

Is that player an amateur or not (true/false)

gender

string

The gender of the player

lastName

string

The surname of the player

firstName

string

The forename of that player

id

Integer

The Player unique Id

Sample Event Packet:

Ball Holed

Will be sent when the ball has been holed.

Ball Holed Object

Field Name
Type
Description

seqNum

integer

The sequence number of the packet.

strokesAssessed

integer

Default as 1.

groupId

integer

The group Id of the player who did the event

groupNo

integer

[Optional] The group number of the player who did the event

teamNo

integer

The team number of the player who did the event

playerId

integer

The player ID of the player who did the event

holeNo

integer

The hole in which the event took place

holeOrder

integer

The hole order of the hole in which the event took place (e.g. if a player starts a round on hole 10, this will be 1) – always starts at 1 and ends on 18

courseId

integer

The ID of the course where the event took place

strokeNo

integer

The stroke associated with the event

timestamp

date

The timestamp of the event, in UTC

timestampReceived

date

The server time of the moment that this packet has been processed

eventElementType

string

The type of event, in this case BallHoled

Full list of values include:

  • TglHammerThrown

  • RefereeCalled

  • HoleScoreUpdate

  • Correction

  • ModeChange

  • Penalty

  • RoundStatusUpdate

  • BallDrop

  • ProvisionalBallSelected

  • HitBall

  • AddressingBall

  • ApproximateLie

  • DetailedLie

  • BallHoled

score

object

See object below

roundNo

integer

round number in the event

player

object

see object below

provisionalIndex

integer

indicates if the event is part of a provisional ball. 0 if not, 1 if first provisional ball, 2 if second provisional ball for that stroke, e.t.c…

Player Object

Field Name
Type
Description

displayName

string

The full name or display name of that player

country

string

The affiliated country (typically birthplace)

isAmateur

string

Is that player an amateur or not (true/false)

gender

string

The gender of the player

lastName

string

The surname of the player

firstName

string

The forename of that player

id

Integer

The Player unique Id

Score Object

Field Name
Type
Description

currentHoleStrokes

integer

The number of strokes that the team is on for that hole; Can be greater than ‘stroke’ above in the instance that the team has been awarded a penalty

currentHolePar

integer

The par score for the current hole

currentRoundScore

object

The team’s current ‘To Par’ score for the current round

overallScore

object

The team’s current ‘To Par’ score for the tournament

Sample Event Packet

Doc navigation

← Hole: Started / FinishedPenalty Stroke →

Last updated

Was this helpful?