My WTH moment is when I have devices with what I thought are well-supported Integrations suddenly breaking because the manufacturer has perhaps suddenly closed off the secret access to their mobile app API, or changed how encryption works on the end device so local access no longer works.
I’d like all device integrations to be required to explicitly state and be honest about their level of manufacturer support so I can make informed decisions about devices I purchase. I think a tiered system with categories like:
-
Fully supported. This integration is designed to work with Home Assistant. (i.e. Frigate NVR, ESP Home)
-
Supported Cloud API. The manufacturer supports the use of, and offers public Cloud APIs for the HA Integration to use. (Tuya Cloud, Samsung SmartThings?)
-
Supported local API. As above, but with direct device control.
-
Tolerated Cloud API. The integration uses an unofficial or mobile app API, but the manufacturer is publicly supportive of the use of their API in HA. (TP-Link Tapo?)
-
Tolerated local API.
-
Reverse-engineered Cloud API. The integration uses a mobile app API and the manufacturer is unaware of its use for Home Assistant, and may restrict or block access at any time.
This should be the default category for all integrations using Cloud APIs. -
Reverse-engineered local API. The integration has a well-understood local API, but the manufacturer has sometimes taken steps to remove access (Local Tuya)
-
Unauthorised Cloud API.
-
Unauthorised local API.
(Most vehicle integrations are probably in these two)