Learn
Arbitrum

Aave v3 on Arbitrum

Deployments

NameAddress
AaveLendingPoolV30x794a61358D6845594F94dc1DB02A252b5b4814aD (opens in a new tab)
WrappedTokenGatewayV30x5760E34c4003752329bC77790B1De44C2799F8C3 (opens in a new tab)
aArbWETH0xe50fA9b3c56FfB159cB0FCA61F5c9D750e8128c8 (opens in a new tab)
variableDebtWETH0x0c84331e39d6658Cd6e6b9ba04736cC4c4734351 (opens in a new tab)

Action: deposit

Parameters

NameTypeDescription
targetsstring[] (required)ETH | Token symbols | Token addresses

Target: ERC-20

For targets that are ERC-20 tokens, the following functions are allowed:

TARGET below refers to the ERC-20 token address of each element given in targets.

TARGET · approve

Approve AaveLendingPoolV3 to spend TARGET tokens on behalf of the avatar.

  • Contract: TARGET

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to AaveLendingPoolV3
    amount-

AaveLendingPoolV3 · supply

Deposit TARGET and receive aToken tokens in exchange.

  • Contract: AaveLendingPoolV3

  • Function: supply(address,uint256,address,uint16)

    ParameterConstraint
    assetequal to TARGET
    amount-
    onBehalfOfequal to AVATAR
    referralCode-

AaveLendingPoolV3 · setUserUseReserveAsCollateral

Set/unset deposited asset as collateral.

  • Contract: AaveLendingPoolV3

  • Function: setUserUseReserveAsCollateral(address,bool)

    ParameterConstraint
    assetequal to TARGET
    useAsCollateral-

AaveLendingPoolV3 · withdraw

Redeem aToken and withdraw TARGET tokens.

  • Contract: AaveLendingPoolV3

  • Function: withdraw(address,uint256,address)

    ParameterConstraint
    assetequal to TARGET
    amount-
    toequal to AVATAR

AaveLendingPoolV3 · withdraw(bytes32)

Calldata efficient wrapper of the withdraw function.
Redeem aToken and withdraw TARGET tokens.

  • Contract: AaveLendingPoolV3

  • Function: withdraw(bytes32)

    ParameterConstraint
    argsScoped by assetId (see below)

The args is a 32 bytes parameter, where the first 30 bytes represent amount, and the last 2 bytes represent assetId. Only the last 2 bytes are scoped to ensure the correct assetId is used.
For example: 0x0000000000000000000000000000000000000000000000000000000f4240000c.
  amount: 1000000 (represented by 0x0000000000000000000000000000000000000000000000000000000f4240).
  assetId: 12 (represented by 0x000c).

Target: ETH

For "ETH" as an element of targets, the following functions are allowed:

aArbWETH · approve

Approve WrappedTokenGatewayV3 to spend aArbWETH tokens on behalf of the avatar.

  • Contract: aArbWETH

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to WrappedTokenGatewayV3
    amount-

WrappedTokenGatewayV3 · depositETH

Deposit ETH and receive aArbWETH tokens in exchange.

  • Contract: WrappedTokenGatewayV3

  • Function: depositETH(address,address,uint16) Ξ allow sending ETH

    ParameterConstraint
    addressequal to AaveLendingPoolV3
    onBehalfOfequal to AVATAR
    referralCode-

AaveLendingPoolV3 · setUserUseReserveAsCollateral

Set/unset deposited asset as collateral.

  • Contract: AaveLendingPoolV3

  • Function: setUserUseReserveAsCollateral(address,bool)

    ParameterConstraint
    assetequal to TARGET
    useAsCollateral-

WrappedTokenGatewayV3 · withdrawETH

Redeem aArbWETH and withdraw ETH tokens.

  • Contract: WrappedTokenGatewayV3

  • Function: withdrawETH(address,uint256,address)

    ParameterConstraint
    addressequal to AaveLendingPoolV3
    amount-
    toequal to AVATAR

Action: borrow

Parameters:

NameTypeDescription
targetsstring[] (required)ETH | Token symbols | Token addresses

Target: ERC-20

For targets that are ERC-20 tokens, the following functions are allowed:

TARGET below refers to the ERC-20 token address of each element given in targets.

TARGET · approve

Approve AaveLendingPoolV3 to spend TARGET tokens on behalf of the avatar.

  • Contract: TARGET

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to AaveLendingPoolV3
    amount-

AaveLendingPoolV3 · borrow

Receive TARGET and variableDebtToken tokens.

  • Contract: AaveLendingPoolV3

  • Function: borrow(address,uint256,uint256,uint16,address)

    ParameterConstraint
    assetequal to TARGET
    amount-
    interestRateMode-
    referralCode-
    onBehalfOfequal to AVATAR

AaveLendingPoolV3 · repay

Repay borrowed TARGET tokens.

  • Contract: AaveLendingPoolV3

  • Function: repay(address,uint256,uint256,address)

    ParameterConstraint
    assetequal to TARGET
    amount-
    rateMode-
    onBehalfOfequal to AVATAR

Target: ETH

For "ETH" as an element of targets, the following functions are allowed:

variableDebtWETH · approveDelegation

Set the amount of allowance for WrappedTokenGatewayV3 to borrow variableDebtWETH tokens.

  • Contract: variableDebtWETH

  • Function: approveDelegation(address,uint256)

    ParameterConstraint
    delegateeequal to WrappedTokenGatewayV3
    amount-

WrappedTokenGatewayV3 · borrowETH

Receive ETH and variableDebtWETH tokens.

  • Contract: WrappedTokenGatewayV3

  • Function: borrowETH(address,uint256,uint256,uint16)

    ParameterConstraint
    addressequal to AaveLendingPoolV3
    amount-
    interestRateMode-
    referralCode-

WrappedTokenGatewayV3 · repayETH

Repay borrowed ETH.

  • Contract: WrappedTokenGatewayV3

  • Function: repayETH(address,uint256,uint256,address) Ξ allow sending ETH

    ParameterConstraint
    addressequal to AaveLendingPoolV3
    amount-
    rateMode-
    onBehalfOfequal to AVATAR