Token price by contract address

$0.005 per call · USDC via x402 · GET /api/coin-price-by-contract

Live price, market cap, 24h volume and 24h change for ERC-20 / SPL / other chain tokens looked up by CONTRACT ADDRESS on a named platform (ethereum, base, polygon-pos, arbitrum-one, optimistic-ethereum, binance-smart-chain, solana, avalanche, ...). Send GET /api/coin-price-by-contract with the required fields platform and contracts and pay $0.005 per call over x402 or MPP (there is no free tier). It returns a JSON object with source, fetchedAt, cached, platform, currency and 2 more.

Up to 25 contracts per call, any vs currency (default usd). The address-first sibling of crypto-price: use it when an agent holds a token address from a wallet, a DEX pair or a contract scan and has no coin id. Unknown addresses come back as null rather than failing the batch. Responses are cached in-process for 60 seconds.

Category: Crypto & onchain data · Tags: crypto token price contract erc20 evm solana market-data

TRY IN PLAYGROUND →

Parameters

NameTypeRequiredDescription
platformstringyesAsset platform id: ethereum, base, polygon-pos, arbitrum-one, optimistic-ethereum, binance-smart-chain, solana, avalanche, ...
contractsstringyesComma-separated contract addresses (max 25). Also accepts an array.
currencystringnovs currency (default usd): fiat (usd, eur) or crypto (btc, eth).

Example request

curl -i "https://agent402.tools/api/coin-price-by-contract?platform=ethereum&contracts=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48&currency=usd"

Without payment this returns HTTP 402 Payment Required with the exact price for coin-price-by-contract; any x402 v2 or MPP client pays it and retries.

Example response

{
  "source": "coingecko",
  "fetchedAt": "2026-08-22T13:20:00.000Z",
  "cached": false,
  "platform": "ethereum",
  "currency": "usd",
  "count": 1,
  "tokens": [
    {
      "contract": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
      "price": 0.999916,
      "marketCap": 73514026487.98,
      "volume24h": 26092767405.46,
      "change24hPct": 0.0212,
      "lastUpdated": "2026-08-22T13:15:40.000Z"
    }
  ]
}
FieldTypeAlways presentIn the example
sourcestringyescoingecko
fetchedAtstringyes2026-08-22T13:20:00.000Z
cachedbooleanyesfalse
platformstringyesethereum
currencystringyesusd
countnumberyes1
tokensarray of objectsyes1 item in the example

From an MCP client

catalog.call {
  "slug": "coin-price-by-contract",
  "params": {
    "platform": "ethereum",
    "contracts": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
    "currency": "usd"
  }
}

The hosted connector at https://agent402.tools/mcp needs a payment for coin-price-by-contract; the stdio package pays it from a wallet or from AGENT402_CREDITS_KEY. Local install: npx -y agent402-mcp.

Errors and behavior

Paid call (JavaScript agent)

import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client();
client.setSpendControls?.(false); // keep your own spending ceiling in code
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);

const res = await payFetch("https://agent402.tools/api/coin-price-by-contract?platform=ethereum&contracts=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48&currency=usd");

Related tools

ERC-20 token metadata

$0.001 · POST /api/token-metadata

Resolve an ERC-20 contract address to its on-chain metadata: symbol, decimals, name, and logo URL where available. Use t…

Token spot price (USD)

$0.001 · POST /api/token-price

Return the current USD spot price for an ERC-20 token, identified by its contract address and network. Sourced from Alch…

Token price history (USD)

$0.004 · POST /api/token-price-history

Historical USD price series for a token, by ticker symbol (ETH, BTC, SOL, ...) or by ERC-20 contract + network, at 5-min…

Wallet balance (native + ERC-20)

$0.002 · POST /api/wallet-balance

Look up the native coin balance (ETH/MATIC) plus every ERC-20 holding for a wallet address on Ethereum, Base, Polygon, A…

Known-address label lookup

FREE w/ compute · or $0.002 · POST /api/address-label

Label a known EVM address from a curated, committed dataset: major stablecoin + token contracts (the USDC and USDG contr…

Wallet token transfers (filtered)

$0.003 · POST /api/asset-transfers

Recent token transfers for a wallet on Base, Ethereum and other EVM chains, newest first. Filtered transfer log for an E…