List Sleep Periods
oura.list_sleep_periods
ActionBusiness appsconnection required
Calls the Oura API with the connection's credentials.
Read each individual sleep period rather than the daily score: stage durations, efficiency, heart rate and HRV.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- Bearer token
- Providers
- Oura
- Secret shape
- the Oura access token, or {"access_token": "…"}
- Resolved by
- config.connection_id, else node.connection_id
Configuration
3 fields, none required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
start_date Earliest day to return, as YYYY-MM-DD. Leave empty for Oura's default window. | string | No | — | iso8601 format | 2026-09-01 |
end_date Latest day to return, as YYYY-MM-DD. Leave empty for Oura's default window. | string | No | — | iso8601 format | 2026-09-10 |
next_token Cursor from a previous call's next_token, to fetch the following page. | string | No | — | — | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"end_date": "2026-09-10",
"start_date": "2026-09-01"
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
data[].id Unique identifier of the sleep period. | string | — |
data[].day The day the sleep period belongs to, as YYYY-MM-DD. | string | — |
data[].type The kind of sleep period, e.g. long_sleep or nap. | string | — |
data[].bedtime_start When the sleep period began. | string | — |
data[].bedtime_end When the sleep period ended. | string | — |
data[].total_sleep_duration Total time asleep, in seconds. | number | — |
data[].time_in_bed Time spent in bed, in seconds. | number | — |
data[].awake_time Time spent awake during the period, in seconds. | number | — |
data[].deep_sleep_duration Time in deep sleep, in seconds. | number | — |
data[].light_sleep_duration Time in light sleep, in seconds. | number | — |
data[].rem_sleep_duration Time in REM sleep, in seconds. | number | — |
data[].latency How long it took to fall asleep, in seconds. | number | — |
data[].efficiency Sleep efficiency rating in the range 1 to 100. | number | — |
data[].average_heart_rate Average heart rate during sleep, in bpm. | number | — |
data[].lowest_heart_rate Lowest heart rate during sleep, in bpm. | number | — |
data[].average_hrv Average heart-rate variability during sleep. | number | — |
data[].average_breath Average breathing rate, in breaths per minute. | number | — |
data[].restless_periods How many restless periods there were. | number | — |
count How many documents this page carried. | number | — |
next_token Cursor for the next page; empty on the last page. | string | — |
{
"count": 0,
"data": [
{
"average_breath": 0,
"average_heart_rate": 0,
"average_hrv": 0,
"awake_time": 0,
"bedtime_end": "",
"bedtime_start": "",
"day": "",
"deep_sleep_duration": 0,
"efficiency": 0,
"id": "",
"latency": 0,
"light_sleep_duration": 0,
"lowest_heart_rate": 0,
"rem_sleep_duration": 0,
"restless_periods": 0,
"time_in_bed": 0,
"total_sleep_duration": 0,
"type": ""
}
],
"next_token": ""
}See List Sleep Periods run in a workflow.
In a technical demo we add the Oura connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.