Cambrian Lending overview endpoint API

By Cambrian Network evm

GET /evm/lending/overview

Lending Overview

Overview

Returns an overview of all pools and vaults across supported EVM lending protocols (Aave, Morpho, Euler, Sky, Sparklend, and more). Each row represents a single lending pool or vault with its supply, borrow, TVL, APY, and cap metrics. Results can be filtered by chain, protocol, address, or underlying token, and sorted or paginated.

Business Value

  • Cross-protocol comparison: Compare supply/borrow APYs, net yields, and utilization rates across protocols like Aave v3, Morpho v1/v2, and others in a single call.
  • Risk monitoring: Track loan-to-value (LTV), utilization rate, and available liquidity to assess borrowing risk and liquidity conditions per pool/vault.
  • Capacity tracking: Monitor supply/borrow caps and remaining capacity in USD to anticipate when a pool or vault approaches its limits.
  • Portfolio and market research: Filter by underlying token, protocol, or minimum TVL to power dashboards, yield-scanning tools, and vault discovery features.
  • Fee transparency: Surface performance and management fees charged by vaults, useful for net-yield calculations.

Endpoint Details

URL:

https://api.cambrian.org/evm/lending/overview

Method: GET Authentication: Required via X-API-Key header

Query Parameters

Parameter Type Required Default Description
address string No - Address of the lending pool / vault
underlying_address string No - Underlying token address. See tokens for valid addresses.
chain_id integer No 8453 EVM chain ID. Enum: 1, 8453
protocol_id string No - Filter by protocol ID. Ex: aave-v3, morpho-v1, morpho-v2, euler-lend, etc.
min_tvl_usd integer No - Minimum TVL USD of the lending pool/vault
borrowable boolean No - If true, only lending pools/vaults with borrowing enabled will be returned
limit integer No 100 Limit the number of results.
offset integer No 0 Offset the results, allows you to skip a number of rows before starting to return rows.
order_asc array No - List of column names to order by in ascending order divided by comma.
order_desc array No - List of column names to order by in descending order divided by comma.

Response Field Descriptions

Response Field Type Description
chainId UInt16 EVM chain ID
protocolId String Lending protocol identifier (e.g. aave-v3, morpho-v1, morpho-v2)
address FixedString(42) Address of the lending pool / vault
symbol Nullable(String) Symbol of the pool/vault token
vaultName Nullable(String) Human-readable name of the vault
underlyingAddress Nullable(FixedString(42)) Address of the underlying token
underlyingSymbol Nullable(String) Symbol of the underlying token
supply Float64 Total supplied amount, in underlying token units
supplyUsd Float64 Total supplied amount in USD
borrow Nullable(Float64) Total borrowed amount, in underlying token units
borrowUsd Nullable(Float64) Total borrowed amount in USD
tvlUsd Float64 Total value locked in USD
supplyCap Nullable(Float64) Maximum supply allowed, in underlying token units
supplyCapUsd Nullable(Float64) Maximum supply allowed in USD
borrowCap Nullable(Float64) Maximum borrow allowed, in underlying token units
borrowCapUsd Nullable(Float64) Maximum borrow allowed in USD
availableLiquidityUsd Nullable(Float64) Liquidity available to borrow in USD
remainingCapacityUsd Nullable(Float64) Remaining capacity before hitting the supply cap, in USD
supplyApy Nullable(Float64) Annual percentage yield earned by suppliers
borrowApy Nullable(Float64) Annual percentage yield paid by borrowers
netSupplyApy Nullable(Float64) Supply APY net of performance/management fees
performanceFee Nullable(Float64) Performance fee charged by the vault/curator
managementFee Nullable(Float64) Management fee charged by the vault/curator
utilizationRate Nullable(Float64) Ratio of borrowed to supplied funds
ltv Nullable(Float64) Loan-to-value ratio allowed for the asset
borrowable Bool Whether borrowing is enabled for this pool/vault
depositEnabled Bool Whether deposits are currently enabled
updatedAt DateTime('UTC') Timestamp of the last data update

Examples

1. Retrieve the lending overview (limited results)

Fetches an overview of lending pools/vaults across supported protocols, limited to 10 results.

curl -X GET "https://api.cambrian.org/evm/lending/overview?limit=10" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response:

[
  {
    "columns": [
      { "name": "chainId", "type": "UInt16" },
      { "name": "protocolId", "type": "String" },
      { "name": "address", "type": "FixedString(42)" },
      { "name": "symbol", "type": "Nullable(String)" },
      { "name": "vaultName", "type": "Nullable(String)" },
      { "name": "underlyingAddress", "type": "Nullable(FixedString(42))" },
      { "name": "underlyingSymbol", "type": "Nullable(String)" },
      { "name": "supply", "type": "Float64" },
      { "name": "supplyUsd", "type": "Float64" },
      { "name": "borrow", "type": "Nullable(Float64)" },
      { "name": "borrowUsd", "type": "Nullable(Float64)" },
      { "name": "tvlUsd", "type": "Float64" },
      { "name": "supplyCap", "type": "Nullable(Float64)" },
      { "name": "supplyCapUsd", "type": "Nullable(Float64)" },
      { "name": "borrowCap", "type": "Nullable(Float64)" },
      { "name": "borrowCapUsd", "type": "Nullable(Float64)" },
      { "name": "availableLiquidityUsd", "type": "Nullable(Float64)" },
      { "name": "remainingCapacityUsd", "type": "Nullable(Float64)" },
      { "name": "supplyApy", "type": "Nullable(Float64)" },
      { "name": "borrowApy", "type": "Nullable(Float64)" },
      { "name": "netSupplyApy", "type": "Nullable(Float64)" },
      { "name": "performanceFee", "type": "Nullable(Float64)" },
      { "name": "managementFee", "type": "Nullable(Float64)" },
      { "name": "utilizationRate", "type": "Nullable(Float64)" },
      { "name": "ltv", "type": "Nullable(Float64)" },
      { "name": "borrowable", "type": "Bool" },
      { "name": "depositEnabled", "type": "Bool" },
      { "name": "updatedAt", "type": "DateTime('UTC')" }
    ],
    "data": [
      [8453, "morpho-v2", "0xbeef0e0834849acc03f0089f01f4f1eeb06873c9", "steakUSDC", "Steakhouse Prime USDC", "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 428360626.028591, 428360626.028591, 0, 0, 428360626.028591, 2225081878.085773, 2225081878.085773, null, null, 185655318.936964, 1796721252.057182, 0.04168691112169132, null, 0.04168691112169132, 0, 0, null, null, false, true, "2026-09-10T12:57:19+00:00"],
      [8453, "morpho-v1", "0xee8f4ec5672f09119b96ab6fb59c27e1b7e44b61", "gtUSDCp", "Gauntlet USDC Prime", "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 421179974.151221, 421179974.151221, 0, 0, 421179974.151221, 101160000000, 101160000000, null, null, 421179974.151221, 100738820025.84879, 0.0418386828020513, null, 0.0418386828020513, 0, null, 0, null, false, true, "2026-09-10T12:54:19+00:00"],
      [8453, "morpho-v2", "0xbeeff2490feffa212fac2f6553682c219e6a8845", "sirloinUSDC", "Steakhouse High Yield USDC Edition", "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 384181747.136423, 384181747.136423, 0, 0, 384181747.136423, 2760908735.682115, 2760908735.682115, null, null, 47335877.386685, 2376726988.545692, 0.03796562927208558, null, 0.028474221954064183, 0.25, 0, null, null, false, true, "2026-09-10T12:56:59+00:00"],
      [8453, "morpho-v1", "0x7bfa7c4f149e7415b73bdedfe609237e29cbf34a", "sparkUSDC", "Spark USDC Vault", "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 289869497.682424, 289869497.682424, 0, 0, 289869497.682424, 2.451992865385422e+49, 2.451992865385422e+49, null, null, 289869497.682424, 2.451992865385422e+49, 0.04178665114332942, null, 0.037607986028996475, 0.1, null, 0, null, false, true, "2026-09-10T12:57:01+00:00"],
      [8453, "aave-v3", "0xbdb9300b7cde636d9cd4aff00f6f009ffbbc8ee6", "aBascbBTC", "Aave Base cbBTC", "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf", "cbBTC", 2751.6131767583693, 211523650.68798336, 97.9392301823718, 7528842.967001539, 211523650.68798336, 3200, 245992310.22689134, 380, 29211586.839443345, 203994807.72098184, 34468659.538907975, 0.00012149499022011393, 0.006789463725820105, 0.00012149499022011393, null, null, 0.0355933860942447, 0.73, true, true, "2026-09-10T12:56:45+00:00"],
      [8453, "aave-v3", "0xd4a0e0b9149bcee3c920d2e00b5de09138fd8bb7", "aBasWETH", "Aave Base WETH", "0x4200000000000000000000000000000000000006", "WETH", 84604.2907821623, 205067804.61532235, 72467.64686045826, 175650444.084165, 205067804.61532235, 169000, 409630039.5593688, 143000, 346610033.473312, 29417360.531157345, 204562234.94404644, 0.017314909065424603, 0.023787532652502847, 0.017314909065424603, null, null, 0.8565481276481207, 0.8, true, true, "2026-09-10T12:56:07+00:00"],
      [8453, "aave-v3", "0x4e65fe4dba92790696d040ac24aa414708f5c0ab", "aBasUSDC", "Aave Base USDC", "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 183848969.70858726, 183848969.70858726, 163043543.2932307, 163043543.2932307, 183848969.70858726, 230000000, 230000000, 207000000, 207000000, 20805426.415356547, 46151030.29141274, 0.03695634129183326, 0.046307457901129064, 0.03695634129183326, null, null, 0.8868341419136887, 0.75, true, true, "2026-09-10T12:57:05+00:00"],
      [8453, "morpho-v2", "0x050ce30b927da55177a4914ec73480238bad56f0", "gtusdcp", "Gauntlet USDC Prime", "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 167305892.845641, 167305892.845641, 0, 0, 167305892.845641, 1256529464.228205, 1256529464.228205, null, null, 167299392.850254, 1089223571.382564, 0.041692103810000436, null, 0.041692103810000436, 0, 0, null, null, false, true, "2026-09-10T12:57:19+00:00"],
      [8453, "morpho-v1", "0xbeef010f9cb27031ad51e3333f9af9c6b1228183", "steakUSDC", "Steakhouse USDC", "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 132850517.415978, 132850517.415978, 0, 0, 132850517.415978, 1001500000000, 1001500000000, null, null, 132850517.415978, 1001367149482.584, 0.04181012899569382, null, 0.03135759674677037, 0.25, null, 0, null, false, true, "2026-09-10T12:54:59+00:00"],
      [8453, "aave-v3", "0xcf3d55c10db69f28fd1a75bd73f3d8a2d9c595ad", "aBascbETH", "Aave Base cbETH", "0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22", "cbETH", 45657.35633600962, 126045542.26323786, 197.41714380411318, 545006.389763824, 126045542.26323786, 75000, 207051315.02077356, 1010, 2788291.0422797506, 125500535.87347405, 81005772.7575357, 2.4720232434761044e-06, 0.0006726042009256192, 2.4720232434761044e-06, null, null, 0.004323884684677017, 0.75, false, true, "2026-09-10T12:52:31+00:00"]
    ],
    "rows": 10
  }
]

Note: result collections are limited to 10 items.

This example returns the top 10 lending pools/vaults on Base (chain ID 8453): Morpho v1/v2 USDC vaults and Aave v3 pools, sorted by the default backend ordering, with full supply/borrow/APY/cap metrics for each.

x402 Payment Option

This endpoint supports pay-per-use access via the x402 payment protocol (v2), paying $0.05 USDC per request using blockchain micropayments. No API key required.

Quick Start (TypeScript)

npm install @x402/fetch @x402/evm viem
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { wrapFetchWithPayment } from "@x402/fetch";
import { privateKeyToAccount } from "viem/accounts";

const signer = privateKeyToAccount(process.env.EVM_PRIVATE_KEY as `0x${string}`);
const client = new x402Client();
client.register("eip155:*", new ExactEvmScheme(signer));

const fetchWithPayment = wrapFetchWithPayment(fetch, client);
const response = await fetchWithPayment(
  "https://x402.cambrian.org/evm/lending/overview"
);
const data = await response.json();

Quick Start (Python)

pip install "x402[httpx]"
import asyncio, os
from eth_account import Account
from x402 import x402Client
from x402.http.clients import x402HttpxClient
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact.register import register_exact_evm_client

async def main():
    client = x402Client()
    account = Account.from_key(os.getenv("EVM_PRIVATE_KEY"))
    register_exact_evm_client(client, EthAccountSigner(account))

    async with x402HttpxClient(client) as http:
        response = await http.get("https://x402.cambrian.org/evm/lending/overview")
        print(response.json())

asyncio.run(main())

Payment Flow

  1. Send a normal request to the endpoint (no API key needed)
  2. Server returns 402 Payment Required with payment details
  3. The x402 SDK automatically signs a payment authorization with your wallet
  4. The SDK resubmits the request with the signed payment
  5. Server verifies payment and returns the API response

The x402 SDK handles steps 2 through 5 automatically.

Network: Base (chain ID 8453) | Currency: USDC | Price: $0.05 per request