Expand description
§foundry-block-explorers
Bindings for Etherscan.io and other block explorer APIs.
Originally part of ethers-rs
as ethers-etherscan
.
§Examples
use alloy_chains::Chain;
use foundry_block_explorers::Client;
async fn foo() -> Result<(), Box<dyn std::error::Error>> {
let client = Client::new(Chain::mainnet(), "<your_api_key>")?;
// Or using environment variables
let client = Client::new_from_env(Chain::mainnet())?;
let address = "0xBB9bc244D798123fDe783fCc1C72d3Bb8C189413".parse()?;
let metadata = client.contract_source_code(address).await?;
assert_eq!(metadata.items[0].contract_name, "DAO");
Ok(())
}
§Supported Rust Versions
Foundry will keep a rolling MSRV (minimum supported rust version) policy of at least 6 months. When increasing the MSRV, the new Rust version must have been released at least six months ago. The current MSRV is 1.65.0.
Note that the MSRV is not increased automatically, and only as part of a minor release.
§License
Licensed under either of Apache License, Version 2.0 or MIT license at your option.Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in these crates by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Modules§
Structs§
- Client
- The Etherscan.io API client.
- Client
Builder - Response
- The API response type
Enums§
- Etherscan
ApiVersion - The Etherscan.io API version 1 - classic verifier, one API per chain, 2 - new multichain verifier
- Response
Data
Constants§
- ETHERSCAN_
V2_ API_ BASE_ URL - The URL for the etherscan V2 API without the chainid param set.