Availability dimensions
Capacity is separate
After availability is confirmed, size the request against Rate limits: request rate, concurrency, standard replay speed, credits, and request-window limits. A capacity limit can delay or narrow a job; it does not mean the dataset is absent. Published market-data route access is not a higher-tier feature: plans gate capacity and Free’s rolling 30-day history window, not route families, schemas, or served depth, while actual availability remains route-, family-, symbol-, and schema-specific. Build and above keep the full retained archive.Preflight pattern
1
Name the route family
Write the family in the job config before writing the endpoint. For example,
hyperliquid_spot and hyperliquid_core should not collapse into one label.2
Probe one exact market
Call one instrument,
/v1/symbols, coverage, freshness, order-book, or trade route for the exact symbol before looping over symbols.3
Check the data family
Confirm that the requested data family exists for the route. L4, L3, replay, funding, and open-interest coverage can have different constraints.
4
Attach the decision to output
Store the preflight result, route, symbol, window, and request IDs beside backtests, exports, dashboards, and model inputs.