Surface History
Pro
GET /options/surface-history
Full options volatility surface history for one supported exchange — all strikes and expiries for every hour in the requested window. Returns a nested structure keyed by hour, then by option instrument. The most data-intensive options endpoint; designed for volatility surface modeling, smile fitting, and historical vol research.
Authentication
Requires Pro tier or higher. Free and Dev tiers do not have access (returns 403). Supported pairs: BTC/ETH on Deribit, Binance, Bybit, OKX, and Derive; HYPE on Deribit/Derive; SOL/XRP on Deribit/Binance/Bybit/Derive; DOGE on Binance/Bybit; BNB on Binance; ZEC on Derive.
Parameters
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
symbol | string | – | BTC, ETH, HYPE, SOL, ZEC, XRP, DOGE, or BNB. Supported venues vary by symbol. Defaults to BTC. |
exchange | string | ✓ | deribit, binance, bybit, okx, or derive. |
range | string | – | Preset day lookback such as 7d, 30d, or 90d. Defaults to 30d. Legacy days is accepted until July 21, 2026. |
Example request
bash
curl -H "X-Api-Key: lk_live_your_key_here" \
"https://api.loris.tools/options/surface-history?symbol=BTC&exchange=deribit&range=7d"Example response
json
{
"symbol": "BTC",
"exchange": "deribit",
"range": "7d",
"days": 7,
"hours": ["2026-06-01T00:00:00Z", "2026-06-01T01:00:00Z"],
"snapshots": {
"2026-06-01T00:00:00Z": [
{
"expiry": "2026-06-27T08:00:00Z",
"strike": 65000,
"side": "call",
"iv": 0.742,
"underlying_price": 69800.00,
"open_interest": 412
},
{
"expiry": "2026-06-27T08:00:00Z",
"strike": 70000,
"side": "call",
"iv": 0.718,
"underlying_price": 69800.00,
"open_interest": 1842
}
]
}
}Errors
403— Your tier does not have access. Upgrade to Pro.400— range out of bounds.
For authentication errors (401) and rate limit responses (429), see Errors.