Skip to main content
Aave V3 is a lending and borrowing protocol. The API returns market-level aggregate states, individual supply and borrow positions, and reserve metadata.

Supported chains

Chain IDNetwork
1Ethereum
10Optimism
137Polygon
8453Base
42161Arbitrum
43114Avalanche

Position types

Type identifierDescriptionKey fields
Market statePer-market aggregatenetWorth, healthFactor, totalCollateralBase, totalDebtBase
aave-supplyDeposit earning interestcurrency, balance, balanceUsd, apy, isCollateral
aave-borrowBorrowed debt accruing interestcurrency, debt, debtUsd, apy
ReserveToken metadataunderlyingTokenAddress, aToken, vToken

walletPositions example

query {
  walletPositions(inputs: [
    { protocol: "aave", chainId: 1, walletAddress: "0x742d35Cc6634C0532925a3b8D4C9db96C4b4d8b6" }
  ]) {
    data {
      ... on AaveWalletPositions {
        protocol walletAddress chainId
        marketStates {
          marketAddress marketName chainId
          netWorth healthFactor totalCollateralBase totalDebtBase
        }
        supplyPositions {
          type marketAddress marketName chainId
          currency { address symbol name decimals }
          balance { value raw decimals }
          balanceUsd
          apy { value formatted }
          isCollateral canBeCollateral
        }
        borrowPositions {
          type marketAddress marketName chainId
          currency { address symbol name decimals }
          debt { value raw decimals }
          debtUsd
          apy { value formatted }
        }
        reserves {
          underlyingTokenAddress
          aToken { address symbol name decimals }
          vToken { address symbol name decimals }
        }
      }
    }
    errors { protocol chainId walletAddress error { code message retryable } }
  }
}

poolDetails example

query {
  poolDetails(inputs: [
    { protocol: "aave", chainId: 1, poolAddress: "0x2f39d218133AFaB8F2B819B1066c7E434Ad94E9e" }
  ]) {
    data { protocol chainId poolAddress data }
    errors { protocol chainId poolAddress error { code message retryable } }
  }
}

Notes

  • APY is provided in two formats: apy.value (decimal, e.g., 0.0532) and apy.formatted (string, e.g., "5.32%")
  • healthFactor is null when the wallet has no debt. Below 1.0 means the position is liquidatable
  • balance.value is human-readable (e.g., "5.234"), balance.raw is the wei value
  • isCollateral indicates whether the asset is currently enabled as collateral; canBeCollateral indicates eligibility