Prediction-market data. Ready for your next idea.
Search contracts across Kalshi, Polymarket and Limitless. Bring market probabilities and observation history into your agents, dashboards and research.
Development access is open. Create, view once, rotate and revoke keys in the console at app.getriddle.ai/developers. Ceilings are provisional and no billing entitlement is attached.
v1 request
curl -G "$RIDDLE_API_BASE/v1/markets" \
--data-urlencode "q=fed" \
--data-urlencode "platform=kalshi,polymarket" \
--data-urlencode "sort=market_id" \
-H "x-api-key: $RIDDLE_API_KEY"https://nybvquiiaarqmgpraxaq.supabase.co/functions/v1/public-api
Base URL and request shape from the v1 contract.
Capabilities
What the API returns.
The surface is deliberately narrow: find the markets that matter, describe them in one shape, and keep every number attached to the time it was observed.
List and search markets
Filter markets across covered platforms by title substring, platform and category, ordered by market id, with cursor pagination and up to 200 records a page.
One market shape
Title, platform, platform-native id, event and market tickers, category, volumes and resolution date in a single record, instead of an adapter for every platform.
Observations with timestamps
Indicative probabilities as fractions between 0 and 1, null when unavailable, always returned with the time Riddle observed them. History points also carry the price semantics version in force.
Probabilities are indicative observations with a timestamp, not executable quotes. Data semantics sets out how to read them and what the API does not carry.
Use cases
What it is built for.
Three patterns shaped the v1 surface.
Agents and tools
Give an agent a market it can cite
An assistant answering a forward-looking question needs the market, its title and its platform id, not a scraped number. A search returns records the agent can name and link back to the platform.
Quant and research
Stop writing an adapter per platform
Pull a normalised market record and its observation history into an existing notebook or pipeline, keeping the platform id so reconciliation with a feed you already hold stays possible.
Newsrooms
Check what a market actually says
Before quoting a probability, see the exact market, the platform it sits on and when the value was observed, so a headline number carries its context with it.
Architecture
From three platforms to one record.
Reconciliation happens once, on our side, so your code reads one vocabulary instead of three.
01 / Platforms
Kalshi, Polymarket and Limitless, read from their public interfaces.
02 / Normalise
Identifiers, categories and price conventions mapped into one vocabulary.
03 / Observe
Probabilities recorded with an observation time. History points also carry a price semantics version.
04 / Serve
One JSON envelope with a request id. List returns a data array with a page cursor, detail returns a single object, and history returns a data array with a meta block and no cursor.
Kalshi, Polymarket and Limitless are named for identification only. Riddle is not affiliated with, endorsed by or sponsored by any of them.
Documentation
Start where you need to.
Getting started
From an API key to a first parsed response.
Authentication
The x-api-key header, storage and rotation.
Markets reference
List and search, market detail and observation history.
Service endpoints
Health, capabilities and the OpenAPI document.
Data semantics
Probabilities, identifiers, timestamps and feed presence.
Errors
One error shape, a request id, a clear retry rule.
Rate limits
Development ceilings, cursor pagination and backoff.
Keys are issued in the developer console at app.getriddle.ai/developers.