> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.immix.xyz/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.immix.xyz/_mcp/server.

# Venue health

**`Request — sent`**

```json title="Request — sent"
{
  "op": "subscribe",
  "params": {
    "topics": [
      "health"
    ]
  }
}
```

**`Response — received`**

```json title="Response — received"
{
  "op": "subscribe",
  "success": true,
  "topics": [
    {
      "topic": "health",
      "state": "live"
    }
  ]
}
```

**`Push data — received`**

```json title="Push data — received"
{
  "event": "health",
  "topic": "health",
  "seq": "<string>",
  "seqTs": "<string>",
  "data": {
    "index": {
      "pairs": 0,
      "live": 0,
      "expired": 0
    },
    "exchanges": [
      {
        "exchange": "<string>",
        "connectivity": "full",
        "feeds": {
          "trade": {
            "unobserved": 0,
            "live": 0,
            "degraded": 0,
            "timedOut": 0
          },
          "tob": {
            "unobserved": 0,
            "live": 0,
            "degraded": 0,
            "timedOut": 0
          },
          "book": {
            "unobserved": 0,
            "live": 0,
            "degraded": 0,
            "timedOut": 0
          },
          "mark": {
            "unobserved": 0,
            "live": 0,
            "degraded": 0,
            "timedOut": 0
          },
          "funding": {
            "unobserved": 0,
            "live": 0,
            "degraded": 0,
            "timedOut": 0
          },
          "oi": {
            "unobserved": 0,
            "live": 0,
            "degraded": 0,
            "timedOut": 0
          }
        },
        "books": {
          "total": 0,
          "synced": 0,
          "stale": 0
        }
      }
    ]
  }
}
```

Each frame is its shape, read off the contract: `<string>` stands for a value, and a union shows its first form.

**URL** `wss://marketdata.immix.xyz/`

**Topic** `health`

## Request parameters

| Parameter  | Type             | Required | Description                                                                                      |
| ---------- | ---------------- | -------- | ------------------------------------------------------------------------------------------------ |
| `op`       | string           | Yes      | `subscribe`                                                                                      |
| `reqId`    | string           | No       | client correlation id, echoed verbatim on the ack                                                |
| `params`   | object           | Yes      |                                                                                                  |
| > `topics` | array of strings | Yes      | the dotted topic string, e.g. trade.OKX\@BTC/USDT or candlestick.OKX\@BTC/USDT.ONE\_MINUTE.250ms |

## Response parameters

