Cambrian V3 - Pool Info API

By Cambrian Network pancake

GET /api/v1/evm/pancake/v3/pool

V3 - Pool Info (PancakeSwap)

Overview

Returns a specific PancakeSwap V3 pool's current TVL (Total Value Locked), Swap Volume, Fees APR (Annual Percentage Rate), price volatility and mean adjusted volatility (percentage), Tick Pressure Per 1M$ Volume, and counts of swaps and unique users, broken down by recent time range (5 minutes, 1 hour, 1 day, 1 week, 1 month, and 1 year).

Business Value

  • Pool Performance Monitoring: Track key metrics like TVL, volume, and fees to assess pool health and profitability
  • Liquidity Analysis: Monitor price tick utilization to understand how efficiently liquidity is being used
  • User Activity Insights: Analyze swap counts and unique user metrics across different time periods for activity trends
  • APR Calculations: Access fees APR data for yield farming and liquidity provision decision making
  • Historical Context: Compare performance across multiple time ranges from 5 minutes to 1 year for trend analysis

Endpoint Details

URL:

https://api.cambrian.org/evm/pancake/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. Allowed values: 1, 8453, 42161, 4663.
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.
token0Symbol String Symbol of token0.
token0Decimals UInt8 Decimal precision of token0.
token1Address String Contract address of token1.
token1Symbol String Symbol of token1.
token1Decimals UInt8 Decimal precision of token1.
feeTier UInt32 Pool fee tier (in hundredths of a bip).
tickSpacing Int32 Minimum tick spacing allowed for the pool.
currentLiquidity Int256 Current in-range liquidity of the pool.
currentSqrtPriceX96 UInt256 Current pool price expressed as sqrt(price) * 2^96.
currentTick Int32 Current tick of the pool.
currentPoolPrice Float64 Current pool price (token1 per token0).
poolTvlUsd Nullable(Float64) Current pool Total Value Locked in USD.
swapVolumeUsd Map(String,Nullable(Float64)) Swap volume in USD keyed by time range (5 minute, 1 hour, 1 day, 1 week, 1 month, 1 year).
feeApr Map(String,Nullable(Float64)) Fee APR keyed by time range.
priceVolatilityPct Map(String,Nullable(Float64)) Price volatility percentage keyed by time range.
priceVolatilityAdjustedPct Map(String,Nullable(Float64)) Mean-adjusted price volatility percentage keyed by time range.
tickPressurePer1MUsd Map(String,Nullable(Float64)) Tick pressure per $1M of volume, keyed by time range.
swapCount Map(String,Nullable(UInt64)) Number of swaps keyed by time range.
uniqueUserCount Map(String,Nullable(UInt64)) Number of unique users keyed by time range.

Examples

1. Retrieve pool metrics for a PancakeSwap V3 pool

Fetches TVL, volume, fee APR, volatility, and activity metrics for a specific PancakeSwap V3 pool on Base.

curl -X GET "https://api.cambrian.org/evm/pancake/v3/pool?pool_address=0xC211e1f853A898Bd1302385CCdE55f33a8C4B3f3" \
  -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": "feeTier",
        "type": "UInt32"
      },
      {
        "name": "tickSpacing",
        "type": "Int32"
      },
      {
        "name": "currentLiquidity",
        "type": "Int256"
      },
      {
        "name": "currentSqrtPriceX96",
        "type": "UInt256"
      },
      {
        "name": "currentTick",
        "type": "Int32"
      },
      {
        "name": "currentPoolPrice",
        "type": "Float64"
      },
      {
        "name": "poolTvlUsd",
        "type": "Nullable(Float64)"
      },
      {
        "name": "swapVolumeUsd",
        "type": "Map(String,Nullable(Float64))"
      },
      {
        "name": "feeApr",
        "type": "Map(String,Nullable(Float64))"
      },
      {
        "name": "priceVolatilityPct",
        "type": "Map(String,Nullable(Float64))"
      },
      {
        "name": "priceVolatilityAdjustedPct",
        "type": "Map(String,Nullable(Float64))"
      },
      {
        "name": "tickPressurePer1MUsd",
        "type": "Map(String,Nullable(Float64))"
      },
      {
        "name": "swapCount",
        "type": "Map(String,Nullable(UInt64))"
      },
      {
        "name": "uniqueUserCount",
        "type": "Map(String,Nullable(UInt64))"
      }
    ],
    "data": [
      [
        "2024-09-13T06:45:47+00:00",
        "0x4200000000000000000000000000000000000006",
        "WETH",
        18,
        "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",
        "cbBTC",
        8,
        100,
        1,
        "72720875709050738",
        "141013017491590372601253",
        -264794,
        0.031678108688258565,
        5799179.476680115,
        {
          "1 day": 40229949.47122479,
          "1 hour": 2709107.484120774,
          "1 month": 1333971972.678244,
          "1 week": 338395611.707193,
          "1 year": 23033433953.247795,
          "5 minute": 150253.5894203172
        },
        {
          "1 day": 0.2532070548263706,
          "1 hour": 0.40922654069130193,
          "1 month": 0.2760332515403182,
          "1 week": 0.3034320955151337,
          "1 year": 0.3971843610957504,
          "5 minute": 0.2723602086015415
        },
        {
          "1 day": 0.008012922430936447,
          "1 hour": 0.0029557481430979946,
          "1 month": 0.05386892643577996,
          "1 week": 0.02406676000832841,
          "1 year": 0.30870367079202765,
          "5 minute": 0.00047591079311756914
        },
        {
          "1 day": 5.322341829432387e-05,
          "1 hour": 7.277721492556668e-05,
          "1 month": 6.565193630982243e-05,
          "1 week": 5.641459379852175e-05,
          "1 year": 9.977020353775134e-05,
          "5 minute": 5.73481488914506e-05
        },
        {
          "1 day": 174.47200635985058,
          "1 hour": 210.4013972649706,
          "1 month": 172.35369611131688,
          "1 week": 180.75589009980007,
          "1 year": 179.7248733472627,
          "5 minute": 173.04079124038745
        },
        {
          "1 day": 22666,
          "1 hour": 1649,
          "1 month": 673258,
          "1 week": 181992,
          "1 year": 9573745,
          "5 minute": 68
        },
        {
          "1 day": 130,
          "1 hour": 60,
          "5 minute": 10
        }
      ]
    ],
    "rows": 1
  }
]

Result collections are limited to 10 items. This response shows the WETH/cbBTC pool with a fee tier of 100 (0.01%), current TVL of ~$5.8M, and swap volume, fee APR, volatility, and user activity metrics broken out across all supported time ranges.

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/pancake/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/pancake/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 through 5 automatically.

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