# Crypto Prices API (CoinGecko via currency.payapi.market)

> Crypto Prices API (CoinGecko via currency.payapi.market) is a paid API for AI agents from currency.payapi.market, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-30).

Returns current prices, market caps, and 24-hour percent changes for up to 50 cryptocurrencies in a single batch call, sourced from CoinGecko.

## Facts

- Endpoint: POST https://currency.payapi.market/crypto/prices?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/crypto-prices-api-coingecko-via-currency-payapi-market-027c8d86
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6-5V_zT0K6W1lMLVpbsIv

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 crypto-prices-api-coingecko-via-currency-payapi-market-027c8d86 -d '<json body>'
```

Example prompt: Can you grab the current prices, market caps, and 24-hour change for BTC, ETH, and SOL in USD?

## When to prefer this

Choose this endpoint when you need to price multiple cryptocurrencies in a single low-latency call (up to 50 at once) with market cap and 24h change data included, and you want a pay-per-call model via x402 micropayments rather than managing a CoinGecko API key or subscription. Ideal for agents that only need crypto pricing occasionally without a standing subscription.

## Known failure modes

- Unrecognized coin symbol returns an error entry in the errors array rather than a result
- Exceeding 50 coins in a single request may be rejected
- Invalid vs_currency code may return an error or default to USD
- Payment failure via x402 results in a 402 response before the query is executed
- CoinGecko upstream downtime may cause delayed or empty responses

## How this service works

Fiat exchange rates (ECB via Frankfurter) and crypto prices (CoinGecko) with x402 payments.

## Output

A JSON object containing the source ('CoinGecko'), the list of queried symbols, and per-coin results including current price (in the specified vs_currency), coin_id, market cap, and 24-hour percentage price change. Any unresolved symbols are reported in an errors array.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "coins": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "maxItems": 50,
   "description": "Up to 50 cryptocurrency symbols or names to price in one batch, e.g. ['btc', 'eth', 'sol']."
  },
  "vs_currency": {
   "type": "string",
   "description": "Quote currency code, e.g. 'usd'. Defaults to usd if omitted."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "errors": [],
  "source": "CoinGecko",
  "queries": [
   "btc",
   "eth",
   "sol"
  ],
  "results": [
   {
    "price": 67250,
    "query": "btc",
    "coin_id": "bitcoin",
    "market_cap": 1327000000000,
    "change_24h_pct": 1.85
   },
   {
    "price": 3520,
    "query": "eth",
    "coin_id": "ethereum",
    "market_cap": 423000000000,
    "change_24h_pct": 2.1
   },
   {
    "price": 172.4,
    "query": "sol",
    "coin_id": "solana",
    "market_cap": 78000000000,
    "change_24h_pct": 3.4
   }
  ],
  "vs_currency": "usd"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/crypto-prices-api-coingecko-via-currency-payapi-market-027c8d86/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from currency.payapi.market](https://www.zero.xyz/host/currency.payapi.market/llms.txt)
