Viele Smart-Home-Anwender möchten externe Datenquellen in Home Assistant integrieren, etwa Wetterdaten, Energiepreise oder Statuswerte von Webdiensten. RESTful Sensoren bieten dafür eine flexible Lösung, indem sie Daten aus REST-APIs abrufen und für Automatisierungen oder Dashboards bereitstellen. Doch gerade bei der Konfiguration von Templates und der Fehlerbehebung gibt es häufig Unsicherheiten.
RESTful Sensoren in Home Assistant: Einsatz und Vorteile
RESTful Sensoren ermöglichen es, beliebige Daten von externen REST-APIs in Home Assistant zu integrieren. Das ist besonders nützlich, wenn Geräte oder Dienste keine direkte Home Assistant-Unterstützung bieten, aber eine API bereitstellen. Die abgerufenen Daten lassen sich anschließend für Automatisierungen, Visualisierungen oder Benachrichtigungen nutzen.
Das Prinzip: Der Sensor sendet in regelmäßigen Abständen HTTP-Anfragen an eine definierte API-URL. Die Antwort, meist im JSON-Format, wird mithilfe von Templates ausgewertet. So können gezielt einzelne Werte extrahiert und als Sensorwert in Home Assistant angezeigt werden.
Einrichtung und Fehlerbehebung, Schritt für Schritt
Die Konfiguration eines RESTful Sensors erfolgt in der Datei configuration.yaml. Ein einfaches Beispiel sieht so aus: sensor:
, platform: rest
name: Beispiel Sensor
resource: https://api.beispiel.de/data
value_template: "{{ value_json.wert }}" Hierbei ist resource die API-URL und value_template das Template zur Extraktion des gewünschten Werts. Die genaue Struktur des Templates hängt vom Aufbau der API-Antwort ab.
Fehler entstehen häufig durch falsche Template-Syntax oder unerwartete Datenstrukturen. Das offizielle Home Assistant RESTful Sensor Repository bietet eine ausführliche Dokumentation zur Konfiguration und zu unterstützten Optionen. Für komplexere Auswertungen empfiehlt sich der Einsatz von Jinja2-Templates, wie in der Home Assistant Dokumentation beschrieben. Bei Problemen hilft es, die API-Antwort mit einem Tool wie curl oder Postman zu prüfen und das Template schrittweise zu testen.
