Skip to main content
One row per day (UTC) for any address:
  • balances at 24:00 UTC: USDC and stablecoins, open perp positions on every dex (main dex and HIP-3, keyed xyz:...), spot tokens, staked HYPE, native lending, vault equity, and the total account value;
  • activity during the day: realized PnL, fees, funding, deposits, withdrawals, transfers, vault flows, staking flows, traded volume and number of fills.
The current day is included as a provisional row, refreshed every few minutes, with balances as of the time given in its as_of flag. The final row for a day is written the following night. Statements start on 1 June 2025.

Where to get them

Both return the same rows, as a table or as a JSON or CSV download. Statements are the way to read the value of an account across every dex: /users/{user}/account and /equity-history cover the main perp dex only, and return perp_account_empty: true for an account that trades only on HIP-3 dexes.

Request

The JSON response is the usual envelope: {"success": true, "data": [rows...], "total_count": n, ...}. Days below $1 with no activity and no open position are omitted.

Fields

All amounts are in USD at each day’s closing prices, except staked_hype and staking_net_hype (in HYPE).

Flags

Rows computed daily (from 11 October 2026) usually carry no flag besides as_of on the current day. Older rows are rebuilt backwards from later account states, and their flags say where a number is estimated.

Credits

Statements are billed like other REST calls, on the number of rows returned (one per day, JSON or CSV); see Rate Limits & Pricing. Every response carries its cost in the X-Credit-Cost header. In the app, each export shows what it cost.