Skip to main content

Documentation Index

Fetch the complete documentation index at: https://polynode.mintlify.app/llms.txt

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

Returns fills where the wallet participated as maker, taker, or both. Each trade is enriched with market metadata, computed price/size in USD, buy/sell direction, and the order hash.

Request

GET /v3/wallets/{address}/trades

Query parameters

ParameterTypeDefaultDescription
sidestringbothmaker, taker, or both
token_idstringFilter trades involving this token
condition_idstringFilter by market condition ID (resolves to token IDs)
market_slugstringFilter by market slug (resolves to token IDs)
min_amountintegerMinimum maker_amount_filled (raw 6-decimal)
sort_bystringorder_hash groups fills by limit order visually (individual fill rows, sorted by most recent order)
group_bystringorder_hash aggregates fills per order into one row with totals, avg price, fill count
afterintegerStart of time range (Unix timestamp)
beforeintegerEnd of time range (Unix timestamp)
orderstringdescasc or desc
limitinteger100Max 1000
offsetinteger0Pagination offset

Example

curl https://api.polynode.dev/v3/wallets/0xa9857c7bcb9bcfafd2c132ab053f34f678610058/trades?limit=1
{
  "address": "0xa9857c7bcb9bcfafd2c132ab053f34f678610058",
  "trades": [
    {
      "id": "0x284b61d18c8e0a60333bfe883288c7d9861c9c07a410050f537550940038a713_951",
      "maker": "0xa9857c7bcb9bcfafd2c132ab053f34f678610058",
      "taker": "0xe111180000d2663c0091e4f400237545b87b996b",
      "maker_asset_id": "0",
      "taker_asset_id": "75783394880030392863380883800697645018418815910449662777195626260206142035810",
      "maker_amount": 0.999999,
      "taker_amount": 1.694914,
      "fee": 0.01229,
      "price": 0.59,
      "size": 1.694914,
      "timestamp": "1778674056",
      "transaction_hash": "0x284b61d18c8e0a60333bfe883288c7d9861c9c07a410050f537550940038a713",
      "order_hash": "0x21245a1d81ff19d7effcdb7e3b78d5fe66098708a7dc7cad2267f81d237acc7f",
      "builder": "0x0000000000000000000000000000000000000000000000000000000000000000",
      "side": 0,
      "role": "maker",
      "direction": "BUY",
      "market": "Dota 2: Aurora vs Team Liquid (BO3) - DreamLeague Group A",
      "slug": "dota2-aur1-liquid-2026-05-13",
      "outcome": "Aurora",
      "outcome_index": 0,
      "image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/dota2-7ffacddb21.jpg",
      "condition_id": "0x4f05dbc6273b89aed46bb79a961c1d8771c01925d92d439e9a81fa6241900661"
    }
  ],
  "rows_returned": 1,
  "has_more": true,
  "offset": 0,
  "limit": 1,
  "elapsed_ms": 40
}

Maker-only trades

curl https://api.polynode.dev/v3/wallets/0x.../trades?side=maker&limit=10

Trades for a specific token

curl https://api.polynode.dev/v3/wallets/0x.../trades?token_id=75783394...&limit=10

Trades in a time window

curl https://api.polynode.dev/v3/wallets/0x.../trades?after=1778000000&before=1778604000

Response fields

Trade data

FieldTypeDescription
idstringUnique fill ID (transaction_hash + log index)
makerstringMaker wallet address
takerstringTaker wallet address
maker_asset_idstringAsset the maker provided (0 = USDC)
taker_asset_idstringAsset the taker provided (0 = USDC)
maker_amountnumberUSD amount the maker provided
taker_amountnumberUSD amount the taker provided
feenumberFee charged (USD)
pricenumberComputed price per outcome token (maker_amount / taker_amount or inverse)
sizenumberNumber of outcome tokens traded (USD)
timestampstringUnix timestamp
transaction_hashstringOn-chain transaction hash
order_hashstringUnique order hash for this fill
builderstringBuilder attribution code (hex)
sideintegerMaker’s limit order direction: 0 = maker was buying tokens, 1 = maker was selling tokens, null for V1 trades. This is the maker’s side, not the queried wallet’s action. Use direction instead for the wallet’s perspective.
rolestringmaker or taker — which side the queried wallet was on in this fill
directionstringBUY or SELL — whether the queried wallet bought or sold outcome tokens. This is the field you want for understanding what the wallet did.

Market context

FieldTypeDescription
marketstringMarket question text
slugstringMarket URL slug
outcomestringOutcome label (e.g. “Yes”, “Aurora”)
outcome_indexintegerOutcome position (0 or 1)
imagestringMarket image URL
condition_idstringMarket condition ID

Sort fills by order hash

curl https://api.polynode.dev/v3/wallets/0xa9857c.../trades?sort_by=order_hash&limit=10
Groups all fills belonging to the same limit order together visually, sorted by most recent order first. Returns individual fill rows.

Aggregate fills by order hash

curl https://api.polynode.dev/v3/wallets/0x61b0ea32aff59e9893e867a2ab196476ab22dd96/trades?group_by=order_hash
Returns one row per order with aggregated totals:
{
  "trades": [
    {
      "order_hash": "0xea91f0d67086be...",
      "fill_count": 5,
      "avg_price": 0.57,
      "total_usd": 669.11,
      "total_shares": 1173.88,
      "total_fee": 0.0,
      "total_maker_amount": 669.11,
      "total_taker_amount": 1173.88,
      "first_fill_at": 1778100000,
      "last_fill_at": 1778200000,
      "tx_hashes": ["0xabc...", "0xdef..."],
      "market": "MegaETH market cap (FDV) >$1.5B one day after TGE?",
      "slug": "megaeth-fdv-1-5b-one-day-after-tge",
      "outcome": "Yes",
      "direction": "BUY"
    }
  ],
  "rows_returned": 6,
  "grouped_by": "order_hash"
}

Grouped response fields

FieldTypeDescription
order_hashstringThe limit order hash
fill_countintegerNumber of fills in this order
avg_pricenumberVolume-weighted average price (total_usd / total_shares)
total_usdnumberTotal USD value across all fills
total_sharesnumberTotal outcome tokens across all fills
total_feenumberTotal fees (USD)
total_maker_amountnumberRaw sum of maker amounts (side-dependent)
total_taker_amountnumberRaw sum of taker amounts (side-dependent)
first_fill_atintegerEarliest fill timestamp (Unix)
last_fill_atintegerLatest fill timestamp (Unix)
tx_hashesarrayUnique transaction hashes
marketstringMarket question
slugstringMarket slug
outcomestringOutcome label
directionstringBUY or SELL

Filter by market condition

curl https://api.polynode.dev/v3/wallets/0xa9857c.../trades?condition_id=0x4f05dbc6...

Filter by market slug

curl https://api.polynode.dev/v3/wallets/0xa9857c.../trades?market_slug=dota2-aur1-liquid-2026-05-13