Every CLOB v2 trade carries aDocumentation Index
Fetch the complete documentation index at: https://docs.struct.to/llms.txt
Use this file to discover all available pages before exploring further.
builder_code and a builder_fee. The code identifies the app or integrator that routed the order, or the zero address (0x0000...) when the trade was placed directly through Polymarket. There is no dedicated “trades by builder” endpoint; instead, the standard trade endpoints accept a builder_codes filter (comma-separated, max 25) so you can scope any trade query to one or more builders, including the zero address for direct-Polymarket flow.
When to use this
- Showing a builder’s recent fills inside a partner dashboard.
- Comparing flow between two builder codes over a time window.
- Building copy-trading or attribution views that need the originating builder for each trade.
All trades for a builder
UseGET /v1/polymarket/market/trades with builder_codes. You can combine it with any other trade filter (trade_types, min_usd_amount, from, to, etc.).
A specific trader’s trades for a builder
To intersect “trades by trader X” with “routed via builder Y”, useGET /v1/polymarket/trader/trades/{address} with the same builder_codes filter.
Scoping to a market or time window
Builder filtering composes with the rest of the trade query parameters. A few common combinations:| Goal | Parameters |
|---|---|
| One builder, one market | builder_codes=0xBUILDER&condition_ids=0xabc... |
| One builder, last 24h of fills | builder_codes=0xBUILDER&trade_types=OrderFilled,OrdersMatched&from={now-86400000} |
| Whale flow per builder | builder_codes=0xBUILDER&min_usd_amount=10000 |
| Buys only | builder_codes=0xBUILDER&side=0 |
/market/trades and /trader/trades are Unix milliseconds.
Paginating through results
Thelimit cap is 250 per page. For larger backfills, the SDK’s paginate helper streams every matching trade across pages without manual cursor handling:
offset and pagination_key interact.
Streaming new trades
Thepolymarket_trades websocket room accepts the same builder_codes filter, so you can push builder-attributed trades live instead of polling.