Skip to Content
API ReferenceAvail bridge API reference

Avail bridge API reference

⚠️

TRANSACTION NESTING LIMITATIONS

To ensure network stability and security, the Avail network is generally subject to the following limits:

  1. General Transactions: Transaction nesting is limited to a maximum of 5 levels. Transactions exceeding this limit are not guaranteed to be processed successfully.

  2. Bridge Transactions (Avail to Ethereum): For vector.sendMessage operations, only direct calls and nesting only with proxy/multisig (up to 2 levels) are supported. Any other combination is not guaranteed to work.

  3. Data Availability Submissions: dataAvailability.submitData operations should only be performed with standard accounts.

  4. Batching Restrictions:

    • vector.sendMessage and dataAvailability.submitData calls should not be included in batch calls.
    • vector.sendMessage should not be included in schedule calls.
    • Transactions with more than 2 levels of batching are not guaranteed to work.

Understanding Nesting Levels:

  • Level 0: Direct call (e.g., dataAvailability.submitData)
  • Level 1: One wrapper (e.g., multisig → dataAvailability.submitData)
  • Level 2: Two wrappers (e.g., proxy → multisig → dataAvailability.submitData)

BEFORE WE START

  1. The Avail VectorX bridge can be used to pass messages and tokens between
    Avail DA Turing - Ethereum Sepolia (testnet bridge), and between Avail DA mainnet - Ethereum mainnet (mainnet bridge).
  2. You can check out a complete list of endpoints required to use the bridge API in the networks page.

TWO WAYS OF USING THE BRIDGE API

  1. You can build and run the bridge API locally using the instructions outlined in this repo: availproject/bridge-api
  2. We have included two public endpoints for the bridge API in the networks page that you can use. For the sake of simplicity that is what we will be using in this guide.
  3. For the sake of simplicity, we will use the Turing testnet bridge API in this guide.

Setting up the dev environment

  1. To use the Avail bridge API with curl, you just need to have curl installed on your system. You can check if it is installed by running:
CURL
curl --version
  1. If this does not work, go to curl’s website to install it on your system.
Last updated on