Cambrian V3 - Pool Info API

By Cambrian Network base

GET /api/v1/evm/uniswap/v3/pool

V3 - Pool Info

Overview

This endpoint returns detailed real-time metrics for a specific Uniswap V3 pool on a supported EVM chain. It provides current pool state (liquidity, price, tick) along with TVL, swap volume, fee APR, price volatility, tick pressure, swap count, and unique user count across multiple recent time ranges (5 minutes, 1 hour, 1 day, 1 week, 1 month, and 1 year).

Business Value

  • Real-time Pool Analytics: Access live pool data including current price, liquidity, and tick information for trading decisions
  • Historical Performance Metrics: Track swap volume, fee APR, and utilization across multiple timeframes (5min to 1 year)
  • Risk Assessment: Monitor pool TVL and tick utilization to evaluate investment opportunities and market conditions
  • Trading Optimization: Use current tick and price data to optimize position management and entry/exit strategies
  • Portfolio Management: Track pool performance metrics to make informed liquidity provision decisions

Endpoint Details

URL:

https://api.cambrian.org/evm/uniswap/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. Enum: 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 places of token0
token1Address String Contract address of token1
token1Symbol String Symbol of token1
token1Decimals UInt8 Decimal places of token1
feeTier UInt32 Pool fee tier (in hundredths of a bip)
tickSpacing Int32 Minimum tick spacing for the pool
currentLiquidity Int256 Current in-range liquidity of the pool
currentSqrtPriceX96 UInt256 Current pool price as a Q64.96 sqrt price
currentTick Int32 Current active 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 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. Get pool metrics for a Uniswap V3 pool on Base

Fetches current TVL, volume, fee APR, and volatility metrics for a WETH/USDC Uniswap V3 pool on Base (chain_id defaults to 8453).

curl -X GET "https://api.cambrian.org/evm/uniswap/v3/pool?pool_address=0xd0b53D9277642d899DF5C87A3966A349A798F224" \
  -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": [
      [
        "2023-09-06T19:56:01+00:00",
        "0x4200000000000000000000000000000000000006",
        "WETH",
        18,
        "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
        "USDC",
        6,
        500,
        10,
        "1239575912612738784",
        "4089250216835618465139660",
        -197445,
        2663.9630901027685,
        9387793.766891925,
        {
          "1 day": 22834854.2986855,
          "1 hour": 2223624.338482656,
          "1 month": 590799567.910464,
          "1 week": 156846481.67378992,
          "1 year": 12921871885.717428,
          "5 minute": 53281.40559766767
        },
        {
          "1 day": 0.4439127033454014,
          "1 hour": 1,
          "1 month": 0.37759642952152134,
          "1 week": 0.43439477099513124,
          "1 year": 0.6882272984782214,
          "5 minute": 0.2983097783943524
        },
        {
          "1 day": 0.013038775827300557,
          "1 hour": 0.004835855369589319,
          "1 month": 0.082342316441169,
          "1 week": 0.038105871394268194,
          "1 year": 0.5321227231387855,
          "5 minute": 0.0003978575599014768
        },
        {
          "1 day": 8.058646367546409e-05,
          "1 hour": 0.00011084939101734908,
          "1 month": 9.686300687239284e-05,
          "1 week": 8.984436473842898e-05,
          "1 year": 0.0001449162030088744,
          "5 minute": 5.683456235169311e-05
        },
        {
          "1 day": 35.634122703679395,
          "1 hour": 31.749967284570925,
          "1 month": 40.074335334632636,
          "1 week": 40.07549250019538,
          "1 year": 30.86363210587253,
          "5 minute": 33.78289254589021
        },
        {
          "1 day": 26174,
          "1 hour": 1903,
          "1 month": 722653,
          "1 week": 179880,
          "1 year": 13483098,
          "5 minute": 49
        },
        {
          "1 day": 197,
          "1 hour": 85,
          "5 minute": 13
        }
      ]
    ],
    "rows": 1
  }
]

Result collections are limited to 10 items. This example returns a single row describing the WETH/USDC 0.05% pool on Base: current TVL is ~$9.39M, 24h swap volume is ~$22.8M, 24h fee APR is ~44.4%, and there were 197 swaps by 197 unique users in the last day.

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/uniswap/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/uniswap/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