- Ethereum JSON-RPC API
- zkSync JSON-RPC API
- Debug API
zkSync Network Support
Making zkSync API Requests
In this documentation, you will see example requests made with various programming languages and Web3 SDKs for each supported zkSync method. This section will explain how to execute each one of them on your machine.
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:
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
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:
Web3.py is a Python library for interacting with Ethereum. If you'd like to use it, please be sure to install it like so:
pip install web3
At QuickNode we prefer ethers.js as our JS library for interacting with JSON-RPCs when possible. Ethers aims to be a complete and compact library for interacting with the Ethereum Blockchain and its ecosystem. If you'd like to use it, please be sure to install it like so:
npm install --save ethers
WebSocket cat (wscat)
WebSocket cat (wscat) is a simple tool for connecting to WebSocket APIs in your terminal. Install it using the following command:
npm install -g wscat
There is also Web3.js - it's a collection of libraries that allow you to interact with a local or remote ethereum node using HTTP, IPC or WebSocket. If you'd like to use it, please be sure to install it like so:
npm install web3
Eth.rb is a comprehensive ruby library that provides a high-level interface to interact with the Ethereum blockchain, making it easier for developers to manage accounts, send transactions, and work with smart contracts. If you'd like to use it, please be sure to install it like so:
gem install eth
Usage in our pricing plans is measured in API Credits. To learn more about the API Credits for zkSync, please visit this page.
Endpoint Authentication Options
By default, all endpoints created on QuickNode are protected by a token in the URL which looks something like this:
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.
We ❤️ Feedback!
If you have any feedback or questions about this documentation, let us know. We'd love to hear from you!