event
For: READ, PUBLISH
The event message type is the most common type. It is generated when some kind of event occurs. Whether this is a shot at goal, a referee being assiged or event just the ball moving, these can all generate messages of the 'event' type.
The event messages are broken down by a number of different classifier fields. In increasing levels of granularity they are:
class
This defines the type of events this message is related to. Some examples include: sport; events relating to something that happens as part of the sporting event. EG. A shot at goal or a foul setup; events relating to the setup of the match. EG. Assiging a player to a team/position, assigning a referee
eventType
The type of the event (inside the class). For a sport class message this may be the type of shot being made, or for a setup class message the type of thing being assigned.
subType
Some eventTypes (but not all) also support a 'subType' to further classify the eventType
options
Some eventTypes/subTypes support additional options for more information about the event. These are key/pair values. While some values may be boolean (true/false) others can be integer, strings etc.
While all messages of type 'event' require a class, the other fields may or may not be required depending on the type of event.
{
"type": "event",
"fixtureId": "b25692de-ac17-11e8-98d0-529269fb1459",
"clientType": "AppName:Version",
"data": {
"eventId": "c2404cc0-9f75-11e8-98d0-529269fb1459",
"entityId": "c24048a6-9f75-11e8-98d0-529269fb1459",
"personId": "c2405b2a-9f75-11e8-98d0-529269fb1459",
"class": "sport",
"eventType": "2pt",
"eventTime": "2018-08-14T16:45:33.88",
"subType": "jumpShot",
"options": {
"fastBreak": true,
"pointsInThePaint": true,
"distance": 2.3,
},
"clock": "PT08M23S",
"shotClock": "PT12.3S",
"periodId": 2,
"success": true,
"x": 56,
"y": 23,
"officialId": "c2404ff4-9f75-11e8-98d0-529269fb1459",
"playId": "d8934b2a-9f75-11e8-98d0-529269fb1459",
"scores": {
"c24048a6-9f75-11e8-98d0-529269fb1459": "56",
"b25692de-ac17-11e8-98d0-529269fb1459": "23",
},
"status": "updated",
"timestamp": "2018-08-14T16:45:34.34"
}
}
For each sport/event/eventType/SubType the required fields and available different combinations are varied. Please see the list below for more information.
setup
fixture
post
periodLengthinteger numberOfPeriodsinteger attendanceinteger Total attendance count
class eventType options.numberOfPeriods options.periodLength
person
namestring The person's name positionstring The position this person plays Allowed Values:
GCBPLBLWRBRWD
activeboolean Is this person active for match? starterboolean Is this person a starter? captainboolean Is this person the captain? bibstring The number/position on this person's shirt/bib
class eventType personId entityId options.name
role
entity
namestring numberinteger[1-10] The persons' number, eg 2nd assistant coach positionstring The position/role of this person Allowed Values:
COACHCOACH_ASSISTANTCOACH_HEADDIRECTORMEDIA_OFFICERTRAINERCLUB_OFFICIALSPORT_DIRECTORCLUB_OFFICIAL_ASSISTANTOFFICE_STAFFPLAYER_CONTRACT_MANAGERCLUB_IT_OFFICERTEAM_COORDINATOROFFICIAL_AOFFICIAL_BOFFICIAL_COFFICIAL_DOFFICIAL_E
class eventType entityId
fixture
namestring numberinteger[1-10] The persons' number, eg 2nd assistant coach positionstring The official's position Allowed Values:
REFEREEASSISTANT_REFEREE_1ASSISTANT_REFEREE_2SECRETARYSCOREKEEPERTIMEKEEPERREFEREE_OBSERVERSCOUT_1SCOUT_2MATCH_SUPERVISORSCOUT_SUPERVISORDELEGATELIAISON_OFFICERYOUTH_COORDINATORMATCH_LIAISONREFEREE_LIAISONREFEREE_OBSERVER_LIAISON
class eventType personId options.name options.position
statistics
external
handballPerformanceIndex['number', 'null'] Handball Performance Index of the player distanceTotalnumber Total distance [m] covered by the player speedMaxnumber Maximum speed [m/s] of the player during the session speedDistancePerTimenumber Distance covered by the player on specific speed per minute timeOnPlayingFieldstring Time in minutes (in ISO8601 Duration format) that each player spent on the playing field during the game timeBallPossessionstring Accumulated time in minutes (in ISO8601 Duration format) in which the player had the possession of the ball distanceSpeedCategory1integer Distance distribution [m] of the player in the very low speed zone (<4 km/h) distanceSpeedCategory2integer Distance distribution [m] of the player in the low speed zone (4-10 km/h) distanceSpeedCategory3integer Distance distribution [m] of the player in the medium speed zone (10-16 km/h) distanceSpeedCategory4integer Distance distribution [m] of the player in the high speed zone (16-22 km/h) distanceSpeedCategory5integer Distance distribution [m] of the player in the very high speed zone (>22 km/h) airtimeMaxnumber Time in minutes (in ISO8601 Duration format) a player was in the air (due to jumping)
class eventType
sport
assist
class eventType entityId periodId eventType
block
class eventType entityId periodId eventType
blueCard
benchboolean The card is assigned to the bench coachboolean The card is assigned to the coach
class eventType entityId periodId
coinToss
lost
directionstring Which direction the team that lost the coin toss will advance toward? Allowed Values:
HOMEAWAY
class eventType options.direction
won
startPossessionboolean The team who won the coin toss elected to start in possession or defer to next period
class eventType options.startPossession
fixture
about_to_start
class eventType subType
confirmed
class eventType subType
end
class eventType subType
on_pitch
class eventType subType
pending
class eventType subType
start
class eventType subType
warm_up
class eventType subType
goal
backCourt
attackTypestring The attack type of the goal Allowed Values:
FAST_BREAKBREAK_THROUGHDIRECT_FREE_THROWPIVOT
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper emptyNetboolean Was this goal scored during an empty net period? failureReasonstring The reason goal was unsuccessful Allowed Values:
POSTBARSAVEOFF_TARGETSHOT_BLOCKED
hitYnumber The Y coordinate of the goal where the ball hit hitZnumber The Z coordinate of the goal where the ball hit distancenumber The distance the ball travelled from shot point to hit point speedBallnumber The speed of the ball
class eventType entityId periodId
nineMetre
attackTypestring The attack type of the goal Allowed Values:
FAST_BREAKBREAK_THROUGHDIRECT_FREE_THROWPIVOT
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper emptyNetboolean Was this goal scored during an empty net period? failureReasonstring The reason goal was unsuccessful Allowed Values:
POSTBARSAVEOFF_TARGETSHOT_BLOCKED
hitYnumber The Y coordinate of the goal where the ball hit hitZnumber The Z coordinate of the goal where the ball hit distancenumber The distance the ball travelled from shot point to hit point speedBallnumber The speed of the ball locationstring The location the goal was taken from Allowed Values:
LEFTRIGHTCENTRE
class eventType entityId periodId
sevenMetrePenalty
attackTypestring The attack type of the goal Allowed Values:
FAST_BREAKBREAK_THROUGHDIRECT_FREE_THROWPIVOT
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper emptyNetboolean Was this goal scored during an empty net period? failureReasonstring The reason goal was unsuccessful Allowed Values:
POSTBARSAVEOFF_TARGETSHOT_BLOCKED
hitYnumber The Y coordinate of the goal where the ball hit hitZnumber The Z coordinate of the goal where the ball hit distancenumber The distance the ball travelled from shot point to hit point speedBallnumber The speed of the ball
class eventType success
sixMetre
attackTypestring The attack type of the goal Allowed Values:
FAST_BREAKBREAK_THROUGHDIRECT_FREE_THROWPIVOT
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper emptyNetboolean Was this goal scored during an empty net period? failureReasonstring The reason goal was unsuccessful Allowed Values:
POSTBARSAVEOFF_TARGETSHOT_BLOCKED
hitYnumber The Y coordinate of the goal where the ball hit hitZnumber The Z coordinate of the goal where the ball hit distancenumber The distance the ball travelled from shot point to hit point speedBallnumber The speed of the ball locationstring The location the goal was taken from Allowed Values:
LEFTRIGHTCENTRE
class eventType entityId periodId
wing
attackTypestring The attack type of the goal Allowed Values:
FAST_BREAKBREAK_THROUGHDIRECT_FREE_THROWPIVOT
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper emptyNetboolean Was this goal scored during an empty net period? failureReasonstring The reason goal was unsuccessful Allowed Values:
POSTBARSAVEOFF_TARGETSHOT_BLOCKED
hitYnumber The Y coordinate of the goal where the ball hit hitZnumber The Z coordinate of the goal where the ball hit distancenumber The distance the ball travelled from shot point to hit point speedBallnumber The speed of the ball locationstring The location the goal was taken from Allowed Values:
LEFTRIGHT
class eventType entityId periodId
goalKeeperChange
emptyNetboolean If emptyNet is set to true the team is playing without a goalkeeper
class eventType entityId periodId
passivePlay
class eventType entityId periodId
period
confirmed
class eventType periodId subType
end
class eventType periodId subType
pending
class eventType periodId subType
start
class eventType periodId subType
possession
class eventType periodId entityId
redCard
benchboolean The card is assigned to the bench coachboolean The card is assigned to the coach possibleboolean Possibility of red card being assigned
class eventType entityId periodId
sevenMetrePenalty
awarded
possibleboolean Possibility of seven metre penalty being awarded
class eventType entityId periodId eventType subType
caused
class eventType entityId periodId eventType subType
shootOut
end
class eventType periodId eventType
pending
class eventType periodId eventType
start
startPossessionstring Which entity ID starts in possession (makes the first attempt)?
class eventType periodId eventType
shootOutAttempt
(blank)
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper
class eventType success eventType subType entityId periodId personId
made
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper
class eventType success eventType subType entityId periodId personId
missed
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper
class eventType success eventType subType entityId periodId personId
saved
goalKeeperIdstring The ~person~ ID of the opposition goalkeeper
class eventType success eventType subType entityId periodId personId
shootOutToss
lost
directionstring Which direction the team that lost the coin toss will advance toward? Allowed Values:
HOMEAWAY
class eventType entityId periodId subType
won
startPossessionboolean The team who won the coin toss elected to start in possession or defer to next period
class eventType options.startPossession
steal
class eventType entityId periodId
substitution
in
class eventType periodId eventType personId entityId subType
out
class eventType periodId eventType personId entityId subType
suspension
fourMinutes
benchboolean The suspension is assigned to the bench coachboolean The suspension is assigned to the coach possibleboolean Possibility of suspension being assigned
class eventType entityId periodId subType
twoMinutes
benchboolean The suspension is assigned to the bench coachboolean The suspension is assigned to the coach possibleboolean Possibility of suspension being assigned
class eventType entityId periodId subType
technicalFault
ballFault
class eventType entityId periodId
ruleFault
class eventType entityId periodId
throwOff
class eventType periodId
timeOut
official
windowstring Describes whether the timeout has started or ended Allowed Values:
STARTEND
class eventType periodId eventType subType
team
windowstring Describes whether the timeout has started or ended Allowed Values:
STARTEND
class eventType entityId
turnover
class eventType entityId periodId eventType
videoReview
end
teamboolean Team video review refereeDelegateboolean Referee or Delegate video review resolutionstring The resolution of the video review Allowed Values:
UPHELDREJECTED
class eventType periodId subType
start
teamboolean Team video review refereeDelegateboolean Referee or Delegate video review resolutionstring The resolution of the video review Allowed Values:
UPHELDREJECTED
class eventType periodId subType
yellowCard
benchboolean The card is assigned to the bench coachboolean The card is assigned to the coach possibleboolean Possibility of yellow card being assigned
class eventType entityId periodId
clock
main
adjust
valuestring The new value of the clock
class eventType options.value
start
class eventType subType
stop
class eventType subType
suspension
adjust
valuestring The new value of the clock
class eventType options.value
start
class eventType subType
stop
class eventType subType
heartbeat
client
class eventType
disconnect
client
class eventType
reset
client
class eventType
clientSessionStart
client
sessionIdstring Id for the client application user session authMethodstring The authentication method used by the client application usernamestring Username of the user in the client application userIdstring User identifier in the client application
class eventType
Bold fields are required. Other fields may be required depending on the eventClass/type etc.
eventId
A unique identifier for an event/action. UUIDv1 format. An edits/deletes of this event will need to use the same identifier.
entityId
A unique identifier for the entity/team that is performing this event/action. UUIDv1 format.
personId
A unique identifier for the person /team that is performing this event/action. UUIDv1 format. If the person is part of an entity/team that id field should also be included.
class
The class of the event - see above
eventType
The eventType of the event - see above
subType
The subType of the event - see above
options
The options for the event - see above
eventTime
An ISO-8601 datetime giving the time this event occurred. If this event is added out of sequence, then this timestamp should reflect when the event 'would' have occurred.
clock
The game clock time when this action occurred. Format ISO-8601 Duration.
shotClock
The game shot clock time when this action occurred. Format ISO-8601 Duration.
periodId
The unique identifier of the period. Overtime periods start at 11. 1 = 1 OT1 = 11
success
Boolean. Did the action complete successfully. It most cases this is true, however goal/shot attempts can be false.
x
The x-coordinate on the playing surface where the action occurred.
y
The y-coordinate on the playing surface where the action occurred.
z
The z-coordinate on the playing surface where the action occurred.
officialId
The unique identifier of the official who made this call.
playId
The unique identifier of the 'play' (a group of events who share this id).
scores
The structure of entityIds and scores giving the current score after the completion of the action.
status
The status of this message. Options are added (Default); updated - meaning the content of this event has been edited; deleted - meaning this event has been deleted; enriched - meaning further information has been added to the event (not changed).
flagged
Boolean. This event has been flagged for further review and may be changed later
highlight
Boolean. This event may be a highlight of the game.
timestamp
An ISO-8601 datetime giving the time this message was sent.
clientType
The type of client that is sending this event. Generally this is given as ApplicationName:ApplicationVersion.
If a field has no value it should not be sent as part of the message. If a field has no value then it should not be sent as part of the message. "" or 0 are valid values and should only be used when the value is known to be these values.
Last updated
Was this helpful?