This repository is no longer maintained. An active fork can be found at https://github.com/mds1/multicall. Note that this is an external repository not maintained by any entity funded or directed by MakerDAO governance.
Multicall aggregates results from multiple contract constant function calls.
This reduces the number of separate JSON RPC requests that need to be sent (especially useful if using remote nodes like Infura), while also providing the guarantee that all values returned are from the same block (like an atomic read) and returning the block number the values are from (giving them important context so that results from old blocks can be ignored if they're from an out-of-date node).
This smart contract is intended to be used with Multicall.js in front-end dapps.
Multicall2 is the same as Multicall, but provides addition functions that allow calls within the batch to fail. Useful for situations where a call may fail depending on the state of the contract.
Chain | Address |
---|---|
Mainnet | 0x5ba1e12693dc8f9c48aad8770482f4739beed696 |
Kovan | 0x5ba1e12693dc8f9c48aad8770482f4739beed696 |
Rinkeby | 0x5ba1e12693dc8f9c48aad8770482f4739beed696 |
Görli | 0x5ba1e12693dc8f9c48aad8770482f4739beed696 |
Ropsten | 0x5ba1e12693dc8f9c48aad8770482f4739beed696 |
The following addresses have been submitted by external contributors and have not been vetted by Multicall maintainers.
Chain | Address |
---|---|
RSK Mainnet | 0x6c62bf5440de2cb157205b15c424bceb5c3368f5 |
RSK Testnet | 0x9e469e1fc7fb4c5d17897b68eaf1afc9df39f103 |
BSC Mainnet | 0x41263cba59eb80dc200f3e2544eda4ed6a90e76c |
BSC Testnet | 0xae11C5B5f29A6a25e955F0CB8ddCc416f522AF5C |