Skip to main content
GET
curl
The response body shown here is a static example, not live data. After you click Send, your live result appears in a separate panel headed 200 OK. The panel under the status-code tabs is a fixed sample from the spec — its field values (fees, prices, sizes, IDs, timestamps) are placeholders. Use Send, or call the endpoint, for current values.
Returns account information for the requested address, including balances, collateral, and open positions. No authentication header is required.

Query Parameters

address
string
required

Master Ethereum address for this API key (must match address from POST /createApiKey for the same key). Required on REST for account-scoped reads and for place/cancel. Invalid hex → 400; mismatch with key → 403.

20-byte EVM address as hex: optional 0x or 0X prefix and exactly 40 hexadecimal digits. API responses normalize to lowercase af after 0x.

Pattern: ^(0x|0X)?[0-9a-fA-F]{40}$
accountIndex
integer
default:0

Subaccount index (0–9) to scope the request to. Defaults to 0 (the primary account). Values above 9 → 400.

Required range: 0 <= x <= 9

Response

Account details.

Account state including balances, collateral, and open positions. Returned by GET /account. Orders are served via the dedicated orders channel/endpoint.

accountIndex
integer
required

Account index (account index, 0–9). Identifies the account for orders, positions, fills, and API keys.

Required range: 0 <= x <= 9
address
string
required

Ethereum address associated with the account.

Pattern: ^(0x|0X)?[0-9a-fA-F]{40}$
netQuoteBalance
string
required

Account's aggregate cash balance as of the last event, in full quote currency (decimal string). Equals Account.QuoteBalance + Σ Position.QuoteBalance (cross-margin scope). Changes only on external cash flows: deposits, withdrawals, fill cash flows (-sizeDelta × fillPrice), trading fees, and funding settlements. Internal margin reallocations leave it unchanged. Combine with live oracle prices to derive equity: equity = netQuoteBalance + Σ (size × oracle).

Examples:

"100000"

"-25.5"

equity
string
required

Total account equity in full quote currency (decimal string). Computed as netQuoteBalance + Σ (size × oracle) over all open positions. May differ from the engine's netQuoteBalance snapshot between fills as oracle prices move.

freeCollateral
string
required

Collateral available for trading in full quote currency (decimal string). Computed as equity − Σ initial_margin_required across open positions.

netDeposits
string
required

Net deposits (deposits minus withdrawals) in full quote currency (decimal string).

Example:

"100000"

pendingDeposits
string
required

Pending deposit amount.

pendingWithdrawals
string
required

Pending withdrawal amount.

positions
object
required

Open positions keyed by marketId (integer; 1=BTC-USD, 2=ETH-USD, etc). JSON keys are stringified integers.

sequenceNumber
integer<uint64>
required

Last processed engine sequence number for this account. Clients can use this to filter duplicate diffs and reconcile against streaming AccountUpdate events on the accounts channel.