JSON Schema
- Viewer
- Schema
Loading ....
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "FeedMatchEvent",
"type": "object",
"additionalProperties": false,
"$defs": {
"FeedMatchEventBaseDto": {
"title": "FeedMatchEventBaseDto",
"type": "object",
"additionalProperties": false,
"properties": {
"sportId": {
"type": "integer",
"format": "int32a"
},
"fixtureId": {
"type": "string"
},
"source": {
"type": "string"
},
"sequenceId": {
"type": "integer",
"format": "int32"
},
"id": {
"type": "string",
"format": "uuid"
},
"actionId": {
"type": "integer",
"format": "int32"
},
"insertedBeforeActionId": {
"type": "integer",
"format": "int32",
"nullable": true
},
"isCancelled": {
"type": "boolean"
},
"isConfirmed": {
"type": "boolean"
},
"isCompleted": {
"type": "boolean"
},
"messageTimestampUtc": {
"type": "string",
"format": "date-time"
},
"type": {
"$ref": "#/$defs/EventTypeDto"
}
}
},
"EventTypeDto": {
"type": "string",
"enum": [
"Unknown",
"Reliability",
"Clock",
"Turnover",
"Shot",
"Foul",
"Timeout",
"FreeThrow",
"PossessionChange",
"PossessionArrowChange",
"TipOffWinnerChange",
"Rebound",
"PeriodTransition",
"Substitution",
"Ejection",
"MatchFormat",
"Participation"
],
"x-extensible-enum": [
"Unknown",
"Reliability",
"Clock",
"Turnover",
"Shot",
"Foul",
"Timeout",
"FreeThrow",
"PossessionChange",
"PossessionArrowChange",
"TipOffWinnerChange",
"Rebound",
"PeriodTransition",
"Substitution",
"Ejection",
"Participation"
]
},
"ShotDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
},
"players": {
"type": "array",
"items": {
"$ref": "#/$defs/PlayerDto"
}
},
"value": {
"type": "integer",
"format": "int16"
},
"type": {
"$ref": "#/$defs/ShotTypeDto",
"nullable": true
},
"scored": {
"type": "boolean",
"nullable": true
},
"score": {
"$ref": "#/$defs/ScoreDto"
}
}
},
"ShotFeedMatchEventDto": {
"title": "ShotFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/ShotDto"
}
}
},
"ScoreDto": {
"type": "object",
"properties": {
"home": {
"type": "integer",
"format": "int16"
},
"away": {
"type": "integer",
"format": "int16"
}
}
},
"TipOffWinnerChangeDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
}
}
},
"TipOffWinnerChangeFeedMatchEventDto": {
"title": "TipOffWinnerChangeFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/TipOffWinnerChangeDto"
}
}
},
"TimeoutDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
}
}
},
"TimeoutFeedMatchEventDto": {
"title": "TimeoutFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/TimeoutDto"
}
}
},
"EjectionDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
},
"players": {
"type": "array",
"items": {
"$ref": "#/$defs/PlayerDto"
}
},
"type": {
"$ref": "#/$defs/EjectionTypeDto"
}
}
},
"EjectionFeedMatchEventDto": {
"title": "EjectionFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/EjectionDto"
}
}
},
"EjectionTypeDto": {
"type": "string",
"enum": [
"Unknown",
"Disqualification",
"FouledOut"
],
"x-extensible-enum": [
"Unknown",
"Disqualification",
"FouledOut"
]
},
"SubstitutionDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
},
"players": {
"type": "array",
"items": {
"$ref": "#/$defs/PlayerDto"
}
}
}
},
"SubstitutionFeedMatchEventDto": {
"title": "SubstitutionFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/SubstitutionDto"
}
}
},
"PossessionChangeDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
}
}
},
"PossessionChangeFeedMatchEventDto": {
"title": "PossessionChangeFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/PossessionChangeDto"
}
}
},
"PossessionArrowChangeDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
}
}
},
"PossessionArrowChangeFeedMatchEventDto": {
"title": "PossessionArrowChangeFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/PossessionArrowChangeDto"
}
}
},
"FreeThrowDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
},
"players": {
"type": "array",
"items": {
"$ref": "#/$defs/PlayerDto"
},
"nullable": true
},
"scored": {
"type": "boolean",
"nullable": true
},
"associatedFoulId": {
"type": "string",
"format": "uuid"
}
}
},
"FreeThrowFeedMatchEventDto": {
"title": "FreeThrowFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/FreeThrowDto"
}
}
},
"FoulTypeDto": {
"type": "string",
"enum": [
"Unknown",
"PersonalDefensive",
"PersonalOffensive",
"Technical",
"SetFouls"
],
"x-extensible-enum": [
"Unknown",
"PersonalDefensive",
"PersonalOffensive",
"Technical",
"SetFouls"
]
},
"FoulSubTypeDto": {
"type": "string",
"enum": [
"Unknown",
"OneAndOne"
],
"x-extensible-enum": [
"Unknown",
"OneAndOne"
]
},
"FoulDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
},
"players": {
"type": "array",
"items": {
"$ref": "#/$defs/PlayerDto"
},
"nullable": true
},
"type": {
"$ref": "#/$defs/FoulTypeDto"
},
"subType": {
"$ref": "#/$defs/FoulSubTypeDto",
"nullable": true
},
"foulCount": {
"$ref": "#/$defs/FoulCountDto"
},
"incrementsFoulCount": {
"type": "boolean"
},
"numberOfFreeThrowsAwarded": {
"type": "integer",
"format": "int32"
},
"areFreeThrowsCompleted": {
"type": "boolean"
}
}
},
"FoulFeedMatchEventDto": {
"title": "FoulFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/FoulDto"
}
}
},
"FoulCountDto": {
"type": "object",
"properties": {
"home": {
"type": "integer",
"format": "int16"
},
"away": {
"type": "integer",
"format": "int16"
}
}
},
"ReboundFeedMatchEventDto": {
"title": "ReboundFeedMatchEventDto",
"type": "object",
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/ReboundDto"
}
}
},
"ReboundTypeDto": {
"type": "string",
"enum": [
"Unknown",
"Defensive",
"Offensive",
"DefensiveDeadBall",
"OffensiveDeadBall"
],
"x-extensible-enum": [
"Unknown",
"Defensive",
"Offensive",
"DefensiveDeadBall",
"OffensiveDeadBall"
]
},
"ReboundDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
},
"players": {
"type": "array",
"items": {
"$ref": "#/$defs/PlayerDto"
}
},
"type": {
"$ref": "#/$defs/ReboundTypeDto"
},
"associatedShotId": {
"type": "string",
"format": "uuid",
"nullable": true
},
"associatedFreeThrowId": {
"type": "string",
"format": "uuid",
"nullable": true
}
}
},
"ShotTypeDto": {
"type": "string",
"enum": [
"Unknown",
"Dunk",
"Layup",
"Fadeaway",
"TipInDunk",
"TipInLayup",
"JumpShot",
"AlleyOop",
"DrivingLayup",
"HookShot",
"FloatingJumpShot",
"StepbackJumpShot",
"PullUpJumpShot",
"TurnaroundJumpShot",
"WrongBasket",
"ReverseLayup",
"EuroStep",
"AlleyOopDunk"
],
"x-extensible-enum": [
"Unknown",
"Dunk",
"Layup",
"Fadeaway",
"TipInDunk",
"TipInLayup",
"JumpShot",
"AlleyOop",
"DrivingLayup",
"HookShot",
"FloatingJumpShot",
"StepbackJumpShot",
"PullUpJumpShot",
"TurnaroundJumpShot",
"WrongBasket",
"ReverseLayup",
"EuroStep",
"AlleyOopDunk"
]
},
"TurnoverDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
},
"players": {
"type": "array",
"items": {
"$ref": "#/$defs/PlayerDto"
}
},
"type": {
"$ref": "#/$defs/TurnoverTypeDto",
"nullable": true
}
}
},
"TurnoverTypeDto": {
"title": "Turnover type",
"description": "Defines turnover types",
"type": "string",
"enum": [
"Unknown",
"OffensiveGoaltending",
"LaneViolation",
"BallHandling",
"Dribbling",
"BadPass",
"LostBall",
"OverAndBack",
"Backcourt",
"DoubleDribble",
"OutOfBounds",
"Travel",
"ShotClock",
"ThreeSeconds",
"FiveSeconds",
"Lifting",
"Other"
],
"x-extensible-enum": [
"Unknown",
"OffensiveGoaltending",
"LaneViolation",
"BallHandling",
"Dribbling",
"BadPass",
"LostBall",
"OverAndBack",
"Backcourt",
"DoubleDribble",
"OutOfBounds",
"Travel",
"ShotClock",
"ThreeSeconds",
"FiveSeconds",
"Lifting",
"Other"
]
},
"TurnoverFeedMatchEventDto": {
"title": "TurnoverFeedMatchEventDto",
"type": "object",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/TurnoverDto"
}
}
},
"ReliabilityDto": {
"title": "ReliabilityDto",
"type": "object",
"additionalProperties": false,
"properties": {
"utcTimestamp": {
"type": "string",
"format": "date-time"
},
"isReliable": {
"type": "boolean"
},
"reason": {
"type": "string"
}
}
},
"ReliabilityFeedMatchEventDto": {
"title": "ReliabilityFeedMatchEventDto",
"type": "object",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/ReliabilityDto"
}
}
},
"PeriodTransitionDto": {
"type": "object",
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
]
},
"PeriodTransitionFeedMatchEventDto": {
"title": "PeriodTransitionFeedMatchEventDto",
"type": "object",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/TurnoverDto"
}
}
},
"ActionBaseDto": {
"additionalProperties": false,
"properties": {
"gameTime": {
"type": "string",
"format": "duration"
},
"period": {
"$ref": "#/$defs/PeriodDto"
},
"utcTimestamp": {
"type": "string",
"format": "date-time"
}
}
},
"PeriodDto": {
"type": "object",
"additionalProperties": false,
"properties": {
"number": {
"type": "integer",
"format": "int32"
},
"status": {
"$ref": "#/$defs/PeriodStatusDto"
},
"type": {
"$ref": "#/$defs/PeriodTypeDto"
}
}
},
"PeriodTypeDto": {
"type": "string",
"enum": [
"Unknown",
"Regular",
"Overtime"
],
"x-extensible-enum": [
"Unknown",
"Regular",
"Overtime"
]
},
"TeamDto": {
"type": "string",
"enum": [
"Unknown",
"Home",
"Away"
],
"x-extensible-enum": [
"Unknown",
"Home",
"Away"
]
},
"CompetitorDto": {
"title": "CompetitorDto",
"type": "object",
"properties": {
"id": {
"type": "string"
}
}
},
"PlayerDto": {
"type": "object",
"additionalProperties": false,
"properties": {
"competitorId": {
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"type": {
"$ref": "#/$defs/PlayerTypeDto"
}
}
},
"PlayerTypeDto": {
"type": "string",
"enum": [
"Unknown",
"Shooter",
"Blocker",
"Assister",
"Rebounder",
"TurnoverBy",
"Stealer",
"FoulBy",
"FoulOn",
"EjectionOn",
"SubstitutedIn",
"SubstitutedOut"
],
"x-extensible-enum": [
"Unknown",
"Shooter",
"Blocker",
"Assister",
"Rebounder",
"TurnoverBy",
"Stealer",
"FoulBy",
"FoulOn",
"EjectionOn",
"SubstitutedIn",
"SubstitutedOut"
]
},
"PeriodStatusDto": {
"type": "string",
"enum": [
"Unknown",
"NotStarted",
"InProgress",
"Complete"
],
"x-extensible-enum": [
"Unknown",
"NotStarted",
"InProgress",
"Complete"
]
},
"ClockDto": {
"title": "Clock",
"type": "object",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"activityType": {
"$ref": "#/$defs/ClockActivityTypeDto"
},
"isClockRunning": {
"type": "boolean"
}
}
},
"ClockActivityTypeDto": {
"type": "string",
"enum": [
"Start",
"Stop",
"Adjustment",
"SetClock"
],
"x-extensible-enum": [
"Start",
"Stop",
"Adjustment",
"SetClock"
]
},
"ClockFeedMatchEventDto": {
"title": "ClockFeedMatchEventDto",
"type": "object",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/ClockDto"
}
}
},
"ParticipationFeedMatchEventDto": {
"title": "ParticipationFeedMatchEventDto",
"type": "object",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/ParticipationDto"
}
}
},
"ParticipationDto": {
"type": "object",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/ActionBaseDto"
}
],
"properties": {
"team": {
"$ref": "#/$defs/TeamDto"
},
"competitor": {
"$ref": "#/$defs/CompetitorDto"
},
"players": {
"type": "array",
"items": {
"$ref": "#/$defs/ParticipationPlayerDto"
}
}
}
},
"ParticipationPlayerDto": {
"title": "ParticipationPlayer",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/PlayerDto"
}
],
"properties": {
"status": {
"$ref": "#/$defs/ParticipationPlayerStatusDto"
},
"isStarter": {
"type": "boolean"
}
}
},
"ParticipationPlayerStatusDto": {
"title": "ParticipationPlayerStatus",
"enum": [
"Unknown",
"OnCourt",
"OnBench",
"OnBenchNotPlayed",
"Ejected"
],
"x-extensible-enum": [
"Unknown",
"OnCourt",
"OnBench",
"OnBenchNotPlayed",
"Ejected"
]
},
"MatchFormatUpdateFeedMatchEventDto": {
"title": "MatchFormatUpdateFeedMatchEventDto",
"type": "object",
"additionalProperties": false,
"allOf": [
{
"$ref": "#/$defs/FeedMatchEventBaseDto"
}
],
"properties": {
"action": {
"$ref": "#/$defs/MatchFormatUpdateDto"
}
}
},
"MatchFormatUpdateDto": {
"type": "object",
"additionalProperties": false,
"properties": {
"ruleset": {
"$ref": "#/$defs/MatchFormatTypeDto"
},
"periodLength": {
"type": "integer",
"format": "int32"
},
"overtimeLength": {
"type": "integer",
"format": "int32"
},
"utcTimestamp": {
"type": "string",
"format": "date-time"
}
}
},
"MatchFormatTypeDto": {
"type": "string",
"enum": [
"Unknown",
"FIBA",
"NBA",
"NCAA"
],
"x-extensible-enum": [
"Unknown",
"FIBA",
"NBA",
"NCAA"
]
}
},
"anyOf": [
{
"$ref": "#/$defs/ReliabilityFeedMatchEventDto"
},
{
"$ref": "#/$defs/ClockFeedMatchEventDto"
},
{
"$ref": "#/$defs/TurnoverFeedMatchEventDto"
},
{
"$ref": "#/$defs/ShotFeedMatchEventDto"
},
{
"$ref": "#/$defs/FoulFeedMatchEventDto"
},
{
"$ref": "#/$defs/TimeoutFeedMatchEventDto"
},
{
"$ref": "#/$defs/FreeThrowFeedMatchEventDto"
},
{
"$ref": "#/$defs/PossessionChangeFeedMatchEventDto"
},
{
"$ref": "#/$defs/PossessionArrowChangeFeedMatchEventDto"
},
{
"$ref": "#/$defs/TipOffWinnerChangeFeedMatchEventDto"
},
{
"$ref": "#/$defs/ReboundFeedMatchEventDto"
},
{
"$ref": "#/$defs/PeriodTransitionFeedMatchEventDto"
},
{
"$ref": "#/$defs/SubstitutionFeedMatchEventDto"
},
{
"$ref": "#/$defs/EjectionFeedMatchEventDto"
},
{
"$ref": "#/$defs/MatchFormatUpdateFeedMatchEventDto"
},
{
"$ref": "#/$defs/ParticipationFeedMatchEventDto"
}
],
"#schema": "#"
}