> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kraken.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Market Data Snapshot

> Public channel for streaming real-time bid/offer levels for a security.

<Note>Public channel. Connect to: `wss://wss.prime.kraken.com/ws/v1`</Note>

Request stream of MarketDataSnapshot messages. To stream security pricing with real-time bid/offer levels.

## Subscribe Request

<Tabs>
  <Tab title="Subscribe Schema">
    <ParamField path="reqid" type="number" required>
      Request ID - will be echoed back in the response structure.
    </ParamField>

    <ParamField path="type" type="string" required>
      Request type. Value: `subscribe`
    </ParamField>

    <ParamField path="streams" type="array" required>
      Array containing the MarketDataSnapshot stream configuration.

      <Expandable title="properties">
        <ParamField path="name" type="string" required>
          Subscription name. Value: `MarketDataSnapshot`
        </ParamField>

        <ParamField path="Symbol" type="string" required>
          Security to request (e.g. `BTC-USD`).
        </ParamField>

        <ParamField path="Throttle" type="string">
          Optional throttle duration for updates, defaults to configured MinMarketDataThrottle. Valid time units are "ns", "us", "ms", "s".
        </ParamField>

        <ParamField path="PriceIncrement" type="string">
          Price increment for levels to enable price bucketing.
        </ParamField>

        <ParamField path="Depth" type="number">
          Maximum number of bid/offer levels to stream prices for.
        </ParamField>

        <ParamField path="SizeBuckets" type="array">
          A list of sizes to return price levels for; defaults to configured Security SizeBuckets.
        </ParamField>
      </Expandable>
    </ParamField>
  </Tab>

  <Tab title="Example">
    ```json theme={null}
    {
      "reqid": 5,
      "type": "subscribe",
      "streams": [
        {
          "name": "MarketDataSnapshot",
          "Symbol": "BTC-USD"
        }
      ]
    }
    ```
  </Tab>
</Tabs>

## Response

<Tabs>
  <Tab title="Response Schema">
    <ParamField path="reqid" type="number" required>
      A number that relates this response to a request.
    </ParamField>

    <ParamField path="type" type="string" required>
      The type of message sent.
    </ParamField>

    <ParamField path="ts" type="string" required>
      An ISO-8601 UTC string of the form `2019-02-13T05:17:32.000000Z`.
    </ParamField>

    <ParamField path="initial" type="boolean">
      If this is initial data for a request, the initial flag will be set.
    </ParamField>

    <ParamField path="seqNum" type="number" required>
      The sequence number for this response per request.
    </ParamField>

    <ParamField path="action" type="string">
      "Update" or "Remove" - tells the client if the given entity should be removed or added/updated.
    </ParamField>

    <ParamField path="data" type="array" required>
      Array of MarketDataSnapshot data.

      <Expandable title="properties">
        <ParamField path="Timestamp" type="string" required>
          Timestamp of update in ISO-8601 UTC format.
        </ParamField>

        <ParamField path="Symbol" type="string" required>
          Security for update.
        </ParamField>

        <ParamField path="Status" type="string" required>
          Status of update. Possible values: `Online`, `Offline`
        </ParamField>

        <ParamField path="Bids" type="array" required>
          Full list of Bids.

          <Expandable title="properties">
            <ParamField path="Price" type="string" required>
              Limit price of the level.
            </ParamField>

            <ParamField path="Size" type="string" required>
              Size on this level.
            </ParamField>
          </Expandable>
        </ParamField>

        <ParamField path="Offers" type="array" required>
          Full list of Offers.

          <Expandable title="properties">
            <ParamField path="Price" type="string" required>
              Limit price of the level.
            </ParamField>

            <ParamField path="Size" type="string" required>
              Size on this level.
            </ParamField>
          </Expandable>
        </ParamField>
      </Expandable>
    </ParamField>
  </Tab>

  <Tab title="Example">
    ```json theme={null}
    {
      "reqid": 5,
      "type": "MarketDataSnapshot",
      "ts": "2026-06-17T11:47:35.341672Z",
      "initial": true,
      "seqNum": 1,
      "data": [
        {
          "Timestamp": "2026-06-17T11:47:35.340139Z",
          "Symbol": "BTC-USD",
          "Status": "Online",
          "Bids": [
            {
              "Price": "64805.0",
              "Size": "0.50000000"
            },
            {
              "Price": "64805.0",
              "Size": "2.50000000"
            }
          ],
          "Offers": [
            {
              "Price": "64807.9",
              "Size": "0.50000000"
            },
            {
              "Price": "64807.9",
              "Size": "2.50000000"
            }
          ]
        }
      ]
    }
    ```
  </Tab>
</Tabs>
