Overview
- Base URL:
https://cryptoapi.vshll.lol - All responses are JSON with CORS enabled (
*). - Cached for 30 seconds. Data sourced from CoinGecko.
- Supported coins:
btc,eth,sol. - No authentication. No rate limit headers — please be reasonable.
Endpoints
GET
/api/public/coinsList all supported coins and their slugs.
Example response
{
"supported": [
{ "slug": "btc", "id": "bitcoin", "symbol": "BTC", "name": "Bitcoin" },
{ "slug": "eth", "id": "ethereum", "symbol": "ETH", "name": "Ethereum" },
{ "slug": "sol", "id": "solana", "symbol": "SOL", "name": "Solana" }
]
}GET
/api/public/price/:coinGet current price + market data for a single coin. :coin is one of btc, eth, sol (or full id: bitcoin, ethereum, solana).
Example response
{
"id": "bitcoin",
"symbol": "BTC",
"name": "Bitcoin",
"price": {
"usd": 67234.12,
"eur": 62150.44,
"gbp": 53201.87
},
"market_cap_usd": 1325000000000,
"volume_24h_usd": 28450000000,
"change_24h_percent": 1.42,
"last_updated": "2026-06-26T12:34:56.000Z",
"source": "coingecko"
}GET
/api/public/pricesGet current price + market data for all supported coins in one call.
Example response
{
"coins": [
{
"id": "bitcoin",
"symbol": "BTC",
"name": "Bitcoin",
"price": { "usd": 67234.12, "eur": 62150.44, "gbp": 53201.87 },
"market_cap_usd": 1325000000000,
"volume_24h_usd": 28450000000,
"change_24h_percent": 1.42,
"last_updated": "2026-06-26T12:34:56.000Z"
},
{ "id": "ethereum", "symbol": "ETH", "...": "..." },
{ "id": "solana", "symbol": "SOL", "...": "..." }
],
"source": "coingecko",
"count": 3
}Field reference
| Field | Type | Description |
|---|---|---|
id | string | Canonical coin id (e.g. "bitcoin"). |
symbol | string | Ticker symbol (e.g. "BTC"). |
name | string | Display name. |
price.usd | number | Spot price in US dollars. |
price.eur | number | Spot price in euros. |
price.gbp | number | Spot price in British pounds. |
market_cap_usd | number | Market capitalization in USD. |
volume_24h_usd | number | 24h trading volume in USD. |
change_24h_percent | number | 24h price change as percent (e.g. 1.42 = +1.42%). |
last_updated | string (ISO 8601) | Upstream last update time. |
source | string | Upstream data provider. |
Errors
Errors return a JSON object with an error field and an appropriate HTTP status.
// 404 unsupported coin
{ "error": "Unsupported coin", "supported": ["btc","eth","sol"] }
// 502 upstream failure
{ "error": "Upstream error", "status": 429 }Examples
curl
curl https://cryptoapi.vshll.lol/api/public/price/ethJavaScript (fetch)
const res = await fetch("https://cryptoapi.vshll.lol/api/public/prices");
const data = await res.json();
console.log(data.coins);Python
import requests
r = requests.get("https://cryptoapi.vshll.lol/api/public/price/sol").json()
print(r["price"]["usd"])