This guide explains Bitcoin Core importdescriptors RPC in plain English. It shows what the command does, what its result means and what it cannot prove.
TL;DR
- What it is: Bitcoin Core 0.21 introduced importdescriptors for descriptor wallets. It accepts a required array of complete descriptor requests and can trigger a blockchain rescan from the earliest supplied timestamp.
- Why it matters: importdescriptors makes descriptor-wallet recovery and watch-only provisioning precise, but timestamp, range and internal semantics determine what the wallet discovers and how it classifies outputs. Validate every request and back up the resulting wallet.
- Current position: Require a second reviewer and explicit rollback or expiry, and pause payments, signing or network-dependent services until post-change evidence is complete.
Bitcoin Core importdescriptors RPC in simple English
Bitcoin Core importdescriptors RPC: Use this RPC only with a descriptor wallet selected explicitly through the wallet endpoint. Record the network, wallet name, database format and whether private keys are enabled.
Simple example
A miner is checking Bitcoin Core importdescriptors RPC. Core scans from up to two hours before the earliest timestamp. An early value can take over an hour.
Key terms in plain English
- Bitcoin Core:
- Widely used software that validates Bitcoin and can provide wallet, network and operator tools.
- RPC:
- A command that software sends to a node to request information or a local action.
- Node:
- A computer running Bitcoin software that checks data and communicates with other peers.
Wallet boundary
Use this RPC only with a descriptor wallet selected explicitly through the wallet endpoint. Record the network, wallet name, database format and whether private keys are enabled.
Descriptor request
Each entry requires a descriptor and timestamp. Validate the descriptor and checksum with getdescriptorinfo, preserve key origins and never place private descriptors in shell history or general logs.
Time and rescan
Timestamp zero scans the entire chain, while now skips historical scanning for scripts known never to have been used. Core scans from up to two hours before the earliest timestamp; an early value can take over an hour.
Ranges and activation
Ranged descriptors can specify an end or begin-and-end range. An active ranged descriptor may set next_index; active, range, internal and label values must reflect the intended receive or change policy.
Internal and labels
Internal marks matching outputs as non-incoming, such as change. Labels are allowed only when internal is false. Incorrect classification can distort payment reporting even when scripts are technically valid.
Partial results
The result array matches the request array and each entry has success plus optional warnings or error. Inspect every element and do not roll forward if only part of a coordinated policy imported.
How specialists test it
Operators test the command on a non-production node first. They check a normal reply, an invalid request, a timeout and a restart. This shows what the response means and prevents one local result from being mistaken for a network-wide outcome.
Frequently asked questions
What is the main point of Bitcoin Core importdescriptors RPC?
Bitcoin Core importdescriptors RPC: Use this RPC only with a descriptor wallet selected explicitly through the wallet endpoint.
For Bitcoin Core importdescriptors RPC, what should a beginner know about wallet boundary?
Use this RPC only with a descriptor wallet selected explicitly through the wallet endpoint.
For Bitcoin Core importdescriptors RPC, what should a beginner know about descriptor request?
Each entry requires a descriptor and timestamp. Validate the descriptor and checksum with getdescriptorinfo, preserve key origins and never place private descriptors in shell history or general logs.
For Bitcoin Core importdescriptors RPC, what should a beginner know about time and rescan?
Timestamp zero scans the entire chain, while now skips historical scanning for scripts known never to have been used.
Conclusion
importdescriptors makes descriptor-wallet recovery and watch-only provisioning precise, but timestamp, range and internal semantics determine what the wallet discovers and how it classifies outputs. Validate every request and back up the resulting wallet.
Primary sources
Check the current specification status and the documentation for the exact implementation you operate before moving production funds or changing a mining node.
Join the ASIC Mining Discussion
Members can read and join the discussion
Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.
Membership helps us protect the discussion from spam and keep answers useful.