Learn
Ethereum

Aave v3 on Ethereum

Deployments

NameAddress
PoolCoreV30x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2 (opens in a new tab)
WrappedTokenGatewayCoreV30xA434D495249abE33E031Fe71a969B81f3c07950D (opens in a new tab)
aEthWETH0x4d5F47FA6A74757f35C14fD3a6Ef8E3C9BC514E8 (opens in a new tab)
variableDebtWETH0xeA51d7853EEFb32b6ee06b1C12E6dcCA88Be0fFE (opens in a new tab)
PoolPrimeV30x4e033931ad43597d96D6bcc25c280717730B58B1 (opens in a new tab)
WrappedTokenGatewayPrimeV30x0B8C700917a6991FEa7198dDFC80bc8962b5055D (opens in a new tab)
variableDebtEthLidoWeth0x91b7d78BF92db564221f6B5AeE744D1727d1Dd1e (opens in a new tab)
aEthLidoWeth0xfA1fDbBD71B0aA16162D76914d69cD8CB3Ef92da (opens in a new tab)
PoolEtherFiV30x0AA97c284e98396202b6A04024F5E2c65026F3c0 (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)
IncentivesV30x8164Cc65827dcFe994AB23944CBC90e0aa80bFcb (opens in a new tab)

Action: deposit

Parameters

NameTypeDescription
marketstring (optional)Market names | Market poolAddresses (default: Core)
targetsstring[] (required)ETH | Token symbols | Token addresses

Target: ERC-20

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

The MARKET parameter determines which Aave market is targeted (Core, Prime, or EtherFi). Provide either the market name or the pool address. If omitted, the default market is Core.

The POOLV3 placeholder represents the pool of the selected MARKET.

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

🚫

If a token provided in the targets parameter is not supported by the selected market, an error will be thrown.

TARGET · approve

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

  • Contract: TARGET

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to POOLV3
    amount-

POOLV3 · supply

Deposit TARGET and receive aToken tokens in exchange.

  • Contract: POOLV3

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

    ParameterConstraint
    assetequal to TARGET
    amount-
    onBehalfOfequal to AVATAR
    referralCode-

POOLV3 · setUserUseReserveAsCollateral

Enable or disable TARGET as collateral.

  • Contract: POOLV3

  • Function: setUserUseReserveAsCollateral(address,bool)

    ParameterConstraint
    assetequal to TARGET
    useAsCollateral-

POOLV3 · withdraw

Redeem aToken and withdraw TARGET tokens.

  • Contract: POOLV3

  • Function: withdraw(address,uint256,address)

    ParameterConstraint
    assetequal to TARGET
    amount-
    toequal to AVATAR

IncentivesV3 · claimRewards

Claim incentive rewards for supplying specific tokens.

  • Contract: IncentivesV3

  • Function: claimRewards(address[],uint256,address,address)

    ParameterConstraint
    assets-
    amount-
    toequal to AVATAR
    reward-

Target: ETH

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

The aETH placeholder represents the aToken for ETH in the selected market.

The POOLV3 placeholder represents the pool of the selected MARKET.

The WRAPPEDTOKENGATEWAYV3 placeholder represents the Wrapped Token Gateway of the selected MARKET.

aETH · approve

Approve WRAPPEDTOKENGATEWAYV3 to spend aETH tokens on behalf of the avatar.

  • Contract: aETH

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to WRAPPEDTOKENGATEWAYV3
    amount-

WRAPPEDTOKENGATEWAYV3 · depositETH

Deposit ETH and receive aETH tokens in exchange.

  • Contract: WRAPPEDTOKENGATEWAYV3

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

    ParameterConstraint
    addressequal to POOLV3
    onBehalfOfequal to AVATAR
    referralCode-

POOLV3 · setUserUseReserveAsCollateral

Enable or disable TARGET as collateral.

  • Contract: POOLV3

  • Function: setUserUseReserveAsCollateral(address,bool)

    ParameterConstraint
    assetequal to TARGET
    useAsCollateral-

WRAPPEDTOKENGATEWAYV3 · withdrawETH

Redeem aETH and withdraw ETH tokens.

  • Contract: WRAPPEDTOKENGATEWAYV3

  • Function: withdrawETH(address,uint256,address)

    ParameterConstraint
    addressequal to POOLV3
    amount-
    toequal to AVATAR

IncentivesV3 · claimRewards

Claim incentive rewards for supplying specific tokens.

  • Contract: IncentivesV3

  • Function: claimRewards(address[],uint256,address,address)

    ParameterConstraint
    assets-
    amount-
    toequal to AVATAR
    reward-

Action: borrow

Parameters:

NameTypeDescription
marketstring (optional)Market names | Market poolAddresses (default: Core)
targetsstring[] (required)ETH | Token symbols | Token addresses

Target: ERC-20

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

The MARKET parameter determines which Aave market is targeted (Core, Prime, or EtherFi). Provide either the market name or the pool address. If omitted, the default market is Core.

The POOLV3 placeholder represents the pool of the selected MARKET.

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

The aVARIABLEDEBTETH placeholder represents the aVariableDebt for ETH in the selected market.

🚫

If a token provided in the targets parameter is not supported by the selected market, an error will be thrown.

TARGET · approve

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

  • Contract: TARGET

  • Function: approve(address,uint256)

    ParameterConstraint
    spenderequal to POOLV3
    amount-

POOLV3 · borrow

Receive TARGET and aVARIABLEDEBTETH tokens.

  • Contract: POOLV3

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

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

POOLV3 · repay

Repay borrowed TARGET tokens.

  • Contract: POOLV3

  • 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:

The WRAPPEDTOKENGATEWAYV3 placeholder represents the Wrapped Token Gateway of the selected MARKET.

The aVARIABLEDEBTETH placeholder represents the aVariableDebt for ETH in the selected market.

aVARIABLEDEBTETH · approveDelegation

Set the amount of allowance for WRAPPEDTOKENGATEWAYV3 to borrow aVARIABLEDEBTETH tokens.

  • Contract: aVARIABLEDEBTETH

  • Function: approveDelegation(address,uint256)

    ParameterConstraint
    delegateeequal to WRAPPEDTOKENGATEWAYV3
    amount-

WRAPPEDTOKENGATEWAYV3 · borrowETH

Receive ETH and aVARIABLEDEBTETH tokens.

  • Contract: WRAPPEDTOKENGATEWAYV3

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

    ParameterConstraint
    addressequal to POOLV3
    amount-
    interestRateMode-
    referralCode-

WRAPPEDTOKENGATEWAYV3 · repayETH

Repay borrowed ETH.

  • Contract: WRAPPEDTOKENGATEWAYV3

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

    ParameterConstraint
    addressequal to POOLV3
    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-