Search markets
curl --request GET \
--url https://api.probsights.com/v1/search/markets \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.probsights.com/v1/search/markets"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.probsights.com/v1/search/markets', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"market_id": "<string>",
"exchange": "<string>",
"series_id": "<string>",
"title": "<string>",
"subtitle": "<string>",
"question": "<string>",
"status": "<string>",
"volume": 123,
"liquidity": 123,
"last_yes_price": "<string>",
"last_no_price": "<string>",
"event_id": "<string>",
"event_title": "<string>",
"slug": "<string>",
"url": "<string>",
"discovered_at": "<string>",
"settled_at": "<string>",
"coin": "<string>",
"market_type": "<string>",
"start_time": "<string>",
"end_time": "<string>",
"is_resolved": true
}Search
Search markets
Find markets by text query, series, or crypto interval browse.
GET
/
v1
/
search
/
markets
Search markets
curl --request GET \
--url https://api.probsights.com/v1/search/markets \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.probsights.com/v1/search/markets"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.probsights.com/v1/search/markets', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"market_id": "<string>",
"exchange": "<string>",
"series_id": "<string>",
"title": "<string>",
"subtitle": "<string>",
"question": "<string>",
"status": "<string>",
"volume": 123,
"liquidity": 123,
"last_yes_price": "<string>",
"last_no_price": "<string>",
"event_id": "<string>",
"event_title": "<string>",
"slug": "<string>",
"url": "<string>",
"discovered_at": "<string>",
"settled_at": "<string>",
"coin": "<string>",
"market_type": "<string>",
"start_time": "<string>",
"end_time": "<string>",
"is_resolved": true
}Find markets by text query, by
series_id, or by crypto asset (coin). Use series_id
from Search series to scope results to one product line,
or use coin + market_type to browse Kalshi and Polymarket interval markets without
a text query.
Request
https://api.probsights.com/v1/search/markets
Query parameters
Substring on question, title, subtitle, description, market id, slug, or exact
interval_code. Required unless series_id or coin is set.Crypto asset filter:
BTC, ETH, or SOL. Works on both Kalshi and Polymarket.
Required for crypto browse mode unless q or series_id is set.relevance, newest, volume, liquidity, or start_time. Defaults to
relevance when q is set, newest when only series_id is set, and
start_time when only coin is set.Response
Returns a JSON array of market objects.Examples
Active markets in a series
curl -H "X-API-Key: YOUR_API_KEY" \
"https://api.probsights.com/v1/search/markets?series_id=KXBTC15M&status=active&limit=10"
import requests
response = requests.get(
"https://api.probsights.com/v1/search/markets",
headers={"X-API-Key": "YOUR_API_KEY"},
params={"series_id": "KXBTC15M", "status": "active", "limit": 10},
)
markets = response.json()
Crypto interval browse
curl -H "X-API-Key: YOUR_API_KEY" \
"https://api.probsights.com/v1/search/markets?coin=BTC&market_type=15m&exchange=kalshi&status=closed&limit=50"
import requests
response = requests.get(
"https://api.probsights.com/v1/search/markets",
headers={"X-API-Key": "YOUR_API_KEY"},
params={
"coin": "SOL",
"market_type": "5m",
"exchange": "polymarket",
"status": "active",
"limit": 20,
},
)
markets = response.json()
Settled window for backtests
curl -H "X-API-Key: YOUR_API_KEY" \
"https://api.probsights.com/v1/search/markets?series_id=KXBTC15M&status=closed&settled_after=2026-04-25T00:00:00Z&limit=100"
import requests
response = requests.get(
"https://api.probsights.com/v1/search/markets",
headers={"X-API-Key": "YOUR_API_KEY"},
params={
"series_id": "KXBTC15M",
"status": "closed",
"settled_after": "2026-04-25T00:00:00Z",
"limit": 100,
},
)
markets = response.json()