v1

latestOpenAPI 3.1.02026-07-2655154175.6 KB
Heatmap

Live 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.

get/v1/stream

Query parameters

symbolstring required
Example:SPY

Single ticker to stream (e.g. SPY). One symbol per connection.

metric'gamma' | 'vanna'

Which Greek exposure to return per strike.

maxStrikesinteger

Maximum number of strikes around spot to return.

Response

An SSE stream of heatmap events.