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

# Subscription Status

> Server-pushed subscription status response to subscribe, unsubscribe, or exchange-initiated unsubscribe

<div className="api-banner">
  <span className="api-protocol ws">WSS</span>
  <span className="api-detail">ws.kraken.com</span>
  <span className="api-tag">subscriptionStatus</span>
</div>

Subscription status response to subscribe, unsubscribe or exchange-initiated unsubscribe. This message is returned for every subscribe or unsubscribe request across all channels.

## Payload

<ResponseField name="event" type="string">
  Value: `subscriptionStatus`
</ResponseField>

<ResponseField name="channelName" type="string" required>
  <span className="field-attr">One of:</span> `book`, `ohlc`, `openOrders`, `ownTrades`, `spread`, `ticker`, `trade`, `*`

  The name of the channel.
</ResponseField>

<ResponseField name="pair" type="string">
  <span className="field-attr">Example:</span> `"BTC/USD"`

  The currency pair associated with this subscription.
</ResponseField>

<ResponseField name="status" type="string">
  <span className="field-attr">One of:</span> `subscribed`, `unsubscribed`, `ok`, `error`
</ResponseField>

<ResponseField name="subscription" type="object">
  <Expandable title="properties" defaultOpen>
    <ResponseField name="depth" type="integer">
      <span className="field-attr">Condition:</span> 'book' channel only

      The book depth.
    </ResponseField>

    <ResponseField name="interval" type="integer">
      <span className="field-attr">Condition:</span> 'ohlc' channel only

      The ohlc interval.
    </ResponseField>

    <ResponseField name="maxratecount" type="integer">
      The rate counter.
    </ResponseField>

    <ResponseField name="name" type="string" required>
      <span className="field-attr">One of:</span> `book`, `ohlc`, `openOrders`, `ownTrades`, `spread`, `ticker`, `trade`, `*`

      The name of the channel.
    </ResponseField>

    <ResponseField name="token" type="string">
      <span className="field-attr">Condition:</span> Authenticated requests only

      The authentication token associated with the request.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="reqid" type="integer">
  Client originated identifier for the request that initiated this response.
</ResponseField>

<ResponseField name="errorMessage" type="string">
  <span className="field-attr">Condition:</span> Unsuccessful requests only

  Error message for unsuccessful requests.
</ResponseField>

<ResponseField name="channelID" type="integer" deprecated>
  <span className="field-attr">Deprecated:</span> use `channelName` and `pair`

  Channel ID on successful subscription, applicable to public messages only.
</ResponseField>

<Panel>
  <CodeGroup>
    ```json Subscribed: Ticker theme={null}
    {
      "channelID": 10001,
      "channelName": "ticker",
      "event": "subscriptionStatus",
      "pair": "XBT/EUR",
      "status": "subscribed",
      "subscription": {
        "name": "ticker"
      }
    }
    ```

    ```json Unsubscribed: OHLC theme={null}
    {
      "channelID": 10001,
      "channelName": "ohlc-5",
      "event": "subscriptionStatus",
      "pair": "XBT/EUR",
      "reqid": 42,
      "status": "unsubscribed",
      "subscription": {
        "interval": 5,
        "name": "ohlc"
      }
    }
    ```

    ```json Subscribed: ownTrades theme={null}
    {
      "channelName": "ownTrades",
      "event": "subscriptionStatus",
      "status": "subscribed",
      "subscription": {
        "name": "ownTrades"
      }
    }
    ```

    ```json Error theme={null}
    {
      "errorMessage": "Subscription depth not supported",
      "event": "subscriptionStatus",
      "pair": "XBT/USD",
      "status": "error",
      "subscription": {
        "depth": 42,
        "name": "book"
      }
    }
    ```
  </CodeGroup>
</Panel>
