Skip to main content
GET
Wallet trade history (onchain)
Returns every onchain trade fill for a wallet — both maker and taker sides, every fill, every counterparty, every fee. Pulled directly from onchain settlement data, never misses a fill. Each trade is enriched with market metadata (question, slug, outcome, image).
Want the entire wallet’s history in one call? Use Trade History (Wallet) — Bulk (Growth plan and above). Returns up to 250K trades in a single response, no pagination.

Quick start — get the most recent 100 trades

Default limit=100, max limit=1000. That’s all most apps need.

Get every trade for the wallet (full history)

To walk the entire history, add ?cursor= (empty value) to the first request, then for each next page, copy pagination.cursor from the response back into the URL. Stop when pagination.has_more is false. Three complete copy-paste scripts that walk an entire wallet:
Each page takes ~1 second regardless of how many trades the wallet has. The loop just keeps running until has_more is false.

Request

Response

When pagination.has_more is true, the response also includes a pagination.cursor string — pass that as ?cursor=<value> for the next request.

side vs direction

Both fields are populated on every row, and they answer different questions:
  • side = was the wallet the maker (resting limit order) or taker (crossing the spread) on this fill?
  • direction = did the wallet BUY outcome shares (gave USDC) or SELL them (received USDC)?
You’ll see all four combinations in real wallets — a maker can be a buyer or seller depending on which side of the orderbook they posted to. Same for takers.

Path Parameters

address
string
required

Wallet address

Query Parameters

limit
integer
default:100

Max results (max 1000)

offset
integer
default:0

Skip first N results

cursor
string

Cursor pagination. Pass empty string ?cursor= for the first page, then echo back pagination.cursor from each response. Format: <lastTs>:<lastId>. Each page loads at the same speed regardless of depth — recommended over offset for paging beyond ~25K results.

Response

Trade fills