Prediction Market data is currently in beta. It is actively being worked on and improved, but may be unreliable. Polymarket data is live, and Kalshi data will be added soon.At least for the time being, this endpoint requires a Growth or Enterprise plan. Learn more.
Returns
Query example
Get all categories with subcategoriesExample response (truncated)
Usage Guidelines
- Categories form a 3-level hierarchy: top-level categories contain subcategories, which may contain sub-subcategories
- Each category has a
name(display name) andslug(URL-friendly identifier) - Use the
slugvalues to filter markets infilterPredictionMarkets(e.g.,filters: { categories: ["sports", "nba"] }) - Category matching in filters is case-insensitive
- Categories are dynamically generated based on active markets across all protocols
Understanding the Category Hierarchy
The category structure has up to 3 levels of nesting:- Top-level categories (e.g., “Politics”, “Sports”, “Crypto”) - Broad topic areas
- Subcategories (e.g., “Basketball”, “White House”) - More specific topics within the top-level category
- Sub-subcategories (e.g., “NBA”, “Donald Trump”) - Highly specific topics
slug field when filtering markets by category. The name field is the human-readable display name.
Common Categories
Top-level categories include:- Politics - Elections, White House, Congress, Approval Ratings
- Sports - Basketball (NBA), Football (NFL), Soccer, Baseball, MMA, Tennis
- Crypto - Bitcoin, Ethereum, DeFi, NFTs
- Finance - Stocks, Earnings, Markets
- Economy - Fed decisions, Inflation, GDP
- Tech - AI, Companies, Products
- Culture - Entertainment, Media, Awards
- World - Geopolitics, International events
- Climate & Science - Weather, Research, Environment
Troubleshooting Tips
How do I use categories to filter markets?
How do I use categories to filter markets?
Use the
categories array in filterPredictionMarkets. You can specify one or more categories at any level. For example, categories: ["sports", "nba"] returns markets tagged with either Sports or NBA. Category matching is case-insensitive and hierarchical.Why do some categories appear empty?
Why do some categories appear empty?
Categories are sometimes included in the hierarchy for organizational purposes even if they currently have no active markets. Additionally, all markets in that subcategory may have closed or been resolved. To check if a category has active markets, use
filterPredictionMarkets with that category slug and check the count.Can I search for markets by category name?
Can I search for markets by category name?
Yes, use the
phrase parameter in filterPredictionMarkets along with the categories filter. The phrase searches market questions and event labels, while categories filter by assigned tags. Combining both gives precise results.How often are categories updated?
How often are categories updated?
Categories are updated dynamically as new markets are created and tagged. When markets close or resolve, the market counts decrease accordingly. The category structure reflects the current state of all active prediction markets.
What's the difference between category and eventLabel?
What's the difference between category and eventLabel?
Categories are broad topic tags (e.g., “Politics”, “NBA”) used for filtering and organization. Event labels are specific market groupings (e.g., “Fed decision in March?”) that represent a single real-world event. An event can have multiple category tags.
Can markets have multiple categories?
Can markets have multiple categories?
Yes, markets can be tagged with multiple categories at different hierarchy levels. For example, a market about “Lakers vs Celtics” might be tagged with “Sports”, “Basketball”, and “NBA”. Use
filterPredictionMarkets with multiple category filters to find markets at the intersection.How do I find the most popular categories?
How do I find the most popular categories?
Use
filterPredictionMarkets to query markets by category and check the count field in the response. You can also rank by trendingScore24h or volumeUsd24h to find the most active markets within each category.