Skip to main content
POST
Verify Solidity Source Code

Authorizations

apikey
string
query
required

Your Etherscan API key.

Query Parameters

chainid
string
required

Chain ID to query, eg 1 for Ethereum, 8453 for Base from our supported chains.

module
string
default:contract
required

Set to contract for this endpoint.

action
string
default:verifysourcecode
required

Set to verifysourcecode for this endpoint.

Body

application/x-www-form-urlencoded
contractaddress
string
required

The address where the contract is deployed.

Example:

"0xBB9bc244D798123fDe783fCc1C72d3Bb8C189413"

sourceCode
string
required

The Solidity source code to verify.

contractname
string
required

The contract name, including path if applicable. If codeformat=solidity-standard-json-input, then enter contractname as erc20.sol:erc20.

Example:

"contracts/Verified.sol:Verified"

compilerversion
string
required

Compiler version used for compilation.

Example:

"v0.8.24+commit.e11b9ed9"

codeformat
string

Use solidity-single-file for a single file or solidity-standard-json-input for JSON input.

Example:

"solidity-standard-json-input"

optimizationUsed
string

Required for solidity-single-file verification and when codeformat is omitted or unrecognized. Not required for solidity-standard-json-input.

Example:

"0"

runs
string

Number of optimization runs.

Example:

"200"

constructorArguments
string

Optional constructor arguments used in contract deployment.

Example:

"00000000000000000000000074271f2282ed7ee35c166122a60c9830354be42a"

evmVersion
string

Use compiler default or specify an EVM version such as byzantium, shanghai.

Example:

"default"

licenseType
string

The open source license to associate with the verified source code, e.g 3 for MIT.

Example:

"1"