Search
Search for events and markets by text query. Returns matched events with their market groups, cross-platform prices, and group IDs for use with other endpoints. Supports filtering by event type and status.
/v2/searchQuery Parameters
Search query (case-insensitive substring match on event names and group titles). Must be at least 3 characters.
Filter by event type (e.g. election, Politics, Science and Technology).
Filter by status: active (default), completed, or all.
Only events on or after this date (ISO 8601, e.g. 2026-06-01).
Only events on or before this date (ISO 8601, e.g. 2026-12-31).
Max results to return (1-100, default 20).
Pagination cursor from a previous response.
Response Schema
The search query that was used.
Number of events returned.
Matching events with groups and prices.
Name of the event.
Event category (election, Politics, etc.).
Event date (ISO 8601).
active or completed.
Number of matched groups in this event.
Matched market groups.
Group ID (use with /v2/unified-orderbook).
Group title (candidate / proposition name).
Number of platforms with this market.
Markets in this group.
Platform name (kalshi, polymarket, etc.).
Platform-native market ID.
Direct link to the market on the platform.
Most recent price.
Current YES bid price.
Current YES ask price.
Cursor for next page of results (null if no more).
Authentication
API Key
To secure your requests, we strongly recommend passing your API key via the X-API-Key header. This prevents sensitive keys from being exposed in access logs or browser history.
X-API-Key: pmx_test_5e8f...Rate Limits
API rate limits are enforced based on the tier associated with your API key. Limits are tracked on two dimensions: requests per second and requests per month. Each completed request counts toward the global monthly quota. Separate endpoint-group monthly limits (matched markets, arbitrage, EV) only advance when the response body has success: true.
Usage is returned on responses via headers such as:
X-RateLimit-Limit-Second: 10X-RateLimit-Remaining-Second: 9X-RateLimit-Limit-Month: 1000X-RateLimit-Remaining-Month: 842Example (endpoint-group, when applicable)X-RateLimit-Limit-Arb-Month: 500X-RateLimit-Remaining-Arb-Month: 412If you exceed a rate limit, the API returns a 429 status with a Retry-After header indicating when you can resume.
Request
Live API Key
Parameters
Response
—Click EXECUTE to send a request →