Automatic background sync
HealthKit change delivery, hourly or daily scheduled catch-up, and a sync when you open the app.
HealthSync reads the HealthKit data you choose on your iPhone and keeps it in sync with a private backend, so your dashboards, databases, and AI agents always have fresh health data, without handing it to a third-party cloud.
How it works
Apple does not offer a cloud API for Health data. HealthSync is the missing bridge: it runs on your iPhone, where the data lives, and delivers it to an endpoint you own.
You grant read-only HealthKit access for the exact data types you want.
New and deleted samples are normalized to JSON and queued safely in local storage.
Batches upload over HTTPS to your backend or a private hosted workspace.
Dashboards, data warehouses, and AI agents read from a source you control.
Features
HealthSync handles HealthKit permissions, background delivery, retries, and deletions so you can focus on what you build with the data.
HealthKit change delivery, hourly or daily scheduled catch-up, and a sync when you open the app.
Pull historical Apple Health data for any range, or re-sync the last 24 hours with one tap.
Failed uploads stay queued on the device. Deterministic record IDs make retries duplicate-free.
When a sample is deleted in Apple Health, HealthSync sends the deletion so your copy stays accurate.
Start instantly with a private hosted workspace, or point the app at your own FastAPI and Postgres stack.
Hosted workspaces include a read-only agent endpoint with daily summaries designed for LLM tools.
What syncs
Toggle categories or individual types in the app. HealthSync only requests read permission for what you enable, and you can change it any time.
See how data is exportedUse cases
Feed Grafana, Metabase, or a custom app with live Apple Health data stored in your own Postgres.
Give an agent a scoped, read-only token to your health history instead of uploading export files.
Keep a durable, queryable copy of years of health data without manual Apple Health exports.
Build on real HealthKit data without writing and shipping your own iOS sync layer.
For developers
Every batch is a single authenticated POST with metrics, workouts, and deletions. Record IDs are stable, so your backend can upsert safely on every retry.
healthkit:{uuid} IDsPOST /api/apple-health/sync
Authorization: Bearer ••••••••
{
"schema_version": 2,
"device_id": "3F2A…",
"export_id": "b1c4…",
"timezone": "Europe/Berlin",
"metrics": [
{
"id": "healthkit:9E1D…",
"type": "step_count",
"value": 1243,
"unit": "count",
"start_at": "2026-10-16T08:00:00Z",
"end_at": "2026-10-16T09:00:00Z"
}
],
"workouts": [ … ],
"deletions": [ … ]
}Privacy
Your Apple Health data stays on your iPhone until you choose to sync it, and then it goes only where you point it. This website never reads or accesses it.
Read the privacy policyHealthSync never writes to Apple Health and only reads the types you enable.
No tracking, telemetry, ad SDKs, or third-party health SDKs. Nothing phones home.
Backend and agent tokens are stored in the iOS Keychain and never written to logs.
The app and backend are Apache-2.0 licensed, so you can audit exactly what is sent.
Get started
Install the free app from the App Store on your iPhone.
Tap Continue for a private hosted workspace, or enter your own backend URL and token.
Enable the Apple Health types you want, then sync the last 24 hours or backfill history.
HealthSync is available from the App Store for iPhone.
Yes. HealthSync is free to download from the App Store, and the source code is open under Apache-2.0.
No. Apple Health permissions are handled inside the iOS app, and this website never reads or stores your Apple Health data.
Yes. HealthSync lets you choose the health data types and sync timing from inside the iOS app.
No. By default HealthSync creates a private hosted workspace for you. You can switch to your own backend at any time in Settings.
You can choose hourly, daily, or manual. iOS decides exactly when background work runs, so scheduled syncs are best-effort; manual sync and backfill always run immediately.

Free on the App Store. Set up in less than a minute.