Cambrian V3 - Pool Info API

By Cambrian Network base

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

Uniswap V3 Pool Info

Overview

Returns current pool TVL (Total Value Locked), Swap Volume, Fees APR (Annual Percentage Rate), Price volatility and mean adjusted volatility (percentage), Tick Pressure Per 1M$ Volume, Number of Swaps and Unique users for recent time range (5 minutes, 1 hour, 1 day, 1 week, 1 month and 1 year). This endpoint provides a single-snapshot view of a specific Uniswap V3 pool's real-time health and trading activity.

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.
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 the pool's first token
token0Symbol String Symbol of the pool's first token
token0Decimals UInt8 Decimal precision of the first token
token1Address String Contract address of the pool's second token
token1Symbol String Symbol of the pool's second token
token1Decimals UInt8 Decimal precision of the second token
feeTier UInt32 Pool fee tier in hundredths of a basis point (e.g., 500 = 0.05%)
tickSpacing Int32 Minimum tick spacing configured for the pool
currentLiquidity Nullable(Int256) Current in-range liquidity of the pool
currentSqrtPriceX96 Nullable(UInt256) Current pool price expressed as sqrt(price) * 2^96
currentTick Nullable(Int32) Current active tick of the pool
currentPoolPrice Nullable(Float64) Current pool price of token1 in terms of token0
poolTvlUsd Nullable(Float64) Current Total Value Locked in the pool, denominated 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)) Annualized fee yield, keyed by time range
priceVolatilityPct Map(String,Float64) Price volatility percentage, keyed by time range
priceVolatilityAdjustedPct Map(String,Float64) Mean-adjusted price volatility percentage, keyed by time range
tickPressurePer1MUsd Map(String,Nullable(Float64)) Tick movement pressure per $1M of volume, keyed by time range
swapCount Map(String,UInt64) Number of swaps, keyed by time range
uniqueUserCount Map(String,UInt64) Number of unique users who swapped, keyed by time range

Examples

1. Get Current Pool Stats

Fetch the latest TVL, price, and fee APR snapshot for a specific Uniswap V3 pool on Base.

curl -X GET "https://api.cambrian.org/evm/uniswap/v3/pool?chain_id=8453&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": "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": "feeApr", "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": [
      [
        "2023-09-06T19:56:01+00:00",
        "0x4200000000000000000000000000000000000006",
        "WETH",
        18,
        "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
        "USDC",
        6,
        500,
        10,
        "991726704338392184",
        "3428744645824812288411310",
        -200968,
        1872.8850259025005,
        10002170.758111214,
        {
          "1 day": 8637888.126135757,
          "1 hour": 164187.9928407463,
          "1 month": 394763457.2762599,
          "1 week": 69866358.45587051,
          "1 year": 13219076749.482317,
          "5 minute": 11786.534257243828
        },
        {
          "1 day": 0.15760724558130437,
          "1 hour": 0.071898733388378,
          "1 month": 0.23680666936592437,
          "1 week": 0.18161310817249648,
          "1 year": 0.6608103915223786,
          "5 minute": 0.06193657912292236
        },
        {
          "1 day": 0.008116542821101125,
          "1 hour": 0.0008060294385758055,
          "1 month": 0.06720830697285504,
          "1 week": 0.02587604698072535,
          "1 year": 0.5287534195200911,
          "5 minute": 0.0001674742828701315
        },
        {
          "1 day": 0.00007114041957131817,
          "1 hour": 0.000040313092635245285,
          "1 month": 0.00009286426995078103,
          "1 week": 0.00008599352304466857,
          "1 year": 0.00012806056995650882,
          "5 minute": 0.000026263223771013654
        },
        {
          "1 day": 46.28446145190519,
          "1 hour": 45.67934518375289,
          "1 month": 42.67517595533307,
          "1 week": 44.334642143349505,
          "1 year": 30.7130450707081,
          "5 minute": 33.93703282660601
        },
        {
          "1 day": 13016,
          "1 hour": 390,
          "1 month": 523779,
          "1 week": 90544,
          "1 year": 17048080,
          "5 minute": 33
        },
        {
          "1 day": 127,
          "1 hour": 26,
          "5 minute": 10
        }
      ]
    ],
    "rows": 1
  }
]

Note: Result collections in this response are capped to the first 10 items; this pool query returns a single row so no truncation occurred here.

This example queries the WETH/USDC 0.05% fee tier pool on Base. The response shows a pool TVL of ~$10M, a current price of ~1872.9 USDC per WETH, and fee APRs ranging from ~7.2% (1 hour) up to ~66% (1 year); recent trading activity has been elevated.

2. Assess Recent Trading Activity and Risk

Use the same pool snapshot to evaluate short-term trading intensity and price risk before sizing a trade.

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

Response: (see full response above)

From the same result set, the swapCount and uniqueUserCount maps show 33 swaps by 10 unique users in the last 5 minutes, and 13,016 swaps by 127 unique users over the last day. The priceVolatilityPct for "1 hour" is ~7.2%, while tickPressurePer1MUsd for "1 hour" is ~0.0000403, which is a relatively low price impact per $1M traded in that window.

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


Related Endpoints

  • /evm/uniswap/v3/pools - Returns a list of all liquidity pools, including token pairs, fee tiers, and creation timestamps.
  • /evm/price-current - Returns current price of a token calculated based on uniswap v3 and clones liquidity pools.
  • /evm/price-hour - Returns historical hourly price data for a specified EVM token.
  • /evm/tokens - Returns a list of all erc20 tokens for the specified EVM chain, including their contract addresses, symbols, names, and decimal places.
  • /evm/dexes - List of DEXes on EVM compatible chains