Skip to main content

Build with Bridges using the AMB

Submitting AMB Confirmations Manually

Between Ethereum and Gnosis Chain

The Arbitrary Message Bridge between the Ethereum Mainnet and Gnosis Chain requires a request-and-claim scheme to transfer data from Gnosis Chain, and some users and applications may want to use a manual process to gather the oracles confirmations and send them to the AMB contracts on the Ethereum side.

info

This approach is the equivalent of the set of actions performed by the OmniBridge UI after pressing the "Claim" button, or by the AMB Live Monitoring app after pressing the "Execute" button.

Below is the list of actions that can be executed in BlockScout and Etherscan, or, if you are familiar with the contract interaction through Web3 provider, it can be done by importing the contract's ABI to your application.

  1. Find the first transaction which initiated message passing through the AMB bridge and go to the logs generated during the transaction execution. The encodedData argument emitted with the UserRequestForSignature event will be used in the next steps.
  2. Go to the AMB helper contract and call getSignatures() there with the encoded data from the UserRequestForSignature event. It will produce a blob with signatures.
  3. Pass the encoded data and the signatures to the Arbitrary Message Bridge contract's executeSignatures() function on the Ethereum Mainnet and press the "Write" button to send the transaction.
info

MetaMask will show a high gas estimate for this transaction. In most cases the final gas consumption will be significantly lower.

Deploying custom ERC-20 Bridge