Provider guide
Apple Health: no portal app, your iOS app reads HealthKit
| Access | Open, but only from your own iOS app on the member's iPhone. There is no cloud API |
| Cost | Apple Developer Program, $99/year [MEM]; enrol as an organisation (D-U-N-S number) to publish under the company name [MEM] |
| Approval | App Store review |
| Managed app | Not applicable |
| Latido slug | apple_health |
| How data arrives | Your app uploads to POST /v1/members/{id}/ingest |
Nothing to paste into Latido's provider settings: no client id, no redirect
URI, no webhook URL. Latido's native iOS SDK is not available yet; until it
is, your app reads
HealthKit itself and posts to the ingest endpoint with a project API key from
your backend (never ship a lat_live_ key in the app).
Checklist
- In Xcode, add the HealthKit capability to the target (and Background Delivery if you sync in the background) [MEM].
- Add
NSHealthShareUsageDescription(andNSHealthUpdateUsageDescriptiononly if you write) toInfo.plist, in plain words: App Review rejects vague texts [MEM]. - Request read permission per type (workouts, steps, heart rate, HRV, sleep, body mass, blood glucose…). The app cannot tell whether read access was denied: queries just return nothing.
- Sync with
HKObserverQuery+enableBackgroundDelivery, andHKAnchoredObjectQueryfor deltas including deletions. - Upload batches to Latido's ingest endpoint.
- App Store review: HealthKit data may not be used for advertising or sold; provide a privacy policy [MEM: App Review Guidelines 5.1.3].
Gotchas
- Apple's HRV is SDNN, not RMSSD; SpO2 and body fat are fractions 0–1.
- HealthKit carries data from Garmin, Oura, WHOOP and others when their apps write to it, so dedupe against direct connections.