Skip to Content
ChainsBitcoin
View Markdown source

Bitcoin

Bitcoin reaches the Gateway as Bitcoin Core-style JSON-RPC over HTTP, covering chain, block, and transaction reads. Its native asset is BTC.

Networks and hosts

NetworkJSON-RPC Host
Mainnetbtc-jsonrpc
Testnetbtc-testnet-jsonrpc

Bitcoin carries no EVM chain ID, so network identity is confirmed from the response body rather than from a chain-ID call. Copy the complete Access Point from the dashboard.

The Gateway wraps Bitcoin Core calls in a strict JSON-RPC 2.0 envelope: jsonrpc must be "2.0", method a non-empty string, and params an array or object. Clients written against a node’s own HTTP interface may need their envelope adjusted; the method names and parameters stay the same.

Provider coverage

Testnet coverage is thinner than Mainnet here, and dRPC reaches Bitcoin Mainnet only.

ProviderMainnetTestnet
AlchemyYesYes
QuickNodeYesYes
ChainstackYesYes
dRPCYesNo
TenderlyNoNo

For a Bitcoin Testnet Route built on dRPC alone, add a second Provider or register the node as a manual Endpoint.

Reads without an Endpoint

Three UTXO request shapes check the shared cache first:

  • getblockchaininfo with parameters omitted or [];
  • getblockhash with a single non-negative block height;
  • getblock with a block hash and verbosity 3.

Verbosity 3 is the only accepted form, so a request using 0, 1, or 2 continues to the Route. The two-step pattern of getblockhash followed by getblock therefore stays inside the cached set. See Endpoint-free RPC.

Verify the network

curl '<bitcoin_access_point>' \ -H 'Authorization: Bearer <app_api_key>' \ -H 'Content-Type: application/json' \ --data '{"jsonrpc":"2.0","id":1,"method":"getblockchaininfo","params":[]}'

chain reads main on Mainnet and is normally test on Testnet. This call can be answered from the shared cache, so confirm your own upstream through its health check and the Route state instead of treating the response as proof that the Endpoint is live.

Coverage boundary

One JSON-RPC 2.0 object per HTTP POST. Wallet methods, the transaction index, pruning depth, and mempool visibility depend entirely on how the upstream node was configured — a pruned node cannot serve historical blocks regardless of routing. Manage wallets in the upstream, and keep Mainnet and Testnet on independent Routes.

See Errors and recovery for Gateway error codes and Endpoints for inventory management.

Last updated on