Cambrian V3 - Pool Info API

By Cambrian Network base

GET /api/v1/evm/aero/v3/pool

Aerodrome V3 Pool Info

Overview

Returns current pool TVL (Total Value Locked), swap volume, price volatility and mean adjusted volatility (percentage), tick pressure per 1M$ volume, number of swaps, and unique users for a specific Aerodrome V3 (concentrated liquidity) pool on Base. Metrics are broken down across multiple recent time ranges (5 minutes, 1 hour, 1 day, 1 week, 1 month, and 1 year).

Business Value

  • Real-time Pool Analytics: Get current pool health metrics including TVL and liquidity for informed trading decisions
  • Volume Analysis: Track swap volume patterns across different time periods to identify trading activity trends
  • Fee Income Assessment: Monitor APR rates to evaluate fee generation potential and yield opportunities
  • Market Activity Insights: Analyze swap counts and unique user metrics to understand pool adoption and usage
  • Risk Management: Assess tick utilization to understand price range efficiency and concentration risk

Endpoint Details

URL:

https://api.cambrian.org/evm/aero/v3/pool

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

Query Parameters

Parameter Type Required Default Description
chain_id integer No 8453 EVM chain ID.
pool_address string Yes - Pool address with 0x prefix

Response Field Descriptions

Response Field Type Description
createdAt DateTime('UTC') Timestamp when the pool was created
token0Address String Contract address of token0 in the pool
token0Symbol String Symbol of token0
token0Decimals UInt8 Decimal precision of token0
token1Address String Contract address of token1 in the pool
token1Symbol String Symbol of token1
token1Decimals UInt8 Decimal precision of token1
tickSpacing Int32 Minimum tick spacing configured for the pool
currentLiquidity Nullable(Int256) Current in-range liquidity of the pool at the active tick
currentSqrtPriceX96 Nullable(UInt256) Current pool price expressed as sqrt(price) * 2^96 (Uniswap V3-style encoding)
currentTick Nullable(Int32) Current active tick of the pool
currentPoolPrice Nullable(Float64) Current human-readable price of token1 denominated in token0 (or vice versa, depending on pool convention)
poolTvlUsd Nullable(Float64) Total value locked in the pool, denominated in USD
swapVolumeUsd Map(String,Nullable(Float64)) Total swap volume in USD, keyed by time range ("5 minute", "1 hour", "1 day", "1 week", "1 month", "1 year")
priceVolatilityPct Map(String,Float64) Price volatility (percentage) over each time range
priceVolatilityAdjustedPct Map(String,Float64) Mean-adjusted price volatility (percentage) over each time range
tickPressurePer1MUsd Map(String,Nullable(Float64)) Tick movement pressure per $1M of swap volume, keyed by time range
swapCount Map(String,UInt64) Number of swaps executed, keyed by time range
uniqueUserCount Map(String,UInt64) Number of unique users who swapped, keyed by time range

Examples

1. Get V3 Pool Info for WETH/cbBTC

Fetch current pool metrics for the WETH/cbBTC Aerodrome V3 pool on Base.

curl -X GET "https://api.cambrian.org/evm/aero/v3/pool?chain_id=8453&pool_address=0xffa192f04b1e5f9f5124fb40a96407564492ed20" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response:

[
  {
    "columns": [
      { "name": "createdAt", "type": "DateTime('UTC')" },
      { "name": "token0Address", "type": "String" },
      { "name": "token0Symbol", "type": "String" },
      { "name": "token0Decimals", "type": "UInt8" },
      { "name": "token1Address", "type": "String" },
      { "name": "token1Symbol", "type": "String" },
      { "name": "token1Decimals", "type": "UInt8" },
      { "name": "tickSpacing", "type": "Int32" },
      { "name": "currentLiquidity", "type": "Nullable(Int256)" },
      { "name": "currentSqrtPriceX96", "type": "Nullable(UInt256)" },
      { "name": "currentTick", "type": "Nullable(Int32)" },
      { "name": "currentPoolPrice", "type": "Nullable(Float64)" },
      { "name": "poolTvlUsd", "type": "Nullable(Float64)" },
      { "name": "swapVolumeUsd", "type": "Map(String,Nullable(Float64))" },
      { "name": "priceVolatilityPct", "type": "Map(String,Float64)" },
      { "name": "priceVolatilityAdjustedPct", "type": "Map(String,Float64)" },
      { "name": "tickPressurePer1MUsd", "type": "Map(String,Nullable(Float64))" },
      { "name": "swapCount", "type": "Map(String,UInt64)" },
      { "name": "uniqueUserCount", "type": "Map(String,UInt64)" }
    ],
    "data": [
      [
        "2025-02-13T22:12:07+00:00",
        "0x4200000000000000000000000000000000000006",
        "WETH",
        18,
        "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",
        "cbBTC",
        8,
        10,
        "56389843308",
        "135531666605172087391945",
        -265587,
        0.02926323871608235,
        34.851306584948645,
        {
          "1 day": 0.0750185699423578,
          "1 hour": 0,
          "1 month": 783.647302016295,
          "1 week": 378.18435935401294,
          "1 year": 4766.040834024103,
          "5 minute": 0
        },
        {
          "1 day": 0,
          "1 hour": 0,
          "1 month": 0.031000322701857774,
          "1 week": 0.01371590088020538,
          "1 year": 1,
          "5 minute": 0
        },
        {
          "1 day": 0,
          "1 hour": 0,
          "1 month": 0.0015618088088647807,
          "1 week": 0.0009954027098261833,
          "1 year": 1,
          "5 minute": 0
        },
        {
          "1 day": 0,
          "1 hour": 0,
          "1 month": 451223.3999787921,
          "1 week": 303026.8099816486,
          "1 year": 90068993.31106928,
          "5 minute": 0
        },
        {
          "1 day": 1,
          "1 hour": 0,
          "1 month": 392,
          "1 week": 186,
          "1 year": 1161,
          "5 minute": 0
        },
        {
          "1 day": 1,
          "1 hour": 0,
          "5 minute": 0
        }
      ]
    ],
    "rows": 1
  }
]

