Overview
US equity candles
Parameters symbol and interval, e.g. AAPL and 1d.
REST / WebSocket endpoints
Pull historical candle data by ticker and interval.
Updated: 2026-09-12
US equity candles
Parameters symbol and interval, e.g. AAPL and 1d.
| Field | Type | Required | Description |
|---|---|---|---|
symbol | string | Yes | Equity symbol |
interval | string | No | Default 1D; maps to 1T/5T/30T/1H/2H/4H/1D/1W/1M |
limit | number | No | Default 100, range 1–1000 |
source | string | No | tradingview|tv switches to TV candle shape |
| Field | Type | Description |
|---|---|---|
succ | boolean | Whether the request succeeded |
data | object | array | Business payload (see fields below) |
msg | string | Human-readable error message on failure (optional) |
code | string | Machine-readable error code (optional) |
X-Request-Id | header | Request trace ID (response header, not in JSON body) |
X-API-Key | header | API key; Authorization: Bearer is also accepted |
| Field | Type | Description |
|---|---|---|
symbol / interval / adjustmentMode | string | Symbol, interval, adjustment |
bars[].open/high/low/close/volume | number | OHLCV |
bars[].vwap / trades / session | mixed | VWAP, trades, session |
bars[].openTime(Ms) / closeTime(Ms) | string | number | Open/close times |
| code | HTTP | Description |
|---|---|---|
INVALID_REQUEST | 400 | Missing or invalid parameters (e.g. interval) |
INVALID_SYMBOL | 400 | Invalid symbol format |
UNKNOWN_SYMBOL | 400 | Unrecognized symbol (multi-market quote) |
NO_SUBSCRIPTION | 403 | No active subscription |
SUBSCRIPTION_EXPIRED | 403 | Subscription expired |
MARKET_NOT_ENABLED | 403 | Market not enabled on current plan |
API_KEY_SCOPE_DENIED | 403 | API key scope denied |
IP_DENIED / GEO_DENIED | 403 | IP or geo policy denied |
DAILY_LIMIT_EXCEEDED | 429 | Daily quota exceeded |
MONTHLY_LIMIT_EXCEEDED | 429 | Monthly quota exceeded |
RATE_LIMIT_EXCEEDED | 429 | Per-user RPM exceeded |
KEY_RATE_LIMIT_EXCEEDED | 429 | Per-key RPM exceeded |
UPSTREAM_UNAVAILABLE | 502 | Upstream market source unavailable |
RATE_LIMIT_UNAVAILABLE | 503 | Rate-limit infrastructure unavailable |
WS_CONN_LIMIT | WS | WebSocket connection cap reached |
curl https://api.tiqex.io/api/v1/market/equity/kline?symbol=AAPL&interval=1d \
-H "X-API-Key: YOUR_API_KEY"import requests
url = "https://api.tiqex.io/api/v1/market/equity/kline?symbol=AAPL&interval=1d"
headers = {"X-API-Key": "YOUR_API_KEY"}
resp = requests.get(url, headers=headers, timeout=10)
resp.raise_for_status()
print(resp.json())const res = await fetch("https://api.tiqex.io/api/v1/market/equity/kline?symbol=AAPL&interval=1d", {
headers: { "X-API-Key": "YOUR_API_KEY" }
});
if (!res.ok) throw new Error(res.status);
console.log(await res.json());