User Guides
Set up a proxy on Avail DA

Proxy Accounts on Avail DA

Proxy accounts provide an efficient way to delegate account management while maintaining security. Instead of using a single account for all operations, you can create smaller accounts with specific roles that can act on behalf of your main account. This guide explains how proxy accounts work on Avail DA and how to use them through an example.

What are Proxy Accounts?

Proxy accounts allow you to:

  • Delegate specific permissions to other accounts
  • Keep your main account secure while still participating in network activities
  • Manage accounts efficiently, especially in corporate or team settings

Think of proxy accounts as trusted delegates that can perform specific actions on behalf of your main account. The main account stays secure in cold storage while proxy accounts handle day-to-day operations.

Proxy Types

When setting up a proxy account, you must specify its type. This determines what actions the proxy can perform:

  • Any: Allows all transactions, including balance transfers. Use with caution as this gives complete control.
  • Non-transfer: Permits any transaction except balance transfers.
  • Governance: Only allows governance-related transactions.
  • Staking: Restricted to staking-related operations.
  • Identity: Restricted to identity registration and management operations.
  • Nomination Pool: Limited to nomination pool operations like joining, bonding, and claiming rewards.

Security Features

Proxy Deposits

Creating a proxy requires a deposit in AVAIL tokens. This deposit is:

  • Required to prevent spam attacks
  • Calculated based on the formula: ProxyDepositBase + (ProxyDepositFactor * number_of_proxies)
  • Returned when the proxy is removed

Currently:

  • ProxyDepositBase is 10 AVAIL
  • ProxyDepositFactor is 3 AVAIL

Setting up a Proxy Account

Go to the Explorer

Head on over to the accounts section of the Avail explorer (opens in a new tab) and connect your main account.

Click on 'Add proxy'

  1. Choose the account for which you want to add a proxy.
  2. Click on the 'Add proxy' button to get started.

add proxy on Avail DA

Configure the Proxy

  1. Click on the highlighted + button to add a new proxy.
  2. Choose the account that should be delegated as a proxy.
  3. Choose the proxy type. We will be going with NonTransfer for this example.
  4. Submit this transaction.

add proxy on Avail DA

PLEASE NOTE

  1. You can add multiple proxies for a single account with varying levels of permissions.
  2. Your delegated proxy will still need some AVAIL tokens to pay for gas fees on behalf of the main account.

That's It!

In a few steps you were able to set up a proxy for your main account that can perform only specific actions on behalf of your main account.

Verify The Proxy Setup

As per the previous steps, our proxy should be able to perform any action on behalf of the main account except transferring funds directly.

Let's verify this by trying to transfer and stake AVAIL from the main account respectively via the proxy.

  1. Go to the same accounts page and click on 'send' to transfer funds.

add proxy on Avail DA

  1. Select an amount to transfer and a recipient address.
  2. Click on 'Make Transfer'.

tranferring funds

  1. Make sure the 'use a proxy for this call' toggle is checked on.
  2. Click on 'Sign and Submit'.

transfer funds via proxy on Avail DA

  1. You will note that while the transaction will be included in the block and the delegated account will pay the gas fee for it, no funds from the main account will actually be transferred.

Best Practices

  1. Use the most restrictive proxy type that meets your needs
  2. Regularly review your proxy relationships
  3. Keep careful records of which accounts have proxy access
  4. Use different proxy accounts for different purposes
⚠️

While proxy accounts add convenience, they also introduce new security considerations. Always verify proxy settings and permissions carefully.