Polar data, in your own stack.
Users connect their Polar account over OAuth and are registered with AccessLink. Open Health Sync pulls exercises, activity and sleep on a schedule and when Polar sends a webhook.
- Source
- Sports watches and heart rate sensors
- How the data arrives
- Cloud API (AccessLink v3), OAuth 2.0, scheduled pulls and webhooks.
What it collects.
Each record maps to the same model as every other source, with the provider, source and device it came from.
- Exercises
- Daily activity
- Sleep with hypnogram
- Nightly Recharge
- Continuous heart rate
- Physical info
How it works.
- 01
The user connects
Your server asks for a consent URL and sends the user to Polar. Tokens are stored encrypted.
- 02
The server pulls
A first backfill, then scheduled pulls, and webhooks where the provider sends them. Every raw payload is kept.
- 03
You read one model
Units, time zones and duplicates handled, served over REST, the read-only MCP server and FHIR R4.
Before you start.
- Self-serve: bring your own AccessLink client from admin.polaraccesslink.com.
- Each user is registered with AccessLink after consent.
- The API only serves recent data, 28 to 30 days for most types, so history before a user connects is limited.
Set it up.
Register your own Polar app, set its callback to <OHS_PUBLIC_URL>/oauth/polar/callback and put its credentials in .env. The guide has every step.
# .envOHS_POLAR_CLIENT_ID=...OHS_POLAR_CLIENT_SECRET=...OHS_POLAR_WEBHOOK_SECRET=...# Ask for a consent URL, then send the user to authorize_urlcurl -s -X POST $OHS/v1/users/$USER_ID/connections/polar \ -H "Authorization: Bearer $KEY" -H 'Content-Type: application/json' \ -d '{"redirect_uri":"https://app.example.org/connected"}'# Read what came incurl -s "$OHS/v1/users/$USER_ID/workouts" -H "Authorization: Bearer $KEY"Questions.
Can I use Polar with Open Health Sync today?
Yes. The Polar connector ships in v0.1.0.
Do I need anything from Polar?
Self-serve: bring your own AccessLink client from admin.polaraccesslink.com.
Where does the data go?
Only to the server you run. Open Health Sync is self-hosted software, not a service: no account with us and no call home. Each user can be deleted with one call, raw files included.