Guides / API Guide
The ProbSights API exposes Kalshi and Polymarket through one schema: a search layer for finding markets, and a historical layer for pulling the orderbook and trade record of any market you found. This walks the full path from a fresh account to real data.
Create an account, then generate a key from API keys. Keys are shown once at creation — store it immediately. Authenticate with a bearer header:
Authorization: Bearer YOUR_API_KEY
Search needs either q or series_id — omitting both returns
400 with the message Either q or series_id must be provided.
GET /v1/search/markets?q=bitcoin&status=active&sort_by=volume&limit=10
Each result carries market_id, exchange, question,
volume, liquidity, last_yes_price, and
event_id. The market_id is what the historical endpoints take.
Other useful entry points: /v1/search/events (grouped markets),
/v1/search/categories (the browse tree behind /markets),
and /v1/search/markets?coin=BTC for the crypto Up/Down series.
GET /v1/historical/polymarket/orderbook
?market_id=<market_id>
&granularity=1m
&start_time=1737331200
&end_time=1737417600
&limit=1000
start_time and end_time are Unix seconds, not
ISO strings. granularity accepts 1m or 5m. Swap
orderbook for trades, or polymarket for
kalshi, to reach the other three historical feeds.
Responses are { snapshots, pagination } or { trades, pagination }.
While pagination.has_more is true, resend the request with
pagination_key set to pagination.pagination_key. Never page by
advancing timestamps — records can share a second, so you will drop or duplicate rows.
Failures return { "message": "...", "status": 400 }. Read
message rather than inferring from the status code; it names the actual problem.
Data from Kalshi and Polymarket. Search live API docs Pricing