Skip to content

Get HRV Measures

François Dupont edited this page Jun 1, 2026 · 2 revisions

Get HRV Measures

Guided HRV measurements recorded in the Nolio app (Bluetooth chest strap or finger sensor): full beat-to-beat detail with time-domain and frequency-domain indices, and optionally the raw RR intervals.

This data only exists for in-app measurements — connected wearables never expose beat-to-beat RR intervals. For a single daily RMSSD index across all sources, use Get HRV RMSSD instead.

Endpoint:

  • /get/hrv/measures/
  • HTTP Method: GET

Parameters

Parameter Required Type Description
from no string Start date (inclusive), format YYYY-MM-DD. If omitted, defaults to a 90-day window ending at to (or at today if to is also omitted)
to no string End date (inclusive), format YYYY-MM-DD
limit no int Maximum number of measurements returned (default 15; max 366, or 31 when with_raw=true)
with_raw no bool true to include the raw RR intervals (raw_rrs). Heavy payload — omitted by default
athlete_id no int For coaches: retrieve data of a managed athlete. You can retrieve the ids with the Get Athletes route

Results are ordered most recent first.

Examples

Last HRV measurements (last 90 days by default):
https://www.nolio.io/api/get/hrv/measures/

Measurements over a date range, with raw RR intervals:
https://www.nolio.io/api/get/hrv/measures/?from=2025-01-01&to=2025-03-31&with_raw=true

Measurements of a managed athlete (coach access):
https://www.nolio.io/api/get/hrv/measures/?athlete_id=456

Returns

A JSON array of HRV measurement objects (most recent first). All index fields are floats and may be null if not computed.

Field Type Description
id int Measurement ID
date string Date of the measurement (YYYY-MM-DD)
hour string Start time of the measurement (HH:MM)
rmssd float or null Root Mean Square of Successive Differences (ms)
sdnn float or null Standard deviation of NN intervals (ms)
pnn50 float or null % of successive RR differences greater than 50 ms
hr_mean float or null Mean heart rate (bpm)
rr_mean float or null Mean RR interval (ms)
serenity float or null Nolio serenity index
total_power float or null Total spectral power (ms²)
lf_power float or null Low-frequency power, as % of total power
hf_power float or null High-frequency power, as % of total power
ratio_lf_hf float or null LF/HF ratio
measure_method string ble (Bluetooth chest strap) or finger (finger sensor)
device_name string or null Name of the recording device, if known
raw_rrs array of int Raw RR intervals (ms). Only present when with_raw=true

Example response

[
  {
    "id": 44021,
    "date": "2025-06-15",
    "hour": "07:12",
    "rmssd": 52.3,
    "sdnn": 61.8,
    "pnn50": 18.4,
    "hr_mean": 54.1,
    "rr_mean": 1109.0,
    "serenity": 72.0,
    "total_power": 3120.0,
    "lf_power": 41.2,
    "hf_power": 38.7,
    "ratio_lf_hf": 1.06,
    "measure_method": "ble",
    "device_name": "Polar H10",
    "raw_rrs": [1102, 1115, 1098, 1121]
  }
]

Overlap with Get HRV RMSSD: each in-app measurement also surfaces as a single RMSSD value in Get HRV RMSSD with source = nolio_hrv.

Errors

  • 400 - Invalid date format for from or to
  • 403 - Invalid athlete_id (malformed value), or you are not allowed to access that managed athlete

Clone this wiki locally