API ReferenceEvents & Series
List catalog-derived events for an exchange (router = all served venues).
const url = 'https://data.predictefy.com/api/example/fetchEvents?status=active&sort=volume&searchMode=lexical&snapshotTTL=60000';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://data.predictefy.com/api/example/fetchEvents?status=active&sort=volume&searchMode=lexical&snapshotTTL=60000' \ --header 'Authorization: Bearer <token>'Supported list params: status, sort, category, query, searchMode, series, limit, offset, page, cursor, snapshotTTL, closeAfter, closeBefore. Cursor pagination freezes the catalog snapshot from page one. The four canonical taxonomy params are honored only when READS_ENABLE_TAXONOMY=true; while the flag is off they are accepted and ignored. Raw category labels always match; category also matches the canonical slug when READS_ENABLE_TAXONOMY=true. searchMode accepts only lexical (the default). Semantic and hybrid modes return HTTP 400 NOT_SUPPORTED with a fetchMarkets hint; any other searchMode value returns HTTP 400 VALIDATION_ERROR. The legacy searchIn param remains accepted and ignored. closeAfter and closeBefore accept integer epoch milliseconds, a YYYY-MM-DD date (UTC midnight), or an RFC 3339 date-time with Z or an offset; anything else answers 400. Both bounds are exclusive. Markets without a close date are excluded whenever either bound is set. Equal bounds return HTTP 200 with an empty result. Invalid bounds or closeAfter later than closeBefore return HTTP 400 VALIDATION_ERROR. The bounds filter member markets before events are grouped, so each event lists only its matching markets. Aggregates, ordering, counts and pagination use those members.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Query Parameters
Section titled “Query Parameters”Exclusive lower bound on the market close date (resolutionDate), compared at millisecond precision. Accepts exactly three forms: integer epoch milliseconds, a YYYY-MM-DD date, or an RFC 3339 date-time. Epoch milliseconds use digits with an optional leading minus. Non-negative integers below 100000000000 look like epoch seconds or a compact date and return HTTP 400 VALIDATION_ERROR; use epoch MILLISECONDS. Negative epochs and integers of at least 100000000000 remain accepted within the UTC year range. Dates mean UTC midnight. Date-times require T/t, HH:MM, optional :SS with an optional fraction of 1 to 9 digits, and Z/z or a +HH:MM/-HH:MM offset. Fractions truncate to milliseconds. Invalid calendar or clock fields, other formats, and UTC years outside 0001 to 9999 return HTTP 400 VALIDATION_ERROR. In a query string, send a + offset sign as %2B; a raw + decodes to a space and answers 400.
Exclusive upper bound on the market close date (resolutionDate), compared at millisecond precision. Accepts exactly three forms: integer epoch milliseconds, a YYYY-MM-DD date, or an RFC 3339 date-time. Epoch milliseconds use digits with an optional leading minus. Non-negative integers below 100000000000 look like epoch seconds or a compact date and return HTTP 400 VALIDATION_ERROR; use epoch MILLISECONDS. Negative epochs and integers of at least 100000000000 remain accepted within the UTC year range. Dates mean UTC midnight. Date-times require T/t, HH:MM, optional :SS with an optional fraction of 1 to 9 digits, and Z/z or a +HH:MM/-HH:MM offset. Fractions truncate to milliseconds. Invalid calendar or clock fields, other formats, and UTC years outside 0001 to 9999 return HTTP 400 VALIDATION_ERROR. In a query string, send a + offset sign as %2B; a raw + decodes to a space and answers 400.
Matches the raw category label, or the canonical slug when READS_ENABLE_TAXONOMY=true. A request served from SQL (status=all, closed or resolved, or while the catalog snapshot warms) returns HTTP 400 VALIDATION_ERROR when a broad slug matches more than 5,000 markets, the same scan bound categories= has; narrow it with status or venue.
Comma-separated canonical category slugs (OR semantics, maximum 50). Unknown slugs match nothing. Honored only when READS_ENABLE_TAXONOMY=true; ignored while the flag is off.
Comma-separated canonical category slugs to exclude (maximum 50). NULL/unclassified rows remain visible. Honored only when READS_ENABLE_TAXONOMY=true; ignored while the flag is off.
Comma-separated canonical tag slugs (ANY-overlap semantics, maximum 50). Unknown slugs match nothing. Honored only when READS_ENABLE_TAXONOMY=true; ignored while the flag is off.
Comma-separated canonical tag slugs to exclude by overlap (maximum 50). Honored only when READS_ENABLE_TAXONOMY=true; ignored while the flag is off.
Only lexical event search is supported. Use fetchMarkets for semantic or hybrid search.
Offsets above the maximum are rejected; use cursor pagination for deep walks.
Opaque cursor returned by a prior page. Overrides offset/page and preserves the original catalog snapshot. Snapshot/offset cursors are signed by the server; a tampered or foreign cursor is rejected as VALIDATION_ERROR.
Cursor lifetime in milliseconds. 0 disables expiry for that cursor chain.
Responses
Section titled “Responses”A page of events (BaseResponse + data + meta + page, like fetchMarkets).
object
object
object
object
Venue-stated art for this outcome (a team logo on a sports leg), https, stored as its parsed href; omitted when the venue states none.
Stable binary side when asserted by the venue; omitted otherwise.
What the numeric price represents at the venue.
venue-composite: Venue-provided composite price whose inputs are not decomposed here.mid: Midpoint of the best bid and best ask.ask: Best ask or equivalent venue buy price.bid: Best bid or equivalent venue sell price.last-trade: Most recent executed trade price.amm-spot: Current AMM spot probability.pool-share: Outcome pool divided by the total parimutuel pool.odds-implied: Probability implied by venue odds.complement: Synthesized as one minus the paired outcome price.
Absolute probability delta versus one minute ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus five minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus 15 minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus one hour ago, from the newest stored close at or before the boundary within the 3h lookback. The lookup uses a 1m candle first, with a 1h fallback. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus six hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus 24 hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus seven days ago, from the newest stored close at or before the boundary within the 12h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus 30 days ago, from the newest stored close at or before the boundary within the 24h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Per-outcome tape coverage metadata. Null when unknown (no market_coverage row for this outcome, or not yet computed). Present only alongside the priceChange fields above (the hot snapshot path for open, active, priced outcomes).
object
How this outcome's book tape is captured.
When continuous tape coverage began for this outcome; null if unknown.
Measured effective observation interval in milliseconds (REST-polled venues); null for WebSocket venues or when unmeasured.
Count of detected tape gaps in the last 24 hours.
When the most recent tape gap was detected; null if none recorded.
object
Null means the venue publishes no such figure; 0 is a real venue-published zero
Metric-specific provenance for volume24h. venue is published by the venue; derived_cumulative is Predictefy-derived from cumulative snapshots; derived_tape is Predictefy-derived from captured fills. A derived value must carry this field.
The finite volume24h value when the venue registry unit is USD or USDC. USDC is counted at par (1 USDC = 1 USD), with no exchange-rate conversion. Null for contracts, COLLATERAL, CASH, unsupported or unknown units, or non-finite or missing values. Also null when the stored unit disagrees with the venue's declared unit.
Registry unit of the unchanged native volume24h. USD maps to usd, USDC to usdc, and CONTRACTS to contracts. All other or unknown units map to null. A stored unit that disagrees with the venue's declared unit also maps to null.
Venue-mode volume uses only snapshot_fetched_at, so the hot and SQL lanes report the same snapshot fetch time. Derived volume uses volume_24h_meta.asOf, falling back to windowEnd. Derived-venue volume and its timestamp can lag in the hot lane until the next full catalog resync. Null when unknown. Never the row write time, response time, or live price overlay time.
This is the oldest evaluation instant among this market's enriched outcomes, including the 6h/24h windows. It records when the price changes were evaluated, not when the batch finished or the current quote was measured. Failed refreshes retain the previous evaluation instant. It is null when no outcome is enriched or in the SQL lane, where price changes are omitted.
Null means the venue publishes no such figure; 0 is a real venue-published zero
Known-absent is null; this key is always emitted for market records.
Known-absent is null; event/parent artwork is distinct from market artwork.
The picture to show. It is the venue's art when it has any, else a stored substitute (see imageSource). Known-absent is null; this key is always emitted; null until the image-resolve stage has written this market. Thumbnail rule imageResolved ?? image ?? eventImage.
Why imageResolved is what it is (see ImageSource); null exactly when imageResolved is null.
object
object
Venue-stated art for this outcome (a team logo on a sports leg), https, stored as its parsed href; omitted when the venue states none.
Stable binary side when asserted by the venue; omitted otherwise.
What the numeric price represents at the venue.
venue-composite: Venue-provided composite price whose inputs are not decomposed here.mid: Midpoint of the best bid and best ask.ask: Best ask or equivalent venue buy price.bid: Best bid or equivalent venue sell price.last-trade: Most recent executed trade price.amm-spot: Current AMM spot probability.pool-share: Outcome pool divided by the total parimutuel pool.odds-implied: Probability implied by venue odds.complement: Synthesized as one minus the paired outcome price.
Absolute probability delta versus one minute ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus five minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus 15 minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus one hour ago, from the newest stored close at or before the boundary within the 3h lookback. The lookup uses a 1m candle first, with a 1h fallback. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus six hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus 24 hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus seven days ago, from the newest stored close at or before the boundary within the 12h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus 30 days ago, from the newest stored close at or before the boundary within the 24h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Per-outcome tape coverage metadata. Null when unknown (no market_coverage row for this outcome, or not yet computed). Present only alongside the priceChange fields above (the hot snapshot path for open, active, priced outcomes).
object
How this outcome's book tape is captured.
When continuous tape coverage began for this outcome; null if unknown.
Measured effective observation interval in milliseconds (REST-polled venues); null for WebSocket venues or when unmeasured.
Count of detected tape gaps in the last 24 hours.
When the most recent tape gap was detected; null if none recorded.
object
object
Venue-stated art for this outcome (a team logo on a sports leg), https, stored as its parsed href; omitted when the venue states none.
Stable binary side when asserted by the venue; omitted otherwise.
What the numeric price represents at the venue.
venue-composite: Venue-provided composite price whose inputs are not decomposed here.mid: Midpoint of the best bid and best ask.ask: Best ask or equivalent venue buy price.bid: Best bid or equivalent venue sell price.last-trade: Most recent executed trade price.amm-spot: Current AMM spot probability.pool-share: Outcome pool divided by the total parimutuel pool.odds-implied: Probability implied by venue odds.complement: Synthesized as one minus the paired outcome price.
Absolute probability delta versus one minute ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus five minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus 15 minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus one hour ago, from the newest stored close at or before the boundary within the 3h lookback. The lookup uses a 1m candle first, with a 1h fallback. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus six hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus 24 hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus seven days ago, from the newest stored close at or before the boundary within the 12h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus 30 days ago, from the newest stored close at or before the boundary within the 24h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Per-outcome tape coverage metadata. Null when unknown (no market_coverage row for this outcome, or not yet computed). Present only alongside the priceChange fields above (the hot snapshot path for open, active, priced outcomes).
object
How this outcome's book tape is captured.
When continuous tape coverage began for this outcome; null if unknown.
Measured effective observation interval in milliseconds (REST-polled venues); null for WebSocket venues or when unmeasured.
Count of detected tape gaps in the last 24 hours.
When the most recent tape gap was detected; null if none recorded.
object
object
Venue-stated art for this outcome (a team logo on a sports leg), https, stored as its parsed href; omitted when the venue states none.
Stable binary side when asserted by the venue; omitted otherwise.
What the numeric price represents at the venue.
venue-composite: Venue-provided composite price whose inputs are not decomposed here.mid: Midpoint of the best bid and best ask.ask: Best ask or equivalent venue buy price.bid: Best bid or equivalent venue sell price.last-trade: Most recent executed trade price.amm-spot: Current AMM spot probability.pool-share: Outcome pool divided by the total parimutuel pool.odds-implied: Probability implied by venue odds.complement: Synthesized as one minus the paired outcome price.
Absolute probability delta versus one minute ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus five minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus 15 minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus one hour ago, from the newest stored close at or before the boundary within the 3h lookback. The lookup uses a 1m candle first, with a 1h fallback. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus six hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus 24 hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus seven days ago, from the newest stored close at or before the boundary within the 12h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus 30 days ago, from the newest stored close at or before the boundary within the 24h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Per-outcome tape coverage metadata. Null when unknown (no market_coverage row for this outcome, or not yet computed). Present only alongside the priceChange fields above (the hot snapshot path for open, active, priced outcomes).
object
How this outcome's book tape is captured.
When continuous tape coverage began for this outcome; null if unknown.
Measured effective observation interval in milliseconds (REST-polled venues); null for WebSocket venues or when unmeasured.
Count of detected tape gaps in the last 24 hours.
When the most recent tape gap was detected; null if none recorded.
object
object
Venue-stated art for this outcome (a team logo on a sports leg), https, stored as its parsed href; omitted when the venue states none.
Stable binary side when asserted by the venue; omitted otherwise.
What the numeric price represents at the venue.
venue-composite: Venue-provided composite price whose inputs are not decomposed here.mid: Midpoint of the best bid and best ask.ask: Best ask or equivalent venue buy price.bid: Best bid or equivalent venue sell price.last-trade: Most recent executed trade price.amm-spot: Current AMM spot probability.pool-share: Outcome pool divided by the total parimutuel pool.odds-implied: Probability implied by venue odds.complement: Synthesized as one minus the paired outcome price.
Absolute probability delta versus one minute ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus five minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus 15 minutes ago, from the newest top-of-book tape tick (tob_ticks.last) at or before the boundary. On a snapshot-enriched outcome this field is always present; null means no reference tick exists and never means zero. This window has no freshness tolerance.
Absolute probability delta versus one hour ago, from the newest stored close at or before the boundary within the 3h lookback. The lookup uses a 1m candle first, with a 1h fallback. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus six hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus 24 hours ago, using a 1m candle first, with a 1h fallback, at or before the boundary within the 4h preferred lookback. Otherwise, use the newest close at or before the boundary within the 12h lookback, only when the same outcome's first write-forward 1m candle after the boundary up to now has the same close and lands within 12 hours after the older reference. On a snapshot-enriched outcome this field is always present; null means no eligible reference exists and never means zero.
Absolute probability delta versus seven days ago, from the newest stored close at or before the boundary within the 12h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Absolute probability delta versus 30 days ago, from the newest stored close at or before the boundary within the 24h lookback. Candle resolution preference is 1h, then 1d, then 1m. On a snapshot-enriched outcome this field is always present; null means no fresh-enough reference exists and never means zero.
Per-outcome tape coverage metadata. Null when unknown (no market_coverage row for this outcome, or not yet computed). Present only alongside the priceChange fields above (the hot snapshot path for open, active, priced outcomes).
object
How this outcome's book tape is captured.
When continuous tape coverage began for this outcome; null if unknown.
Measured effective observation interval in milliseconds (REST-polled venues); null for WebSocket venues or when unmeasured.
Count of detected tape gaps in the last 24 hours.
When the most recent tape gap was detected; null if none recorded.
object
object
Venue-rest — per-request REST via the venue adapter (the default stamp for every venue). predictefy-live — served from the live WebSocket hub or live order book; SX Bet overlay-bridge rows use this explicit source. fixture — offline sample data, never production venues. overlay — a serve-time catalog price overlay replaced the stored snapshot price for a fresh price-refresher entry.
Market capability flags. history is true only when Predictefy's history coverage for the venue is proven under docs/history-coverage.md; it is independent of venue-native history endpoints and the hosted fetchOHLCV route's availability.
object
True when the venue exposes real order-book depth rather than an emulated or synthetic top-of-book (such as a single level synthesized from spot price, AMM pool, parimutuel odds, or P2P offer odds). Does not imply tradeable.
Null means every member's venue publishes no such figure; otherwise this is the sum of known member values
object
Sum of member volume24hUsd values only when every member has a non-null value and the sum is finite; otherwise null. USDC is counted at par (1 USDC = 1 USD). The existing native volume24h sum is unchanged. A member's stored unit disagreeing with its venue's declared unit makes the aggregate null.
The members' common volume24hUnit, or null for mixed, unsupported or unknown units. A member's stored unit disagreeing with its venue's declared unit makes the aggregate null.
Oldest volume24hAsOf among members contributing finite native volume24h values. Null when there are no contributors or any contributing timestamp is unknown. Venue-mode members use snapshot fetch times, keeping the hot and SQL lanes aligned. Derived-venue members and their timestamps can lag in the hot lane until the next full catalog resync. Does not use event asOf, row write time, response time, or live price overlay time.
Oldest non-null member priceChangeAsOf, preserving the instants when cached price changes were evaluated, not when their batches finished. Null when no member is enriched or in the SQL lane, where price changes are omitted.
object
object
Venue-rest — per-request REST via the venue adapter (the default stamp for every venue). predictefy-live — served from the live WebSocket hub or live order book; SX Bet overlay-bridge rows use this explicit source. fixture — offline sample data, never production venues. overlay — a serve-time catalog price overlay replaced the stored snapshot price for a fresh price-refresher entry.
object
Present on archive-backed trade pages; earliest/latest archived trade for this outcome.
object
object
Present when page.total came from the exact background totals matrix.
Present if and only if page.total is null, explaining why the total is missing. Distinguishes "nothing matched" (total 0) from "your page was served but its matches were not counted" (total null).
object
Venue-rest — per-request REST via the venue adapter (the default stamp for every venue). predictefy-live — served from the live WebSocket hub or live order book; SX Bet overlay-bridge rows use this explicit source. fixture — offline sample data, never production venues. overlay — a serve-time catalog price overlay replaced the stored snapshot price for a fresh price-refresher entry.
object
Total matching rows, or null when the total was NOT computed — never a fabricated 0. The data page is the product and the count is metadata, so routes may warm an exact total off-request or abandon a count that exceeds its short budget while the page is still served. null is always accompanied by meta.totalUnavailable, which says why; use hasMore / nextCursor to walk the result set.
Whether another page exists. Determined by fetching one row beyond the requested limit, so it stays correct even when total is null.
Opaque cursor for the next page. Omitted on the final page.
Example
{ "data": [ { "markets": [ { "outcomes": [ { "side": "yes", "priceBasis": "venue-composite", "coverage": { "mechanism": "ws-lossless" } } ], "volume24hSource": "venue", "volume24hUnit": "usd", "imageSource": "venue", "yes": { "side": "yes", "priceBasis": "venue-composite", "coverage": { "mechanism": "ws-lossless" } }, "no": { "side": "yes", "priceBasis": "venue-composite", "coverage": { "mechanism": "ws-lossless" } }, "up": { "side": "yes", "priceBasis": "venue-composite", "coverage": { "mechanism": "ws-lossless" } }, "down": { "side": "yes", "priceBasis": "venue-composite", "coverage": { "mechanism": "ws-lossless" } }, "provenance": { "source": "venue-rest" } } ], "volume24hSource": { "sources": [ "venue" ] }, "volume24hUnit": "usd", "provenance": { "source": "venue-rest" } } ], "meta": { "provenance": { "source": "venue-rest" } }}NOT_SUPPORTED for semantic/hybrid search; VALIDATION_ERROR for unknown modes or invalid query parameters.
object
object
Always present on errors; quote this id when reporting a failed request.
Present only when a venue error is attributed to a specific exchange.
Example
{ "success": false, "error": { "code": "VALIDATION_ERROR" }}UNAUTHORIZED — platform lane (READS_ENABLE_AUTH)
object
object
Always present on errors; quote this id when reporting a failed request.
Present only when a venue error is attributed to a specific exchange.
Example
{ "success": false, "error": { "code": "VALIDATION_ERROR" }}INSUFFICIENT_CREDITS — endpoint-weighted credits
object
object
Always present on errors; quote this id when reporting a failed request.
Present only when a venue error is attributed to a specific exchange.
Example
{ "success": false, "error": { "code": "VALIDATION_ERROR" }}SCOPE_MISSING — API key lacks the route's required scope (RBAC v1)
object
object
Always present on errors; quote this id when reporting a failed request.
Present only when a venue error is attributed to a specific exchange.
Example
{ "success": false, "error": { "code": "VALIDATION_ERROR" }}The route does not exist, or the requested venue, market, event, cluster, outcome, or snapshot was not found. error.code names which. Not retryable.
object
object
Always present on errors; quote this id when reporting a failed request.
Present only when a venue error is attributed to a specific exchange.
Example
{ "success": false, "error": { "code": "VALIDATION_ERROR" }}RATE_LIMITED — per-key rps limit
object
object
Always present on errors; quote this id when reporting a failed request.
Present only when a venue error is attributed to a specific exchange.
Example
{ "success": false, "error": { "code": "VALIDATION_ERROR" }}