Skip to Content

Wallets

Wallets, addresses, balances, and the asset/blockchain directories. All paths are relative to https://<your-vault-domain>/api and require the X-API-Key header.

List wallets

GET /v1/profiles/{profile_id}/wallets

Returns the wallet identifiers for the profile. Details (per-blockchain assets, balances) are retrieved via the dedicated endpoints below.

Create a wallet

POST /v1/profiles/{profile_id}/wallets

Requires an Idempotency_key header (UUID).

{ "name": "Main Trading Wallet", "blockchain_ids": ["8b2e6f10-4c3d-4e5f-9a1b-2c3d4e5f6a7b"] }
FieldTypeRequiredDescription
blockchain_idsUUID[]YesBlockchains to enable — at least one; get IDs from the blockchain directory
namestringNoHuman-readable wallet name

Response: 201 Created with the wallet object. Wallet creation derives child keys from the existing MPC master key — it needs no MPC ceremony and completes immediately.

Addresses

GET /v1/profiles/{profile_id}/wallets/{wallet_id}/addresses POST /v1/profiles/{profile_id}/wallets/{wallet_id}/addresses

GET lists deposit addresses, filterable by blockchain_id. POST creates an additional address for a specific blockchain (requires Idempotency_key).

Currently only UTXO blockchains (Bitcoin) support multiple addresses per wallet. Account-based chains (Ethereum, TRON) have one address per wallet.

Balances

GET /v1/profiles/{profile_id}/wallets/{wallet_id}/balances GET /v1/profiles/{profile_id}/wallets/{wallet_id}/balances/{asset_id}

The first endpoint returns balances for the whole wallet, filterable by blockchain_id and/or asset_id; the second returns the balance for one asset.

Asset directory

GET /v1/profiles/{profile_id}/assets

Lists the assets enabled for the profile (native coins and tokens) with their asset_id, symbol, decimals, and blockchain. Paginated via page/page_size.

Blockchain directory

GET /v1/profiles/{profile_id}/blockchains

Lists supported blockchains with their blockchain_id values — use these when creating wallets and addresses. Paginated via page/page_size.