Skip to main content
GET
Get user balance by asset

Authorizations

X-Monaco-Signature
string
header
required

Ed25519 session-key request signing. Every authenticated request carries three headers: X-Monaco-PublicKey (64-char lowercase-hex session public key), X-Monaco-Timestamp (Unix milliseconds, within 30s of server time), and X-Monaco-Signature (hex ed25519 signature). The signature is over METHOD\npath?query\ntimestamp_ms\nSHA256_hex(body), where the body hash is the SHA-256 of the empty byte string when there is no body. Obtain the session keypair from POST /api/v1/auth/challenge followed by POST /api/v1/auth/verify.

Path Parameters

assetId
string
default:1905d968-cc65-4cc7-b77c-1905d968cc65
required

Response

OK

token
string | null

Token contract address

Example:

"0x6a86da986797d59a839d136db490292cd560c131"

symbol
string | null

Token symbol

Example:

"USDC"

decimals
integer<int32> | null

Token decimal places

Example:

6

availableBalance
string | null

Available (unlocked) balance in token units

Example:

"1000.50"

lockedBalance
string | null

Balance locked in open orders

Example:

"50.25"

totalBalance
string | null

Total balance (available + locked)

Example:

"1050.75"

availableBalanceRaw
string | null

Raw available balance in smallest token unit

Example:

"1000500000"

lockedBalanceRaw
string | null

Raw locked balance in smallest token unit

Example:

"50250000"

assetId
string<uuid> | null

Asset UUID

Example:

"123e4567-e89b-12d3-a456-426614174000"

totalBalanceRaw
string | null

Raw total balance (available + locked) in smallest token unit

Example:

"1050750000"

wrappedNative
boolean | null

True when this asset is the chain's wrapped-native token (e.g. WSEI): vault deposits can be made in native coin via depositNative (the vault wraps on entry) and withdrawals pay out native

Example:

true

version
integer<int64> | null

Opaque, non-negative producer-owned version for this spot user_balances row. Compare only within the same (user, application, token); higher is newer. 0 is the unranked legacy sentinel and never participates in ordering: it means the row predates this field or came from a producer that does not stamp it, so treat it exactly as an absent version and fall back to a full field comparison rather than ranking it as oldest. This does not order margin collateral.

Required range: x >= 0
Example:

918342