This pool has relatively low TVL (~$34.85) and shows zero swap activity in the 1-hour, 1-day, and 5-minute windows, but has processed swaps over longer windows (e.g., 392 swaps in the past month with $783.65 in volume).

2. Get V3 Pool Info for WETH/USDC

Fetch current pool metrics for the higher-volume WETH/USDC Aerodrome V3 pool on Base.

curl -X GET "https://api.cambrian.org/evm/aero/v3/pool?chain_id=8453&pool_address=0xb2cc224c1c9fee385f8ad6a55b4d94e92359dc59" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response:

[
  {
    "columns": [
      { "name": "createdAt", "type": "DateTime('UTC')" },
      { "name": "token0Address", "type": "String" },
      { "name": "token0Symbol", "type": "String" },
      { "name": "token0Decimals", "type": "UInt8" },
      { "name": "token1Address", "type": "String" },
      { "name": "token1Symbol", "type": "String" },
      { "name": "token1Decimals", "type": "UInt8" },
      { "name": "tickSpacing", "type": "Int32" },
      { "name": "currentLiquidity", "type": "Nullable(Int256)" },
      { "name": "currentSqrtPriceX96", "type": "Nullable(UInt256)" },
      { "name": "currentTick", "type": "Nullable(Int32)" },
      { "name": "currentPoolPrice", "type": "Nullable(Float64)" },
      { "name": "poolTvlUsd", "type": "Nullable(Float64)" },
      { "name": "swapVolumeUsd", "type": "Map(String,Nullable(Float64))" },
      { "name": "priceVolatilityPct", "type": "Map(String,Float64)" },
      { "name": "priceVolatilityAdjustedPct", "type": "Map(String,Float64)" },
      { "name": "tickPressurePer1MUsd", "type": "Map(String,Nullable(Float64))" },
      { "name": "swapCount", "type": "Map(String,UInt64)" },
      { "name": "uniqueUserCount", "type": "Map(String,UInt64)" }
    ],
    "data": [
      [
        "2024-05-01T18:45:31+00:00",
        "0x4200000000000000000000000000000000000006",
        "WETH",
        18,
        "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
        "USDC",
        6,
        100,
        "4882948427719440609",
        "3429336856146121144326862",
        -200965,
        1873.5320484968538,
        6401648.766035728,
        {
          "1 day": 44754468.83826165,
          "1 hour": 1120992.9963265602,
          "1 month": 1355451478.3275385,
          "1 week": 261042365.47260854,
          "1 year": 46294130909.72368,
          "5 minute": 23130.240714292144
        },
        {
          "1 day": 0.008755330134790818,
          "1 hour": 0.0012113898660744346,
          "1 month": 0.07192239934185146,
          "1 week": 0.02448668823680449,
          "1 year": 0.9723014890417713,
          "5 minute": 0.00006973043789367841
        },
        {
          "1 day": 0.00007000469320576046,
          "1 hour": 0.00006373599467932553,
          "1 month": 0.00009258266288696674,
          "1 week": 0.0000757055066943909,
          "1 year": 0.0002791508568309004,
          "5 minute": 0.000018652947436337457
        },
        {
          "1 day": 1.3931569655161569,
          "1 hour": 1.2667340515536416,
          "1 month": 2.1560343890774196,
          "1 week": 1.717920381192134,
          "1 year": 1.2289970430798092,
          "5 minute": 1.2970033632837656
        },
        {
          "1 day": 15641,
          "1 hour": 361,
          "1 month": 603488,
          "1 week": 104617,
          "1 year": 12131764,
          "5 minute": 11
        },
        {
          "1 day": 119,
          "1 hour": 33,
          "5 minute": 6
        }
      ]
    ],
    "rows": 1
  }
]

This is a significantly higher-activity pool with ~$6.4M TVL, $44.75M in 1-day swap volume, and 15,641 swaps in the past day alone, illustrating how the same endpoint scales across pools of very different liquidity and trading intensity.

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/aero/v3/pool"
);
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/aero/v3/pool")
        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–5 automatically.

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


Related Endpoints

  • /evm/aero/v2/pool - Get information for a specific Aerodrome V2 pool. Usd prices, valuations, and APRs are null when a required price is unavailable.
  • /evm/aero/v3/pools - Returns a list of all liquidity pools, including token pairs, fee tiers, and creation timestamps.
  • /evm/aero/v2/pool-volume - Shows recent pool activity and hourly distribution. Usd fields are null when a pool-token price is unavailable.
  • /evm/aero/v2/fee-metrics - Shows fee metrics and daily historical data for the previous seven completed UTC days. Usd fields are null when a pool-token price is unavailable.
  • /evm/aero/v2/provider-summary - Provides Aerodrome V2 liquidity-provider summary and portfolio metrics. Portfolio-wide Usd aggregates and weighted APRs are null if any represented position cannot be fully priced; per-pool and per-token values are nullable independently.