{ "info": { "description": "Autogenerated from Bitcoin Core RPC metadata.", "title": "Bitcoin Core JSON-RPC", "version": "v30.99.0-dev" }, "methods": [ { "description": "Mark in-wallet transaction 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.", "name": "abandontransaction", "params": [ { "description": "The transaction id", "name": "txid", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } } ], "result": { "name": "result", "schema": { "type": "null" } }, "x-bitcoin-category": "wallet" }, { "description": "Stops current wallet rescan triggered by an RPC call, e.g. by a rescanblockchain call.\nNote: Use \"getwalletinfo\" to query the scanning progress.", "name": "abortrescan", "params": [], "result": { "name": "result", "schema": { "type": "boolean" } }, "x-bitcoin-category": "wallet" }, { "description": "Attempts 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.", "name": "addnode", "params": [ { "description": "The IP address/hostname optionally followed by :port of the peer to connect to", "name": "node", "required": true, "schema": { "type": "string" } }, { "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", "name": "command", "required": true, "schema": { "type": "string" } }, { "description": "Attempt to connect using BIP324 v2 transport protocol (ignored for 'remove' command)", "name": "v2transport", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "type": "null" } }, "x-bitcoin-category": "network" }, { "description": "Analyzes and provides information about the current status of a PSBT and its inputs", "name": "analyzepsbt", "params": [ { "description": "A base64 string of a PSBT", "name": "psbt", "required": true, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "error": { "description": "Error message (if there is one)", "type": "string" }, "estimated_feerate": { "description": "Estimated feerate of the final signed transaction in BTC/kvB. Shown only if all UTXO slots in the PSBT have been filled", "type": "string" }, "estimated_vsize": { "description": "Estimated vsize of the final signed transaction", "type": "number" }, "fee": { "description": "The transaction fee paid. Shown only if all UTXO slots in the PSBT have been filled", "type": "string" }, "inputs": { "items": { "additionalProperties": false, "properties": { "has_utxo": { "description": "Whether a UTXO is provided", "type": "boolean" }, "is_final": { "description": "Whether the input is finalized", "type": "boolean" }, "missing": { "additionalProperties": false, "description": "Things that are missing that are required to complete this input", "properties": { "pubkeys": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "redeemscript": { "description": "Hash160 of the redeem script that is missing", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "signatures": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "witnessscript": { "description": "SHA256 of the witness script that is missing", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "type": "object" }, "next": { "description": "Role of the next person that this input needs to go to", "type": "string" } }, "required": [ "has_utxo", "is_final" ], "type": "object" }, "type": "array" }, "next": { "description": "Role of the next person that this psbt needs to go to", "type": "string" } }, "required": [ "next" ], "type": "object" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Safely copies the current wallet file to the specified destination, which can either be a directory or a path with a filename.", "name": "backupwallet", "params": [ { "description": "The destination directory or file", "name": "destination", "required": true, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "type": "null" } }, "x-bitcoin-category": "wallet" }, { "description": "Bumps the fee of a transaction T, replacing it with a new transaction B.\nA 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. *", "name": "bumpfee", "params": [ { "description": "The txid to be bumped", "name": "txid", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "name": "options", "required": false, "schema": { "additionalProperties": false, "properties": { "conf_target": { "description": "Confirmation target in blocks\n", "type": "number" }, "estimate_mode": { "description": "The fee estimate mode, must be one of (case insensitive):\nunset, economical, conservative \nunset means no mode set (economical mode is used if the transaction is replaceable;\notherwise, conservative mode is used). \neconomical estimates use a shorter time horizon, making them more\nresponsive to short-term drops in the prevailing fee market. This mode\npotentially returns a lower fee rate estimate.\nconservative estimates use a longer time horizon, making them\nless responsive to short-term drops in the prevailing fee market. This mode\npotentially returns a higher fee rate estimate.\n", "type": "string" }, "fee_rate": { "description": "\nSpecify a fee rate in sat/vB instead of relying on the built-in fee estimator.\nMust be at least 0.100 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", "oneOf": [ { "type": "number" }, { "type": "string" } ] }, "original_change_index": { "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\u2019s amount can increase if bumping the transaction adds new inputs, otherwise it will decrease. Cannot be used in combination with the 'outputs' option.", "type": "number" }, "outputs": { "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.", "items": { "additionalProperties": true, "type": "object" }, "type": "array" }, "replaceable": { "description": "Whether the new transaction should be\nmarked bip-125 replaceable. If true, the sequence numbers in the transaction will\nbe set to 0xfffffffd. If false, any input sequence numbers in the\ntransaction will be set 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", "type": "boolean" } }, "type": "object" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "errors": { "description": "Errors encountered during processing (may be empty).", "items": { "type": "string" }, "type": "array" }, "fee": { "description": "The fee of the new transaction.", "type": "string" }, "origfee": { "description": "The fee of the replaced transaction.", "type": "string" }, "txid": { "description": "The id of the new transaction.", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "txid", "origfee", "fee", "errors" ], "type": "object" } }, "x-bitcoin-category": "wallet" }, { "description": "Clear all banned IPs.", "name": "clearbanned", "params": [], "result": { "name": "result", "schema": { "type": "null" } }, "x-bitcoin-category": "network" }, { "description": "Combine multiple partially signed Bitcoin transactions into one transaction.\nImplements the Combiner role.", "name": "combinepsbt", "params": [ { "description": "The base64 strings of partially signed transactions", "name": "txs", "required": true, "schema": { "items": { "type": "string" }, "type": "array" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Combine multiple partially signed transactions into one transaction.\nThe combined transaction may be another partially signed transaction or a \nfully signed transaction.", "name": "combinerawtransaction", "params": [ { "description": "The hex strings of partially signed transactions", "name": "txs", "required": true, "schema": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Converts 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.", "name": "converttopsbt", "params": [ { "description": "The hex string of a raw transaction", "name": "hexstring", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "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.", "name": "permitsigdata", "required": false, "schema": { "type": "boolean" } }, { "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.", "name": "iswitness", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Creates a multi-signature address with n signatures of m keys required.\nIt returns a json object with the address and redeemScript.", "name": "createmultisig", "params": [ { "description": "The number of required signatures out of the m keys.", "name": "nrequired", "required": true, "schema": { "type": "number" } }, { "description": "The hex-encoded public keys.", "name": "keys", "required": true, "schema": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" } }, { "description": "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\".", "name": "address_type", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "address": { "description": "The value of the new multisig address.", "type": "string" }, "descriptor": { "description": "The descriptor for this multisig", "type": "string" }, "redeemScript": { "description": "The string value of the hex-encoded redemption script.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "warnings": { "description": "Any warnings resulting from the creation of this multisig", "items": { "type": "string" }, "type": "array" } }, "required": [ "address", "redeemScript", "descriptor" ], "type": "object" } }, "x-bitcoin-category": "util" }, { "description": "Creates a transaction in the Partially Signed Transaction format.\nImplements the Creator role.\nNote that the transaction's inputs are not signed, and\nit is not stored in the wallet or transmitted to the network.", "name": "createpsbt", "params": [ { "description": "The inputs", "name": "inputs", "required": true, "schema": { "items": { "additionalProperties": false, "properties": { "sequence": { "description": "The sequence number", "type": "number" }, "txid": { "description": "The transaction id", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "vout": { "description": "The output number", "type": "number" } }, "required": [ "txid", "vout" ], "type": "object" }, "type": "array" } }, { "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.", "name": "outputs", "required": true, "schema": { "items": { "additionalProperties": true, "type": "object" }, "type": "array" } }, { "description": "Raw locktime. Non-0 value also locktime-activates inputs", "name": "locktime", "required": false, "schema": { "type": "number" } }, { "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.", "name": "replaceable", "required": false, "schema": { "type": "boolean" } }, { "description": "Transaction version", "name": "version", "required": false, "schema": { "type": "number" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Create 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.", "name": "createrawtransaction", "params": [ { "description": "The inputs", "name": "inputs", "required": true, "schema": { "items": { "additionalProperties": false, "properties": { "sequence": { "description": "The sequence number", "type": "number" }, "txid": { "description": "The transaction id", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "vout": { "description": "The output number", "type": "number" } }, "required": [ "txid", "vout" ], "type": "object" }, "type": "array" } }, { "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.", "name": "outputs", "required": true, "schema": { "items": { "additionalProperties": true, "type": "object" }, "type": "array" } }, { "description": "Raw locktime. Non-0 value also locktime-activates inputs", "name": "locktime", "required": false, "schema": { "type": "number" } }, { "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.", "name": "replaceable", "required": false, "schema": { "type": "boolean" } }, { "description": "Transaction version", "name": "version", "required": false, "schema": { "type": "number" } } ], "result": { "name": "result", "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Creates and loads a new wallet.", "name": "createwallet", "params": [ { "description": "The name for the new wallet. If this is a path, the wallet will be created at the path location.", "name": "wallet_name", "required": true, "schema": { "type": "string" } }, { "description": "Disable the possibility of private keys (only watchonlys are possible in this mode).", "name": "disable_private_keys", "required": false, "schema": { "type": "boolean" } }, { "description": "Create a blank wallet. A blank wallet has no keys.", "name": "blank", "required": false, "schema": { "type": "boolean" } }, { "description": "Encrypt the wallet with this passphrase.", "name": "passphrase", "required": false, "schema": { "type": "string" } }, { "description": "Keep track of coin reuse, and treat dirty and clean coins differently with privacy considerations in mind.", "name": "avoid_reuse", "required": false, "schema": { "type": "boolean" } }, { "description": "If set, must be \"true\"", "name": "descriptors", "required": false, "schema": { "type": "boolean" } }, { "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.", "name": "load_on_startup", "required": false, "schema": { "type": "boolean" } }, { "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.", "name": "external_signer", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "name": { "description": "The wallet name if created successfully. If the wallet was created using a full path, the wallet_name will be the full path.", "type": "string" }, "warnings": { "description": "Warning messages, if any, related to creating and loading the wallet.", "items": { "type": "string" }, "type": "array" } }, "required": [ "name" ], "type": "object" } }, "x-bitcoin-category": "wallet" }, { "description": "Creates the wallet's descriptor for the given address type. The address type must be one that the wallet does not already have a descriptor for.\nRequires wallet passphrase to be set with walletpassphrase call if wallet is encrypted.", "name": "createwalletdescriptor", "params": [ { "description": "The address type the descriptor will produce. Options are \"legacy\", \"p2sh-segwit\", \"bech32\", \"bech32m\".", "name": "type", "required": true, "schema": { "type": "string" } }, { "name": "options", "required": false, "schema": { "additionalProperties": false, "properties": { "hdkey": { "description": "The HD key that the wallet knows the private key of, listed using 'gethdkeys', to use for this descriptor's key", "type": "string" }, "internal": { "description": "Whether to only make one descriptor that is internal (if parameter is true) or external (if parameter is false)", "type": "boolean" } }, "type": "object" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "descs": { "description": "The public descriptors that were added to the wallet", "items": { "type": "string" }, "type": "array" } }, "required": [ "descs" ], "type": "object" } }, "x-bitcoin-category": "wallet" }, { "description": "Return a JSON object representing the serialized, base64-encoded partially signed Bitcoin transaction.", "name": "decodepsbt", "params": [ { "description": "The PSBT base64 string", "name": "psbt", "required": true, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "fee": { "description": "The transaction fee paid if all UTXOs slots in the PSBT have been filled.", "type": "string" }, "global_xpubs": { "items": { "additionalProperties": false, "properties": { "master_fingerprint": { "description": "The fingerprint of the master key", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "path": { "description": "The path", "type": "string" }, "xpub": { "description": "The extended public key this path corresponds to", "type": "string" } }, "required": [ "xpub", "master_fingerprint", "path" ], "type": "object" }, "type": "array" }, "inputs": { "items": { "additionalProperties": false, "properties": { "bip32_derivs": { "items": { "additionalProperties": false, "properties": { "master_fingerprint": { "description": "The fingerprint of the master key", "type": "string" }, "path": { "description": "The path", "type": "string" }, "pubkey": { "description": "The public key with the derivation path as the value.", "type": "string" } }, "required": [ "pubkey", "master_fingerprint", "path" ], "type": "object" }, "type": "array" }, "final_scriptSig": { "additionalProperties": false, "properties": { "asm": { "description": "Disassembly of the final signature script", "type": "string" }, "hex": { "description": "The raw final signature script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "asm", "hex" ], "type": "object" }, "final_scriptwitness": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "hash160_preimages": { "additionalProperties": { "type": "string" }, "type": "object" }, "hash256_preimages": { "additionalProperties": { "type": "string" }, "type": "object" }, "musig2_partial_sigs": { "items": { "additionalProperties": false, "properties": { "aggregate_pubkey": { "description": "The compressed aggregate public key for which this partial signature is for.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "leaf_hash": { "description": "The hash of the leaf script that contains the aggregate pubkey being signed for. Omitted when signing for the internal key.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "partial_sig": { "description": "The partial signature itself.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "participant_pubkey": { "description": "The compressed public key of the participant that created this partial signature.", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "participant_pubkey", "aggregate_pubkey", "partial_sig" ], "type": "object" }, "type": "array" }, "musig2_participant_pubkeys": { "items": { "additionalProperties": false, "properties": { "aggregate_pubkey": { "description": "The compressed aggregate public key for which the participants create.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "participant_pubkeys": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" } }, "required": [ "aggregate_pubkey", "participant_pubkeys" ], "type": "object" }, "type": "array" }, "musig2_pubnonces": { "items": { "additionalProperties": false, "properties": { "aggregate_pubkey": { "description": "The compressed aggregate public key for which this pubnonce is for.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "leaf_hash": { "description": "The hash of the leaf script that contains the aggregate pubkey being signed for. Omitted when signing for the internal key.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "participant_pubkey": { "description": "The compressed public key of the participant that created this pubnonce.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "pubnonce": { "description": "The public nonce itself.", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "participant_pubkey", "aggregate_pubkey", "pubnonce" ], "type": "object" }, "type": "array" }, "non_witness_utxo": { "additionalProperties": false, "description": "Decoded network transaction for non-witness UTXOs", "properties": {}, "type": "object" }, "partial_signatures": { "additionalProperties": { "type": "string" }, "type": "object" }, "proprietary": { "description": "The input proprietary map", "items": { "additionalProperties": false, "properties": { "identifier": { "description": "The hex string for the proprietary identifier", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "key": { "description": "The hex for the key", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "subtype": { "description": "The number for the subtype", "type": "number" }, "value": { "description": "The hex for the value", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "identifier", "subtype", "key", "value" ], "type": "object" }, "type": "array" }, "redeem_script": { "additionalProperties": false, "properties": { "asm": { "description": "Disassembly of the redeem script", "type": "string" }, "hex": { "description": "The raw redeem script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type, eg 'pubkeyhash'", "type": "string" } }, "required": [ "asm", "hex", "type" ], "type": "object" }, "ripemd160_preimages": { "additionalProperties": { "type": "string" }, "type": "object" }, "sha256_preimages": { "additionalProperties": { "type": "string" }, "type": "object" }, "sighash": { "description": "The sighash type to be used", "type": "string" }, "taproot_bip32_derivs": { "items": { "additionalProperties": false, "properties": { "leaf_hashes": { "description": "The hashes of the leaves this pubkey appears in", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "master_fingerprint": { "description": "The fingerprint of the master key", "type": "string" }, "path": { "description": "The path", "type": "string" }, "pubkey": { "description": "The x-only public key this path corresponds to", "type": "string" } }, "required": [ "pubkey", "master_fingerprint", "path", "leaf_hashes" ], "type": "object" }, "type": "array" }, "taproot_internal_key": { "description": "The hex-encoded Taproot x-only internal key", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "taproot_key_path_sig": { "description": "hex-encoded signature for the Taproot key path spend", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "taproot_merkle_root": { "description": "The hex-encoded Taproot merkle root", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "taproot_script_path_sigs": { "items": { "additionalProperties": false, "properties": { "leaf_hash": { "description": "The leaf hash for this signature", "type": "string" }, "pubkey": { "description": "The x-only pubkey for this signature", "type": "string" }, "sig": { "description": "The signature itself", "type": "string" } }, "required": [ "pubkey", "leaf_hash", "sig" ], "type": "object" }, "type": "array" }, "taproot_scripts": { "items": { "additionalProperties": false, "properties": { "control_blocks": { "description": "The control blocks for this script", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "leaf_ver": { "description": "The version number for the leaf script", "type": "number" }, "script": { "description": "A leaf script", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "script", "leaf_ver", "control_blocks" ], "type": "object" }, "type": "array" }, "unknown": { "additionalProperties": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "description": "The unknown input fields", "type": "object" }, "witness_script": { "additionalProperties": false, "properties": { "asm": { "description": "Disassembly of the witness script", "type": "string" }, "hex": { "description": "The raw witness script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type, eg 'pubkeyhash'", "type": "string" } }, "required": [ "asm", "hex", "type" ], "type": "object" }, "witness_utxo": { "additionalProperties": false, "description": "Transaction output for witness UTXOs", "properties": { "amount": { "description": "The value in BTC", "type": "number" }, "scriptPubKey": { "additionalProperties": false, "properties": { "address": { "description": "The Bitcoin address (only if a well-defined address exists)", "type": "string" }, "asm": { "description": "Disassembly of the output script", "type": "string" }, "desc": { "description": "Inferred descriptor for the output", "type": "string" }, "hex": { "description": "The raw output script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type, eg 'pubkeyhash'", "type": "string" } }, "required": [ "asm", "desc", "hex", "type" ], "type": "object" } }, "required": [ "amount", "scriptPubKey" ], "type": "object" } }, "type": "object" }, "type": "array" }, "outputs": { "items": { "additionalProperties": false, "properties": { "bip32_derivs": { "items": { "additionalProperties": false, "properties": { "master_fingerprint": { "description": "The fingerprint of the master key", "type": "string" }, "path": { "description": "The path", "type": "string" }, "pubkey": { "description": "The public key this path corresponds to", "type": "string" } }, "required": [ "pubkey", "master_fingerprint", "path" ], "type": "object" }, "type": "array" }, "musig2_participant_pubkeys": { "items": { "additionalProperties": false, "properties": { "aggregate_pubkey": { "description": "The compressed aggregate public key for which the participants create.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "participant_pubkeys": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" } }, "required": [ "aggregate_pubkey", "participant_pubkeys" ], "type": "object" }, "type": "array" }, "proprietary": { "description": "The output proprietary map", "items": { "additionalProperties": false, "properties": { "identifier": { "description": "The hex string for the proprietary identifier", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "key": { "description": "The hex for the key", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "subtype": { "description": "The number for the subtype", "type": "number" }, "value": { "description": "The hex for the value", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "identifier", "subtype", "key", "value" ], "type": "object" }, "type": "array" }, "redeem_script": { "additionalProperties": false, "properties": { "asm": { "description": "Disassembly of the redeem script", "type": "string" }, "hex": { "description": "The raw redeem script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type, eg 'pubkeyhash'", "type": "string" } }, "required": [ "asm", "hex", "type" ], "type": "object" }, "taproot_bip32_derivs": { "items": { "additionalProperties": false, "properties": { "leaf_hashes": { "description": "The hashes of the leaves this pubkey appears in", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "master_fingerprint": { "description": "The fingerprint of the master key", "type": "string" }, "path": { "description": "The path", "type": "string" }, "pubkey": { "description": "The x-only public key this path corresponds to", "type": "string" } }, "required": [ "pubkey", "master_fingerprint", "path", "leaf_hashes" ], "type": "object" }, "type": "array" }, "taproot_internal_key": { "description": "The hex-encoded Taproot x-only internal key", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "taproot_tree": { "description": "The tuples that make up the Taproot tree, in depth first search order", "items": { "additionalProperties": false, "properties": { "depth": { "description": "The depth of this element in the tree", "type": "number" }, "leaf_ver": { "description": "The version of this leaf", "type": "number" }, "script": { "description": "The hex-encoded script itself", "type": "string" } }, "required": [ "depth", "leaf_ver", "script" ], "type": "object" }, "type": "array" }, "unknown": { "additionalProperties": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "description": "The unknown output fields", "type": "object" }, "witness_script": { "additionalProperties": false, "properties": { "asm": { "description": "Disassembly of the witness script", "type": "string" }, "hex": { "description": "The raw witness script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type, eg 'pubkeyhash'", "type": "string" } }, "required": [ "asm", "hex", "type" ], "type": "object" } }, "type": "object" }, "type": "array" }, "proprietary": { "description": "The global proprietary map", "items": { "additionalProperties": false, "properties": { "identifier": { "description": "The hex string for the proprietary identifier", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "key": { "description": "The hex for the key", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "subtype": { "description": "The number for the subtype", "type": "number" }, "value": { "description": "The hex for the value", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "identifier", "subtype", "key", "value" ], "type": "object" }, "type": "array" }, "psbt_version": { "description": "The PSBT version number. Not to be confused with the unsigned transaction version", "type": "number" }, "tx": { "additionalProperties": false, "description": "The decoded network-serialized unsigned transaction.", "properties": {}, "type": "object" }, "unknown": { "additionalProperties": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "description": "The unknown global fields", "type": "object" } }, "required": [ "tx", "global_xpubs", "psbt_version", "proprietary", "unknown", "inputs", "outputs" ], "type": "object" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Return a JSON object representing the serialized, hex-encoded transaction.", "name": "decoderawtransaction", "params": [ { "description": "The transaction hex string", "name": "hexstring", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "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.", "name": "iswitness", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "hash": { "description": "The transaction hash (differs from txid for witness transactions)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "locktime": { "description": "The lock time", "type": "number", "x-bitcoin-unit": "unix-time" }, "size": { "description": "The serialized transaction size", "type": "number" }, "txid": { "description": "The transaction id", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "version": { "description": "The version", "type": "number" }, "vin": { "items": { "additionalProperties": false, "properties": { "coinbase": { "description": "The coinbase value (only if coinbase transaction)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "scriptSig": { "additionalProperties": false, "description": "The script (if not coinbase transaction)", "properties": { "asm": { "description": "Disassembly of the signature script", "type": "string" }, "hex": { "description": "The raw signature script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "asm", "hex" ], "type": "object" }, "sequence": { "description": "The script sequence number", "type": "number" }, "txid": { "description": "The transaction id (if not coinbase transaction)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "txinwitness": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "vout": { "description": "The output number (if not coinbase transaction)", "type": "number" } }, "required": [ "sequence" ], "type": "object" }, "type": "array" }, "vout": { "items": { "additionalProperties": false, "properties": { "n": { "description": "index", "type": "number" }, "scriptPubKey": { "additionalProperties": false, "properties": { "address": { "description": "The Bitcoin address (only if a well-defined address exists)", "type": "string" }, "asm": { "description": "Disassembly of the output script", "type": "string" }, "desc": { "description": "Inferred descriptor for the output", "type": "string" }, "hex": { "description": "The raw output script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type (one of: nonstandard, anchor, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_scripthash, witness_v0_keyhash, witness_v1_taproot, witness_unknown)", "type": "string" } }, "required": [ "asm", "desc", "hex", "type" ], "type": "object" }, "value": { "description": "The value in BTC", "type": "string" } }, "required": [ "value", "n", "scriptPubKey" ], "type": "object" }, "type": "array" }, "vsize": { "description": "The virtual transaction size (differs from size for witness transactions)", "type": "number" }, "weight": { "description": "The transaction's weight (between vsize*4-3 and vsize*4)", "type": "number" } }, "required": [ "txid", "hash", "size", "vsize", "weight", "version", "locktime", "vin", "vout" ], "type": "object" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Decode a hex-encoded script.", "name": "decodescript", "params": [ { "description": "the hex-encoded script", "name": "hexstring", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "address": { "description": "The Bitcoin address (only if a well-defined address exists)", "type": "string" }, "asm": { "description": "Disassembly of the script", "type": "string" }, "desc": { "description": "Inferred descriptor for the script", "type": "string" }, "p2sh": { "description": "address of P2SH script wrapping this redeem script (not returned for types that should not be wrapped)", "type": "string" }, "segwit": { "additionalProperties": false, "description": "Result of a witness output script wrapping this redeem script (not returned for types that should not be wrapped)", "properties": { "address": { "description": "The Bitcoin address (only if a well-defined address exists)", "type": "string" }, "asm": { "description": "Disassembly of the output script", "type": "string" }, "desc": { "description": "Inferred descriptor for the script", "type": "string" }, "hex": { "description": "The raw output script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "p2sh-segwit": { "description": "address of the P2SH script wrapping this witness redeem script", "type": "string" }, "type": { "description": "The type of the output script (e.g. witness_v0_keyhash or witness_v0_scripthash)", "type": "string" } }, "required": [ "asm", "hex", "type", "desc", "p2sh-segwit" ], "type": "object" }, "type": { "description": "The output type (e.g. nonstandard, anchor, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_scripthash, witness_v0_keyhash, witness_v1_taproot, witness_unknown)", "type": "string" } }, "required": [ "asm", "desc", "type" ], "type": "object" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Derives one or more addresses corresponding to an output descriptor.\nExamples of output descriptors are:\n pkh() P2PKH outputs for the given pubkey\n wpkh() Native segwit P2PKH outputs for the given pubkey\n sh(multi(,,,...)) P2SH-multisig outputs for the given threshold and pubkeys\n raw() Outputs whose output script equals the specified hex-encoded bytes\n tr(,multi_a(,,,...)) P2TR-multisig outputs for the given threshold and pubkeys\n\nIn the above, 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.", "name": "deriveaddresses", "params": [ { "description": "The descriptor.", "name": "descriptor", "required": true, "schema": { "type": "string" } }, { "description": "If a ranged descriptor is used, this specifies the end or the range (in [begin,end] notation) to derive.", "name": "range", "required": false, "schema": { "oneOf": [ { "type": "number" }, { "maxItems": 2, "minItems": 2, "prefixItems": [ { "type": "number" }, { "type": "number" } ], "type": "array" } ] } } ], "result": { "name": "result", "schema": { "oneOf": [ { "description": "for single derivation descriptors", "items": { "type": "string" }, "type": "array" }, { "description": "for multipath descriptors", "items": { "items": { "type": "string" }, "type": "array" }, "type": "array" } ] } }, "x-bitcoin-category": "util" }, { "description": "Update 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.", "name": "descriptorprocesspsbt", "params": [ { "description": "The transaction base64 string", "name": "psbt", "required": true, "schema": { "type": "string" } }, { "description": "An array of either strings or objects", "name": "descriptors", "required": true, "schema": { "items": { "type": "string" }, "type": "array" } }, { "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\"", "name": "sighashtype", "required": false, "schema": { "type": "string" } }, { "description": "Include BIP 32 derivation paths for public keys if we know them", "name": "bip32derivs", "required": false, "schema": { "type": "boolean" } }, { "description": "Also finalize inputs if possible", "name": "finalize", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "complete": { "description": "If the transaction has a complete set of signatures", "type": "boolean" }, "hex": { "description": "The hex-encoded network transaction if complete", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "psbt": { "description": "The base64-encoded partially signed transaction", "type": "string" } }, "required": [ "psbt", "complete" ], "type": "object" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Immediately 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.", "name": "disconnectnode", "params": [ { "description": "The IP address/port of the node", "name": "address", "required": false, "schema": { "type": "string" } }, { "description": "The node ID (see getpeerinfo for node IDs)", "name": "nodeid", "required": false, "schema": { "type": "number" } } ], "result": { "name": "result", "schema": { "type": "null" } }, "x-bitcoin-category": "network" }, { "description": "Write the serialized UTXO set to a file. This can be used in loadtxoutset afterwards if this snapshot height is supported in the chainparams as well.\n\nUnless the \"latest\" type is requested, the node will roll back to the requested height and network activity will be suspended during this process. Because of this it is discouraged to interact with the node in any other way during the execution of this call to avoid inconsistent results and race conditions, particularly RPCs that interact with blockstorage.\n\nThis call may take several minutes. Make sure to use no RPC timeout (bitcoin-cli -rpcclienttimeout=0)", "name": "dumptxoutset", "params": [ { "description": "Path to the output file. If relative, will be prefixed by datadir.", "name": "path", "required": true, "schema": { "type": "string" } }, { "description": "The type of snapshot to create. Can be \"latest\" to create a snapshot of the current UTXO set or \"rollback\" to temporarily roll back the state of the node to a historical block before creating the snapshot of a historical UTXO set. This parameter can be omitted if a separate \"rollback\" named parameter is specified indicating the height or hash of a specific historical block. If \"rollback\" is specified and separate \"rollback\" named parameter is not specified, this will roll back to the latest valid snapshot block that can currently be loaded with loadtxoutset.", "name": "type", "required": false, "schema": { "type": "string" } }, { "name": "options", "required": false, "schema": { "additionalProperties": false, "properties": { "rollback": { "description": "Height or hash of the block to roll back to before creating the snapshot. Note: The further this number is from the tip, the longer this process will take. Consider setting a higher -rpcclienttimeout value in this case.", "type": "number", "x-bitcoin-type-str": [ "", "string or numeric" ] } }, "type": "object" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "base_hash": { "description": "the hash of the base of the snapshot", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "base_height": { "description": "the height of the base of the snapshot", "type": "number" }, "coins_written": { "description": "the number of coins written in the snapshot", "type": "number" }, "nchaintx": { "description": "the number of transactions in the chain up to and including the base block", "type": "number" }, "path": { "description": "the absolute path that the snapshot was written to", "type": "string" }, "txoutset_hash": { "description": "the hash of the UTXO set contents", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "coins_written", "base_hash", "base_height", "path", "txoutset_hash", "nchaintx" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Encrypts 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 to 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.", "name": "encryptwallet", "params": [ { "description": "The pass phrase to encrypt the wallet with. It must be at least 1 character, but should be long.", "name": "passphrase", "required": true, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "wallet" }, { "description": "Returns a list of external signers from -signer.", "name": "enumeratesigners", "params": [], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "signers": { "items": { "additionalProperties": false, "properties": { "fingerprint": { "description": "Master key fingerprint", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "name": { "description": "Device name", "type": "string" } }, "required": [ "fingerprint", "name" ], "type": "object" }, "type": "array" } }, "required": [ "signers" ], "type": "object" } }, "x-bitcoin-category": "signer" }, { "description": "Estimates 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).", "name": "estimatesmartfee", "params": [ { "description": "Confirmation target in blocks (1 - 1008)", "name": "conf_target", "required": true, "schema": { "type": "number" } }, { "description": "The fee estimate mode.\nunset, economical, conservative \nunset means no mode set (default mode will be used). \neconomical estimates use a shorter time horizon, making them more\nresponsive to short-term drops in the prevailing fee market. This mode\npotentially returns a lower fee rate estimate.\nconservative estimates use a longer time horizon, making them\nless responsive to short-term drops in the prevailing fee market. This mode\npotentially returns a higher fee rate estimate.\n", "name": "estimate_mode", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "blocks": { "description": "block number where estimate was found\nThe request target will be clamped between 2 and the highest target\nfee estimation is able to return based on how long it has been running.\nAn error is returned if not enough transactions and blocks\nhave been observed to make an estimate for any number of blocks.", "type": "number" }, "errors": { "description": "Errors encountered during processing (if there are any)", "items": { "type": "string" }, "type": "array" }, "feerate": { "description": "estimate fee rate in BTC/kvB (only present if no errors were encountered)", "type": "number" } }, "required": [ "blocks" ], "type": "object" } }, "x-bitcoin-category": "util" }, { "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.", "name": "finalizepsbt", "params": [ { "description": "A base64 string of a PSBT", "name": "psbt", "required": true, "schema": { "type": "string" } }, { "description": "If true and the transaction is complete,\n extract and return the complete transaction in normal network serialization instead of the PSBT.", "name": "extract", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "complete": { "description": "If the transaction has a complete set of signatures", "type": "boolean" }, "hex": { "description": "The hex-encoded network transaction if extracted", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "psbt": { "description": "The base64-encoded partially signed transaction if not extracted", "type": "string" } }, "required": [ "complete" ], "type": "object" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "If 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 importdescriptors (to calculate fees).\nYou can see whether this is the case by checking the \"solvable\" field in the listunspent output.\nNote that if specifying an exact fee rate, the resulting transaction may have a higher fee rate\nif the transaction has unconfirmed inputs. This is because the wallet will attempt to make the\nentire package have the given fee rate, not the resulting transaction.", "name": "fundrawtransaction", "params": [ { "description": "The hex string of the raw transaction", "name": "hexstring", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "name": "options", "required": false, "schema": { "additionalProperties": false, "properties": { "add_inputs": { "description": "For a transaction with existing inputs, automatically include more if they are not enough.", "type": "boolean" }, "changeAddress": { "description": "The bitcoin address to receive the change", "type": "string" }, "changePosition": { "description": "The index of the change output", "type": "number" }, "change_type": { "description": "The output type to use. Only valid if changeAddress is not specified. Options are \"legacy\", \"p2sh-segwit\", \"bech32\", \"bech32m\".", "type": "string" }, "conf_target": { "description": "Confirmation target in blocks", "type": "number", "x-bitcoin-also-positional": true }, "estimate_mode": { "description": "The fee estimate mode, must be one of (case insensitive):\nunset, economical, conservative \nunset means no mode set (economical mode is used if the transaction is replaceable;\notherwise, conservative mode is used). \neconomical estimates use a shorter time horizon, making them more\nresponsive to short-term drops in the prevailing fee market. This mode\npotentially returns a lower fee rate estimate.\nconservative estimates use a longer time horizon, making them\nless responsive to short-term drops in the prevailing fee market. This mode\npotentially returns a higher fee rate estimate.\n", "type": "string", "x-bitcoin-also-positional": true }, "feeRate": { "description": "Specify a fee rate in BTC/kvB.", "oneOf": [ { "type": "number" }, { "type": "string" } ] }, "fee_rate": { "description": "Specify a fee rate in sat/vB.", "oneOf": [ { "type": "number" }, { "type": "string" } ] }, "includeWatching": { "description": "(DEPRECATED) No longer used", "type": "boolean" }, "include_unsafe": { "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.", "type": "boolean" }, "input_weights": { "description": "Inputs and their corresponding weights", "items": { "additionalProperties": false, "properties": { "txid": { "description": "The transaction id", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "vout": { "description": "The output index", "type": "number" }, "weight": { "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.", "type": "number" } }, "required": [ "txid", "vout", "weight" ], "type": "object" }, "type": "array" }, "lockUnspents": { "description": "Lock selected unspent outputs", "type": "boolean" }, "max_tx_weight": { "description": "The maximum acceptable transaction weight.\nTransaction building will fail if this can not be satisfied.", "type": "number" }, "maxconf": { "description": "If add_inputs is specified, require inputs with at most this many confirmations.", "type": "number" }, "minconf": { "description": "If add_inputs is specified, require inputs with at least this many confirmations.", "type": "number" }, "replaceable": { "description": "Marks this transaction as BIP125-replaceable.\nAllows this transaction to be replaced by a transaction with higher fees", "type": "boolean" }, "solving_data": { "additionalProperties": false, "description": "Keys and scripts needed for producing a final transaction with a dummy signature.\nUsed for fee estimation during coin selection.", "properties": { "descriptors": { "description": "Descriptors that provide solving data for this transaction.", "items": { "type": "string" }, "type": "array" }, "pubkeys": { "description": "Public keys involved in this transaction.", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "scripts": { "description": "Scripts involved in this transaction.", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" } }, "type": "object" }, "subtractFeeFromOutputs": { "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.", "items": { "type": "number" }, "type": "array" } }, "type": "object" } }, { "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.", "name": "iswitness", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "changepos": { "description": "The position of the added change output, or -1", "type": "number" }, "fee": { "description": "Fee in BTC the resulting transaction pays", "type": "string" }, "hex": { "description": "The resulting raw transaction (hex-encoded string)", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "hex", "fee", "changepos" ], "type": "object" } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Returns information about the given added node, or all added nodes\n(note that onetry addnodes are not listed here)", "name": "getaddednodeinfo", "params": [ { "description": "If provided, return information about this specific node, otherwise all nodes are returned.", "name": "node", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "items": { "additionalProperties": false, "properties": { "addednode": { "description": "The node IP address or name (as provided to addnode)", "type": "string" }, "addresses": { "description": "Only when connected = true", "items": { "additionalProperties": false, "properties": { "address": { "description": "The bitcoin server IP and port we're connected to", "type": "string" }, "connected": { "description": "connection, inbound or outbound", "type": "string" } }, "required": [ "address", "connected" ], "type": "object" }, "type": "array" }, "connected": { "description": "If connected", "type": "boolean" } }, "required": [ "addednode", "connected", "addresses" ], "type": "object" }, "type": "array" } }, "x-bitcoin-category": "network" }, { "description": "Returns the list of addresses assigned the specified label.", "name": "getaddressesbylabel", "params": [ { "description": "The label.", "name": "label", "required": true, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": { "additionalProperties": false, "properties": { "purpose": { "description": "Purpose of address (\"send\" for sending address, \"receive\" for receiving address)", "type": "string" } }, "required": [ "purpose" ], "type": "object" }, "type": "object" } }, "x-bitcoin-category": "wallet" }, { "description": "Return information about the given bitcoin address.\nSome of the information will only be present if the address is in the active wallet.", "name": "getaddressinfo", "params": [ { "description": "The bitcoin address for which to get information.", "name": "address", "required": true, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "address": { "description": "The bitcoin address validated.", "type": "string" }, "desc": { "description": "A descriptor for spending coins sent to this address (only when solvable).", "type": "string" }, "embedded": { "additionalProperties": false, "description": "Information about the address embedded in P2SH or P2WSH, if relevant and known.", "properties": {}, "type": "object" }, "hdkeypath": { "description": "The HD keypath, if the key is HD and available.", "type": "string" }, "hdmasterfingerprint": { "description": "The fingerprint of the master key.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "hdseedid": { "description": "The Hash160 of the HD seed.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "hex": { "description": "The redeemscript for the p2sh address.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "ischange": { "description": "If the address was used for change output.", "type": "boolean" }, "iscompressed": { "description": "If the pubkey is compressed.", "type": "boolean" }, "ismine": { "description": "If the address is yours.", "type": "boolean" }, "isscript": { "description": "If the key is a script.", "type": "boolean" }, "iswatchonly": { "description": "(DEPRECATED) Always false.", "type": "boolean" }, "iswitness": { "description": "If the address is a witness address.", "type": "boolean" }, "labels": { "description": "Array of labels associated with the address. Currently limited to one label but returned\nas an array to keep the API stable if multiple labels are enabled in the future.", "items": { "type": "string" }, "type": "array" }, "parent_desc": { "description": "The descriptor used to derive this address if this is a descriptor wallet", "type": "string" }, "pubkey": { "description": "The hex value of the raw public key for single-key addresses (possibly embedded in P2SH or P2WSH).", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "pubkeys": { "description": "Array of pubkeys associated with the known redeemscript (only if script is multisig).", "items": { "type": "string" }, "type": "array" }, "script": { "description": "The output script type. Only if isscript is true and the redeemscript is known. Possible\ntypes: nonstandard, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_keyhash,\nwitness_v0_scripthash, witness_unknown.", "type": "string" }, "scriptPubKey": { "description": "The hex-encoded output script generated by the address.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "sigsrequired": { "description": "The number of signatures required to spend multisig output (only if script is multisig).", "type": "number" }, "solvable": { "description": "If we know how to spend coins sent to this address, ignoring the possible lack of private keys.", "type": "boolean" }, "timestamp": { "description": "The creation time of the key, if available, expressed in UNIX epoch time.", "type": "number", "x-bitcoin-unit": "unix-time" }, "witness_program": { "description": "The hex value of the witness program.", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "witness_version": { "description": "The version number of the witness program.", "type": "number" } }, "required": [ "address", "scriptPubKey", "ismine", "iswatchonly", "solvable", "ischange", "iswitness", "labels" ], "type": "object" } }, "x-bitcoin-category": "wallet" }, { "description": "Provides 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.", "name": "getaddrmaninfo", "params": [], "result": { "name": "result", "schema": { "additionalProperties": { "additionalProperties": false, "properties": { "new": { "description": "number of addresses in the new table, which represent potential peers the node has discovered but hasn't yet successfully connected to.", "type": "number" }, "total": { "description": "total number of addresses in both new/tried tables", "type": "number" }, "tried": { "description": "number of addresses in the tried table, which represent peers the node has successfully connected to in the past.", "type": "number" } }, "required": [ "new", "tried", "total" ], "type": "object" }, "type": "object" } }, "x-bitcoin-category": "network" }, { "description": "Returns 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.", "name": "getbalance", "params": [ { "description": "Remains for backward compatibility. Must be excluded or set to \"*\".", "name": "dummy", "required": false, "schema": { "type": "string" } }, { "description": "Only include transactions confirmed at least this many times.", "name": "minconf", "required": false, "schema": { "type": "number" } }, { "description": "No longer used", "name": "include_watchonly", "required": false, "schema": { "type": "boolean" } }, { "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.", "name": "avoid_reuse", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "wallet" }, { "description": "Returns an object with all balances in BTC.", "name": "getbalances", "params": [], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "lastprocessedblock": { "additionalProperties": false, "description": "hash and height of the block this information was generated on", "properties": { "hash": { "description": "hash of the block this information was generated on", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "height": { "description": "height of the block this information was generated on", "type": "number" } }, "required": [ "hash", "height" ], "type": "object" }, "mine": { "additionalProperties": false, "description": "balances from outputs that the wallet can sign", "properties": { "immature": { "description": "balance from immature coinbase outputs", "type": "string" }, "trusted": { "description": "trusted balance (outputs created by the wallet or confirmed outputs)", "type": "string" }, "untrusted_pending": { "description": "untrusted pending balance (outputs created by others that are in the mempool)", "type": "string" }, "used": { "description": "(only present if avoid_reuse is set) balance from coins sent to addresses that were previously spent from (potentially privacy violating)", "type": "string" } }, "required": [ "trusted", "untrusted_pending", "immature" ], "type": "object" } }, "required": [ "mine", "lastprocessedblock" ], "type": "object" } }, "x-bitcoin-category": "wallet" }, { "description": "Returns the hash of the best (tip) block in the most-work fully-validated chain.", "name": "getbestblockhash", "params": [], "result": { "name": "result", "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "x-bitcoin-category": "blockchain" }, { "description": "If 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 .\nIf verbosity is 2, returns an Object with information about block and information about each transaction.\nIf verbosity is 3, returns an Object with information about block and information about each transaction, including prevout information for inputs (only for unpruned blocks in the current best chain).", "name": "getblock", "params": [ { "description": "The block hash", "name": "blockhash", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "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", "name": "verbosity", "required": false, "schema": { "type": "number" }, "x-bitcoin-aliases": [ "verbose" ] } ], "result": { "name": "result", "schema": { "oneOf": [ { "description": "for verbosity = 0", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, { "additionalProperties": false, "description": "for verbosity = 1", "properties": { "bits": { "description": "nBits: compact representation of the block difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "chainwork": { "description": "Expected number of hashes required to produce the chain up to this block (in hex)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "confirmations": { "description": "The number of confirmations, or -1 if the block is not on the main chain", "type": "number" }, "difficulty": { "description": "The difficulty", "type": "number" }, "hash": { "description": "the block hash (same as provided)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "height": { "description": "The block height or index", "type": "number" }, "mediantime": { "description": "The median block time expressed in UNIX epoch time", "type": "number", "x-bitcoin-unit": "unix-time" }, "merkleroot": { "description": "The merkle root", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "nTx": { "description": "The number of transactions in the block", "type": "number" }, "nextblockhash": { "description": "The hash of the next block (if available)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "nonce": { "description": "The nonce", "type": "number" }, "previousblockhash": { "description": "The hash of the previous block (if available)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "size": { "description": "The block size", "type": "number" }, "strippedsize": { "description": "The block size excluding witness data", "type": "number" }, "target": { "description": "The difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "time": { "description": "The block time expressed in UNIX epoch time", "type": "number", "x-bitcoin-unit": "unix-time" }, "tx": { "description": "The transaction ids", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "version": { "description": "The block version", "type": "number" }, "versionHex": { "description": "The block version formatted in hexadecimal", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "weight": { "description": "The block weight as defined in BIP 141", "type": "number" } }, "required": [ "hash", "confirmations", "size", "strippedsize", "weight", "height", "version", "versionHex", "merkleroot", "tx", "time", "mediantime", "nonce", "bits", "target", "difficulty", "chainwork", "nTx" ], "type": "object" }, { "additionalProperties": false, "description": "for verbosity = 2", "properties": { "tx": { "items": { "additionalProperties": false, "properties": { "fee": { "description": "The transaction fee in BTC, omitted if block undo data is not available", "type": "number" } }, "required": [ "fee" ], "type": "object" }, "type": "array" } }, "required": [ "tx" ], "type": "object" }, { "additionalProperties": false, "description": "for verbosity = 3", "properties": { "tx": { "items": { "additionalProperties": false, "properties": { "vin": { "items": { "additionalProperties": false, "properties": { "prevout": { "additionalProperties": false, "description": "(Only if undo information is available)", "properties": { "generated": { "description": "Coinbase or not", "type": "boolean" }, "height": { "description": "The height of the prevout", "type": "number" }, "scriptPubKey": { "additionalProperties": false, "properties": { "address": { "description": "The Bitcoin address (only if a well-defined address exists)", "type": "string" }, "asm": { "description": "Disassembly of the output script", "type": "string" }, "desc": { "description": "Inferred descriptor for the output", "type": "string" }, "hex": { "description": "The raw output script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type (one of: nonstandard, anchor, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_scripthash, witness_v0_keyhash, witness_v1_taproot, witness_unknown)", "type": "string" } }, "required": [ "asm", "desc", "hex", "type" ], "type": "object" }, "value": { "description": "The value in BTC", "type": "string" } }, "required": [ "generated", "height", "value", "scriptPubKey" ], "type": "object" } }, "required": [ "prevout" ], "type": "object" }, "type": "array" } }, "required": [ "vin" ], "type": "object" }, "type": "array" } }, "required": [ "tx" ], "type": "object" } ] } }, "x-bitcoin-category": "blockchain" }, { "description": "Returns an object containing various state info regarding blockchain processing.", "name": "getblockchaininfo", "params": [], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "automatic_pruning": { "description": "whether automatic pruning is enabled (only present if pruning is enabled)", "type": "boolean" }, "bestblockhash": { "description": "the hash of the currently best block", "type": "string" }, "bits": { "description": "nBits: compact representation of the block difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "blocks": { "description": "the height of the most-work fully-validated chain. The genesis block has height 0", "type": "number" }, "chain": { "description": "current network name (main, test, testnet4, signet, regtest)", "type": "string" }, "chainwork": { "description": "total amount of work in active chain, in hexadecimal", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "difficulty": { "description": "the current difficulty", "type": "number" }, "headers": { "description": "the current number of headers we have validated", "type": "number" }, "initialblockdownload": { "description": "(debug information) estimate of whether this node is in Initial Block Download mode", "type": "boolean" }, "mediantime": { "description": "The median block time expressed in UNIX epoch time", "type": "number", "x-bitcoin-unit": "unix-time" }, "prune_target_size": { "description": "the target size used by pruning (only present if automatic pruning is enabled)", "type": "number" }, "pruned": { "description": "if the blocks are subject to pruning", "type": "boolean" }, "pruneheight": { "description": "height of the last block pruned, plus one (only present if pruning is enabled)", "type": "number" }, "signet_challenge": { "description": "the block challenge (aka. block script), in hexadecimal (only present if the current network is a signet)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "size_on_disk": { "description": "the estimated size of the block and undo files on disk", "type": "number" }, "target": { "description": "The difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "time": { "description": "The block time expressed in UNIX epoch time", "type": "number", "x-bitcoin-unit": "unix-time" }, "verificationprogress": { "description": "estimate of verification progress [0..1]", "type": "number" }, "warnings": { "description": "any network and blockchain warnings (run with `-deprecatedrpc=warnings` to return the latest warning as a single string)", "items": { "type": "string" }, "type": "array" } }, "required": [ "chain", "blocks", "headers", "bestblockhash", "bits", "target", "difficulty", "time", "mediantime", "verificationprogress", "initialblockdownload", "chainwork", "size_on_disk", "pruned", "warnings" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Returns the height of the most-work fully-validated chain.\nThe genesis block has height 0.", "name": "getblockcount", "params": [], "result": { "name": "result", "schema": { "type": "number" } }, "x-bitcoin-category": "blockchain" }, { "description": "Retrieve a BIP 157 content filter for a particular block.", "name": "getblockfilter", "params": [ { "description": "The hash of the block", "name": "blockhash", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "description": "The type name of the filter", "name": "filtertype", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "filter": { "description": "the hex-encoded filter data", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "header": { "description": "the hex-encoded filter header", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "filter", "header" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Attempt to fetch block from a given peer.\n\nWe must have the header for this block, e.g. using submitheader.\nThe block will not have any undo data which can limit the usage of the block data in a context where the undo data is needed.\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.", "name": "getblockfrompeer", "params": [ { "description": "The block hash to try to fetch", "name": "blockhash", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "description": "The peer to fetch it from (see getpeerinfo for peer IDs)", "name": "peer_id", "required": true, "schema": { "type": "number" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": {}, "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Returns hash of block in best-block-chain at height provided.", "name": "getblockhash", "params": [ { "description": "The height index", "name": "height", "required": true, "schema": { "type": "number" } } ], "result": { "name": "result", "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "x-bitcoin-category": "blockchain" }, { "description": "If 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 .", "name": "getblockheader", "params": [ { "description": "The block hash", "name": "blockhash", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "description": "true for a json object, false for the hex-encoded data", "name": "verbose", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "oneOf": [ { "additionalProperties": false, "description": "for verbose = true", "properties": { "bits": { "description": "nBits: compact representation of the block difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "chainwork": { "description": "Expected number of hashes required to produce the current chain", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "confirmations": { "description": "The number of confirmations, or -1 if the block is not on the main chain", "type": "number" }, "difficulty": { "description": "The difficulty", "type": "number" }, "hash": { "description": "the block hash (same as provided)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "height": { "description": "The block height or index", "type": "number" }, "mediantime": { "description": "The median block time expressed in UNIX epoch time", "type": "number", "x-bitcoin-unit": "unix-time" }, "merkleroot": { "description": "The merkle root", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "nTx": { "description": "The number of transactions in the block", "type": "number" }, "nextblockhash": { "description": "The hash of the next block (if available)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "nonce": { "description": "The nonce", "type": "number" }, "previousblockhash": { "description": "The hash of the previous block (if available)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "target": { "description": "The difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "time": { "description": "The block time expressed in UNIX epoch time", "type": "number", "x-bitcoin-unit": "unix-time" }, "version": { "description": "The block version", "type": "number" }, "versionHex": { "description": "The block version formatted in hexadecimal", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "hash", "confirmations", "height", "version", "versionHex", "merkleroot", "time", "mediantime", "nonce", "bits", "target", "difficulty", "chainwork", "nTx" ], "type": "object" }, { "description": "for verbose=false", "pattern": "^[0-9a-fA-F]*$", "type": "string" } ] } }, "x-bitcoin-category": "blockchain" }, { "description": "Compute per block statistics for a given window. All amounts are in satoshis.\nIt won't work for some heights with pruning.", "name": "getblockstats", "params": [ { "description": "The block hash or height of the target block", "name": "hash_or_height", "required": true, "schema": { "type": "number" }, "x-bitcoin-type-str": [ "", "string or numeric" ] }, { "description": "Values to plot (see result below)", "name": "stats", "required": false, "schema": { "items": { "type": "string" }, "type": "array" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "avgfee": { "description": "Average fee in the block", "type": "number" }, "avgfeerate": { "description": "Average feerate (in satoshis per virtual byte)", "type": "number" }, "avgtxsize": { "description": "Average transaction size", "type": "number" }, "blockhash": { "description": "The block hash (to check for potential reorgs)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "feerate_percentiles": { "description": "Feerates at the 10th, 25th, 50th, 75th, and 90th percentile weight unit (in satoshis per virtual byte)", "maxItems": 5, "minItems": 5, "prefixItems": [ { "type": "number" }, { "type": "number" }, { "type": "number" }, { "type": "number" }, { "type": "number" } ], "type": "array" }, "height": { "description": "The height of the block", "type": "number" }, "ins": { "description": "The number of inputs (excluding coinbase)", "type": "number" }, "maxfee": { "description": "Maximum fee in the block", "type": "number" }, "maxfeerate": { "description": "Maximum feerate (in satoshis per virtual byte)", "type": "number" }, "maxtxsize": { "description": "Maximum transaction size", "type": "number" }, "medianfee": { "description": "Truncated median fee in the block", "type": "number" }, "mediantime": { "description": "The block median time past", "type": "number" }, "mediantxsize": { "description": "Truncated median transaction size", "type": "number" }, "minfee": { "description": "Minimum fee in the block", "type": "number" }, "minfeerate": { "description": "Minimum feerate (in satoshis per virtual byte)", "type": "number" }, "mintxsize": { "description": "Minimum transaction size", "type": "number" }, "outs": { "description": "The number of outputs", "type": "number" }, "subsidy": { "description": "The block subsidy", "type": "number" }, "swtotal_size": { "description": "Total size of all segwit transactions", "type": "number" }, "swtotal_weight": { "description": "Total weight of all segwit transactions", "type": "number" }, "swtxs": { "description": "The number of segwit transactions", "type": "number" }, "time": { "description": "The block time", "type": "number" }, "total_out": { "description": "Total amount in all outputs (excluding coinbase and thus reward [ie subsidy + totalfee])", "type": "number" }, "total_size": { "description": "Total size of all non-coinbase transactions", "type": "number" }, "total_weight": { "description": "Total weight of all non-coinbase transactions", "type": "number" }, "totalfee": { "description": "The fee total", "type": "number" }, "txs": { "description": "The number of transactions (including coinbase)", "type": "number" }, "utxo_increase": { "description": "The increase/decrease in the number of unspent outputs (not discounting op_return and similar)", "type": "number" }, "utxo_increase_actual": { "description": "The increase/decrease in the number of unspent outputs, not counting unspendables", "type": "number" }, "utxo_size_inc": { "description": "The increase/decrease in size for the utxo index (not discounting op_return and similar)", "type": "number" }, "utxo_size_inc_actual": { "description": "The increase/decrease in size for the utxo index, not counting unspendables", "type": "number" } }, "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "If 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", "name": "getblocktemplate", "params": [ { "description": "Format of the template", "name": "template_request", "required": true, "schema": { "additionalProperties": false, "properties": { "capabilities": { "description": "A list of strings", "items": { "type": "string" }, "type": "array" }, "data": { "description": "proposed block data to check, encoded in hexadecimal; valid only for mode=\"proposal\"", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "longpollid": { "description": "delay processing request until the result would vary significantly from the \"longpollid\" of a prior template", "type": "string" }, "mode": { "description": "This must be set to \"template\", \"proposal\" (see BIP 23), or omitted", "type": "string" }, "rules": { "description": "A list of strings", "items": { "type": "string" }, "type": "array" } }, "required": [ "rules" ], "type": "object" } } ], "result": { "name": "result", "schema": { "oneOf": [ { "description": "If the proposal was accepted with mode=='proposal'", "type": "null" }, { "description": "If the proposal was not accepted with mode=='proposal'", "type": "string" }, { "additionalProperties": false, "description": "Otherwise", "properties": { "bits": { "description": "compressed target of next block", "type": "string" }, "capabilities": { "items": { "type": "string" }, "type": "array" }, "coinbaseaux": { "additionalProperties": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "description": "data that should be included in the coinbase's scriptSig content", "type": "object" }, "coinbasevalue": { "description": "maximum allowable input to coinbase transaction, including the generation award and transaction fees (in satoshis)", "type": "number" }, "curtime": { "description": "current timestamp in UNIX epoch time. Adjusted for the proposed BIP94 timewarp rule.", "type": "number", "x-bitcoin-unit": "unix-time" }, "default_witness_commitment": { "description": "a valid witness commitment for the unmodified block template", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "height": { "description": "The height of the next block", "type": "number" }, "longpollid": { "description": "an id to include with a request to longpoll on an update to this template", "type": "string" }, "mintime": { "description": "The minimum timestamp appropriate for the next block time, expressed in UNIX epoch time. Adjusted for the proposed BIP94 timewarp rule.", "type": "number", "x-bitcoin-unit": "unix-time" }, "mutable": { "description": "list of ways the block template may be changed", "items": { "type": "string" }, "type": "array" }, "noncerange": { "description": "A range of valid nonces", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "previousblockhash": { "description": "The hash of current highest block", "type": "string" }, "rules": { "description": "specific block rules that are to be enforced", "items": { "type": "string" }, "type": "array" }, "signet_challenge": { "description": "Only on signet", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "sigoplimit": { "description": "limit of sigops in blocks", "type": "number" }, "sizelimit": { "description": "limit of block size", "type": "number" }, "target": { "description": "The hash target", "type": "string" }, "transactions": { "description": "contents of non-coinbase transactions that should be included in the next block", "items": { "additionalProperties": false, "properties": { "data": { "description": "transaction data encoded in hexadecimal (byte-for-byte)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "depends": { "description": "array of numbers", "items": { "type": "number" }, "type": "array" }, "fee": { "description": "difference in value between transaction inputs and outputs (in satoshis); for coinbase transactions, this is a negative Number of the total collected block fees (ie, not including the block subsidy); if key is not present, fee is unknown and clients MUST NOT assume there isn't one", "type": "number" }, "hash": { "description": "transaction hash including witness data, shown in byte-reversed hex", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "sigops": { "description": "total SigOps cost, as counted for purposes of block limits; if key is not present, sigop cost is unknown and clients MUST NOT assume it is zero", "type": "number" }, "txid": { "description": "transaction hash excluding witness data, shown in byte-reversed hex", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "weight": { "description": "total transaction weight, as counted for purposes of block limits", "type": "number" } }, "required": [ "data", "txid", "hash", "depends", "fee", "sigops", "weight" ], "type": "object" }, "type": "array" }, "vbavailable": { "additionalProperties": { "type": "number" }, "description": "set of pending, supported versionbit (BIP 9) softfork deployments", "type": "object" }, "vbrequired": { "description": "bit mask of versionbits the server requires set in submissions", "type": "number" }, "version": { "description": "The preferred block version", "type": "number" }, "weightlimit": { "description": "limit of block weight", "type": "number" } }, "required": [ "version", "rules", "vbavailable", "capabilities", "vbrequired", "previousblockhash", "transactions", "coinbaseaux", "coinbasevalue", "longpollid", "target", "mintime", "mutable", "noncerange", "sigoplimit", "sizelimit", "curtime", "bits", "height" ], "type": "object" } ] } }, "x-bitcoin-category": "mining" }, { "description": "Return information about chainstates.", "name": "getchainstates", "params": [], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "chainstates": { "description": "list of the chainstates ordered by work, with the most-work (active) chainstate last", "items": { "additionalProperties": false, "properties": { "bestblockhash": { "description": "blockhash of the tip", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "bits": { "description": "nBits: compact representation of the block difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "blocks": { "description": "number of blocks in this chainstate", "type": "number" }, "coins_db_cache_bytes": { "description": "size of the coinsdb cache", "type": "number" }, "coins_tip_cache_bytes": { "description": "size of the coinstip cache", "type": "number" }, "difficulty": { "description": "difficulty of the tip", "type": "number" }, "snapshot_blockhash": { "description": "the base block of the snapshot this chainstate is based on, if any", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "target": { "description": "The difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "validated": { "description": "whether the chainstate is fully validated. True if all blocks in the chainstate were validated, false if the chain is based on a snapshot and the snapshot has not yet been validated.", "type": "boolean" }, "verificationprogress": { "description": "progress towards the network tip", "type": "number" } }, "required": [ "blocks", "bestblockhash", "bits", "target", "difficulty", "verificationprogress", "coins_db_cache_bytes", "coins_tip_cache_bytes", "validated" ], "type": "object" }, "type": "array" }, "headers": { "description": "the number of headers seen so far", "type": "number" } }, "required": [ "headers", "chainstates" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Return information about all known tips in the block tree, including the main chain as well as orphaned branches.", "name": "getchaintips", "params": [], "result": { "name": "result", "schema": { "items": { "additionalProperties": false, "properties": { "branchlen": { "description": "zero for main chain, otherwise length of branch connecting the tip to the main chain", "type": "number" }, "hash": { "description": "block hash of the tip", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "height": { "description": "height of the chain tip", "type": "number" }, "status": { "description": "status of the chain, \"active\" for the main chain\nPossible values for status:\n1. \"invalid\" This branch contains at least one invalid block\n2. \"headers-only\" Not all blocks for this branch are available, but the headers are valid\n3. \"valid-headers\" All blocks are available for this branch, but they were never fully validated\n4. \"valid-fork\" This branch is not part of the active chain, but is fully validated\n5. \"active\" This is the tip of the active main chain, which is certainly valid", "type": "string" } }, "required": [ "height", "hash", "branchlen", "status" ], "type": "object" }, "type": "array" } }, "x-bitcoin-category": "blockchain" }, { "description": "Compute statistics about the total number and rate of transactions in the chain.", "name": "getchaintxstats", "params": [ { "description": "Size of the window in number of blocks", "name": "nblocks", "required": false, "schema": { "type": "number" } }, { "description": "The hash of the block that ends the window.", "name": "blockhash", "required": false, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "time": { "description": "The timestamp for the final block in the window, expressed in UNIX epoch time", "type": "number", "x-bitcoin-unit": "unix-time" }, "txcount": { "description": "The total number of transactions in the chain up to that point, if known. It may be unknown when using assumeutxo.", "type": "number" }, "txrate": { "description": "The average rate of transactions per second in the window. Only returned if \"window_interval\" is > 0 and if window_tx_count exists.", "type": "number" }, "window_block_count": { "description": "Size of the window in number of blocks", "type": "number" }, "window_final_block_hash": { "description": "The hash of the final block in the window", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "window_final_block_height": { "description": "The height of the final block in the window.", "type": "number" }, "window_interval": { "description": "The elapsed time in the window in seconds. Only returned if \"window_block_count\" is > 0", "type": "number" }, "window_tx_count": { "description": "The number of transactions in the window. Only returned if \"window_block_count\" is > 0 and if txcount exists for the start and end of the window.", "type": "number" } }, "required": [ "time", "window_final_block_hash", "window_final_block_height", "window_block_count" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Returns the number of connections to other nodes.", "name": "getconnectioncount", "params": [], "result": { "name": "result", "schema": { "type": "number" } }, "x-bitcoin-category": "network" }, { "description": "Returns an object containing various state info regarding deployments of consensus changes.", "name": "getdeploymentinfo", "params": [ { "description": "The block hash at which to query deployment state", "name": "blockhash", "required": false, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "deployments": { "additionalProperties": { "additionalProperties": false, "properties": { "active": { "description": "true if the rules are enforced for the mempool and the next block", "type": "boolean" }, "bip9": { "additionalProperties": false, "description": "status of bip9 softforks (only for \"bip9\" type)", "properties": { "bit": { "description": "the bit (0-28) in the block version field used to signal this softfork (only for \"started\" and \"locked_in\" status)", "type": "number" }, "min_activation_height": { "description": "minimum height of blocks for which the rules may be enforced", "type": "number" }, "signalling": { "description": "indicates blocks that signalled with a # and blocks that did not with a -", "type": "string" }, "since": { "description": "height of the first block to which the status applies", "type": "number" }, "start_time": { "description": "the minimum median time past of a block at which the bit gains its meaning", "type": "number", "x-bitcoin-unit": "unix-time" }, "statistics": { "additionalProperties": false, "description": "numeric statistics about signalling for a softfork (only for \"started\" and \"locked_in\" status)", "properties": { "count": { "description": "the number of blocks with the version bit set in the current period", "type": "number" }, "elapsed": { "description": "the number of blocks elapsed since the beginning of the current period", "type": "number" }, "period": { "description": "the length in blocks of the signalling period", "type": "number" }, "possible": { "description": "returns false if there are not enough blocks left in this period to pass activation threshold (only for \"started\" status)", "type": "boolean" }, "threshold": { "description": "the number of blocks with the version bit set required to activate the feature (only for \"started\" status)", "type": "number" } }, "required": [ "period", "elapsed", "count" ], "type": "object" }, "status": { "description": "status of deployment at specified block (one of \"defined\", \"started\", \"locked_in\", \"active\", \"failed\")", "type": "string" }, "status_next": { "description": "status of deployment at the next block", "type": "string" }, "timeout": { "description": "the median time past of a block at which the deployment is considered failed if not yet locked in", "type": "number", "x-bitcoin-unit": "unix-time" } }, "required": [ "start_time", "timeout", "min_activation_height", "status", "since", "status_next" ], "type": "object" }, "height": { "description": "height of the first block which the rules are or will be enforced (only for \"buried\" type, or \"bip9\" type with \"active\" status)", "type": "number" }, "type": { "description": "one of \"buried\", \"bip9\"", "type": "string" } }, "required": [ "type", "active" ], "type": "object" }, "type": "object" }, "hash": { "description": "requested block hash (or tip)", "type": "string" }, "height": { "description": "requested block height (or tip)", "type": "number" }, "script_flags": { "description": "script verify flags for the block", "items": { "type": "string" }, "type": "array" } }, "required": [ "hash", "height", "script_flags", "deployments" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Get spend and receive activity associated with a set of descriptors for a set of blocks. This command pairs well with the `relevant_blocks` output of `scanblocks()`.\nThis call may take several minutes. If you encounter timeouts, try specifying no RPC timeout (bitcoin-cli -rpcclienttimeout=0)", "name": "getdescriptoractivity", "params": [ { "description": "The list of blockhashes to examine for activity. Order doesn't matter. Must be along main chain or an error is thrown.\n", "name": "blockhashes", "required": true, "schema": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" } }, { "description": "The list of descriptors (scan objects) to examine for activity. Every scan object is either a string descriptor or an object:", "name": "scanobjects", "required": true, "schema": { "items": { "type": "string" }, "type": "array" } }, { "description": "Whether to include unconfirmed activity", "name": "include_mempool", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "activity": { "description": "events", "items": { "additionalProperties": false, "properties": { "amount": { "description": "The total amount in BTC of the spent output", "type": "string" }, "blockhash": { "description": "The blockhash this spend appears in (omitted if unconfirmed)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "height": { "description": "Height of the spend (omitted if unconfirmed)", "type": "number" }, "prevout_spk": { "additionalProperties": false, "properties": { "address": { "description": "The Bitcoin address (only if a well-defined address exists)", "type": "string" }, "asm": { "description": "Disassembly of the output script", "type": "string" }, "desc": { "description": "Inferred descriptor for the output", "type": "string" }, "hex": { "description": "The raw output script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type (one of: nonstandard, anchor, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_scripthash, witness_v0_keyhash, witness_v1_taproot, witness_unknown)", "type": "string" } }, "required": [ "asm", "desc", "hex", "type" ], "type": "object" }, "prevout_txid": { "description": "The txid of the prevout", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "prevout_vout": { "description": "The vout of the prevout", "type": "number" }, "spend_txid": { "description": "The txid of the spending transaction", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "spend_vin": { "description": "The input index of the spend", "type": "number" }, "type": { "description": "always 'spend'", "type": "string" } }, "required": [ "type", "amount", "spend_txid", "spend_vin", "prevout_txid", "prevout_vout", "prevout_spk" ], "type": "object" }, "type": "array" } }, "required": [ "activity" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Analyses a descriptor.", "name": "getdescriptorinfo", "params": [ { "description": "The descriptor.", "name": "descriptor", "required": true, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "checksum": { "description": "The checksum for the input descriptor", "type": "string" }, "descriptor": { "description": "The descriptor in canonical form, without private keys. For a multipath descriptor, only the first will be returned.", "type": "string" }, "hasprivatekeys": { "description": "Whether the input descriptor contained at least one private key", "type": "boolean" }, "isrange": { "description": "Whether the descriptor is ranged", "type": "boolean" }, "issolvable": { "description": "Whether the descriptor is solvable", "type": "boolean" }, "multipath_expansion": { "description": "All descriptors produced by expanding multipath derivation elements. Only if the provided descriptor specifies multipath derivation elements.", "items": { "type": "string" }, "type": "array" } }, "required": [ "descriptor", "checksum", "isrange", "issolvable", "hasprivatekeys" ], "type": "object" } }, "x-bitcoin-category": "util" }, { "description": "Returns the proof-of-work difficulty as a multiple of the minimum difficulty.", "name": "getdifficulty", "params": [], "result": { "name": "result", "schema": { "type": "number" } }, "x-bitcoin-category": "blockchain" }, { "description": "List all BIP 32 HD keys in the wallet and which descriptors use them.", "name": "gethdkeys", "params": [ { "name": "options", "required": false, "schema": { "additionalProperties": false, "properties": { "active_only": { "description": "Show the keys for only active descriptors", "type": "boolean" }, "private": { "description": "Show private keys", "type": "boolean" } }, "type": "object" } } ], "result": { "name": "result", "schema": { "items": { "additionalProperties": false, "properties": { "descriptors": { "description": "Array of descriptor objects that use this HD key", "items": { "additionalProperties": false, "properties": { "active": { "description": "Whether this descriptor is currently used to generate new addresses", "type": "boolean" }, "desc": { "description": "Descriptor string representation", "type": "string" } }, "required": [ "desc", "active" ], "type": "object" }, "type": "array" }, "has_private": { "description": "Whether the wallet has the private key for this xpub", "type": "boolean" }, "xprv": { "description": "The extended private key if \"private\" is true", "type": "string" }, "xpub": { "description": "The extended public key", "type": "string" } }, "required": [ "xpub", "has_private", "descriptors" ], "type": "object" }, "type": "array" } }, "x-bitcoin-category": "wallet" }, { "description": "Returns the status of one or all available indices currently running in the node.", "name": "getindexinfo", "params": [ { "description": "Filter results for an index with a specific name.", "name": "index_name", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": { "additionalProperties": false, "properties": { "best_block_height": { "description": "The block height to which the index is synced", "type": "number" }, "synced": { "description": "Whether the index is synced or not", "type": "boolean" } }, "required": [ "synced", "best_block_height" ], "type": "object" }, "type": "object" } }, "x-bitcoin-category": "util" }, { "description": "Returns an object containing information about memory usage.", "name": "getmemoryinfo", "params": [ { "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).", "name": "mode", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "oneOf": [ { "additionalProperties": false, "description": "mode \"stats\"", "properties": { "locked": { "additionalProperties": false, "description": "Information about locked memory manager", "properties": { "chunks_free": { "description": "Number unused chunks", "type": "number" }, "chunks_used": { "description": "Number allocated chunks", "type": "number" }, "free": { "description": "Number of bytes available in current arenas", "type": "number" }, "locked": { "description": "Amount of bytes that succeeded locking. If this number is smaller than total, locking pages failed at some point and key data could be swapped to disk.", "type": "number" }, "total": { "description": "Total number of bytes managed", "type": "number" }, "used": { "description": "Number of bytes used", "type": "number" } }, "required": [ "used", "free", "total", "locked", "chunks_used", "chunks_free" ], "type": "object" } }, "required": [ "locked" ], "type": "object" }, { "description": "mode \"mallocinfo\"", "type": "string" } ] } }, "x-bitcoin-category": "control" }, { "description": "If txid is in the mempool, returns all in-mempool ancestors.", "name": "getmempoolancestors", "params": [ { "description": "The transaction id (must be in mempool)", "name": "txid", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "description": "True for a json object, false for array of transaction ids", "name": "verbose", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "oneOf": [ { "description": "for verbose = false", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, { "additionalProperties": { "additionalProperties": false, "properties": { "ancestorcount": { "description": "number of in-mempool ancestor transactions (including this one)", "type": "number" }, "ancestorsize": { "description": "virtual transaction size of in-mempool ancestors (including this one)", "type": "number" }, "bip125-replaceable": { "description": "Whether this transaction signals BIP125 replaceability or has an unconfirmed ancestor signaling BIP125 replaceability. (DEPRECATED)\n", "type": "boolean" }, "chunkweight": { "description": "sigops-adjusted weight (as defined in BIP 141 and modified by '-bytespersigop') of this transaction's chunk", "type": "number" }, "depends": { "description": "unconfirmed transactions used as inputs for this transaction", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "descendantcount": { "description": "number of in-mempool descendant transactions (including this one)", "type": "number" }, "descendantsize": { "description": "virtual transaction size of in-mempool descendants (including this one)", "type": "number" }, "fees": { "additionalProperties": false, "properties": { "ancestor": { "description": "transaction fees of in-mempool ancestors (including this one) with fee deltas used for mining priority, denominated in BTC", "type": "string" }, "base": { "description": "transaction fee, denominated in BTC", "type": "string" }, "chunk": { "description": "transaction fees of chunk, denominated in BTC", "type": "string" }, "descendant": { "description": "transaction fees of in-mempool descendants (including this one) with fee deltas used for mining priority, denominated in BTC", "type": "string" }, "modified": { "description": "transaction fee with fee deltas used for mining priority, denominated in BTC", "type": "string" } }, "required": [ "base", "modified", "ancestor", "descendant", "chunk" ], "type": "object" }, "height": { "description": "block height when transaction entered pool", "type": "number" }, "spentby": { "description": "unconfirmed transactions spending outputs from this transaction", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "time": { "description": "local time transaction entered pool in seconds since 1 Jan 1970 GMT", "type": "number", "x-bitcoin-unit": "unix-time" }, "unbroadcast": { "description": "Whether this transaction is currently unbroadcast (initial broadcast not yet acknowledged by any peers)", "type": "boolean" }, "vsize": { "description": "virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.", "type": "number" }, "weight": { "description": "transaction weight as defined in BIP 141.", "type": "number" }, "wtxid": { "description": "hash of serialized transaction, including witness data", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "vsize", "weight", "time", "height", "descendantcount", "descendantsize", "ancestorcount", "ancestorsize", "chunkweight", "wtxid", "fees", "depends", "spentby", "bip125-replaceable", "unbroadcast" ], "type": "object" }, "description": "for verbose = true", "type": "object" } ] } }, "x-bitcoin-category": "blockchain" }, { "description": "Returns mempool data for given cluster", "name": "getmempoolcluster", "params": [ { "description": "The txid of a transaction in the cluster", "name": "txid", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "chunks": { "description": "chunks in this cluster (in mining order)", "items": { "additionalProperties": false, "properties": { "chunkfee": { "description": "fees of the transactions in this chunk", "type": "number" }, "chunkweight": { "description": "sigops-adjusted weight of all transactions in this chunk", "type": "number" }, "txs": { "description": "transactions in this chunk in mining order", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" } }, "required": [ "chunkfee", "chunkweight", "txs" ], "type": "object" }, "type": "array" }, "clusterweight": { "description": "total sigops-adjusted weight (as defined in BIP 141 and modified by '-bytespersigop')", "type": "number" }, "txcount": { "description": "number of transactions", "type": "number" } }, "required": [ "clusterweight", "txcount", "chunks" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "If txid is in the mempool, returns all in-mempool descendants.", "name": "getmempooldescendants", "params": [ { "description": "The transaction id (must be in mempool)", "name": "txid", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "description": "True for a json object, false for array of transaction ids", "name": "verbose", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "oneOf": [ { "description": "for verbose = false", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, { "additionalProperties": { "additionalProperties": false, "properties": { "ancestorcount": { "description": "number of in-mempool ancestor transactions (including this one)", "type": "number" }, "ancestorsize": { "description": "virtual transaction size of in-mempool ancestors (including this one)", "type": "number" }, "bip125-replaceable": { "description": "Whether this transaction signals BIP125 replaceability or has an unconfirmed ancestor signaling BIP125 replaceability. (DEPRECATED)\n", "type": "boolean" }, "chunkweight": { "description": "sigops-adjusted weight (as defined in BIP 141 and modified by '-bytespersigop') of this transaction's chunk", "type": "number" }, "depends": { "description": "unconfirmed transactions used as inputs for this transaction", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "descendantcount": { "description": "number of in-mempool descendant transactions (including this one)", "type": "number" }, "descendantsize": { "description": "virtual transaction size of in-mempool descendants (including this one)", "type": "number" }, "fees": { "additionalProperties": false, "properties": { "ancestor": { "description": "transaction fees of in-mempool ancestors (including this one) with fee deltas used for mining priority, denominated in BTC", "type": "string" }, "base": { "description": "transaction fee, denominated in BTC", "type": "string" }, "chunk": { "description": "transaction fees of chunk, denominated in BTC", "type": "string" }, "descendant": { "description": "transaction fees of in-mempool descendants (including this one) with fee deltas used for mining priority, denominated in BTC", "type": "string" }, "modified": { "description": "transaction fee with fee deltas used for mining priority, denominated in BTC", "type": "string" } }, "required": [ "base", "modified", "ancestor", "descendant", "chunk" ], "type": "object" }, "height": { "description": "block height when transaction entered pool", "type": "number" }, "spentby": { "description": "unconfirmed transactions spending outputs from this transaction", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "time": { "description": "local time transaction entered pool in seconds since 1 Jan 1970 GMT", "type": "number", "x-bitcoin-unit": "unix-time" }, "unbroadcast": { "description": "Whether this transaction is currently unbroadcast (initial broadcast not yet acknowledged by any peers)", "type": "boolean" }, "vsize": { "description": "virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.", "type": "number" }, "weight": { "description": "transaction weight as defined in BIP 141.", "type": "number" }, "wtxid": { "description": "hash of serialized transaction, including witness data", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "vsize", "weight", "time", "height", "descendantcount", "descendantsize", "ancestorcount", "ancestorsize", "chunkweight", "wtxid", "fees", "depends", "spentby", "bip125-replaceable", "unbroadcast" ], "type": "object" }, "description": "for verbose = true", "type": "object" } ] } }, "x-bitcoin-category": "blockchain" }, { "description": "Returns mempool data for given transaction", "name": "getmempoolentry", "params": [ { "description": "The transaction id (must be in mempool)", "name": "txid", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } } ], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "ancestorcount": { "description": "number of in-mempool ancestor transactions (including this one)", "type": "number" }, "ancestorsize": { "description": "virtual transaction size of in-mempool ancestors (including this one)", "type": "number" }, "bip125-replaceable": { "description": "Whether this transaction signals BIP125 replaceability or has an unconfirmed ancestor signaling BIP125 replaceability. (DEPRECATED)\n", "type": "boolean" }, "chunkweight": { "description": "sigops-adjusted weight (as defined in BIP 141 and modified by '-bytespersigop') of this transaction's chunk", "type": "number" }, "depends": { "description": "unconfirmed transactions used as inputs for this transaction", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "descendantcount": { "description": "number of in-mempool descendant transactions (including this one)", "type": "number" }, "descendantsize": { "description": "virtual transaction size of in-mempool descendants (including this one)", "type": "number" }, "fees": { "additionalProperties": false, "properties": { "ancestor": { "description": "transaction fees of in-mempool ancestors (including this one) with fee deltas used for mining priority, denominated in BTC", "type": "string" }, "base": { "description": "transaction fee, denominated in BTC", "type": "string" }, "chunk": { "description": "transaction fees of chunk, denominated in BTC", "type": "string" }, "descendant": { "description": "transaction fees of in-mempool descendants (including this one) with fee deltas used for mining priority, denominated in BTC", "type": "string" }, "modified": { "description": "transaction fee with fee deltas used for mining priority, denominated in BTC", "type": "string" } }, "required": [ "base", "modified", "ancestor", "descendant", "chunk" ], "type": "object" }, "height": { "description": "block height when transaction entered pool", "type": "number" }, "spentby": { "description": "unconfirmed transactions spending outputs from this transaction", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "time": { "description": "local time transaction entered pool in seconds since 1 Jan 1970 GMT", "type": "number", "x-bitcoin-unit": "unix-time" }, "unbroadcast": { "description": "Whether this transaction is currently unbroadcast (initial broadcast not yet acknowledged by any peers)", "type": "boolean" }, "vsize": { "description": "virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.", "type": "number" }, "weight": { "description": "transaction weight as defined in BIP 141.", "type": "number" }, "wtxid": { "description": "hash of serialized transaction, including witness data", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "vsize", "weight", "time", "height", "descendantcount", "descendantsize", "ancestorcount", "ancestorsize", "chunkweight", "wtxid", "fees", "depends", "spentby", "bip125-replaceable", "unbroadcast" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Returns details on the active state of the TX memory pool.", "name": "getmempoolinfo", "params": [], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "bytes": { "description": "Sum of all virtual transaction sizes as defined in BIP 141. Differs from actual serialized size because witness data is discounted", "type": "number" }, "fullrbf": { "description": "True if the mempool accepts RBF without replaceability signaling inspection (DEPRECATED)", "type": "boolean" }, "incrementalrelayfee": { "description": "minimum fee rate increment for mempool limiting or replacement in BTC/kvB", "type": "number" }, "limitclustercount": { "description": "Maximum number of transactions that can be in a cluster (configured by -limitclustercount)", "type": "number" }, "limitclustersize": { "description": "Maximum size of a cluster in virtual bytes (configured by -limitclustersize)", "type": "number" }, "loaded": { "description": "True if the initial load attempt of the persisted mempool finished", "type": "boolean" }, "maxdatacarriersize": { "description": "Maximum number of bytes that can be used by OP_RETURN outputs in the mempool", "type": "number" }, "maxmempool": { "description": "Maximum memory usage for the mempool", "type": "number" }, "mempoolminfee": { "description": "Minimum fee rate in BTC/kvB for tx to be accepted. Is the maximum of minrelaytxfee and minimum mempool fee", "type": "string" }, "minrelaytxfee": { "description": "Current minimum relay fee for transactions", "type": "string" }, "permitbaremultisig": { "description": "True if the mempool accepts transactions with bare multisig outputs", "type": "boolean" }, "size": { "description": "Current tx count", "type": "number" }, "total_fee": { "description": "Total fees for the mempool in BTC, ignoring modified fees through prioritisetransaction", "type": "string" }, "unbroadcastcount": { "description": "Current number of transactions that haven't passed initial broadcast yet", "type": "number" }, "usage": { "description": "Total memory usage for the mempool", "type": "number" } }, "required": [ "loaded", "size", "bytes", "usage", "total_fee", "maxmempool", "mempoolminfee", "minrelaytxfee", "incrementalrelayfee", "unbroadcastcount", "fullrbf", "permitbaremultisig", "maxdatacarriersize", "limitclustercount", "limitclustersize" ], "type": "object" } }, "x-bitcoin-category": "blockchain" }, { "description": "Returns a json object containing mining-related information.", "name": "getmininginfo", "params": [], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "bits": { "description": "The current nBits, compact representation of the block difficulty target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "blockmintxfee": { "description": "Minimum feerate of packages selected for block inclusion in BTC/kvB", "type": "string" }, "blocks": { "description": "The current block", "type": "number" }, "chain": { "description": "current network name (main, test, testnet4, signet, regtest)", "type": "string" }, "currentblocktx": { "description": "The number of block transactions (excluding coinbase) of the last assembled block (only present if a block was ever assembled)", "type": "number" }, "currentblockweight": { "description": "The block weight (including reserved weight for block header, txs count and coinbase tx) of the last assembled block (only present if a block was ever assembled)", "type": "number" }, "difficulty": { "description": "The current difficulty", "type": "number" }, "networkhashps": { "description": "The network hashes per second", "type": "number" }, "next": { "additionalProperties": false, "description": "The next block", "properties": { "bits": { "description": "The next target nBits", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "difficulty": { "description": "The next difficulty", "type": "number" }, "height": { "description": "The next height", "type": "number" }, "target": { "description": "The next target", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "height", "bits", "difficulty", "target" ], "type": "object" }, "pooledtx": { "description": "The size of the mempool", "type": "number" }, "signet_challenge": { "description": "The block challenge (aka. block script), in hexadecimal (only present if the current network is a signet)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "target": { "description": "The current target", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "warnings": { "description": "any network and blockchain warnings (run with `-deprecatedrpc=warnings` to return the latest warning as a single string)", "items": { "type": "string" }, "type": "array" } }, "required": [ "blocks", "bits", "difficulty", "target", "networkhashps", "pooledtx", "blockmintxfee", "chain", "next", "warnings" ], "type": "object" } }, "x-bitcoin-category": "mining" }, { "description": "Returns information about network traffic, including bytes in, bytes out,\nand current system time.", "name": "getnettotals", "params": [], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "timemillis": { "description": "Current system UNIX epoch time in milliseconds", "type": "number", "x-bitcoin-unit": "unix-time" }, "totalbytesrecv": { "description": "Total bytes received", "type": "number" }, "totalbytessent": { "description": "Total bytes sent", "type": "number" }, "uploadtarget": { "additionalProperties": false, "properties": { "bytes_left_in_cycle": { "description": "Bytes left in current time cycle", "type": "number" }, "serve_historical_blocks": { "description": "True if serving historical blocks", "type": "boolean" }, "target": { "description": "Target in bytes", "type": "number" }, "target_reached": { "description": "True if target is reached", "type": "boolean" }, "time_left_in_cycle": { "description": "Seconds left in current time cycle", "type": "number" }, "timeframe": { "description": "Length of the measuring timeframe in seconds", "type": "number" } }, "required": [ "timeframe", "target", "target_reached", "serve_historical_blocks", "bytes_left_in_cycle", "time_left_in_cycle" ], "type": "object" } }, "required": [ "totalbytesrecv", "totalbytessent", "timemillis", "uploadtarget" ], "type": "object" } }, "x-bitcoin-category": "network" }, { "description": "Returns 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.", "name": "getnetworkhashps", "params": [ { "description": "The number of previous blocks to calculate estimate from, or -1 for blocks since last difficulty change.", "name": "nblocks", "required": false, "schema": { "type": "number" } }, { "description": "To estimate at the time of the given height.", "name": "height", "required": false, "schema": { "type": "number" } } ], "result": { "name": "result", "schema": { "type": "number" } }, "x-bitcoin-category": "mining" }, { "description": "Returns an object containing various state info regarding P2P networking.", "name": "getnetworkinfo", "params": [], "result": { "name": "result", "schema": { "additionalProperties": false, "properties": { "connections": { "description": "the total number of connections", "type": "number" }, "connections_in": { "description": "the number of inbound connections", "type": "number" }, "connections_out": { "description": "the number of outbound connections", "type": "number" }, "incrementalfee": { "description": "minimum fee rate increment for mempool limiting or replacement in BTC/kvB", "type": "number" }, "localaddresses": { "description": "list of local addresses", "items": { "additionalProperties": false, "properties": { "address": { "description": "network address", "type": "string" }, "port": { "description": "network port", "type": "number" }, "score": { "description": "relative score", "type": "number" } }, "required": [ "address", "port", "score" ], "type": "object" }, "type": "array" }, "localrelay": { "description": "true if transaction relay is requested from peers", "type": "boolean" }, "localservices": { "description": "the services we offer to the network", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "localservicesnames": { "description": "the services we offer to the network, in human-readable form", "items": { "type": "string" }, "type": "array" }, "networkactive": { "description": "whether p2p networking is enabled", "type": "boolean" }, "networks": { "description": "information per network", "items": { "additionalProperties": false, "properties": { "limited": { "description": "is the network limited using -onlynet?", "type": "boolean" }, "name": { "description": "network (ipv4, ipv6, onion, i2p, cjdns)", "type": "string" }, "proxy": { "description": "(\"host:port\") the proxy that is used for this network, or empty if none", "type": "string" }, "proxy_randomize_credentials": { "description": "Whether randomized credentials are used", "type": "boolean" }, "reachable": { "description": "is the network reachable?", "type": "boolean" } }, "required": [ "name", "limited", "reachable", "proxy", "proxy_randomize_credentials" ], "type": "object" }, "type": "array" }, "protocolversion": { "description": "the protocol version", "type": "number" }, "relayfee": { "description": "minimum relay fee rate for transactions in BTC/kvB", "type": "number" }, "subversion": { "description": "the server subversion string", "type": "string" }, "timeoffset": { "description": "the time offset", "type": "number" }, "version": { "description": "the server version", "type": "number" }, "warnings": { "description": "any network and blockchain warnings (run with `-deprecatedrpc=warnings` to return the latest warning as a single string)", "items": { "type": "string" }, "type": "array" } }, "required": [ "version", "subversion", "protocolversion", "localservices", "localservicesnames", "localrelay", "timeoffset", "connections", "connections_in", "connections_out", "networkactive", "networks", "relayfee", "incrementalfee", "localaddresses", "warnings" ], "type": "object" } }, "x-bitcoin-category": "network" }, { "description": "Returns 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'.", "name": "getnewaddress", "params": [ { "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.", "name": "label", "required": false, "schema": { "type": "string" } }, { "description": "The address type to use. Options are \"legacy\", \"p2sh-segwit\", \"bech32\", \"bech32m\".", "name": "address_type", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "wallet" }, { "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.", "name": "getnodeaddresses", "params": [ { "description": "The maximum number of addresses to return. Specify 0 to return all known addresses.", "name": "count", "required": false, "schema": { "type": "number" } }, { "description": "Return only addresses of the specified network. Can be one of: ipv4, ipv6, onion, i2p, cjdns.", "name": "network", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "items": { "additionalProperties": false, "properties": { "address": { "description": "The address of the node", "type": "string" }, "network": { "description": "The network (ipv4, ipv6, onion, i2p, cjdns) the node connected through", "type": "string" }, "port": { "description": "The port number of the node", "type": "number" }, "services": { "description": "The services offered by the node", "type": "number" }, "time": { "description": "The UNIX epoch time when the node was last seen", "type": "number", "x-bitcoin-unit": "unix-time" } }, "required": [ "time", "services", "address", "port", "network" ], "type": "object" }, "type": "array" } }, "x-bitcoin-category": "network" }, { "description": "Returns data about each connected network peer as a json array of objects.", "name": "getpeerinfo", "params": [], "result": { "name": "result", "schema": { "items": { "additionalProperties": false, "properties": { "addr": { "description": "(host:port) The IP address/hostname optionally followed by :port of the peer", "type": "string" }, "addr_processed": { "description": "The total number of addresses processed, excluding those dropped due to rate limiting", "type": "number" }, "addr_rate_limited": { "description": "The total number of addresses dropped due to rate limiting", "type": "number" }, "addr_relay_enabled": { "description": "Whether we participate in address relay with this peer", "type": "boolean" }, "addrbind": { "description": "(ip:port) Bind address of the connection to the peer", "type": "string" }, "addrlocal": { "description": "(ip:port) Local address as reported by the peer", "type": "string" }, "bip152_hb_from": { "description": "Whether peer selected us as (compact blocks) high-bandwidth peer", "type": "boolean" }, "bip152_hb_to": { "description": "Whether we selected peer as (compact blocks) high-bandwidth peer", "type": "boolean" }, "bytesrecv": { "description": "The total bytes received", "type": "number" }, "bytesrecv_per_msg": { "additionalProperties": { "type": "number" }, "type": "object" }, "bytessent": { "description": "The total bytes sent", "type": "number" }, "bytessent_per_msg": { "additionalProperties": { "type": "number" }, "type": "object" }, "connection_type": { "description": "Type of connection: \noutbound-full-relay (default automatic connections),\nblock-relay-only (does not relay transactions or addresses),\ninbound (initiated by the peer),\nmanual (added via addnode RPC or -addnode/-connect configuration options),\naddr-fetch (short-lived automatic connection for soliciting addresses),\nfeeler (short-lived automatic connection for testing addresses),\nprivate-broadcast (short-lived automatic connection for broadcasting privacy-sensitive transactions).\nPlease note this output is unlikely to be stable in upcoming releases as we iterate to\nbest capture connection behaviors.", "type": "string" }, "conntime": { "description": "The UNIX epoch time of the connection", "type": "number", "x-bitcoin-unit": "unix-time" }, "id": { "description": "Peer index", "type": "number" }, "inbound": { "description": "Inbound (true) or Outbound (false)", "type": "boolean" }, "inflight": { "items": { "type": "number" }, "type": "array" }, "inv_to_send": { "description": "How many txs we have queued to announce to this peer", "type": "number" }, "last_block": { "description": "The UNIX epoch time of the last block received from this peer", "type": "number", "x-bitcoin-unit": "unix-time" }, "last_inv_sequence": { "description": "Mempool sequence number of this peer's last INV", "type": "number" }, "last_transaction": { "description": "The UNIX epoch time of the last valid transaction received from this peer", "type": "number", "x-bitcoin-unit": "unix-time" }, "lastrecv": { "description": "The UNIX epoch time of the last receive", "type": "number", "x-bitcoin-unit": "unix-time" }, "lastsend": { "description": "The UNIX epoch time of the last send", "type": "number", "x-bitcoin-unit": "unix-time" }, "mapped_as": { "description": "Mapped AS (Autonomous System) number at the end of the BGP route to the peer, used for diversifying\npeer selection (only displayed if the -asmap config option is set)", "type": "number" }, "minfeefilter": { "description": "The minimum fee rate for transactions this peer accepts", "type": "number" }, "minping": { "description": "The minimum observed ping time in seconds, if any", "type": "number" }, "network": { "description": "Network (ipv4, ipv6, onion, i2p, cjdns, not_publicly_routable)", "type": "string" }, "permissions": { "description": "Any special permissions that have been granted to this peer", "items": { "type": "string" }, "type": "array" }, "pingtime": { "description": "The last ping time in seconds, if any", "type": "number" }, "pingwait": { "description": "The duration in seconds of an outstanding ping (if non-zero)", "type": "number" }, "presynced_headers": { "description": "The current height of header pre-synchronization with this peer, or -1 if no low-work sync is in progress", "type": "number" }, "relaytxes": { "description": "Whether we relay transactions to this peer", "type": "boolean" }, "services": { "description": "The services offered", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "servicesnames": { "description": "the services offered, in human-readable form", "items": { "type": "string" }, "type": "array" }, "session_id": { "description": "The session ID for this connection, or \"\" if there is none (\"v2\" transport protocol only).\n", "type": "string" }, "startingheight": { "description": "(DEPRECATED, returned only if config option -deprecatedrpc=startingheight is passed) The starting height (block) of the peer", "type": "number" }, "subver": { "description": "The string version", "type": "string" }, "synced_blocks": { "description": "The last block we have in common with this peer", "type": "number" }, "synced_headers": { "description": "The last header we have in common with this peer", "type": "number" }, "timeoffset": { "description": "The time offset in seconds", "type": "number" }, "transport_protocol_type": { "description": "Type of transport protocol: \ndetecting (peer could be v1 or v2),\nv1 (plaintext transport protocol),\nv2 (BIP324 encrypted transport protocol).\n", "type": "string" }, "version": { "description": "The peer version, such as 70001", "type": "number" } }, "required": [ "id", "addr", "network", "services", "servicesnames", "relaytxes", "last_inv_sequence", "inv_to_send", "lastsend", "lastrecv", "last_transaction", "last_block", "bytessent", "bytesrecv", "conntime", "timeoffset", "version", "subver", "inbound", "bip152_hb_to", "bip152_hb_from", "presynced_headers", "synced_headers", "synced_blocks", "inflight", "addr_relay_enabled", "addr_processed", "addr_rate_limited", "permissions", "minfeefilter", "bytessent_per_msg", "bytesrecv_per_msg", "connection_type", "transport_protocol_type", "session_id" ], "type": "object" }, "type": "array" } }, "x-bitcoin-category": "network" }, { "description": "Returns a map of all user-created (see prioritisetransaction) fee deltas by txid, and whether the tx is present in mempool.", "name": "getprioritisedtransactions", "params": [], "result": { "name": "result", "schema": { "additionalProperties": { "additionalProperties": false, "properties": { "fee_delta": { "description": "transaction fee delta in satoshis", "type": "number" }, "in_mempool": { "description": "whether this transaction is currently in mempool", "type": "boolean" }, "modified_fee": { "description": "modified fee in satoshis. Only returned if in_mempool=true", "type": "number" } }, "required": [ "fee_delta", "in_mempool" ], "type": "object" }, "type": "object" } }, "x-bitcoin-category": "mining" }, { "description": "Returns a new Bitcoin address, for receiving change.\nThis is for use with raw transactions, NOT normal use.", "name": "getrawchangeaddress", "params": [ { "description": "The address type to use. Options are \"legacy\", \"p2sh-segwit\", \"bech32\", \"bech32m\".", "name": "address_type", "required": false, "schema": { "type": "string" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "wallet" }, { "description": "Returns 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.", "name": "getrawmempool", "params": [ { "description": "True for a json object, false for array of transaction ids", "name": "verbose", "required": false, "schema": { "type": "boolean" } }, { "description": "If verbose=false, returns a json object with transaction list and mempool sequence number attached.", "name": "mempool_sequence", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "oneOf": [ { "description": "for verbose = false", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, { "additionalProperties": { "additionalProperties": false, "properties": { "ancestorcount": { "description": "number of in-mempool ancestor transactions (including this one)", "type": "number" }, "ancestorsize": { "description": "virtual transaction size of in-mempool ancestors (including this one)", "type": "number" }, "bip125-replaceable": { "description": "Whether this transaction signals BIP125 replaceability or has an unconfirmed ancestor signaling BIP125 replaceability. (DEPRECATED)\n", "type": "boolean" }, "chunkweight": { "description": "sigops-adjusted weight (as defined in BIP 141 and modified by '-bytespersigop') of this transaction's chunk", "type": "number" }, "depends": { "description": "unconfirmed transactions used as inputs for this transaction", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "descendantcount": { "description": "number of in-mempool descendant transactions (including this one)", "type": "number" }, "descendantsize": { "description": "virtual transaction size of in-mempool descendants (including this one)", "type": "number" }, "fees": { "additionalProperties": false, "properties": { "ancestor": { "description": "transaction fees of in-mempool ancestors (including this one) with fee deltas used for mining priority, denominated in BTC", "type": "string" }, "base": { "description": "transaction fee, denominated in BTC", "type": "string" }, "chunk": { "description": "transaction fees of chunk, denominated in BTC", "type": "string" }, "descendant": { "description": "transaction fees of in-mempool descendants (including this one) with fee deltas used for mining priority, denominated in BTC", "type": "string" }, "modified": { "description": "transaction fee with fee deltas used for mining priority, denominated in BTC", "type": "string" } }, "required": [ "base", "modified", "ancestor", "descendant", "chunk" ], "type": "object" }, "height": { "description": "block height when transaction entered pool", "type": "number" }, "spentby": { "description": "unconfirmed transactions spending outputs from this transaction", "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "time": { "description": "local time transaction entered pool in seconds since 1 Jan 1970 GMT", "type": "number", "x-bitcoin-unit": "unix-time" }, "unbroadcast": { "description": "Whether this transaction is currently unbroadcast (initial broadcast not yet acknowledged by any peers)", "type": "boolean" }, "vsize": { "description": "virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.", "type": "number" }, "weight": { "description": "transaction weight as defined in BIP 141.", "type": "number" }, "wtxid": { "description": "hash of serialized transaction, including witness data", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "vsize", "weight", "time", "height", "descendantcount", "descendantsize", "ancestorcount", "ancestorsize", "chunkweight", "wtxid", "fees", "depends", "spentby", "bip125-replaceable", "unbroadcast" ], "type": "object" }, "description": "for verbose = true", "type": "object" }, { "additionalProperties": false, "description": "for verbose = false and mempool_sequence = true", "properties": { "mempool_sequence": { "description": "The mempool sequence value.", "type": "number" }, "txids": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" } }, "required": [ "txids", "mempool_sequence" ], "type": "object" } ] } }, "x-bitcoin-category": "blockchain" }, { "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.", "name": "getrawtransaction", "params": [ { "description": "The transaction id", "name": "txid", "required": true, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, { "description": "0 for hex-encoded data, 1 for a JSON object, and 2 for JSON object with fee and prevout", "name": "verbosity", "required": false, "schema": { "type": "number" }, "x-bitcoin-aliases": [ "verbose" ] }, { "description": "The block in which to look for the transaction", "name": "blockhash", "required": false, "schema": { "pattern": "^[0-9a-fA-F]*$", "type": "string" } } ], "result": { "name": "result", "schema": { "oneOf": [ { "description": "if verbosity is not set or set to 0", "type": "string" }, { "additionalProperties": false, "description": "if verbosity is set to 1", "properties": { "blockhash": { "description": "the block hash", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "blocktime": { "description": "The block time expressed in UNIX epoch time", "type": "number", "x-bitcoin-unit": "unix-time" }, "confirmations": { "description": "The confirmations", "type": "number" }, "hash": { "description": "The transaction hash (differs from txid for witness transactions)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "hex": { "description": "The serialized, hex-encoded data for 'txid'", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "in_active_chain": { "description": "Whether specified block is in the active chain or not (only present with explicit \"blockhash\" argument)", "type": "boolean" }, "locktime": { "description": "The lock time", "type": "number", "x-bitcoin-unit": "unix-time" }, "size": { "description": "The serialized transaction size", "type": "number" }, "time": { "description": "Same as \"blocktime\"", "type": "number" }, "txid": { "description": "The transaction id (same as provided)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "version": { "description": "The version", "type": "number" }, "vin": { "items": { "additionalProperties": false, "properties": { "coinbase": { "description": "The coinbase value (only if coinbase transaction)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "scriptSig": { "additionalProperties": false, "description": "The script (if not coinbase transaction)", "properties": { "asm": { "description": "Disassembly of the signature script", "type": "string" }, "hex": { "description": "The raw signature script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" } }, "required": [ "asm", "hex" ], "type": "object" }, "sequence": { "description": "The script sequence number", "type": "number" }, "txid": { "description": "The transaction id (if not coinbase transaction)", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "txinwitness": { "items": { "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": "array" }, "vout": { "description": "The output number (if not coinbase transaction)", "type": "number" } }, "required": [ "sequence" ], "type": "object" }, "type": "array" }, "vout": { "items": { "additionalProperties": false, "properties": { "n": { "description": "index", "type": "number" }, "scriptPubKey": { "additionalProperties": false, "properties": { "address": { "description": "The Bitcoin address (only if a well-defined address exists)", "type": "string" }, "asm": { "description": "Disassembly of the output script", "type": "string" }, "desc": { "description": "Inferred descriptor for the output", "type": "string" }, "hex": { "description": "The raw output script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type (one of: nonstandard, anchor, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_scripthash, witness_v0_keyhash, witness_v1_taproot, witness_unknown)", "type": "string" } }, "required": [ "asm", "desc", "hex", "type" ], "type": "object" }, "value": { "description": "The value in BTC", "type": "string" } }, "required": [ "value", "n", "scriptPubKey" ], "type": "object" }, "type": "array" }, "vsize": { "description": "The virtual transaction size (differs from size for witness transactions)", "type": "number" }, "weight": { "description": "The transaction's weight (between vsize*4-3 and vsize*4)", "type": "number" } }, "required": [ "hex", "txid", "hash", "size", "vsize", "weight", "version", "locktime", "vin", "vout" ], "type": "object" }, { "additionalProperties": false, "description": "for verbosity = 2", "properties": { "fee": { "description": "transaction fee in BTC, omitted if block undo data is not available", "type": "number" }, "vin": { "items": { "additionalProperties": false, "properties": { "prevout": { "additionalProperties": false, "description": "The previous output, omitted if block undo data is not available", "properties": { "generated": { "description": "Coinbase or not", "type": "boolean" }, "height": { "description": "The height of the prevout", "type": "number" }, "scriptPubKey": { "additionalProperties": false, "properties": { "address": { "description": "The Bitcoin address (only if a well-defined address exists)", "type": "string" }, "asm": { "description": "Disassembly of the output script", "type": "string" }, "desc": { "description": "Inferred descriptor for the output", "type": "string" }, "hex": { "description": "The raw output script bytes, hex-encoded", "pattern": "^[0-9a-fA-F]*$", "type": "string" }, "type": { "description": "The type (one of: nonstandard, anchor, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_scripthash, witness_v0_keyhash, witness_v1_taproot, witness_unknown)", "type": "string" } }, "required": [ "asm", "desc", "hex", "type" ], "type": "object" }, "value": { "description": "The value in BTC", "type": "string" } }, "required": [ "generated", "height", "value", "scriptPubKey" ], "type": "object" } }, "type": "object" }, "type": "array" } }, "required": [ "vin" ], "type": "object" } ] } }, "x-bitcoin-category": "rawtransactions" }, { "description": "Returns the total amount received by the given address in transactions with at least minconf confirmations.", "name": "getreceivedbyaddress", "params": [ { "description": "The bitcoin address for transactions.", "name": "address", "required": true, "schema": { "type": "string" } }, { "description": "Only include transactions confirmed at least this many times.", "name": "minconf", "required": false, "schema": { "type": "number" } }, { "description": "Include immature coinbase transactions.", "name": "include_immature_coinbase", "required": false, "schema": { "type": "boolean" } } ], "result": { "name": "result", "schema": { "type": "string" } }, "x-bitcoin-category": "wallet" }, { "description": "Returns the total amount received by addresses with