# Batch Token Prices by CoinGecko ID or Chain:Address

> Batch Token Prices by CoinGecko ID or Chain:Address is a paid API for AI agents from twin.unykorn.org, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-02).

Fetches current prices for up to 25 tokens in a single call, identified by CoinGecko ID or chain:contract-address format

## Facts

- Endpoint: POST https://twin.unykorn.org/defi/token-prices?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/batch-token-prices-by-coingecko-id-or-chain-address-398805f7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_PHvxqy865ygWyw0x7bxtI

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability batch-token-prices-by-coingecko-id-or-chain-address-398805f7 -d '<json body>'
```

Example prompt: What are the current prices for Bitcoin, Ethereum, and USDC — can you look them up using their CoinGecko IDs coingecko:bitcoin, coingecko:ethereum, and coingecko:usd-coin all at once?

## When to prefer this

Choose this endpoint when you need prices for multiple tokens simultaneously and want to minimize round-trips — it batches up to 25 tokens in one paid call. Prefer it over single-token lookups when building portfolio trackers, DeFi dashboards, or arbitrage bots that need current prices across several assets. Supports both CoinGecko IDs (coingecko:bitcoin) and on-chain contract addresses (chain:0x...) making it flexible for both well-known coins and long-tail EVM tokens.

## Known failure modes

- Exceeding 25 tokens in one request returns a validation error
- Unknown or misspelled CoinGecko IDs return null or error for that token
- Invalid chain:address format causes parse errors
- Unsupported chain prefix for chain:address lookups returns no data
- Payment failure (x402) blocks the request entirely
- Tokens with very low liquidity may return stale or missing prices

## How this service works

Batch token prices: up to 25 tokens in one call by CoinGecko id or chain:address — Genesis402 / UnyKorn Operator Network

## Output

Returns current USD prices for each requested token, keyed by the input identifier (CoinGecko ID or chain:address). Up to 25 tokens returned per call.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "params": {
   "type": "object",
   "properties": {
    "coins": {
     "type": "array",
     "items": {
      "type": "string"
     },
     "maxItems": 25,
     "description": "required: up to 25 ids like coingecko:bitcoin or base:0x..."
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "type": "token-prices",
  "receipt": {
   "tx_hash": "0x<64hex>",
   "amount_usd": 0.002,
   "receipt_id": "g402-<16hex>"
  },
  "sources": [
   {
    "ok": true,
    "name": "<source>"
   }
  ],
  "limitations": "<text>",
  "generated_at": "<iso time>",
  "evidence_hash": "sha256:<64hex>"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/batch-token-prices-by-coingecko-id-or-chain-address-398805f7/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from twin.unykorn.org](https://www.zero.xyz/host/twin.unykorn.org/llms.txt)
