DEV Community

holistis
holistis

Posted on • Originally published at longevityai.nl

Three free wearable integrations for an AI health report: Oura, Withings, Polar

Live today: three wearables, free to connect

From today you can connect your Oura Ring, Withings device or Polar watch to your longevity report at longevityai.nl. Free of charge after payment of the report, in a few clicks. No paid aggregator, direct OAuth2 with each manufacturer.

Why this matters

A questionnaire knows what you think about your sleep. A ring knows how you actually sleep.

In a longevity report we combine two sources:

Subjective: what you fill in during the intake. How you sleep, eat, move, feel. Complaints, patterns, intuitions.

Objective: what a wearable measures. HRV, resting heart rate, sleep stages, breathing rate. With Withings: weight, blood pressure, fat mass. With Polar: breathing frequency. With Oura: readiness score.

The value is in the correlation between the two. Not in either one alone.

Engineering notes

Three different OAuth2 flows:

  • Oura (cloud.ouraring.com/oauth/authorize + api.ouraring.com/oauth/token): clean v2 REST API, JSON responses, standard refresh tokens.
  • Withings (account.withings.com/oauth2_user/authorize2 + wbsapi.withings.net/v2/oauth2): every API response wrapped in {status: 0, body: {...}}. Token endpoint expects action=requesttoken in POST body, not just grant_type.
  • Polar (flow.polar.com/oauth2/authorization + polarremote.com/v3/oauth2/token): Basic Auth header for token exchange (base64 of client_id:client_secret). Requires a separate POST /v3/users call after token-exchange to register the user with member-id, otherwise all data endpoints return 403.

Each has its own token-refresh strategy. Withings tokens expire in hours, Oura in days, Polar tokens are long-lived without refresh endpoint.

AVG-compliant data pipeline

We only store a summary. No raw nightly records. Disconnect from the user dashboard, all derived data is purged. GDPR article 9 (special-category data) covered through explicit consent at intake.

Trilingual launch

Available immediately in Dutch, English and French. Translation-group system in the database links the language-versions of each article so a language-switch on a blog page never lands on a 404 again.

Read the full story (Dutch original):
https://longevityai.nl/blog/wearables-gekoppeld-aan-anamnese-oura-withings-polar

English version:
https://longevityai.nl/blog/wearables-linked-to-intake-oura-withings-polar

Top comments (0)