Status events
Watch stream health and continuity through explicit status event frames.
Status events tell you when the stream hits continuity gaps, backpressure overflow, degraded sources, or a source switch. Use them to make retry or fallback decisions without guessing from missing data alone.
Access
- Surfaces:
ws - Metering:
ws_target_minute - Scope:
Stream health · DEX · EVM family primary · Solana (Beta)
Handles
| Surface | Label | Value |
|---|---|---|
ws | Event type | SESSION_GAP_DETECTED |
ws | Event type | SESSION_BACKPRESSURE_OVERFLOW |
ws | Event type | SOURCE_DEGRADED |
ws | Event type | SOURCE_SWITCHED |
Status event example
{
"event_type": "SESSION_GAP_DETECTED",
"session_id": "sess_live_001",
"sequence": 8,
"target_id": "0xC02aaA39b223FE8D0A0E5C4F27eAD9083C756Cc2",
"market_kind": "dex",
"chain": "ethereum",
"source_id": "multi-source-kline",
"source_publish_ts": "2026-04-15T08:00:06Z",
"gateway_ingest_ts": "2026-04-15T08:00:06.005Z",
"gateway_send_ts": "2026-04-15T08:00:06.010Z",
"freshness_ms": 10,
"payload": {
"continuity_state": "gap_detected",
"missed_sequence_count": 2,
"reconnect_mode": "resume"
}
}Request fields
Subscribe frame
| Field | Type | Required | Notes |
|---|---|---|---|
action | string | Required | Use `subscribe`. |
profile | string | Optional | Optional delivery profile. Omit it to use the current default `standard` profile. |
targets | array | Required | One or more market targets to stream. |
Target fields
| Field | Type | Required | Notes |
|---|---|---|---|
targets[].market_kind | string | Required | Use `dex` for the public WebSocket target shape. |
targets[].target_id | string | Required | Token or market target id. |
targets[].chain | string | Required | Target chain. Prefer the current EVM family such as `ethereum` or `base`; use `solana` only for the separate Beta lane. |
targets[].event_family | string | Required | Stream family such as `price` or `short_range_ohlcv`. |
targets[].base_asset | string | Optional | Base asset label shown in the payload. |
targets[].quote_asset | string | Optional | Quote asset label shown in the payload. |
targets[].interval | string | Optional | OHLCV interval such as `1m`. |
Response fields
Event envelope
| Field | Type | Notes |
|---|---|---|
event_type | string | Event type for the current frame. |
session_id | string | Server-issued stream id for the current connection. |
sequence | number | Monotonic event order for the session. |
target_id | string | Target id for the active stream. |
market_kind | string | Market family. Public WebSocket uses `dex`. |
chain | string | Target chain. |
source_id | string | Source label for the current event. |
source_publish_ts | string | Source publish timestamp. |
gateway_ingest_ts | string | Timestamp when the gateway received the event. |
gateway_send_ts | string | Timestamp when the gateway sent the event. |
freshness_ms | number | Elapsed time from source publish to gateway send. |
payload | object | Event-specific payload. |
Gap and continuity payload
| Field | Type | Notes |
|---|---|---|
payload.continuity_state | string | Continuity status such as `gap_detected`. |
payload.missed_sequence_count | number | Number of missed sequence values when a gap is detected. |
payload.reconnect_mode | string | Suggested reconnect mode for gap handling. |
Backpressure and source payload
| Field | Type | Notes |
|---|---|---|
payload.overflow_behavior | string | Overflow behavior when the stream cannot keep up. |
payload.source_state | string | Source status such as `degraded` or `switched`. |
payload.previous_source_id | string | Previous source id when the gateway switches sources. |
Related pages
Last updated on