Polymarket Perps Trades API
Recent fills for one Perps instrument, newest first.
GET /v1/polymarket/perps/instruments/{instrumentId}/trades1 credit Failed requests are free
About this endpoint
GET /v1/polymarket/perps/instruments/{instrumentId}/trades returns data.trades, newest first. Each trade has id, at, side (long or short), price, quantity, settlement and page for continuation. data.instrumentId echoes the instrument.
from and to are unix seconds; by default the range is 24 hours before to, which defaults to now. An instrument with no trades, or an id that matches no instrument, returns a found answer with an empty list.
Polymarket Perps Trades API FAQ
What does settlement mean?
The trade settled a position rather than opening or adding to one. It is a boolean flag on the row, so you can separate settlement fills from ordinary trades.
Is side long or short?
side is long or short, not buy or sell. Treat it as the direction of the position the trade opened or closed, and read settlement to tell the two apart.
How do I get older trades?
Pass from and to to move the window, then page with cursor. The default window is 24 hours. Keep the same from and to while paging so the cursor stays valid.
What does lookupStatus mean on this route?
found means the object or list was returned. not_found means no matching object exists. HTTP 200 only means the request finished, so branch on data.lookupStatus before storing a row.
How much does this route cost?
Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.
Other Polymarket endpoints
- EventsGET /v1/polymarket/events
- EventGET /v1/polymarket/events/{eventIdOrSlug}
- Event insightsGET /v1/polymarket/events/{eventIdOrSlug}/insights
- Event annotationsGET /v1/polymarket/events/{eventIdOrSlug}/annotations
- Event commentsGET /v1/polymarket/events/{eventId}/comments
- MarketsGET /v1/polymarket/markets
- Markets batchGET /v1/polymarket/markets/batch
- MarketGET /v1/polymarket/markets/{marketIdSlugOrConditionId}