Get started building on ZetaChain and using the JSON-RPC API
To use the ZetaChain API you'll need to create a free Alchemy account first. Also, we're offering up to $20,000 to help you start building. It's easy to qualify. Learn more here!
Introduction
ZetaChain is an EVM-compatible Cosmos SDK-based L1 blockchain designed to enable Omnichain Smart Contracts and provide a unified application experience. Applications on ZetaChain can manage, read, and write state to/from any external chain - even non-smart chains such as Bitcoin network. Users can natively access these applications from any connected chain without requiring users to switch networks.
What is the ZetaChain API?
The ZetaChain API facilitates interaction with the ZetaChain network through a collection of JSON-RPC methods. Given its compatibility with the Ethereum ecosystem, developers familiar with Ethereum's JSON-RPC APIs will find working with ZetaChain both intuitive and straightforward.
Getting Started Instructions
1. Choose a Package Manager (npm or yarn)
Your first step involves selecting a package manager, which will be crucial for managing your project's dependencies. The choice between npm
and yarn
depends on your personal preference or project requirements.
npm | yarn |
---|---|
Begin with npm by following the npm documentation. | For yarn , refer to yarn's installation guide. |
2. Set Up Your Project
To kickstart your project, open your terminal and execute the following commands:
mkdir zetachain-api-quickstart
cd zetachain-api-quickstart
npm init --yes
mkdir zetachain-api-quickstart
cd zetachain-api-quickstart
yarn init --yes
This creates a new directory named zetachain-api-quickstart
and initializes a Node.js project within it.
3. Make Your First Request
For making API requests, we'll use Axios, a widely-used HTTP client. Install Axios with the following command:
npm install axios
# Or with yarn
# yarn add axios
Next, create an index.js
file in your project directory. Paste the following code to send a request to the ZetaChain network:
const axios = require('axios');
const url = `https://zetachain-mainnet.g.alchemy.com/v2/${yourAPIKey}`;
const payload = {
jsonrpc: '2.0',
id: 1,
method: 'eth_blockNumber',
params: []
};
axios.post(url, payload)
.then(response => {
console.log('Block Number:', response.data.result);
})
.catch(error => {
console.error(error);
});
Remember to replace yourAPIKey
with your actual Alchemy API key that you can get from your Alchemy dashboard.
4. Run Your Script
To execute your script and make a request to the ZetaChain, run:
node index.js
You should see the current block number on ZetaChain (in hexadecimal format) outputted to your console:
Block Number: 0x6d68e
Next Steps
Well done! You've just made your first request to the ZetaChain API. With this foundation, you can dive deeper into the array of JSON-RPC methods available on ZetaChain and start building your dApps on it!