List Markets
Get a list of markets with support for filtering, sorting and pagination
Comprehensive Market Discovery & Filtering
This endpoint is your gateway to exploring prediction markets across multiple platforms with unprecedented flexibility and control. Whether you’re building market dashboards, conducting research, or developing trading applications, this endpoint provides powerful filtering, sorting, and pagination capabilities to help you find exactly the markets you need.
Key Features & Capabilities
🎯 Multi-Platform Access
Access markets from all major prediction market platforms:
- Kalshi - Regulated US prediction markets
- Polymarket - Crypto-based prediction markets
- Manifold Markets - Community-driven forecasting
- Metaculus - Research-focused forecasting platform
🔍 Advanced Filtering
Filter markets by virtually any attribute:
- Platform & Type: Specific platforms, market types
- Content: Keywords in questions, descriptions, rules
- Status & Dates: Active, resolved, creation dates, end dates
- Numerical Values: Probability ranges, volume thresholds, liquidity levels
- Categories: Politics, economics, technology, sports, entertainment
- Geography: Region-specific markets
📊 Flexible Sorting
Sort results by any field in ascending or descending order:
- Recency:
created_at
,updated_at
- Activity:
volume
,trades_count
- Market Metrics:
probability
,liquidity
,open_interest
- Engagement:
comments_count
📄 Smart Pagination
Efficient pagination with metadata for building interfaces:
- Total count information
- Pagination state tracking
- “Has more” indicators
- Configurable page sizes
Query Parameters Reference
Core Parameters
Maximum number of markets to return per request.
- Range: 1-1000 (unauthenticated max: 100)
- Default: 50
- Tip: Use 10-20 for UI components, 100-500 for data analysis
Number of markets to skip (for pagination).
- Usage:
offset = page * limit
- Example: Page 3 with 50 per page =
offset=100
Sort order for results.
Format: field:direction
Popular Sort Options:
created_at:desc
- Newest first (default)updated_at:desc
- Recently updatedvolume:desc
- Highest volumeprobability:desc
- Highest probabilityend_date:asc
- Ending soonestliquidity:desc
- Most liquid
Platform & Type Filters
Filter by specific platforms.
Supported Values:
kalshi
- Kalshi marketspolymarket
- Polymarketmanifold
- Manifold Marketsmetaculus
- Metaculus
Format: "kalshi,polymarket"
for multiple platforms
Filter by market type.
Common Types:
binary
- Yes/No marketsmultiple_choice
- Multiple outcome marketsnumerical
- Numerical prediction marketsconditional
- Conditional prediction markets
Status & Date Filters
Filter by market status.
Status Values:
active
- Currently active for tradingresolved
- Market has been resolvedclosed
- Closed but not yet resolvedsuspended
- Temporarily suspendedcancelled
- Cancelled market
Include markets created after this date.
Format: ISO 8601 date string (2024-01-01T00:00:00Z
)
Example: created_after=2024-01-01
for markets from 2024
Include markets created before this date.
Format: ISO 8601 date string Use Case: Historical analysis, specific time periods
Include markets ending after this date.
Format: ISO 8601 date string Use Case: Find markets ending in a specific timeframe
Include markets ending before this date.
Format: ISO 8601 date string Use Case: Find markets ending soon or in the past
Content Search Filters
Search within market questions, descriptions, and rules.
Search Capabilities:
- Full-text search across all market content
- Supports partial matches and stemming
- Case-insensitive search
Examples:
q=presidential election
- Find election-related marketsq=climate change
- Environmental marketsq=AI artificial intelligence
- Technology markets
Search specifically within market questions.
Use Case: More targeted search than general q
parameter
Example: question_contains=Will Trump
for specific question patterns
Numerical Filters
Minimum probability (0.0 to 1.0).
Example: probability_min=0.7
for high-probability markets
Use Case: Find markets with strong conviction
Maximum probability (0.0 to 1.0).
Example: probability_max=0.3
for low-probability markets
Use Case: Find contrarian opportunities
Minimum trading volume.
Use Case: Filter for liquid, actively traded markets
Example: volume_min=10000
for markets with significant activity
Minimum liquidity/open interest.
Use Case: Ensure markets have sufficient depth for trading
Example: liquidity_min=5000
for well-funded markets
Category & Tag Filters
Filter by market category.
Common Categories:
politics
- Political events and electionseconomics
- Economic indicators and marketstechnology
- Tech developments and innovationsports
- Sports outcomes and championshipsentertainment
- Media, celebrity, and cultural eventsscience
- Scientific developments and discoveriesweather
- Weather and climate predictions
Filter by market tags.
Format: Comma-separated list of tags
Example: tags=election,politics,2024
for 2024 election markets
Response Format
Successful Response Structure
Field Descriptions
Field | Type | Description |
---|---|---|
market_id | string | Unique identifier across all platforms |
platform | string | Source platform (kalshi, polymarket, etc.) |
platform_id | string | Platform-specific identifier |
adj_ticker | string | Adjacent News standardized ticker |
question | string | Market question or title |
description | string | Detailed market description |
rules | string | Resolution rules and conditions |
status | string | Current market status |
market_type | string | Type of market (binary, multiple_choice, etc.) |
category | string | Market category |
probability | number | Current probability (0.0-1.0) |
volume | number | Total trading volume |
liquidity | number | Current liquidity/open interest |
trades_count | integer | Number of trades |
comments_count | integer | Number of comments |
created_at | string | Market creation timestamp |
updated_at | string | Last update timestamp |
end_date | string | Market end/close date |
resolution_date | string | Actual resolution date (if resolved) |
link | string | Direct link to market on platform |
tags | array | Associated tags |
event | string | Parent event (if applicable) |
Comprehensive Examples
Basic Market Discovery
Platform-Specific Queries
Time-Based Filtering
Advanced Filtering Combinations
Content-Based Search
Pagination Strategies
Standard Pagination
Cursor-Based Pagination
For real-time applications, use timestamp-based pagination:
Use Cases & Applications
1. Market Discovery Dashboards
2. Research & Analysis
3. Trading Applications
4. Content Curation
Performance & Optimization
Response Time Guidelines
Typical Performance:
- Simple queries: 50-200ms
- Complex filtering: 200-500ms
- Large datasets: 500ms-2s
- Historical data: 1-3s (authenticated)
Optimization Strategies
-
Use Appropriate Limits:
-
Leverage Sorting:
-
Strategic Filtering:
Caching Recommendations
Error Handling & Troubleshooting
Common Issues
1. No Results Found
Solutions:
- Remove restrictive filters one by one
- Check for typos in filter values
- Verify date formats are correct
- Try broader search terms
2. Rate Limiting
Solutions:
- Implement exponential backoff
- Cache results to reduce API calls
- Consider upgrading to authenticated access
- Batch requests more efficiently
3. Invalid Parameters
Solutions:
- Check parameter value ranges
- Verify date format (ISO 8601)
- Ensure numeric parameters are numbers
- Review API documentation for valid options
Authentication Requirements
Remember that enhanced access requires authentication:
Authentication Provides:
- Access to historical data (>1 day old)
- Higher rate limits (1000/min vs 300/min)
- Larger result sets (>100 items)
- Priority support
Best Practices
1. Efficient Querying
- Start with broad queries, then narrow down
- Use specific platforms when possible
- Leverage sorting to reduce client-side processing
- Cache frequently accessed data
2. Pagination Strategy
- Use reasonable page sizes (20-100 items)
- Implement “load more” for user interfaces
- Consider cursor-based pagination for real-time data
- Track pagination state in your application
3. Error Handling
- Always handle rate limiting gracefully
- Implement retry logic with exponential backoff
- Provide fallback options for users
- Log errors for monitoring and debugging
4. User Experience
- Show loading states for slower queries
- Implement search suggestions based on popular queries
- Provide filter explanations in your UI
- Cache and persist user preferences
Need Assistance? Contact our team at lucas@adj.news with:
- Specific query patterns that aren’t performing well
- Feature requests for additional filtering options
- Integration questions or optimization guidance
Authorizations
Enter your API key as the bearer token
Query Parameters
Number of results to return, default is 5 results
Number of results to skip
Filter by platform (e.g., kalshi, polymarket, etc.)
Filter by status (e.g., active, resolved, etc.)
Filter by category
Filter by market type (e.g., binary, scalar, etc.)
Search in question, description, and rules
Filter by tag
Filter markets created after this date
Filter markets created before this date
Minimum probability
Maximum probability
Field to sort by
created_at
, updated_at
, end_date
, probability
, volume
, liquidity
Sort direction
asc
, desc
Include closed markets
Include resolved markets
Response
List of markets
The response is of type object
.