{"openapi":"3.1.0","info":{"title":"NOWATCH Research API","description":"The NOWATCH Research API provides access to physiological and contextual data\ncollected by NOWATCH devices and processed by the NOWATCH App, for scientific\nand research use.\n\nThis OpenAPI document is the source of truth for the API: docs, client SDKs,\ncontract tests, and mocks all derive from it. Authenticate every request with\nyour `X-API-KEY` header. Timestamps are ISO 8601 with explicit timezone.","contact":{"name":"NOWATCH Research API Support","email":"samson@nowatch.com"},"license":{"name":"Proprietary"},"version":"0.10.1"},"servers":[{"url":"https://research-api.nowatch.com","description":"Production"}],"paths":{"/v1/user/{user_id}":{"get":{"tags":["user"],"summary":"Get User Data","operationId":"get_user_data_v1_user__user_id__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/timeline/timeseries/{user_id}/{mtype}":{"get":{"tags":["timeseries"],"summary":"Get Measurement Data","operationId":"get_measurement_data_v1_timeline_timeseries__user_id___mtype__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"mtype","in":"path","required":true,"schema":{"enum":["HEART_RATE","ACTIVITY_COUNT","ACTIVITY_TYPE","STEPS","MOTION","REACTIVITY_MONITOR","SKIN_CONDUCTANCE_LEVEL","SKIN_TEMPERATURE","INTERBEAT_INTERVALS"],"type":"string","title":"Mtype"}},{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}},{"name":"days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Days per page (default 1, max 7).","title":"Days"},"description":"Days per page (default 1, max 7)."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Opaque pagination cursor (application/json responses only).","title":"Cursor"},"description":"Opaque pagination cursor (application/json responses only)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/MeasurementJSONPage"},{}],"title":"Response Get Measurement Data V1 Timeline Timeseries  User Id   Mtype  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/timeline/events/sleep/{user_id}":{"get":{"tags":["sleep"],"summary":"Get Sleep Data","description":"Retrieves paginated sleep data for a user over a date range.\n\nReturns an envelope `{ \"data\": [...], \"next_cursor\": \"...\" }`. Pass\n`next_cursor` back as `?cursor=...` (or follow the `Link: rel=\"next\"`\nheader) to fetch the next slice; `next_cursor: null` ends the walk.","operationId":"get_sleep_data_v1_timeline_events_sleep__user_id__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}},{"name":"days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Days per page (default 1, max 7).","title":"Days"},"description":"Days per page (default 1, max 7)."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Opaque pagination cursor.","title":"Cursor"},"description":"Opaque pagination cursor."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/Page_Sleep_"},{}],"title":"Response Get Sleep Data V1 Timeline Events Sleep  User Id  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/timeline/events/checkins/{user_id}":{"get":{"tags":["checkin"],"summary":"Get Checkin Data","operationId":"get_checkin_data_v1_timeline_events_checkins__user_id__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}},{"name":"days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Days per page (default 1, max 7).","title":"Days"},"description":"Days per page (default 1, max 7)."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Opaque pagination cursor (application/json responses only).","title":"Cursor"},"description":"Opaque pagination cursor (application/json responses only)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/Page_CheckinModel_"},{}],"title":"Response Get Checkin Data V1 Timeline Events Checkins  User Id  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/timeline/events/activities/{user_id}":{"get":{"tags":["activity"],"summary":"Get Activity Data","operationId":"get_activity_data_v1_timeline_events_activities__user_id__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}},{"name":"days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Days per page (default 1, max 7).","title":"Days"},"description":"Days per page (default 1, max 7)."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Opaque pagination cursor (application/json responses only).","title":"Cursor"},"description":"Opaque pagination cursor (application/json responses only)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/Page_ActivityModel_"},{}],"title":"Response Get Activity Data V1 Timeline Events Activities  User Id  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/timeline/events/timezones/{user_id}":{"get":{"tags":["timezone"],"summary":"Get Timezone Data","operationId":"get_timezone_data_v1_timeline_events_timezones__user_id__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"type":"array","items":{"$ref":"#/components/schemas/TimezoneResponse"}},{}],"title":"Response Get Timezone Data V1 Timeline Events Timezones  User Id  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/timeline/events/crown_presses/{user_id}":{"get":{"tags":["crown_presses"],"summary":"Get Crown Presses","operationId":"get_crown_presses_v1_timeline_events_crown_presses__user_id__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}},{"name":"days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Days per page (default 1, max 7).","title":"Days"},"description":"Days per page (default 1, max 7)."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Opaque pagination cursor (application/json responses only).","title":"Cursor"},"description":"Opaque pagination cursor (application/json responses only)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/Page_CrownPressResponse_"},{}],"title":"Response Get Crown Presses V1 Timeline Events Crown Presses  User Id  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/feelings/{user_id}/{ftype}":{"get":{"tags":["feelings"],"summary":"Get Feelings Data","operationId":"get_feelings_data_v1_feelings__user_id___ftype__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"ftype","in":"path","required":true,"schema":{"enum":["NIGHT","DAY"],"type":"string","title":"Ftype"}},{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}},{"name":"days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Days per page (default 1, max 7).","title":"Days"},"description":"Days per page (default 1, max 7)."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Opaque pagination cursor (application/json responses only).","title":"Cursor"},"description":"Opaque pagination cursor (application/json responses only)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/Page_FeelingsModel_"},{}],"title":"Response Get Feelings Data V1 Feelings  User Id   Ftype  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/overview/{user_id}/{stype}":{"get":{"tags":["overview"],"summary":"Get User Statistics","operationId":"get_user_statistics_v1_overview__user_id___stype__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"stype","in":"path","required":true,"schema":{"enum":["HRV","SLEEP_DURATION","SLEEP_REGULARITY","INTENSE_ACTIVITY","RHR","STRESS_DURATION","STRESS_RECOVERY","STRESS_FREQUENCY"],"type":"string","title":"Stype"}},{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"type":"array","items":{"anyOf":[{"$ref":"#/components/schemas/HRV"},{"$ref":"#/components/schemas/SLEEP_DURATION"},{"$ref":"#/components/schemas/SLEEP_REGULARITY"},{"$ref":"#/components/schemas/INTENSE_ACTIVITY"},{"$ref":"#/components/schemas/RHR"},{"$ref":"#/components/schemas/STRESS_DURATION"},{"$ref":"#/components/schemas/STRESS_FREQUENCY"},{"$ref":"#/components/schemas/STRESS_RECOVERY"}]}},{}],"title":"Response Get User Statistics V1 Overview  User Id   Stype  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/v1/intentions/{user_id}":{"get":{"tags":["intention"],"summary":"Get Intention Data","operationId":"get_intention_data_v1_intentions__user_id__get","security":[{"APIKeyHeader":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"start_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"Start Date"}},{"name":"end_date","in":"query","required":true,"schema":{"type":"string","format":"date","title":"End Date"}},{"name":"days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Days per page (default 1, max 7).","title":"Days"},"description":"Days per page (default 1, max 7)."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Opaque pagination cursor.","title":"Cursor"},"description":"Opaque pagination cursor."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/Page_IntentionModel_"},{}],"title":"Response Get Intention Data V1 Intentions  User Id  Get"}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/":{"get":{"summary":"Read Root","operationId":"read_root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"4XX":{"description":"Client error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"5XX":{"description":"Server error (RFC 7807 problem document).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}}},"components":{"schemas":{"ActivityModel":{"properties":{"start_datetime":{"type":"string","format":"date-time","title":"Start Datetime","description":"The start date and time of the activity."},"end_datetime":{"type":"string","format":"date-time","title":"End Datetime","description":"The end date and time of the activity."},"type":{"$ref":"#/components/schemas/ActivityType","description":"The type of activity."},"origin":{"$ref":"#/components/schemas/ActivityOrigin","description":"The origin of the activity data."}},"type":"object","required":["start_datetime","end_datetime","type","origin"],"title":"ActivityModel"},"ActivityOrigin":{"type":"integer","enum":[0,1,2,3,4,5],"title":"ActivityOrigin"},"ActivityType":{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117],"title":"ActivityType","description":"Enum for session categories."},"CheckinModel":{"properties":{"datetime":{"type":"string","format":"date-time","title":"Datetime","description":"Date and time of the check-in"},"origin":{"anyOf":[{"$ref":"#/components/schemas/CheckinOrigin"},{"type":"null"}],"description":"Origin of the check-in, e.g., Crown Press, Random Reminder, Prolonged Stress"},"valence":{"anyOf":[{"$ref":"#/components/schemas/ValenceType"},{"type":"null"}],"description":"Valence of the check-in"},"reactivity":{"anyOf":[{"$ref":"#/components/schemas/ReactivityType"},{"type":"null"}],"description":"Reactivity of the check-in"},"related_feelings":{"items":{"$ref":"#/components/schemas/RelatedFeelingType"},"type":"array","title":"Related Feelings","description":"Related feelings during the check-in"},"context":{"items":{"anyOf":[{"$ref":"#/components/schemas/ContextWhoWith"},{"$ref":"#/components/schemas/ContextWhere"},{"$ref":"#/components/schemas/ContextWhat"}]},"type":"array","title":"Context","description":"Context of the check-in"}},"type":"object","required":["datetime","origin","valence","reactivity","related_feelings","context"],"title":"CheckinModel"},"CheckinOrigin":{"type":"integer","enum":[0,1,2,3,4,5],"title":"CheckinOrigin"},"ContextWhat":{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112],"title":"ContextWhat"},"ContextWhere":{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35],"title":"ContextWhere"},"ContextWhoWith":{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,12,13,14,15,16,19,20],"title":"ContextWhoWith"},"CrownPressResponse":{"properties":{"datetime":{"type":"string","format":"date-time","title":"Datetime"},"type":{"type":"string","enum":["CROWN_PRESS","DOUBLE_CROWN_PRESS"],"title":"Type"}},"type":"object","required":["datetime","type"],"title":"CrownPressResponse"},"FeelingsModel":{"properties":{"date":{"type":"string","format":"date","title":"Date","description":"The date the feedback was recorded."},"value":{"$ref":"#/components/schemas/FeelingsValue","description":"The value of the feedback."}},"type":"object","required":["date","value"],"title":"FeelingsModel"},"FeelingsType":{"type":"integer","enum":[4,5],"title":"FeelingsType","description":"Enum for feedback type. 4 for day, 5 for night."},"FeelingsValue":{"type":"integer","enum":[1,2,3,4,5],"title":"FeelingsValue","description":"Enum for feedback value. 1-5 from very bad to very good."},"HRV":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"hrv_daily":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Hrv Daily","x-unit":"ms"},"hrv_typical":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Hrv Typical","x-unit":"ms"},"hrv_upper_deviation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Hrv Upper Deviation","x-unit":"ms"},"hrv_lower_deviation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Hrv Lower Deviation","x-unit":"ms"},"hrv_descriptive":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hrv Descriptive"}},"type":"object","required":["date"],"title":"HRV"},"INTENSE_ACTIVITY":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"intense_activity_daily":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Intense Activity Daily","x-unit":"min"},"intense_activity_regularity":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Intense Activity Regularity","x-unit":"ratio"},"intense_activity_descriptive":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Intense Activity Descriptive"}},"type":"object","required":["date"],"title":"INTENSE_ACTIVITY"},"IntentionModel":{"properties":{"id":{"type":"string","format":"uuid","title":"Id","description":"Unique identifier for the intention"},"start_datetime":{"type":"string","format":"date-time","title":"Start Datetime","description":"The start date and time of the intention."},"end_datetime":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"End Datetime","description":"The end date and time of the intention."},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"The name of the intention."},"last_updated":{"type":"string","format":"date-time","title":"Last Updated","description":"The last updated timestamp."},"created":{"type":"string","format":"date-time","title":"Created","description":"The creation timestamp."},"subjective_inputs":{"items":{"$ref":"#/components/schemas/SubjectiveInputModel"},"type":"array","title":"Subjective Inputs","description":"List of subjective inputs for this intention."},"info_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Info Data","description":"Additional information data for the intention."}},"type":"object","required":["id","start_datetime","last_updated","created","subjective_inputs"],"title":"IntentionModel"},"IntentionTag":{"type":"integer","enum":[0,1,2,3],"title":"IntentionTag","description":"Enum for intention tags."},"MeasurementJSON":{"properties":{"timestamp":{"items":{"type":"string","format":"date-time"},"type":"array","title":"Timestamp"},"value":{"items":{"anyOf":[{"type":"number"},{"type":"integer"},{"type":"string"}]},"type":"array","title":"Value"},"quality":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Quality"},"label":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Label"}},"type":"object","required":["timestamp","value"],"title":"MeasurementJSON"},"MeasurementJSONPage":{"properties":{"data":{"$ref":"#/components/schemas/MeasurementJSON"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["data"],"title":"MeasurementJSONPage","description":"Paginated timeseries response. `next_cursor` is null when there are no more pages.\n\nThis intentionally is *not* `Page[MeasurementJSON]`: the generic envelope in\ncore/pagination.py has `data: list[T]`, but timeseries returns a columnar\nobject (`{timestamp: [...], value: [...], ...}`) rather than a list of\nrow objects."},"Page_ActivityModel_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/ActivityModel"},"type":"array","title":"Data"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["data"],"title":"Page[ActivityModel]"},"Page_CheckinModel_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/CheckinModel"},"type":"array","title":"Data"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["data"],"title":"Page[CheckinModel]"},"Page_CrownPressResponse_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/CrownPressResponse"},"type":"array","title":"Data"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["data"],"title":"Page[CrownPressResponse]"},"Page_FeelingsModel_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/FeelingsModel"},"type":"array","title":"Data"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["data"],"title":"Page[FeelingsModel]"},"Page_IntentionModel_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/IntentionModel"},"type":"array","title":"Data"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["data"],"title":"Page[IntentionModel]"},"Page_Sleep_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/Sleep"},"type":"array","title":"Data"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["data"],"title":"Page[Sleep]"},"ProblemDetail":{"properties":{"type":{"type":"string","title":"Type","description":"A URI reference identifying the problem type.","default":"about:blank"},"title":{"type":"string","title":"Title","description":"A short, human-readable summary of the problem type."},"status":{"type":"integer","title":"Status","description":"The HTTP status code."},"detail":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Detail","description":"A human-readable explanation specific to this occurrence."},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instance","description":"A URI reference identifying the specific occurrence."},"code":{"type":"string","title":"Code","description":"A stable, machine-readable error code."},"request_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Request Id","description":"Request identifier, also returned in the X-Request-Id header."}},"type":"object","required":["title","status","code"],"title":"ProblemDetail","description":"RFC 7807 Problem Details, with `code` and `request_id` extensions."},"RHR":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"rhr_daily":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Rhr Daily","x-unit":"bpm"},"rhr_typical":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Rhr Typical","x-unit":"bpm"},"rhr_upper_deviation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Rhr Upper Deviation","x-unit":"bpm"},"rhr_lower_deviation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Rhr Lower Deviation","x-unit":"bpm"},"rhr_descriptive":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rhr Descriptive"}},"type":"object","required":["date"],"title":"RHR"},"ReactivityType":{"type":"integer","enum":[-3,-2,-1,0,1,2,3],"title":"ReactivityType"},"RelatedFeelingType":{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,21],"title":"RelatedFeelingType"},"SLEEP_DURATION":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"sleep_duration_daily":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Sleep Duration Daily","x-unit":"min"},"sleep_duration_typical":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Sleep Duration Typical","x-unit":"min"},"sleep_duration_descriptive":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sleep Duration Descriptive"}},"type":"object","required":["date"],"title":"SLEEP_DURATION"},"SLEEP_REGULARITY":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"sleep_bedtime_daily":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Sleep Bedtime Daily"},"sleep_waketime_daily":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Sleep Waketime Daily"},"sleep_bedtime_typical":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Sleep Bedtime Typical","x-unit":"hour"},"sleep_waketime_typical":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Sleep Waketime Typical","x-unit":"hour"},"sleep_regularity_descriptive":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sleep Regularity Descriptive"}},"type":"object","required":["date"],"title":"SLEEP_REGULARITY"},"STRESS_DURATION":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"stress_duration_daily":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Duration Daily","x-unit":"min"},"stress_duration_typical":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Duration Typical","x-unit":"min"},"stress_duration_lower_deviation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Duration Lower Deviation","x-unit":"min"},"stress_duration_upper_deviation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Duration Upper Deviation","x-unit":"min"},"stress_duration_descriptive":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stress Duration Descriptive"}},"type":"object","required":["date"],"title":"STRESS_DURATION"},"STRESS_FREQUENCY":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"stress_frequency_daily":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Frequency Daily","x-unit":"count"},"stress_frequency_descriptive":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stress Frequency Descriptive"}},"type":"object","required":["date"],"title":"STRESS_FREQUENCY"},"STRESS_RECOVERY":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"stress_recovery_daily":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Recovery Daily","x-unit":"min"},"stress_recovery_typical":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Recovery Typical","x-unit":"min"},"stress_recovery_lower_deviation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Recovery Lower Deviation","x-unit":"min"},"stress_recovery_upper_deviation":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Stress Recovery Upper Deviation","x-unit":"min"},"stress_recovery_descriptive":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stress Recovery Descriptive"}},"type":"object","required":["date"],"title":"STRESS_RECOVERY"},"Sleep":{"properties":{"start_datetime":{"type":"string","format":"date-time","title":"Start Datetime"},"end_datetime":{"type":"string","format":"date-time","title":"End Datetime"},"stages":{"anyOf":[{"items":{"$ref":"#/components/schemas/SleepStage"},"type":"array"},{"type":"null"}],"title":"Stages"}},"type":"object","required":["start_datetime","end_datetime","stages"],"title":"Sleep"},"SleepStage":{"properties":{"start_datetime":{"type":"string","format":"date-time","title":"Start Datetime"},"end_datetime":{"type":"string","format":"date-time","title":"End Datetime"},"stage":{"type":"string"}},"type":"object","required":["start_datetime","end_datetime","stage"],"title":"SleepStage"},"SleepStageType":{"type":"integer","enum":[4,3,2,1,0],"title":"SleepStageType"},"SubjectiveInputModel":{"properties":{"date_time":{"type":"string","format":"date-time","title":"Date Time","description":"The date and time of the subjective input."},"tag":{"$ref":"#/components/schemas/IntentionTag","description":"The intention tag."},"value":{"type":"integer","title":"Value","description":"The value of the subjective input."},"type":{"$ref":"#/components/schemas/SubjectiveInputType","description":"The type of subjective input."}},"type":"object","required":["date_time","tag","value","type"],"title":"SubjectiveInputModel"},"SubjectiveInputType":{"type":"integer","enum":[0,1,2,3,4,5,6],"title":"SubjectiveInputType","description":"Enum for subjective input types."},"TimezoneInfo":{"properties":{"offset_minutes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Offset Minutes"},"found_date":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Found Date"}},"type":"object","required":["offset_minutes","found_date"],"title":"TimezoneInfo"},"TimezoneResponse":{"properties":{"date":{"type":"string","format":"date","title":"Date"},"timezone":{"$ref":"#/components/schemas/TimezoneInfo"}},"type":"object","required":["date","timezone"],"title":"TimezoneResponse"},"User":{"properties":{"age":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Age","description":"Age of the user"},"sex":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sex","description":"Sex of the user"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Height","description":"Height of the user in centimeters"},"weight":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Weight","description":"Weight of the user in kilograms"},"watch_hand":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Watch Hand","description":"Hand the user wears their watch on (LEFT or RIGHT)"},"dominant_hand":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dominant Hand","description":"Dominant hand of the user (LEFT or RIGHT)"},"platform":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Platform","description":"Platform the user is using (IOS or ANDROID)"}},"type":"object","required":["age","sex","height","weight","watch_hand","dominant_hand","platform"],"title":"User","examples":[{"age":30,"dominant_hand":"RIGHT","height":175,"platform":"IOS","sex":"MALE","watch_hand":"LEFT","weight":65}]},"ValenceType":{"type":"integer","enum":[-3,-2,-1,0,1,2,3],"title":"ValenceType"}},"securitySchemes":{"APIKeyHeader":{"type":"apiKey","in":"header","name":"X-API-KEY"}}},"tags":[{"name":"user","description":"User profile and account metadata."},{"name":"timeseries","description":"High-frequency timeline measurements (heart rate, HRV, skin conductance, etc.)."},{"name":"sleep","description":"Sleep events and stages."},{"name":"checkin","description":"Check-in events."},{"name":"activity","description":"Activity events."},{"name":"timezone","description":"Timezone-change events."},{"name":"crown_presses","description":"Crown-press events."},{"name":"feelings","description":"Self-reported feelings."},{"name":"overview","description":"Daily and typical statistical overviews per metric type."},{"name":"intention","description":"User intentions."}]}