Skip to content

Instantly share code, notes, and snippets.

@cf
Created February 16, 2024 09:48
Show Gist options
  • Save cf/1ef7de17147f659c60d3174ba4441556 to your computer and use it in GitHub Desktop.
Save cf/1ef7de17147f659c60d3174ba4441556 to your computer and use it in GitHub Desktop.
Bitcoin RPC Command Schemas (Dumped by serializing all the RPCHelpMan in Bitcoin Core)
[
{
"name": "abandontransaction",
"description": "\nMark in-wallet transaction <txid> as abandoned\nThis will mark this transaction and all its in-wallet descendants as abandoned which will allow\nfor their inputs to be respent. It can be used to replace \"stuck\" or evicted transactions.\nIt only works on transactions which are not included in a block and are not currently in the mempool.\nIt has no effect on transactions which are already abandoned.\n",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d",
"1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d"
]
},
{
"name": "abortrescan",
"description": "\nStops current wallet rescan triggered by an RPC call, e.g. by an importprivkey call.\nNote: Use \"getwalletinfo\" to query the scanning progress.\n",
"args": [],
"examples": [
"mykey"
]
},
{
"name": "addconnection",
"description": "\nOpen an outbound connection to a specified node. This RPC is for testing only.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The IP address and port to attempt connecting to.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"connection_type"
],
"type": "STR",
"optional": false,
"description": "Type of connection to open (\"outbound-full-relay\", \"block-relay-only\", \"addr-fetch\" or \"feeler\").",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"v2transport"
],
"type": "BOOL",
"optional": false,
"description": "Attempt to connect using BIP324 v2 transport protocol",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"192.168.0.6:8333\" \"outbound-full-relay\" true",
"\"192.168.0.6:8333\" \"outbound-full-relay\" true"
]
},
{
"name": "addmultisigaddress",
"description": "\nAdd an nrequired-to-sign multisignature address to the wallet. Requires a new wallet backup.\nEach key is a Bitcoin address or hex-encoded public key.\nThis functionality is only intended for use with non-watchonly addresses.\nSee `importaddress` for watchonly p2sh address support.\nIf 'label' is specified, assign address to that label.\nNote: This command is only compatible with legacy wallets.\n",
"args": [
{
"names": [
"nrequired"
],
"type": "NUM",
"optional": false,
"description": "The number of required signatures out of the n keys or addresses.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"keys"
],
"type": "ARR",
"optional": false,
"description": "The bitcoin addresses or hex-encoded public keys",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"key"
],
"type": "STR",
"optional": true,
"description": "bitcoin address or hex-encoded public key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"label"
],
"type": "STR",
"optional": true,
"description": "A label to assign the addresses to.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"address_type"
],
"type": "STR",
"optional": true,
"description": "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"2 \"[\\\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\\\",\\\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\\\"]\"",
"2, \"[\\\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\\\",\\\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\\\"]\""
]
},
{
"name": "addnode",
"description": "\nAttempts to add or remove a node from the addnode list.\nOr try a connection to a node once.\nNodes added using addnode (or -connect) are protected from DoS disconnection and are not required to be\nfull nodes/support SegWit as other outbound peers are (though such peers will not be synced from).\nAddnode connections are limited to 8 at a time and are counted separately from the -maxconnections limit.\n",
"args": [
{
"names": [
"node"
],
"type": "STR",
"optional": false,
"description": "The address of the peer to connect to",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"command"
],
"type": "STR",
"optional": false,
"description": "'add' to add a node to the list, 'remove' to remove a node from the list, 'onetry' to try a connection to the node once",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"v2transport"
],
"type": "BOOL",
"optional": true,
"description": "Attempt to connect using BIP324 v2 transport protocol (ignored for 'remove' command)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"192.168.0.6:8333\" \"onetry\" true",
"\"192.168.0.6:8333\", \"onetry\" true"
]
},
{
"name": "addpeeraddress",
"description": "\nAdd the address of a potential peer to the address manager. This RPC is for testing only.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The IP address of the peer",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"port"
],
"type": "NUM",
"optional": false,
"description": "The port of the peer",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"tried"
],
"type": "BOOL",
"optional": true,
"description": "If true, attempt to add the peer to the tried addresses table",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"1.2.3.4\" 8333 true",
"\"1.2.3.4\", 8333, true"
]
},
{
"name": "analyzepsbt",
"description": "\nAnalyzes and provides information about the current status of a PSBT and its inputs\n",
"args": [
{
"names": [
"psbt"
],
"type": "STR",
"optional": false,
"description": "A base64 string of a PSBT",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"psbt"
]
},
{
"name": "backupwallet",
"description": "\nSafely copies the current wallet file to the specified destination, which can either be a directory or a path with a filename.\n",
"args": [
{
"names": [
"destination"
],
"type": "STR",
"optional": false,
"description": "The destination directory or file",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"backup.dat",
"backup.dat"
]
},
{
"name": "bumpfee",
"description": "\nBumps the fee of an opt-in-RBF transaction T, replacing it with a new transaction B.\nAn opt-in RBF transaction with the given txid must be in the wallet.\nThe command will pay the additional fee by reducing change outputs or adding inputs when necessary.\nIt may add a new change output if one does not already exist.\nAll inputs in the original transaction will be included in the replacement transaction.\nThe command will fail if the wallet or mempool contains a transaction that spends one of T's outputs.\nBy default, the new fee will be calculated automatically using the estimatesmartfee RPC.\nThe user can specify a confirmation target for estimatesmartfee.\nAlternatively, the user can specify a fee rate in sat/vB for the new transaction.\nAt a minimum, the new fee rate must be high enough to pay an additional new relay fee (incrementalfee\nreturned by getnetworkinfo) to enter the node's mempool.\n* WARNING: before version 0.21, fee_rate was in BTC/kvB. As of 0.21, fee_rate is in sat/vB. *\n",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The txid to be bumped",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "\nSpecify a fee rate in sat/vB instead of relying on the built-in fee estimator.\nMust be at least 1.000 sat/vB higher than the current transaction fee rate.\nWARNING: before version 0.21, fee_rate was in BTC/kvB. As of 0.21, fee_rate is in sat/vB.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Whether the new transaction should still be\nmarked bip-125 replaceable. If true, the sequence numbers in the transaction will\nbe left unchanged from the original. If false, any input sequence numbers in the\noriginal transaction that were less than 0xfffffffe will be increased to 0xfffffffe\nso the new transaction will not be explicitly bip-125 replaceable (though it may\nstill be replaceable in practice, for example if it has unconfirmed ancestors which\nare replaceable).\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"outputs"
],
"type": "ARR",
"optional": true,
"description": "The outputs specified as key-value pairs.\nEach key may only appear once, i.e. there can only be one 'data' output, and no address may be duplicated.\nAt least one output of either type must be specified.\nCannot be provided if 'original_change_index' is specified.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ_USER_KEYS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "AMOUNT",
"optional": false,
"description": "A key-value pair. The key (string) is the bitcoin address,\nthe value (float or string) is the amount in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"data"
],
"type": "STR_HEX",
"optional": false,
"description": "A key-value pair. The key must be \"data\", the value is hex-encoded data",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"original_change_index"
],
"type": "NUM",
"optional": true,
"description": "The 0-based index of the change output on the original transaction. The indicated output will be recycled into the new change output on the bumped transaction. The remainder after paying the recipients and fees will be sent to the output script of the original change output. The change output’s amount can increase if bumping the transaction adds new inputs, otherwise it will decrease. Cannot be used in combination with the 'outputs' option.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"<txid>"
]
},
{
"name": "clearbanned",
"description": "\nClear all banned IPs.\n",
"args": [],
"examples": []
},
{
"name": "combinepsbt",
"description": "\nCombine multiple partially signed Bitcoin transactions into one transaction.\nImplements the Combiner role.\n",
"args": [
{
"names": [
"txs"
],
"type": "ARR",
"optional": false,
"description": "The base64 strings of partially signed transactions",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"psbt"
],
"type": "STR",
"optional": true,
"description": "A base64 string of a PSBT",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
[
"mybase64_1",
"mybase64_2",
"mybase64_3"
]
]
},
{
"name": "combinerawtransaction",
"description": "\nCombine multiple partially signed transactions into one transaction.\nThe combined transaction may be another partially signed transaction or a \nfully signed transaction.",
"args": [
{
"names": [
"txs"
],
"type": "ARR",
"optional": false,
"description": "The hex strings of partially signed transactions",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"hexstring"
],
"type": "STR_HEX",
"optional": true,
"description": "A hex-encoded raw transaction",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
[
"myhex1",
"myhex2",
"myhex3"
]
]
},
{
"name": "converttopsbt",
"description": "\nConverts a network serialized transaction to a PSBT. This should be used only with createrawtransaction and fundrawtransaction\ncreatepsbt and walletcreatefundedpsbt should be used for new applications.\n",
"args": [
{
"names": [
"hexstring"
],
"type": "STR_HEX",
"optional": false,
"description": "The hex string of a raw transaction",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"permitsigdata"
],
"type": "BOOL",
"optional": true,
"description": "If true, any signatures in the input will be discarded and conversion\n will continue. If false, RPC will fail if any signatures are present.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"iswitness"
],
"type": "BOOL",
"optional": true,
"description": "Whether the transaction hex is a serialized witness transaction.\nIf iswitness is not present, heuristic tests will be used in decoding.\nIf true, only witness deserialization will be tried.\nIf false, only non-witness deserialization will be tried.\nThis boolean should reflect whether the transaction has inputs\n(e.g. fully valid, or on-chain transactions), if known by the caller.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"[{\\\"txid\\\":\\\"myid\\\",\\\"vout\\\":0}]\" \"[{\\\"data\\\":\\\"00010203\\\"}]\"",
"rawtransaction"
]
},
{
"name": "createmultisig",
"description": "\nCreates a multi-signature address with n signature of m keys required.\nIt returns a json object with the address and redeemScript.\n",
"args": [
{
"names": [
"nrequired"
],
"type": "NUM",
"optional": false,
"description": "The number of required signatures out of the n keys.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"keys"
],
"type": "ARR",
"optional": false,
"description": "The hex-encoded public keys.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"key"
],
"type": "STR_HEX",
"optional": true,
"description": "The hex-encoded public key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"address_type"
],
"type": "STR",
"optional": true,
"description": "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"2 \"[\\\"03789ed0bb717d88f7d321a368d905e7430207ebbd82bd342cf11ae157a7ace5fd\\\",\\\"03dbc6764b8884a92e871274b87583e6d5c2a58819473e17e107ef3f6aa5a61626\\\"]\"",
"2, [\"03789ed0bb717d88f7d321a368d905e7430207ebbd82bd342cf11ae157a7ace5fd\",\"03dbc6764b8884a92e871274b87583e6d5c2a58819473e17e107ef3f6aa5a61626\"]"
]
},
{
"name": "createpsbt",
"description": "\nCreates a transaction in the Partially Signed Transaction format.\nImplements the Creator role.\n",
"args": [
{
"names": [
"inputs"
],
"type": "ARR",
"optional": false,
"description": "The inputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"sequence"
],
"type": "NUM",
"optional": true,
"description": "The sequence number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"outputs"
],
"type": "ARR",
"optional": false,
"description": "The outputs specified as key-value pairs.\nEach key may only appear once, i.e. there can only be one 'data' output, and no address may be duplicated.\nAt least one output of either type must be specified.\nFor compatibility reasons, a dictionary, which holds the key-value pairs directly, is also\n accepted as second parameter.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ_USER_KEYS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "AMOUNT",
"optional": false,
"description": "A key-value pair. The key (string) is the bitcoin address, the value (float or string) is the amount in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"data"
],
"type": "STR_HEX",
"optional": false,
"description": "A key-value pair. The key must be \"data\", the value is hex-encoded data",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"locktime"
],
"type": "NUM",
"optional": true,
"description": "Raw locktime. Non-0 value also locktime-activates inputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Marks this transaction as BIP125-replaceable.\nAllows this transaction to be replaced by a transaction with higher fees. If provided, it is an error if explicit sequence numbers are incompatible.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"[{\\\"txid\\\":\\\"myid\\\",\\\"vout\\\":0}]\" \"[{\\\"data\\\":\\\"00010203\\\"}]\""
]
},
{
"name": "createrawtransaction",
"description": "\nCreate a transaction spending the given inputs and creating new outputs.\nOutputs can be addresses or data.\nReturns hex-encoded raw transaction.\nNote that the transaction's inputs are not signed, and\nit is not stored in the wallet or transmitted to the network.\n",
"args": [
{
"names": [
"inputs"
],
"type": "ARR",
"optional": false,
"description": "The inputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"sequence"
],
"type": "NUM",
"optional": true,
"description": "The sequence number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"outputs"
],
"type": "ARR",
"optional": false,
"description": "The outputs specified as key-value pairs.\nEach key may only appear once, i.e. there can only be one 'data' output, and no address may be duplicated.\nAt least one output of either type must be specified.\nFor compatibility reasons, a dictionary, which holds the key-value pairs directly, is also\n accepted as second parameter.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ_USER_KEYS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "AMOUNT",
"optional": false,
"description": "A key-value pair. The key (string) is the bitcoin address, the value (float or string) is the amount in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"data"
],
"type": "STR_HEX",
"optional": false,
"description": "A key-value pair. The key must be \"data\", the value is hex-encoded data",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"locktime"
],
"type": "NUM",
"optional": true,
"description": "Raw locktime. Non-0 value also locktime-activates inputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Marks this transaction as BIP125-replaceable.\nAllows this transaction to be replaced by a transaction with higher fees. If provided, it is an error if explicit sequence numbers are incompatible.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"[{\\\"txid\\\":\\\"myid\\\",\\\"vout\\\":0}]\" \"[{\\\"address\\\":0.01}]\"",
"\"[{\\\"txid\\\":\\\"myid\\\",\\\"vout\\\":0}]\" \"[{\\\"data\\\":\\\"00010203\\\"}]\"",
"\"[{\\\"txid\\\":\\\"myid\\\",\\\"vout\\\":0}]\", \"[{\\\"address\\\":0.01}]\"",
"\"[{\\\"txid\\\":\\\"myid\\\",\\\"vout\\\":0}]\", \"[{\\\"data\\\":\\\"00010203\\\"}]\""
]
},
{
"name": "createwallet",
"description": "\nCreates and loads a new wallet.\n",
"args": [
{
"names": [
"wallet_name"
],
"type": "STR",
"optional": false,
"description": "The name for the new wallet. If this is a path, the wallet will be created at the path location.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"disable_private_keys"
],
"type": "BOOL",
"optional": true,
"description": "Disable the possibility of private keys (only watchonlys are possible in this mode).",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"blank"
],
"type": "BOOL",
"optional": true,
"description": "Create a blank wallet. A blank wallet has no keys or HD seed. One can be set using sethdseed.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"passphrase"
],
"type": "STR",
"optional": true,
"description": "Encrypt the wallet with this passphrase.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"avoid_reuse"
],
"type": "BOOL",
"optional": true,
"description": "Keep track of coin reuse, and treat dirty and clean coins differently with privacy considerations in mind.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"descriptors"
],
"type": "BOOL",
"optional": true,
"description": "Create a native descriptor wallet. The wallet will use descriptors internally to handle address creation. Setting to \"false\" will create a legacy wallet; This is only possible with the -deprecatedrpc=create_bdb setting because, the legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"load_on_startup"
],
"type": "BOOL",
"optional": true,
"description": "Save wallet name to persistent settings and load on startup. True to add wallet to startup list, false to remove, null to leave unchanged.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"external_signer"
],
"type": "BOOL",
"optional": true,
"description": "Use an external signer such as a hardware wallet. Requires -signer to be configured. Wallet creation will fail if keys cannot be fetched. Requires disable_private_keys and descriptors set to true.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"testwallet",
"testwallet",
{
"wallet_name": "descriptors",
"avoid_reuse": true,
"descriptors": true,
"load_on_startup": true
},
{
"wallet_name": "descriptors",
"avoid_reuse": true,
"descriptors": true,
"load_on_startup": true
}
]
},
{
"name": "decodepsbt",
"description": "Return a JSON object representing the serialized, base64-encoded partially signed Bitcoin transaction.",
"args": [
{
"names": [
"psbt"
],
"type": "STR",
"optional": false,
"description": "The PSBT base64 string",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"psbt"
]
},
{
"name": "decoderawtransaction",
"description": "Return a JSON object representing the serialized, hex-encoded transaction.",
"args": [
{
"names": [
"hexstring"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction hex string",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"iswitness"
],
"type": "BOOL",
"optional": true,
"description": "Whether the transaction hex is a serialized witness transaction.\nIf iswitness is not present, heuristic tests will be used in decoding.\nIf true, only witness deserialization will be tried.\nIf false, only non-witness deserialization will be tried.\nThis boolean should reflect whether the transaction has inputs\n(e.g. fully valid, or on-chain transactions), if known by the caller.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"hexstring",
"hexstring"
]
},
{
"name": "decodescript",
"description": "\nDecode a hex-encoded script.\n",
"args": [
{
"names": [
"hexstring"
],
"type": "STR_HEX",
"optional": false,
"description": "the hex-encoded script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"hexstring",
"hexstring"
]
},
{
"name": "deriveaddresses",
"description": "\nDerives one or more addresses corresponding to an output descriptor.\nExamples of output descriptors are:\n pkh(<pubkey>) P2PKH outputs for the given pubkey\n wpkh(<pubkey>) Native segwit P2PKH outputs for the given pubkey\n sh(multi(<n>,<pubkey>,<pubkey>,...)) P2SH-multisig outputs for the given threshold and pubkeys\n raw(<hex script>) Outputs whose scriptPubKey equals the specified hex scripts\n tr(<pubkey>,multi_a(<n>,<pubkey>,<pubkey>,...)) P2TR-multisig outputs for the given threshold and pubkeys\n\nIn the above, <pubkey> either refers to a fixed public key in hexadecimal notation, or to an xpub/xprv optionally followed by one\nor more path elements separated by \"/\", where \"h\" represents a hardened child key.\nFor more information on output descriptors, see the documentation in the doc/descriptors.md file.\n",
"args": [
{
"names": [
"descriptor"
],
"type": "STR",
"optional": false,
"description": "The descriptor.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"range"
],
"type": "RANGE",
"optional": true,
"description": "If a ranged descriptor is used, this specifies the end or the range (in [begin,end] notation) to derive.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"wpkh([d34db33f/84h/0h/0h]xpub6DJ2dNUysrn5Vt36jH2KLBT2i1auw1tTSSomg8PhqNiUtx8QX2SvC9nrHu81fT41fvDUnhMjEzQgXnQjKEu3oaqMSzhSrHMxyyoEAmUHQbY/0/*)#cjjspncu\" \"[0,2]\"",
"\"wpkh([d34db33f/84h/0h/0h]xpub6DJ2dNUysrn5Vt36jH2KLBT2i1auw1tTSSomg8PhqNiUtx8QX2SvC9nrHu81fT41fvDUnhMjEzQgXnQjKEu3oaqMSzhSrHMxyyoEAmUHQbY/0/*)#cjjspncu\", \"[0,2]\""
]
},
{
"name": "descriptorprocesspsbt",
"description": "\nUpdate all segwit inputs in a PSBT with information from output descriptors, the UTXO set or the mempool. \nThen, sign the inputs we are able to with information from the output descriptors. ",
"args": [
{
"names": [
"psbt"
],
"type": "STR",
"optional": false,
"description": "The transaction base64 string",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"descriptors"
],
"type": "ARR",
"optional": false,
"description": "An array of either strings or objects",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "STR",
"optional": true,
"description": "An output descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"type": "OBJ",
"optional": true,
"description": "An object with an output descriptor and extra information",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"desc"
],
"type": "STR",
"optional": false,
"description": "An output descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"range"
],
"type": "RANGE",
"optional": true,
"description": "Up to what index HD chains should be explored (either end or [begin,end])",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"sighashtype"
],
"type": "STR",
"optional": true,
"description": "The signature hash type to sign with if not specified by the PSBT. Must be one of\n \"DEFAULT\"\n \"ALL\"\n \"NONE\"\n \"SINGLE\"\n \"ALL|ANYONECANPAY\"\n \"NONE|ANYONECANPAY\"\n \"SINGLE|ANYONECANPAY\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"bip32derivs"
],
"type": "BOOL",
"optional": true,
"description": "Include BIP 32 derivation paths for public keys if we know them",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"finalize"
],
"type": "BOOL",
"optional": true,
"description": "Also finalize inputs if possible",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"psbt\" \"[\\\"descriptor1\\\", \\\"descriptor2\\\"]\"",
"\"psbt\" \"[{\\\"desc\\\":\\\"mydescriptor\\\", \\\"range\\\":21}]\""
]
},
{
"name": "disconnectnode",
"description": "\nImmediately disconnects from the specified peer node.\n\nStrictly one out of 'address' and 'nodeid' can be provided to identify the node.\n\nTo disconnect by nodeid, either set 'address' to the empty string, or call using the named 'nodeid' argument only.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": true,
"description": "The IP address/port of the node",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"nodeid"
],
"type": "NUM",
"optional": true,
"description": "The node ID (see getpeerinfo for node IDs)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"192.168.0.6:8333",
"\"\" 1",
"192.168.0.6:8333",
"\"\", 1"
]
},
{
"name": "dumpprivkey",
"description": "\nReveals the private key corresponding to 'address'.\nThen the importprivkey can be used with this output\nNote: This command is only compatible with legacy wallets.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The bitcoin address for the private key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"myaddress",
"mykey",
"myaddress"
]
},
{
"name": "dumptxoutset",
"description": "Write the serialized UTXO set to disk.",
"args": [
{
"names": [
"path"
],
"type": "STR",
"optional": false,
"description": "Path to the output file. If relative, will be prefixed by datadir.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"utxo.dat"
]
},
{
"name": "dumpwallet",
"description": "\nDumps all wallet keys in a human-readable format to a server-side file. This does not allow overwriting existing files.\nImported scripts are included in the dumpfile, but corresponding BIP173 addresses, etc. may not be added automatically by importwallet.\nNote that if your wallet contains keys which are not derived from your HD seed (e.g. imported keys), these are not covered by\nonly backing up the seed itself, and must be backed up too (e.g. ensure you back up the whole dumpfile).\nNote: This command is only compatible with legacy wallets.\n",
"args": [
{
"names": [
"filename"
],
"type": "STR",
"optional": false,
"description": "The filename with path (absolute path recommended)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"test",
"test"
]
},
{
"name": "echo",
"description": "\nSimply echo back the input arguments. This command is for testing.\n\nIt will return an internal bug report when arg9='trigger_internal_bug' is passed.\n\nThe difference between echo and echojson is that echojson has argument conversion enabled in the client-side table in bitcoin-cli and the GUI. There is no server-side difference.",
"args": [
{
"names": [
"arg0"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg1"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg2"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg3"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg4"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg5"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg6"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg7"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg8"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg9"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "echoipc",
"description": "\nEcho back the input argument, passing it through a spawned process in a multiprocess build.\nThis command is for testing.\n",
"args": [
{
"names": [
"arg"
],
"type": "STR",
"optional": false,
"description": "The string to echo",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"Hello world",
"Hello world"
]
},
{
"name": "echojson",
"description": "\nSimply echo back the input arguments. This command is for testing.\n\nIt will return an internal bug report when arg9='trigger_internal_bug' is passed.\n\nThe difference between echo and echojson is that echojson has argument conversion enabled in the client-side table in bitcoin-cli and the GUI. There is no server-side difference.",
"args": [
{
"names": [
"arg0"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg1"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg2"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg3"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg4"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg5"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg6"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg7"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg8"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"arg9"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "encryptwallet",
"description": "\nEncrypts the wallet with 'passphrase'. This is for first time encryption.\nAfter this, any calls that interact with private keys such as sending or signing \nwill require the passphrase to be set prior the making these calls.\nUse the walletpassphrase call for this, and then walletlock call.\nIf the wallet is already encrypted, use the walletpassphrasechange call.\n** IMPORTANT **\nFor security reasons, the encryption process will generate a new HD seed, resulting\nin the creation of a fresh set of active descriptors. Therefore, it is crucial to\nsecurely back up the newly generated wallet file using the backupwallet RPC.\n",
"args": [
{
"names": [
"passphrase"
],
"type": "STR",
"optional": false,
"description": "The pass phrase to encrypt the wallet with. It must be at least 1 character, but should be long.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"my pass phrase",
"my pass phrase",
"\"address\" \"test message\"",
"my pass phrase"
]
},
{
"name": "enumeratesigners",
"description": "Returns a list of external signers from -signer.",
"args": [],
"examples": []
},
{
"name": "estimaterawfee",
"description": "\nWARNING: This interface is unstable and may disappear or change!\n\nWARNING: This is an advanced API call that is tightly coupled to the specific\nimplementation of fee estimation. The parameters it can be called with\nand the results it returns will change if the internal implementation changes.\n\nEstimates the approximate fee per kilobyte needed for a transaction to begin\nconfirmation within conf_target blocks if possible. Uses virtual transaction size as\ndefined in BIP 141 (witness data is discounted).\n",
"args": [
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": false,
"description": "Confirmation target in blocks (1 - 1008)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"threshold"
],
"type": "NUM",
"optional": true,
"description": "The proportion of transactions in a given feerate range that must have been\nconfirmed within conf_target in order to consider those feerates as high enough and proceed to check\nlower buckets.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"6 0.9"
]
},
{
"name": "estimatesmartfee",
"description": "\nEstimates the approximate fee per kilobyte needed for a transaction to begin\nconfirmation within conf_target blocks if possible and return the number of blocks\nfor which the estimate is valid. Uses virtual transaction size as defined\nin BIP 141 (witness data is discounted).\n",
"args": [
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": false,
"description": "Confirmation target in blocks (1 - 1008)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode.\nWhether to return a more conservative estimate which also satisfies\na longer history. A conservative estimate potentially returns a\nhigher feerate and is more likely to be sufficient for the desired\ntarget, but is not as responsive to short term drops in the\nprevailing fee market. Must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
6,
6
]
},
{
"name": "finalizepsbt",
"description": "Finalize the inputs of a PSBT. If the transaction is fully signed, it will produce a\nnetwork serialized transaction which can be broadcast with sendrawtransaction. Otherwise a PSBT will be\ncreated which has the final_scriptSig and final_scriptWitness fields filled for inputs that are complete.\nImplements the Finalizer and Extractor roles.\n",
"args": [
{
"names": [
"psbt"
],
"type": "STR",
"optional": false,
"description": "A base64 string of a PSBT",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"extract"
],
"type": "BOOL",
"optional": true,
"description": "If true and the transaction is complete,\n extract and return the complete transaction in normal network serialization instead of the PSBT.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"psbt"
]
},
{
"name": "fundrawtransaction",
"description": "\nIf the transaction has no inputs, they will be automatically selected to meet its out value.\nIt will add at most one change output to the outputs.\nNo existing outputs will be modified unless \"subtractFeeFromOutputs\" is specified.\nNote that inputs which were signed may need to be resigned after completion since in/outputs have been added.\nThe inputs added will not be signed, use signrawtransactionwithkey\nor signrawtransactionwithwallet for that.\nAll existing inputs must either have their previous output transaction be in the wallet\nor be in the UTXO set. Solving data must be provided for non-wallet inputs.\nNote that all inputs selected must be of standard form and P2SH scripts must be\nin the wallet using importaddress or addmultisigaddress (to calculate fees).\nYou can see whether this is the case by checking the \"solvable\" field in the listunspent output.\nOnly pay-to-pubkey, multisig, and P2SH versions thereof are currently supported for watch-only\n",
"args": [
{
"names": [
"hexstring"
],
"type": "STR_HEX",
"optional": false,
"description": "The hex string of the raw transaction",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"description": "For backward compatibility: passing in a true instead of an object will result in {\"includeWatching\":true}",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"add_inputs"
],
"type": "BOOL",
"optional": true,
"description": "For a transaction with existing inputs, automatically include more if they are not enough.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_unsafe"
],
"type": "BOOL",
"optional": true,
"description": "Include inputs that are not safe to spend (unconfirmed transactions from outside keys and unconfirmed replacement transactions).\nWarning: the resulting transaction may become invalid if one of the unsafe inputs disappears.\nIf that happens, you will need to fund the transaction with different inputs and republish it.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "If add_inputs is specified, require inputs with at least this many confirmations.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxconf"
],
"type": "NUM",
"optional": true,
"description": "If add_inputs is specified, require inputs with at most this many confirmations.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"changeAddress"
],
"type": "STR",
"optional": true,
"description": "The bitcoin address to receive the change",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"changePosition"
],
"type": "NUM",
"optional": true,
"description": "The index of the change output",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"change_type"
],
"type": "STR",
"optional": true,
"description": "The output type to use. Only valid if changeAddress is not specified. Options are \"legacy\", \"p2sh-segwit\", \"bech32\", and \"bech32m\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"includeWatching"
],
"type": "BOOL",
"optional": true,
"description": "Also select inputs which are watch only.\nOnly solvable inputs can be used. Watch-only destinations are solvable if the public key and/or output script was imported,\ne.g. with 'importpubkey' or 'importmulti' with the 'pubkeys' or 'desc' field.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"lockUnspents"
],
"type": "BOOL",
"optional": true,
"description": "Lock selected unspent outputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in sat/vB.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"feeRate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in BTC/kvB.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"subtractFeeFromOutputs"
],
"type": "ARR",
"optional": true,
"description": "The integers.\nThe fee will be equally deducted from the amount of each specified output.\nThose recipients will receive less bitcoins than you enter in their corresponding amount field.\nIf no outputs are specified here, the sender pays the fee.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"vout_index"
],
"type": "NUM",
"optional": true,
"description": "The zero-based output index, before a change output is added.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"input_weights"
],
"type": "ARR",
"optional": true,
"description": "Inputs and their corresponding weights",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output index",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"weight"
],
"type": "NUM",
"optional": false,
"description": "The maximum weight for this input, including the weight of the outpoint and sequence number. Note that serialized signature sizes are not guaranteed to be consistent, so the maximum DER signatures size of 73 bytes should be used when considering ECDSA signatures.Remember to convert serialized sizes to weight units when necessary.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Marks this transaction as BIP125-replaceable.\nAllows this transaction to be replaced by a transaction with higher fees",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"solving_data"
],
"type": "OBJ",
"optional": true,
"description": "Keys and scripts needed for producing a final transaction with a dummy signature.\nUsed for fee estimation during coin selection.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubkeys"
],
"type": "ARR",
"optional": true,
"description": "Public keys involved in this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubkey"
],
"type": "STR_HEX",
"optional": true,
"description": "A public key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"scripts"
],
"type": "ARR",
"optional": true,
"description": "Scripts involved in this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"script"
],
"type": "STR_HEX",
"optional": true,
"description": "A script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"descriptors"
],
"type": "ARR",
"optional": true,
"description": "Descriptors that provide solving data for this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"descriptor"
],
"type": "STR",
"optional": true,
"description": "A descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
}
]
},
{
"names": [
"iswitness"
],
"type": "BOOL",
"optional": true,
"description": "Whether the transaction hex is a serialized witness transaction.\nIf iswitness is not present, heuristic tests will be used in decoding.\nIf true, only witness deserialization will be tried.\nIf false, only non-witness deserialization will be tried.\nThis boolean should reflect whether the transaction has inputs\n(e.g. fully valid, or on-chain transactions), if known by the caller.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"[]\" \"{\\\"myaddress\\\":0.01}\"",
"rawtransactionhex",
"fundedtransactionhex",
"signedtransactionhex"
]
},
{
"name": "generate",
"description": "has been replaced by the -generate cli option. Refer to -help for more information.",
"args": [],
"examples": []
},
{
"name": "generateblock",
"description": "Mine a set of ordered transactions to a specified address or descriptor and return the block hash.",
"args": [
{
"names": [
"output"
],
"type": "STR",
"optional": false,
"description": "The address or descriptor to send the newly generated bitcoin to.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"transactions"
],
"type": "ARR",
"optional": false,
"description": "An array of hex strings which are either txids or raw transactions.\nTxids must reference transactions currently in the mempool.\nAll transactions must be valid and in valid order, otherwise the block will be rejected.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"rawtx/txid"
],
"type": "STR_HEX",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"submit"
],
"type": "BOOL",
"optional": true,
"description": "Whether to submit the block before the RPC call returns or to return it as hex.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"myaddress\" '[\"rawtx\", \"mempool_txid\"]'"
]
},
{
"name": "generatetoaddress",
"description": "Mine to a specified address and return the block hashes.",
"args": [
{
"names": [
"nblocks"
],
"type": "NUM",
"optional": false,
"description": "How many blocks are generated.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The address to send the newly generated bitcoin to.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxtries"
],
"type": "NUM",
"optional": true,
"description": "How many iterations to try.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"11 \"myaddress\""
]
},
{
"name": "generatetodescriptor",
"description": "Mine to a specified descriptor and return the block hashes.",
"args": [
{
"names": [
"num_blocks"
],
"type": "NUM",
"optional": false,
"description": "How many blocks are generated.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"descriptor"
],
"type": "STR",
"optional": false,
"description": "The descriptor to send the newly generated bitcoin to.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxtries"
],
"type": "NUM",
"optional": true,
"description": "How many iterations to try.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"11 \"mydesc\""
]
},
{
"name": "getaddednodeinfo",
"description": "\nReturns information about the given added node, or all added nodes\n(note that onetry addnodes are not listed here)\n",
"args": [
{
"names": [
"node"
],
"type": "STR",
"optional": true,
"description": "If provided, return information about this specific node, otherwise all nodes are returned.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"192.168.0.201",
"192.168.0.201"
]
},
{
"name": "getaddressesbylabel",
"description": "\nReturns the list of addresses assigned the specified label.\n",
"args": [
{
"names": [
"label"
],
"type": "STR",
"optional": false,
"description": "The label.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"tabby",
"tabby"
]
},
{
"name": "getaddressinfo",
"description": "\nReturn information about the given bitcoin address.\nSome of the information will only be present if the address is in the active wallet.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The bitcoin address for which to get information.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl",
"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl"
]
},
{
"name": "getaddrmaninfo",
"description": "\nProvides information about the node's address manager by returning the number of addresses in the `new` and `tried` tables and their sum for all networks.\n",
"args": [],
"examples": []
},
{
"name": "getbalance",
"description": "\nReturns the total available balance.\nThe available balance is what the wallet considers currently spendable, and is\nthus affected by options which limit spendability such as -spendzeroconfchange.\n",
"args": [
{
"names": [
"dummy"
],
"type": "STR",
"optional": true,
"description": "Remains for backward compatibility. Must be excluded or set to \"*\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "Only include transactions confirmed at least this many times.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_watchonly"
],
"type": "BOOL",
"optional": true,
"description": "Also include balance in watch-only addresses (see 'importaddress')",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"avoid_reuse"
],
"type": "BOOL",
"optional": true,
"description": "(only available if avoid_reuse wallet flag is set) Do not include balance in dirty outputs; addresses are considered dirty if they have previously been used in a transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"*\" 6",
"\"*\", 6"
]
},
{
"name": "getbalances",
"description": "Returns an object with all balances in BTC.\n",
"args": [],
"examples": []
},
{
"name": "getbestblockhash",
"description": "\nReturns the hash of the best (tip) block in the most-work fully-validated chain.\n",
"args": [],
"examples": []
},
{
"name": "getblock",
"description": "\nIf verbosity is 0, returns a string that is serialized, hex-encoded data for block 'hash'.\nIf verbosity is 1, returns an Object with information about block <hash>.\nIf verbosity is 2, returns an Object with information about block <hash> and information about each transaction.\nIf verbosity is 3, returns an Object with information about block <hash> and information about each transaction, including prevout information for inputs (only for unpruned blocks in the current best chain).\n",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": false,
"description": "The block hash",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"verbosity",
"verbose"
],
"type": "NUM",
"optional": true,
"description": "0 for hex-encoded data, 1 for a JSON object, 2 for JSON object with transaction data, and 3 for JSON object with transaction data including prevout information for inputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09",
"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09"
]
},
{
"name": "getblockchaininfo",
"description": "Returns an object containing various state info regarding blockchain processing.\n",
"args": [],
"examples": []
},
{
"name": "getblockcount",
"description": "\nReturns the height of the most-work fully-validated chain.\nThe genesis block has height 0.\n",
"args": [],
"examples": []
},
{
"name": "getblockfilter",
"description": "\nRetrieve a BIP 157 content filter for a particular block.\n",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": false,
"description": "The hash of the block",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"filtertype"
],
"type": "STR",
"optional": true,
"description": "The type name of the filter",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09\" \"basic\"",
"\"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09\", \"basic\""
]
},
{
"name": "getblockfrompeer",
"description": "Attempt to fetch block from a given peer.\n\nWe must have the header for this block, e.g. using submitheader.\nSubsequent calls for the same block may cause the response from the previous peer to be ignored.\nPeers generally ignore requests for a stale block that they never fully verified, or one that is more than a month old.\nWhen a peer does not respond with a block, we will disconnect.\nNote: The block could be re-pruned as soon as it is received.\n\nReturns an empty JSON object if the request was successfully scheduled.",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": false,
"description": "The block hash to try to fetch",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"peer_id"
],
"type": "NUM",
"optional": false,
"description": "The peer to fetch it from (see getpeerinfo for peer IDs)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09\" 0",
"\"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09\" 0"
]
},
{
"name": "getblockhash",
"description": "\nReturns hash of block in best-block-chain at height provided.\n",
"args": [
{
"names": [
"height"
],
"type": "NUM",
"optional": false,
"description": "The height index",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
1000,
1000
]
},
{
"name": "getblockheader",
"description": "\nIf verbose is false, returns a string that is serialized, hex-encoded data for blockheader 'hash'.\nIf verbose is true, returns an Object with information about blockheader <hash>.\n",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": false,
"description": "The block hash",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"verbose"
],
"type": "BOOL",
"optional": true,
"description": "true for a json object, false for the hex-encoded data",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09",
"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09"
]
},
{
"name": "getblockstats",
"description": "\nCompute per block statistics for a given window. All amounts are in satoshis.\nIt won't work for some heights with pruning.\n",
"args": [
{
"names": [
"hash_or_height"
],
"type": "NUM",
"optional": false,
"description": "The block hash or height of the target block",
"opts": {
"type_str": [
"",
"string or numeric"
],
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"stats"
],
"type": "ARR",
"optional": true,
"description": "Values to plot (see result below)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"height"
],
"type": "STR",
"optional": true,
"description": "Selected statistic",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"time"
],
"type": "STR",
"optional": true,
"description": "Selected statistic",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"'\"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09\"' '[\"minfeerate\",\"avgfeerate\"]'",
"1000 '[\"minfeerate\",\"avgfeerate\"]'",
"\"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09\", [\"minfeerate\",\"avgfeerate\"]",
"1000, [\"minfeerate\",\"avgfeerate\"]"
]
},
{
"name": "getblocktemplate",
"description": "\nIf the request parameters include a 'mode' key, that is used to explicitly select between the default 'template' request or a 'proposal'.\nIt returns data needed to construct a block to work on.\nFor full specification, see BIPs 22, 23, 9, and 145:\n https://github.com/bitcoin/bips/blob/master/bip-0022.mediawiki\n https://github.com/bitcoin/bips/blob/master/bip-0023.mediawiki\n https://github.com/bitcoin/bips/blob/master/bip-0009.mediawiki#getblocktemplate_changes\n https://github.com/bitcoin/bips/blob/master/bip-0145.mediawiki\n",
"args": [
{
"names": [
"template_request"
],
"type": "OBJ",
"optional": false,
"description": "Format of the template",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"mode"
],
"type": "STR",
"optional": true,
"description": "This must be set to \"template\", \"proposal\" (see BIP 23), or omitted",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"capabilities"
],
"type": "ARR",
"optional": true,
"description": "A list of strings",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"str"
],
"type": "STR",
"optional": true,
"description": "client side supported feature, 'longpoll', 'coinbasevalue', 'proposal', 'serverlist', 'workid'",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"rules"
],
"type": "ARR",
"optional": false,
"description": "A list of strings",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"segwit"
],
"type": "STR",
"optional": false,
"description": "(literal) indicates client side segwit support",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"str"
],
"type": "STR",
"optional": true,
"description": "other client side supported softfork deployment",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"longpollid"
],
"type": "STR",
"optional": true,
"description": "delay processing request until the result would vary significantly from the \"longpollid\" of a prior template",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"data"
],
"type": "STR_HEX",
"optional": true,
"description": "proposed block data to check, encoded in hexadecimal; valid only for mode=\"proposal\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
{
"rules": [
"segwit"
]
},
{
"rules": [
"segwit"
]
}
]
},
{
"name": "getchainstates",
"description": "\nReturn information about chainstates.\n",
"args": [],
"examples": []
},
{
"name": "getchaintips",
"description": "Return information about all known tips in the block tree, including the main chain as well as orphaned branches.\n",
"args": [],
"examples": []
},
{
"name": "getchaintxstats",
"description": "\nCompute statistics about the total number and rate of transactions in the chain.\n",
"args": [
{
"names": [
"nblocks"
],
"type": "NUM",
"optional": true,
"description": "Size of the window in number of blocks",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": true,
"description": "The hash of the block that ends the window.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
2016
]
},
{
"name": "getconnectioncount",
"description": "\nReturns the number of connections to other nodes.\n",
"args": [],
"examples": []
},
{
"name": "getdeploymentinfo",
"description": "Returns an object containing various state info regarding deployments of consensus changes.",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": true,
"description": "The block hash at which to query deployment state",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "getdescriptorinfo",
"description": "\nAnalyses a descriptor.\n",
"args": [
{
"names": [
"descriptor"
],
"type": "STR",
"optional": false,
"description": "The descriptor.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"wpkh([d34db33f/84h/0h/0h]0279be667ef9dcbbac55a06295Ce870b07029Bfcdb2dce28d959f2815b16f81798)",
"wpkh([d34db33f/84h/0h/0h]0279be667ef9dcbbac55a06295Ce870b07029Bfcdb2dce28d959f2815b16f81798)"
]
},
{
"name": "getdifficulty",
"description": "\nReturns the proof-of-work difficulty as a multiple of the minimum difficulty.\n",
"args": [],
"examples": []
},
{
"name": "getindexinfo",
"description": "\nReturns the status of one or all available indices currently running in the node.\n",
"args": [
{
"names": [
"index_name"
],
"type": "STR",
"optional": true,
"description": "Filter results for an index with a specific name.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"txindex",
"txindex"
]
},
{
"name": "getmemoryinfo",
"description": "Returns an object containing information about memory usage.\n",
"args": [
{
"names": [
"mode"
],
"type": "STR",
"optional": true,
"description": "determines what kind of information is returned.\n - \"stats\" returns general statistics about memory usage in the daemon.\n - \"mallocinfo\" returns an XML string describing low-level heap state (only available if compiled with glibc).",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "getmempoolancestors",
"description": "\nIf txid is in the mempool, returns all in-mempool ancestors.\n",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id (must be in mempool)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"verbose"
],
"type": "BOOL",
"optional": true,
"description": "True for a json object, false for array of transaction ids",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"mytxid",
"mytxid"
]
},
{
"name": "getmempooldescendants",
"description": "\nIf txid is in the mempool, returns all in-mempool descendants.\n",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id (must be in mempool)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"verbose"
],
"type": "BOOL",
"optional": true,
"description": "True for a json object, false for array of transaction ids",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"mytxid",
"mytxid"
]
},
{
"name": "getmempoolentry",
"description": "\nReturns mempool data for given transaction\n",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id (must be in mempool)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"mytxid",
"mytxid"
]
},
{
"name": "getmempoolinfo",
"description": "Returns details on the active state of the TX memory pool.",
"args": [],
"examples": []
},
{
"name": "getmininginfo",
"description": "\nReturns a json object containing mining-related information.",
"args": [],
"examples": []
},
{
"name": "getnettotals",
"description": "Returns information about network traffic, including bytes in, bytes out,\nand current system time.",
"args": [],
"examples": []
},
{
"name": "getnetworkhashps",
"description": "\nReturns the estimated network hashes per second based on the last n blocks.\nPass in [blocks] to override # of blocks, -1 specifies since last difficulty change.\nPass in [height] to estimate the network speed at the time when a certain block was found.\n",
"args": [
{
"names": [
"nblocks"
],
"type": "NUM",
"optional": true,
"description": "The number of previous blocks to calculate estimate from, or -1 for blocks since last difficulty change.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"height"
],
"type": "NUM",
"optional": true,
"description": "To estimate at the time of the given height.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "getnetworkinfo",
"description": "Returns an object containing various state info regarding P2P networking.\n",
"args": [],
"examples": []
},
{
"name": "getnewaddress",
"description": "\nReturns a new Bitcoin address for receiving payments.\nIf 'label' is specified, it is added to the address book \nso payments received with the address will be associated with 'label'.\n",
"args": [
{
"names": [
"label"
],
"type": "STR",
"optional": true,
"description": "The label name for the address to be linked to. It can also be set to the empty string \"\" to represent the default label. The label does not need to exist, it will be created if there is no label by the given name.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"address_type"
],
"type": "STR",
"optional": true,
"description": "The address type to use. Options are \"legacy\", \"p2sh-segwit\", \"bech32\", and \"bech32m\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "getnodeaddresses",
"description": "Return known addresses, after filtering for quality and recency.\nThese can potentially be used to find new peers in the network.\nThe total number of addresses known to the node may be higher.",
"args": [
{
"names": [
"count"
],
"type": "NUM",
"optional": true,
"description": "The maximum number of addresses to return. Specify 0 to return all known addresses.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"network"
],
"type": "STR",
"optional": true,
"description": "Return only addresses of the specified network. Can be one of: ipv4, ipv6, onion, i2p, cjdns.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
8,
"4 \"i2p\"",
"network=onion count=12",
8,
"4, \"i2p\""
]
},
{
"name": "getpeerinfo",
"description": "Returns data about each connected network peer as a json array of objects.",
"args": [],
"examples": []
},
{
"name": "getprioritisedtransactions",
"description": "Returns a map of all user-created (see prioritisetransaction) fee deltas by txid, and whether the tx is present in mempool.",
"args": [],
"examples": []
},
{
"name": "getrawaddrman",
"description": "EXPERIMENTAL warning: this call may be changed in future releases.\n\nReturns information on all address manager entries for the new and tried tables.\n",
"args": [],
"examples": []
},
{
"name": "getrawchangeaddress",
"description": "\nReturns a new Bitcoin address, for receiving change.\nThis is for use with raw transactions, NOT normal use.\n",
"args": [
{
"names": [
"address_type"
],
"type": "STR",
"optional": true,
"description": "The address type to use. Options are \"legacy\", \"p2sh-segwit\", \"bech32\", and \"bech32m\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "getrawmempool",
"description": "\nReturns all transaction ids in memory pool as a json array of string transaction ids.\n\nHint: use getmempoolentry to fetch a specific transaction from the mempool.\n",
"args": [
{
"names": [
"verbose"
],
"type": "BOOL",
"optional": true,
"description": "True for a json object, false for array of transaction ids",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"mempool_sequence"
],
"type": "BOOL",
"optional": true,
"description": "If verbose=false, returns a json object with transaction list and mempool sequence number attached.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
true,
true
]
},
{
"name": "getrawtransaction",
"description": "By default, this call only returns a transaction if it is in the mempool. If -txindex is enabled\nand no blockhash argument is passed, it will return the transaction if it is in the mempool or any block.\nIf a blockhash argument is passed, it will return the transaction if\nthe specified block is available and the transaction is in that block.\n\nHint: Use gettransaction for wallet transactions.\n\nIf verbosity is 0 or omitted, returns the serialized transaction as a hex-encoded string.\nIf verbosity is 1, returns a JSON Object with information about the transaction.\nIf verbosity is 2, returns a JSON Object with information about the transaction, including fee and prevout information.",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"verbosity",
"verbose"
],
"type": "NUM",
"optional": true,
"description": "0 for hex-encoded data, 1 for a JSON object, and 2 for JSON object with fee and prevout",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": true,
"description": "The block in which to look for the transaction",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"mytxid",
"\"mytxid\" 1",
"\"mytxid\", 1",
"\"mytxid\" 0 \"myblockhash\"",
"\"mytxid\" 1 \"myblockhash\"",
"\"mytxid\" 2 \"myblockhash\""
]
},
{
"name": "getreceivedbyaddress",
"description": "\nReturns the total amount received by the given address in transactions with at least minconf confirmations.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The bitcoin address for transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "Only include transactions confirmed at least this many times.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_immature_coinbase"
],
"type": "BOOL",
"optional": true,
"description": "Include immature coinbase transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl",
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" 0",
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" 6",
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" 6 true",
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\", 6"
]
},
{
"name": "getreceivedbylabel",
"description": "\nReturns the total amount received by addresses with <label> in transactions with at least [minconf] confirmations.\n",
"args": [
{
"names": [
"label"
],
"type": "STR",
"optional": false,
"description": "The selected label, may be the default label using \"\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "Only include transactions confirmed at least this many times.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_immature_coinbase"
],
"type": "BOOL",
"optional": true,
"description": "Include immature coinbase transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"",
"\"tabby\" 0",
"\"tabby\" 6",
"\"tabby\" 6 true",
"\"tabby\", 6, true"
]
},
{
"name": "getrpcinfo",
"description": "\nReturns details of the RPC server.\n",
"args": [],
"examples": []
},
{
"name": "gettransaction",
"description": "\nGet detailed information about in-wallet transaction <txid>\n",
"args": [
{
"names": [
"txid"
],
"type": "STR",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_watchonly"
],
"type": "BOOL",
"optional": true,
"description": "Whether to include watch-only addresses in balance calculation and details[]",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"verbose"
],
"type": "BOOL",
"optional": true,
"description": "Whether to include a `decoded` field containing the decoded transaction (equivalent to RPC decoderawtransaction)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d",
"\"1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d\" true",
"\"1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d\" false true",
"1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d"
]
},
{
"name": "gettxout",
"description": "\nReturns details about an unspent transaction output.\n",
"args": [
{
"names": [
"txid"
],
"type": "STR",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"n"
],
"type": "NUM",
"optional": false,
"description": "vout number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_mempool"
],
"type": "BOOL",
"optional": true,
"description": "Whether to include the mempool. Note that an unspent output that is spent in the mempool won't appear.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"txid\" 1",
"\"txid\", 1"
]
},
{
"name": "gettxoutproof",
"description": "\nReturns a hex-encoded proof that \"txid\" was included in a block.\n\nNOTE: By default this function only works sometimes. This is when there is an\nunspent output in the utxo for this transaction. To make it always work,\nyou need to maintain a transaction index, using the -txindex command line option or\nspecify the block in which the transaction is included manually (by blockhash).\n",
"args": [
{
"names": [
"txids"
],
"type": "ARR",
"optional": false,
"description": "The txids to filter",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": true,
"description": "A transaction hash",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": true,
"description": "If specified, looks for txid in the block with this hash",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "gettxoutsetinfo",
"description": "\nReturns statistics about the unspent transaction output set.\nNote this call may take some time if you are not using coinstatsindex.\n",
"args": [
{
"names": [
"hash_type"
],
"type": "STR",
"optional": true,
"description": "Which UTXO set hash should be calculated. Options: 'hash_serialized_3' (the legacy algorithm), 'muhash', 'none'.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"hash_or_height"
],
"type": "NUM",
"optional": true,
"description": "The block hash or height of the target height (only available with coinstatsindex).",
"opts": {
"type_str": [
"",
"string or numeric"
],
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"use_index"
],
"type": "BOOL",
"optional": true,
"description": "Use coinstatsindex, if available.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"none",
"\"none\" 1000",
"\"none\" '\"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09\"'",
"hash_type='muhash' use_index='false'",
"none",
"\"none\", 1000",
"\"none\", \"00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09\""
]
},
{
"name": "gettxspendingprevout",
"description": "Scans the mempool to find transactions spending any of the given outputs",
"args": [
{
"names": [
"outputs"
],
"type": "ARR",
"optional": false,
"description": "The transaction outputs that we want to check, and within each, the txid (string) vout (numeric).",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
}
],
"examples": [
"[{\"txid\":\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\",\"vout\":3}]",
"[{\"txid\":\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\",\"vout\":3}]"
]
},
{
"name": "getunconfirmedbalance",
"description": "DEPRECATED\nIdentical to getbalances().mine.untrusted_pending\n",
"args": [],
"examples": []
},
{
"name": "getwalletinfo",
"description": "Returns an object containing various wallet state info.\n",
"args": [],
"examples": []
},
{
"name": "getzmqnotifications",
"description": "\nReturns information about the active ZeroMQ notifications.\n",
"args": [],
"examples": []
},
{
"name": "help",
"description": "\nList all commands, or get help for a specified command.\n",
"args": [
{
"names": [
"command"
],
"type": "STR",
"optional": true,
"description": "The command to get help on",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "importaddress",
"description": "\nAdds an address or script (in hex) that can be watched as if it were in your wallet but cannot be used to spend. Requires a new wallet backup.\n\nNote: This call can take over an hour to complete if rescan is true, during that time, other rpc calls\nmay report that the imported address exists but related transactions are still missing, leading to temporarily incorrect/bogus balances and unspent outputs until rescan completes.\nThe rescan parameter can be set to false if the key was never used to create transactions. If it is set to false,\nbut the key was used to create transactions, rescanblockchain needs to be called with the appropriate block range.\nIf you have the full public key, you should call importpubkey instead of this.\nHint: use importmulti to import more than one address.\n\nNote: If you import a non-standard raw script in hex form, outputs sending to it will be treated\nas change, and not show up in many RPCs.\nNote: Use \"getwalletinfo\" to query the scanning progress.\nNote: This command is only compatible with legacy wallets. Use \"importdescriptors\" for descriptor wallets.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The Bitcoin address (or hex-encoded script)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"label"
],
"type": "STR",
"optional": true,
"description": "An optional label",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"rescan"
],
"type": "BOOL",
"optional": true,
"description": "Scan the chain and mempool for wallet transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"p2sh"
],
"type": "BOOL",
"optional": true,
"description": "Add the P2SH version of the script as well",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"myaddress",
"\"myaddress\" \"testing\" false",
"\"myaddress\", \"testing\", false"
]
},
{
"name": "importdescriptors",
"description": "\nImport descriptors. This will trigger a rescan of the blockchain based on the earliest timestamp of all descriptors being imported. Requires a new wallet backup.\n\nNote: This call can take over an hour to complete if using an early timestamp; during that time, other rpc calls\nmay report that the imported keys, addresses or scripts exist but related transactions are still missing.\nThe rescan is significantly faster if block filters are available (using startup option \"-blockfilterindex=1\").\n",
"args": [
{
"names": [
"requests"
],
"type": "ARR",
"optional": false,
"description": "Data to be imported",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"desc"
],
"type": "STR",
"optional": false,
"description": "Descriptor to import.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"active"
],
"type": "BOOL",
"optional": true,
"description": "Set this descriptor to be the active descriptor for the corresponding output type/externality",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"range"
],
"type": "RANGE",
"optional": true,
"description": "If a ranged descriptor is used, this specifies the end or the range (in the form [begin,end]) to import",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"next_index"
],
"type": "NUM",
"optional": true,
"description": "If a ranged descriptor is set to active, this specifies the next index to generate addresses from",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"timestamp"
],
"type": "NUM",
"optional": false,
"description": "Time from which to start rescanning the blockchain for this descriptor, in UNIX epoch time\nUse the string \"now\" to substitute the current synced blockchain time.\n\"now\" can be specified to bypass scanning, for outputs which are known to never have been used, and\n0 can be specified to scan the entire blockchain. Blocks up to 2 hours before the earliest timestamp\nof all descriptors being imported will be scanned as well as the mempool.",
"opts": {
"type_str": [
"timestamp | \"now\"",
"integer / string"
],
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"internal"
],
"type": "BOOL",
"optional": true,
"description": "Whether matching outputs should be treated as not incoming payments (e.g. change)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"label"
],
"type": "STR",
"optional": true,
"description": "Label to assign to the address, only allowed with internal=false. Disabled for ranged descriptors",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
}
],
"examples": [
[
{
"desc": "<my descriptor>",
"timestamp": 1455191478,
"internal": true
},
{
"desc": "<my descriptor 2>",
"label": "example 2",
"timestamp": 1455191480
}
],
[
{
"desc": "<my descriptor>",
"timestamp": 1455191478,
"active": true,
"range": [
0,
100
],
"label": "<my bech32 wallet>"
}
]
]
},
{
"name": "importmempool",
"description": "Import a mempool.dat file and attempt to add its contents to the mempool.\nWarning: Importing untrusted files is dangerous, especially if metadata from the file is taken over.",
"args": [
{
"names": [
"filepath"
],
"type": "STR",
"optional": false,
"description": "The mempool file",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"use_current_time"
],
"type": "BOOL",
"optional": true,
"description": "Whether to use the current system time or use the entry time metadata from the mempool file.\nWarning: Importing untrusted metadata may lead to unexpected issues and undesirable behavior.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"apply_fee_delta_priority"
],
"type": "BOOL",
"optional": true,
"description": "Whether to apply the fee delta metadata from the mempool file.\nIt will be added to any existing fee deltas.\nThe fee delta can be set by the prioritisetransaction RPC.\nWarning: Importing untrusted metadata may lead to unexpected issues and undesirable behavior.\nOnly set this bool if you understand what it does.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"apply_unbroadcast_set"
],
"type": "BOOL",
"optional": true,
"description": "Whether to apply the unbroadcast set metadata from the mempool file.\nWarning: Importing untrusted metadata may lead to unexpected issues and undesirable behavior.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"/path/to/mempool.dat",
"/path/to/mempool.dat"
]
},
{
"name": "importmulti",
"description": "\nImport addresses/scripts (with private or public keys, redeem script (P2SH)), optionally rescanning the blockchain from the earliest creation time of the imported scripts. Requires a new wallet backup.\nIf an address/script is imported without all of the private keys required to spend from that address, it will be watchonly. The 'watchonly' option must be set to true in this case or a warning will be returned.\nConversely, if all the private keys are provided and the address/script is spendable, the watchonly option must be set to false, or a warning will be returned.\n\nNote: This call can take over an hour to complete if rescan is true, during that time, other rpc calls\nmay report that the imported keys, addresses or scripts exist but related transactions are still missing.\nThe rescan parameter can be set to false if the key was never used to create transactions. If it is set to false,\nbut the key was used to create transactions, rescanblockchain needs to be called with the appropriate block range.\nNote: Use \"getwalletinfo\" to query the scanning progress.\nNote: This command is only compatible with legacy wallets. Use \"importdescriptors\" for descriptor wallets.\n",
"args": [
{
"names": [
"requests"
],
"type": "ARR",
"optional": false,
"description": "Data to be imported",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"desc"
],
"type": "STR",
"optional": true,
"description": "Descriptor to import. If using descriptor, do not also provide address/scriptPubKey, scripts, or pubkeys",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"scriptPubKey"
],
"type": "STR",
"optional": false,
"description": "Type of scriptPubKey (string for script, json for address). Should not be provided if using a descriptor",
"opts": {
"type_str": [
"\"<script>\" | { \"address\":\"<address>\" }",
"string / json"
],
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"timestamp"
],
"type": "NUM",
"optional": false,
"description": "Creation time of the key expressed in UNIX epoch time,\nor the string \"now\" to substitute the current synced blockchain time. The timestamp of the oldest\nkey will determine how far back blockchain rescans need to begin for missing wallet transactions.\n\"now\" can be specified to bypass scanning, for keys which are known to never have been used, and\n0 can be specified to scan the entire blockchain. Blocks up to 2 hours before the earliest key\ncreation time of all keys being imported by the importmulti call will be scanned.",
"opts": {
"type_str": [
"timestamp | \"now\"",
"integer / string"
],
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"redeemscript"
],
"type": "STR",
"optional": true,
"description": "Allowed only if the scriptPubKey is a P2SH or P2SH-P2WSH address/scriptPubKey",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"witnessscript"
],
"type": "STR",
"optional": true,
"description": "Allowed only if the scriptPubKey is a P2SH-P2WSH or P2WSH address/scriptPubKey",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"pubkeys"
],
"type": "ARR",
"optional": true,
"description": "Array of strings giving pubkeys to import. They must occur in P2PKH or P2WPKH scripts. They are not required when the private key is also provided (see the \"keys\" argument).",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubKey"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"keys"
],
"type": "ARR",
"optional": true,
"description": "Array of strings giving private keys to import. The corresponding public keys must occur in the output or redeemscript.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"key"
],
"type": "STR",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"range"
],
"type": "RANGE",
"optional": true,
"description": "If a ranged descriptor is used, this specifies the end or the range (in the form [begin,end]) to import",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"internal"
],
"type": "BOOL",
"optional": true,
"description": "Stating whether matching outputs should be treated as not incoming payments (also known as change)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"watchonly"
],
"type": "BOOL",
"optional": true,
"description": "Stating whether matching outputs should be considered watchonly.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"label"
],
"type": "STR",
"optional": true,
"description": "Label to assign to the address, only allowed with internal=false",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"keypool"
],
"type": "BOOL",
"optional": true,
"description": "Stating whether imported public keys should be added to the keypool for when users request new addresses. Only allowed when wallet private keys are disabled",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"rescan"
],
"type": "BOOL",
"optional": true,
"description": "Scan the chain and mempool for wallet transactions after all imports.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
[
{
"scriptPubKey": {
"address": "<my address>"
},
"timestamp": 1455191478
},
{
"scriptPubKey": {
"address": "<my 2nd address>"
},
"label": "example 2",
"timestamp": 1455191480
}
],
"'[{ \"scriptPubKey\": { \"address\": \"<my address>\" }, \"timestamp\":1455191478 }]' '{ \"rescan\": false}'"
]
},
{
"name": "importprivkey",
"description": "\nAdds a private key (as returned by dumpprivkey) to your wallet. Requires a new wallet backup.\nHint: use importmulti to import more than one private key.\n\nNote: This call can take over an hour to complete if rescan is true, during that time, other rpc calls\nmay report that the imported key exists but related transactions are still missing, leading to temporarily incorrect/bogus balances and unspent outputs until rescan completes.\nThe rescan parameter can be set to false if the key was never used to create transactions. If it is set to false,\nbut the key was used to create transactions, rescanblockchain needs to be called with the appropriate block range.\nNote: Use \"getwalletinfo\" to query the scanning progress.\nNote: This command is only compatible with legacy wallets. Use \"importdescriptors\" with \"combo(X)\" for descriptor wallets.\n",
"args": [
{
"names": [
"privkey"
],
"type": "STR",
"optional": false,
"description": "The private key (see dumpprivkey)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"label"
],
"type": "STR",
"optional": true,
"description": "An optional label",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"rescan"
],
"type": "BOOL",
"optional": true,
"description": "Scan the chain and mempool for wallet transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"myaddress",
"mykey",
"\"mykey\" \"testing\" false",
"\"mykey\" \"\" false",
"\"mykey\", \"testing\", false"
]
},
{
"name": "importprunedfunds",
"description": "\nImports funds without rescan. Corresponding address or script must previously be included in wallet. Aimed towards pruned wallets. The end-user is responsible to import additional transactions that subsequently spend the imported outputs or rescan after the point in the blockchain the transaction is included.\n",
"args": [
{
"names": [
"rawtransaction"
],
"type": "STR_HEX",
"optional": false,
"description": "A raw transaction in hex funding an already-existing address in wallet",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"txoutproof"
],
"type": "STR_HEX",
"optional": false,
"description": "The hex output from gettxoutproof that contains the transaction",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "importpubkey",
"description": "\nAdds a public key (in hex) that can be watched as if it were in your wallet but cannot be used to spend. Requires a new wallet backup.\nHint: use importmulti to import more than one public key.\n\nNote: This call can take over an hour to complete if rescan is true, during that time, other rpc calls\nmay report that the imported pubkey exists but related transactions are still missing, leading to temporarily incorrect/bogus balances and unspent outputs until rescan completes.\nThe rescan parameter can be set to false if the key was never used to create transactions. If it is set to false,\nbut the key was used to create transactions, rescanblockchain needs to be called with the appropriate block range.\nNote: Use \"getwalletinfo\" to query the scanning progress.\nNote: This command is only compatible with legacy wallets. Use \"importdescriptors\" with \"combo(X)\" for descriptor wallets.\n",
"args": [
{
"names": [
"pubkey"
],
"type": "STR",
"optional": false,
"description": "The hex-encoded public key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"label"
],
"type": "STR",
"optional": true,
"description": "An optional label",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"rescan"
],
"type": "BOOL",
"optional": true,
"description": "Scan the chain and mempool for wallet transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"mypubkey",
"\"mypubkey\" \"testing\" false",
"\"mypubkey\", \"testing\", false"
]
},
{
"name": "importwallet",
"description": "\nImports keys from a wallet dump file (see dumpwallet). Requires a new wallet backup to include imported keys.\nNote: Blockchain and Mempool will be rescanned after a successful import. Use \"getwalletinfo\" to query the scanning progress.\nNote: This command is only compatible with legacy wallets.\n",
"args": [
{
"names": [
"filename"
],
"type": "STR",
"optional": false,
"description": "The wallet file",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"test",
"test",
"test"
]
},
{
"name": "invalidateblock",
"description": "\nPermanently marks a block as invalid, as if it violated a consensus rule.\n",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": false,
"description": "the hash of the block to mark as invalid",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"blockhash",
"blockhash"
]
},
{
"name": "joinpsbts",
"description": "\nJoins multiple distinct PSBTs with different inputs and outputs into one PSBT with inputs and outputs from all of the PSBTs\nNo input in any of the PSBTs can be in more than one of the PSBTs.\n",
"args": [
{
"names": [
"txs"
],
"type": "ARR",
"optional": false,
"description": "The base64 strings of partially signed transactions",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"psbt"
],
"type": "STR",
"optional": false,
"description": "A base64 string of a PSBT",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"psbt"
]
},
{
"name": "keypoolrefill",
"description": "\nFills the keypool.\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.\n",
"args": [
{
"names": [
"newsize"
],
"type": "NUM",
"optional": true,
"description": "The new keypool size",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "listaddressgroupings",
"description": "\nLists groups of addresses which have had their common ownership\nmade public by common use as inputs or as the resulting change\nin past transactions\n",
"args": [],
"examples": []
},
{
"name": "listbanned",
"description": "\nList all manually banned IPs/Subnets.\n",
"args": [],
"examples": []
},
{
"name": "listdescriptors",
"description": "\nList descriptors imported into a descriptor-enabled wallet.\n",
"args": [
{
"names": [
"private"
],
"type": "BOOL",
"optional": true,
"description": "Show private descriptors.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
true,
true
]
},
{
"name": "listlabels",
"description": "\nReturns the list of all labels, or labels that are assigned to addresses with a specific purpose.\n",
"args": [
{
"names": [
"purpose"
],
"type": "STR",
"optional": true,
"description": "Address purpose to list labels for ('send','receive'). An empty string is the same as not providing this argument.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"receive",
"send",
"receive"
]
},
{
"name": "listlockunspent",
"description": "\nReturns list of temporarily unspendable outputs.\nSee the lockunspent call to lock and unlock transactions for spending.\n",
"args": [],
"examples": [
"false \"[{\\\"txid\\\":\\\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\\\",\\\"vout\\\":1}]\"",
"true \"[{\\\"txid\\\":\\\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\\\",\\\"vout\\\":1}]\""
]
},
{
"name": "listreceivedbyaddress",
"description": "\nList balances by receiving address.\n",
"args": [
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "The minimum number of confirmations before payments are included.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_empty"
],
"type": "BOOL",
"optional": true,
"description": "Whether to include addresses that haven't received any payments.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_watchonly"
],
"type": "BOOL",
"optional": true,
"description": "Whether to include watch-only addresses (see 'importaddress')",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"address_filter"
],
"type": "STR",
"optional": true,
"description": "If present and non-empty, only return information on this address.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_immature_coinbase"
],
"type": "BOOL",
"optional": true,
"description": "Include immature coinbase transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"6 true",
"6 true true \"\" true",
"6, true, true",
"6, true, true, \"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\", true"
]
},
{
"name": "listreceivedbylabel",
"description": "\nList received transactions by label.\n",
"args": [
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "The minimum number of confirmations before payments are included.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_empty"
],
"type": "BOOL",
"optional": true,
"description": "Whether to include labels that haven't received any payments.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_watchonly"
],
"type": "BOOL",
"optional": true,
"description": "Whether to include watch-only addresses (see 'importaddress')",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_immature_coinbase"
],
"type": "BOOL",
"optional": true,
"description": "Include immature coinbase transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"6 true",
"6, true, true, true"
]
},
{
"name": "listsinceblock",
"description": "\nGet all transactions in blocks since block [blockhash], or all transactions if omitted.\nIf \"blockhash\" is no longer a part of the main chain, transactions from the fork point onward are included.\nAdditionally, if include_removed is set, transactions affecting the wallet which were removed are returned in the \"removed\" array.\n",
"args": [
{
"names": [
"blockhash"
],
"type": "STR",
"optional": true,
"description": "If set, the block hash to list transactions since, otherwise list all transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"target_confirmations"
],
"type": "NUM",
"optional": true,
"description": "Return the nth block hash from the main chain. e.g. 1 would mean the best block hash. Note: this is not used as a filter, but only affects [lastblock] in the return value",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_watchonly"
],
"type": "BOOL",
"optional": true,
"description": "Include transactions to watch-only addresses (see 'importaddress')",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_removed"
],
"type": "BOOL",
"optional": true,
"description": "Show transactions that were removed due to a reorg in the \"removed\" array\n(not guaranteed to work on pruned nodes)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_change"
],
"type": "BOOL",
"optional": true,
"description": "Also add entries for change outputs.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"label"
],
"type": "STR",
"optional": true,
"description": "Return only incoming transactions paying to addresses with the specified label.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"000000000000000bacf66f7497b7dc45ef753ee9a7d38571037cdb1a57f663ad\" 6",
"\"000000000000000bacf66f7497b7dc45ef753ee9a7d38571037cdb1a57f663ad\", 6"
]
},
{
"name": "listtransactions",
"description": "\nIf a label name is provided, this will return only incoming transactions paying to addresses with the specified label.\n\nReturns up to 'count' most recent transactions skipping the first 'from' transactions.\n",
"args": [
{
"names": [
"label",
"dummy"
],
"type": "STR",
"optional": true,
"description": "If set, should be a valid label name to return only incoming transactions\nwith the specified label, or \"*\" to disable filtering and return all transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"count"
],
"type": "NUM",
"optional": true,
"description": "The number of transactions to return",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"skip"
],
"type": "NUM",
"optional": true,
"description": "The number of transactions to skip",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_watchonly"
],
"type": "BOOL",
"optional": true,
"description": "Include transactions to watch-only addresses (see 'importaddress')",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"*\" 20 100",
"\"*\", 20, 100"
]
},
{
"name": "listunspent",
"description": "\nReturns array of unspent transaction outputs\nwith between minconf and maxconf (inclusive) confirmations.\nOptionally filter to only include txouts paid to specified addresses.\n",
"args": [
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "The minimum confirmations to filter",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxconf"
],
"type": "NUM",
"optional": true,
"description": "The maximum confirmations to filter",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"addresses"
],
"type": "ARR",
"optional": true,
"description": "The bitcoin addresses to filter",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "STR",
"optional": true,
"description": "bitcoin address",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"include_unsafe"
],
"type": "BOOL",
"optional": true,
"description": "Include outputs that are not safe to spend\nSee description of \"safe\" attribute below.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"query_options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"minimumAmount"
],
"type": "AMOUNT",
"optional": true,
"description": "Minimum value of each UTXO in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maximumAmount"
],
"type": "AMOUNT",
"optional": true,
"description": "Maximum value of each UTXO in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maximumCount"
],
"type": "NUM",
"optional": true,
"description": "Maximum number of UTXOs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"minimumSumAmount"
],
"type": "AMOUNT",
"optional": true,
"description": "Minimum sum value of all UTXOs in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_immature_coinbase"
],
"type": "BOOL",
"optional": true,
"description": "Include immature coinbase UTXOs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"6 9999999 \"[\\\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\\\",\\\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\\\"]\"",
"6, 9999999 \"[\\\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\\\",\\\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\\\"]\"",
"6 9999999 '[]' true '{ \"minimumAmount\": 0.005 }'",
"6, 9999999, [] , true, { \"minimumAmount\": 0.005 } "
]
},
{
"name": "listwalletdir",
"description": "Returns a list of wallets in the wallet directory.\n",
"args": [],
"examples": []
},
{
"name": "listwallets",
"description": "Returns a list of currently loaded wallets.\nFor full information on the wallet, use \"getwalletinfo\"\n",
"args": [],
"examples": []
},
{
"name": "loadtxoutset",
"description": "Load the serialized UTXO set from disk.\nOnce this snapshot is loaded, its contents will be deserialized into a second chainstate data structure, which is then used to sync to the network's tip. Meanwhile, the original chainstate will complete the initial block download process in the background, eventually validating up to the block that the snapshot is based upon.\n\nThe result is a usable bitcoind instance that is current with the network tip in a matter of minutes rather than hours. UTXO snapshot are typically obtained from third-party sources (HTTP, torrent, etc.) which is reasonable since their contents are always checked by hash.\n\nYou can find more information on this process in the `assumeutxo` design document (<https://github.com/bitcoin/bitcoin/blob/master/doc/design/assumeutxo.md>).",
"args": [
{
"names": [
"path"
],
"type": "STR",
"optional": false,
"description": "path to the snapshot file. If relative, will be prefixed by datadir.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"utxo.dat"
]
},
{
"name": "loadwallet",
"description": "\nLoads a wallet from a wallet file or directory.\nNote that all wallet command-line options used when starting bitcoind will be\napplied to the new wallet.\n",
"args": [
{
"names": [
"filename"
],
"type": "STR",
"optional": false,
"description": "The wallet directory or .dat file.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"load_on_startup"
],
"type": "BOOL",
"optional": true,
"description": "Save wallet name to persistent settings and load on startup. True to add wallet to startup list, false to remove, null to leave unchanged.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"test.dat",
"test.dat"
]
},
{
"name": "lockunspent",
"description": "\nUpdates list of temporarily unspendable outputs.\nTemporarily lock (unlock=false) or unlock (unlock=true) specified transaction outputs.\nIf no transaction outputs are specified when unlocking then all current locked transaction outputs are unlocked.\nA locked transaction output will not be chosen by automatic coin selection, when spending bitcoins.\nManually selected coins are automatically unlocked.\nLocks are stored in memory only, unless persistent=true, in which case they will be written to the\nwallet database and loaded on node start. Unwritten (persistent=false) locks are always cleared\n(by virtue of process exit) when a node stops or fails. Unlocking will clear both persistent and not.\nAlso see the listunspent call\n",
"args": [
{
"names": [
"unlock"
],
"type": "BOOL",
"optional": false,
"description": "Whether to unlock (true) or lock (false) the specified transactions",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"transactions"
],
"type": "ARR",
"optional": true,
"description": "The transaction outputs and within each, the txid (string) vout (numeric).",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"persistent"
],
"type": "BOOL",
"optional": true,
"description": "Whether to write/erase this lock in the wallet database, or keep the change in memory only. Ignored for unlocking.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"false \"[{\\\"txid\\\":\\\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\\\",\\\"vout\\\":1}]\"",
"true \"[{\\\"txid\\\":\\\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\\\",\\\"vout\\\":1}]\"",
"false \"[{\\\"txid\\\":\\\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\\\",\\\"vout\\\":1}]\" true",
"false, \"[{\\\"txid\\\":\\\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\\\",\\\"vout\\\":1}]\""
]
},
{
"name": "logging",
"description": "Gets and sets the logging configuration.\nWhen called without an argument, returns the list of categories with status that are currently being debug logged or not.\nWhen called with arguments, adds or removes categories from debug logging and return the lists above.\nThe arguments are evaluated in order \"include\", \"exclude\".\nIf an item is both included and excluded, it will thus end up being excluded.\nThe valid logging categories are: addrman, bench, blockstorage, cmpctblock, coindb, estimatefee, http, i2p, ipc, leveldb, libevent, mempool, mempoolrej, net, proxy, prune, qt, rand, reindex, rpc, scan, selectcoins, tor, txpackages, txreconciliation, util, validation, walletdb, zmq\nIn addition, the following are available as category names with special meanings:\n - \"all\", \"1\" : represent all logging categories.\n - \"none\", \"0\" : even if other logging categories are specified, ignore all of them.\n",
"args": [
{
"names": [
"include"
],
"type": "ARR",
"optional": true,
"description": "The categories to add to debug logging",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"include_category"
],
"type": "STR",
"optional": true,
"description": "the valid logging category",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"exclude"
],
"type": "ARR",
"optional": true,
"description": "The categories to remove from debug logging",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"exclude_category"
],
"type": "STR",
"optional": true,
"description": "the valid logging category",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"\"[\\\"all\\\"]\" \"[\\\"http\\\"]\"",
"[\"all\"], [\"libevent\"]"
]
},
{
"name": "migratewallet",
"description": "EXPERIMENTAL warning: This call may not work as expected and may be changed in future releases\n\nMigrate the wallet to a descriptor wallet.\nA new wallet backup will need to be made.\n\nThe migration process will create a backup of the wallet before migrating. This backup\nfile will be named <wallet name>-<timestamp>.legacy.bak and can be found in the directory\nfor this wallet. In the event of an incorrect migration, the backup can be restored using restorewallet.\nEncrypted wallets must have the passphrase provided as an argument to this call.",
"args": [
{
"names": [
"wallet_name"
],
"type": "STR",
"optional": true,
"description": "The name of the wallet to migrate. If provided both here and in the RPC endpoint, the two must be identical.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"passphrase"
],
"type": "STR",
"optional": true,
"description": "The wallet passphrase",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "mockscheduler",
"description": "\nBump the scheduler into the future (-regtest only)\n",
"args": [
{
"names": [
"delta_time"
],
"type": "NUM",
"optional": false,
"description": "Number of seconds to forward the scheduler into the future.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "newkeypool",
"description": "\nEntirely clears and refills the keypool.\nWARNING: On non-HD wallets, this will require a new backup immediately, to include the new keys.\nWhen restoring a backup of an HD wallet created before the newkeypool command is run, funds received to\nnew addresses may not appear automatically. They have not been lost, but the wallet may not find them.\nThis can be fixed by running the newkeypool command on the backup and then rescanning, so the wallet\nre-generates the required keys.\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.\n",
"args": [],
"examples": []
},
{
"name": "ping",
"description": "\nRequests that a ping be sent to all other nodes, to measure ping time.\nResults provided in getpeerinfo, pingtime and pingwait fields are decimal seconds.\nPing command is handled in queue with all other commands, so it measures processing backlog, not just network ping.\n",
"args": [],
"examples": []
},
{
"name": "preciousblock",
"description": "\nTreats a block as if it were received before others with the same work.\n\nA later preciousblock call can override the effect of an earlier one.\n\nThe effects of preciousblock are not retained across restarts.\n",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": false,
"description": "the hash of the block to mark as precious",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"blockhash",
"blockhash"
]
},
{
"name": "prioritisetransaction",
"description": "Accepts the transaction into mined blocks at a higher (or lower) priority\n",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"dummy"
],
"type": "NUM",
"optional": true,
"description": "API-Compatibility for previous API. Must be zero or null.\n DEPRECATED. For forward compatibility use named arguments and omit this parameter.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_delta"
],
"type": "NUM",
"optional": false,
"description": "The fee value (in satoshis) to add (or subtract, if negative).\n Note, that this value is not a fee rate. It is a value to modify absolute fee of the TX.\n The fee is not actually paid, only the algorithm for selecting transactions into a block\n considers the transaction as it would have paid a higher (or lower) fee.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"txid\" 0.0 10000",
"\"txid\", 0.0, 10000"
]
},
{
"name": "pruneblockchain",
"args": [
{
"names": [
"height"
],
"type": "NUM",
"optional": false,
"description": "The block height to prune up to. May be set to a discrete height, or to a UNIX epoch time\n to prune blocks whose block time is at least 2 hours older than the provided timestamp.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
1000,
1000
]
},
{
"name": "psbtbumpfee",
"description": "\nBumps the fee of an opt-in-RBF transaction T, replacing it with a new transaction B.\nReturns a PSBT instead of creating and signing a new transaction.\nAn opt-in RBF transaction with the given txid must be in the wallet.\nThe command will pay the additional fee by reducing change outputs or adding inputs when necessary.\nIt may add a new change output if one does not already exist.\nAll inputs in the original transaction will be included in the replacement transaction.\nThe command will fail if the wallet or mempool contains a transaction that spends one of T's outputs.\nBy default, the new fee will be calculated automatically using the estimatesmartfee RPC.\nThe user can specify a confirmation target for estimatesmartfee.\nAlternatively, the user can specify a fee rate in sat/vB for the new transaction.\nAt a minimum, the new fee rate must be high enough to pay an additional new relay fee (incrementalfee\nreturned by getnetworkinfo) to enter the node's mempool.\n* WARNING: before version 0.21, fee_rate was in BTC/kvB. As of 0.21, fee_rate is in sat/vB. *\n",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The txid to be bumped",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "\nSpecify a fee rate in sat/vB instead of relying on the built-in fee estimator.\nMust be at least 1.000 sat/vB higher than the current transaction fee rate.\nWARNING: before version 0.21, fee_rate was in BTC/kvB. As of 0.21, fee_rate is in sat/vB.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Whether the new transaction should still be\nmarked bip-125 replaceable. If true, the sequence numbers in the transaction will\nbe left unchanged from the original. If false, any input sequence numbers in the\noriginal transaction that were less than 0xfffffffe will be increased to 0xfffffffe\nso the new transaction will not be explicitly bip-125 replaceable (though it may\nstill be replaceable in practice, for example if it has unconfirmed ancestors which\nare replaceable).\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"outputs"
],
"type": "ARR",
"optional": true,
"description": "The outputs specified as key-value pairs.\nEach key may only appear once, i.e. there can only be one 'data' output, and no address may be duplicated.\nAt least one output of either type must be specified.\nCannot be provided if 'original_change_index' is specified.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ_USER_KEYS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "AMOUNT",
"optional": false,
"description": "A key-value pair. The key (string) is the bitcoin address,\nthe value (float or string) is the amount in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"data"
],
"type": "STR_HEX",
"optional": false,
"description": "A key-value pair. The key must be \"data\", the value is hex-encoded data",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"original_change_index"
],
"type": "NUM",
"optional": true,
"description": "The 0-based index of the change output on the original transaction. The indicated output will be recycled into the new change output on the bumped transaction. The remainder after paying the recipients and fees will be sent to the output script of the original change output. The change output’s amount can increase if bumping the transaction adds new inputs, otherwise it will decrease. Cannot be used in combination with the 'outputs' option.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"<txid>"
]
},
{
"name": "reconsiderblock",
"description": "\nRemoves invalidity status of a block, its ancestors and its descendants, reconsider them for activation.\nThis can be used to undo the effects of invalidateblock.\n",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": false,
"description": "the hash of the block to reconsider",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"blockhash",
"blockhash"
]
},
{
"name": "removeprunedfunds",
"description": "\nDeletes the specified transaction from the wallet. Meant for use with pruned wallets and as a companion to importprunedfunds. This will affect wallet balances.\n",
"args": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The hex-encoded id of the transaction you are deleting",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"a8d0c0184dde994a09ec054286f1ce581bebf46446a512166eae7628734ea0a5",
"a8d0c0184dde994a09ec054286f1ce581bebf46446a512166eae7628734ea0a5"
]
},
{
"name": "rescanblockchain",
"description": "\nRescan the local blockchain for wallet related transactions.\nNote: Use \"getwalletinfo\" to query the scanning progress.\nThe rescan is significantly faster when used on a descriptor wallet\nand block filters are available (using startup option \"-blockfilterindex=1\").\n",
"args": [
{
"names": [
"start_height"
],
"type": "NUM",
"optional": true,
"description": "block height where the rescan should start",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"stop_height"
],
"type": "NUM",
"optional": true,
"description": "the last block height that should be scanned. If none is provided it will rescan up to the tip at return time of this call.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"100000 120000",
"100000, 120000"
]
},
{
"name": "restorewallet",
"description": "\nRestores and loads a wallet from backup.\n\nThe rescan is significantly faster if a descriptor wallet is restored\nand block filters are available (using startup option \"-blockfilterindex=1\").\n",
"args": [
{
"names": [
"wallet_name"
],
"type": "STR",
"optional": false,
"description": "The name that will be applied to the restored wallet",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"backup_file"
],
"type": "STR",
"optional": false,
"description": "The backup file that will be used to restore the wallet.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"load_on_startup"
],
"type": "BOOL",
"optional": true,
"description": "Save wallet name to persistent settings and load on startup. True to add wallet to startup list, false to remove, null to leave unchanged.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"testwallet\" \"home\\backups\\backup-file.bak\"",
"\"testwallet\" \"home\\backups\\backup-file.bak\"",
{
"wallet_name": "testwallet",
"backup_file": "home\\backups\\backup-file.bak\"",
"load_on_startup": true
},
{
"wallet_name": "testwallet",
"backup_file": "home\\backups\\backup-file.bak\"",
"load_on_startup": true
}
]
},
{
"name": "savemempool",
"description": "\nDumps the mempool to disk. It will fail until the previous dump is fully loaded.\n",
"args": [],
"examples": []
},
{
"name": "scanblocks",
"description": "\nReturn relevant blockhashes for given descriptors (requires blockfilterindex).\nThis call may take several minutes. Make sure to use no RPC timeout (bitcoin-cli -rpcclienttimeout=0)",
"args": [
{
"names": [
"action"
],
"type": "STR",
"optional": false,
"description": "The action to execute\n\"start\" for starting a scan\n\"abort\" for aborting the current scan (returns true when abort was successful)\n\"status\" for progress report (in %) of the current scan",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"scanobjects"
],
"type": "ARR",
"optional": true,
"description": "Array of scan objects. Required for \"start\" action\nEvery scan object is either a string descriptor or an object:",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"descriptor"
],
"type": "STR",
"optional": true,
"description": "An output descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"type": "OBJ",
"optional": true,
"description": "An object with output descriptor and metadata",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"desc"
],
"type": "STR",
"optional": false,
"description": "An output descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"range"
],
"type": "RANGE",
"optional": true,
"description": "The range of HD chain indexes to explore (either end or [begin,end])",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"start_height"
],
"type": "NUM",
"optional": true,
"description": "Height to start to scan from",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"stop_height"
],
"type": "NUM",
"optional": true,
"description": "Height to stop to scan",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"filtertype"
],
"type": "STR",
"optional": true,
"description": "The type name of the filter",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"filter_false_positives"
],
"type": "BOOL",
"optional": true,
"description": "Filter false positives (slower and may fail on pruned nodes). Otherwise they may occur at a rate of 1/M",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"start '[\"addr(bcrt1q4u4nsgk6ug0sqz7r3rj9tykjxrsl0yy4d0wwte)\"]' 300000",
"start '[\"addr(bcrt1q4u4nsgk6ug0sqz7r3rj9tykjxrsl0yy4d0wwte)\"]' 100 150 basic",
"status",
"\"start\", [\"addr(bcrt1q4u4nsgk6ug0sqz7r3rj9tykjxrsl0yy4d0wwte)\"], 300000",
"\"start\", [\"addr(bcrt1q4u4nsgk6ug0sqz7r3rj9tykjxrsl0yy4d0wwte)\"], 100, 150, \"basic\"",
"status"
]
},
{
"name": "scantxoutset",
"description": "\nScans the unspent transaction output set for entries that match certain output descriptors.\nExamples of output descriptors are:\n addr(<address>) Outputs whose scriptPubKey corresponds to the specified address (does not include P2PK)\n raw(<hex script>) Outputs whose scriptPubKey equals the specified hex scripts\n combo(<pubkey>) P2PK, P2PKH, P2WPKH, and P2SH-P2WPKH outputs for the given pubkey\n pkh(<pubkey>) P2PKH outputs for the given pubkey\n sh(multi(<n>,<pubkey>,<pubkey>,...)) P2SH-multisig outputs for the given threshold and pubkeys\n tr(<pubkey>) P2TR\n tr(<pubkey>,{pk(<pubkey>)}) P2TR with single fallback pubkey in tapscript\n rawtr(<pubkey>) P2TR with the specified key as output key rather than inner\n wsh(and_v(v:pk(<pubkey>),after(2))) P2WSH miniscript with mandatory pubkey and a timelock\n\nIn the above, <pubkey> either refers to a fixed public key in hexadecimal notation, or to an xpub/xprv optionally followed by one\nor more path elements separated by \"/\", and optionally ending in \"/*\" (unhardened), or \"/*'\" or \"/*h\" (hardened) to specify all\nunhardened or hardened child keys.\nIn the latter case, a range needs to be specified by below if different from 1000.\nFor more information on output descriptors, see the documentation in the doc/descriptors.md file.\n",
"args": [
{
"names": [
"action"
],
"type": "STR",
"optional": false,
"description": "The action to execute\n\"start\" for starting a scan\n\"abort\" for aborting the current scan (returns true when abort was successful)\n\"status\" for progress report (in %) of the current scan",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"scanobjects"
],
"type": "ARR",
"optional": true,
"description": "Array of scan objects. Required for \"start\" action\nEvery scan object is either a string descriptor or an object:",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"descriptor"
],
"type": "STR",
"optional": true,
"description": "An output descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"type": "OBJ",
"optional": true,
"description": "An object with output descriptor and metadata",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"desc"
],
"type": "STR",
"optional": false,
"description": "An output descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"range"
],
"type": "RANGE",
"optional": true,
"description": "The range of HD chain indexes to explore (either end or [begin,end])",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
}
],
"examples": [
"start '[\"raw(76a91411b366edfc0a8b66feebae5c2e25a7b6a5d1cf3188ac)#fm24fxxy\"]'",
"status",
"abort",
"\"start\", [\"raw(76a91411b366edfc0a8b66feebae5c2e25a7b6a5d1cf3188ac)#fm24fxxy\"]",
"status",
"abort"
]
},
{
"name": "send",
"description": "\nEXPERIMENTAL warning: this call may be changed in future releases.\n\nSend a transaction.\n",
"args": [
{
"names": [
"outputs"
],
"type": "ARR",
"optional": false,
"description": "The outputs specified as key-value pairs.\nEach key may only appear once, i.e. there can only be one 'data' output, and no address may be duplicated.\nAt least one output of either type must be specified.\nFor convenience, a dictionary, which holds the key-value pairs directly, is also accepted.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ_USER_KEYS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "AMOUNT",
"optional": false,
"description": "A key-value pair. The key (string) is the bitcoin address,\nthe value (float or string) is the amount in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"data"
],
"type": "STR_HEX",
"optional": false,
"description": "A key-value pair. The key must be \"data\", the value is hex-encoded data",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in sat/vB.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"add_inputs"
],
"type": "BOOL",
"optional": true,
"description": "Automatically include coins from the wallet to cover the target amount.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_unsafe"
],
"type": "BOOL",
"optional": true,
"description": "Include inputs that are not safe to spend (unconfirmed transactions from outside keys and unconfirmed replacement transactions).\nWarning: the resulting transaction may become invalid if one of the unsafe inputs disappears.\nIf that happens, you will need to fund the transaction with different inputs and republish it.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "If add_inputs is specified, require inputs with at least this many confirmations.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxconf"
],
"type": "NUM",
"optional": true,
"description": "If add_inputs is specified, require inputs with at most this many confirmations.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"add_to_wallet"
],
"type": "BOOL",
"optional": true,
"description": "When false, returns a serialized transaction which will not be added to the wallet or broadcast",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"change_address"
],
"type": "STR",
"optional": true,
"description": "The bitcoin address to receive the change",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"change_position"
],
"type": "NUM",
"optional": true,
"description": "The index of the change output",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"change_type"
],
"type": "STR",
"optional": true,
"description": "The output type to use. Only valid if change_address is not specified. Options are \"legacy\", \"p2sh-segwit\", \"bech32\" and \"bech32m\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in sat/vB.",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_watching"
],
"type": "BOOL",
"optional": true,
"description": "Also select inputs which are watch only.\nOnly solvable inputs can be used. Watch-only destinations are solvable if the public key and/or output script was imported,\ne.g. with 'importpubkey' or 'importmulti' with the 'pubkeys' or 'desc' field.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"inputs"
],
"type": "ARR",
"optional": true,
"description": "Specify inputs instead of adding them automatically. A JSON array of JSON objects",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"sequence"
],
"type": "NUM",
"optional": false,
"description": "The sequence number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"weight"
],
"type": "NUM",
"optional": true,
"description": "The maximum weight for this input, including the weight of the outpoint and sequence number. Note that signature sizes are not guaranteed to be consistent, so the maximum DER signatures size of 73 bytes should be used when considering ECDSA signatures.Remember to convert serialized sizes to weight units when necessary.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"locktime"
],
"type": "NUM",
"optional": true,
"description": "Raw locktime. Non-0 value also locktime-activates inputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"lock_unspents"
],
"type": "BOOL",
"optional": true,
"description": "Lock selected unspent outputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"psbt"
],
"type": "BOOL",
"optional": true,
"description": "Always return a PSBT, implies add_to_wallet=false.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"subtract_fee_from_outputs"
],
"type": "ARR",
"optional": true,
"description": "Outputs to subtract the fee from, specified as integer indices.\nThe fee will be equally deducted from the amount of each specified output.\nThose recipients will receive less bitcoins than you enter in their corresponding amount field.\nIf no outputs are specified here, the sender pays the fee.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"vout_index"
],
"type": "NUM",
"optional": true,
"description": "The zero-based output index, before a change output is added.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Marks this transaction as BIP125-replaceable.\nAllows this transaction to be replaced by a transaction with higher fees",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"solving_data"
],
"type": "OBJ",
"optional": true,
"description": "Keys and scripts needed for producing a final transaction with a dummy signature.\nUsed for fee estimation during coin selection.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubkeys"
],
"type": "ARR",
"optional": true,
"description": "Public keys involved in this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubkey"
],
"type": "STR_HEX",
"optional": true,
"description": "A public key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"scripts"
],
"type": "ARR",
"optional": true,
"description": "Scripts involved in this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"script"
],
"type": "STR_HEX",
"optional": true,
"description": "A script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"descriptors"
],
"type": "ARR",
"optional": true,
"description": "Descriptors that provide solving data for this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"descriptor"
],
"type": "STR",
"optional": true,
"description": "A descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
}
]
}
],
"examples": [
"'{\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\": 0.1}' 6 economical\n",
"'{\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\": 0.2}' null \"unset\" 1.1\n",
"'{\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\": 0.2}' null \"unset\" null '{\"fee_rate\": 1}'\n",
"outputs='{\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\": 0.3}' fee_rate=25\n",
"'{\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\": 0.1}' 1 economical '{\"add_to_wallet\": false, \"inputs\": [{\"txid\":\"a08e6907dbbd3d809776dbfc5d82e371b764ed838b5655e72f463568df1aadf0\", \"vout\":1}]}'"
]
},
{
"name": "sendall",
"description": "EXPERIMENTAL warning: this call may be changed in future releases.\n\nSpend the value of all (or specific) confirmed UTXOs in the wallet to one or more recipients.\nUnconfirmed inbound UTXOs and locked UTXOs will not be spent. Sendall will respect the avoid_reuse wallet flag.\nIf your wallet contains many small inputs, either because it received tiny payments or as a result of accumulating change, consider using `send_max` to exclude inputs that are worth less than the fees needed to spend them.\n",
"args": [
{
"names": [
"recipients"
],
"type": "ARR",
"optional": false,
"description": "The sendall destinations. Each address may only appear once.\nOptionally some recipients can be specified with an amount to perform payments, but at least one address must appear without a specified amount.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "A bitcoin address which receives an equal share of the unspecified amount.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"type": "OBJ_USER_KEYS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "AMOUNT",
"optional": false,
"description": "A key-value pair. The key (string) is the bitcoin address, the value (float or string) is the amount in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in sat/vB.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"add_to_wallet"
],
"type": "BOOL",
"optional": true,
"description": "When false, returns the serialized transaction without broadcasting or adding it to the wallet",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in sat/vB.",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_watching"
],
"type": "BOOL",
"optional": true,
"description": "Also select inputs which are watch-only.\nOnly solvable inputs can be used. Watch-only destinations are solvable if the public key and/or output script was imported,\ne.g. with 'importpubkey' or 'importmulti' with the 'pubkeys' or 'desc' field.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"inputs"
],
"type": "ARR",
"optional": true,
"description": "Use exactly the specified inputs to build the transaction. Specifying inputs is incompatible with the send_max, minconf, and maxconf options.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"sequence"
],
"type": "NUM",
"optional": true,
"description": "The sequence number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"locktime"
],
"type": "NUM",
"optional": true,
"description": "Raw locktime. Non-0 value also locktime-activates inputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"lock_unspents"
],
"type": "BOOL",
"optional": true,
"description": "Lock selected unspent outputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"psbt"
],
"type": "BOOL",
"optional": true,
"description": "Always return a PSBT, implies add_to_wallet=false.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"send_max"
],
"type": "BOOL",
"optional": true,
"description": "When true, only use UTXOs that can pay for their own fees to maximize the output amount. When 'false' (default), no UTXO is left behind. send_max is incompatible with providing specific inputs.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "Require inputs with at least this many confirmations.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxconf"
],
"type": "NUM",
"optional": true,
"description": "Require inputs with at most this many confirmations.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Marks this transaction as BIP125-replaceable.\nAllows this transaction to be replaced by a transaction with higher fees",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"solving_data"
],
"type": "OBJ",
"optional": true,
"description": "Keys and scripts needed for producing a final transaction with a dummy signature.\nUsed for fee estimation during coin selection.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubkeys"
],
"type": "ARR",
"optional": true,
"description": "Public keys involved in this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubkey"
],
"type": "STR_HEX",
"optional": true,
"description": "A public key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"scripts"
],
"type": "ARR",
"optional": true,
"description": "Scripts involved in this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"script"
],
"type": "STR_HEX",
"optional": true,
"description": "A script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"descriptors"
],
"type": "ARR",
"optional": true,
"description": "Descriptors that provide solving data for this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"descriptor"
],
"type": "STR",
"optional": true,
"description": "A descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
}
]
}
],
"examples": [
"recipients='[\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\"]' fee_rate=1\n",
"'[\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\"]' null \"unset\" 1.1\n",
"'[\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\", \"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\"]' null \"unset\" null '{\"fee_rate\": 1.5}'\n",
"'[\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\"]' null \"unset\" null '{\"fee_rate\": 10, \"send_max\": true}'\n",
"recipients='[{\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\": 0.25}, \"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\"]' fee_rate=1.3\n"
]
},
{
"name": "sendmany",
"description": "Send multiple times. Amounts are double-precision floating point numbers.\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.\n",
"args": [
{
"names": [
"dummy"
],
"type": "STR",
"optional": true,
"description": "Must be set to \"\" for backwards compatibility.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"amounts"
],
"type": "OBJ_USER_KEYS",
"optional": false,
"description": "The addresses and amounts",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "AMOUNT",
"optional": false,
"description": "The bitcoin address is the key, the numeric amount (can be string) in BTC is the value",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "Ignored dummy value",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"comment"
],
"type": "STR",
"optional": true,
"description": "A comment",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"subtractfeefrom"
],
"type": "ARR",
"optional": true,
"description": "The addresses.\nThe fee will be equally deducted from the amount of each selected address.\nThose recipients will receive less bitcoins than you enter in their corresponding amount field.\nIf no addresses are specified here, the sender pays the fee.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "STR",
"optional": true,
"description": "Subtract fee from this address",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Signal that this transaction can be replaced by a transaction (BIP 125)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in sat/vB.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"verbose"
],
"type": "BOOL",
"optional": true,
"description": "If true, return extra information about the transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"\" \"{\\\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\\\":0.01,\\\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\\\":0.02}\"",
"\"\" \"{\\\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\\\":0.01,\\\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\\\":0.02}\" 6 \"testing\"",
"\"\" \"{\\\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\\\":0.01,\\\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\\\":0.02}\" 1 \"\" \"[\\\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\\\",\\\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\\\"]\"",
"\"\", {\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\":0.01,\"bc1q02ad21edsxd23d32dfgqqsz4vv4nmtfzuklhy3\":0.02}, 6, \"testing\""
]
},
{
"name": "sendmsgtopeer",
"description": "Send a p2p message to a peer specified by id.\nThe message type and body must be provided, the message header will be generated.\nThis RPC is for testing only.",
"args": [
{
"names": [
"peer_id"
],
"type": "NUM",
"optional": false,
"description": "The peer to send the message to.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"msg_type"
],
"type": "STR",
"optional": false,
"description": "The message type (maximum length 12)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"msg"
],
"type": "STR_HEX",
"optional": false,
"description": "The serialized message body to send, in hex, without a message header",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"0 \"addr\" \"ffffff\"",
"0 \"addr\" \"ffffff\""
]
},
{
"name": "sendrawtransaction",
"description": "\nSubmit a raw transaction (serialized, hex-encoded) to local node and network.\n\nThe transaction will be sent unconditionally to all peers, so using sendrawtransaction\nfor manual rebroadcast may degrade privacy by leaking the transaction's origin, as\nnodes will normally not rebroadcast non-wallet transactions already in their mempool.\n\nA specific exception, RPC_TRANSACTION_ALREADY_IN_CHAIN, may throw if the transaction cannot be added to the mempool.\n\nRelated RPCs: createrawtransaction, signrawtransactionwithkey\n",
"args": [
{
"names": [
"hexstring"
],
"type": "STR_HEX",
"optional": false,
"description": "The hex string of the raw transaction",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxfeerate"
],
"type": "AMOUNT",
"optional": true,
"description": "Reject transactions whose fee rate is higher than the specified value, expressed in BTC/kvB.\nSet to 0 to accept any fee rate.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxburnamount"
],
"type": "AMOUNT",
"optional": true,
"description": "Reject transactions with provably unspendable outputs (e.g. 'datacarrier' outputs that use the OP_RETURN opcode) greater than the specified value, expressed in BTC.\nIf burning funds through unspendable outputs is desired, increase this value.\nThis check is based on heuristics and does not guarantee spendability of outputs.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"[{\\\"txid\\\" : \\\"mytxid\\\",\\\"vout\\\":0}]\" \"{\\\"myaddress\\\":0.01}\"",
"myhex",
"signedhex",
"signedhex"
]
},
{
"name": "sendtoaddress",
"description": "\nSend an amount to a given address.\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The bitcoin address to send to.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"amount"
],
"type": "AMOUNT",
"optional": false,
"description": "The amount in BTC to send. eg 0.1",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"comment"
],
"type": "STR",
"optional": true,
"description": "A comment used to store what the transaction is for.\nThis is not part of the transaction, just kept in your wallet.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"comment_to"
],
"type": "STR",
"optional": true,
"description": "A comment to store the name of the person or organization\nto which you're sending the transaction. This is not part of the \ntransaction, just kept in your wallet.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"subtractfeefromamount"
],
"type": "BOOL",
"optional": true,
"description": "The fee will be deducted from the amount being sent.\nThe recipient will receive less bitcoins than you enter in the amount field.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Signal that this transaction can be replaced by a transaction (BIP 125)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"avoid_reuse"
],
"type": "BOOL",
"optional": true,
"description": "(only available if avoid_reuse wallet flag is set) Avoid spending from dirty addresses; addresses are considered\ndirty if they have previously been used in a transaction. If true, this also activates avoidpartialspends, grouping outputs by their addresses.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in sat/vB.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"verbose"
],
"type": "BOOL",
"optional": true,
"description": "If true, return extra information about the transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" 0.1",
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" 0.1 \"donation\" \"sean's outpost\" false true 6 economical",
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" 0.1 \"drinks\" \"room77\" true true null \"unset\" null 1.1",
"address=\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" amount=0.2 conf_target=6 estimate_mode=\"economical\"",
"address=\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" amount=0.5 fee_rate=25",
"address=\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" amount=0.5 fee_rate=25 subtractfeefromamount=false replaceable=true avoid_reuse=true comment=\"2 pizzas\" comment_to=\"jeremy\" verbose=true"
]
},
{
"name": "setban",
"description": "\nAttempts to add or remove an IP/Subnet from the banned list.\n",
"args": [
{
"names": [
"subnet"
],
"type": "STR",
"optional": false,
"description": "The IP/Subnet (see getpeerinfo for nodes IP) with an optional netmask (default is /32 = single IP)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"command"
],
"type": "STR",
"optional": false,
"description": "'add' to add an IP/Subnet to the list, 'remove' to remove an IP/Subnet from the list",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"bantime"
],
"type": "NUM",
"optional": true,
"description": "time in seconds how long (or until when if [absolute] is set) the IP is banned (0 or empty means using the default time of 24h which can also be overwritten by the -bantime startup argument)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"absolute"
],
"type": "BOOL",
"optional": true,
"description": "If set, the bantime must be an absolute timestamp expressed in UNIX epoch time",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"192.168.0.6\" \"add\" 86400",
"\"192.168.0.0/24\" \"add\"",
"\"192.168.0.6\", \"add\", 86400"
]
},
{
"name": "sethdseed",
"description": "\nSet or generate a new HD wallet seed. Non-HD wallets will not be upgraded to being a HD wallet. Wallets that are already\nHD will have a new HD seed set so that new keys added to the keypool will be derived from this new seed.\n\nNote that you will need to MAKE A NEW BACKUP of your wallet after setting the HD wallet seed.\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.\nNote: This command is only compatible with legacy wallets.\n",
"args": [
{
"names": [
"newkeypool"
],
"type": "BOOL",
"optional": true,
"description": "Whether to flush old unused addresses, including change addresses, from the keypool and regenerate it.\nIf true, the next address from getnewaddress and change address from getrawchangeaddress will be from this new seed.\nIf false, addresses (including change addresses if the wallet already had HD Chain Split enabled) from the existing\nkeypool will be used until it has been depleted.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"seed"
],
"type": "STR",
"optional": true,
"description": "The WIF private key to use as the new HD seed.\nThe seed value can be retrieved using the dumpwallet command. It is the private key marked hdseed=1",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
false,
"true \"wifkey\"",
"true, \"wifkey\""
]
},
{
"name": "setlabel",
"description": "\nSets the label associated with the given address.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The bitcoin address to be associated with a label.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"label"
],
"type": "STR",
"optional": false,
"description": "The label to assign to the address.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" \"tabby\"",
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\", \"tabby\""
]
},
{
"name": "setmocktime",
"description": "\nSet the local time to given timestamp (-regtest only)\n",
"args": [
{
"names": [
"timestamp"
],
"type": "NUM",
"optional": false,
"description": "UNIX epoch time\nPass 0 to go back to using the system time.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "setnetworkactive",
"description": "\nDisable/enable all p2p network activity.\n",
"args": [
{
"names": [
"state"
],
"type": "BOOL",
"optional": false,
"description": "true to enable networking, false to disable",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "settxfee",
"description": "\nSet the transaction fee rate in BTC/kvB for this wallet. Overrides the global -paytxfee command line parameter.\nCan be deactivated by passing 0 as the fee. In that case automatic fee selection will be used by default.\n",
"args": [
{
"names": [
"amount"
],
"type": "AMOUNT",
"optional": false,
"description": "The transaction fee rate in BTC/kvB",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
0.00001,
0.00001
]
},
{
"name": "setwalletflag",
"description": "\nChange the state of the given wallet flag for a wallet.\n",
"args": [
{
"names": [
"flag"
],
"type": "STR",
"optional": false,
"description": "The name of the flag to change. Current available flags: avoid_reuse",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"value"
],
"type": "BOOL",
"optional": true,
"description": "The new state.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"avoid_reuse",
"avoid_reuse"
]
},
{
"name": "signmessage",
"description": "\nSign a message with the private key of an address\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The bitcoin address to use for the private key.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"message"
],
"type": "STR",
"optional": false,
"description": "The message to create a signature of.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"mypassphrase\" 30",
"\"1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX\" \"my message\"",
"\"1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX\" \"signature\" \"my message\"",
"\"1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX\", \"my message\""
]
},
{
"name": "signmessagewithprivkey",
"description": "\nSign a message with the private key of an address\n",
"args": [
{
"names": [
"privkey"
],
"type": "STR",
"optional": false,
"description": "The private key to sign the message with.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"message"
],
"type": "STR",
"optional": false,
"description": "The message to create a signature of.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"privkey\" \"my message\"",
"\"1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX\" \"signature\" \"my message\"",
"\"privkey\", \"my message\""
]
},
{
"name": "signrawtransactionwithkey",
"description": "\nSign inputs for raw transaction (serialized, hex-encoded).\nThe second argument is an array of base58-encoded private\nkeys that will be the only keys used to sign the transaction.\nThe third optional argument (may be null) is an array of previous transaction outputs that\nthis transaction depends on but may not yet be in the block chain.\n",
"args": [
{
"names": [
"hexstring"
],
"type": "STR",
"optional": false,
"description": "The transaction hex string",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"privkeys"
],
"type": "ARR",
"optional": false,
"description": "The base58-encoded private keys for signing",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"privatekey"
],
"type": "STR_HEX",
"optional": true,
"description": "private key in base58-encoding",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"prevtxs"
],
"type": "ARR",
"optional": true,
"description": "The previous dependent transaction outputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"scriptPubKey"
],
"type": "STR_HEX",
"optional": false,
"description": "script key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"redeemScript"
],
"type": "STR_HEX",
"optional": true,
"description": "(required for P2SH) redeem script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"witnessScript"
],
"type": "STR_HEX",
"optional": true,
"description": "(required for P2WSH or P2SH-P2WSH) witness script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"amount"
],
"type": "AMOUNT",
"optional": true,
"description": "(required for Segwit inputs) the amount spent",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"sighashtype"
],
"type": "STR",
"optional": true,
"description": "The signature hash type. Must be one of:\n \"DEFAULT\"\n \"ALL\"\n \"NONE\"\n \"SINGLE\"\n \"ALL|ANYONECANPAY\"\n \"NONE|ANYONECANPAY\"\n \"SINGLE|ANYONECANPAY\"\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"myhex\" \"[\\\"key1\\\",\\\"key2\\\"]\"",
"\"myhex\", \"[\\\"key1\\\",\\\"key2\\\"]\""
]
},
{
"name": "signrawtransactionwithwallet",
"description": "\nSign inputs for raw transaction (serialized, hex-encoded).\nThe second optional argument (may be null) is an array of previous transaction outputs that\nthis transaction depends on but may not yet be in the block chain.\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.\n",
"args": [
{
"names": [
"hexstring"
],
"type": "STR",
"optional": false,
"description": "The transaction hex string",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"prevtxs"
],
"type": "ARR",
"optional": true,
"description": "The previous dependent transaction outputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"scriptPubKey"
],
"type": "STR_HEX",
"optional": false,
"description": "script key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"redeemScript"
],
"type": "STR_HEX",
"optional": true,
"description": "(required for P2SH) redeem script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"witnessScript"
],
"type": "STR_HEX",
"optional": true,
"description": "(required for P2WSH or P2SH-P2WSH) witness script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"amount"
],
"type": "AMOUNT",
"optional": true,
"description": "(required for Segwit inputs) the amount spent",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"sighashtype"
],
"type": "STR",
"optional": true,
"description": "The signature hash type. Must be one of\n \"DEFAULT\"\n \"ALL\"\n \"NONE\"\n \"SINGLE\"\n \"ALL|ANYONECANPAY\"\n \"NONE|ANYONECANPAY\"\n \"SINGLE|ANYONECANPAY\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"myhex",
"myhex"
]
},
{
"name": "simulaterawtransaction",
"description": "\nCalculate the balance change resulting in the signing and broadcasting of the given transaction(s).\n",
"args": [
{
"names": [
"rawtxs"
],
"type": "ARR",
"optional": true,
"description": "An array of hex strings of raw transactions.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"rawtx"
],
"type": "STR_HEX",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"include_watchonly"
],
"type": "BOOL",
"optional": true,
"description": "Whether to include watch-only addresses (see RPC importaddress)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
[
"myhex"
],
[
"myhex"
]
]
},
{
"name": "stop",
"description": "\nRequest a graceful shutdown of Bitcoin Core.",
"args": [
{
"names": [
"wait"
],
"type": "NUM",
"optional": true,
"description": "how long to wait in ms",
"opts": {
"also_positional": false,
"hidden": true,
"skip_type_check": true
}
}
],
"examples": []
},
{
"name": "submitblock",
"description": "\nAttempts to submit new block to network.\nSee https://en.bitcoin.it/wiki/BIP_0022 for full specification.\n",
"args": [
{
"names": [
"hexdata"
],
"type": "STR_HEX",
"optional": false,
"description": "the hex-encoded block data to submit",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"dummy"
],
"type": "STR",
"optional": true,
"description": "dummy value, for compatibility with BIP22. This value is ignored.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"mydata",
"mydata"
]
},
{
"name": "submitheader",
"description": "\nDecode the given hexdata as a header and submit it as a candidate chain tip if valid.\nThrows when the header is invalid.\n",
"args": [
{
"names": [
"hexdata"
],
"type": "STR_HEX",
"optional": false,
"description": "the hex-encoded block header data",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"aabbcc",
"aabbcc"
]
},
{
"name": "submitpackage",
"description": "Submit a package of raw transactions (serialized, hex-encoded) to local node.\nThe package must consist of a child with its parents, and none of the parents may depend on one another.\nThe package will be validated according to consensus and mempool policy rules. If any transaction passes, it will be accepted to mempool.\nThis RPC is experimental and the interface may be unstable. Refer to doc/policy/packages.md for documentation on package policies.\nWarning: successful submission does not mean the transactions will propagate throughout the network.\n",
"args": [
{
"names": [
"package"
],
"type": "ARR",
"optional": false,
"description": "An array of raw transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"rawtx"
],
"type": "STR_HEX",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
],
"examples": [
"[rawtx1, rawtx2]",
"[rawtx1, rawtx2]"
]
},
{
"name": "syncwithvalidationinterfacequeue",
"description": "\nWaits for the validation interface queue to catch up on everything that was there when we entered this function.\n",
"args": [],
"examples": []
},
{
"name": "testmempoolaccept",
"description": "\nReturns result of mempool acceptance tests indicating if raw transaction(s) (serialized, hex-encoded) would be accepted by mempool.\n\nIf multiple transactions are passed in, parents must come before children and package policies apply: the transactions cannot conflict with any mempool transactions or each other.\n\nIf one transaction fails, other transactions may not be fully validated (the 'allowed' key will be blank).\n\nThe maximum number of transactions allowed is 25.\n\nThis checks if transactions violate the consensus or policy rules.\n\nSee sendrawtransaction call.\n",
"args": [
{
"names": [
"rawtxs"
],
"type": "ARR",
"optional": false,
"description": "An array of hex strings of raw transactions.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"rawtx"
],
"type": "STR_HEX",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"maxfeerate"
],
"type": "AMOUNT",
"optional": true,
"description": "Reject transactions whose fee rate is higher than the specified value, expressed in BTC/kvB\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"[{\\\"txid\\\" : \\\"mytxid\\\",\\\"vout\\\":0}]\" \"{\\\"myaddress\\\":0.01}\"",
"myhex",
[
"signedhex"
],
[
"signedhex"
]
]
},
{
"name": "unloadwallet",
"description": "Unloads the wallet referenced by the request endpoint, otherwise unloads the wallet specified in the argument.\nSpecifying the wallet name on a wallet endpoint is invalid.",
"args": [
{
"names": [
"wallet_name"
],
"type": "STR",
"optional": true,
"description": "The name of the wallet to unload. If provided both here and in the RPC endpoint, the two must be identical.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"load_on_startup"
],
"type": "BOOL",
"optional": true,
"description": "Save wallet name to persistent settings and load on startup. True to add wallet to startup list, false to remove, null to leave unchanged.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"wallet_name",
"wallet_name"
]
},
{
"name": "upgradewallet",
"description": "\nUpgrade the wallet. Upgrades to the latest version if no version number is specified.\nNew keys may be generated and a new wallet backup will need to be made.",
"args": [
{
"names": [
"version"
],
"type": "NUM",
"optional": true,
"description": "The version number to upgrade to. Default is the latest wallet version.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
169900,
169900
]
},
{
"name": "uptime",
"description": "\nReturns the total uptime of the server.\n",
"args": [],
"examples": []
},
{
"name": "utxoupdatepsbt",
"description": "\nUpdates all segwit inputs and outputs in a PSBT with data from output descriptors, the UTXO set, txindex, or the mempool.\n",
"args": [
{
"names": [
"psbt"
],
"type": "STR",
"optional": false,
"description": "A base64 string of a PSBT",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"descriptors"
],
"type": "ARR",
"optional": true,
"description": "An array of either strings or objects",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "STR",
"optional": true,
"description": "An output descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"type": "OBJ",
"optional": true,
"description": "An object with an output descriptor and extra information",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"desc"
],
"type": "STR",
"optional": false,
"description": "An output descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"range"
],
"type": "RANGE",
"optional": true,
"description": "Up to what index HD chains should be explored (either end or [begin,end])",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
}
],
"examples": [
"psbt"
]
},
{
"name": "validateaddress",
"description": "\nReturn information about the given bitcoin address.\n",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The bitcoin address to validate",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl",
"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl"
]
},
{
"name": "verifychain",
"description": "\nVerifies blockchain database.\n",
"args": [
{
"names": [
"checklevel"
],
"type": "NUM",
"optional": true,
"description": "How thorough the block verification is:\n- level 0 reads the blocks from disk\n- level 1 verifies block validity\n- level 2 verifies undo data\n- level 3 checks disconnection of tip blocks\n- level 4 tries to reconnect the blocks\n- each level includes the checks of the previous levels",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"nblocks"
],
"type": "NUM",
"optional": true,
"description": "The number of blocks to check.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "verifymessage",
"description": "Verify a signed message.",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "The bitcoin address to use for the signature.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"signature"
],
"type": "STR",
"optional": false,
"description": "The signature provided by the signer in base 64 encoding (see signmessage).",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"message"
],
"type": "STR",
"optional": false,
"description": "The message that was signed.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"mypassphrase\" 30",
"\"1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX\" \"my message\"",
"\"1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX\" \"signature\" \"my message\"",
"\"1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX\", \"signature\", \"my message\""
]
},
{
"name": "verifytxoutproof",
"description": "\nVerifies that a proof points to a transaction in a block, returning the transaction it commits to\nand throwing an RPC error if the block is not in our best chain\n",
"args": [
{
"names": [
"proof"
],
"type": "STR_HEX",
"optional": false,
"description": "The hex-encoded proof generated by gettxoutproof",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "waitforblock",
"description": "\nWaits for a specific new block and returns useful info about it.\n\nReturns the current block on timeout or exit.\n",
"args": [
{
"names": [
"blockhash"
],
"type": "STR_HEX",
"optional": false,
"description": "Block hash to wait for.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"timeout"
],
"type": "NUM",
"optional": true,
"description": "Time in milliseconds to wait for a response. 0 indicates no timeout.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"0000000000079f8ef3d2c688c244eb7a4570b24c9ed7b4a8c619eb02596f8862\" 1000",
"\"0000000000079f8ef3d2c688c244eb7a4570b24c9ed7b4a8c619eb02596f8862\", 1000"
]
},
{
"name": "waitforblockheight",
"description": "\nWaits for (at least) block height and returns the height and hash\nof the current tip.\n\nReturns the current block on timeout or exit.\n",
"args": [
{
"names": [
"height"
],
"type": "NUM",
"optional": false,
"description": "Block height to wait for.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"timeout"
],
"type": "NUM",
"optional": true,
"description": "Time in milliseconds to wait for a response. 0 indicates no timeout.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"100 1000",
"100, 1000"
]
},
{
"name": "waitfornewblock",
"description": "\nWaits for a specific new block and returns useful info about it.\n\nReturns the current block on timeout or exit.\n",
"args": [
{
"names": [
"timeout"
],
"type": "NUM",
"optional": true,
"description": "Time in milliseconds to wait for a response. 0 indicates no timeout.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
1000,
1000
]
},
{
"name": "walletcreatefundedpsbt",
"description": "\nCreates and funds a transaction in the Partially Signed Transaction format.\nImplements the Creator and Updater roles.\nAll existing inputs must either have their previous output transaction be in the wallet\nor be in the UTXO set. Solving data must be provided for non-wallet inputs.\n",
"args": [
{
"names": [
"inputs"
],
"type": "ARR",
"optional": true,
"description": "Leave empty to add inputs automatically. See add_inputs option.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"txid"
],
"type": "STR_HEX",
"optional": false,
"description": "The transaction id",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"vout"
],
"type": "NUM",
"optional": false,
"description": "The output number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"sequence"
],
"type": "NUM",
"optional": true,
"description": "The sequence number",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"weight"
],
"type": "NUM",
"optional": true,
"description": "The maximum weight for this input, including the weight of the outpoint and sequence number. Note that signature sizes are not guaranteed to be consistent, so the maximum DER signatures size of 73 bytes should be used when considering ECDSA signatures.Remember to convert serialized sizes to weight units when necessary.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"outputs"
],
"type": "ARR",
"optional": false,
"description": "The outputs specified as key-value pairs.\nEach key may only appear once, i.e. there can only be one 'data' output, and no address may be duplicated.\nAt least one output of either type must be specified.\nFor compatibility reasons, a dictionary, which holds the key-value pairs directly, is also\naccepted as second parameter.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"type": "OBJ_USER_KEYS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"address"
],
"type": "AMOUNT",
"optional": false,
"description": "A key-value pair. The key (string) is the bitcoin address,\nthe value (float or string) is the amount in BTC",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"type": "OBJ",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"data"
],
"type": "STR_HEX",
"optional": false,
"description": "A key-value pair. The key must be \"data\", the value is hex-encoded data",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
},
{
"names": [
"locktime"
],
"type": "NUM",
"optional": true,
"description": "Raw locktime. Non-0 value also locktime-activates inputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"options"
],
"type": "OBJ_NAMED_PARAMS",
"optional": true,
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"add_inputs"
],
"type": "BOOL",
"optional": true,
"description": "Automatically include coins from the wallet to cover the target amount.\n",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"include_unsafe"
],
"type": "BOOL",
"optional": true,
"description": "Include inputs that are not safe to spend (unconfirmed transactions from outside keys and unconfirmed replacement transactions).\nWarning: the resulting transaction may become invalid if one of the unsafe inputs disappears.\nIf that happens, you will need to fund the transaction with different inputs and republish it.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"minconf"
],
"type": "NUM",
"optional": true,
"description": "If add_inputs is specified, require inputs with at least this many confirmations.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"maxconf"
],
"type": "NUM",
"optional": true,
"description": "If add_inputs is specified, require inputs with at most this many confirmations.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"changeAddress"
],
"type": "STR",
"optional": true,
"description": "The bitcoin address to receive the change",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"changePosition"
],
"type": "NUM",
"optional": true,
"description": "The index of the change output",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"change_type"
],
"type": "STR",
"optional": true,
"description": "The output type to use. Only valid if changeAddress is not specified. Options are \"legacy\", \"p2sh-segwit\", \"bech32\", and \"bech32m\".",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"includeWatching"
],
"type": "BOOL",
"optional": true,
"description": "Also select inputs which are watch only",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"lockUnspents"
],
"type": "BOOL",
"optional": true,
"description": "Lock selected unspent outputs",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"fee_rate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in sat/vB.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"feeRate"
],
"type": "AMOUNT",
"optional": true,
"description": "Specify a fee rate in BTC/kvB.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"subtractFeeFromOutputs"
],
"type": "ARR",
"optional": true,
"description": "The outputs to subtract the fee from.\nThe fee will be equally deducted from the amount of each specified output.\nThose recipients will receive less bitcoins than you enter in their corresponding amount field.\nIf no outputs are specified here, the sender pays the fee.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"vout_index"
],
"type": "NUM",
"optional": true,
"description": "The zero-based output index, before a change output is added.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"conf_target"
],
"type": "NUM",
"optional": true,
"description": "Confirmation target in blocks",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"estimate_mode"
],
"type": "STR",
"optional": true,
"description": "The fee estimate mode, must be one of (case insensitive):\n\"unset\"\n\"economical\"\n\"conservative\"",
"opts": {
"also_positional": true,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"replaceable"
],
"type": "BOOL",
"optional": true,
"description": "Marks this transaction as BIP125-replaceable.\nAllows this transaction to be replaced by a transaction with higher fees",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"solving_data"
],
"type": "OBJ",
"optional": true,
"description": "Keys and scripts needed for producing a final transaction with a dummy signature.\nUsed for fee estimation during coin selection.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubkeys"
],
"type": "ARR",
"optional": true,
"description": "Public keys involved in this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"pubkey"
],
"type": "STR_HEX",
"optional": true,
"description": "A public key",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"scripts"
],
"type": "ARR",
"optional": true,
"description": "Scripts involved in this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"script"
],
"type": "STR_HEX",
"optional": true,
"description": "A script",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
},
{
"names": [
"descriptors"
],
"type": "ARR",
"optional": true,
"description": "Descriptors that provide solving data for this transaction.",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
},
"inner": [
{
"names": [
"descriptor"
],
"type": "STR",
"optional": true,
"description": "A descriptor",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
]
}
]
}
]
},
{
"names": [
"bip32derivs"
],
"type": "BOOL",
"optional": true,
"description": "Include BIP 32 derivation paths for public keys if we know them",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"[{\\\"txid\\\":\\\"myid\\\",\\\"vout\\\":0}]\" \"[{\\\"data\\\":\\\"00010203\\\"}]\""
]
},
{
"name": "walletdisplayaddress",
"description": "Display address on an external signer for verification.",
"args": [
{
"names": [
"address"
],
"type": "STR",
"optional": false,
"description": "bitcoin address to display",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": []
},
{
"name": "walletlock",
"description": "\nRemoves the wallet encryption key from memory, locking the wallet.\nAfter calling this method, you will need to call walletpassphrase again\nbefore being able to call any methods which require the wallet to be unlocked.\n",
"args": [],
"examples": [
"\"my pass phrase\" 120",
"\"bc1q09vm5lfy0j5reeulh4x5752q25uqqvz34hufdl\" 1.0"
]
},
{
"name": "walletpassphrase",
"description": "\nStores the wallet decryption key in memory for 'timeout' seconds.\nThis is needed prior to performing transactions related to private keys such as sending bitcoins\n\nNote:\nIssuing the walletpassphrase command while the wallet is already unlocked will set a new unlock\ntime that overrides the old one.\n",
"args": [
{
"names": [
"passphrase"
],
"type": "STR",
"optional": false,
"description": "The wallet passphrase",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"timeout"
],
"type": "NUM",
"optional": false,
"description": "The time to keep the decryption key in seconds; capped at 100000000 (~3 years).",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"my pass phrase\" 60",
"\"my pass phrase\", 60"
]
},
{
"name": "walletpassphrasechange",
"description": "\nChanges the wallet passphrase from 'oldpassphrase' to 'newpassphrase'.\n",
"args": [
{
"names": [
"oldpassphrase"
],
"type": "STR",
"optional": false,
"description": "The current passphrase",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"newpassphrase"
],
"type": "STR",
"optional": false,
"description": "The new passphrase",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"\"old one\" \"new one\"",
"\"old one\", \"new one\""
]
},
{
"name": "walletprocesspsbt",
"description": "\nUpdate a PSBT with input information from our wallet and then sign inputs\nthat we can sign for.\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.\n",
"args": [
{
"names": [
"psbt"
],
"type": "STR",
"optional": false,
"description": "The transaction base64 string",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"sign"
],
"type": "BOOL",
"optional": true,
"description": "Also sign the transaction when updating (requires wallet to be unlocked)",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"sighashtype"
],
"type": "STR",
"optional": true,
"description": "The signature hash type to sign with if not specified by the PSBT. Must be one of\n \"DEFAULT\"\n \"ALL\"\n \"NONE\"\n \"SINGLE\"\n \"ALL|ANYONECANPAY\"\n \"NONE|ANYONECANPAY\"\n \"SINGLE|ANYONECANPAY\"",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"bip32derivs"
],
"type": "BOOL",
"optional": true,
"description": "Include BIP 32 derivation paths for public keys if we know them",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
},
{
"names": [
"finalize"
],
"type": "BOOL",
"optional": true,
"description": "Also finalize inputs if possible",
"opts": {
"also_positional": false,
"hidden": false,
"skip_type_check": false
}
}
],
"examples": [
"psbt"
]
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment