Cambrian Lending Fluid lend ftokens endpoint API

By Cambrian Network evm

GET /evm/lending/fluid/lend

Lending Fluid Lend Ftokens

Overview

Returns the list of Fluid protocol lending fTokens (vaults) with supply, TVL, APY, caps, and utilization metrics. Results can be filtered by fToken address, underlying token, chain, minimum TVL, and borrowable status.

Business Value

  • Yield Discovery: Shows current supply APY and net supply APY across Fluid lending markets, making it easier to compare risk-adjusted returns.
  • Liquidity & Risk Monitoring: Reports TVL, supply caps, and utilization rate so integrators can check market depth and capacity before routing capital.
  • Protocol Comparability: Standardized fields (chainId, protocolId, underlyingSymbol) make it easy to aggregate data alongside other lending protocols supported by the API.
  • Multi-chain Coverage: Filter by chain_id (Ethereum, Base, Arbitrum) to build cross-chain lending strategies.
  • Automation-Ready: Sorting (order_asc/order_desc) and pagination (limit/offset) let you build dashboards and alerting pipelines on top of live Fluid lending data.

Endpoint Details

URL:

https://api.cambrian.org/evm/lending/fluid/lend

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

Query Parameters

Parameter Type Required Default Description
address string No - Fluid lending ftoken address
underlying_address string No - Underlying token address. See tokens for valid addresses.
chain_id integer No 8453 EVM chain ID.
min_tvl_usd integer No - Minimum TVL Usd of the lending vault
borrowable boolean No - If true, returns only lending vaults with borrowing enabled
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. Leave empty items to combine with descending order
order_desc array No - List of column names to order by in descending order divided by comma. Leave empty items to combine with ascending order

Response Field Descriptions

Response Field Type Description
chainId UInt16 EVM chain ID the fToken is deployed on
protocolId String Protocol identifier (e.g. fluid-lend)
address String fToken contract address
symbol Nullable(String) fToken symbol
name Nullable(String) fToken name
underlyingAddress Nullable(FixedString(42)) Underlying token contract address
underlyingSymbol String Underlying token symbol
supply Float64 Total supply in underlying token units
supplyUsd Float64 Total supply valued in USD
borrow Nullable(Float64) Total borrowed amount in underlying token units
borrowUsd Nullable(Float64) Total borrowed amount valued in USD
tvlUsd Float64 Total value locked in USD
availableLiquidityUsd Nullable(Float64) Available liquidity in USD
supplyCap Nullable(Float64) Supply cap in underlying token units
supplyCapUsd Nullable(Float64) Supply cap valued in USD
borrowCap Nullable(Float64) Borrow cap in underlying token units
borrowCapUsd Nullable(Float64) Borrow cap valued in USD
remainingCapacityUsd Nullable(Float64) Remaining supply/borrow capacity in USD
supplyApy Nullable(Float64) Supply APY
borrowApy Nullable(Float64) Borrow APY
netSupplyApy Nullable(Float64) Net supply APY after fees
performanceFee Nullable(Float64) Performance fee rate
managementFee Nullable(Float64) Management fee rate
utilizationRate Nullable(Float64) Utilization rate of the vault
ltv Nullable(Float64) Loan-to-value ratio
borrowable Bool Whether borrowing is enabled for this vault
depositEnabled Bool Whether deposits are currently enabled
updatedAt DateTime('UTC') Timestamp of the last data update

Examples

1. List Fluid lend ftokens on Base

Fetches Fluid lending fTokens using the default chain (Base) with results limited to 10 rows.

curl -X GET "https://api.cambrian.org/evm/lending/fluid/lend?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": "String"
      },
      {
        "name": "symbol",
        "type": "Nullable(String)"
      },
      {
        "name": "name",
        "type": "Nullable(String)"
      },
      {
        "name": "underlyingAddress",
        "type": "Nullable(FixedString(42))"
      },
      {
        "name": "underlyingSymbol",
        "type": "String"
      },
      {
        "name": "supply",
        "type": "Float64"
      },
      {
        "name": "supplyUsd",
        "type": "Float64"
      },
      {
        "name": "borrow",
        "type": "Nullable(Float64)"
      },
      {
        "name": "borrowUsd",
        "type": "Nullable(Float64)"
      },
      {
        "name": "tvlUsd",
        "type": "Float64"
      },
      {
        "name": "availableLiquidityUsd",
        "type": "Nullable(Float64)"
      },
      {
        "name": "supplyCap",
        "type": "Nullable(Float64)"
      },
      {
        "name": "supplyCapUsd",
        "type": "Nullable(Float64)"
      },
      {
        "name": "borrowCap",
        "type": "Nullable(Float64)"
      },
      {
        "name": "borrowCapUsd",
        "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,
        "fluid-lend",
        "0xf42f5795d9ac7e9d757db633d693cd548cfd9169",
        "fUSDC",
        "Fluid USD Coin",
        "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
        "USDC",
        9643067.68371015,
        9643067.68371015,
        null,
        null,
        9643067.68371015,
        null,
        null,
        null,
        null,
        null,
        null,
        0.06400295164364347,
        null,
        0.06400295164364347,
        null,
        null,
        null,
        null,
        false,
        true,
        "2026-10-07T13:50:01+00:00"
      ],
      [
        8453,
        "fluid-lend",
        "0x1943fa26360f038230442525cf1b9125b5dcb401",
        "fEURC",
        "Fluid EURC",
        "0x60a3e35cc302bfa44cb288bc5a4f316fdb1adb42",
        "EURC",
        1129164.9133324483,
        1263092.382910279,
        null,
        null,
        1263092.382910279,
        null,
        null,
        null,
        null,
        null,
        null,
        0.0269250374242197,
        null,
        0.0269250374242197,
        null,
        null,
        null,
        null,
        false,
        true,
        "2026-10-07T13:11:25+00:00"
      ],
      [
        8453,
        "fluid-lend",
        "0x8ddbffa3cfda2355a23d6b11105ac624bdbe3631",
        "fGHO",
        "Fluid Gho Token",
        "0x6bb7a212910682dcfdbd5bcbb3e28fb4e8da10ee",
        "GHO",
        447803.2318686857,
        447383.9032497672,
        null,
        null,
        447383.9032497672,
        null,
        null,
        null,
        null,
        null,
        null,
        0.038664391971331945,
        null,
        0.038664391971331945,
        null,
        null,
        null,
        null,
        false,
        true,
        "2026-10-06T23:21:47+00:00"
      ],
      [
        8453,
        "fluid-lend",
        "0x896e39f0e9af61eca9dd2938e14543506ef2c2b5",
        "fwstETH",
        "Fluid Wrapped liquid staked Ether 2.0",
        "0xc1cba3fcea344f92d9239c08c0568f6f2f0ee452",
        "wstETH",
        54.926916449865246,
        175803.01662668478,
        null,
        null,
        175803.01662668478,
        null,
        null,
        null,
        null,
        null,
        null,
        0.0008068335455547938,
        null,
        0.0008068335455547938,
        null,
        null,
        null,
        null,
        false,
        true,
        "2026-10-07T13:47:09+00:00"
      ],
      [
        8453,
        "fluid-lend",
        "0xf62e339f21d8018940f188f6987bcdf02a849619",
        "fsUSDS",
        "Fluid Savings USDS",
        "0x5875eee11cf8398102fdad704c9e96607675467a",
        "sUSDS",
        3561.9663123633977,
        3906.76921692404,
        null,
        null,
        3906.76921692404,
        null,
        null,
        null,
        null,
        null,
        null,
        0,
        null,
        0,
        null,
        null,
        null,
        null,
        false,
        true,
        "2026-10-05T01:42:43+00:00"
      ]
    ],
    "rows": 5
  }
]

Result collections are limited to 10 items. This response returned 5 Fluid lend fTokens on Base, including fUSDC, fEURC, fGHO, fwstETH, and fsUSDS, each with current TVL, supply, and APY figures.

x402 Payment Option

This endpoint supports pay-per-use access via the x402 payment protocol (v2): pay $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/fluid/lend"
);
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/fluid/lend")
        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