Cambrian Token Price (Current) API

By Cambrian Network base

GET /api/v1/evm/price-current

Token Price (Current)

Overview

Returns the current USD price of a token on Base, computed from the live state of its Uniswap V3 and clone liquidity pools. The price is derived from current pool reserves rather than the last trade, so it reflects what the pools imply the token is worth right now, and refreshes roughly once a minute.

Business Value

  • No Price Feed to Maintain: Get a token's USD price without reading pool contracts or running your own pricing pipeline.

Endpoint Details

URL:

https://api.cambrian.org/evm/price-current

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 0x833589fcd6edb6e08f4c7c32d4f71b54bda02913 Address of the token prefixed with 0x. See white listed tokens

Response Field Descriptions

Response Field Type Description
chainId UInt16 EVM chain ID the token was queried on
tokenAddress String Contract address of the token
symbol String Token symbol
priceUsd Float64 Current price of the token in USD

Examples

1. Get Current Price of USDC on Base

This example retrieves the current USD price for USDC on the Base chain (chain ID 8453).

curl -X GET "https://api.cambrian.org/evm/price-current?chain_id=8453&token_address=0x833589fcd6edb6e08f4c7c32d4f71b54bda02913" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response:

[
  {
    "columns": [
      { "name": "chainId", "type": "UInt16" },
      { "name": "tokenAddress", "type": "String" },
      { "name": "symbol", "type": "String" },
      { "name": "priceUsd", "type": "Float64" }
    ],
    "data": [
      [8453, "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "USDC", 1]
    ],
    "rows": 1
  }
]

USDC, a stablecoin, returns a priceUsd of 1, as expected.

2. Get Current Price of WETH on Base

This example demonstrates fetching the current price of a volatile asset (Wrapped ETH) instead of a stablecoin.

curl -X GET "https://api.cambrian.org/evm/price-current?chain_id=8453&token_address=0x4200000000000000000000000000000000000006" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response:

[
  {
    "columns": [
      { "name": "chainId", "type": "UInt16" },
      { "name": "tokenAddress", "type": "String" },
      { "name": "symbol", "type": "String" },
      { "name": "priceUsd", "type": "Float64" }
    ],
    "data": [
      [8453, "0x4200000000000000000000000000000000000006", "WETH", 1873.0114249392152]
    ],
    "rows": 1
  }
]

The response returns WETH's current market price (~$1,873.01 USD at time of query), reflecting live DEX liquidity pool pricing.

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/price-current"
);
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/price-current")
        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–5 automatically.

Network: Base (chain ID 8453) | Currency: USDC | Price: $0.05 per request


Related Endpoints

  • /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/tvl/top-owners - Returns top token holders for a given token address.
  • /evm/tvl/status - Returns the tokens held by an address.
  • /evm/dexes - List of DEXes on EVM compatible chains.