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

> ## Agent Instructions
> The WebSocket at wss://mobs.ws/v1/ws/metar is the product. The HTTP API is a fallback for backfill only.
> Follow /agents.md for connect, auth, fields, heartbeat, reconnect, and dedupe. Never log MOBS_TOKEN or a URL that includes ?token=.

# Rate limits

> Limits per API key and server-wide.

| Limit | Default |
| - | - |
| Sockets per API key | 5 |
| HTTP requests per API key | 120 per minute, shared across `/v1/metar*` |
| Distinct airports per API key | 100, across all its sockets; an airport on two sockets counts once |
| Sockets server-wide | 256 |

> [!WARNING]
>
> The socket and HTTP request limits per API key are To be confirmed · D6.

Over a limit: 429 with Retry-After. With 27 stations the airport cap cannot be reached today.

## Sockets

A sixth socket is refused before the upgrade:

```json Response body theme={"dark"}
{"error":"rate_limited",
 "message":"too many connections for this API key",
 "retry_after_s":30}
```

When the server-wide cap is reached, the upgrade is refused with 503.

## Airports

Going over the airport cap is an error with code `too_many_airports`: HTTP 422 on the handshake, an error message on an open socket.

> [!NOTE]
>
> Placeholder · A6

> [card] [Next: Errors](https://docs.mobs.ws/errors.md)
>
> HTTP status codes and JSON error bodies.


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