> ## Documentation Index
> Fetch the complete documentation index at: https://docs.etherscan.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Contract Verification

> Publish your contract's source code on Etherscan: verify programmatically with the API or from your development toolchain.

Verifying a contract publishes its source code on the block explorer, where anyone can read it and confirm it matches the bytecode deployed on chain. Once verified, the source, ABI, and a read/write interface appear on the contract's page. Verify by calling the API directly, or with the verify support built into Hardhat, Foundry, and Remix. Already verified? Read the published source and ABI back with the API.

<Columns cols={2}>
  <Card title="Verify with the API" icon="code" href="/contract-verification/verify-with-api" horizontal>
    Submit source and check the result, on any chain with one key.
  </Card>

  <Card title="Get Verified Source Code" icon="file-code" href="/contract-verification/get-source-code" horizontal>
    Read a verified contract's source and ABI.
  </Card>

  <Card title="Verify with Hardhat" icon="helmet-safety" href="/contract-verification/verify-with-hardhat" horizontal>
    Verify from a Hardhat project with the official verify plugin.
  </Card>

  <Card title="Verify with Foundry" icon="hammer" href="/contract-verification/verify-with-foundry" horizontal>
    Verify from Foundry, on deploy or for an existing address.
  </Card>

  <Card title="Verify with Remix" icon="browser" href="/contract-verification/verify-with-remix" horizontal>
    Verify from the Remix IDE, right in your browser.
  </Card>

  <Card title="Common Verification Errors" icon="triangle-exclamation" href="/contract-verification/common-verification-errors" horizontal>
    Fix bytecode mismatches and compiler setting failures.
  </Card>
</Columns>
