Get a user's profile stats
The profile card for one wallet in a single call.
?user= is required. Returns { data: { trades, biggest_win, views, join_date, all_time_pnl } }, or { data: null } when the wallet is not a
known user.
data: null and a row of zeros mean different things. null is “no such
user”; zeros are “this user exists but has never traded, never won and has no
profile views”.
trades counts DISTINCT MARKETS traded, not individual trades. It is exact,
not estimated.
biggest_win is the best single resolved position win in USDC, market
and combo arms unified, and 0 when the wallet has no win over $1.
join_date is epoch seconds, or null when unknown.
all_time_pnl is the newest persisted cumulative /v2/user-pnl point at
its actual observation timestamp. It is null when the user exists but no
observation has been published yet. For the composition card: trading
realized is realized_market_pnl + realized_combo_pnl; LP realized is
realized_lp_pnl; rebates, yield, rewards, referral, and fees paid map to
their same-named fields (fees_paid is refunds minus charges). volume,
volume_usdc, and trade_count are cumulative maker-attributed canonical
fill metrics.
Not paginated: one row by construction, so data is the bare object with no
pagination; the /v2/value shape.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
The wallet whose profile stats to return. Required; 0x followed by
40 hexadecimal characters.
Response
The wallet's profile stats, or null when it is not a known user
{ "data": T }; the envelope for endpoints that don't paginate.
There is no pagination key: an aggregate or bounded list has no next page.
Paginated feeds return a *Page shape ({ data, pagination }) instead.
The profile card for one wallet, plus its newest persisted all-time PnL observation.
join_date is null when unknown, which is a real state rather than an
error; a meaningful share of accounts have no recorded creation time.
biggest_win is 0 when the wallet has no win over $1. all_time_pnl is
null when the user is known but has no observation yet; a missing user is
represented by the outer response data: null instead.