Skip to main content
Returns a full profile for a single wallet in USD. Includes realized P&L, unrealized P&L from open positions, gross profit and loss, win/loss record, and total trading volume.

Request

GET /v3/wallets/{address}

Path parameters

ParameterTypeDescription
addressstringWallet address (0x-prefixed, case-insensitive)

Query parameters

ParameterTypeDefaultDescription
include_combosbooleanfalseAdd combo P&L and combo position counts to the all-time wallet summary.
include_accounting_summarybooleanfalseAdd the all-time wallet accounting summary, including exact trader-paid fees from indexed onchain fills.

Example

curl https://api.polynode.dev/v3/wallets/0x56687bf447db6ffa42ffe2204a05edaa20f55839

Summary including combos

curl "https://api.polynode.dev/v3/wallets/0x63613e3b96f418332d43cd2af8dc321014d15907?include_combos=true"
{
  "address": "0x63613e3b96f418332d43cd2af8dc321014d15907",
  "net_realized_pnl": 113.510513,
  "realized_pnl": 113.510513,
  "total_pnl": 113.510513,
  "position_count": 21496,
  "open_positions": 1495,
  "include_combos": true,
  "included_position_types": ["market", "combo"],
  "combo_pnl": {
    "position_type": "combo",
    "included": true,
    "realized_pnl": 113.510513,
    "total_pnl": 113.510513,
    "position_count": 21492,
    "open_positions": 1495
  }
}

Summary including accounting

Use this when you need the exact all-time fee summary without paging through raw fill rows.
curl "https://api.polynode.dev/v3/wallets/0x7553e42ce1b37727b819dfe4bac495b3968f65ca?include_accounting_summary=true"
{
  "address": "0x7553e42ce1b37727b819dfe4bac495b3968f65ca",
  "net_realized_pnl": -138570.0369464795,
  "gross_profit": 524921.0508558493,
  "gross_loss": -671088.850081543,
  "unrealized_pnl": -7597.762279214215,
  "total_pnl": -146167.79922569369,
  "position_count": 915,
  "open_positions": 0,
  "total_volume": 2718779.615141,
  "accounting_summary": {
    "available": true,
    "loaded": true,
    "has_order_filled_rows": true,
    "source": "api.wallet_accounting_summary_current",
    "fees_paid": {
      "available": true,
      "loaded": true,
      "amount": 99973.115598,
      "raw": "99973115598",
      "fee_fill_count": 2984,
      "order_owner_fill_count": 5122,
      "first_fee_block": "84892414",
      "last_fee_block": "88904629"
    },
    "maker_rebates": {
      "available": false,
      "loaded": false,
      "status": "not_loaded",
      "amount": null,
      "raw": null
    },
    "rewards": {
      "available": false,
      "loaded": false,
      "status": "not_loaded",
      "amount": null,
      "raw": null
    },
    "order_filled_through_block": "88978163",
    "projector_status": "ready"
  },
  "elapsed_ms": 2
}
{
  "address": "0x56687bf447db6ffa42ffe2204a05edaa20f55839",
  "net_realized_pnl": 22053845.825455,
  "gross_profit": 22057977.181649,
  "gross_loss": -4131.356194,
  "unrealized_pnl": 0.000688755,
  "total_pnl": 22053845.826143753,
  "wins": 18,
  "losses": 4,
  "position_count": 22,
  "open_positions": 1,
  "total_volume": 43013258.515682,
  "elapsed_ms": 1
}

Response fields

FieldTypeDescription
net_realized_pnlnumberNet realized P&L in USD
gross_profitnumberSum of all winning position P&L (USD)
gross_lossnumberSum of all losing position P&L (USD, negative)
unrealized_pnlnumberUnrealized P&L from open positions based on current prices (USD)
total_pnlnumbernet_realized_pnl + unrealized_pnl (USD)
winsintegerNumber of positions closed with positive P&L
lossesintegerNumber of positions closed with negative P&L
position_countintegerTotal positions (open + closed)
open_positionsintegerPositions with shares > 0
total_volumenumberTotal volume traded (USD)
combo_pnlobjectPresent when include_combos=true; combo-only contribution to the wallet summary
accounting_summaryobjectPresent when include_accounting_summary=true; all-time compact wallet accounting summary
accounting_summary.fees_paid.amountnumberExact all-time trader-paid fees in USD
accounting_summary.fees_paid.rawstringExact all-time trader-paid fees in 6-decimal raw units
accounting_summary.fees_paid.fee_fill_countintegerNumber of order-owner fills with a positive fee
accounting_summary.fees_paid.order_owner_fill_countintegerNumber of indexed order-owner fills for the wallet
accounting_summary.maker_rebates.statusstringMaker rebate projection status. not_loaded means do not treat the amount as zero.
accounting_summary.rewards.statusstringReward projection status. not_loaded means do not treat the amount as zero.
accounting_summary.order_filled_through_blockstringLatest block covered by the order-filled accounting projector
accounting_summary.projector_statusstringCurrent projector status