Build faster with production-ready APIs, smart wallets and rollup infrastructure across 70+ chains. Create your free Alchemy API key and get started today.
Celo is an EVM-compatible blockchain designed to provide financial tools and services to anyone with a mobile phone. Known for its focus on usability and inclusive finance, Celo offers a robust environment for deploying Ethereum-based applications with an emphasis on mobile-first experiences.
The Celo API facilitates interaction with the Celo 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 Celo both intuitive and straightforward.
Let's use the viem package to create a Celo client connected to Alchemy and fetch the latest block number!
npm install --save viemimport { createPublicClient, http } from "viem";
import { celo } from "viem/chains";
const client = createPublicClient({
chain: celo,
transport: http("https://celo-mainnet.g.alchemy.com/v2/YOUR_ALCHEMY_API_KEY"),
});Now that you've created a client connected to Alchemy, you can continue with some basics:
const blockNumber = await client.getBlockNumber();
console.log("Current block number:", blockNumber);const balance = await client.getBalance({ address: "0xab5801a7d398351b8be11c439e05c5b3259aec9b" });
console.log("Balance (CELO):", Number(balance) / 1e18);const block = await client.getBlock({
blockNumber: blockNumber, // from previous example
});
console.log(block);const tx = await client.getTransaction({ hash: "0xYOUR_TX_HASH" });
console.log(tx);const receipt = await client.getTransactionReceipt({
hash: "0xYOUR_TX_HASH"
});
console.log(receipt);For the full list of Celo APIs, see the Celo API Endpoints.