ApprovalTool Approvals Events Accounts {{ coinbase ? nameOrAddress(coinbase, 16) : 'Connect' }} Warning: This is experimental unaudited software. Please check your transaction data carefully before signing Please install the MetaMask extension and connect to the Ethereum Mainnet or an EVM compatible chain. Then refresh this page, and click the [Connect] button on the top right. {{ modalApproval.item.contract }} {{ modalApproval.item.owner == coinbase ? "(Attached)" : nameOrAddress(modalApproval.item.owner, 42) }} {{ nameOrAddress(modalApproval.item.spender, 42) }} Update Update Update
Attached
Inactive
Fluff
Sync
Dev
{{ sync.total == null || sync.total == 0 ? (sync.completed + ' ' + sync.section) : (sync.completed + '/' + sync.total + ' ' + ((sync.completed / sync.total) * 100).toFixed(0) + '% ' + sync.section) }}
{{ commify0(filteredApprovals.length) + '/' + commify0(approvals.length) }}
{{ commify0(filteredEvents.length) + '/' + commify0(totalEvents) }}
{{ commify0(totalAccounts) }}

Welcome

A lightweigh web3 dapp tool to manage your approvals for ERC-20, ERC-721 and ERC-1155 token contracts on Ethereum-Virtual-Machine compatible chains.
How This Works
  • This tool scans for ERC-20, ERC-721 and ERC-1155 Approval and ApprovalForAll log events from the owner's account. This is done using the getLogs(filter) web3 call
  • These event logs are then processed to determine the approval states for the various ERC-20, ERC-721 and ERC-1155 contracts
  • The latest ERC-20 approval amounts are retrieved using the ERC-20 allowance(...) function
Requirements
  • This dapp runs in web3 enabled desktop browsers connected to the Ethereum mainnet, and should work with other Ethereum-Virtual-Machine compatible chains
References
  • Dapp: https://bokkypoobah.github.io/ApprovalTool/
  • GitHub: https://github.com/bokkypoobah/ApprovalTool
  • Main Dapp Source Code: https://github.com/bokkypoobah/ApprovalTool/blob/main/docs/index.html
Running Locally
  • In a folder on your computer, git clone https://github.com/bokkypoobah/ApprovalTool
  • Run a tool like anywhere in the ./docs subdirectory of the folder created above
Design
  • This dapp is designed to have minimal external dependencies - all code is statically served from GitHub
  • No backend servers are necessary, only a web3 connection
Warning
  • This is experimental unaudited software. Please check your transaction data carefully when updating your approvals!
Troubleshooting
  • If this dapp is not receiving the latest Mainnet data, reset your MetaMask web3 connection using Settings -> Advanced -> Clear activity and nonce data
  • Reset this dapp data by removing LocalStorage entries with the keys beginning with approval
{{ chainId == '1' ? 'Mainnet' : 'Unsupported' }} {{ '#' + commify0(blockNumber) }} {{ formatTimeDiff(timestamp) }}
gm, and enjoy! ApprovalTool © Bok Consulting Pty Ltd 2023