Skip to main content
POST
Verify Source Code on zkSync

Authorizations

apikey
string
query
required

Enter your Etherscan API key, or set one up if you don't have one.

Query Parameters

chainid
string
required

Chain ID to query, eg 324 for zkSync Era 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
sourceCode
string
required

The Solidity source code to verify.

contractaddress
string
required

The address where the contract is deployed.

Example:

"0xdAC17F958D2ee523a2206206994597C13D831ec7"

contractname
string
required

The contract name, including path if applicable.

Example:

"contracts/Verified.sol:Verified"

compilerversion
string
required

Compiler version used for compilation.

Example:

"v0.8.24+commit.e11b9ed9"

zksolcVersion
string
required

Required for EraVM contracts and optional for EVM contracts. Use a version with the v prefix, beginning with v1.3.0.

Example:

"v1.3.13"

codeformat
string

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

Example:

"solidity-standard-json-input"

constructorArguments
string

Optional constructor arguments used in contract deployment.

Example:

"00000000000000000000000074271f2282ed7ee35c166122a60c9830354be42a"

optimizationUsed
string

Required when codeformat is solidity-single-file. Use 1 if optimization was used or 0 if disabled.

Example:

"0"

Response

200 - application/json

Successful response

status
string

1 if the request returned data, 0 otherwise. A status of 0 can indicate an error or a valid request that returned no records.

message
string

OK on success, otherwise an error description such as NOTOK. See common error messages.

result
string

GUID for the verification submission. Use it with checkverifystatus to poll the result.