Create Wallet

Creates a new wallet associated with the specified blockchain network. Returns a wallet entity that contains network information, metadata, and signing key details.

HTTP request
POST /wallets
Authorization requirements
Header Type Required Description
Authorization string Yes Bearer token used to authenticate the request. See Authentication flows for instructions on generating this token.
X-DFNS-USERACTION string Yes User action signature used to authorize change-inducing requests. See User Action Signing flows for instructions on generating this signature.
Request body
Field Type Required Description
network enum (string) Yes The blockchain network on which the wallet will be created. Supported values include Ethereum, Bitcoin, Solana, Cardano, and many others.
name string No A user-defined nickname for the wallet. Maximum length: 100 characters.
signingKey object No Configuration options for the wallet’s underlying signing key. See Signing Key documentation for child attributes.
delegateTo string No The ID of the end user to whom this wallet will be delegated. When set, only that user can operate the wallet. Required length: 1 to 64 characters.
delayDelegation boolean No Indicates whether the wallet should be created now and delegated later. Default: false.
externalId string No Maximum length: 100 characters.
tags array of strings No A list of tags to associate with the new wallet. Requires the Wallets:Tags:Add permission. Maximum length: 10.
validatorId string No The validator on which the wallet should be created for Canton-based networks. Required length: 1 to 64 characters.
curl --request POST \
  --url https://api.digitalassets.ibm.com/wallets \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'X-DFNS-USERACTION: <api-key>' \
  --data '
{
  "network": "BitcoinSignet",
  "signingKey": {
    "scheme": "Schnorr"
  }
}
'
Response
200: Success

Returns the created wallet entity.

Example response:

{
  "id": "wa-1f04s-lqc9q-xxxxxxxxxxxxxxxx",
  "network": "Ethereum",
  "address": "0x00e3495cf6af59008f22ffaf32d4c92ac33dac47",
  "name": "trading hot wallet",
  "signingKey": {
    "id": "key-6ece3-9l565-xxxxxxxxxxxxxxxx",
    "scheme": "ECDSA",
    "curve": "secp256k1",
    "publicKey": "e2375c8c9e87bfcd0be8f29d76c818cabacd51584f72cb2222d49a13b036d84d3d"
  },
  "status": "Active",
  "dateCreated": "2023-04-14T20:41:28.715Z",
  "custodial": true,
  "tags": []
}