/v2/user/portfolio-state returns everything you need to display a trader’s full account state in a single response: perp positions, spot balances, open orders, and account abstraction mode.
When to use this
- User profile pages in a trading dashboard — show perp PnL, spot holdings, and open orders without chaining multiple calls
- Copy trading dashboards fetching the complete state of every leader you track
- Login flows that need to populate a user’s full account in one request
- Risk monitors pulling a complete picture of an account in a single round-trip
clearinghouseState, spotClearinghouseState, openOrders, and userAbstraction, you make one.
Single user
Query parameters
Example response
Response fields
Any sub-field may be
null if that part of the user’s state is empty or the underlying query failed.
Batch — up to 2,500 wallets per request
For copy trading platforms and multi-user dashboards, use the batch variant to pull many wallets at once.Request body
Response
Keyed by wallet address. Each value has the same shape as the single-user endpoint.Dry-run mode
Pass"dry": true to get a response with the correct shape but stub values. Useful for building and testing your parser without generating real load.
Limits
If you need more than 2,500 at a time, use
/v2/batch/clearinghouse-states which supports up to 10,000 (perp positions only, no spot or open orders).