Crypto market data API
A crypto market data API that returns one row per coin from CoinGecko's public markets endpoint: current price in your quote currency, market cap and rank, 24h volume, 24h change with the session high and low, circulating and total supply, and the all-time high with its date. Take the market-cap ranking as is, or narrow to specific coin ids or a category.
$0.0002 per delivered coin · $2 free every month · Failed runs never billed
$ curl $QD/coingecko_coins/run \
-H "Authorization: Bearer $QD_API_KEY" \
-d '{"vs_currency": "usd", "max_results": 50}'
{ "status": "done", "count": 50,
"results": [
{
"id": "…",
"symbol": "…",
"name": "…",
"price": … } ],
"cost": 0.01 }
# 50 coins × $0.0002 · nothing delivered, nothing charged
What a crypto market data API does
Most "crypto price" feeds hand you a single number per symbol and leave the rest — cap, volume, supply, ATH — to stitch from other calls. This reads the markets table, so every row already carries the columns an analysis joins on, in the vs_currency you asked for rather than a USD figure you then convert.
The source is CoinGecko's aggregate across exchanges, not one venue's order book, so the price is a market view rather than a single exchange's. You pass coin ids, a category slug like stablecoins, or nothing at all for the ranking; up to 250 coins come back in one run, each stamped with the time CoinGecko last updated it.
What one coin looks like
Every delivered coin carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.
| Field | Type | What it holds |
|---|---|---|
rank | integer | Row order as returned. |
id | string | CoinGecko coin id. |
symbol | string | Ticker symbol (uppercase). |
name | string · nullable | Coin name. |
price | number · nullable | Current price in vs_currency. |
currency | string | Quote currency (uppercase). |
market_cap | number · nullable | Market capitalization. |
market_cap_rank | integer · nullable | Global market-cap rank. |
volume_24h | number · nullable | 24h trading volume. |
change_24h_pct | number · nullable | 24h price change %. |
high_24h | number · nullable | 24h high. |
low_24h | number · nullable | 24h low. |
circulating_supply | number · nullable | Circulating supply. |
total_supply | number · nullable | Total supply. |
ath | number · nullable | All-time high price. |
ath_date | string · nullable | All-time high date. |
image | string · nullable | Coin icon URL. |
last_updated | string · nullable | Data timestamp. |
Inputs
The whole request. Anything you leave out falls back to the default shown in the catalog.
| Input | Type | Required | What it does |
|---|---|---|---|
vs_currency | string | no | Quote currency (usd, eur, btc…). |
coin_ids | array | no | Specific CoinGecko ids (bitcoin, ethereum…). Empty = ranking order. |
category | string | no | CoinGecko category slug, e.g. stablecoins, meme-token. |
order | string | no | Sort order (default market_cap_desc). One of: market_cap_desc, market_cap_asc, volume_desc, volume_asc, id_asc, id_desc. |
max_results | integer | no | How many coins to deliver at most (1–250). You pay only for delivered coins. |
Pricing
Crypto market data API pricing
$0.0002 per delivered coin. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 10,000 coins before you spend anything.
Pay as you go
- $2 free credit / month
- 60 requests / min
- List unit prices
Starter
- $15 free credit / month
- 300 requests / min
- 10% off unit prices
Growth
- $50 free credit / month
- 600 requests / min
- 20% off unit prices
Scale
- $250 free credit / month
- 1,200 requests / min
- 30% off unit prices
Same wallet, same key and same $2 monthly allowance as every other Data API. Prices are launch pricing read live from the billing config — GET /v1/scraper/collectors returns the price your key actually pays.
Integration
One POST, typed rows
Base URL https://api.quanticdata.io/v1, Bearer auth, the same key as every other Data API. Endpoint: POST /v1/.
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/coingecko_coins/run \
-H "Authorization: Bearer $QD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"vs_currency":"usd","max_results":50}'
What people build with the crypto market data API
Three shapes of work this endpoint was designed around.
Portfolio valuation
Price a holdings list in one call by passing its coin ids, each row already denominated in your reporting currency via vs_currency.
Market dashboards
Rank the top coins by market cap or volume and read change, high and low for a movers board without a second request.
Category screening
Pull a category such as stablecoins or meme-token and compare cap, volume and supply across only that segment.
Crypto market data API versus rolling your own
The differences that actually cost time when you build this in-house.
| DIY scraper | This collector | |
|---|---|---|
| Per row | One price number per call | Price, cap, volume, supply, 24h range and ATH together |
| Quote currency | USD you convert yourself | Any vs_currency, priced at read time |
| Selection | One coin per request | Ranking, an id list, or a category in one run |
Is this real-time or a snapshot?
Each row carries CoinGecko's last_updated timestamp, so you read the latest aggregate it publishes and can see how fresh each coin is. It is a poll of the markets endpoint per run, not a streaming socket.
Can I price in EUR or BTC instead of USD?
Yes. vs_currency takes usd, eur, btc and the other quotes CoinGecko supports, and every numeric field — price, market cap, volume, ATH — comes back already denominated in it.
How do I read just the coins I hold?
Pass their CoinGecko ids in coin_ids (bitcoin, ethereum, solana…). Leave it empty for the market-cap ranking instead, or add a category to scope that ranking to one segment.
Is there a free crypto market data API?
Every account gets $2 of credit every month with no card, which is about 10,000 delivered coins on this endpoint at $0.0002 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.
How much does one run cost?
Multiply the rows you actually receive by $0.0002. A run capped at 250 coins — the maximum for this collector — costs $0.05 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and GET /v1/scraper/collectors returns the price your key actually pays.
Run the crypto market data API now
$2 of free credit every month, no card. Your key returns its own prices from GET /v1/scraper/collectors.