Skip to main content
GET
/
extern
/
fe
/
balance
Get balance across all chains
curl --request GET \
  --url https://{host}/extern/fe/balance \
  --header 'Authorization: Bearer <token>' \
  --header 'X-Publishable-Key: <api-key>'
const options = {
  method: 'GET',
  headers: {'X-Publishable-Key': '<api-key>', Authorization: 'Bearer <token>'}
};

fetch('https://{host}/extern/fe/balance', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
import requests

url = "https://{host}/extern/fe/balance"

headers = {
    "X-Publishable-Key": "<api-key>",
    "Authorization": "Bearer <token>"
}

response = requests.get(url, headers=headers)

print(response.text)
{
  "status": "<string>",
  "data": {
    "accountId": "<string>",
    "safeAddress": "<string>",
    "perChain": [
      {
        "chainId": 123,
        "vaultAddress": "<string>",
        "total": {},
        "totalUnderlying": "<string>",
        "totalUnderlyingDecimals": 123,
        "heldAssets": [
          {
            "address": "<string>",
            "symbol": "<string>",
            "chainId": 123
          }
        ]
      }
    ],
    "total": {},
    "heldAssets": [
      {
        "address": "<string>",
        "symbol": "<string>",
        "chainId": 123
      }
    ]
  }
}
{
  "status": "<string>",
  "message": "<string>"
}
{
  "status": "<string>",
  "message": "<string>"
}
{
  "status": "<string>",
  "message": "<string>"
}
{
  "status": "<string>",
  "message": "<string>"
}
{
  "status": "<string>",
  "message": "<string>"
}

Authorizations

X-Publishable-Key
string
header
required

Tenant publishable key (pk_live_...)

Authorization
string
header
required

SIWE session JWT issued by POST /auth/verify

Query Parameters

startDate
string
endDate
string

Response

Success

status
string
required
Allowed value: "success"
data
object
required
Last modified on July 3, 2026