Skip to main content
GET
/
api
/
v1
/
users
/
{user_id}
/
events
/
sleep
List Sleep Sessions
curl --request GET \
  --url https://api.example.com/api/v1/users/{user_id}/events/sleep \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "start_time": "2023-11-07T05:31:56Z",
      "end_time": "2023-11-07T05:31:56Z",
      "source": {
        "provider": "apple_health",
        "device": "Apple Watch Series 9"
      },
      "duration_seconds": 123,
      "zone_offset": "<string>",
      "sleep_duration_seconds": 123,
      "efficiency_percent": 123,
      "stages": {
        "awake_minutes": 123,
        "light_minutes": 123,
        "deep_minutes": 123,
        "rem_minutes": 123
      },
      "sleep_stage_intervals": [
        {
          "start_time": "2023-11-07T05:31:56Z",
          "end_time": "2023-11-07T05:31:56Z"
        }
      ],
      "is_nap": false
    }
  ],
  "pagination": {
    "has_more": true,
    "next_cursor": "eyJpZCI6IjEyMzQ1Njc4OTAiLCJ0cyI6MTcwNDA2NzIwMH0",
    "previous_cursor": "<string>",
    "total_count": 150
  },
  "metadata": {
    "sample_count": 123,
    "start_time": "2023-11-07T05:31:56Z",
    "end_time": "2023-11-07T05:31:56Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://openwearables.io/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Headers

X-Open-Wearables-API-Key
string | null

Path Parameters

user_id
string<uuid>
required

Query Parameters

start_date
string<date-time>
required

ISO 8601 datetime (e.g. 2023-11-07T05:31:56Z) or Unix timestamp in seconds. Date-only strings (e.g. 2023-11-07) are also accepted and normalized to midnight UTC.

Examples:

"2023-11-07T05:31:56Z"

"2023-11-07"

end_date
string<date-time>
required

ISO 8601 datetime (e.g. 2023-11-07T05:31:56Z) or Unix timestamp in seconds. Date-only strings (e.g. 2023-11-07) are also accepted and normalized to midnight UTC.

Examples:

"2023-11-07T05:31:56Z"

"2023-11-07"

cursor
string | null
limit
integer
default:50
Required range: 1 <= x <= 100

Response

Successful Response

data
SleepSession · object[]
required
pagination
Pagination · object
required
metadata
TimeseriesMetadata · object
required