API Reference
Get full portfolio for a wallet
Returns the complete portfolio for a wallet address including:
- Native PAX balance with USD value
- All ERC-20 token holdings with prices
- Perpetuals portfolio summary (vault, positions, PnL)
- Total portfolio value in USD
Path Parameters
address*string
Wallet address (with or without 0x prefix, case-insensitive)
Match
^0x[a-fA-F0-9]{40}$Response Body
application/json
text/plain
curl -X GET "https://us-east-1.user-stats.sidiora.exchange/api/v1/portfolio/0xf263aB36de550bDa08b52d43eB253b3C0387e2bc"{
"address": "string",
"native_balance": {
"symbol": "PAX",
"balance_raw": "string",
"balance": "string",
"price_usd": "string",
"value_usd": "string"
},
"token_holdings": [
{
"contract_address": "string",
"symbol": "string",
"name": "string",
"decimals": 0,
"balance_raw": "string",
"balance": "string",
"price_usd": "string",
"value_usd": "string",
"icon_url": "string"
}
],
"total_value_usd": "string",
"token_count": 0,
"transaction_count": 0,
"transfer_count": 0,
"perps": {
"has_vault": true,
"vault_address": "string",
"open_positions": [
{
"position_id": "string",
"user_address": "string",
"market_id": 0,
"market_name": "string",
"market_symbol": "string",
"is_long": true,
"size_usd": "string",
"leverage": "string",
"entry_price": "string",
"current_price": "string",
"collateral_amount": "string",
"collateral_usd": "string",
"unrealized_pnl": "string",
"realized_pnl": "string",
"status": "open",
"opened_at": "string",
"closed_at": "string",
"open_tx_hash": "string"
}
],
"total_collateral_usd": "string",
"total_unrealized_pnl": "string",
"total_perps_value_usd": "string",
"total_realized_pnl": "string",
"stats": {
"user_address": "string",
"total_positions": 0,
"open_positions": 0,
"closed_positions": 0,
"liquidated_positions": 0,
"total_trades": 0,
"total_realized_pnl": "string",
"total_orders": 0,
"active_orders": 0
}
},
"computed_at": "2019-08-24T14:15:22Z"
}"string"Get PnL history GET
Returns daily PnL history showing portfolio value changes over time. Each entry includes total value, component breakdown, and daily change.
Portfolio value chart GET
Returns time-series data for portfolio total value. Uses high-frequency snapshots (5min intervals) when available, falls back to daily. **Granularity by period:** - `1d` → every 5 min - `7d` → every 1 hour - `30d` → every 4 hours - `90d` → every day - `1y` → every day