Skip to main content

Wallet Groups

Wallet groups allow you to logically organize wallets for better management and organization.
Wallet group endpoints are currently on /v1/. They are unaffected by the v1-to-v2 migration.

Create Wallet Group

Creates a new wallet group for organizing wallets.
cURL
Response:

Request Parameters

string
Body
Optional identifier for the wallet group. Useful for organizing wallets by customer, project, or environment.

Response Fields

string
Unique identifier for the created wallet group. Use this when creating wallets.
integer
Unix timestamp (UTC) when the wallet group was created.
integer
Unix timestamp (UTC) when the wallet group was last updated.

List Wallet Groups

Retrieve all wallet groups for your application.
cURL
Response:

Response Fields

array
Array of wallet group objects, each containing the same fields as the create response.

Wallet Management

Create Wallet

Create a new wallet for a user. In v2, the wallet is cryptographically bound to the user’s identity via auth_jwt. Returns an access_key that you must store securely for all subsequent operations.
cURL
Response:

Request Parameters

string
required
Body
The user’s JWT from your identity provider. The enclave binds the wallet to this identity at creation time.
string
required
Body
Target blockchain network. Values: BTC_MAINNET, BTC_TESTNET, BTC_REGTEST for Bitcoin; SOL_MAINNET, SOL_TESTNET for Solana; all other values create an EVM wallet.
string
Body
UUID of the wallet group to organize this wallet under.
string
Body
Optional identifier for the wallet (e.g., user ID, customer ID).

Response Fields

string
Unique wallet identifier. Use this as wallet_id for all subsequent operations.
string
The wallet’s public address on the specified network.
string
Key shard required for all signing and key-reveal operations. Store securely in your database.
Store access_key securely in your database. Unlike v1, v2 wallets do not have a recovery_key — recovery is handled via your identity provider’s JWT.