- Library — contract definitions (ABI and bytecode)
- On-chain — deployed instances linked to a blockchain address
Adding a Contract to the Library
You can add a contract to the library in four ways:- Direct ABI upload — paste an ABI JSON directly
- Solidity source upload — MultiBaas compiles it for you
- Address lookup — MultiBaas fetches the ABI from Blockscout or Etherscan by contract address
- Framework plugin — automated via the Hardhat or Forge plugin during deployment (see below)
Deploying or Linking a Contract
Deploy a new contract
- Go to Contracts → On-chain → + → Deploy Contract
- Select a contract from the library
- Fill in constructor parameters
- Optionally enable Sync Events and set a starting block for event indexing
- Submit — if using a Cloud Wallet, MultiBaas signs and submits the transaction automatically
Link an existing contract
- Go to Contracts → On-chain → + → Link Contract
- Enter the contract address (MultiBaas can auto-fetch the ABI from a block explorer)
- Select the contract definition from the library
- Optionally enable Sync Events
Calling Contract Methods
Once a contract is linked, MultiBaas exposes all its functions via the REST API. Toggle on Developer Mode in the contract functions UI to see sample payload, curl, TypeScript, or golang code. The base URL for all API calls is:/chains/ethereum/ as a fixed prefix regardless of the actual EVM network. This is a MultiBaas convention — it works correctly for Celo.
Using the TypeScript SDK
Install the TypeScript SDK:signAndSubmit: true with a configured Cloud Wallet address instructs MultiBaas to sign and broadcast the transaction on your behalf.
Write to a contract with an external wallet (viem):
Framework Plugins
Hardhat
Thehardhat-multibaas-plugin automatically uploads and links contracts in your MultiBaas deployment as part of your Hardhat deploy scripts.
Foundry / Forge
Theforge-multibaas plugin provides the same integration for Foundry-based projects.