Use this file to discover all available pages before exploring further.
Prediction Market data is currently in beta. It is actively being worked on and improved, but may be unreliable. Polymarket and Kalshi data are live.At least for the time being, this endpoint requires a Growth or Enterprise plan. Learn more.
This endpoint requires a Growth or Enterprise plan. Learn more.
Per-domain structured enrichment (sports league/teams/start times today; new domains added over time). Null when no domain-specific signal extracted.
See PredictionEventEnrichedMetadata
Timezone discriminator for gameStartTime / gameStartDate. Always UTC for any record produced after the ET→UTC normalisation rollout.
See SportsTimezone
Decomposed venue ticker (parsed components from the venue’s native event identifier). Useful for cross-venue matching when canonical league/teams fields don’t disambiguate.
See DecomposedVenueTicker
A clean, UI-ready label derived from label/question with the parent event name stripped (and Kalshi Yes:/No: prefixes unwrapped). Falls back to question when label is missing or unknown.
Per-domain structured enrichment (sports market type/teams/start times today). Null when no domain-specific signal extracted.
See PredictionMarketEnrichedMetadata
Timezone discriminator for gameStartTime / gameStartDate. Always UTC for any record produced after the ET→UTC normalisation rollout.
See SportsTimezone
Per-domain structured enrichment (sports league/teams/start times today; new domains added over time). Null when no domain-specific signal extracted.
See PredictionEventEnrichedMetadata
Timezone discriminator for gameStartTime / gameStartDate. Always UTC for any record produced after the ET→UTC normalisation rollout.
See SportsTimezone
Decomposed venue ticker (parsed components from the venue’s native event identifier). Useful for cross-venue matching when canonical league/teams fields don’t disambiguate.
See DecomposedVenueTicker
This query returns bar data for multiple top markets within a prediction event, combining event context with individual market time-series data. It’s useful for comparing market performance, identifying trending markets, and analyzing multi-market events.Key characteristics:
Event ID format: The eventId format varies by platform:
Should I use rankBy or rankByOutcome + rankByOutcomeAttribute?
Use rankBy for market-level metrics (e.g., volumeUsd24h, liquidityUsd, uniqueTraders24h)
Use rankByOutcome + rankByOutcomeAttribute for outcome-specific metrics (e.g., price changes, outcome-specific volume)
You cannot use both at the same time. Choose based on whether you’re ranking markets by overall activity or by specific outcome performance.
What happens if I specify marketIds?
When you provide marketIds, the ranking parameters are ignored and you’ll get bars for exactly those markets. This is useful when you want specific markets but still benefit from the batch query performance. The limit parameter is also ignored in this case.
Why am I getting fewer than 'limit' markets?
Possible reasons:
The event has fewer markets than your limit
Some markets had no activity in the specified time range (when removeEmptyBars: true)
Some markets don’t have the ranking attribute you specified (e.g., older markets may not have trending scores)
Check the total number of markets in the event using the predictionEvent query.
How do trending scores work for ranking?
Trending scores (e.g., trendingScore1h, trendingScore24h) are composite metrics that consider:
Recent volume changes
Price movement velocity
Unique trader growth
Social engagement (where available)
Higher scores indicate markets experiencing rapid increases in activity. Use these to surface “hot” markets.
What's the difference between rankDirection ASC and DESC?
DESC (descending): Highest values first - use for “top” markets (e.g., highest volume, most liquid)
ASC (ascending): Lowest values first - use for “bottom” markets or when looking for lowest spreads, earliest closing times, etc.
Most use cases want DESC to get the top/best markets.
Can I rank by outcome price but get both outcomes' data?
Yes! The ranking only determines which markets are returned. You can rank by outcome0.priceChange1h but still query full data for both outcome0 and outcome1 in your bars selection. The ranking criterion doesn’t limit what data you receive.
How should I handle the max limit of 10 markets?
The 10-market limit balances comprehensive data with performance. If you need more markets:
Make multiple queries with different ranking criteria
Use pagination by explicitly specifying different marketIds in subsequent queries
Consider whether you truly need more than 10 markets for your UI/analysis
Most dashboards and visualizations work well with 5-10 top markets.