OddsRelay · JSON-LD Context
Oddsrelay Context
JSON-LD context defining the semantic vocabulary for Oddsrelay from OddsRelay.
22 Classes
62 Properties
4 Namespaces
Namespaces
schema:
https://schema.org/
xsd:
http://www.w3.org/2001/XMLSchema#
dcterms:
http://purl.org/dc/terms/
oddsrelay:
https://oddsrelay.io/schema#
Classes
ErrorBody
Error402
Quote
MatchedMeta
MatchedEvent
MatchedOutcome
MatchedEnvelope
RawOutcome
RawEvent
RawMeta
RawEnvelope
PageMeta
Sport
Event
Venue
Regions
Health
Status
CoverageSummary
CoverageKeyed
Usage
PriceTable
Properties
| Property | Type | Container |
|---|---|---|
| error | ||
| cost | integer | |
| remaining | integer | |
| rate_card | string | |
| feed_type | string | |
| region | string | |
| odds_format | string | |
| processed_at | string | |
| last_seen | ||
| count | integer | |
| version | string | |
| next_cursor | ||
| event_id | string | |
| sport_key | string | |
| sport_title | string | |
| commence_time | string | |
| home_team | string | |
| away_team | string | |
| event_name | string | |
| venue | string | |
| markets | list | |
| name | string | |
| point | decimal | |
| back | list | |
| lay | ||
| meta | reference | |
| data | list | |
| price | decimal | |
| back_price | decimal | |
| lay_price | decimal | |
| available | decimal | |
| id | string | |
| cluster_id | string | |
| bookmakers | list | |
| total | integer | |
| board_version | integer | |
| key | string | |
| group | string | |
| title | string | |
| description | string | |
| active | boolean | |
| has_outrights | boolean | |
| regions | list | |
| status | string | |
| has_coverage | list | |
| is_exchange | boolean | |
| default_region | string | |
| boards | ||
| stale_boards | list | |
| max_board_age_s | decimal | |
| missing_boards | list | |
| generated_at | string | |
| products | ||
| plan | string | |
| account | ||
| tokens | ||
| flood_cap | ||
| scope | ||
| scope_version | integer | |
| provisional | boolean | |
| captured_at | string | |
| recent |
JSON-LD Document
{
"@context": {
"@vocab": "https://oddsrelay.io/schema#",
"schema": "https://schema.org/",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"dcterms": "http://purl.org/dc/terms/",
"oddsrelay": "https://oddsrelay.io/schema#",
"ErrorBody": "oddsrelay:ErrorBody",
"error": {
"@id": "oddsrelay:error"
},
"Error402": "oddsrelay:Error402",
"Quote": "oddsrelay:Quote",
"cost": {
"@id": "oddsrelay:cost",
"@type": "xsd:integer"
},
"remaining": {
"@id": "oddsrelay:remaining",
"@type": "xsd:integer"
},
"rate_card": {
"@id": "oddsrelay:rate_card",
"@type": "xsd:string"
},
"MatchedMeta": "oddsrelay:MatchedMeta",
"feed_type": {
"@id": "oddsrelay:feed_type",
"@type": "xsd:string"
},
"region": {
"@id": "oddsrelay:region",
"@type": "xsd:string"
},
"odds_format": {
"@id": "oddsrelay:odds_format",
"@type": "xsd:string"
},
"processed_at": {
"@id": "oddsrelay:processed_at",
"@type": "xsd:string"
},
"last_seen": {
"@id": "oddsrelay:last_seen"
},
"count": {
"@id": "oddsrelay:count",
"@type": "xsd:integer"
},
"version": {
"@id": "oddsrelay:version",
"@type": "xsd:string"
},
"next_cursor": {
"@id": "oddsrelay:next_cursor"
},
"MatchedEvent": "oddsrelay:MatchedEvent",
"event_id": {
"@id": "oddsrelay:event_id",
"@type": "xsd:string"
},
"sport_key": {
"@id": "oddsrelay:sport_key",
"@type": "xsd:string"
},
"sport_title": {
"@id": "oddsrelay:sport_title",
"@type": "xsd:string"
},
"commence_time": {
"@id": "oddsrelay:commence_time",
"@type": "xsd:string"
},
"home_team": {
"@id": "oddsrelay:home_team",
"@type": "xsd:string"
},
"away_team": {
"@id": "oddsrelay:away_team",
"@type": "xsd:string"
},
"event_name": {
"@id": "oddsrelay:event_name",
"@type": "xsd:string"
},
"venue": {
"@id": "oddsrelay:venue",
"@type": "xsd:string"
},
"markets": {
"@id": "oddsrelay:markets",
"@container": "@list"
},
"MatchedOutcome": "oddsrelay:MatchedOutcome",
"name": {
"@id": "oddsrelay:name",
"@type": "xsd:string"
},
"point": {
"@id": "oddsrelay:point",
"@type": "xsd:decimal"
},
"back": {
"@id": "oddsrelay:back",
"@container": "@list"
},
"lay": {
"@id": "oddsrelay:lay"
},
"MatchedEnvelope": "oddsrelay:MatchedEnvelope",
"meta": {
"@id": "oddsrelay:meta",
"@type": "@id"
},
"data": {
"@id": "oddsrelay:data",
"@container": "@list"
},
"RawOutcome": "oddsrelay:RawOutcome",
"price": {
"@id": "oddsrelay:price",
"@type": "xsd:decimal"
},
"back_price": {
"@id": "oddsrelay:back_price",
"@type": "xsd:decimal"
},
"lay_price": {
"@id": "oddsrelay:lay_price",
"@type": "xsd:decimal"
},
"available": {
"@id": "oddsrelay:available",
"@type": "xsd:decimal"
},
"RawEvent": "oddsrelay:RawEvent",
"id": {
"@id": "oddsrelay:id",
"@type": "xsd:string"
},
"cluster_id": {
"@id": "oddsrelay:cluster_id",
"@type": "xsd:string"
},
"bookmakers": {
"@id": "oddsrelay:bookmakers",
"@container": "@list"
},
"RawMeta": "oddsrelay:RawMeta",
"total": {
"@id": "oddsrelay:total",
"@type": "xsd:integer"
},
"board_version": {
"@id": "oddsrelay:board_version",
"@type": "xsd:integer"
},
"RawEnvelope": "oddsrelay:RawEnvelope",
"PageMeta": "oddsrelay:PageMeta",
"Sport": "oddsrelay:Sport",
"key": {
"@id": "oddsrelay:key",
"@type": "xsd:string"
},
"group": {
"@id": "oddsrelay:group",
"@type": "xsd:string"
},
"title": {
"@id": "oddsrelay:title",
"@type": "xsd:string"
},
"description": {
"@id": "oddsrelay:description",
"@type": "xsd:string"
},
"active": {
"@id": "oddsrelay:active",
"@type": "xsd:boolean"
},
"has_outrights": {
"@id": "oddsrelay:has_outrights",
"@type": "xsd:boolean"
},
"regions": {
"@id": "oddsrelay:regions",
"@container": "@list"
},
"Event": "oddsrelay:Event",
"status": {
"@id": "oddsrelay:status",
"@type": "xsd:string"
},
"has_coverage": {
"@id": "oddsrelay:has_coverage",
"@container": "@list"
},
"Venue": "oddsrelay:Venue",
"is_exchange": {
"@id": "oddsrelay:is_exchange",
"@type": "xsd:boolean"
},
"Regions": "oddsrelay:Regions",
"default_region": {
"@id": "oddsrelay:default_region",
"@type": "xsd:string"
},
"Health": "oddsrelay:Health",
"boards": {
"@id": "oddsrelay:boards"
},
"stale_boards": {
"@id": "oddsrelay:stale_boards",
"@container": "@list"
},
"max_board_age_s": {
"@id": "oddsrelay:max_board_age_s",
"@type": "xsd:decimal"
},
"missing_boards": {
"@id": "oddsrelay:missing_boards",
"@container": "@list"
},
"Status": "oddsrelay:Status",
"generated_at": {
"@id": "oddsrelay:generated_at",
"@type": "xsd:string"
},
"products": {
"@id": "oddsrelay:products"
},
"CoverageSummary": "oddsrelay:CoverageSummary",
"CoverageKeyed": "oddsrelay:CoverageKeyed",
"Usage": "oddsrelay:Usage",
"plan": {
"@id": "oddsrelay:plan",
"@type": "xsd:string"
},
"account": {
"@id": "oddsrelay:account"
},
"tokens": {
"@id": "oddsrelay:tokens"
},
"flood_cap": {
"@id": "oddsrelay:flood_cap"
},
"scope": {
"@id": "oddsrelay:scope"
},
"scope_version": {
"@id": "oddsrelay:scope_version",
"@type": "xsd:integer"
},
"PriceTable": "oddsrelay:PriceTable",
"provisional": {
"@id": "oddsrelay:provisional",
"@type": "xsd:boolean"
},
"captured_at": {
"@id": "oddsrelay:captured_at",
"@type": "xsd:string"
},
"recent": {
"@id": "oddsrelay:recent"
}
},
"@type": "schema:Dataset",
"schema:name": "OddsRelay API JSON-LD context",
"schema:description": "A JSON-LD @context for the objects OddsRelay's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-10-09) from openapi/oddsrelay-openapi.yml.",
"dcterms:created": "2026-10-09",
"dcterms:source": [
"openapi/oddsrelay-openapi.yml"
]
}