TypeScript SDK — Account Services: Balances & Account
Account details, balances, roles, and account management. All methods are on client.accountServices.
See the API specifications for full request/response schemas and the authentication guide for setup.
Methods
getAccountDetail
POST /v1/account · Authenticated
Returns details about the authenticated account including name, type, and associated users.
Code
This is a POST mutation — never automatically retried. The empty object {} is required — the SDK adds transport fields (nonce, request) automatically.
getAvailableBalances
POST /v1/balances · Authenticated
Returns the available balances for each currency in your account. The account field is required in the generated TypeScript type. The response is a bare array of Balance objects.
Code
Tip:
amountandavailableare numbers (not strings). Other fields likeavailableForWithdrawal,pendingWithdrawal, andpendingDepositare also numbers. The_timestampfield is an ISO 8601 string for staleness detection — see Data Types.
getNotionalBalances
POST /v1/notionalbalances/{currency} · Authenticated
Returns balances denominated in the specified fiat currency. Uses the { path, body } input pattern because the currency is a URL path parameter.
Code
Tip: The
path.currencyselects the denomination (e.g."usd","gbp","eur"). Notional values (amountNotional,availableNotional,availableForWithdrawalNotional) are decimal strings.
getRoles
POST /v1/roles · Authenticated
Returns the roles assigned to the API key making the request.
Code
listAccountsInGroup
POST /v1/account/list · Authenticated
Lists all accounts in the master group. Useful for multi-account setups. The response is a bare array.
Code
Tip: The
timestampfield in the request body acceptsbigintornumber.
createNewAccount
POST /v1/account/create · Authenticated
Creates a new sub-account within your account group. The request body is validated client-side.
Code
This is a POST mutation — never automatically retried. Account creation is idempotent by name — creating an account with an existing name returns the existing account.
renameAccount
POST /v1/account/rename · Authenticated
Renames a sub-account. The request body is validated client-side — the SDK checks field types before sending.
Code
This is a POST mutation — never automatically retried. If the request fails mid-flight you should confirm the rename status before retrying.
What's next
- Addresses & Deposits — deposit addresses and approved address management
- Withdrawals & Transfers — moving funds out or between accounts
- Data Types — why balances are numbers and timestamps may be bigint
- Error Handling — handling API errors