Privacy
Your data flows, explained.
What HA Health Bridge processes, where data is sent, and how you can end access.
Last updated: November 12, 2026.
Responsible provider and contact
The provider responsible for offering HA Health Bridge is Thomas Michel.
Privacy and support contact: ha-health-bridge@michelnet.ch. This policy covers the HA Health Bridge app and the website ha-health-bridge.michelnet.ch.
Purpose and data flows
HA Health Bridge imports measurements you select from your Home Assistant instance into Apple Health on your iPhone. You can optionally export a separate selection of Apple Health data to your Home Assistant instance. You do not need a HA Health Bridge account, and transfers do not use an additional cloud service operated by the app provider. We do not receive a copy of your measurements through the normal transfer process.
For imports, the app retrieves sensor states, relevant attributes and available history from your configured Home Assistant addresses. These may include measurements, units, timestamps, measurement identifiers, and sensor or device names. Your mappings determine which compatible values are written to Apple Health after you grant the relevant Apple Health permission.
For optional exports, the app reads the Apple Health data types you select and permit. Depending on the type, it sends a latest value, daily total, or sleep or workout summary. Your Home Assistant instance also receives information needed to display the sensor, such as data type, unit, time, source name and a randomly generated export-source identifier. This identifier can link transfers from the same export source; it is not an advertising identifier. The app does not upload your entire Apple Health database as a single dataset.
The operator of your Home Assistant instance and any hosting, proxy or onward-integration providers may process the data received there. Its recorder, databases, backups, automations and connected services may retain or forward values. This depends on your Home Assistant configuration and those operators’ practices. Disable Apple Health export if you do not want this sharing.
Storage on your iPhone
The app stores connection settings, selected home Wi-Fi names, sensor mappings, transfer timestamps and reports locally. Its import journal contains information needed to recognize previous transfers, baseline values and, where necessary, incomplete measurements. These records may contain health-related values and timestamps. Previews and loaded sensor lists are also held temporarily in memory.
Local files use iOS file protection. The local app-data directory containing settings and transfer journals is excluded from device backups. Apple Health manages its own data and backup settings independently of this local app directory.
Home Assistant tokens, access and refresh tokens issued at sign-in, and an optional imported PKCS#12 client certificate with its import password are stored in the device Keychain. The app uses device-bound entries and does not enable iCloud Keychain synchronization. After restarting the phone, access requires its first unlock. Importing a certificate does not remove the original file from the location you selected.
Sign-in and connections
Sign-in opens your Home Assistant instance’s HTTPS login page in a temporary web view. That page processes your username, password and any second factor. HA Health Bridge does not store your Home Assistant password. If your instance uses another identity provider, that service’s processing also applies. The temporary web view does not use a persistent shared cookie store.
After sign-in, the app stores tokens and renews access when needed. The session is bound to the server addresses you explicitly save. Alternatively, you can enter a long-lived token or scan its QR code. An optional client certificate is used only over HTTPS for the matching Home Assistant address. The app does not override iOS server-certificate validation.
An external address must use HTTPS. Internal HTTP connections are unencrypted and are allowed only when a saved home Wi-Fi is currently recognized. An installation without Wi-Fi recognition blocks internal HTTP and uses a configured HTTPS address. Automatic transfers depend on iOS and the permissions granted.
Wi-Fi, location, camera and Apple Health permissions
The full app variant can read the current Wi-Fi name and compare it with your locally stored list to select the internal address. iOS requires precise location permission for this, and background recognition may require Always permission. HA Health Bridge does not request geographic coordinates or store location history. The current Wi-Fi name is used only for this selection and is not included in the Apple Health sensor values the app sends. Unrecognized Wi-Fi never enables internal HTTP access.
Camera access is optional and is used to read a token QR code. The app processes its text locally, does not record photos or videos, and does not transmit camera images. The scanner runs only while its view is open and active. A scanned token is stored persistently only when you save the connection.
Apple Health permissions apply separately to data types and transfer directions. Granting permission does not itself transfer measurements. Apple Health does not reveal whether read access was denied, so an empty result may also mean that no data is available. You can change permissions at any time in Apple Health or iOS settings.
No advertising or usage analytics
The app is free, contains no advertising and uses no analytics, tracking or advertising SDKs. Transfer reports are for your own review in the app and are not automatically sent to us. Apple may provide its own App Store or diagnostic services according to your system permissions; these are governed by Apple’s terms and your device configuration.
Retention, withdrawal and deletion
Saved settings, journals and credentials remain available for the connection and transfer recognition until you change or delete them using the relevant app functions. The complete local journal has no automatic retention deadline. A transfer lookback setting is not a deletion period. Temporary preview values are discarded when replaced by a new preview, on reset or when the app terminates.
You can disable individual mappings or exports, turn off automatic transfers, and withdraw Apple Health, camera or location permissions. This limits the corresponding future access; it does not retroactively remove data already transferred.
Disconnect Home Assistant connection removes the locally saved sign-in and client certificate, pauses automatic transfers and disables Apple Health export. Configuration and mappings remain. Where available, the app also attempts to revoke an OAuth session at the server. Local deletion does not confirm a successful server-side revocation. If necessary, remove a long-lived token or remaining session separately in your Home Assistant user profile.
Delete local app data removes this device’s settings, transfer journals, local credentials, stored client certificate and export-source identifier after confirmation. Read the in-app warning first: setting up the app again may create new identifiers and offer previously transferred measurements for import as a new data source. Deleting local data does not delete Apple Health records already written, or Home Assistant sensors, recorder history or backups. Remove these separately in Apple Health or your Home Assistant environment if needed.
Do not rely solely on uninstalling the app to remove credentials: iOS Keychain entries can survive uninstallation. Use the disconnect or deletion function before uninstalling, and also revoke tokens at the server when you need to end access reliably.
Website and technical operation
The website https://ha-health-bridge.michelnet.ch is a static site built with Hugo and operated by the provider. When you load a page, the web server processes technically necessary connection and request data, such as the IP address, requested URL, time, browser identification and other request metadata. This data is used to deliver, maintain, secure and troubleshoot the website. This website does not receive measurements from your app connection.
The static pages contain no analytics scripts, advertising, embedded third-party content, external fonts or contact forms of their own. Their page code sets no cookies and uses no browser storage. The web server’s technical processing of requests is separate from this.
Technical data may be recorded in web server and security logs. Their scope and retention depend on the server infrastructure, its configuration and what is necessary for operation, security, troubleshooting and legal obligations. No exclusively European processing location or single fixed log-retention period is promised.
Support, your rights and changes
Send support and privacy requests to ha-health-bridge@michelnet.ch. We process your sender address, message and information you voluntarily include to respond to your request. Delivery uses ordinary email infrastructure. Support messages are deleted once the request has been resolved, unless they are needed for related follow-up, legal claims or statutory retention duties. No single fixed retention period applies. Do not send tokens, passwords, private keys or unredacted health data.
Normal app use does not give us a copy of your health data, so we cannot retrieve or delete it from your Apple Health or Home Assistant environment. Contact your Home Assistant operator about data held there; use the functions described above for local app data.
The processing described serves the app functions you select, responses to your requests and secure website operation. Where required by applicable data-protection law, the basis is your consent, provision of the requested service, legitimate operational and security interests, or legal duties. You can withdraw Apple Health permissions and other consent for the future at any time.
Subject to the applicable data-protection law, you may request access to your personal data, correction of inaccurate data, deletion or restriction of processing, and object to processing. Other rights, such as obtaining a copy or data portability, apply where the relevant law provides them. You may also contact the data-protection supervisory authority competent for your concern. Use the contact above for requests to us; exercise rights concerning other operators directly with them.
This policy will be updated with a new date when data-processing practices change.