| Parameter      | Type             | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| -------------- | ---------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `op`           | string           | Yes      | One of `auth`, `subscribe`, `unsubscribe`, `error`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `reqId`        | string           | No       |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `success`      | boolean          | Yes      |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `error`        | string           | No       | One of `auth_required`, `invalid_token`, `unknown_op`, `malformed`, `too_many_topics`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `topics`       | array of objects | No       | answers ride in request order — the correlator for entries whose topic could not compose (error rows echo the composed topic best-effort, absent parts empty)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| > `topic`      | string           | Yes      |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| > `state`      | string           | Yes      | live: data flows now (latest-image lanes — tob, mark, funding, oi, ticker — answer live whether or not an image is held yet; the first image flows on arrival). syncing (book topics): the gateway holds no synced book yet — the snapshot is pushed unprompted the moment it syncs, at latest one connector restate interval. error on a plain (string-topic) row, no code: the topic composed nothing, and it never arms retroactively. Either the channel is outside the vocabulary or the tier suffix is outside the configured set (an unrecognized suffix reads as part of the symbol) — correct the topic — or the symbol is unknown to the gateway's refdata fold (derivative symbols are refdata's ccxt spelling BASE/QUOTE:SETTLE, e.g. OKX\@BTC/USDT:USDT — there is no :SWAP form) — resubscribe once refdata holds the instrument. Composite rows: live iff every enabled source book is synced, stated within the topic's output scales, AND every required FX pair is current (the full image pushes immediately); syncing otherwise, kept by the first tick at which the composite becomes computable — a source out for precision is named by a degraded frame at that tick, since syncing alone does not say it; a composite error row carries code. One of `live`, `syncing`, `error`, `unsubscribed`, `not_subscribed`. |
| > `priceScale` | integer          | No       | composite live/syncing rows only — the resolved output price scale (max over all configured sources' reference records, disabled included), bounding the fractional digits any price on the topic can carry; never padding. It holds until a status rescaled frame on the topic restates it                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| > `qtyScale`   | integer          | No       | composite rows only — the resolved output qty scale; as priceScale                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| > `code`       | string           | No       | composite error rows only — the closed vocabulary clients parse; every validation failure maps to exactly one code. One of `unknown_channel`, `bad_name`, `bad_tier`, `tier_required`, `name_in_use`, `unknown_instrument`, `duplicate_source`, `mixed_base_asset`, `unit_mismatch`, `bad_normalisation`, `bad_depth`, `bad_ladder`, `too_many_sources`, `budget_exceeded`, `malformed`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| > `message`    | string           | No       | supplementary human text naming the offending source or field — never something a client parses                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |

## Push data parameters

| Parameter            | Type             | Required | Description                                                                                                                                                                                                                                                                                                            |
| -------------------- | ---------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event`              | string           | Yes      | `health`                                                                                                                                                                                                                                                                                                               |
| `topic`              | string           | Yes      | `health`                                                                                                                                                                                                                                                                                                               |
| `seq`                | string           | Yes      | the envelope's global sequence, as a decimal string                                                                                                                                                                                                                                                                    |
| `seqTs`              | string           | Yes      |                                                                                                                                                                                                                                                                                                                        |
| `data`               | object           | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > `index`            | object           | Yes      | the pair-domain census (exchange-less, so it sits beside the exchange entries): pairs the gateway tracks, pairs current within the 30 s arrival window, and the expired remainder                                                                                                                                      |
| > > `pairs`          | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > `live`           | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > `expired`        | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > `exchanges`        | array of objects | Yes      | one entry per exchange with any market-data presence (a connection readout, an observed instrument, or a tracked book), in ascending exchange-id order — a member-stable walk                                                                                                                                          |
| > > `exchange`       | string           | Yes      | refdata's exchange name (the natural key); the decimal exchange id if the refdata row has not yet replayed — transient by construction                                                                                                                                                                                 |
| > > `connectivity`   | string           | Yes      | the redundancy-honest connection rollup: full = every known connection live (vacuously full before any readout is known), down = none live, partial = anything between — a duplicated connection absorbing a blip, or a shard down, while its siblings carry the feed. One of `full`, `partial`, `down`.               |
| > > `feeds`          | object           | Yes      | per-feed staleness census over this exchange's instruments, each lane carrying unobserved, live, degraded and timedOut counts. The derivative-scoped lanes (mark/funding/oi) census observed instruments only — their connector-side enablement is not derivable here, so their unobserved buckets are structurally 0. |
| > > > `trade`        | object           | Yes      | instrument counts per staleness class for one feed lane                                                                                                                                                                                                                                                                |
| > > > > `unobserved` | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `live`       | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `degraded`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `timedOut`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > `tob`          | object           | Yes      | instrument counts per staleness class for one feed lane                                                                                                                                                                                                                                                                |
| > > > > `unobserved` | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `live`       | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `degraded`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `timedOut`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > `book`         | object           | Yes      | instrument counts per staleness class for one feed lane                                                                                                                                                                                                                                                                |
| > > > > `unobserved` | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `live`       | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `degraded`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `timedOut`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > `mark`         | object           | Yes      | instrument counts per staleness class for one feed lane                                                                                                                                                                                                                                                                |
| > > > > `unobserved` | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `live`       | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `degraded`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `timedOut`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > `funding`      | object           | Yes      | instrument counts per staleness class for one feed lane                                                                                                                                                                                                                                                                |
| > > > > `unobserved` | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `live`       | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `degraded`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `timedOut`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > `oi`           | object           | Yes      | instrument counts per staleness class for one feed lane                                                                                                                                                                                                                                                                |
| > > > > `unobserved` | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `live`       | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `degraded`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > > `timedOut`   | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > `books`          | object           | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > `total`        | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > `synced`       | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |
| > > > `stale`        | integer          | Yes      |                                                                                                                                                                                                                                                                                                                        |

## Behaviour

Connector topology (shards, connection ordinals) is deliberately not on this wire — it is operations telemetry, and under duplicated-connection redundancy a single dead connection does not mean a degraded feed.