Heart Rate API
Heart Rate data from every wearable, in one schema
Continuous, resting and workout heart rate from every major wearable, in one schema and one unit.

8/12
providers connectable today
6
webhook event types
Canonical unit
beats per minute
What heart rate looks like through one API
Heart rate is the most widely available signal in connected health and the one where sampling density differs most dramatically between providers. The same nominal metric can arrive as one resting value per day, a reading every five minutes, or a full second-by-second stream during a workout — and the difference is not documented anywhere consistent.
WearLink separates the summary object from the high-resolution series so you can ask for what you need. heart_rate.created gives you the daily aggregate; series.heart_rate.created gives you the underlying samples where the provider exposes them. Resting heart rate, walking average and one-minute heart-rate recovery are distinct streams rather than fields buried in a daily blob, because products typically need one and not the others.
Everything is delivered in beats per minute with UTC timestamps and the originating device recorded, so a user who wears a chest strap for training and a ring overnight produces one coherent timeline rather than two incompatible ones.
Where providers disagree
Sampling density varies by orders of magnitude
A chest strap streams continuously during exercise; an optical wrist sensor may sample every few minutes at rest and densely only during a recorded workout; a ring typically samples on a fixed schedule overnight. Code that assumes evenly-spaced samples will produce misleading averages. Use the timestamps, not the index.
"Resting heart rate" is a computed figure, not a measurement
Each provider computes RHR with its own algorithm and window — lowest sustained value overnight, an average of the lowest N minutes, or a proprietary variant. Values differ by several bpm between devices for the same person on the same night. Use series.resting_heart_rate.created for trends within a device, not for cross-device comparison.
Optical sensors degrade under motion
Wrist-based optical readings during high-intensity or high-cadence activity are materially less accurate than a chest strap, and providers do not consistently flag when a reading is low-confidence. If your product does anything clinical or safety-adjacent with peak heart rate, prefer strap sources and record which device produced each sample.
Webhook events for heart rate
Summary: heart_rate.created
Series streams:
series.heart_rate.createdseries.resting_heart_rate.createdseries.walking_heart_rate_average.createdseries.heart_rate_recovery_one_minute.createdseries.atrial_fibrillation_burden.created
The full catalogue is in the event catalogue.
FAQ
Heart Rate — frequently asked questions
Can I get second-by-second heart rate during a workout?
Is resting heart rate comparable between Fitbit and Garmin?
Does WearLink expose AFib burden?
Get heart rate from every device your users own
Free for up to 3 connected users. No credit card. Your first API key is issued the moment you sign up.