curl --request GET \
--url https://sandbox.api.byzantine.fi/v1/query/get-account-balances \
--header 'X-Pubkey: <x-pubkey>' \
--header 'X-Pubkey, X-Timestamp, X-Signature: <api-key>' \
--header 'X-Signature: <x-signature>' \
--header 'X-Timestamp: <x-timestamp>'import requests
url = "https://sandbox.api.byzantine.fi/v1/query/get-account-balances"
headers = {
"X-Pubkey": "<x-pubkey>",
"X-Timestamp": "<x-timestamp>",
"X-Signature": "<x-signature>",
"X-Pubkey, X-Timestamp, X-Signature": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'X-Pubkey': '<x-pubkey>',
'X-Timestamp': '<x-timestamp>',
'X-Signature': '<x-signature>',
'X-Pubkey, X-Timestamp, X-Signature': '<api-key>'
}
};
fetch('https://sandbox.api.byzantine.fi/v1/query/get-account-balances', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"account_id": "550e8400-e29b-41d4-a716-446655440000",
"sub_accounts": [
{
"wallet_address": "0xa5b709B14859EdF820347D78E587b1634B0ec791",
"positions": [
{
"chain_id": 123,
"vault_address": "<string>",
"is_async_vault": true,
"asset_address": "<string>",
"currency": "usd",
"balance": "123.456789",
"shares": "123.456789",
"price_per_share": "123.456789",
"pending_withdrawals": {
"balance": "123.456789",
"shares": "123.456789"
}
}
],
"idle": [
{
"chain_id": 123,
"balance": "123.456789",
"currency": "usd"
}
]
}
]
}Get single account balances
Fetch all vault positions for a specific account from the indexer. Returns balance information including vault details and current price per share. If chain_id is not specified, returns balances for all chains. If include_test_vaults is not specified, defaults to false (excludes test vaults).
curl --request GET \
--url https://sandbox.api.byzantine.fi/v1/query/get-account-balances \
--header 'X-Pubkey: <x-pubkey>' \
--header 'X-Pubkey, X-Timestamp, X-Signature: <api-key>' \
--header 'X-Signature: <x-signature>' \
--header 'X-Timestamp: <x-timestamp>'import requests
url = "https://sandbox.api.byzantine.fi/v1/query/get-account-balances"
headers = {
"X-Pubkey": "<x-pubkey>",
"X-Timestamp": "<x-timestamp>",
"X-Signature": "<x-signature>",
"X-Pubkey, X-Timestamp, X-Signature": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'X-Pubkey': '<x-pubkey>',
'X-Timestamp': '<x-timestamp>',
'X-Signature': '<x-signature>',
'X-Pubkey, X-Timestamp, X-Signature': '<api-key>'
}
};
fetch('https://sandbox.api.byzantine.fi/v1/query/get-account-balances', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"account_id": "550e8400-e29b-41d4-a716-446655440000",
"sub_accounts": [
{
"wallet_address": "0xa5b709B14859EdF820347D78E587b1634B0ec791",
"positions": [
{
"chain_id": 123,
"vault_address": "<string>",
"is_async_vault": true,
"asset_address": "<string>",
"currency": "usd",
"balance": "123.456789",
"shares": "123.456789",
"price_per_share": "123.456789",
"pending_withdrawals": {
"balance": "123.456789",
"shares": "123.456789"
}
}
],
"idle": [
{
"chain_id": 123,
"balance": "123.456789",
"currency": "usd"
}
]
}
]
}Authorizations
Headers
Integrator's ECDSA public key (P-256 curve, compressed SEC1 format). Example: 0x038fedef7c12f93bbf342ad8943b7a825a3b41f61c9dc118b2c718efebabbf62fd
Unix timestamp in seconds (UTC). Must be within tolerance window (1 minute) to prevent replay attacks. Example: 1760375826
ECDSA signature (DER-encoded, hex with 0x prefix). Signs the message: {timestamp}{METHOD}{path_and_query}{json_body}. Example: 0x3045022100...
Query Parameters
The account ID A UUID string
"550e8400-e29b-41d4-a716-446655440000"
The chain ID to get balances for (optional, default = all chains)
Whether to include test vaults (optional, default = false)

