Cambrian V3 - Pool Info API
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
- Send a normal request to the endpoint (no API key needed)
- Server returns
402 Payment Requiredwith payment details - The x402 SDK automatically signs a payment authorization with your wallet
- The SDK resubmits the request with the signed payment
- 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