Cambrian V3 - List Pools API
GET /api/v1/evm/uniswap/v3/pools
Uniswap V3 Pools
Overview
Returns a list of all Uniswap V3 liquidity pools on a supported EVM chain, including token pair addresses/symbols, fee tiers, tick spacing, and pool creation timestamps. Results can be filtered by token address and paginated with limit/offset.
Business Value
- Pool Discovery: Find available liquidity pools for specific token pairs on Uniswap V3
- Market Analysis: Analyze liquidity distribution and fee structures across different pools
- DeFi Integration: Access pool addresses and metadata for smart contract interactions
- Token Research: Discover new token pairs and their associated liquidity pools
- Historical Tracking: Monitor pool creation patterns and market evolution over time
Endpoint Details
URL:
https://api.cambrian.org/evm/uniswap/v3/pools
Method: GET
Authentication: Required via X-API-Key header
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| chain_id | integer | No | 8453 | EVM chain ID. |
| token_address | string | No | - | Pool token address. See tokens for valid addresses. |
| limit | integer | No | 100 | Limit the number of results. |
| offset | integer | No | 0 | Offset the results, allows you to skip a number of rows before starting to return rows. |
| order_asc | array | No | - | List of column names to order by in ascending order divided by comma. Leave empty items to combine with descending order. |
| order_desc | array | No | - | List of column names to order by in descending order divided by comma. Leave empty items to combine with ascending order. |
Response Field Descriptions
| Response Field | Type | Description |
|---|---|---|
| chainId | UInt16 | EVM chain ID the pool is deployed on. |
| dexAddress | FixedString(42) | Contract address of the DEX factory/router associated with the pool. |
| dexName | String | Name of the DEX (e.g., UniswapV3). |
| poolAddress | FixedString(42) | Contract address of the liquidity pool. |
| token0Address | String | Contract address of the pool's token0. |
| token0Symbol | String | Symbol of token0. |
| token0Decimals | UInt8 | Decimal precision of token0. |
| token1Address | String | Contract address of the pool's token1. |
| token1Symbol | String | Symbol of token1. |
| token1Decimals | UInt8 | Decimal precision of token1. |
| createdAt | DateTime('UTC') | Timestamp when the pool was created. |
| fee | UInt32 | Pool fee tier (in hundredths of a basis point, e.g., 3000 = 0.3%). |
| tickSpacing | Int32 | Minimum tick spacing enforced by the pool's fee tier. |
Examples
1. List Recent Pools
Retrieve the most recently created Uniswap V3 pools on Base (chain ID 8453) using default parameters.
curl -X GET "https://api.cambrian.org/evm/uniswap/v3/pools" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"
Response:
[
{
"columns": [
{ "name": "chainId", "type": "UInt16" },
{ "name": "dexAddress", "type": "FixedString(42)" },
{ "name": "dexName", "type": "String" },
{ "name": "poolAddress", "type": "FixedString(42)" },
{ "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": "createdAt", "type": "DateTime('UTC')" },
{ "name": "fee", "type": "UInt32" },
{ "name": "tickSpacing", "type": "Int32" }
],
"data": [
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0xf08c67fbde69c85bc692cb69f84be248024ac0a1", "0x3e963bb1911b36d119a6a97f845f298a123e2db0", "CRW", 18, "0x4200000000000000000000000000000000000006", "WETH", 18, "2026-08-04T21:53:11+00:00", 3000, 60],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0xa0cd362130319f4c088fb5d6c7d509355e8f0729", "0x4200000000000000000000000000000000000006", "WETH", 18, "0xdfc48bcdd2f3f66679762a768742b713f726026d", "DEX", 18, "2026-08-04T19:07:07+00:00", 100, 1],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0x110eb5a59450d9930192c85940c4cd7daabb6842", "0x205bf9f807f2a2a490314dacf19acd40a7b9efe1", "Pools.Trade", 18, "0x4200000000000000000000000000000000000006", "WETH", 18, "2026-08-04T19:02:17+00:00", 10000, 200],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0xeff83dc39600f257a35a6c287769de1db043e91f", "0x3de062d50dcee4521dd9287ebc85194748bb309b", "TIBIR", 18, "0x4200000000000000000000000000000000000006", "WETH", 18, "2026-08-04T18:22:51+00:00", 3000, 60],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0x70985f6a4a763f8fe5f83a46e237ea2ff119912a", "0x29c96b861c717828b6c5c54c063608ebe4fcd2e3", "ErickTrumpp", 18, "0x4200000000000000000000000000000000000006", "WETH", 18, "2026-08-04T18:04:45+00:00", 10000, 200],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0xdc6e08d4c0637ee1d143e0a98927117be57f6ca0", "0x4200000000000000000000000000000000000006", "WETH", 18, "0xb243d7173b73d8e6c670616e1111c49f2796d89d", "test", 18, "2026-08-04T17:58:39+00:00", 10000, 200],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0x079de00ce92e175e29813b9b986f4dc2fa072d68", "0x4200000000000000000000000000000000000006", "WETH", 18, "0xd728f035a851b34947d7a2d40ea1372ed93be5cd", "AnsemAi", 18, "2026-08-04T16:43:47+00:00", 10000, 200],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0x49994a7c5ef5ee8d40562a0fc04df8aa331fef63", "0x4200000000000000000000000000000000000006", "WETH", 18, "0xe66700df197f16285e627f01b2947aa8b12d6b86", "Base O²", 18, "2026-08-04T16:37:51+00:00", 10000, 200],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0x42fc9f6a07d1f7af729678353e804862a342c2d0", "0x072d20c83a22fa24c56b245dec1f3f03aefa5adf", "Ansem", 18, "0x4200000000000000000000000000000000000006", "WETH", 18, "2026-08-04T16:37:49+00:00", 10000, 200],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0xf07dc82e229299748af35118d3a3427faa18ecb1", "0x50985fd74efbab073eb20b5ff2a7d55c9d5e3cca", "HYPERNET", 18, "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 6, "2026-08-04T16:35:39+00:00", 3000, 60]
],
"rows": 100
}
]
The API returned 100 pools (the requested limit default), ordered by most recent createdAt first. Note: the response shown above is truncated to the first 10 rows for documentation purposes; the actual rows field reflects the true count returned by the API.
2. Filter Pools by Token Address
Retrieve all Uniswap V3 pools that include a specific token (cbBTC) as one of the pair assets, limited to 5 results.
curl -X GET "https://api.cambrian.org/evm/uniswap/v3/pools?token_address=0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf&limit=5" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"
Response:
[
{
"columns": [
{ "name": "chainId", "type": "UInt16" },
{ "name": "dexAddress", "type": "FixedString(42)" },
{ "name": "dexName", "type": "String" },
{ "name": "poolAddress", "type": "FixedString(42)" },
{ "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": "createdAt", "type": "DateTime('UTC')" },
{ "name": "fee", "type": "UInt32" },
{ "name": "tickSpacing", "type": "Int32" }
],
"data": [
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0xb5fd575f35a72bcce1d5aea16f5562129c36c92a", "0x30457a1ab7cd796d6e55e4e5ba12e09f2283e856", "DUB", 18, "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf", "cbBTC", 8, "2026-08-03T06:14:19+00:00", 3000, 60],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0x89261e8b4acb7884c784bd412d7fd69b8e314562", "0x63706e401c06ac8513145b7687a14804d17f814b", "AAVE", 18, "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf", "cbBTC", 8, "2026-07-31T18:28:29+00:00", 100, 1],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0xba4dff8eaa91ec7fc4deef98e593f035895aa107", "0x940181a94a35a4569e4529a3cdfb74e38fd98631", "AERO", 18, "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf", "cbBTC", 8, "2026-07-10T17:36:17+00:00", 500, 10],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0xf7b681d2f89bfff22b79809e28108733f5d62cc8", "0x940181a94a35a4569e4529a3cdfb74e38fd98631", "AERO", 18, "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf", "cbBTC", 8, "2026-07-10T17:20:19+00:00", 10000, 200],
[8453, "0x33128a8fc17869897dce68ed026d694621f6fdfd", "UniswapV3", "0x7a635f8c66b93eb7f3e9ec45abdcc6a8fc6f6eca", "0x839baa00734f319c11f2869bc155c6b5fe35a283", "BTC-T", 8, "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf", "cbBTC", 8, "2026-07-07T23:01:17+00:00", 100, 1]
],
"rows": 5
}
]
All 5 returned pools pair a different token0 against cbBTC as token1, confirming the token_address filter matches pools where the token appears in either position.
x402 Payment Option
This endpoint supports pay-per-use access via the x402 payment protocol (v2), paying $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/pools"
);
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/pools")
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/pool- Returns current pool TVL, swap volume, fees APR, price volatility, and other metrics for a specific pool./evm/tokens- Returns a list of all ERC-20 tokens for the specified EVM chain, including contract addresses, symbols, names, and decimal places./evm/dexes- List of DEXes on EVM compatible chains./evm/price-current- Returns current price of a token calculated based on Uniswap V3 and clones liquidity pools./evm/aero/v3/pools- Returns a list of all Aerodrome V3 liquidity pools, including token pairs, fee tiers, and creation timestamps.