This guide provides a comprehensive list of Bitcoin JSON-RPCs supported by Amazon Managed Blockchain (AMB) Access Bitcoin, along with their descriptions and usage notes.
Key Considerations Before Using AMB Access Bitcoin
- Authentication: Authenticate Bitcoin JSON-RPCs using the Signature Version 4 (Sigv4) process. Only authorized IAM principals can interact with Bitcoin JSON-RPCs. Include AWS credentials (access key ID and secret access key) in requests.
- Response Size Limit: HTTP responses exceeding 10 MB will fail. To resolve, set the compression header to
Accept-Encoding: gzip. Compressed responses include headers:Content-Type: application/jsonandContent-Encoding: gzip. - Error Handling: AMB Access Bitcoin returns a 400 error for malformed JSON-RPC requests.
- State Updates: Use
sendrawtransactionJSON-RPC to submit transactions updating the Bitcoin blockchain state. - Rate Limits: Default request limit is 100 requests per second (RPS) per region per
NETWORK_TYPE. For quota increases, contact AWS Support with a detailed case under "Managed Blockchain" service category.
Supported JSON-RPCs by Category
Blockchain RPCs
| JSON-RPC | Description |
|---|---|
getbestblockhash | Returns the hash of the best (tip) block in the most-work fully validated chain. |
getblock | Returns block data at verbosity levels 0-3 (hex-encoded string to full transaction details including prevout inputs). |
getblockchaininfo | Provides various state information about blockchain processing. |
getblockcount | Returns the height of the most-work fully validated chain. |
getblockfilter | Retrieves BIP 157 content filters for specific blocks. |
getblockhash | Returns hash of the block at specified height in best-block-chain. |
getblockheader | Returns serialized hex-encoded block header data or verbose header object. |
getblockstats | Computes per-block statistics for given window (amounts in satoshis). |
getchaintips | Lists all known blockchain tips including main chain and orphaned branches. |
👉 Explore advanced blockchain analytics with these RPC methods.
Raw Transaction RPCs
| JSON-RPC | Description |
|---|---|
createrawtransaction | Creates transactions with specified inputs/outputs. |
decoderawtransaction | Decodes serialized hex-encoded transactions into JSON objects. |
decodescript | Decodes hex-encoded scripts. |
getrawtransaction | Retrieves raw transaction data. |
sendrawtransaction | Submits raw transactions to the network. |
testmempoolaccept | Tests mempool acceptance of raw transactions against consensus rules. |
Utility RPCs
| JSON-RPC | Description |
|---|---|
createmultisig | Creates m-of-n multisignature addresses. |
estimatesmartfee | Estimates fee rates (sat/kB) for confirmation targets using BIP 141 weight units. |
validateaddress | Validates Bitcoin address information. |
verifymessage | Verifies signed messages. |
FAQ Section
Q: How does AMB Access Bitcoin handle rate limiting?
A: Default limit is 100 RPS per region per network type. Request quota increases through AWS Support with specific RPS requirements.
Q: What authentication method is required for JSON-RPC calls?
A: All requests must use AWS Sigv4 authentication with valid IAM credentials.
Q: Can I retrieve full transaction history using these RPCs?
A: While methods like getblock provide transaction data, AMB Access Bitcoin focuses on current chain state rather than archival data.
Q: Are there size restrictions for raw transactions?
A: Yes, the standard Bitcoin network rules apply (typically ≤400kB for SegWit transactions).
Q: How accurate are fee estimates from estimatesmartfee?
A: Estimates reflect recent mempool conditions and include confidence intervals in the response.