createwalletdescriptor (wallet command)

Bitcoin Core 28.0 RPC

createwalletdescriptor "type" ( {"internal":bool,"hdkey":"str",...} )

Creates the wallet's descriptor for the given address type. The address type must be one that the wallet does not already have a descriptor for.

Requires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.

Arguments

1. type       (string, required) The address type the descriptor will produce. Options are "legacy", "p2sh-segwit", "bech32", and "bech32m".
2. options    (json object, optional) Options object that can be used to pass named arguments, listed below.

Named Arguments:
internal    (boolean, optional, default=Both external and internal will be generated unless this parameter is specified) Whether to only make one descriptor that is internal (if parameter is true) or external (if parameter is false)
hdkey       (string, optional, default=The HD key used by all other active descriptors) The HD key that the wallet knows the private key of, listed using 'gethdkeys', to use for this descriptor's key

Result

{                (json object)
  "descs" : [    (json array) The public descriptors that were added to the wallet
    "str",       (string)
    ...
  ]
}

Examples

> bitcoin-cli createwalletdescriptor bech32m
> curl --user myusername --data-binary '{"jsonrpc": "2.0", "id": "curltest", "method": "createwalletdescriptor", "params": [bech32m]}' -H 'content-type: application/json' http://127.0.0.1:8332/