Home Assistant integration
Install the official HACS custom integration for automatic entities, or wire manually below.
Product page: thermaltrace.dev/integrations/home-assistant
ThermalTrace works with Home Assistant via HTTPS push ingest (recommended), the MQTT-over-HTTP bridge, share-link polling, or inbound webhooks for automations.
Official HACS integration
- Add custom repo in HACS:
https://github.com/doodersrage/thermaltrace-home-assistant - Install ThermalTrace
- Create a live share link under Dashboard → Share (Free includes one family live link; Pro adds history/metrics scopes)
- Add integration in HA and paste the share token
Creates sensors and binary sensors automatically; optional inbound webhook + push ingest keys enable services (Pro).
REST sensor (manual)
If you publish a share link, expose readings as a REST sensor:
sensor:
- platform: rest
resource: https://thermaltrace.dev/api/share/YOUR_TOKEN/latest
name: Garage temperature
value_template: "{{ value_json.readings[0].value_num | float(0) }}"
unit_of_measurement: "°F"
scan_interval: 300Adjust the template for your probe keys. Share links are read-only and safe to poll from HA.
Push from ESPHome or HA → ThermalTrace
Point ESPHome api/http_request or an HA rest service call at your device ingest URL:
rest:
- resource: https://thermaltrace.dev/api/ingest/YOUR_DEVICE_KEY
method: POST
headers:
Content-Type: application/json
payload: '{"temp1": {{ states("sensor.garage_temp") | float }}, "humidity1": {{ states("sensor.garage_humidity") | float }}}'Create the push device and copy the ingest key from Dashboard → Devices.
MQTT bridge (keep Mosquitto local)
If probes already publish to Mosquitto, mirror selected topics over HTTPS:
curl -X POST https://thermaltrace.dev/api/ingest/mqtt \
-H "Authorization: Bearer YOUR_DEVICE_KEY" \
-H "Content-Type: application/json" \
-d '{"topic":"garage/temp","payload":"42.5"}'See MQTT bridge recipe and the downloadable Node-RED flow.
Inbound webhooks (snooze, vacation, status)
Pro plans can call signed inbound webhooks from HA automations:
automation:
- alias: Snooze ThermalTrace freeze alerts during door work
trigger:
- platform: state
entity_id: cover.garage_door
to: "open"
action:
- service: rest_command.thermaltrace_snoozeRegister the webhook URL and secret under Dashboard → Alerts. Full action list: POST /api/webhooks/inbound in openapi.yaml.
Polling schedule
Pull feeds on ThermalTrace are polled every 15 minutes (:00, :15, :30, :45 UTC). Push ingest updates live readings immediately. For near-real-time HA dashboards, push from HA or ESPHome rather than relying on pull.