Skip to main content
GET
/
v1
/
account
curl
ADDR=0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb
curl "https://api.testnet.arcus.xyz/v1/account?address=${ADDR}"
{
  "accountIndex": 4,
  "address": "<string>",
  "netQuoteBalance": "<string>",
  "equity": "<string>",
  "freeCollateral": "<string>",
  "netDeposits": "<string>",
  "pendingDeposits": "<string>",
  "pendingWithdrawals": "<string>",
  "positions": {},
  "sequenceNumber": 123
}

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}$

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.