预测市场 API
Odds, orderbooks and trader analytics from every major prediction venue, behind one endpoint. Pay per call in USDC — no venue accounts, no subscriptions.
Prediction-market data across Polymarket, Kalshi, Limitless, Opinion, Predict.Fun and a sports feed — markets, orderbooks, candlesticks, trades, wallet analytics and smart-money positioning.
覆盖范围
Six venues — Polymarket, Kalshi, Limitless, Opinion, Predict.Fun and the Predexon sports feed — plus Binance spot data and the UMA resolution oracle.
Live market state on every call: no cached tier and no snapshot delay. Historical series (candlesticks, orderbooks, volume) are addressable by Unix-second ranges.
50 个端点
Polymarket markets
Markets, events, prices and historical series, with both offset and keyset pagination.
| 付款方式 | 端点 | 说明信息 |
|---|---|---|
GET | /polymarket/markets | Query markets with filtering, sorting and pagination |
GET | /polymarket/markets/keyset | Cursor-based keyset pagination over markets |
GET | /polymarket/events | 列出事件(支持筛选和排序) |
GET | /polymarket/events/keyset | Cursor-based keyset pagination over events |
GET | /polymarket/crypto-updown | Crypto up/down markets |
GET | /polymarket/market-price/{token_id} | Current or historical price for one outcome token |
GET | /polymarket/candlesticks/{condition_id} | OHLCV candlesticks for a market |
GET | /polymarket/candlesticks/token/{token_id} | OHLCV candlesticks for a single outcome token |
GET | /polymarket/volume-chart/{condition_id} | Volume over time |
GET | /polymarket/orderbooks | 历史订单簿快照 |
GET | /polymarket/trades | Trades, filtered by condition_id, market_slug, token_id or wallet |
GET | /polymarket/activity | Merges, splits and redemptions for one wallet |
GET | /polymarket/markets/{token_id}/volume | Cumulative volume history |
GET | /polymarket/markets/{condition_id}/open_interest | Open interest history |
GET | /polymarket/positions | Positions across users, with filtering |
GET | /polymarket/markets/smart-activity | Markets where high-performing wallets are active |
Trader analytics
Leaderboards, wallet profiles, P&L series, portfolio similarity and smart-money positioning.
| 付款方式 | 端点 | 说明信息 |
|---|---|---|
GET | /polymarket/leaderboard | Global leaderboard of profitable wallets |
GET | /polymarket/leaderboard/market/{condition_id} | Leaderboard scoped to one market |
GET | /polymarket/cohorts/stats | Performance compared across trader cohorts |
GET | /polymarket/market/{condition_id}/top-holders | Largest holders, ranked by position size |
GET | /polymarket/market/{condition_id}/smart-money | Smart-money positioning in one market |
GET | /polymarket/wallet/{wallet} | Full wallet profile |
GET | /polymarket/wallet/{wallet}/markets | Per-market performance for one wallet |
GET | /polymarket/wallet/{wallet}/similar | Wallets holding similar portfolios |
GET | /polymarket/wallet/pnl/{wallet} | P&L time series |
GET | /polymarket/wallet/positions/{wallet} | Open and closed positions |
GET | /polymarket/wallet/volume-chart/{wallet} | Traded volume over time |
GET | /polymarket/wallet/identity/{wallet} | Identity and profile metadata |
GET | /polymarket/wallet/{address}/cluster | Connected wallets, discovered via on-chain transfers |
GET | /polymarket/wallets/profiles | Batch wallet profiles |
GET | /polymarket/wallets/filter | Filter wallets by the markets they traded |
POST | /polymarket/wallet/identities | Bulk identity lookup, up to 200 addresses |
Sports
Sports markets grouped by game, with outcome mapping across venues.
| 付款方式 | 端点 | 说明信息 |
|---|---|---|
GET | /sports/categories | Available sports categories |
GET | /sports/markets | Markets grouped by game |
GET | /sports/markets/{game_id} | One game with its outcomes |
GET | /sports/outcomes/{predexon_id} | Equivalent outcomes across venues |
Cross-venue search
One query across every connected venue.
| 付款方式 | 端点 | 说明信息 |
|---|---|---|
GET | /markets/search | Search markets across all venues in one call |
Kalshi
Markets, trades and orderbook snapshots.
| 付款方式 | 端点 | 说明信息 |
|---|---|---|
GET | /kalshi/markets | Markets with filtering and pagination |
GET | /kalshi/trades | Historical trades |
GET | /kalshi/orderbooks | 历史订单簿快照 |
Limitless · Opinion · Predict.Fun
Market listings and orderbook history for three further venues.
| 付款方式 | 端点 | 说明信息 |
|---|---|---|
GET | /limitless/markets | Limitless markets |
GET | /limitless/orderbooks | Limitless orderbook snapshots |
GET | /opinion/markets | Opinion markets |
GET | /opinion/orderbooks | Opinion orderbook snapshots |
GET | /predictfun/markets | Predict.Fun markets |
GET | /predictfun/orderbooks | Predict.Fun orderbook snapshots |
Binance spot
Candlesticks and book-ticker data, for pricing the underlying.
| 付款方式 | 端点 | 说明信息 |
|---|---|---|
GET | /binance/candles/{symbol} | OHLCV candles (1m spans up to 7 days, 1h spans longer) |
GET | /binance/ticks/{symbol} | Book-ticker data at microsecond granularity |
UMA oracle
Resolution questions and their status timeline.
| 付款方式 | 端点 | 说明信息 |
|---|---|---|
GET | /polymarket/uma/markets | UMA questions, filtered by state |
GET | /polymarket/uma/market/{condition_id} | Oracle status and resolution timeline |
定价
Billed per call in USDC, settled on-chain via x402. Every endpoint quotes its own price: send the request without payment and read the 402 for the exact figure before you commit.
快速开始
cURL
# Trending markets by volume
curl "https://api.jarvisclaw.ai/v1/marketplace/prediction/polymarket/markets?sort=volume&limit=20" \
-H "Authorization: Bearer sk-your-api-key"
# Search every venue at once
curl "https://api.jarvisclaw.ai/v1/marketplace/prediction/markets/search?q=bitcoin" \
-H "Authorization: Bearer sk-your-api-key"
# Wallet P&L (granularity: day | week | month)
curl "https://api.jarvisclaw.ai/v1/marketplace/prediction/polymarket/wallet/pnl/0x56687bf447db6ffa42ffe2204a05edaa20f55839?granularity=day" \
-H "Authorization: Bearer sk-your-api-key"
# Read the price before paying: omit credentials and inspect the 402
curl -i "https://api.jarvisclaw.ai/v1/marketplace/prediction/polymarket/markets"Python
import requests
BASE = "https://api.jarvisclaw.ai/v1/marketplace/prediction"
headers = {"Authorization": "Bearer sk-your-api-key"}
# Trending markets
markets = requests.get(
f"{BASE}/polymarket/markets",
headers=headers,
params={"sort": "volume", "limit": 20},
).json()
# Follow the top traders: leaderboard, then their open positions
leaders = requests.get(
f"{BASE}/polymarket/leaderboard",
headers=headers,
params={"limit": 20, "sort_by": "total_pnl"},
).json()
for entry in leaders["entries"][:5]:
wallet = entry["user"]
positions = requests.get(
f"{BASE}/polymarket/wallet/positions/{wallet}",
headers=headers,
).json()
print(wallet, len(positions.get("positions", [])), "open")
# Historical ranges take Unix SECONDS, not ISO strings
import time
end = int(time.time())
books = requests.get(
f"{BASE}/kalshi/orderbooks",
headers=headers,
params={"ticker": "KXBTC", "start_time": end - 86400 * 5, "end_time": end},
).json()JavaScript
const BASE = 'https://api.jarvisclaw.ai/v1/marketplace/prediction'
const headers = { Authorization: 'Bearer sk-your-api-key' }
// Trending markets
const markets = await fetch(
`${BASE}/polymarket/markets?sort=volume&limit=20`,
{ headers },
).then((r) => r.json())
// Cross-venue search
const hits = await fetch(
`${BASE}/markets/search?q=bitcoin`,
{ headers },
).then((r) => r.json())
// Smart money in one market (needs at least one threshold)
const cid = '0xc6485bb7...'
const smart = await fetch(
`${BASE}/polymarket/market/${cid}/smart-money?min_total_pnl=100000`,
{ headers },
).then((r) => r.json())使用场景
- Cross-venue price comparison — Search one question across six venues and compare the quoted odds side by side.
- Smart-money following — Rank wallets by realised P&L, then watch what they open — leaderboard plus wallet positions.
- Trading agents — Candlesticks, orderbooks and trades give an agent the series it needs to size and time a position.
- Sports models — Markets grouped by game, with outcomes mapped across venues so one model covers all of them.
- Resolution monitoring — Track UMA oracle state to know when a market settles and on what basis.
- Research dashboards — Open interest, cumulative volume and cohort statistics, addressable by time range.
FAQ
Do I need an account at each prediction venue?
No. One JarvisClaw key reaches every venue on this page. We hold the upstream relationships; you pay per call in USDC.
Is this read-only, or can I place bets?
Read-only. These endpoints return market data, orderbooks and analytics. Placing a position happens on the venue itself.
How do I know what a call will cost before I make it?
Send it without credentials. The gateway answers 402 with the exact amount in the payment-required header, and charges nothing for the quote.
What time format do the historical endpoints take?
Unix epoch seconds as integers, e.g. start_time=1748736000. ISO-8601 strings are rejected.
Why does one of my requests come back 404?
The gateway serves an allow-list. A path that is not on it answers 404 "endpoint not available" rather than being quoted and charged — that refusal is deliberate, so a typo in a URL never costs you money.
Can an autonomous agent call this without an API key?
Yes. An agent holding a funded wallet signs x402 directly on Base or Solana; no key and no account are involved.
文档
- Prediction Markets reference — Every endpoint, with parameters and response shapes
- Marketplace endpoints overview — The service directory and base paths
- 快速开始 — First call in under five minutes
- Agent payments (x402) — Paying from an agent wallet instead of an API key