# IoT API Endpoints ## Публичные (без auth) | Метод | Путь | Описание | |-------|------|----------| | GET | `/console` | IoT Консоль (HTML SPA) | | GET | `/iot-admin` | Страница администратора (HTML) | ## Защищённые JWT (/v1/) | Метод | Путь | Описание | |-------|------|----------| | POST | `/v1/namespaces/{ns}/iot/devices` | Создать IoT устройство | | GET | `/v1/namespaces/{ns}/iot/devices` | Список устройств (без паролей) | | GET | `/v1/namespaces/{ns}/iot/devices/{name}` | Устройство + MQTT password | | DELETE | `/v1/namespaces/{ns}/iot/devices/{name}` | Удалить устройство | | PATCH | `/v1/namespaces/{ns}/iot/devices/{name}` | Обновить (enabled) | | GET | `/v1/namespaces/{ns}/iot/telemetry` | Телеметрия (?device=&limit=) | ## Внутренние (без JWT, только из кластера) | Метод | Путь | Описание | |-------|------|----------| | POST | `/internal/mqtt/auth` | MQTT auth для EMQX | | POST | `/internal/mqtt/acl` | MQTT ACL для EMQX | ## Администратор (ADMIN_STATS_TOKEN) | Метод | Путь | Описание | |-------|------|----------| | GET | `/iot-admin/stats` | JSON статистика (PG, Kafka lag, pods) | --- ## Обновление 2026-04-12: admin stats → SQS > Kafka lag заменён на SQS queue stats. Endpoint тот же, формат ответа изменён. ### `/iot-admin/stats` — актуальный формат ответа ```json { "sqs": { "queue_url": "http://us-east-1.goaws.com:4100/t-96afe7e9f781f6ca/iot-telemetry", "approximate_messages": "0", "approximate_messages_not_visible": "0" }, "sqs_consumer_pods": [...], "pg_tenants": [...] } ``` Вместо `kafka_lag` теперь `sqs.approximate_messages` — количество сообщений в очереди, ожидающих обработки.