GET
/users/{user_id}/daily
Get daily metrics
Returns aggregated daily values for the requested metrics. Each row is one metric on one day. Data is deduplicated across connected devices (canonical layer).
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
user_id | path | string | required | Sonar user ID |
metrics | query | string | optional | Comma-separated metric IDs (default: all). E.g., `steps,resting_heart_rate,active_calories` |
start_date | query | string (date) | required | Start date (ISO 8601) |
end_date | query | string (date) | required | End date (ISO 8601). Max range: 90 days. |
unit_system | query | string | optional | `metric` (default) or `imperial` |
include_sources | query | boolean | optional | Include which device contributed each value (default: false) |
Example Request
bash
curl -X GET \
"https://api.sonarhealth.co/v1/users/:user_id/daily?start_date={start_date}&end_date={end_date}" \
-H "Authorization: Bearer $TOKEN"
Response 200 Daily metric values
json
{
"data": [
{
"date": "2025-01-14",
"metric": "steps",
"value": 9842,
"unit": "count"
},
{
"date": "2025-01-14",
"metric": "active_calories",
"value": 485,
"unit": "kcal"
},
{
"date": "2025-01-14",
"metric": "resting_heart_rate",
"value": 52,
"unit": "bpm"
},
{
"date": "2025-01-14",
"metric": "heart_rate_variability",
"value": 58,
"unit": "ms"
},
{
"date": "2025-01-13",
"metric": "steps",
"value": 12100,
"unit": "count"
}
]
}
Sonar