[ search · endpoint ]Search API · Prediction Markets

Prediction Markets Search API

Query Polymarket and Kalshi contracts on politics, economics, sports, and current events. Pre-shaped JSON for crowd-forecast retrieval and probability grounding in LLM workflows.

50 credits / call30 req / minPOST /api/search/prediction-markets
[ 01 · live ]

Try Prediction Markets Search Live

Enter your API key and run a real query against the live endpoint.

auth · x-api-key

Don't have an API key?

Sign in to your account to create and manage your API keys.

5 sample queries — click to load
[ 02 · integrate ]

Integration guide

Copy a snippet, replace your API key, run. Works in any HTTP client — examples below in cURL, JavaScript, and Python.

spec
POST/api/search/prediction-markets
base
https://www.apipick.com

Semantic search over Polymarket and Kalshi prediction-market contracts. Returns market titles, summaries, and source URLs.

parameters
querystringrequired

Natural-language search query

max_num_resultsintegeroptional

1–5, default 5

relevance_thresholdnumberoptional

0.0–1.0 quality filter

country_codestringoptional

ISO country code (e.g. US, GB)

start_datestringoptional

ISO date YYYY-MM-DD

end_datestringoptional

ISO date YYYY-MM-DD

curl -X POST "https://www.apipick.com/api/search/prediction-markets" \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
  "query": "2026 US presidential election",
  "max_num_results": 5,
  "country_code": "US",
  "start_date": "2026-01-01"
}'
● 200 · response
{
  "query": "2026 US presidential election",
  "results": [
    {
      "title": "Example result",
      "url": "https://example.com/article",
      "snippet": "Short excerpt of the page content…",
      "source_type": "web",
      "published_at": "2026-04-15",
      "score": 0.92
    }
  ],
  "result_count": 1,
  "credits_used": 50,
  "remaining_credits": 99
}
[ 03 · limits ]

Rate limits

Throttling is per API key, sliding 60-second window. Hit the limit and you get a clean 429 with a Retry-After header.

request rate

30req/min

Per API key, per endpoint. Sliding 60-second window.

concurrency

3concurrent

Max simultaneous in-flight requests per API key.

response headers
X-RateLimit-LimitMaximum requests allowed per minute
X-RateLimit-RemainingRequests remaining in the current window
X-RateLimit-ResetSeconds until the current window resets
Retry-AfterSeconds to wait before retrying (only on 429)
● 429 · too many requests
HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 30
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 12

{
  "error": "rate_limit_exceeded",
  "message": "Rate limit exceeded: 30 requests/minute per API key. Retry after 12s.",
  "retry_after": 12
}
[ faq ]

Frequently Asked Questions

01

Which markets are covered?

Polymarket (decentralized, USDC-settled) and Kalshi (CFTC-regulated). Both live and resolved markets are searchable.

02

Are live odds returned?

Results include market metadata and source URLs. For real-time prices, follow the source URL or the market's native API. The endpoint is optimized for retrieval and discovery, not high-frequency quotes.

03

Why use this instead of going direct?

One endpoint, one auth flow, semantic search across both platforms, and unified credit billing. Useful when an agent needs to ground a probabilistic claim without integrating two separate APIs.

04

Date filtering?

Yes. start_date / end_date filter markets by listing or resolution date.

05

Tool schema?

GET /api/search/prediction-markets/tool-schema returns OpenAI and Claude tool-use definitions.