Create a new vault
Create a new vault with automatic cryptographic key generation. The system generates keys via KMS (Key Management Service) and derives an Ethereum-compatible blockchain address automatically.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Human-readable vault name |
type | string | Yes | Must be HSM (currently only HSM vaults are supported) |
status | string | No | active (default) or inactive |
groupName | string | No | Group label for organizing vaults (max 100 chars) |
tags | array | No | Array of string tags for filtering (each max 50 chars) |
bsb | string | No | Bank State Branch code for fiat integrations (max 10 chars) |
accountNumber | string | No | Bank account number for fiat integrations (max 20 chars) |
Vault Types
| Type | Description | Status |
|---|---|---|
| HSM | Hardware Security Module — keys stored in dedicated secure hardware with FIPS 140-2 compliance | Available |
| MPC | Multi-Party Computation — key shares distributed across multiple parties for enhanced security | Coming Soon |
Vault Creation Process
- Validates request (name and type required)
- Generates cryptographic keys via KMS
- Derives Ethereum-compatible blockchain address from public key
- Subscribes vault address to blockchain listeners for incoming transaction monitoring
Response
Returns the created vault with:
id— Unique vault UUIDaddress— Derived Ethereum address (0x...)publicKey— Vault's public keysigningKeyVersion— KMS key version referenceassets— Empty array (no assets initially)createdAt,updatedAt— Timestamps
Required Permission
vaults:create
Create a new vault
Create a new vault with automatic cryptographic key generation. The system generates keys via KMS (Key Management Service) and derives an Ethereum-compatible blockchain address automatically.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Human-readable vault name |
type | string | Yes | Must be HSM (currently only HSM vaults are supported) |
status | string | No | active (default) or inactive |
groupName | string | No | Group label for organizing vaults (max 100 chars) |
tags | array | No | Array of string tags for filtering (each max 50 chars) |
bsb | string | No | Bank State Branch code for fiat integrations (max 10 chars) |
accountNumber | string | No | Bank account number for fiat integrations (max 20 chars) |
Vault Types
| Type | Description | Status |
|---|---|---|
| HSM | Hardware Security Module — keys stored in dedicated secure hardware with FIPS 140-2 compliance | Available |
| MPC | Multi-Party Computation — key shares distributed across multiple parties for enhanced security | Coming Soon |
Vault Creation Process
- Validates request (name and type required)
- Generates cryptographic keys via KMS
- Derives Ethereum-compatible blockchain address from public key
- Subscribes vault address to blockchain listeners for incoming transaction monitoring
Response
Returns the created vault with:
id— Unique vault UUIDaddress— Derived Ethereum address (0x...)publicKey— Vault's public keysigningKeyVersion— KMS key version referenceassets— Empty array (no assets initially)createdAt,updatedAt— Timestamps
Required Permission
vaults:create