ABI Playground
The ABI Playground provides an interactive environment for working with verified smart contracts on Oasis networks. Similar to Etherscan's read/write contract functionality, you can execute functions on verified contracts deployed to the Sapphire and Emerald networks.
If your contract isn't verified yet, please see our verification chapter.
Access Verified Contracts
You can access verified contracts in two ways:
Method 1: via Explorer
- Navigate to the Explorer.
- Search for a verified contract using its address, e.g. Wrapped ROSE:
0x8Bc2B030b299964eEfb5e1e0b36991352E56D2D3
. - Click
Interact in ABI Playground
.
- The ABI Playground will open with the Wrapped ROSE contract loaded.
Method 2: Direct ABI Playground Access
- Visit the ABI Playground.
- Enter a verified contract address, e.g., Wrapped ROSE:
0x8Bc2B030b299964eEfb5e1e0b36991352E56D2D3
. - Click
Load Contract
.
- The ABI Playground will open with the Wrapped ROSE contract loaded.
Working with Localnet Contracts
The ABI Playground also supports interacting with contracts deployed on a localnet for testing purposes.
- Visit the ABI Playground.
- Select
Oasis Saphhire Localnet
from the network dropdown.
- Enter address of the contract you deployed on localnet.
- Paste the ABI JSON into the provided text field.
- Click
Import ABI
to load the interface.
Finding Your Contract's ABI
When using development frameworks:
- Hardhat: Look in the
artifacts
directory - Foundry: Check the
out
directory
If you encounter format errors, validate your ABI JSON using an online formatter before importing.
Troubleshooting
Contract address not found
- Cause: The contract might not be verified on Sourcify or the address is incorrect.
- Solution: Verify the contract on Sourcify or double-check the address.
Invalid ABI format
- Cause: The ABI JSON might not be following standard formatting.
- Solution: Use an online JSON formatter to validate and reformat the ABI before importing it.
Should you have any other problems or questions, do not hesitate to share them with us on the #dev-central Discord channel.