Summary endpoints provide daily aggregated views of health data, rolling up detailed time-series data into comprehensive daily snapshots.
Get Activity Summary
Start date for the range (ISO 8601 format or Unix timestamp)
End date for the range (ISO 8601 format or Unix timestamp)
Pagination cursor from previous response
Number of records per page (1-400)
curl -X GET "https://api.openwearables.com/api/v1/users/123e4567-e89b-12d3-a456-426614174000/summaries/activity?start_date=2024-03-01&end_date=2024-03-07&limit=7" \
-H "X-API-Key: your_api_key"
Response
Array of activity summary objects Show ActivitySummary properties
Date of the summary (YYYY-MM-DD)
Show SourceMetadata properties
Data provider (e.g., “apple_health”, “garmin”, “fitbit”)
Device model (e.g., “Apple Watch Series 9”, “Garmin Forerunner 955”)
Total distance traveled in meters
Floors climbed (1 floor ≈ 3 meters elevation)
Total elevation gain in meters
Active energy burned in kilocalories
Total energy (active + basal) in kilocalories
Minutes with activity above threshold
Minutes with minimal activity
Show IntensityMinutes properties
Minutes in light intensity zone
Minutes in moderate intensity zone
Minutes in vigorous intensity zone
Show HeartRateStats properties
Average heart rate in beats per minute
Maximum heart rate in beats per minute
Minimum heart rate in beats per minute
Show Pagination properties
Cursor for the next page (null if no more data)
Cursor for the previous page
Whether more data is available
Total number of records matching the query
Show TimeseriesMetadata properties
Data resolution (e.g., “raw”, “1min”, “1hour”)
Number of samples in the response
Start timestamp of the data range
End timestamp of the data range
{
"data" : [
{
"date" : "2024-03-01" ,
"source" : {
"provider" : "apple_health" ,
"device" : "Apple Watch Series 9"
},
"steps" : 8432 ,
"distance_meters" : 6240.5 ,
"floors_climbed" : 12 ,
"elevation_meters" : 36.0 ,
"active_calories_kcal" : 342.5 ,
"total_calories_kcal" : 2150.0 ,
"active_minutes" : 60 ,
"sedentary_minutes" : 480 ,
"intensity_minutes" : {
"light" : 120 ,
"moderate" : 45 ,
"vigorous" : 15
},
"heart_rate" : {
"avg_bpm" : 72 ,
"max_bpm" : 165 ,
"min_bpm" : 52
}
}
],
"pagination" : {
"next_cursor" : "eyJpZCI6IjEyMzQ1Njc4OTAiLCJ0cyI6MTcwNDA2NzIwMH0" ,
"previous_cursor" : null ,
"has_more" : true ,
"total_count" : 7
},
"metadata" : {
"resolution" : "raw" ,
"sample_count" : 1 ,
"start_time" : "2024-03-01T00:00:00Z" ,
"end_time" : "2024-03-01T23:59:59Z"
}
}
Get Sleep Summary
Start date for the range (ISO 8601 format or Unix timestamp)
End date for the range (ISO 8601 format or Unix timestamp)
Pagination cursor from previous response
Number of records per page (1-100)
curl -X GET "https://api.openwearables.com/api/v1/users/123e4567-e89b-12d3-a456-426614174000/summaries/sleep?start_date=2024-03-01&end_date=2024-03-07" \
-H "X-API-Key: your_api_key"
Response
Array of sleep summary objects Show SleepSummary properties
Date of the sleep session
Show SourceMetadata properties
Total sleep duration excluding naps
Total time in bed excluding naps
Sleep efficiency percentage (0-100)
Show SleepStagesSummary properties
Number of sleep interruptions
Total nap duration in minutes
Average heart rate during sleep
Average HRV (SDNN) during sleep in milliseconds
Average respiratory rate during sleep
Average oxygen saturation during sleep
{
"data" : [
{
"date" : "2024-03-01" ,
"source" : {
"provider" : "apple_health" ,
"device" : "Apple Watch Series 9"
},
"start_time" : "2024-03-01T23:15:00Z" ,
"end_time" : "2024-03-02T07:30:00Z" ,
"duration_minutes" : 450 ,
"time_in_bed_minutes" : 480 ,
"efficiency_percent" : 89.5 ,
"stages" : {
"awake_minutes" : 30 ,
"light_minutes" : 240 ,
"deep_minutes" : 120 ,
"rem_minutes" : 90
},
"interruptions_count" : 2 ,
"nap_count" : 1 ,
"nap_duration_minutes" : 30 ,
"avg_heart_rate_bpm" : 58 ,
"avg_hrv_sdnn_ms" : 52.3 ,
"avg_respiratory_rate" : 14.5 ,
"avg_spo2_percent" : 97.2
}
],
"pagination" : {
"next_cursor" : null ,
"previous_cursor" : null ,
"has_more" : false ,
"total_count" : 1
},
"metadata" : {
"resolution" : "raw" ,
"sample_count" : 1 ,
"start_time" : "2024-03-01T00:00:00Z" ,
"end_time" : "2024-03-07T23:59:59Z"
}
}
Get Body Summary
Days to average vitals (1-7). Affects the averaged section of the response.
Hours for latest readings to be considered valid (1-24). Affects the latest section of the response.
curl -X GET "https://api.openwearables.com/api/v1/users/123e4567-e89b-12d3-a456-426614174000/summaries/body?average_period=7&latest_window_hours=4" \
-H "X-API-Key: your_api_key"
Response
Returns comprehensive body metrics organized into three semantic categories:
slow_changing : Values that change infrequently (weight, height, body composition)
averaged : Vitals averaged over the specified period (resting HR, HRV)
latest : Point-in-time readings only if measured within the time window (temperature, blood pressure)
Returns null if no body data exists for the user.
Show SourceMetadata properties
Show BodySlowChanging properties
Most recent weight measurement in kilograms
Most recent height measurement in centimeters
Most recent body fat percentage
Most recent muscle/lean body mass in kilograms
Body Mass Index calculated from latest weight and height
Age in years calculated from birth date
Show BodyAveraged properties
Number of days averaged (matches the average_period parameter)
Average resting heart rate over the period
Average HRV (SDNN) over the period in milliseconds
Start of the averaging period
End of the averaging period
Show BodyLatest properties
Body temperature if measured within time window
body_temperature_measured_at
When body temperature was measured (null if no recent reading)
Skin temperature if measured within time window
skin_temperature_measured_at
When skin temperature was measured (null if no recent reading)
Show BloodPressure properties
Average systolic pressure in mmHg
Average diastolic pressure in mmHg
Maximum systolic pressure in mmHg
Maximum diastolic pressure in mmHg
Minimum systolic pressure in mmHg
Minimum diastolic pressure in mmHg
Number of readings in the period
blood_pressure_measured_at
When blood pressure was measured (null if no recent reading)
{
"source" : {
"provider" : "apple_health" ,
"device" : "Apple Watch Series 9"
},
"slow_changing" : {
"weight_kg" : 72.5 ,
"height_cm" : 175.5 ,
"body_fat_percent" : 18.5 ,
"muscle_mass_kg" : 58.2 ,
"bmi" : 23.5 ,
"age" : 32
},
"averaged" : {
"period_days" : 7 ,
"resting_heart_rate_bpm" : 62 ,
"avg_hrv_sdnn_ms" : 45.2 ,
"period_start" : "2024-03-01T00:00:00Z" ,
"period_end" : "2024-03-07T23:59:59Z"
},
"latest" : {
"body_temperature_celsius" : 36.6 ,
"body_temperature_measured_at" : "2024-03-07T08:15:00Z" ,
"skin_temperature_celsius" : 33.2 ,
"skin_temperature_measured_at" : "2024-03-07T08:15:00Z" ,
"blood_pressure" : {
"avg_systolic_mmhg" : 120 ,
"avg_diastolic_mmhg" : 80 ,
"max_systolic_mmhg" : 135 ,
"max_diastolic_mmhg" : 90 ,
"min_systolic_mmhg" : 110 ,
"min_diastolic_mmhg" : 72 ,
"reading_count" : 5
},
"blood_pressure_measured_at" : "2024-03-07T07:30:00Z"
}
}
Get Recovery Summary
Start date for the range (ISO 8601 format or Unix timestamp)
End date for the range (ISO 8601 format or Unix timestamp)
Pagination cursor from previous response
Number of records per page (1-100)
curl -X GET "https://api.openwearables.com/api/v1/users/123e4567-e89b-12d3-a456-426614174000/summaries/recovery?start_date=2024-03-01&end_date=2024-03-07" \
-H "X-API-Key: your_api_key"
This endpoint returns 501 Not Implemented as the feature is under development. Recovery metrics combine sleep, HRV, and resting heart rate data to provide a comprehensive recovery score.
Response (When Implemented)
Array of recovery summary objects Show RecoverySummary properties
Date of the recovery summary
Total sleep duration in seconds
Sleep efficiency percentage
Resting heart rate in beats per minute
Average HRV (SDNN) in milliseconds
Average oxygen saturation percentage
Composite recovery score (0-100)