Skip to main content
You can connect viem or wagmi to BOT Chain mainnet or testnet by importing one chain object from @uzolabs/sdk/chains.
Early release. This is published in @uzolabs/sdk 0.2.0 on npm and you can use it today. The API may change before 1.0, so pin the version.

The two chain objects

Both are viem Chain objects built with defineChain. You can use them anywhere viem or wagmi asks for a chain.

Why use them

A chain object is only a few lines, but they’re easy to get wrong. The SDK’s objects include two values that hand-written versions often miss:
  • The Multicall3 address. BOT Chain’s Multicall3 is at 0x47FA21f684bBAD707A53a0f9BE59F1422F46C265 on both networks. The standard address that many tools assume has no code on testnet. With the SDK’s chain objects, viem’s multicall and wagmi’s useReadContracts work without any extra setup.
  • The explorer API URL. blockExplorers.default.apiUrl points at BOTScan’s v2 API, which the explorer client uses.

How to use them

clients.ts
Choosing the chain in one place means your addresses, explorer links and clients always match. The contracts module uses the same idea: getAddresses(chain.id). To use your own RPC endpoint, pass it to the transport: http("https://your-rpc.example"). The chain object stays the same.

Next steps

botChain

Every field of the mainnet object.

botChainTestnet

Every field of the testnet object.

Use with wagmi

Add both networks to a React app.

Network details

RPCs, faucet and limits.

botChain

Reference for the botChain object: chain ID, RPC URLs, explorer, native currency and contracts.

botChainTestnet

Reference for the botChainTestnet object for BOT Chain testnet, chain 968.
Last modified on October 2, 2026