Endpoint
Request Body
| Parameter | Type | Description |
|---|---|---|
type* | string | Must be "portfolio" |
user* | string | User’s wallet address (case-insensitive), e.g., "0x1234567890abcdef..." |
period | string | Time period for history: "perpWeek" (last 7 days, default) or "perpMonth" (last 30 days) |
Response
Response Fields
| Field | Type | Description |
|---|---|---|
accountValueHistory | array | Array of [timestamp, value] tuples showing account value over time |
pnlHistory | array | Array of [timestamp, pnl] tuples showing profit/loss over time |
vlm | string | Volume (currently always “0”, reserved for future use) |
warnings | array | Warnings about missing price data during calculation |
accountValueHistory[].timestamp | number | Unix timestamp in milliseconds |
| accountValueHistory[].value | string | Account value in USDC |
| pnlHistory[].timestamp | number | Unix timestamp in milliseconds |
| pnlHistory[].pnl | string | Cumulative profit/loss in USDC |
| warnings[].asset | string | Asset symbol |
| warnings[].timestamp | number | Timestamp when price data was missing |
| warnings[].type | string | Asset type: "spot" or "perp" |
| warnings[].reason | string | Explanation of the warning |
Example Request
Error Responses
Notes
- History is calculated from ledger events and historical prices
- Warnings indicate timestamps where price data was unavailable
- Empty arrays are returned if oracle cache is unavailable