This page provides an overview of the available methods on Chainstack Bitcoin nodes using the Bitcoin RPC API. The methods are divided into three categories:
- Immediately accessible methods
- Methods requiring further customization
- Unavailable methods on Chainstack Bitcoin nodes
This guide will help you better understand and utilize the capabilities of Chainstack Bitcoin nodes within the context of the Bitcoin RPC API.
Get you own node endpoint today
Start for free and get your app to production levels immediately. No credit card required.
You can sign up with your GitHub, X, Google, or Microsoft account.
Chainstack Bitcoin API table
The table features an Availability column, which outlines the method's accessibility on a Bitcoin node deployed via Chainstack. The availability is classified into three levels:
- Available — the corresponding method is immediately accessible upon deploying a Chainstack Elastic Bitcoin node.
- Customization required — the corresponding method can be enabled on a dedicated Chainstack Bitcoin node with additional customization.
- Not available — the corresponding method cannot be activated on any Chainstack Bitcoin node.
This classification assists users in understanding the availability of each method within Chainstack Bitcoin nodes.
Easlily interact with the Bitcoin API using the Bitcoin API Postman collection.
Dedicated Bitcoin nodes
In case you need access to methods requiring customization, you can request a dedicated node directly from the Chainstack console UI, and a Chainstack Support representative will contact you shortly.
Blockchain RPC methods
Blockchain RPC methods allow developers to interact with and gather information about the Bitcoin blockchain, such as querying transactions and network data.
RPC method | Availability | Remarks |
---|---|---|
getbestblockhash | Available | |
getblock | Available | |
getblockchaininfo | Available | |
getblockfilter | Customization required | |
getblockhash | Available | |
getblockheader | Available | |
getblockstats | Available | |
getchaintips | Available | |
getchaintxstats | Available | |
getdifficulty | Available | |
getmempoolancestors | Available | |
getmempooldescendants | Available | |
getmempoolentry | Available | |
getmempoolinfo | Available | |
getrawmempool | Available | |
gettxoutsetinfo | Available | |
gettxout | Available | |
verifychain | Available | |
gettxoutproof | Available | This function operates intermittently by default, only functioning when there is an unspent output in the UTXO for the transaction. To ensure consistent performance, maintain a transaction index using the -txindex command line option or manually specify the block containing the transaction (by blockhash ). |
preciousblock | Available | Treats a block as if it were received before others with the same work. |
pruneblockchain | Not available | |
savemempool | Available | It will fail until the previous dump is fully loaded. |
scantxoutset | Available | This method may be removed or changed in future releases. |
verifytxoutproof | Available | Requires the hex-encoded proof generated by gettxoutproof method. |
Control PRC methods
Control RPC methods in the Bitcoin API allow users to manage and configure their Bitcoin Core node, such as returning general information about the node, or the total uptime.
RPC method | Availability | Remarks |
---|---|---|
uptime | Available | |
getmemoryinfo | Available | |
getrpcinfo | Available | |
help | Available | |
logging | Available | |
stop | Not available |
Generating RPC methods
Generating RPC methods in the Bitcoin API are primarily used for mining and testing purposes. These methods enable developers to create new blocks, generate and manage addresses, and perform CPU mining for testing and development environments.
RPC method | Availability | Remarks |
---|---|---|
generateblock | Not available | |
generatetoaddress | Not available | Deprecated after Bitcoin Core v0.19 |
generatetodescriptor | Not available |
Mining RPC methods
Mining RPC methods provide developers with access to mining-related data, such as network difficulty, mining statistics, and block template creation.
RPC Method | Availability | Remarks |
---|---|---|
getblocktemplate | Available | |
getmininginfo | Available | |
getnetworkhashps | Available | |
prioritisetransaction | Available | |
submitblock | Not available | |
submitheader | Not available |
Network RPC methods
Network RPC methods in the Bitcoin API are used to manage and gather information about the node's connection to the Bitcoin network. These methods provide developers with tools to control and monitor the node's interactions with peers.
RPC method | Availability | Remarks |
---|---|---|
getpeerinfo | Available | |
getnetworkinfo | Available | |
getconnectioncount | Available | |
getnettotals | Available | |
listbanned | Available | |
ping | Available | |
addnode | Not available | |
disconnectnode | Not available | |
getnodeaddresses | Available | |
setnetworkactive | Available | |
setban | Not available |
Raw transactions RPC methods
Raw transactions RPC methods in the Bitcoin API are used to create, inspect, sign, and broadcast custom transactions on the Bitcoin network. These methods provide developers with control over transaction creation and processing.
RPC method | Availability | Remarks |
---|---|---|
analyzepsbt | Available | |
createpsbt | Available | |
combinepsbt | Available | |
createrawtransaction | Available | |
combinerawtransaction | Available | |
decodepsbt | Available | |
decoderawtransaction | Available | |
decodescript | Available | |
finalizepsbt | Available | |
fundrawtransaction | Customization required | Require wallet support |
getrawtransaction | Available | |
sendrawtransaction | Available | |
signrawtransactionwithkey | Available | |
testmempoolaccept | Available |
Util RPC methods
Util RPC methods in the Bitcoin API are used for various utility tasks, simplifying certain operations and calculations when working with Bitcoin transactions and blockchain data.
RPC method | Availability | Remarks |
---|---|---|
createmultisig | Available | |
deriveaddresses | Available | |
estimatesmartfee | Available | |
getindexinfo | Customization required | |
signmessagewithprivkey | Available | |
validateaddress | Available | |
verifymessage | Available |
Wallet RPC methods
Wallet RPC methods in the Bitcoin API are used to interact with and manage a Bitcoin Core built-in wallet functionality. By leveraging wallet RPC methods, developers can create and manage Bitcoin wallets programmatically, enabling the implementation of various wallet-related features and applications.
Note that the wallet module is disabled by default on elastic Chainstack nodes.
RPC method | Availability | Remarks |
---|---|---|
createwallet | Customization required | |
listwalletdir | Customization required | |
loadwallet | Customization required | |
listtransactions | Customization required | |
listwallets | Customization required | |
abandontransaction | Customization required | |
abortrescan | Customization required | |
bumpfee | Customization required | |
dumpprivkey | Customization required | |
getaddressesbylabel | Customization required | |
getbalance | Customization required | |
getbalances | Customization required | |
getnewaddress | Customization required | |
getrawchangeaddress | Customization required | |
getreceivedbyaddress | Customization required | |
getreceivedbylabel | Customization required | |
gettransaction | Customization required | |
importaddress | Customization required | |
importdescriptors | Customization required | |
importmulti | Customization required | |
importprivkey | Customization required | |
importprunedfunds | Customization required | |
importpubkey | Customization required | |
importwallet | Customization required | |
keypoolrefill | Customization required | |
listaddressgroupings | Customization required | |
listlabels | Customization required | |
listlockunspent | Customization required | |
listreceivedbyaddress | Customization required | |
listsinceblock | Customization required | |
listtransactions | Customization required | |
listunspent | Customization required | |
listwalletdir | Customization required | |
listwallets | Customization required | |
lockunspent | Customization required | |
loadwallet | Customization required | |
psbtbumpfee | Customization required | |
removeprunedfunds | Customization required | |
rescanblockchain | Customization required | |
send | Customization required | |
sendmany | Customization required | |
sendtoaddress | Customization required | |
sethdseed | Customization required | |
setlabel | Customization required | |
settxfee | Customization required | |
setwalletflag | Customization required | |
signmessage | Customization required | |
signrawtransactionwithwallet | Customization required | |
unloadwallet | Customization required | |
upgradewallet | Customization required | |
walletcreatefundedpsbt | Customization required | |
walletlock | Customization required | |
walletpassphrase | Customization required | |
walletpassphrasechange | Customization required | |
walletprocesspsbt | Customization required |
ZQM RPC methods
ZQM RPC methods in the Bitcoin API related to the ZeroMQ (ZMQ) notification system.
RPC method | Availability | Remarks |
---|---|---|
getzmqnotifications | Available | Starting from Bitcoin Core 22.0.0 |
Signer RPC methods
Signer RPC methods can be used to interact with external signers such as hardware wallets.
RPC method | Availability | Remarks |
---|---|---|
enumeratesigners | Customization required | Starting from Bitcoin Core 22.0.0 |