Apple Health Integration

Every Apple Health signal. One SDK.

Apple Health (HealthKit) is where iPhone, Apple Watch, and hundreds of health apps store their data on iOS. Sahha’s SDK reads it — with the user’s permission — and delivers normalized biomarkers, scores, and archetypes to your backend in real time.

  • On-device
  • iOS
  • HIPAA
  • GDPR
  • SOC 2

Free for 30 days · No credit card

Apple Health logo
Normalized Auto-synced
Sleep duration
7:24 h
HRV (SDNN)
48 ms
Steps
10,412

Identical schema across 500+ sources

How it works

Your users connect Apple Health. Sahha does the rest.

This is your user’s side of the story — one screen, once. Sahha ingests every Apple Health signal, normalizes, deduplicates, and delivers it to your service — raw, or as refined intelligence your product can act on.

Apple Health A

Allow "your app"

Sleep
Activity
Heart rate
Connect
9:41LIVE
82READY
Sleep7h 12m
Steps5,993
Heart rate62 bpm
Your early-riser reward
20% off açaí bowls — today only.
Sahha
Permissions handled
Encrypted in transit
History backfilled
Background sync enabled
Cleaning · deduping · scoring
Raw data logs Biomarkers Scores Insights Archetypes Tags
Real-time webhooks
Always in sync
Query via API
Access controlled
Your service
Waiting for data…

On-device and permissioned

Apple Health data is read on the user’s own device, only after they grant Apple Health permission — nothing syncs without consent.

One integration, every source

Permission is per data type, not per app. Hundreds of sources write to Apple Health — every one of them, and every future one, flows through the same SDK with no extra prompt and no new code.

Data coverage

Everything Sahha reads from Apple Health.

Works with iPhoneApple WatchAirPodsHundreds of HealthKit apps
  • Request only what you need

    You choose exactly which sensors to request — the native Apple Health sheet shows only those, which keeps opt-in rates high.

  • One schema, every source

    An Apple Watch workout and a Garmin run land as the same fields and units — Apple Health, Health Connect, and cloud APIs all normalize identically.

  • The full read surface

    Every HealthKit type Sahha supports is cataloged below — the complete read surface, in Sahha’s normalized schema.

Sleep

5
HealthKitHealthKitSahha
  • sleepAnalysis · asleepDeepsleep_stage_deepmin
  • sleepAnalysis · asleepCoresleep_stage_lightmin
  • sleepAnalysis · asleepREMsleep_stage_remmin
  • sleepAnalysis · awakesleep_stage_awakemin
  • sleepAnalysis · inBedsleep_stage_in_bedmin

Heart & vitals

13
HealthKitHealthKitSahha
  • heartRateheart_ratebpm
  • restingHeartRateresting_heart_ratebpm
  • walkingHeartRateAveragewalking_heart_rate_averagebpm
  • heartRateVariabilitySDNNheart_rate_variability_sdnnms
  • bloodPressureSystolicblood_pressure_systolicmmHg
  • bloodPressureDiastolicblood_pressure_diastolicmmHg
  • bloodGlucoseblood_glucosemg/dL
  • oxygenSaturationoxygen_saturation%
  • respiratoryRaterespiratory_ratebr/min
  • vo2Maxvo2_maxmL/kg/min
  • bodyTemperaturebody_temperature°C
  • basalBodyTemperaturebody_temperature_basal°C
  • appleSleepingWristTemperaturesleeping_wrist_temperature°C

Activity & exercise

11
HealthKitHealthKitSahha
  • stepCountstepscount
  • flightsClimbedfloors_climbedcount
  • distanceWalkingRunningdistance_walkingm
  • activeEnergyBurnedactive_energy_burnedkcal
  • basalEnergyBurnedbasal_energy_burnedkcal
  • workoutActivityTypeexercise_session_*min
  • appleExerciseTimeexercise_timemin
  • appleStandTimestand_timemin
  • appleMoveTimemove_timemin
  • timeInDaylighttime_in_daylightmin
  • activitySummaryactivity_summary

Body

6
HealthKitHealthKitSahha
  • heightheightm
  • bodyMassweightkg
  • bodyMassIndexbody_mass_indexkg/m²
  • bodyFatPercentagebody_fat%
  • leanBodyMasslean_masskg
  • waistCircumferencewaist_circumferencem

Nutrition

13
HealthKitHealthKitSahha
  • dietaryEnergyConsumedenergy_intakekcal
  • dietaryWaterwater_intakeL
  • dietaryProteinprotein_intakeg
  • dietaryCarbohydratescarbohydrate_intakeg
  • dietaryFatTotalfat_intakeg
  • dietaryFatSaturatedfat_saturated_intakeg
  • dietaryFatMonounsaturatedfat_monounsaturated_intakeg
  • dietaryFatPolyunsaturatedfat_polyunsaturated_intakeg
  • dietaryCholesterolcholesterol_intakemg
  • dietarySugarsugar_intakeg
  • dietaryFiberfiber_intakeg
  • dietaryCaffeinecaffeine_intakemg
  • dietaryVitaminA … dietaryZincvitamin & mineral intakes ×27mg · µg

Cycle & reproductive

5
HealthKitHealthKitSahha
  • menstrualFlowmenstrual_flow
  • intermenstrualBleedingintermenstrual_bleeding
  • cervicalMucusQualitycervical_mucus
  • ovulationTestResultovulation_test
  • sexualActivitysexual_activity

Demographics

2
HealthKitHealthKitSahha
  • biologicalSexgender
  • dateOfBirthdate_of_birth
