API local
Una pequeña API HTTP en tu red para Home Assistant, Node‑RED, scripts y herramientas de instalador.
Básico
http://iconet.local/api/…
Authorization: Bearer ico_…
Crea el token en Ajustes › Access (An integration or app) con los permisos que necesites. Todas las llamadas son JSON, solo en la red local y quedan registradas en Activity.
Dispositivos
GET /api/areas estancias Read devices
GET /api/entities todos los dispositivos y su estado Read devices
GET /api/entities/{id} un dispositivo Read devices
POST /api/command actuar sobre un dispositivo Control devices
Un dispositivo lleva id, entityId (un alias legible como light.kitchen), name, domain (light, cover, climate, lock, sensor, switch…), area, capabilities y state. Para actuar, envía el id del dispositivo y una de sus capacidades:
POST /api/command
{ "id": "…", "capability": "on_off", "value": true }
Las capacidades siguen lo que informa el dispositivo: on_off (true/false), brightness (0–100), position y tilt (0–100 para persianas), setpoint (temperatura objetivo), hvac_mode, lock (lock/unlock), activate (escenas y botones).
Eventos en vivo
GET /api/events server‑sent events Live events
Un flujo de cambios de estado según ocurren. Apunta un EventSource a él y mantén la cabecera.
Automatizaciones
GET /api/workflows listar Read workflows
GET /api/workflows/{id} una automatización Read workflows
PUT /api/workflows/{id} crear o editar (activar, desactivar) Change workflows
DELETE /api/workflows/{id} borrar Change workflows
POST /api/workflows/{id}/run ejecutar ahora Change workflows
GET /api/workflows/log ejecuciones recientes Read workflows
Una automatización es un documento JSON con name, enabled y su flow (nodos y aristas). La forma más fácil de acertar con la estructura es crear una en la app y leerla con GET.
Historial y tiempo
GET /api/series?ids=…&keys=…&since=…&until=…&res=… Read trends
GET /api/insights Read trends
GET /api/weather Read trends
series devuelve series temporales de los dispositivos y claves que pidas; insights los totales de energía de los rangos actuales; weather la previsión para la ubicación de la pasarela.
Pruébalo
curl -H "Authorization: Bearer ico_…" http://iconet.local/api/entities
Home Assistant
Un rest_command con la misma cabecera te da cualquier dispositivo desde una automatización de HA; Ajustes › MQTT es el camino más completo (todos los dispositivos descubiertos automáticamente).