Send Apple Health Data Directly to Home Assistant
HealthSave Pro can send Apple Health data directly to your Home Assistant instance. Use the native integration with REST States to update sensor.healthsave_* entities. You do not need an additional receiving server or a HealthSave-hosted intermediary.
Background delivery is best-effort. iOS may delay it for hours. This is not a real-time stream or a medical or safety system.
How the direct integration works
The flow is: iPhone (Apple Health) → HealthSave Pro → your configured Home Assistant endpoint. HealthSave sends JSON POST requests to /api/states/<entity> using your Home Assistant token. Your health data never touches our servers.
Your iPhone must be able to reach that endpoint. It can be on your local network or securely reachable remotely; the integration is not LAN-only. Use HTTPS for remote access and protect your token. You control your Home Assistant instance and its network exposure.
Which integration path?
This guide covers direct REST States delivery. The other routes are optional and have their own setup:
| Path | Best for | What you run |
|---|---|---|
| Direct HA push (this guide) | sensor.healthsave_* entities without an extra receiver | Home Assistant |
| Observatory hub | A separate route for history, dashboards, and API access | The optional HealthSave Observatory server, which is source-available |
| MQTT | MQTT-connected systems and Node-RED | A broker and a compatible bridge or community backend |
HealthSave Observatory is not required for the direct integration. MQTT is a separate route, not the transport used by REST States.
What you need
- HealthSave Pro for Home Assistant integration. Pro is a one-time purchase with Family Sharing and no subscription; check the App Store for current pricing.
- Your own Home Assistant instance and its base URL, reachable from your iPhone.
- A Home Assistant Long-Lived Access Token for REST States delivery. Use the official Home Assistant token instructions. Treat it as a credential and do not share it.
- Apple Health data and permission to read it. Available metrics depend on your devices and the permissions you grant.
Setup: direct REST States delivery
- Open HealthSave → Settings → Integrations → Home Assistant and enable the integration.
- Enter your Home Assistant URL: the base address your iPhone can reach, without /api/ or a sensor path.
- Set Delivery to REST States and enter your Long-Lived Access Token from Home Assistant. Keep this token private.
- Tap Test Home Assistant. This checks the authenticated GET /api/ connection; it does not send a sensor update.
- Check Last push and Last background wake in the integration's delivery status, then verify a sensor.healthsave_* entity in Home Assistant. A successful connection test alone is not delivery proof.
For example, a base URL can look like https://automation.example. Enter your real Home Assistant address, not a HealthSave Observatory URL. The connection test uses your token; it does not verify that health samples were read or delivered.
Verify delivery, not just connection
Test Home Assistant checks whether the authenticated GET /api/ succeeds. Actual sensor delivery uses JSON POST /api/states/<entity> requests. A successful test does not mean a sensor changed.
In HealthSave, inspect Last push and Last background wake. Then inspect the relevant sensor.healthsave_* entity in Home Assistant and check its value and timestamps. A recent push time is not necessarily a recent measurement: point readings can include measured_at, while last_updated records the push time.
Background timing and troubleshooting
Apple Health updates and iOS background wakes are not a fixed schedule. Delivery can be delayed for hours, especially when the app cannot read health data while the phone is locked. Opening the app does not guarantee immediate delivery. Check the actual sensor before depending on its value.
- Connection test fails: check the URL, your iPhone's access to it, and the token. A connection test and sensor delivery are different checks.
- Connection succeeds but a sensor is missing or old: confirm the integration is enabled, HealthSave has read permission, and the metric has data. Compare Last push and Last background wake with the entity in Home Assistant.
- An entity shows unavailable: inspect Home Assistant's configuration and the entity's timestamps before changing automation rules. Do not assume that a quiet period proves a delivery failure.
For other sync issues, see the troubleshooting guide. An older sensor value is not suitable for an urgent alert.
Example: an optional, freshness-checked scene
You could use a step-count entity to choose a nonessential lighting scene. Check that the entity exists and is recent enough for your use case first; if it is missing or stale, keep your normal scene. Do not trigger a medical action or an emergency response from these values.
Free vs Pro
| Capability | Tier |
|---|---|
| On-device dashboard, CSV/JSON export | Free |
| Background sync to your server | Pro |
| Home Assistant integration | Pro |
| REST API access | Pro |
Pro is a one-time purchase, with no subscription. See the App Store for current pricing.
Beyond the direct integration: MQTT and Node-RED
For a broker-based setup, follow the Apple Health to MQTT guide. It is a separate route with a broker and compatible bridge or backend. Adding MQTT does not remove iOS background scheduling limits.
Honest limits
- No guaranteed freshness. iOS controls background execution and may delay delivery for hours.
- You operate Home Assistant. The direct route needs no additional receiving server, but your configured endpoint must be reachable.
- Pro required. One-time purchase, no subscription; current pricing is in the App Store.
- iOS and Apple Health. HealthSave can only read data available to it in HealthKit.
- Informational use only. Accuracy depends on the source device; this is not a medical or safety system.
FAQ
Does HealthSave send my Apple Health data through a cloud to reach Home Assistant?
No. The direct integration sends data from your iPhone to your configured Home Assistant endpoint. Your health data never touches our servers. You control the endpoint and its network exposure.
How fresh are the Home Assistant entities?
There is no guaranteed update interval. iOS decides when background work runs and may delay delivery for hours. A recent push can still contain an older measurement. Check the sensor's timestamps and do not use it for time-critical, medical, or safety-critical decisions.
Does Test Home Assistant prove that my sensors updated?
No. Test Home Assistant checks the authenticated GET /api/ connection. Sensor delivery uses JSON POST requests to /api/states/<entity>. Check Last push and Last background wake, then verify the entity and its timestamps in Home Assistant.
Is the Home Assistant integration free?
No. Home Assistant integration, background sync, and REST API access are Pro features. Pro is a one-time purchase with Family Sharing and no subscription. Check the App Store for current pricing. The on-device dashboard and CSV/JSON export are free.
Do I need HealthSave Observatory or MQTT for the direct integration?
No. REST States sends data directly to Home Assistant, with no additional receiving server. HealthSave Observatory is an optional source-available server for a separate self-hosted route. MQTT is another separate route, not a requirement for direct REST States delivery.
For medication exports, see the medications export guide. Do not rely on a health-data automation as your only medication reminder.
HealthSave is not a medical device. It is for informational purposes only and does not diagnose, treat, cure, or prevent any disease or condition. Do not build medical or safety-critical automations on this data; the accuracy of health data depends on your wearable device and its sensors.
Related guides
- Backends that speak HealthSave, the optional hub, community servers, and how to build your own.
- Publish Apple Health metrics over MQTT, a separate MQTT/Node-RED route.
- Put your Apple Health history into Grafana, dashboards through a separate self-hosted route.
- Build a custom REST API over your Apple Health data.
- Back up 10+ years of history.
- Apple Health data for self-hosters.
- Apple Health's export is unusable XML, get clean CSV.
- HealthSave FAQ.
Get HealthSave
Start with the free dashboard and CSV/JSON export. Unlock Home Assistant integration, background sync, and REST API access with a one-time Pro purchase. Check the App Store for current pricing; there is no subscription.
Download HealthSave on the App Store