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

# Errors

WebSocket failures arrive as frames, not HTTP status codes. There are two kinds.

An error on one subscription does not close the connection or affect other subscriptions.

## Protocol Errors

Failures not tied to a single subscription arrive on the `error` channel:

```json theme={null}
{ "channel": "error", "data": { "message": "rate limit exceeded" } }
```

| Message | Cause |
| - | - |
| `invalid JSON` | The command is not valid JSON |
| `rate limit exceeded` | More than 10 commands per second |
| `unknown method` | `method` is not `subscribe` or `unsubscribe` |

## Subscription Errors

Failures tied to one subscription arrive on `subscriptionResponse`, with `error` attached to the
echoed subscription:

```json theme={null}
{
  "channel": "subscriptionResponse",
  "data": { "type": "l2Book", "coin": "BAD", "error": "invalid coin format: must be BASE/QUOTE" }
}
```

| Error | Cause |
| - | - |
| `unknown subscription type: ...` | `type` is not a recognized subscription type |
| `coin required` | A market type was missing `coin` |
| `invalid coin format: must be BASE/QUOTE` | `coin` is not a two-part symbol |
| `user address required` | A user type was missing `user` |
| `invalid user address` | `user` is not valid bech32 or hex |
| `ttl must be non-negative` | A negative `ttl` |
| `subscription limit exceeded` | The client already holds 100 subscriptions |
| `not yet supported` | A deferred type |
| `not applicable for spot` | A type unavailable on `/ws` |
| `not applicable for perpetuals` | A type unavailable on `/ws/perp` (Testnet-Only) |
| `invalid or missing candle interval` | Missing or unsupported `interval` |
| `nSigFigs not yet supported` | `nSigFigs` was set |
| `mantissa not yet supported` | `mantissa` was set |
| `aggregateByTime not yet supported` | `aggregateByTime` was set |

## Rejected Types

`/ws` accepts Spot channels including `userTwapHistory`. Perpetual-specific types such as `clearinghouseState` and `userFundings` are rejected as `not applicable for spot`; use [`/ws/perp`](https://docs.aultblockchain.com/dex-api/websocket/perpetuals) (Testnet-Only) for those channels.
Other unregistered channels are rejected, not silently subscribed.

## Silent Failure

One case produces no error at all. A well-formed but non-existent `coin`, for example `FOO/BAR`,
passes validation because the WebSocket layer has no market registry. The subscription succeeds and
never receives data, and snapshot types return an empty payload.

Validate symbols against
[Markets & Currencies](https://docs.aultblockchain.com/dex-api/rest/markets-and-currencies.md) before subscribing.

## REST Errors

REST responses use a different shape. See [Errors](https://docs.aultblockchain.com/dex-api/getting-started/errors.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.