VitalSleepSummary
A normalized per-night sleep summary aggregated from any supported wearable/device source. One record per sleep session.
Health DataWearablesLab TestingDigital HealthHealth TechHealthcareHIPAAHealthKitHealth ConnectEHREMRBiomarkersDiagnosticsContinuous Glucose MonitoringSleepActivityHeart RateWebhookPhlebotomyLab Orders
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/vital-io/main/json-schema/vital-sleep-summary-schema.json",
"title": "VitalSleepSummary",
"description": "A normalized per-night sleep summary aggregated from any supported wearable/device source. One record per sleep session.",
"type": "object",
"required": ["id", "user_id", "calendar_date", "source"],
"properties": {
"id": {"type": "string", "format": "uuid"},
"user_id": {"type": "string", "format": "uuid"},
"calendar_date": {"type": "string", "format": "date", "description": "Calendar date the sleep session ended on."},
"bedtime_start": {"type": "string", "format": "date-time"},
"bedtime_end": {"type": "string", "format": "date-time"},
"timezone_offset": {"type": "integer", "description": "Offset from UTC in seconds."},
"duration": {"type": "integer", "description": "Total duration in bed, in seconds."},
"total": {"type": "integer", "description": "Total sleep time in seconds (all stages combined)."},
"awake": {"type": "integer", "description": "Awake time in seconds."},
"light": {"type": "integer", "description": "Light-sleep time in seconds."},
"rem": {"type": "integer", "description": "REM-sleep time in seconds."},
"deep": {"type": "integer", "description": "Deep-sleep time in seconds."},
"score": {"type": ["integer", "null"], "description": "Provider-reported sleep score (0-100)."},
"hr_average": {"type": ["number", "null"]},
"hr_lowest": {"type": ["number", "null"]},
"hrv_avg": {"type": ["number", "null"]},
"respiratory_rate": {"type": ["number", "null"]},
"temperature_delta": {"type": ["number", "null"]},
"source": {
"type": "object",
"required": ["provider", "type"],
"properties": {
"provider": {"type": "string", "examples": ["oura", "whoop", "garmin", "fitbit", "apple_health_kit"]},
"type": {"type": "string", "examples": ["watch", "ring", "phone", "manual"]},
"name": {"type": "string"}
}
}
}
}
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/vital-sleep-summary"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no email required.
A second provider on the same verified email joins the account you already have.