Nonin Integration

Stream Nonin data. No Nonin API needed.

Nonin’s Bluetooth fingertip pulse oximeters write blood oxygen and heart rate to Apple Health through the NoninConnect app — and Sahha’s SDK reads them into your app as normalized vitals biomarkers, alongside every other source.

  • On-device
  • Apple Health
  • iOS
  • HIPAA
  • GDPR

Free for 30 days · No credit card

Nonin logo
Normalized Auto-synced
Blood oxygen
97 %
Heart rate
68 bpm

Identical schema across 500+ sources

How it works

Your users connect Nonin. Sahha does the rest.

This is your user’s side of the story — one screen, once. Sahha ingests every Nonin 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

Nonin 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 brand. Anything that writes to Apple Health — Nonin today, a new watch next year — flows through the same SDK with no extra prompt and no new code.

Data coverage

What Nonin syncs through Apple Health.

  • Request only what you need

    You choose exactly which of these signals to request from Apple Health — users are only ever prompted for those, which keeps opt-in rates high.

  • One schema, every source

    Nonin, Apple Watch, and Oura all return the same fields and units.

  • What crosses the bridge

    Blood oxygen saturation and heart rate pass through Apple Health; some app-exclusive metrics may not.

Heart & vitals

2
HealthKitHealthKitSahha
  • oxygenSaturationoxygen_saturation%
  • heartRateheart_ratebpm
See a real payload
HealthKit · vitals
{
  "type": "HKQuantityTypeIdentifierOxygenSaturation",
  "value": 0.97,
  "unit": "%",
  "startDate": "2026-06-02T09:14:00Z",
  "sourceRevision": { "source": { "name": "NoninConnect" } }
  // …heart rate sample
}
Sahha · normalized
[
  {
    "category": "vitals",
    "type": "oxygen_saturation",
    "value": 97,
    "unit": "percent",
    "periodicity": "spot",
    "aggregation": "last",
    "startDateTime": "2026-06-02T09:14:00Z",
    "endDateTime": "2026-06-02T09:14:00Z"
  },
  {
    "category": "vitals",
    "type": "heart_rate",
    "value": 68,
    "unit": "bpm",
    "periodicity": "spot",
    "aggregation": "last",
    "startDateTime": "2026-06-02T09:14:00Z",
    "endDateTime": "2026-06-02T09:14:00Z"
  }
]

This page covers the NoninConnect app specifically — Nonin’s newer Nonin Health app isn’t evidenced as writing the same data. Blood oxygen saturation and heart rate cross to Apple Health. Perfusion index is reported by the device but Sahha has no biomarker for it, so it doesn’t cross. These are spot readings the user takes deliberately by clipping the oximeter on a fingertip — not continuous monitoring — so expect gaps rather than a steady stream.

Missing a metric you need? Talk to us in the Sahha Slack — if Nonin 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

Reading Apple Health yourself? Here’s the to-do list.

Everything on the left is yours to write, test, and maintain on iOS. Everything on the right, Sahha already did.

Every device
Build it yourself
  • Integrate Apple Health.
  • Handle iOS version differences.
  • Add Health Connect separately for Android.
With Sahha

One SDK covers Apple Health, Health Connect, and every cloud source.

Getting the data
Build it yourself
  • Write the HealthKit queries.
  • Request the right permissions.
  • Wire up background delivery.
With Sahha

The SDK handles queries, permissions, and background sync.

Keeping it clean
Build it yourself
  • Dedupe apps writing the same metric.
  • Map dozens of HealthKit types.
  • Reconcile against your Android sources.
With Sahha

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

Turning it into insight
Build it yourself
  • Build a sleep model.
  • Build an activity model.
  • Hire a data scientist.
With Sahha

Scores, archetypes, and insights — built in.

Keeping it alive
Build it yourself
  • Apple changes a HealthKit API.
  • You find out in production.
With Sahha

We version the SDK. You never notice.

No Nonin developer account needed — Sahha reads what Nonin already writes to Apple Health on iOS.

Setup

Live in an afternoon, not a sprint.

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

    Add the Sahha SDK

    Drop the Sahha SDK into your iOS app — or React Native or Flutter. The same SDK also covers Health Connect for your Android sources.

  2. 02

    Prompt for Apple Health permissions

    Call the SDK to show the native Apple Health consent sheet. The user chooses what to share — under your brand. It’s one prompt, ever: permission is per data type, not per brand, so every future source is already covered.

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

    Sahha reads and delivers

    Once permission is granted, the SDK reads Nonin data from Apple Health in the background, normalizes it to one schema, and streams it to your app by webhook or API.

Most teams read live Nonin data the same day they add the SDK. The only per-source prerequisite: your user has Nonin’s Apple Health sync switched on — most source apps enable it by default.

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

Nonin integration questions

How does Sahha get Nonin data?

A Nonin Bluetooth fingertip oximeter pairs with the NoninConnect app, which writes readings to Apple Health. Sahha reads them from there with its mobile SDK — so you get pulse oximetry data without integrating a Nonin API directly.

Which Nonin metrics does Sahha provide?

Blood oxygen saturation and heart rate, normalized to Sahha’s schema. Nonin devices also report a perfusion index, but Sahha has no biomarker for it, so it doesn’t cross.

Does Nonin provide continuous monitoring?

No. These are spot readings — the user clips the oximeter on a fingertip, takes a measurement, and the app writes it to Apple Health. You’ll see discrete readings at the moments the user chose to measure, not a continuous overnight or all-day trace. If you need continuous blood oxygen, that comes from a wearable the user also wears, deduplicated into the same schema.

Does the Nonin integration work on Android?

Sahha reads Nonin data from Apple Health on iOS, through the NoninConnect app — that’s the evidenced path, so this page scopes to it. Your users’ other Android sources still flow through the same Sahha SDK, normalized to one schema.

Is the Nonin integration HIPAA and GDPR compliant?

Yes. Sahha is HIPAA and GDPR compliant and SOC 2 certified, and Nonin data flows through the same compliant pipeline as every other source.

More integrations

One API for every other source, too.

Add another wearable or app and the schema, webhooks, and scores are identical — no new pipeline to build.

Start streaming Nonin data today.

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

Free for 30 days · No credit card

  • One API for Nonin 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