vike
API EndpointsHyperliquid

/ohlcv/latest

The newest 1-minute candle of every symbol that traded in the last hour, in one request.

GET https://data.vike.io/v1/hyperliquid/ohlcv/latest

The newest 1-minute candle of every symbol that traded in the last hour, in one request. Use it instead of a loop of /ohlcv?limit=1 calls, one per symbol: a few hundred of those in a burst run into the per-minute cap (Rate limits), and this is one request for all of them.

  • One row per symbol and DEX, ordered by dex, then symbol. Without dex every DEX is answered and each row names its own; with dex only that one.
  • Only symbols with a trade in the last 60 minutes (lookback_minutes). A symbol idle for the whole hour is absent, not a row of zeros; for its last candle call /ohlcv with a start.
  • The newest candle may still be forming: ts is the start of its minute, so a row whose ts is the current minute will change until that minute ends.
  • Spot rows carry the raw index (@107) as symbol, as /ohlcv does.
  • interval is 1m only; any other value is a 400. For other intervals call /ohlcv per symbol.
cURL
# the newest 1-minute candle of every perp that traded in the last hour, every DEX
curl -s "https://data.vike.io/v1/hyperliquid/ohlcv/latest" \
  -H "X-API-KEY: $VIKE_API_KEY"

# one builder DEX only
curl -s "https://data.vike.io/v1/hyperliquid/ohlcv/latest?dex=XYZ" \
  -H "X-API-KEY: $VIKE_API_KEY"

# spot tokens (symbol is the raw index, e.g. @107)
curl -s "https://data.vike.io/v1/hyperliquid/ohlcv/latest?market=spot" \
  -H "X-API-KEY: $VIKE_API_KEY"
marketqueryoptional
perp | spot. Default perp
dexqueryoptional
HL core or a HIP-3 perp DEX, e.g. XYZ. Omit for every DEX; each row names its own
intervalqueryoptional
Only 1m, the default. Any other value is a 400

Three of the 552 candles of one capture (2026-10-24, every DEX) are shown.

Example response
{
  "market": "perp",
  "dex": null,
  "interval": "1m",
  "tz": "UTC",
  "source": "1m fills rollup",
  "lookback_minutes": 60,
  "candles": [
    {
      "symbol": "BTC",
      "dex": "HL",
      "ts": 1792832640000,
      "open": 80630.0,
      "high": 80630.0,
      "low": 80622.0,
      "close": 80622.0,
      "volume": 2.6084300000000002,
      "volume_usd": 210310.46201999998,
      "n_trades": 53
    },
    {
      "symbol": "ETH",
      "dex": "HL",
      "ts": 1792832640000,
      "open": 2364.7,
      "high": 2365.1,
      "low": 2364.4,
      "close": 2365.0,
      "volume": 7.692300000000001,
      "volume_usd": 18191.46588,
      "n_trades": 28
    },
    {
      "symbol": "xyz:AAOI",
      "dex": "XYZ",
      "ts": 1792831920000,
      "open": 66.662,
      "high": 66.682,
      "low": 66.662,
      "close": 66.682,
      "volume": 69.5,
      "volume_usd": 4633.4525,
      "n_trades": 5
    }
  ]
}
Example response
{  "market": "perp",  "dex": null,  "interval": "1m",  "tz": "UTC",  "source": "1m fills rollup",  "lookback_minutes": 60,  "candles": [    {      "symbol": "BTC",      "dex": "HL",      "ts": 1792832640000,      "open": 80630.0,      "high": 80630.0,      "low": 80622.0,      "close": 80622.0,      "volume": 2.6084300000000002,      "volume_usd": 210310.46201999998,      "n_trades": 53    },    {      "symbol": "ETH",      "dex": "HL",      "ts": 1792832640000,      "open": 2364.7,      "high": 2365.1,      "low": 2364.4,      "close": 2365.0,      "volume": 7.692300000000001,      "volume_usd": 18191.46588,      "n_trades": 28    },    {      "symbol": "xyz:AAOI",      "dex": "XYZ",      "ts": 1792831920000,      "open": 66.662,      "high": 66.682,      "low": 66.662,      "close": 66.682,      "volume": 69.5,      "volume_usd": 4633.4525,      "n_trades": 5    }  ]}