polymarketanalytics.com APIpolymarketanalytics.com ↗
Access Polymarket trader PnL, positions, trade history, category performance, and transfers for any indexed wallet via the Polymarket Analytics API.
curl -X GET 'https://api.parse.bot/scraper/92417519-ac52-43be-9785-d464fe124ae7/get_trader_dashboard?trader_id=0xabc123def456abc123def456abc123def456abc1' \ -H 'X-API-Key: $PARSE_API_KEY'
Get trader overview dashboard with rank, PnL stats, win rate, and position counts. Returns an array containing the trader's overall performance summary. The backend indexes a curated set of traders; untracked wallets return an empty array.
| Param | Type | Description |
|---|---|---|
| trader_idrequired | string | Wallet address of a tracked trader (e.g., 0xabc123...) |
{
"type": "object",
"fields": {
"data": "array of trader dashboard objects with rank, trader, trader_name, total_positions, active_positions, event_ct, win_count, win_rate, win_amount, loss_amount, total_current_value, overall_gain, tags, insert_time"
},
"sample": {
"data": [
{
"tag": "Overall",
"rank": 178,
"tags": "Overall PnL > $100k; 1k+ Positions; Crypto PnL > $100k",
"trader": "0x29bc82f761749e67fa00d62896bc6855097b683c",
"event_ct": 19865,
"win_rate": 0.524,
"win_count": 10408,
"win_amount": 1461845.75,
"insert_time": "2026-05-07 16:40:15",
"loss_amount": -1107039.07,
"trader_name": "John Doe",
"overall_gain": 354806.68,
"total_positions": 36997,
"active_positions": 0,
"total_current_value": 0
}
],
"status": "success"
}
}About the polymarketanalytics.com API
The Polymarket Analytics API exposes 6 endpoints covering trader performance data from polymarketanalytics.com, including positions, trade history, daily PnL timeseries, and deposit/withdrawal records. The get_trader_dashboard endpoint alone returns rank, win rate, win count, total positions, and active positions in a single call. All endpoints accept a trader_id wallet address and return structured JSON, making it straightforward to build trader-analysis tools or monitor prediction market portfolios.
Trader Overview and Category Breakdown
The get_trader_dashboard endpoint returns a summary array containing a trader's overall rank, win_rate, win_count, total_positions, active_positions, and event_ct. This gives a concise snapshot of how a wallet has performed across all Polymarket events. Complementing this, get_trader_categories breaks performance down by market tag — each record includes tag, total_positions, win_count, win_rate, and event_ct, so you can compare how a trader performs in, say, politics markets versus crypto markets.
Positions and Trade History
get_trader_positions returns up to limit position objects, each containing event_title, question, tags, current_shares, current_value, invested_usd, and unrealized_gain. A truncated boolean flags cases where a trader's position count exceeds transport limits (primarily relevant for wallets with more than 30,000 positions). get_trader_trades supports server-side pagination via limit, offset, and has_more, and accepts sort_by and sort_desc parameters. Each trade record includes trade_dttm, side, amount, price, value, outcome, and market_title.
PnL History and Transfers
get_trader_pnl_history returns a daily timeseries array where each record carries dt (YYYY-MM-DD), daily_pnl_usd, realized_pnl, unrealized_pnl, total_pnl, and current_value — suitable for plotting cumulative performance curves. get_trader_transfers returns deposit and withdrawal records with transaction_hash, tx_type, block_timestamp, amount_usd, and trader_tags, sortable via sort_by and sort_desc.
Coverage Notes
The backend indexes a curated set of traders. Untracked wallet addresses will return empty arrays or no data rather than an error. Before building a pipeline, verify that the target wallets appear in the index by calling get_trader_dashboard and checking for a non-empty response.
- Track daily cumulative PnL for a specific Polymarket wallet using the
get_trader_pnl_historytimeseries - Compare win rates across market categories using
get_trader_categoriestag-level breakdowns - Monitor unrealized gains and current position values for active markets via
get_trader_positions - Audit deposit and withdrawal patterns for a trader using
get_trader_transferswith transaction hashes - Build a leaderboard of indexed traders by combining
get_trader_dashboardrank and win rate fields - Paginate through a trader's full trade history with
get_trader_tradesoffset andhas_morefields - Analyze trading behavior on a per-market basis by filtering
get_trader_tradesresults bymarket_titleoroutcome
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Polymarket Analytics have an official developer API?+
What does `get_trader_positions` return, and how does the `truncated` flag work?+
event_title, current_shares, current_value, invested_usd, and unrealized_gain. The truncated boolean is set to true when a wallet holds more than approximately 30,000 positions and the full dataset exceeds transport size limits. The count field tells you how many positions were actually returned in that response.How does pagination work for trade history?+
get_trader_trades accepts limit and offset integers for server-side pagination. The response includes a has_more boolean that is true when the number of records returned equals the requested limit, indicating additional pages are available. Increment offset by limit on each subsequent request to walk through the full history.