Crypto market data API
Spot quotes via crypto/quote and crypto/kline, one JSON envelope and one API Key. Free tier includes realtime crypto.
Key specs
- Exchanges
- 30+Homepage figure
- Batch quotes
- Spot 1–100 / requestUp to 100 per request
- Candle intervals
- 1 second – 1 month16 intervals
- Bars per request
- Up to 1,000 barsPage with startTime / endTime
- Latency tiers
- Realtime from Free
- Uptime
- 24×7
- History depth
- Varies by market & planSee console entitlements
Exchange count follows tiqex.io homepage; other limits from docs and plan APIs.
Products & endpoints
Spot quote and kline share the same auth and rate limits; paths differ by function.
| Product | Endpoint | Example | Scope |
|---|---|---|---|
| Spot quote | GET /market/crypto/quote | BTCUSDT,ETHUSDT | crypto |
| Spot k-line | GET /market/crypto/kline | BTCUSDT · interval=1m | crypto |
| Live stream | WS /market/stream market=crypto | ["BTCUSDT"] | crypto |
| Exchanges covered | — No public exchange-list endpoint; homepage 30+ is marketing copy | — | crypto |
Data fields
Spot quotes share the TickerQuote shape; candles add quote volume, trades, and taker buy.
| Field | Type | Description | Scope |
|---|---|---|---|
succ | boolean | Success flag | Envelope |
data | object | array | Payload; see fields below | Envelope |
msg / code | string | Human message and machine code (e.g. MARKET_NOT_ENABLED) | Envelope |
X-Request-Id | header | Trace ID in response headers, not JSON body | Envelope |
symbol | string | Trading pair | Quote |
last / change / changePercent | number | Last, change, change % | Quote |
open / high / low / prevClose | number | Window open/high/low and prev close | Quote |
volume / quoteVolume | number | Base / quote volume | Quote |
bid / bidSize / ask / askSize | number | Best bid/ask and sizes | Quote |
openTime / closeTime / trades | number | Window times and trade count | Quote |
bars[].open / high / low / close / volume | number | OHLCV | K-line |
bars[].quoteVolume / trades | number | Quote volume, trades | K-line |
bars[].takerBuyVolume / takerBuyQuoteVolume | number | Taker buy volume / quote volume | K-line |
Request examples
interval: 1s, 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, 1M; limit 1–1000.
curl "https://api.tiqex.io/api/v1/market/crypto/quote?symbols=BTCUSDT,ETHUSDT" \
-H "X-API-Key: $TIQEX_KEY"import os, time, requests
URL = "https://api.tiqex.io/api/v1/market/crypto/kline"
H = {"X-API-Key": os.environ["TIQEX_KEY"]}
start = int((time.time() - 86400) * 1000) # Last 24h, milliseconds
r = requests.get(URL, headers=H, timeout=10, params={
"symbol": "BTCUSDT", "interval": "1m",
"startTime": start, "limit": 1000,
})const ws = new WebSocket("wss://api.tiqex.io/api/v1/market/stream")
ws.onopen = () => ws.send(JSON.stringify({
action: "subscribe", market: "crypto", symbols: ["BTCUSDT", "ETHUSDT"]
}))Use cases
Exchanges & price sites
Spot prices, movers, and charts for major pairs.
Quant & basis trades
Spot quotes in one domain for cross-market comparison and spreads.
Web3 apps & AI agents
Structured JSON ready to wrap as agent tools.
FAQ
Which markets does crypto cover?
Spot quotes and klines for major pairs. Traditional continuous futures (e.g. ES1!) use /market/tv-futures/kline under futures scope.
Do fields match exchange tickers?
Spot quote fields align with exchange-style tickers; candles add quoteVolume, trades, and takerBuy for easier migration.
How do I fetch longer history?
Max 1,000 bars per call — page with startTime / endTime (ms). Each call counts toward REST quota; cache locally.
Does Free include crypto?
Yes — realtime crypto (300 calls/day). Growth+ adds more markets and WebSocket streaming.
Connect crypto markets
One API key for spot quotes and candles — start on Free.



