Get Venue Event
Returns a single venue event. By default the response includes an embedded venueMarkets array.
Returns a single venue event. By default the response includes an embedded venueMarkets array. DEPRECATION: embedded venueMarkets is deprecated and will be removed — fetch the event's markets from GET /venue-markets?venueEventId=. To opt into the lean response now (no venueMarkets), send the expand query without markets (e.g. ?expand=); send ?expand=markets to pin markets inline across the future default change.
Authorizations
API key passed in the header.
Path Parameters
Response
200
idstringrequiredEvent id. List responses return one row per matched cluster, and for a matched event this id is the cluster anchor — the handle to use for cross-venue lookups. Re-resolve it from discovery rather than storing it as a permanent key: clusters can merge, after which the id remains a valid event but is no longer the cluster head. See the Matched Clusters guide.
externalIdentifierstringrequiredtitlestringrequireddescriptionstringimagestringrequiredvenue"kalshi" | "polymarket" | "limitless" | "opinion" | "predict" | "probable" | "myriad" | "hyperliquid"required"kalshi" | "polymarket" | "limitless" | "opinion" | "predict" | "probable" | "myriad" | "hyperliquid"volumenumberx >= 0status"open" | "closed" | "resolved" | "unopened" | "paused""open" | "closed" | "resolved" | "unopened" | "paused"startDatestringendDatestringcreationDatestringgameStartTimestringcategoriesarray<object>requiredcategories.idstringrequiredcategories.categoryobjectrequiredslugstringsubtitlestringvenuesarray<"kalshi" | "polymarket" | "limitless" | "opinion" | "predict" | "probable" | "myriad" | "hyperliquid">Venues this row's matched cluster spans — use it for venue badges. On a cluster anchor this is the cluster-wide set; a non-anchor member usually reports the same set, but narrows to its own venue when none of its markets have cross-venue counterparts.
marketCountintegerNumber of markets on this event. Use this rather than the length of an embedded venueMarkets array, which is a preview on list responses.
x >= 0venueCountintegerLength of `venues` — the size of the matched cluster.
x >= 0groupMarketCountintegerx >= 0updatedAtstringvenueMarketsarray<object>Embedded markets. On list responses this is a preview of up to three markets chosen to represent the event on a card — not the complete set, and not necessarily the largest; use marketCount for totals. On the by-id response it is uncapped. Deprecated on both — fetch markets from GET /venue-markets?venueEventId=.
venueMarkets.idstringrequiredvenueMarkets.venue"kalshi" | "polymarket" | "limitless" | "opinion" | "predict" | "probable" | "myriad" | "hyperliquid"required"kalshi" | "polymarket" | "limitless" | "opinion" | "predict" | "probable" | "myriad" | "hyperliquid"venueMarkets.marketIdstringvenueMarkets.externalIdentifierstringrequiredvenueMarkets.venueEventIdstringvenueMarkets.questionstringrequiredvenueMarkets.descriptionstringvenueMarkets.rulesPrimarystringvenueMarkets.rulesSecondarystringvenueMarkets.conditionIdstringvenueMarkets.volumenumberx >= 0venueMarkets.imagestringvenueMarkets.venueMarketOutcomesarray<object>requiredvenueMarkets.status"open" | "closed" | "resolved" | "unopened" | "paused""open" | "closed" | "resolved" | "unopened" | "paused"venueMarkets.startDatestringvenueMarkets.endDatestringvenueMarkets.creationDatestringvenueMarkets.createdAtstringvenueMarkets.resolutionDatestringvenueMarkets.negRiskbooleanvenueMarkets.venuesarray<"kalshi" | "polymarket" | "limitless" | "opinion" | "predict" | "probable" | "myriad" | "hyperliquid">venueMarkets.venueCountintegerx >= 0venueMarkets.matchStatus"pending" | "unmatched" | "review" | "matched" | "verified" | "rejected""pending" | "unmatched" | "review" | "matched" | "verified" | "rejected"venueMarkets.arbReturnnumbervenueMarkets.aggKeystringDeterministic canonical key computed from this venue's own data; null when not canonicalizable. This is a fetch filter, not a cross-venue join key — it is guaranteed identical across venues only for sports head-to-head and crypto up/down markets, and two members of the same matched cluster can carry different keys. Use the event id and matchedVenueMarkets for identity.
venueMarkets.sportsMarketTypestringvenueMarkets.sectionRankintegervenueMarkets.periodstringvenueMarkets.marketCategorystringvenueMarkets.marketGroupstringvenueMarkets.marketSubtypestringvenueMarkets.lineValuenumbervenueMarkets.matchedVenueMarketsarray<object>The same market on other venues, as linked by AGG's matching pipeline. This is the cross-venue linkage — it hangs off each market, not off the event, and is complete regardless of which cluster member you queried.
matchStatus"pending" | "unmatched" | "review" | "matched" | "verified" | "rejected""pending" | "unmatched" | "review" | "matched" | "verified" | "rejected"arbReturnnumberseriesobjectseries.externalIdentifierstringrequiredrecurrencestringaggKeystringDeterministic canonical key computed from this venue's own data; null when not canonicalizable. This is a fetch filter, not a cross-venue join key — it is guaranteed identical across venues only for sports head-to-head and crypto up/down markets, and two members of the same matched cluster can carry different keys. Use the event id and matchedVenueMarkets for identity.
structureType"candidate" | "sport" | "axis" | "dates""candidate" | "sport" | "axis" | "dates"sportstringsettlementDiffobjectsettlementDiff.sharedSummarystringrequiredsettlementDiff.differencesarray<object>requiredmatchedVenueEventsarray<object>matchedVenueEvents.idstringrequiredSibling event id. Re-resolve from discovery rather than persisting: cluster merges re-point members onto the surviving root, after which this id remains a valid event but is no longer the cluster head.
matchedVenueEvents.venue"kalshi" | "polymarket" | "limitless" | "opinion" | "predict" | "probable" | "myriad" | "hyperliquid"required"kalshi" | "polymarket" | "limitless" | "opinion" | "predict" | "probable" | "myriad" | "hyperliquid"matchedVenueEvents.externalIdentifierstringrequiredmatchedVenueEvents.titlestringrequiredmatchedVenueEvents.slugstringmatchedVenueEvents.status"open" | "closed" | "resolved" | "unopened" | "paused""open" | "closed" | "resolved" | "unopened" | "paused"matchedVenueEvents.seriesobject