Verifying Contracts Using the Tenderly Dashboard
After deploying a contract (for example to a Tenderly Fork), you can verify your contract so Tenderly can decode everything into a human readable format. This is especially useful if you want to use the full power of our Debugger.
If you want to import and verify contracts from your local environment via CLI, you can follow this guide.
Click the Contracts tab in the left navigation bar and then Add Contract in the top right after which you will be shown the following screen:

File(s) Upload

You can paste the contract source directly. Alternatively, you can upload a single contract file or a folder from which Tenderly will recognize all the contracts.
This is a contract source example we will be using:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.3;
โ€‹
contract Counter {
uint public count;
โ€‹
// Function to get the current count
function get() public view returns (uint) {
return count;
}
โ€‹
// Function to increment count by 1
function inc() public {
count += 1;
}
โ€‹
// Function to decrement count by 1
function dec() public {
count -= 1;
}
}
We named the contract and pasted its source into the input field:
You can choose whether to verify your contract privately or publicly.
If the contract is verified privately, only you (and other people who you shared your project with) will be able to see and use it.
If the contract is verified publicly, it will be visible to everyone using Tenderly.
If you uploaded a folder and have multiple contracts, you can choose which one(s) you want to verify. Fill out the contract info by choosing its Network and pasting the contract address from where it was deployed.
After you add your contract, you can add other contracts from your folder by clicking the Add more button:
Finally, you need to fill out the compiler info which needs to match the parameters you chose when you deployed the contract:
You can now see all of the contracts that you have verified:
And we can now see the verified contract(s) in the project contract list:

JSON Upload

You can insert the contract metadata, that is generated by default by the Solidity compiler, to upload the contract to this project:
You can choose whether to verify your contract privately or publicly.
If the contract is verified privately, only you (and other people who you shared your project with) will be able to see and use it.
If the contract is verified publicly, it will be visible to everyone using Tenderly.
If you uploaded a JSON which contains multiple contracts, you can choose which one(s) you want to verify. Fill out the contract info by choosing its Network and pasting the contract address from where it was deployed.
After you add your contract, you can add more from your folder by clicking the Add more button.
Finally, you need to fill out the compiler info that should match the parameters you chose when you deployed the contract:
You can now see all of the contracts that you have verified:
And we can now see the verified contract(s) in the project contract list: