Cambrian Pool Info (Multi) API
GET /api/v1/solana/raydium-clmm/pool-multi
Pool Info (Multi)
Get comprehensive overview metrics for multiple pools/pairs simultaneously within the same DEX. Returns pool details including price, volume, trades, and token information for specified pool addresses.
Business Value
- Multi-Pool Analysis: Query multiple Raydium CLMM pools in a single API call for efficient portfolio monitoring
- Real-Time Metrics: Access current price, volume, TVL, and trading activity across multiple pools simultaneously
- Cost-Effective Monitoring: Reduce API call overhead by fetching data for multiple pools at once
- Performance Analytics: Track 24-hour metrics including volume, fees, APR, and swap counts across pool positions
- Risk Management: Monitor price volatility and utilization rates across multiple liquidity positions
Endpoint Details
URL:
https://opabinia.cambrian.network/api/v1/solana/raydium-clmm/pool-multi
Method: GET
Authentication: Required via X-API-Key header
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| pool_addresses | string | Yes | - | Comma-separated pool addresses within the same DEX. Example: addr1,addr2,addr3 |
Response Field Descriptions
| Response Field | Type | Description |
|---|---|---|
| chainId | UInt16 | Blockchain network ID (900 for Solana) |
| dexAddress | String | Raydium CLMM program address |
| dexName | String | Name of the DEX (Raydium CLMM) |
| poolAddress | FixedString(44) | Unique address identifier for the pool |
| createdAt | DateTime('UTC') | Timestamp when the pool was created |
| token0Address | FixedString(44) | Address of the first token in the pair |
| token0Symbol | String | Symbol of the first token (e.g., SOL) |
| token0Decimals | UInt8 | Number of decimal places for token0 |
| token1Address | FixedString(44) | Address of the second token in the pair |
| token1Symbol | String | Symbol of the second token (e.g., USDC) |
| token1Decimals | UInt8 | Number of decimal places for token1 |
| feeTier | UInt32 | Pool fee tier (e.g., 400 = 0.04%) |
| tickSpacing | UInt16 | Minimum tick spacing for price movements |
| sqrtPriceX64 | UInt128 | Square root price scaled by 2^64 |
| tick | Int32 | Current tick index for price position |
| price | Nullable(Float64) | Current price of token0 in terms of token1 |
| lastSwapTime | DateTime('UTC') | Timestamp of the most recent swap |
| tokenVault0 | FixedString(44) | Vault address for token0 reserves |
| tokenVault1 | FixedString(44) | Vault address for token1 reserves |
| token0PriceUSD | Float64 | USD price of token0 |
| token1PriceUSD | Float64 | USD price of token1 |
| tvlToken0 | Nullable(Float64) | Total value locked in token0 |
| tvlToken1 | Nullable(Float64) | Total value locked in token1 |
| tvl | Nullable(Float64) | Total value locked in USD |
| volumeToken0 | Nullable(Float64) | 24h trading volume in token0 |
| volumeToken1 | Nullable(Float64) | 24h trading volume in token1 |
| volume24h | Nullable(Float64) | 24h trading volume in USD |
| fees24h | Nullable(Float64) | 24h fees collected in USD |
| apr24h | Nullable(Float64) | 24h annualized percentage return |
| priceVolatility | Nullable(Float64) | Price volatility measure |
| utilization24h | Nullable(Float64) | 24h capital utilization rate |
| swaps24h | UInt64 | Number of swaps in the last 24 hours |
| ticksUsed24h | UInt64 | Number of unique ticks used in 24h |
Examples
1. Single Pool Query
Query comprehensive metrics for a SOL-USDC pool on Raydium CLMM.
curl -X GET "https://opabinia.cambrian.network/api/v1/solana/raydium-clmm/pool-multi?pool_addresses=3ucNos4NbumPLZNWztqGHNFFgkHeRMBQAVemeeomsUxv" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"
Response:
{
"columns": [
{
"name": "chainId",
"type": "UInt16"
},
{
"name": "dexAddress",
"type": "String"
},
{
"name": "dexName",
"type": "String"
},
{
"name": "poolAddress",
"type": "FixedString(44)"
},
{
"name": "createdAt",
"type": "DateTime('UTC')"
},
{
"name": "token0Address",
"type": "FixedString(44)"
},
{
"name": "token0Symbol",
"type": "String"
},
{
"name": "token0Decimals",
"type": "UInt8"
},
{
"name": "token1Address",
"type": "FixedString(44)"
},
{
"name": "token1Symbol",
"type": "String"
},
{
"name": "token1Decimals",
"type": "UInt8"
},
{
"name": "feeTier",
"type": "UInt32"
},
{
"name": "tickSpacing",
"type": "UInt16"
},
{
"name": "sqrtPriceX64",
"type": "UInt128"
},
{
"name": "tick",
"type": "Int32"
},
{
"name": "price",
"type": "Nullable(Float64)"
},
{
"name": "lastSwapTime",
"type": "DateTime('UTC')"
},
{
"name": "tokenVault0",
"type": "FixedString(44)"
},
{
"name": "tokenVault1",
"type": "FixedString(44)"
},
{
"name": "token0PriceUSD",
"type": "Float64"
},
{
"name": "token1PriceUSD",
"type": "Float64"
},
{
"name": "tvlToken0",
"type": "Nullable(Float64)"
},
{
"name": "tvlToken1",
"type": "Nullable(Float64)"
},
{
"name": "tvl",
"type": "Nullable(Float64)"
},
{
"name": "volumeToken0",
"type": "Nullable(Float64)"
},
{
"name": "volumeToken1",
"type": "Nullable(Float64)"
},
{
"name": "volume24h",
"type": "Nullable(Float64)"
},
{
"name": "fees24h",
"type": "Nullable(Float64)"
},
{
"name": "apr24h",
"type": "Nullable(Float64)"
},
{
"name": "priceVolatility",
"type": "Nullable(Float64)"
},
{
"name": "utilization24h",
"type": "Nullable(Float64)"
},
{
"name": "swaps24h",
"type": "UInt64"
},
{
"name": "ticksUsed24h",
"type": "UInt64"
}
],
"data": [
[
900,
"CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK",
"Raydium CLMM",
"3ucNos4NbumPLZNWztqGHNFFgkHeRMBQAVemeeomsUxv",
"2024-08-07T13:33:36+00:00",
"So11111111111111111111111111111111111111112",
"SOL",
9,
"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"USDC",
6,
400,
1,
6570043340001267395,
-20649,
126.85191383873301,
"2026-01-28T14:15:00+00:00",
"4ct7br2vTPzfdmY3S5HLtTxcGSBfn6pnw98hsS6v359A",
"5it83u57VRrVgc51oNV19TTmAJuffPx5GtGwQr7gQNUo",
126.88290871180035,
1.0,
60713.83389242,
1710008.248591,
9413556.091906337,
155394.376777459,
19590689.211778,
19716890.52298144,
7886.756209192576,
30.580005985520526,
0.005134115794626117,
100.0,
26051,
389
]
],
"rows": 1
}
Returns comprehensive pool data for a SOL-USDC pool showing current price (~$126.85), high TVL ($9.4M), and strong 24h trading activity with $19.7M volume and 26,051 swaps.
2. Multiple Pool Query
Query metrics for multiple pools by providing comma-separated pool addresses.
curl -X GET "https://opabinia.cambrian.network/api/v1/solana/raydium-clmm/pool-multi?pool_addresses=3ucNos4NbumPLZNWztqGHNFFgkHeRMBQAVemeeomsUxv,AnotherPoolAddress123,ThirdPoolAddress456" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"
Response:
{
"columns": [
{
"name": "chainId",
"type": "UInt16"
},
{
"name": "dexAddress",
"type": "String"
},
{
"name": "dexName",
"type": "String"
},
{
"name": "poolAddress",
"type": "FixedString(44)"
},
{
"name": "createdAt",
"type": "DateTime('UTC')"
},
{
"name": "token0Address",
"type": "FixedString(44)"
},
{
"name": "token0Symbol",
"type": "String"
},
{
"name": "token0Decimals",
"type": "UInt8"
},
{
"name": "token1Address",
"type": "FixedString(44)"
},
{
"name": "token1Symbol",
"type": "String"
},
{
"name": "token1Decimals",
"type": "UInt8"
},
{
"name": "feeTier",
"type": "UInt32"
},
{
"name": "tickSpacing",
"type": "UInt16"
},
{
"name": "sqrtPriceX64",
"type": "UInt128"
},
{
"name": "tick",
"type": "Int32"
},
{
"name": "price",
"type": "Nullable(Float64)"
},
{
"name": "lastSwapTime",
"type": "DateTime('UTC')"
},
{
"name": "tokenVault0",
"type": "FixedString(44)"
},
{
"name": "tokenVault1",
"type": "FixedString(44)"
},
{
"name": "token0PriceUSD",
"type": "Float64"
},
{
"name": "token1PriceUSD",
"type": "Float64"
},
{
"name": "tvlToken0",
"type": "Nullable(Float64)"
},
{
"name": "tvlToken1",
"type": "Nullable(Float64)"
},
{
"name": "tvl",
"type": "Nullable(Float64)"
},
{
"name": "volumeToken0",
"type": "Nullable(Float64)"
},
{
"name": "volumeToken1",
"type": "Nullable(Float64)"
},
{
"name": "volume24h",
"type": "Nullable(Float64)"
},
{
"name": "fees24h",
"type": "Nullable(Float64)"
},
{
"name": "apr24h",
"type": "Nullable(Float64)"
},
{
"name": "priceVolatility",
"type": "Nullable(Float64)"
},
{
"name": "utilization24h",
"type": "Nullable(Float64)"
},
{
"name": "swaps24h",
"type": "UInt64"
},
{
"name": "ticksUsed24h",
"type": "UInt64"
}
],
"data": [
[
900,
"CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK",
"Raydium CLMM",
"3ucNos4NbumPLZNWztqGHNFFgkHeRMBQAVemeeomsUxv",
"2024-08-07T13:33:36+00:00",
"So11111111111111111111111111111111111111112",
"SOL",
9,
"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"USDC",
6,
400,
1,
6570043340001267395,
-20649,
126.85191383873301,
"2026-01-28T14:15:00+00:00",
"4ct7br2vTPzfdmY3S5HLtTxcGSBfn6pnw98hsS6v359A",
"5it83u57VRrVgc51oNV19TTmAJuffPx5GtGwQr7gQNUo",
126.88290871180035,
1.0,
60713.83389242,
1710008.248591,
9413556.091906337,
155394.376777459,
19590689.211778,
19716890.52298144,
7886.756209192576,
30.580005985520526,
0.005134115794626117,
100.0,
26051,
389
]
],
"rows": 1
}
Enables efficient batch monitoring of multiple pool positions, returning data for all requested pools in a single API call for portfolio management and performance tracking.
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://deep42.cambrian.network/api/v1/solana/raydium-clmm/pool-multi"
);
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://deep42.cambrian.network/api/v1/solana/raydium-clmm/pool-multi")
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–5 automatically.
Network: Base (chain ID 8453) | Currency: USDC | Price: $0.05 per request
Related Endpoints
/api/v1/solana/raydium-clmm/pool- Returns pool info for a specific Raydium CLMM pool including TVL, APR, and volume metrics/api/v1/solana/raydium-clmm/pools- Lists basic pool information for all Raydium CLMM pools/api/v1/solana/orca/pools- Retrieves list of all Orca pools for cross-DEX comparison/api/v1/solana/pool-transactions- Get transaction history for pool activity analysis