Utility RPC Methods
Utility RPCs provide various helper functions including address validation, message signing, descriptor utilities, and fee estimation.Address Validation
validateaddress
Validates a Bitcoin address and returns information about it.boolean
Whether address is valid
string
The validated bitcoin address
string
Hex-encoded scriptPubKey
boolean
Whether address is a script address
boolean
Whether address is a witness address
number
Witness version (0 for P2WPKH/P2WSH, 1 for P2TR)
string
Hex-encoded witness program
This RPC only validates the address format. For wallet-specific information (like ownership), use the wallet’s
getaddressinfo RPC.Message Signing
signmessagewithprivkey
Signs a message with a private key.string
Base64-encoded signature
verifymessage
Verifies a signed message.boolean
Whether signature is valid
Descriptor Utilities
getdescriptorinfo
Analyzes a descriptor and returns information about it.string
Canonical descriptor with computed checksum
string
Checksum for the descriptor
boolean
Whether descriptor is ranged
boolean
Whether descriptor is solvable
boolean
Whether descriptor has private keys
deriveaddresses
Derives addresses from a descriptor.array
Array of derived Bitcoin addresses
Fee Estimation
estimatesmartfee
Estimates the fee rate needed for confirmation within target blocks.number
Estimated fee rate in BTC/kvB
number
Block number where estimate was found
array
Array of error messages (if any)
Fee estimation requires the node to have observed sufficient transaction history. New nodes may not have enough data for accurate estimates.
Data Encoding
createrawtransaction
Creates a raw transaction (hex-encoded).string
Hex-encoded raw transaction
decoderawtransaction
Decodes a raw transaction to JSON.decodescript
Decodes a hex-encoded script.string
Script assembly representation
string
Script type (e.g., pubkeyhash, scripthash, witness_v0_keyhash)
number
Required signatures (deprecated)
array
Array of bitcoin addresses (deprecated)
string
P2SH address for this script
object
Segwit-specific information
PSBT Utilities
decodepsbt
Decodes a PSBT (Partially Signed Bitcoin Transaction) to JSON.- Transaction details
- Input metadata (UTXOs, signatures, derivation paths)
- Output metadata
- Unknown fields
combinepsbt
Combines multiple PSBTs into one.string
Combined PSBT (base64)
finalizepsbt
Finalizes a PSBT if possible.string
Base64-encoded PSBT (if not extracted or not complete)
string
Hex-encoded network transaction (if complete and extracted)
boolean
Whether transaction is complete
analyzepsbt
Analyzes a PSBT and provides information about what is missing.array
Analysis of each input (missing signatures, pubkeys, etc.)
number
Estimated virtual size of final transaction
number
Estimated feerate (BTC/kvB)
number
Transaction fee in BTC
string
Role of next signer: signer, finalizer, extractor
Miscellaneous
getindexinfo
Returns status of optional indices.boolean
Whether index is synced to chain tip
number
Height index is synced to
logging
Gets and sets logging configuration.net: Network messagestor: Tor connection infomempool: Mempool operationshttp: HTTP serverbench: Benchmarkingzmq: ZMQ notificationswalletdb: Wallet database operationsrpc: RPC callsestimatefee: Fee estimationaddrman: Address managerselectcoins: Coin selectionvalidation: Block/transaction validation- And more…
uptime
Returns the total uptime of the server in seconds.number
Server uptime in seconds