Skip to main content

Bitcoin RPC

With QuickNode, you get access to our global network which always routes your API requests to the nearest available location, ensuring low latency and fastest speeds.

Note:

The QuickNode Bitcoin documentation constantly evolves as the chain undergoes upgrades and changes. We highly recommend cross-referencing with the Bitcoin Documentation for the latest updates.

Overview​

At QuickNode, we run Bitcoin RPC endpoints. In aggregate, we serve hundreds of billions of requests every month. To make it easier for developers to integrate with QuickNode, we've created this documentation that shows how to call RPC methods using cURL, JavaScript, Python, Ruby and any applicable Web3 SDKs. QuickNode-supported Bitcoin API include:

  • Bitcoin JSON-RPC API
  • Marketplace Add-Ons

Bitcoin Network Support​

NetworkHTTPSWSS
MAINNET✅🚫
TESTNET✅🚫

Making Bitcoin API Requests​

In this documentation, you will see example requests made with various programming languages for each supported Bitcoin method. This section will explain how to execute each one of them on your machine.

cURL​

Most *nix based systems have cURL support out of the box. cURL is a command line tool and library for transferring data with URLs. Check if you have it by running the following:

curl -h

Python​

To run our Python code examples, you'll need to have Python installed as well as the requests package. You can install this package with the following command:

python -m pip install requests

JavaScript​

To run our JavaScript code examples, you'll need to have Node v18 and up installed. You can follow this official document to install the latest, stable version of Node globally. Check if you have it by running the following:

node -v

Ruby​

To run our Ruby code examples, you'll need to have Ruby installed. You can follow this official installation document for more information. Check if you have it by running the following:

ruby -v

API Credits​

Usage in our pricing plans is measured in API Credits. To learn more about the API Credits for Bitcoin, please visit this page.

WebSocket Limits​

WebSocket responses are capped at a certain limit, which is subject to change. In cases where responses are potentially large, it is recommended to use a POST request. If the response size exceeds the limit, the associated error code will be -32616.

Endpoint Authentication Options​

Token Authentication​

By default, all endpoints created on QuickNode are protected by a token in the URL which looks something like this:

http://sample-endpoint-name.network.quiknode.pro/token-goes-here/

Approved Referrer List​

For endpoints on the shared network, you are able to add a list of approved referrers. This requires any HTTP request to send a REFERRER header or any WebSocket request to send an ORIGIN header populated with one of the referrers you entered into our user panel.

Disabling Token Authentication​

You can also disable the token authentication completely in your security settings for a given endpoint. This will allow anyone to make requests to the endpoint without the token.

JWT (JSON Web Tokens)​

For additional security, you can also enable JWT for each of your deployed endpoints. JWT allows for stateless authentication between you and your endpoint. Learn how to use JWT with QuickNode in this step-by-step guide.

Multiple Authentication Tokens​

Create multiple authentication tokens for each of your deployed endpoints. This allows you to revoke any tokens that may be comprised, without needing to restart your non-compromised endpoint.

To roll an individual authentication token, create an additional token and then delete the previous token. Learn more about multiple authentication tokens in this QuickNode guide.

Secure Your QuickNode Bitcoin Endpoint​

Enhance the security of your QuickNode RPC endpoints using the Endpoint Armor add-on. This add-on provides a secure URL for safer public and front-end usage, allowing you to control access, set rate limits, and restrict methods for heightened security and streamlined management. You can find more information about Endpoint Armor on this page.

We ❤️ Feedback!​

If you have any feedback or questions about this documentation, let us know. We'd love to hear from you!

Share this doc