Skip to main content
GET
/
v1
/
trades
/
fetch_user_trades
let result = ex.fetch_user_trades(req).await?;
{
  "trades": [
    {
      "asset_id": "example",
      "condition_id": "example",
      "fee": 0.5,
      "id": "example",
      "market_id": "example",
      "owner": "example",
      "price": 0.5,
      "realized_pnl": 0.5,
      "role": {},
      "side": {},
      "size": 0.5,
      "ts_ms": 0,
      "tx_hash": "example"
    }
  ],
  "cursor": null
}

Documentation Index

Fetch the complete documentation index at: https://docs.openpx.trade/llms.txt

Use this file to discover all available pages before exploring further.

venues (Polymarket) carry on-chain fields like tx_hash and a realized_pnl that don’t fit the Fill model. When req.user_address is None, returns the authenticated caller’s own trades. When Some(addr), returns a public lookup for that wallet (Polymarket only — Kalshi returns NotSupported in that case).

Parameters

cursor
string?
end_ts
i64?
Unix seconds (inclusive)
limit
integer?
market_id
string?
side
OrderSide?
start_ts
i64?
Unix seconds (inclusive)
user_address
string?
None = caller’s own trades (auth required on both venues). Some(addr) = public lookup for addr (Polymarket only; Kalshi returns NotSupported).

Returns

trades
UserTrade[]
One page of UserTrade results.
cursor
string?
Opaque pagination cursor. null on the last page.
let result = ex.fetch_user_trades(req).await?;
{
  "trades": [
    {
      "asset_id": "example",
      "condition_id": "example",
      "fee": 0.5,
      "id": "example",
      "market_id": "example",
      "owner": "example",
      "price": 0.5,
      "realized_pnl": 0.5,
      "role": {},
      "side": {},
      "size": 0.5,
      "ts_ms": 0,
      "tx_hash": "example"
    }
  ],
  "cursor": null
}

Response

Success.

One page of UserTrade results. cursor is null on the last page; otherwise pass it back in the next request to continue.

trades
UserTrade · object[]
required
cursor
string | null