See a real payload
HealthKit · sleep
{
  "sampleType": "HKCategoryTypeIdentifierSleepAnalysis",
  "value": "asleepDeep",
  "startDate": "2026-06-02T23:18:00Z",
  "endDate": "2026-06-03T00:36:00Z",
  "sourceRevision": { "productType": "Watch7,2" }
  // …heart rate, steps & workout samples
}
Sahha · normalized
[
  {
    "category": "sleep",
    "type": "sleep_stage_deep",
    "value": 78,
    "unit": "minute",
    "periodicity": "daily",
    "aggregation": "total",
    "startDateTime": "2026-06-02T23:18:00Z",
    "endDateTime": "2026-06-03T06:52:00Z"
  },
  {
    "category": "activity",
    "type": "steps",
    "value": 10412,
    "unit": "count",
    "periodicity": "daily",
    "aggregation": "total",
    "startDateTime": "2026-06-03T00:00:00Z",
    "endDateTime": "2026-06-03T23:59:59Z"
  }
  // …3 more normalized logs
]

Apple Health is iOS-only — on Android, the same Sahha SDK reads Health Connect instead. Cycle-tracking types arrive as Sahha Tags (categorical events) rather than numeric biomarkers.

Missing a metric you need? Talk to us in the Sahha Slack — if Apple Health captures it, we can usually add support.

Get more than just raw data

Sahha turns these signals into biomarkers, scores, archetypes, and insights — the modeling done for you.

Build vs. buy

Building directly on HealthKit? Here’s the to-do list.

HealthKit is a deep, powerful API — and everything on the left is yours to write, test, and maintain. Everything on the right, Sahha already did.

Getting the data
Direct HealthKit
  • Write anchored + observer queries per type.
  • Configure background delivery per type.
  • Handle permission states Apple won’t let you inspect.
With Sahha

One enableSensors() call — queries, background delivery, and permissions handled.

Android too
Direct HealthKit
  • Redo everything on Health Connect.
  • Reconcile two record models.
  • Maintain both forever.
With Sahha

The same SDK reads Health Connect on Android — one schema across both.

Keeping it clean
Direct HealthKit
  • Dedupe iPhone + Watch double-counting.
  • Convert units per type.
  • Handle timezone and DST edge cases.
With Sahha

Deduped, typed, one schema — one stream per user.

Turning it into insight
Direct HealthKit
  • Build sleep, activity & readiness models.
  • Validate them against research.
  • Hire a data scientist.
With Sahha

Scores, archetypes, and insights — built in.

Keeping it alive
Direct HealthKit
  • New iOS versions add and change types.
  • You find out in production.
With Sahha

We version the SDK. You never notice.

You stay in control of scope — specify exactly which sensors your product needs, and only those are ever requested from the user.

Setup

Live in an afternoon, not a sprint.

  1. # Add the Sahha SDKnpm install sahha-react-native
    01

    Add the Sahha SDK

    Drop the SDK into your iOS app — native Swift, React Native, Flutter, Ionic, or Expo.

  2. 02

    Enable HealthKit in Xcode

    Add the HealthKit capability, background delivery, and usage descriptions to your project — a one-time checklist from the docs.

  3. Your app LIVE
    Sleep7h 12m
    Readiness82
    Heart rate62 bpm
    03

    Prompt for permissions

    Call enableSensors() from a button with just the sensors you need. The user sees the native Apple Health consent sheet — in your app, under your brand.

  4. Your app LIVE
    Sleep7h 12m
    Readiness82
    Heart rate62 bpm
    04

    Sahha reads and delivers

    The SDK collects in the background via HealthKit background delivery, normalizes everything to one schema, and streams it to you by webhook or API.

Most teams read live Apple Health data the same day they add the SDK.

Destinations

Route it into your stack.

Sahha streams every update to your webhook — and a step-by-step guide takes it the rest of the way into your database, CDP, or messaging tool.

FAQ

Apple Health integration questions

How does Sahha read Apple Health data?

Sahha’s SDK runs inside your iOS app and reads HealthKit on the user’s device after they grant permission in the native Apple Health consent sheet. The data is normalized on Sahha’s pipeline and delivered to your backend by webhook or REST API.

What data can Sahha read from Apple Health?

80+ HealthKit types: sleep stages, steps, workouts, heart rate, resting heart rate, HRV (SDNN), blood pressure, blood glucose, SpO₂, respiratory rate, VO₂ max, body and wrist temperature, height, weight, body fat, lean mass, full dietary nutrition, cycle tracking, and demographics. The complete catalog is on this page.

Can Sahha read Apple Health without a mobile app?

No — HealthKit data lives on the user’s device and Apple provides no cloud API for it. You embed the Sahha SDK in your iOS app; from there Sahha delivers the data to your backend, so the rest of your stack never touches HealthKit.

Does this cover Apple Watch?

Yes. Apple Watch syncs its sleep, workouts, and heart data into Apple Health, and Sahha reads it from there — along with data from every other device and app the user has connected, like Oura, Garmin, or WHOOP.

Do users have to approve every data type?

Apple Health permissions are per-type, and you choose exactly which sensors to request. Requesting only what your product needs improves opt-in rates and App Store review outcomes.

Is the Apple Health integration HIPAA and GDPR compliant?

Yes. Sahha is HIPAA and GDPR compliant and SOC 2 certified. Data is read only with user consent and encrypted in transit.

Start streaming Apple Health data today.

Connect once. Sahha handles consent, normalization, and real-time delivery — for Apple Health and every other source.

Free for 30 days · No credit card

  • One API for Apple Health and every other source
  • Real-time webhooks + on-demand REST, one normalized schema
  • Scores, archetypes & insights — no modeling required
  • HIPAA, GDPR & SOC 2 · your brand on the consent screen