v1
latestOpenAPI 3.1.02026-07-2655154175.6 KBLive SSE stream (one symbol per connection)
A Server-Sent Events (text/event-stream) feed of live per-strike heatmap updates for one symbol. Open one connection per symbol.
Events:
- connected — handshake, payload {symbol, creditsRemaining}.
- initial_data — current heatmap snapshot on connect.
- snapshot_update — full heatmap on each change.
- velocity_update — per-strike % change.
- credits — emitted every minute boundary, payload {remaining}.
- closed — stream terminates with {reason: "insufficient_credits" | "account_suspended" | "credit_check_failed"}.
- reconnect — server is recycling the connection (after ~1h), payload {reason: "max_duration"}. Reconnect to continue.
- : keepalive comment every 30s for proxy keepalive.
Pricing. 1 credit on connect (charged before the SSE upgrade — an under-funded client gets a clean 402 HTTP response, not a half-open stream), then 1 credit per minute open. The per-minute ticker emits event: credits {remaining: N} after each successful debit so clients can budget the next minute.
Concurrency. Up to 5 concurrent streams per customer per pod. Exceeding the cap returns 429 stream_limit_reached.
OpenAPI is request/response-oriented and can't fully model an event stream. See docs/api-credits.md for the full stream lifecycle.
Query parameters
Single ticker to stream (e.g. SPY). One symbol per connection.
Which Greek exposure to return per strike.
Maximum number of strikes around spot to return.
Response
An SSE stream of heatmap events.