Download one hour of tickers for an instrument as a Lastra segment
Serves exactly one hour of raw ticker data for the given instrument on the requested exchange. The payload is a native Lastra file — QTSurfer's columnar format for tick-precision timeseries — with no JSON envelope.
One segment = one hour, aligned to UTC. The hour query parameter selects the segment and must match YYYY-MM-DDTHH (no minutes/seconds, no timezone suffix). Example: hour=2026-01-15T10 returns h10.lastra for 2026-01-15, covering [10:00:00Z, 11:00:00Z). Hours not yet available return 404.
A format=parquet query parameter switches the response to on-the-fly Parquet conversion via lastra-convert for clients that don't yet read Lastra. Lastra is the primary format and cheaper when the client can consume it.
Clients:
- lastra-java — reference Java reader/writer with per-column codecs (ALP, Gorilla, delta-varint, ZSTD) and CRC32 integrity.
- lastra-ts — TypeScript reader (~4 kB bundle, browser + Node.js).
- duckdb-lastra — DuckDB extension for ad-hoc SQL over Lastra files.
- lastra-convert — CLI + Java API for converting to/from Parquet, Reef, and CSV.
- curl -OJ for offline dumps (the Content-Disposition header sets a descriptive filename).
Request
- Base URL: https://api.qtsurfer.net/v1
- URL: https://api.qtsurfer.net/v1/exchange/{exchangeId}/tickers/{base}/{quote}
- Auth: none declared
Path parameters
ID of the exchange (e.g. binance).
Base asset symbol (first leg of the pair).
Quote asset symbol (second leg of the pair).
Query parameters
Hour selector in YYYY-MM-DDTHH (UTC). The returned segment covers [HH:00:00Z, HH+1:00:00Z).
Response wire format. lastra (default) returns raw Lastra bytes. parquet returns Parquet via on-the-fly conversion using lastra-convert.
Response
One hour of tickers for the instrument. Content-Type is application/vnd.lastra by default or application/vnd.apache.parquet when format=parquet was requested.
Changes
No operation changes recorded.