/api/v1/devices/list
Получить список устройств о которых знает сервер
{ "status": "ok", "devices": [ { "id": 12, "device": { "device_name": "Relay 1", "device_type": "relay", "firmware_version": "1.0.3", "device_id": "ecf0a1b5c9d74f9a8e294c1f67b0a8b9", "device_ip": "192.168.1.13" }, "alias": "alias_name_like_variable", "name": "Реле помпы септика", "description": "Управляет помпой, должно периодически включаться и выключаться", "connection_state": "active", // active | lost "last_contact": "2025-07-28 18:35", }, ... ] }
/api/v1/devices/scan
Поиск новых устройств в сети
{ "status": "ok", "devices": [ { "device_name": "Relay 1", "device_type": "relay", "firmware_version": "1.0.3", "device_id": "ecf0a1b5c9d74f9a8e294c1f67b0a8b9", "device_ip": "192.168.1.42" }, ... ] }
/api/v1/devices/add_new
Добавление нового устройства
{ "device_ip": "192.168.1.43", "device_id": "ecf0a1b5c9d74f9a8e294c1f67b0a8b9", "alias": "alias_name_like_variable", // Must be uniq "name": "Реле помпы септика", "description": "Управляет помпой, должно периодически включаться и выключаться" }
{ "status": "ok", "device": { "id": 12, "alias": "alias_name_like_variable", "device": { "device_name": "Relay 1", "device_type": "relay", "firmware_version": "1.0.3", "device_id": "ecf0a1b5c9d74f9a8e294c1f67b0a8b9", "device_ip": "192.168.1.13" }, "name": "Реле помпы септика", "description": "Управляет помпой, должно периодически включаться и выключаться", "connection_state": "active", // active | lost "last_contact": "2025-07-28 18:35" } }
{ "status": "error", "field": "alias", // alias | name | device_ip | device_id "message": "Alias already exists" // "Name can`t be empty" | "Device not found by IP" | "Wrong device ID" }
/api/v1/devices/id/{{id}}
OR GET /api/v1/devices/alias/{{alias}}
Получить статус по отдельному девайсу
{ "status": "ok", "device": { "id": 12, "alias": "...", "device": { "device_name": "Relay 1", "device_type": "relay", "firmware_version": "1.0.3", "device_id": "ecf0a1b5c9d74f9a8e294c1f67b0a8b9", "device_ip": "192.168.1.13" }, "name": "Реле помпы септика", "description": "Управляет помпой, должно периодически включаться и выключаться", "connection_state": "active", // active | lost "last_contact": "2025-07-28 18:35" } }
{ "status": "error", "message": "Device not exists" // "Permission error" }
/api/v1/devices/alias/{{alias}}/status
OR GET /api/v1/devices/id/{{id}}/status
Получить отдельный девайс
{ "status": "ok", "device": { "id": 12, "alias": "...", "device_status": { ... } } }
/api/v1/devices/id/{{id}}/action
OR POST /api/v1/devices/alias/{{alias}}/action
Выполнить действие для отдельного девайса
{ "action": "action_name", "params": {...} }
В ответе вернётся непосредственно ответ от устройства
{ "status": "ok", "device": { "id": 12, "alias": "alias_name_like_variable", "response": { ... } } }
{ "status": "error", "message": "Device does not support this action or params" // "Permission error" }
/api/v1/devices/id/{{id}}/forget
OR GET /api/v1/devices/alias/{{alias}}/forget
Забыть выбраный девайс. Сам девайс при этом будет ресетнуть
/api/v1/devices/id/{{id}}/reboot
OR GET /api/v1/devices/alias/{{alias}}/reboot
Принудительно перезагрузить устройство