Learn
Aave v3

Aave v3

https://aave.com (opens in a new tab)

Deployments

NameAddress
AaveLendingPoolV30x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2 (opens in a new tab)
WrappedTokenGatewayV30x893411580e590D62dDBca8a703d61Cc4A8c7b2b9 (opens in a new tab)
aEthWETH0x4d5F47FA6A74757f35C14fD3a6Ef8E3C9BC514E8 (opens in a new tab)
AAVE0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9 (opens in a new tab)
stkAAVE0x4da27a545c0c5b758a6ba100e3a049001de870f5 (opens in a new tab)
ABPTV20x3de27EFa2F1AA663Ae5D458857e731c129069F29 (opens in a new tab)
stkABPTv20x9eDA81C21C273a82BE9Bbc19B6A6182212068101 (opens in a new tab)
GHO0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f (opens in a new tab)
stkGHO0x1a88Df1cFe15Af22B3c4c783D4e6F7F9e0C1885d (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 tokens to the Aave lending pool 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.

  • Contract: AaveLendingPoolV3

  • Function: withdraw(address,uint256,address)

    ParameterConstraint
    assetequal to TARGET
    amount-
    toequal to AVATAR

Target: ETH

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

aEthWETH · approve

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

  • Contract: aEthWETH

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to WrappedTokenGatewayV3
    amount-

WrappedTokenGatewayV3 · depositETH

Deposit ETH and receive aEthWETH 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 aEthWETH and withdraw ETH.

  • 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 tokens and receive debtToken (stable or variable debt).

  • Contract: AaveLendingPoolV3

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

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

AaveLendingPoolV3 · swapBorrowRateMode

Swap the borrow rate mode.

  • Contract: AaveLendingPoolV3

  • Function: swapBorrowRateMode(address,unit256)

    ParameterConstraint
    assetequal to TARGET
    rateMode-

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 of variableDebtWETH.

  • Contract: variableDebtWETH

  • Function: approveDelegation(address,uint256)

    ParameterConstraint
    delegateeequal to WrappedTokenGatewayV3
    amount-

stableDebtWETH · approveDelegation

Set the amount of allowance for WrappedTokenGatewayV3 to borrow of stableDebtWETH.

  • Contract: stableDebtWETH

  • Function: approveDelegation(address,uint256)

    ParameterConstraint
    delegateeequal to WrappedTokenGatewayV3
    amount-

WrappedTokenGatewayV3 · borrowETH

Receive ETH and debtETH (stable or variable debt) token.

  • Contract: WrappedTokenGatewayV3

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

    ParameterConstraint
    addressequal to AaveLendingPoolV3
    amount-
    interestRateMode-
    referralCode-

AaveLendingPoolV3 · swapBorrowRateMode

Swap the borrow rate mode.

  • Contract: AaveLendingPoolV3

  • Function: swapBorrowRateMode(address,unit256)

    ParameterConstraint
    assetequal to TARGET
    rateMode-

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

Action: stake

Parameters:

NameTypeConstraint
targetsstring[] (required)StakeToken symbols | StakeToken addresses

Target: AAVE

If the AAVE token is given as an element of targets, the following functions will be allowed:

AAVE · approve

Approve stkAAVE to spend AAVE tokens on behalf of avatar.

  • Contract: AAVE

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to stkAAVE
    amount-

stkAAVE · stake

Stake AAVE tokens in Aave's safety module.

  • Contract: stkAAVE

  • Function: stake(address,uint256)

    ParameterConstraint
    onBehalfOfequal to AVATAR
    amount-

stkAAVE · claimRewardsAndStake

Claim AAVE rewards accrued from staking AAVE and restake.

  • Contract: stkAAVE

  • Function: claimRewardsAndStake(address,uint256)

    ParameterConstraint
    toequal to AVATAR
    amount-

stkAAVE · claimRewards

Claim AAVE rewards accrued from staking AAVE.

  • Contract: stkAAVE

  • Function: claimRewards(address,uint256)

    ParameterConstraint
    toequal to AVATAR
    amount-

stkAAVE · cooldown

Initiates a 20 days cooldown period. Ince this is over, the 2 days unstaking window opens.

  • Contract: stkAAVE
  • Function: cooldown()

stkAAVE · unstake

Unstake AAVE can only be called during the 2 days unstaking window after the 20 days cooldown period.

  • Contract: stkAAVE

  • Function: redeem(address,uint256)

    ParameterConstraint
    toequal to AVATAR
    amount-

Target: ABPTV2

If the ABPTV2 token is given as an element of targets, the following functions will be allowed:

ABPTV2 · approve

Approve stkABPTv2 to spend ABPTV2 tokens on behalf of the avatar.

  • Contract: ABPTV2

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to stkABPTv2
    amount-

stkABPTv2 · stake

Stake ABPTV2 in Aave's safety module.

  • Contract: stkABPTv2

  • Function: stake(address,uint256)

    ParameterConstraint
    onBehalfOfequal to AVATAR
    amount-

stkABPTv2 · claimRewards

Claim ABPTV2 rewards accrued from staking ABPTV2.

  • Contract: stkABPTv2

  • Function: claimRewards(address,uint256)

    ParameterConstraint
    toequal to AVATAR
    amount-

stkABPTv2 · cooldown

Initiates a 20 days cooldown period. Once this is over, the 2 days unstaking window opens.

  • Contract: stkABPTv2
  • Function: cooldown()

stkABPTv2 · unstake

Unstake ABPTV2 can only be called during the 2 days unstaking window after the 20 days cooldown period.

  • Contract: stkABPTv2

  • Function: redeem(address,uint256)

    ParameterConstraint
    toequal to AVATAR
    amount-

Target: GHO

If the GHO token is given as an element of targets, the following functions will be allowed:

GHO · approve

Approve stkGHO to spend GHO tokens on behalf of the avatar.

  • Contract: GHO

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to stkGHO
    amount-

stkGHO · stake

Stake GHO in Aave's safety module.

  • Contract: stkGHO

  • Function: stake(address,uint256)

    ParameterConstraint
    onBehalfOfequal to AVATAR
    amount-

stkGHO · claimRewards

Claim AAVE rewards accrued from staking GHO.

  • Contract: stkGHO

  • Function: claimRewards(address,uint256)

    ParameterConstraint
    toequal to AVATAR
    amount-

stkGHO · cooldown

Initiates a 20 days cooldown period. Once this is over, the 2 days unstaking window opens.

  • Contract: stkGHO
  • Function: cooldown()

stkGHO · unstake

Unstake GHO can only be called during the 2 days unstaking window after the 20 days cooldown period.

  • Contract: stkGHO

  • Function: redeem(address,uint256)

    ParameterConstraint
    toequal to AVATAR
    amount-

Action: delegate

Parameters:

NameTypeDescription
targetsstring[] (required)DelegateToken symbols | DelegateToken addresses
delegateestring (required)Address of the delegatee

DELEGATEE below refers to the address given for the action's delegatee parameter.

Target: AAVE

If the AAVE token is given as an element of targets, the following functions will be allowed:

AAVE · delegate

Delegate the AAVE voting power for all type of actions (voting and proposition).

  • Contract: AAVE

  • Function: delegate(address)

    ParameterConstraint
    delegateeequal to DELEGATEE

AAVE · delegateByType

Delegate the AAVE voting power by type of action.

  • Contract: AAVE

  • Function: delegateByType(address,uint8)

    ParameterConstraint
    delegateeequal to DELEGATEE
    delegationType-

Target: stkAAVE

If the stkAAVE token is given as an element of targets, the following functions will be allowed:

stkAAVE · delegate

Delegate the stkAAVE voting power for all type of actions (voting and proposition).

  • Contract: stkAAVE

  • Function: delegate(address)

    ParameterConstraint
    delegateeequal to DELEGATEE

stkAAVE · delegateByType

Delegate the stkAAVE voting power by type of action.

  • Contract: stkAAVE

  • Function: delegateByType(address,uint8)

    ParameterConstraint
    delegateeequal to DELEGATEE
    delegationType-

Target: aEthAAVE

If the aEthAAVE token is given as an element of targets, the following functions will be allowed:

aEthAAVE · delegate

Delegate the aEthAAVE voting power for all type of actions (voting and proposition).

  • Contract: aEthAAVE

  • Function: delegate(address)

    ParameterConstraint
    delegateeequal to DELEGATEE

aEthAAVE · delegateByType

Delegate the aEthAAVE voting power by type of action.

  • Contract: aEthAAVE

  • Function: delegateByType(address,uint8)

    ParameterConstraint
    delegateeequal to DELEGATEE
    delegationType-