List catalog-derived events for an exchange (router = all venues).
const url = 'https://data.predictefy.com/api/example/fetchEvents?status=active&sort=volume&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&snapshotTTL=60000' \ --header 'Authorization: Bearer <token>'Supported list params: status, sort, category, query, series, limit, offset, page, cursor, snapshotTTL. 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. The legacy searchIn param remains accepted and ignored.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Query Parameters
Section titled “Query Parameters”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.
Opaque cursor returned by a prior page. Overrides offset/page and preserves the original catalog snapshot.
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
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.
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.
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.
object
object
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.
object
object
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.
object
object
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.
object
object
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.
object
object
Venue-rest — per-request REST via the venue adapter (all 16 venues; the default stamp). 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
object
object
Venue-rest — per-request REST via the venue adapter (all 16 venues; the default stamp). 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 (all 16 venues; the default stamp). 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" } ], "volume24hSource": "venue", "yes": { "side": "yes", "priceBasis": "venue-composite" }, "no": { "side": "yes", "priceBasis": "venue-composite" }, "up": { "side": "yes", "priceBasis": "venue-composite" }, "down": { "side": "yes", "priceBasis": "venue-composite" }, "provenance": { "source": "venue-rest" } } ], "volume24hSource": { "sources": [ "venue" ] }, "provenance": { "source": "venue-rest" } } ], "meta": { "provenance": { "source": "venue-rest" } }}Enveloped error.
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" }}Enveloped error.
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" }}Enveloped error.
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" }}Enveloped error.
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" }}Enveloped error.
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" }}Enveloped error.
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" }}