batchDelete(parent, body=None, x__xgafv=None)
Delete a batch of identifyable data points.
Close httplib2 connections.
create(parent, body=None, x__xgafv=None)
Creates a single identifiable data point.
dailyRollUp(parent, body=None, x__xgafv=None)
Roll up data points over civil time intervals for supported data types.
exportExerciseTcx(name, partialData=None, x__xgafv=None)
Exports exercise data in TCX format. Note: While the Authorization section below states that any one of the listed scopes is accepted, this specific method requires the user to provide both one of the `activity_and_fitness` scopes (`normal` or `readonly`) AND one of the `location` scopes (`normal` or `readonly`) in their access token to succeed.
exportExerciseTcx_media(name, partialData=None, x__xgafv=None)
Exports exercise data in TCX format. Note: While the Authorization section below states that any one of the listed scopes is accepted, this specific method requires the user to provide both one of the `activity_and_fitness` scopes (`normal` or `readonly`) AND one of the `location` scopes (`normal` or `readonly`) in their access token to succeed.
Get a single identifyable data point.
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
Query user health and fitness data points.
Retrieves the next page of results.
patch(name, body=None, x__xgafv=None)
Updates a single identifiable data point. If a data point with the specified `name` is not found, the request will fail.
reconcile(parent, dataSourceFamily=None, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
Reconcile data points from multiple data sources into a single data stream.
Retrieves the next page of results.
rollUp(parent, body=None, x__xgafv=None)
Roll up data points over physical time intervals for supported data types.
Retrieves the next page of results.
batchDelete(parent, body=None, x__xgafv=None)
Delete a batch of identifyable data points.
Args:
parent: string, Optional. Parent (data type) for the Data Point collection Format: `users/me/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/-` For a list of the supported data types see the DataPoint data union field. Deleting data points across multiple data type collections is supported following https://aip.dev/159. If this is set, the parent of all of the data points specified in `names` must match this field. (required)
body: object, The request body.
The object takes the form of:
{ # Request to delete a batch of identifiable data points.
"names": [ # Required. The names of the DataPoints to delete. A maximum of 10000 data points can be deleted in a single request.
"A String",
],
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This resource represents a long-running operation that is the result of a network API call.
"done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
"error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
"code": 42, # The status code, which should be an enum value of google.rpc.Code.
"details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
{
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
],
"message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
},
"metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
"name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
"response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
}
close()
Close httplib2 connections.
create(parent, body=None, x__xgafv=None)
Creates a single identifiable data point.
Args:
parent: string, Required. The parent resource name where the data point will be created. Format: `users/{user}/dataTypes/{data_type}` (required)
body: object, The request body.
The object takes the form of:
{ # A computed or recorded metric.
"activeMinutes": { # Record of active minutes in a given time interval. # Optional. Data for points in the `active-minutes` interval data type collection.
"activeMinutesByActivityLevel": [ # Required. Active minutes by activity level. At most one record per activity level is allowed.
{ # Active minutes at a given activity level.
"activeMinutes": "A String", # Required. Number of whole minutes spent in activity.
"activityLevel": "A String", # Required. The level of activity.
},
],
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activeZoneMinutes": { # Record of active zone minutes in a given time interval. # Optional. Data for points in the `active-zone-minutes` interval data type collection, measured in minutes.
"activeZoneMinutes": "A String", # Required. Number of Active Zone Minutes earned in the given time interval. Note: active_zone_minutes equals to 1 for low intensity (fat burn) zones or 2 for high intensity zones (cardio, peak).
"heartRateZone": "A String", # Required. Heart rate zone in which the active zone minutes have been earned, in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activityLevel": { # Internal type to capture activity level during a certain time interval. # Optional. Data for points in the `activity-level` daily data type collection.
"activityLevelType": "A String", # Required. Activity level type in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"altitude": { # Captures the altitude gain (i.e. deltas), and not level above sea, for a user in millimeters. # Optional. Data for points in the `altitude` interval data type collection.
"gainMillimeters": "A String", # Required. Altitude gain in millimeters over the observed interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"bodyFat": { # Body fat measurement. # Optional. Data for points in the `body-fat` sample data type collection.
"percentage": 3.14, # Required. Body fat percentage, in range [0, 100].
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which body fat was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"dailyHeartRateVariability": { # Represents the daily heart rate variability data type. At least one of the following fields must be set: - `average_heart_rate_variability_milliseconds` - `non_rem_heart_rate_beats_per_minute` - `entropy` - `deep_sleep_root_mean_square_of_successive_differences_milliseconds` # Optional. Data for points in the `daily-heart-rate-variability` daily data type collection.
"averageHeartRateVariabilityMilliseconds": 3.14, # Optional. A user's average heart rate variability calculated using the root mean square of successive differences (RMSSD) in times between heartbeats.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of heart rate variability measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"deepSleepRootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences (RMSSD) value during deep sleep.
"entropy": 3.14, # Optional. The Shanon entropy of heartbeat intervals. Entropy quantifies randomness or disorder in a system. High entropy indicates high HRV. Entropy is measured from the histogram of time interval between successive heart beats values measured during sleep.
"nonRemHeartRateBeatsPerMinute": "A String", # Optional. Non-REM heart rate
},
"dailyHeartRateZones": { # User's heart rate zone thresholds based on the Karvonen algorithm for a specific day. # Optional. Data for points in the `daily-heart-rate-zones` daily data type collection.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the heart rate zones record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"heartRateZones": [ # Required. The heart rate zones.
{ # The heart rate zone.
"heartRateZoneType": "A String", # Required. The heart rate zone type.
"maxBeatsPerMinute": "A String", # Required. Maximum heart rate for this zone in beats per minute.
"minBeatsPerMinute": "A String", # Required. Minimum heart rate for this zone in beats per minute.
},
],
},
"dailyOxygenSaturation": { # A daily oxygen saturation (SpO2) record. Represents the user's daily oxygen saturation summary, typically calculated during sleep. # Optional. Data for points in the `daily-oxygen-saturation` daily data type collection.
"averagePercentage": 3.14, # Required. The average value of the oxygen saturation samples during the sleep.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the daily oxygen saturation record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"lowerBoundPercentage": 3.14, # Required. The lower bound of the confidence interval of oxygen saturation samples during sleep.
"standardDeviationPercentage": 3.14, # Optional. Standard deviation of the daily oxygen saturation averages from the past 7-30 days.
"upperBoundPercentage": 3.14, # Required. The upper bound of the confidence interval of oxygen saturation samples during sleep.
},
"dailyRespiratoryRate": { # A daily average respiratory rate (breaths per minute) for a day of the year. One data point per day calculated for the main sleep. # Optional. Data for points in the `daily-respiratory-rate` daily data type collection.
"breathsPerMinute": 3.14, # Required. The average number of breaths taken per minute.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date on which the respiratory rate was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailyRestingHeartRate": { # Measures the daily resting heart rate for a user, calculated using the all day heart rate measurements. # Optional. Data for points in the `daily-resting-heart-rate` daily data type collection.
"beatsPerMinute": "A String", # Required. The resting heart rate value in beats per minute.
"dailyRestingHeartRateMetadata": { # Metadata for the daily resting heart rate. # Optional. Metadata for the daily resting heart rate.
"calculationMethod": "A String", # Required. The method used to calculate the resting heart rate.
},
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of the resting heart rate measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailySleepTemperatureDerivations": { # Provides derived sleep temperature values, calculated from skin or internal device temperature readings during sleep. # Optional. Data for points in the `daily-sleep-temperature-derivations` daily data type collection.
"baselineTemperatureCelsius": 3.14, # Optional. The user's baseline skin temperature. It is the median of the user's nightly skin temperature over the past 30 days.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date for which the sleep temperature derivations are calculated.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"nightlyTemperatureCelsius": 3.14, # Required. The user's nightly skin temperature. It is the mean of skin temperature samples taken from the user’s sleep.
"relativeNightlyStddev30dCelsius": 3.14, # Optional. The standard deviation of the user’s relative nightly skin temperature (temperature - baseline) over the past 30 days.
},
"dailyVo2Max": { # Contains a daily summary of the user's VO2 max (cardio fitness score), which is the maximum rate of oxygen the body can use during exercise. # Optional. Data for points in the `daily-vo2-max` daily data type collection.
"cardioFitnessLevel": "A String", # Optional. Represents the user's cardio fitness level based on their VO2 max.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date for which the Daily VO2 max was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"estimated": True or False, # Optional. An estimated field is added to indicate when the confidence has decreased sufficiently to consider the value an estimation.
"vo2Max": 3.14, # Required. Daily VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
"vo2MaxCovariance": 3.14, # Optional. The covariance of the VO2 max value.
},
"dataSource": { # Data Source definition to track the origin of data. Each health data point, regardless of the complexity or data model (whether a simple step count or a detailed sleep session) must retain information about its source of origin (e.g. the device or app that collected it). # Optional. Data source information for the metric
"application": { # Optional metadata for the application that provided this data. # Output only. Captures metadata for the application that provided this data.
"googleWebClientId": "A String", # Output only. The Google OAuth 2.0 client ID of the web application or service that recorded the data. This is the client ID used during the Google OAuth flow to obtain user credentials. This field is system-populated when the data is uploaded from Google Web API.
"packageName": "A String", # Output only. A unique identifier for the mobile application that was the source of the data. This is typically the application's package name on Android (e.g., `com.google.fitbit`) or the bundle ID on iOS. This field is informational and helps trace data origin. This field is system-populated when the data is uploaded from the Fitbit mobile application, Health Connect or Health Kit.
"webClientId": "A String", # Output only. The client ID of the application that recorded the data. This ID is a legacy Fitbit API client ID, which is different from a Google OAuth client ID. Example format: `ABC123`. This field is system-populated and used for tracing data from legacy Fitbit API integrations. This field is system-populated when the data is uploaded from a legacy Fitbit API integration.
},
"device": { # Captures metadata about the device that recorded the measurement. # Optional. Captures metadata for raw data points originating from devices. We expect this data source to be used for data points written on device sync.
"displayName": "A String", # Optional. An optional name for the device.
"formFactor": "A String", # Optional. Captures the form factor of the device.
"manufacturer": "A String", # Optional. An optional manufacturer of the device.
},
"platform": "A String", # Output only. Captures the platform that uploaded the data.
"recordingMethod": "A String", # Optional. Captures how the data was recorded.
},
"distance": { # Distance traveled over an interval of time. # Optional. Data for points in the `distance` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"millimeters": "A String", # Required. Distance in millimeters over the observed interval.
},
"exercise": { # An exercise that stores information about a physical activity. # Optional. Data for points in the `exercise` session data type collection.
"activeDuration": "A String", # Optional. Duration excluding pauses.
"createTime": "A String", # Output only. Represents the timestamp of the creation of the exercise.
"displayName": "A String", # Required. Exercise display name.
"exerciseEvents": [ # Optional. Exercise events that happen during an exercise, such as pause & restarts.
{ # Represents instantaneous events that happen during an exercise, such as start, stop, pause, split.
"eventTime": "A String", # Required. Exercise event time
"eventUtcOffset": "A String", # Required. Exercise event time offset from UTC
"exerciseEventType": "A String", # Required. The type of the event, such as start, stop, pause, resume.
},
],
"exerciseMetadata": { # Additional exercise metadata. # Optional. Additional exercise metadata.
"hasGps": True or False, # Optional. Whether the exercise had GPS tracking.
"poolLengthMillimeters": "A String", # Optional. Pool length in millimeters. Only present in the swimming exercises.
},
"exerciseType": "A String", # Required. The type of activity performed during an exercise.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed exercise interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this exercise ( )
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"splitSummaries": [ # Optional. Laps or splits recorded within an exercise. Laps could be split based on distance or other criteria (duration, etc.) Laps should not be overlapping with each other.
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"splits": [ # Optional. The default split is 1 km or 1 mile. - if the movement distance is less than the default, then there are no splits - if the movement distance is greater than or equal to the default, then we have splits
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"updateTime": "A String", # Output only. This is the timestamp of the last update to the exercise.
},
"floors": { # Gained elevation measured in floors over the time interval # Optional. Data for points in the `floors` interval data type collection.
"count": "A String", # Required. Number of floors in the recorded interval
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRate": { # A heart rate measurement. # Optional. Data for points in the `heart-rate` sample data type collection.
"beatsPerMinute": "A String", # Required. The heart rate value in beats per minute.
"metadata": { # Heart rate metadata. # Optional. Metadata about the heart rate sample.
"motionContext": "A String", # Optional. Indicates the user’s level of activity when the heart rate sample was measured
"sensorLocation": "A String", # Optional. Indicates the location of the sensor that measured the heart rate.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. Observation time
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRateVariability": { # Captures user's heart rate variability (HRV) as measured by the root mean square of successive differences (RMSSD) between normal heartbeats or by standard deviation of the inter-beat intervals (SDNN). # Optional. Data for points in the `heart-rate-variability` sample data type collection.
"rootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences between normal heartbeats. This is a measure of heart rate variability used by Fitbit.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time of the heart rate variability measurement.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"standardDeviationMilliseconds": 3.14, # Optional. The standard deviation of the heart rate variability measurement.
},
"height": { # Body height measurement. # Optional. Data for points in the `height` sample data type collection.
"heightMillimeters": "A String", # Required. Height of the user in millimeters.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the height was recorded.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"hydrationLog": { # Holds information about a user logged hydration. # Optional. Data for points in the `hydration-log` session data type collection.
"amountConsumed": { # Represents the volume quantity. # Required. Amount of liquid (ex. water) consumed.
"milliliters": 3.14, # Required. Value representing the volume in milliliters.
"userProvidedUnit": "A String", # Optional. Value representing the user provided unit.
},
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
},
"name": "A String", # Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.
"oxygenSaturation": { # Captures the user's instantaneous oxygen saturation percentage (SpO2). # Optional. Data for points in the `oxygen-saturation` sample data type collection.
"percentage": 3.14, # Required. The oxygen saturation percentage. Valid values are from 0 to 100.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which oxygen saturation was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"respiratoryRateSleepSummary": { # Records respiratory rate details during sleep. Can have multiple per day if the user sleeps multiple times. # Optional. Data for points in the `respiratory-rate-sleep-summary` sample data type collection.
"deepSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for deep sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"fullSleepStats": { # Respiratory rate statistics for a given sleep stage. # Required. Full respiratory rate statistics.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"lightSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for light sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"remSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for REM sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which respiratory rate was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"runVo2Max": { # VO2 max value calculated based on the user's running activity. Value stored in ml/kg/min. # Optional. Data for points in the `run-vo2-max` sample data type collection.
"runVo2Max": 3.14, # Required. Run VO2 max value in ml/kg/min.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the metric was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"sedentaryPeriod": { # SedentaryPeriod SedentaryPeriod data represents the periods of time that the user was sedentary (i.e. not moving while wearing the device). # Optional. Data for points in the `sedentary-period` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"sleep": { # A sleep session possibly including stages. # Optional. Data for points in the `sleep` session data type collection.
"createTime": "A String", # Output only. Creation time of this sleep observation.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed sleep interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metadata": { # Additional information about how the sleep was processed. # Optional. Sleep metadata: processing, main, manually edited, stages status.
"externalId": "A String", # Optional. Sleep identifier relevant in the context of the data source.
"manuallyEdited": True or False, # Output only. Some sleeps autodetected by algorithms can be manually edited by users.
"nap": True or False, # Output only. Naps are sleeps without stages and relatively short durations.
"processed": True or False, # Output only. Sleep and sleep stages algorithms finished processing.
"stagesStatus": "A String", # Output only. Sleep stages algorithm processing status.
},
"outOfBedSegments": [ # Optional. “Out of bed” segments that can overlap with sleep stages.
{ # A time interval to represent an out-of-bed segment.
"endTime": "A String", # Required. Segment end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the segment relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Segment tart time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the segment relative to the Coordinated Universal Time (UTC).
},
],
"stages": [ # Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period.
{ # Sleep stage segment.
"createTime": "A String", # Output only. Creation time of this sleep stages segment.
"endTime": "A String", # Required. Sleep stage end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the sleep stage relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Sleep stage start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the sleep stage relative to the Coordinated Universal Time (UTC).
"type": "A String", # Required. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
"updateTime": "A String", # Output only. Last update time of this sleep stages segment.
},
],
"summary": { # Sleep summary: metrics and stages summary. # Output only. Sleep summary: metrics and stages summary.
"minutesAfterWakeUp": "A String", # Output only. Minutes after wake up calculated by restlessness algorithm.
"minutesAsleep": "A String", # Output only. Total number of minutes asleep. For classic sleep it is the sum of ASLEEP stages (excluding AWAKE and RESTLESS). For "stages" sleep it is the sum of LIGHT, REM and DEEP stages (excluding AWAKE).
"minutesAwake": "A String", # Output only. Total number of minutes awake. It is a sum of all AWAKE stages.
"minutesInSleepPeriod": "A String", # Output only. Delta between wake time and bedtime. It is the sum of all stages.
"minutesToFallAsleep": "A String", # Output only. Minutes to fall asleep calculated by restlessness algorithm.
"stagesSummary": [ # Output only. List of summaries (total duration and segment count) per each sleep stage type.
{ # Total duration and segment count for a stage.
"count": "A String", # Output only. Number of sleep stages segments.
"minutes": "A String", # Output only. Total duration in minutes of a sleep stage.
"type": "A String", # Output only. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
},
],
},
"type": "A String", # Optional. SleepType: classic or stages.
"updateTime": "A String", # Output only. Last update time of this sleep observation.
},
"steps": { # Step count over the time interval. # Optional. Data for points in the `steps` interval data type collection.
"count": "A String", # Required. Number of steps in the recorded interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"swimLengthsData": { # Swim lengths data over the time interval. # Optional. Data for points in the `swim-lengths-data` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"strokeCount": "A String", # Required. Number of strokes in the lap.
"swimStrokeType": "A String", # Required. Swim stroke type.
},
"timeInHeartRateZone": { # Time in heart rate zone record. It's an interval spent in specific heart rate zone. # Optional. Data for points in the `time-in-heart-rate-zone` interval data type collection.
"heartRateZoneType": "A String", # Required. Heart rate zone type.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"vo2Max": { # VO2 max measurement. # Optional. Data for points in the `vo2-max` sample data type collection.
"measurementMethod": "A String", # Optional. The method used to measure the VO2 max value.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which VO2 max was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"vo2Max": 3.14, # Required. VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
},
"weight": { # Body weight measurement. # Optional. Data for points in the `weight` sample data type collection.
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the weight was measured
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"weightGrams": 3.14, # Required. Weight of a user in grams.
},
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This resource represents a long-running operation that is the result of a network API call.
"done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
"error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
"code": 42, # The status code, which should be an enum value of google.rpc.Code.
"details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
{
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
],
"message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
},
"metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
"name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
"response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
}
dailyRollUp(parent, body=None, x__xgafv=None)
Roll up data points over civil time intervals for supported data types.
Args:
parent: string, Required. Parent data type of the Data Point collection. Format: `users/{user}/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/distance` For a list of the supported data types see the DailyRollupDataPoint value union field. (required)
body: object, The request body.
The object takes the form of:
{ # Request to roll up data points by civil time intervals.
"dataSourceFamily": "A String", # Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources
"pageSize": 42, # Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly.
"pageToken": "A String", # Optional. The `next_page_token` from a previous request, if any. All other request fields need to be the same as in the initial request when the page token is specified.
"range": { # Counterpart of google.type.Interval, but using CivilDateTime. # Required. Closed-open range of data points that will be rolled up. The start time must be aligned with the aggregation window. The maximum range for `calories-in-heart-rate-zone`, `heart-rate`, `active-minutes` and `total-calories` is 14 days. The maximum range for all other data types is 90 days.
"end": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Required. The exclusive end of the range.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"start": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Required. The inclusive start of the range.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
},
"windowSizeDays": 42, # Optional. Aggregation window size, in number of days. Defaults to 1 if not specified.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response containing the list of rolled up data points.
"rollupDataPoints": [ # Values for each aggregation time window.
{ # Value of a daily rollup for a single civil time interval (aggregation window)
"activeMinutes": { # Represents the result of the rollup of the active minutes data type. # Returned by default when rolling up data points from the `active-minutes` data type, or when requested explicitly using the `active-minutes` rollup type identifier.
"activeMinutesRollupByActivityLevel": [ # Active minutes by activity level. At most one record per activity level is allowed.
{ # Active minutes by activity level.
"activeMinutesSum": "A String", # Number of whole minutes spent in activity.
"activityLevel": "A String", # The level of activity.
},
],
},
"activeZoneMinutes": { # Represents the result of the rollup of the active zone minutes data type. # Returned by default when rolling up data points from the `active-zone-minutes` data type, or when requested explicitly using the `active-zone-minutes` rollup type identifier.
"sumInCardioHeartZone": "A String", # Active zone minutes in `HeartRateZone.CARDIO`.
"sumInFatBurnHeartZone": "A String", # Active zone minutes in `HeartRateZone.FAT_BURN`.
"sumInPeakHeartZone": "A String", # Active zone minutes in `HeartRateZone.PEAK`.
},
"activityLevel": { # Represents the result of the rollup of the activity level data type. # Returned by default when rolling up data points from the `activity-level` data type, or when requested explicitly using the `activity-level` rollup type identifier.
"activityLevelRollupsByActivityLevelType": [ # List of total durations in each activity level type.
{ # Represents the total duration in a specific activity level type.
"activityLevelType": "A String", # Activity level type.
"totalDuration": "A String", # Total duration in the activity level type.
},
],
},
"altitude": { # Represents the result of the rollup of the user's altitude. # Returned by default when rolling up data points from the `altitude` data type, or when requested explicitly using the `altitude` rollup type identifier.
"gainMillimetersSum": "A String", # Sum of the altitude gain in millimeters.
},
"bodyFat": { # Represents the result of the rollup of the body fat data type. # Returned by default when rolling up data points from the `body-fat` data type, or when requested explicitly using the `body-fat` rollup type identifier.
"bodyFatPercentageAvg": 3.14, # Average body fat percentage.
},
"caloriesInHeartRateZone": { # Represents the result of the rollup of the calories in heart rate zone data type. # Returned by default when rolling up data points from the `calories-in-heart-rate-zone` data type, or when requested explicitly using the `calories-in-heart-rate-zone` rollup type identifier.
"caloriesInHeartRateZones": [ # List of calories burned in each heart rate zone.
{ # Represents the amount of kilocalories burned in a specific heart rate zone.
"heartRateZone": "A String", # The heart rate zone.
"kcal": 3.14, # The amount of kilocalories burned in the specified heart rate zone.
},
],
},
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # End time of the window this value aggregates over
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Start time of the window this value aggregates over
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"distance": { # Result of the rollup of the user's distance. # Returned by default when rolling up data points from the `distance` data type, or when requested explicitly using the `distance` rollup type identifier.
"millimetersSum": "A String", # Sum of the distance in millimeters.
},
"floors": { # Represents the result of the rollup of the user's floors. # Returned by default when rolling up data points from the `floors` data type, or when requested explicitly using the `floors` rollup type identifier.
"countSum": "A String", # Sum of the floors count.
},
"heartRate": { # Represents the result of the rollup of the heart rate data type. # Returned by default when rolling up data points from the `heart-rate` data type, or when requested explicitly using the `heart-rate` rollup type identifier.
"beatsPerMinuteAvg": 3.14, # The average heart rate value in the interval.
"beatsPerMinuteMax": 3.14, # The maximum heart rate value in the interval.
"beatsPerMinuteMin": 3.14, # The minimum heart rate value in the interval.
},
"heartRateVariabilityPersonalRange": { # Represents the result of the rollup of the user's daily heart rate variability personal range. # Returned by default when rolling up data points from the `daily-heart-rate-variability` data type, or when requested explicitly using the `heart-rate-variability-personal-range` rollup type identifier.
"averageHeartRateVariabilityMillisecondsMax": 3.14, # The upper bound of the user's average heart rate variability personal range.
"averageHeartRateVariabilityMillisecondsMin": 3.14, # The lower bound of the user's average heart rate variability personal range.
},
"hydrationLog": { # Represents the result of the rollup of the hydration log data type. # Returned by default when rolling up data points from the `hydration-log` data type, or when requested explicitly using the `hydration-log` rollup type identifier.
"amountConsumed": { # Rollup for volume quantity. # Rollup for amount consumed.
"millilitersSum": 3.14, # Required. The sum of volume in milliliters.
"userProvidedUnitLast": "A String", # Optional. The user provided unit on the last element.
},
},
"restingHeartRatePersonalRange": { # Represents the rollup value for the daily resting heart rate data type. # Returned by default when rolling up data points from the `daily-resting-heart-rate` data type, or when requested explicitly using the `resting-heart-rate-personal-range` rollup type identifier.
"beatsPerMinuteMax": 3.14, # The upper bound of the user's daily resting heart rate personal range.
"beatsPerMinuteMin": 3.14, # The lower bound of the user's daily resting heart rate personal range.
},
"runVo2Max": { # Represents the result of the rollup of the user's daily heart rate variability personal range. # Returned by default when rolling up data points from the `run-vo2-max` data type, or when requested explicitly using the `run-vo2-max` rollup type identifier.
"rateAvg": 3.14, # Average value of run VO2 max in the interval.
"rateMax": 3.14, # Maximum value of run VO2 max in the interval.
"rateMin": 3.14, # Minimum value of run VO2 max in the interval..
},
"sedentaryPeriod": { # Represents the result of the rollup of the user's sedentary periods. # Returned by default when rolling up data points from the `sedentary-period` data type, or when requested explicitly using the `sedentary-period` rollup type identifier.
"durationSum": "A String", # The total time user spent sedentary during the interval.
},
"steps": { # Represents the result of the rollup of the steps data type. # Returned by default when rolling up data points from the `steps` data type, or when requested explicitly using the `steps` rollup type identifier.
"countSum": "A String", # Total number of steps in the interval.
},
"swimLengthsData": { # Represents the result of the rollup of the swim lengths data type. # Returned by default when rolling up data points from the `swim-lengths-data` data type, or when requested explicitly using the `swim-lengths-data` rollup type identifier.
"strokeCountSum": "A String", # Total number of swim strokes in the interval.
},
"timeInHeartRateZone": { # Represents the result of the rollup of the time in heart rate zone data type. # Returned by default when rolling up data points from the `time-in-heart-rate-zone` data type, or when requested explicitly using the `time-in-heart-rate-zone` rollup type identifier.
"timeInHeartRateZones": [ # List of time spent in each heart rate zone.
{ # Represents the total time spent in a specific heart rate zone.
"duration": "A String", # The total time spent in the specified heart rate zone.
"heartRateZone": "A String", # The heart rate zone.
},
],
},
"totalCalories": { # Represents the result of the rollup of the user's total calories. # Returned by default when rolling up data points from the `total-calories` data type, or when requested explicitly using the `total-calories` rollup type identifier.
"kcalSum": 3.14, # Sum of the total calories in kilocalories.
},
"weight": { # Represents the result of the rollup of the weight data type. # Returned by default when rolling up data points from the `weight` data type, or when requested explicitly using the `weight` rollup type identifier.
"weightGramsAvg": 3.14, # Average weight in grams.
},
},
],
}
exportExerciseTcx(name, partialData=None, x__xgafv=None)
Exports exercise data in TCX format. Note: While the Authorization section below states that any one of the listed scopes is accepted, this specific method requires the user to provide both one of the `activity_and_fitness` scopes (`normal` or `readonly`) AND one of the `location` scopes (`normal` or `readonly`) in their access token to succeed.
Args:
name: string, Required. The resource name of the exercise data point to export. Format: `users/{user}/dataTypes/exercise/dataPoints/{data_point}` Example: `users/me/dataTypes/exercise/dataPoints/2026443605080188808` The `{user}` is the alias `"me"` currently. Future versions may support user IDs. The `{data_point}` ID maps to the exercise ID, which is a long integer. (required)
partialData: boolean, Optional. Indicates whether to include the TCX data points when the GPS data is not available. If not specified, defaults to `false` and partial data will not be included.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Represents a Response for exporting exercise data in TCX format.
"tcxData": "A String", # Contains the exported TCX data.
}
exportExerciseTcx_media(name, partialData=None, x__xgafv=None)
Exports exercise data in TCX format. Note: While the Authorization section below states that any one of the listed scopes is accepted, this specific method requires the user to provide both one of the `activity_and_fitness` scopes (`normal` or `readonly`) AND one of the `location` scopes (`normal` or `readonly`) in their access token to succeed.
Args:
name: string, Required. The resource name of the exercise data point to export. Format: `users/{user}/dataTypes/exercise/dataPoints/{data_point}` Example: `users/me/dataTypes/exercise/dataPoints/2026443605080188808` The `{user}` is the alias `"me"` currently. Future versions may support user IDs. The `{data_point}` ID maps to the exercise ID, which is a long integer. (required)
partialData: boolean, Optional. Indicates whether to include the TCX data points when the GPS data is not available. If not specified, defaults to `false` and partial data will not be included.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
The media object as a string.
get(name, x__xgafv=None)
Get a single identifyable data point.
Args:
name: string, Required. The name of the data point to retrieve. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` See DataPoint.name for examples and possible values. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A computed or recorded metric.
"activeMinutes": { # Record of active minutes in a given time interval. # Optional. Data for points in the `active-minutes` interval data type collection.
"activeMinutesByActivityLevel": [ # Required. Active minutes by activity level. At most one record per activity level is allowed.
{ # Active minutes at a given activity level.
"activeMinutes": "A String", # Required. Number of whole minutes spent in activity.
"activityLevel": "A String", # Required. The level of activity.
},
],
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activeZoneMinutes": { # Record of active zone minutes in a given time interval. # Optional. Data for points in the `active-zone-minutes` interval data type collection, measured in minutes.
"activeZoneMinutes": "A String", # Required. Number of Active Zone Minutes earned in the given time interval. Note: active_zone_minutes equals to 1 for low intensity (fat burn) zones or 2 for high intensity zones (cardio, peak).
"heartRateZone": "A String", # Required. Heart rate zone in which the active zone minutes have been earned, in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activityLevel": { # Internal type to capture activity level during a certain time interval. # Optional. Data for points in the `activity-level` daily data type collection.
"activityLevelType": "A String", # Required. Activity level type in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"altitude": { # Captures the altitude gain (i.e. deltas), and not level above sea, for a user in millimeters. # Optional. Data for points in the `altitude` interval data type collection.
"gainMillimeters": "A String", # Required. Altitude gain in millimeters over the observed interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"bodyFat": { # Body fat measurement. # Optional. Data for points in the `body-fat` sample data type collection.
"percentage": 3.14, # Required. Body fat percentage, in range [0, 100].
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which body fat was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"dailyHeartRateVariability": { # Represents the daily heart rate variability data type. At least one of the following fields must be set: - `average_heart_rate_variability_milliseconds` - `non_rem_heart_rate_beats_per_minute` - `entropy` - `deep_sleep_root_mean_square_of_successive_differences_milliseconds` # Optional. Data for points in the `daily-heart-rate-variability` daily data type collection.
"averageHeartRateVariabilityMilliseconds": 3.14, # Optional. A user's average heart rate variability calculated using the root mean square of successive differences (RMSSD) in times between heartbeats.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of heart rate variability measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"deepSleepRootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences (RMSSD) value during deep sleep.
"entropy": 3.14, # Optional. The Shanon entropy of heartbeat intervals. Entropy quantifies randomness or disorder in a system. High entropy indicates high HRV. Entropy is measured from the histogram of time interval between successive heart beats values measured during sleep.
"nonRemHeartRateBeatsPerMinute": "A String", # Optional. Non-REM heart rate
},
"dailyHeartRateZones": { # User's heart rate zone thresholds based on the Karvonen algorithm for a specific day. # Optional. Data for points in the `daily-heart-rate-zones` daily data type collection.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the heart rate zones record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"heartRateZones": [ # Required. The heart rate zones.
{ # The heart rate zone.
"heartRateZoneType": "A String", # Required. The heart rate zone type.
"maxBeatsPerMinute": "A String", # Required. Maximum heart rate for this zone in beats per minute.
"minBeatsPerMinute": "A String", # Required. Minimum heart rate for this zone in beats per minute.
},
],
},
"dailyOxygenSaturation": { # A daily oxygen saturation (SpO2) record. Represents the user's daily oxygen saturation summary, typically calculated during sleep. # Optional. Data for points in the `daily-oxygen-saturation` daily data type collection.
"averagePercentage": 3.14, # Required. The average value of the oxygen saturation samples during the sleep.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the daily oxygen saturation record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"lowerBoundPercentage": 3.14, # Required. The lower bound of the confidence interval of oxygen saturation samples during sleep.
"standardDeviationPercentage": 3.14, # Optional. Standard deviation of the daily oxygen saturation averages from the past 7-30 days.
"upperBoundPercentage": 3.14, # Required. The upper bound of the confidence interval of oxygen saturation samples during sleep.
},
"dailyRespiratoryRate": { # A daily average respiratory rate (breaths per minute) for a day of the year. One data point per day calculated for the main sleep. # Optional. Data for points in the `daily-respiratory-rate` daily data type collection.
"breathsPerMinute": 3.14, # Required. The average number of breaths taken per minute.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date on which the respiratory rate was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailyRestingHeartRate": { # Measures the daily resting heart rate for a user, calculated using the all day heart rate measurements. # Optional. Data for points in the `daily-resting-heart-rate` daily data type collection.
"beatsPerMinute": "A String", # Required. The resting heart rate value in beats per minute.
"dailyRestingHeartRateMetadata": { # Metadata for the daily resting heart rate. # Optional. Metadata for the daily resting heart rate.
"calculationMethod": "A String", # Required. The method used to calculate the resting heart rate.
},
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of the resting heart rate measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailySleepTemperatureDerivations": { # Provides derived sleep temperature values, calculated from skin or internal device temperature readings during sleep. # Optional. Data for points in the `daily-sleep-temperature-derivations` daily data type collection.
"baselineTemperatureCelsius": 3.14, # Optional. The user's baseline skin temperature. It is the median of the user's nightly skin temperature over the past 30 days.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date for which the sleep temperature derivations are calculated.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"nightlyTemperatureCelsius": 3.14, # Required. The user's nightly skin temperature. It is the mean of skin temperature samples taken from the user’s sleep.
"relativeNightlyStddev30dCelsius": 3.14, # Optional. The standard deviation of the user’s relative nightly skin temperature (temperature - baseline) over the past 30 days.
},
"dailyVo2Max": { # Contains a daily summary of the user's VO2 max (cardio fitness score), which is the maximum rate of oxygen the body can use during exercise. # Optional. Data for points in the `daily-vo2-max` daily data type collection.
"cardioFitnessLevel": "A String", # Optional. Represents the user's cardio fitness level based on their VO2 max.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date for which the Daily VO2 max was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"estimated": True or False, # Optional. An estimated field is added to indicate when the confidence has decreased sufficiently to consider the value an estimation.
"vo2Max": 3.14, # Required. Daily VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
"vo2MaxCovariance": 3.14, # Optional. The covariance of the VO2 max value.
},
"dataSource": { # Data Source definition to track the origin of data. Each health data point, regardless of the complexity or data model (whether a simple step count or a detailed sleep session) must retain information about its source of origin (e.g. the device or app that collected it). # Optional. Data source information for the metric
"application": { # Optional metadata for the application that provided this data. # Output only. Captures metadata for the application that provided this data.
"googleWebClientId": "A String", # Output only. The Google OAuth 2.0 client ID of the web application or service that recorded the data. This is the client ID used during the Google OAuth flow to obtain user credentials. This field is system-populated when the data is uploaded from Google Web API.
"packageName": "A String", # Output only. A unique identifier for the mobile application that was the source of the data. This is typically the application's package name on Android (e.g., `com.google.fitbit`) or the bundle ID on iOS. This field is informational and helps trace data origin. This field is system-populated when the data is uploaded from the Fitbit mobile application, Health Connect or Health Kit.
"webClientId": "A String", # Output only. The client ID of the application that recorded the data. This ID is a legacy Fitbit API client ID, which is different from a Google OAuth client ID. Example format: `ABC123`. This field is system-populated and used for tracing data from legacy Fitbit API integrations. This field is system-populated when the data is uploaded from a legacy Fitbit API integration.
},
"device": { # Captures metadata about the device that recorded the measurement. # Optional. Captures metadata for raw data points originating from devices. We expect this data source to be used for data points written on device sync.
"displayName": "A String", # Optional. An optional name for the device.
"formFactor": "A String", # Optional. Captures the form factor of the device.
"manufacturer": "A String", # Optional. An optional manufacturer of the device.
},
"platform": "A String", # Output only. Captures the platform that uploaded the data.
"recordingMethod": "A String", # Optional. Captures how the data was recorded.
},
"distance": { # Distance traveled over an interval of time. # Optional. Data for points in the `distance` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"millimeters": "A String", # Required. Distance in millimeters over the observed interval.
},
"exercise": { # An exercise that stores information about a physical activity. # Optional. Data for points in the `exercise` session data type collection.
"activeDuration": "A String", # Optional. Duration excluding pauses.
"createTime": "A String", # Output only. Represents the timestamp of the creation of the exercise.
"displayName": "A String", # Required. Exercise display name.
"exerciseEvents": [ # Optional. Exercise events that happen during an exercise, such as pause & restarts.
{ # Represents instantaneous events that happen during an exercise, such as start, stop, pause, split.
"eventTime": "A String", # Required. Exercise event time
"eventUtcOffset": "A String", # Required. Exercise event time offset from UTC
"exerciseEventType": "A String", # Required. The type of the event, such as start, stop, pause, resume.
},
],
"exerciseMetadata": { # Additional exercise metadata. # Optional. Additional exercise metadata.
"hasGps": True or False, # Optional. Whether the exercise had GPS tracking.
"poolLengthMillimeters": "A String", # Optional. Pool length in millimeters. Only present in the swimming exercises.
},
"exerciseType": "A String", # Required. The type of activity performed during an exercise.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed exercise interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this exercise ( )
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"splitSummaries": [ # Optional. Laps or splits recorded within an exercise. Laps could be split based on distance or other criteria (duration, etc.) Laps should not be overlapping with each other.
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"splits": [ # Optional. The default split is 1 km or 1 mile. - if the movement distance is less than the default, then there are no splits - if the movement distance is greater than or equal to the default, then we have splits
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"updateTime": "A String", # Output only. This is the timestamp of the last update to the exercise.
},
"floors": { # Gained elevation measured in floors over the time interval # Optional. Data for points in the `floors` interval data type collection.
"count": "A String", # Required. Number of floors in the recorded interval
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRate": { # A heart rate measurement. # Optional. Data for points in the `heart-rate` sample data type collection.
"beatsPerMinute": "A String", # Required. The heart rate value in beats per minute.
"metadata": { # Heart rate metadata. # Optional. Metadata about the heart rate sample.
"motionContext": "A String", # Optional. Indicates the user’s level of activity when the heart rate sample was measured
"sensorLocation": "A String", # Optional. Indicates the location of the sensor that measured the heart rate.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. Observation time
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRateVariability": { # Captures user's heart rate variability (HRV) as measured by the root mean square of successive differences (RMSSD) between normal heartbeats or by standard deviation of the inter-beat intervals (SDNN). # Optional. Data for points in the `heart-rate-variability` sample data type collection.
"rootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences between normal heartbeats. This is a measure of heart rate variability used by Fitbit.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time of the heart rate variability measurement.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"standardDeviationMilliseconds": 3.14, # Optional. The standard deviation of the heart rate variability measurement.
},
"height": { # Body height measurement. # Optional. Data for points in the `height` sample data type collection.
"heightMillimeters": "A String", # Required. Height of the user in millimeters.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the height was recorded.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"hydrationLog": { # Holds information about a user logged hydration. # Optional. Data for points in the `hydration-log` session data type collection.
"amountConsumed": { # Represents the volume quantity. # Required. Amount of liquid (ex. water) consumed.
"milliliters": 3.14, # Required. Value representing the volume in milliliters.
"userProvidedUnit": "A String", # Optional. Value representing the user provided unit.
},
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
},
"name": "A String", # Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.
"oxygenSaturation": { # Captures the user's instantaneous oxygen saturation percentage (SpO2). # Optional. Data for points in the `oxygen-saturation` sample data type collection.
"percentage": 3.14, # Required. The oxygen saturation percentage. Valid values are from 0 to 100.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which oxygen saturation was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"respiratoryRateSleepSummary": { # Records respiratory rate details during sleep. Can have multiple per day if the user sleeps multiple times. # Optional. Data for points in the `respiratory-rate-sleep-summary` sample data type collection.
"deepSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for deep sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"fullSleepStats": { # Respiratory rate statistics for a given sleep stage. # Required. Full respiratory rate statistics.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"lightSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for light sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"remSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for REM sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which respiratory rate was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"runVo2Max": { # VO2 max value calculated based on the user's running activity. Value stored in ml/kg/min. # Optional. Data for points in the `run-vo2-max` sample data type collection.
"runVo2Max": 3.14, # Required. Run VO2 max value in ml/kg/min.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the metric was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"sedentaryPeriod": { # SedentaryPeriod SedentaryPeriod data represents the periods of time that the user was sedentary (i.e. not moving while wearing the device). # Optional. Data for points in the `sedentary-period` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"sleep": { # A sleep session possibly including stages. # Optional. Data for points in the `sleep` session data type collection.
"createTime": "A String", # Output only. Creation time of this sleep observation.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed sleep interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metadata": { # Additional information about how the sleep was processed. # Optional. Sleep metadata: processing, main, manually edited, stages status.
"externalId": "A String", # Optional. Sleep identifier relevant in the context of the data source.
"manuallyEdited": True or False, # Output only. Some sleeps autodetected by algorithms can be manually edited by users.
"nap": True or False, # Output only. Naps are sleeps without stages and relatively short durations.
"processed": True or False, # Output only. Sleep and sleep stages algorithms finished processing.
"stagesStatus": "A String", # Output only. Sleep stages algorithm processing status.
},
"outOfBedSegments": [ # Optional. “Out of bed” segments that can overlap with sleep stages.
{ # A time interval to represent an out-of-bed segment.
"endTime": "A String", # Required. Segment end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the segment relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Segment tart time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the segment relative to the Coordinated Universal Time (UTC).
},
],
"stages": [ # Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period.
{ # Sleep stage segment.
"createTime": "A String", # Output only. Creation time of this sleep stages segment.
"endTime": "A String", # Required. Sleep stage end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the sleep stage relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Sleep stage start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the sleep stage relative to the Coordinated Universal Time (UTC).
"type": "A String", # Required. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
"updateTime": "A String", # Output only. Last update time of this sleep stages segment.
},
],
"summary": { # Sleep summary: metrics and stages summary. # Output only. Sleep summary: metrics and stages summary.
"minutesAfterWakeUp": "A String", # Output only. Minutes after wake up calculated by restlessness algorithm.
"minutesAsleep": "A String", # Output only. Total number of minutes asleep. For classic sleep it is the sum of ASLEEP stages (excluding AWAKE and RESTLESS). For "stages" sleep it is the sum of LIGHT, REM and DEEP stages (excluding AWAKE).
"minutesAwake": "A String", # Output only. Total number of minutes awake. It is a sum of all AWAKE stages.
"minutesInSleepPeriod": "A String", # Output only. Delta between wake time and bedtime. It is the sum of all stages.
"minutesToFallAsleep": "A String", # Output only. Minutes to fall asleep calculated by restlessness algorithm.
"stagesSummary": [ # Output only. List of summaries (total duration and segment count) per each sleep stage type.
{ # Total duration and segment count for a stage.
"count": "A String", # Output only. Number of sleep stages segments.
"minutes": "A String", # Output only. Total duration in minutes of a sleep stage.
"type": "A String", # Output only. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
},
],
},
"type": "A String", # Optional. SleepType: classic or stages.
"updateTime": "A String", # Output only. Last update time of this sleep observation.
},
"steps": { # Step count over the time interval. # Optional. Data for points in the `steps` interval data type collection.
"count": "A String", # Required. Number of steps in the recorded interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"swimLengthsData": { # Swim lengths data over the time interval. # Optional. Data for points in the `swim-lengths-data` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"strokeCount": "A String", # Required. Number of strokes in the lap.
"swimStrokeType": "A String", # Required. Swim stroke type.
},
"timeInHeartRateZone": { # Time in heart rate zone record. It's an interval spent in specific heart rate zone. # Optional. Data for points in the `time-in-heart-rate-zone` interval data type collection.
"heartRateZoneType": "A String", # Required. Heart rate zone type.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"vo2Max": { # VO2 max measurement. # Optional. Data for points in the `vo2-max` sample data type collection.
"measurementMethod": "A String", # Optional. The method used to measure the VO2 max value.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which VO2 max was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"vo2Max": 3.14, # Required. VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
},
"weight": { # Body weight measurement. # Optional. Data for points in the `weight` sample data type collection.
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the weight was measured
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"weightGrams": 3.14, # Required. Weight of a user in grams.
},
}
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
Query user health and fitness data points.
Args:
parent: string, Required. Parent data type of the Data Point collection. Format: `users/me/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/weight` For a list of the supported data types see the DataPoint data union field. (required)
filter: string, Optional. Filter expression following https://google.aip.dev/160. A time range (either physical or civil) can be specified. The supported filter fields are: - Interval start time: - Pattern: `{interval_data_type}.interval.start_time` - Supported comparison operators: `>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND` - Example: - `steps.interval.start_time >= "2023-11-24T00:00:00Z" AND steps.interval.start_time < "2023-11-25T00:00:00Z"` - `distance.interval.start_time >= "2024-08-14T12:34:56Z"` - Interval civil start time: - Pattern: `{interval_data_type}.interval.civil_start_time` - Supported comparison operators: `>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `steps.interval.civil_start_time >= "2023-11-24" AND steps.interval.civil_start_time < "2023-11-25"` - `distance.interval.civil_start_time >= "2024-08-14T12:34:56"` - Sample observation physical time: - Pattern: `{sample_data_type}.sample_time.physical_time` - Supported comparison operators: `>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND` - Example: - `weight.sample_time.physical_time >= "2023-11-24T00:00:00Z" AND weight.sample_time.physical_time < "2023-11-25T00:00:00Z"` - `weight.sample_time.physical_time >= "2024-08-14T12:34:56Z"` - Sample observation civil time: - Pattern: `{sample_data_type}.sample_time.civil_time` - Supported comparison operators: `>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `weight.sample_time.civil_time >= "2023-11-24" AND weight.sample_time.civil_time < "2023-11-25"` - `weight.sample_time.civil_time >= "2024-08-14T12:34:56"` - Daily summary date: - Pattern: `{daily_summary_data_type}.date` - Supported comparison operators: `>=`, `<` - Date literal expected in ISO 8601 `YYYY-MM-DD` format - Supported logical operators: `AND` - Example: - `daily_resting_heart_rate.date >= "2024-08-14"` - `daily_heart_rate_variability.date < "2024-08-15"` - Session civil start time (**Excluding Sleep**): - Pattern: `{session_data_type}.interval.civil_start_time` - Supported comparison operators: `>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND` - Example: - `exercise.interval.civil_start_time >= "2023-11-24" AND exercise.interval.civil_start_time < "2023-11-25"` - `exercise.interval.civil_start_time >= "2024-08-14T12:34:56"` - Session end time (**Sleep specific**): - Pattern: `sleep.interval.end_time` - Supported comparison operators: `>=`, `<` - Timestamp literal expected in RFC-3339 format - Supported logical operators: `AND`, `OR` - Example: - `sleep.interval.end_time >= "2023-11-24T00:00:00Z" AND sleep.interval.end_time < "2023-11-25T00:00:00Z"` - Session civil end time (**Sleep specific**): - Pattern: `sleep.interval.civil_end_time` - Supported comparison operators: `>=`, `<` - Date with optional time literal expected in ISO 8601 `YYYY-MM-DD[THH:mm:ss]` format - Supported logical operators: `AND`, `OR` - Example: - `sleep.interval.civil_end_time >= "2023-11-24" AND sleep.interval.civil_end_time < "2023-11-25"` Data points in the response will be ordered by the interval start time in descending order.
pageSize: integer, Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. For `exercise` and `sleep` the default page size is 25. The maximum page size for `exercise` and `sleep` is 25.
pageToken: string, Optional. The `next_page_token` from a previous request, if any.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response containing raw data points matching the query
"dataPoints": [ # Data points matching the query
{ # A computed or recorded metric.
"activeMinutes": { # Record of active minutes in a given time interval. # Optional. Data for points in the `active-minutes` interval data type collection.
"activeMinutesByActivityLevel": [ # Required. Active minutes by activity level. At most one record per activity level is allowed.
{ # Active minutes at a given activity level.
"activeMinutes": "A String", # Required. Number of whole minutes spent in activity.
"activityLevel": "A String", # Required. The level of activity.
},
],
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activeZoneMinutes": { # Record of active zone minutes in a given time interval. # Optional. Data for points in the `active-zone-minutes` interval data type collection, measured in minutes.
"activeZoneMinutes": "A String", # Required. Number of Active Zone Minutes earned in the given time interval. Note: active_zone_minutes equals to 1 for low intensity (fat burn) zones or 2 for high intensity zones (cardio, peak).
"heartRateZone": "A String", # Required. Heart rate zone in which the active zone minutes have been earned, in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activityLevel": { # Internal type to capture activity level during a certain time interval. # Optional. Data for points in the `activity-level` daily data type collection.
"activityLevelType": "A String", # Required. Activity level type in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"altitude": { # Captures the altitude gain (i.e. deltas), and not level above sea, for a user in millimeters. # Optional. Data for points in the `altitude` interval data type collection.
"gainMillimeters": "A String", # Required. Altitude gain in millimeters over the observed interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"bodyFat": { # Body fat measurement. # Optional. Data for points in the `body-fat` sample data type collection.
"percentage": 3.14, # Required. Body fat percentage, in range [0, 100].
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which body fat was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"dailyHeartRateVariability": { # Represents the daily heart rate variability data type. At least one of the following fields must be set: - `average_heart_rate_variability_milliseconds` - `non_rem_heart_rate_beats_per_minute` - `entropy` - `deep_sleep_root_mean_square_of_successive_differences_milliseconds` # Optional. Data for points in the `daily-heart-rate-variability` daily data type collection.
"averageHeartRateVariabilityMilliseconds": 3.14, # Optional. A user's average heart rate variability calculated using the root mean square of successive differences (RMSSD) in times between heartbeats.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of heart rate variability measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"deepSleepRootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences (RMSSD) value during deep sleep.
"entropy": 3.14, # Optional. The Shanon entropy of heartbeat intervals. Entropy quantifies randomness or disorder in a system. High entropy indicates high HRV. Entropy is measured from the histogram of time interval between successive heart beats values measured during sleep.
"nonRemHeartRateBeatsPerMinute": "A String", # Optional. Non-REM heart rate
},
"dailyHeartRateZones": { # User's heart rate zone thresholds based on the Karvonen algorithm for a specific day. # Optional. Data for points in the `daily-heart-rate-zones` daily data type collection.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the heart rate zones record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"heartRateZones": [ # Required. The heart rate zones.
{ # The heart rate zone.
"heartRateZoneType": "A String", # Required. The heart rate zone type.
"maxBeatsPerMinute": "A String", # Required. Maximum heart rate for this zone in beats per minute.
"minBeatsPerMinute": "A String", # Required. Minimum heart rate for this zone in beats per minute.
},
],
},
"dailyOxygenSaturation": { # A daily oxygen saturation (SpO2) record. Represents the user's daily oxygen saturation summary, typically calculated during sleep. # Optional. Data for points in the `daily-oxygen-saturation` daily data type collection.
"averagePercentage": 3.14, # Required. The average value of the oxygen saturation samples during the sleep.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the daily oxygen saturation record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"lowerBoundPercentage": 3.14, # Required. The lower bound of the confidence interval of oxygen saturation samples during sleep.
"standardDeviationPercentage": 3.14, # Optional. Standard deviation of the daily oxygen saturation averages from the past 7-30 days.
"upperBoundPercentage": 3.14, # Required. The upper bound of the confidence interval of oxygen saturation samples during sleep.
},
"dailyRespiratoryRate": { # A daily average respiratory rate (breaths per minute) for a day of the year. One data point per day calculated for the main sleep. # Optional. Data for points in the `daily-respiratory-rate` daily data type collection.
"breathsPerMinute": 3.14, # Required. The average number of breaths taken per minute.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date on which the respiratory rate was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailyRestingHeartRate": { # Measures the daily resting heart rate for a user, calculated using the all day heart rate measurements. # Optional. Data for points in the `daily-resting-heart-rate` daily data type collection.
"beatsPerMinute": "A String", # Required. The resting heart rate value in beats per minute.
"dailyRestingHeartRateMetadata": { # Metadata for the daily resting heart rate. # Optional. Metadata for the daily resting heart rate.
"calculationMethod": "A String", # Required. The method used to calculate the resting heart rate.
},
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of the resting heart rate measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailySleepTemperatureDerivations": { # Provides derived sleep temperature values, calculated from skin or internal device temperature readings during sleep. # Optional. Data for points in the `daily-sleep-temperature-derivations` daily data type collection.
"baselineTemperatureCelsius": 3.14, # Optional. The user's baseline skin temperature. It is the median of the user's nightly skin temperature over the past 30 days.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date for which the sleep temperature derivations are calculated.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"nightlyTemperatureCelsius": 3.14, # Required. The user's nightly skin temperature. It is the mean of skin temperature samples taken from the user’s sleep.
"relativeNightlyStddev30dCelsius": 3.14, # Optional. The standard deviation of the user’s relative nightly skin temperature (temperature - baseline) over the past 30 days.
},
"dailyVo2Max": { # Contains a daily summary of the user's VO2 max (cardio fitness score), which is the maximum rate of oxygen the body can use during exercise. # Optional. Data for points in the `daily-vo2-max` daily data type collection.
"cardioFitnessLevel": "A String", # Optional. Represents the user's cardio fitness level based on their VO2 max.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date for which the Daily VO2 max was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"estimated": True or False, # Optional. An estimated field is added to indicate when the confidence has decreased sufficiently to consider the value an estimation.
"vo2Max": 3.14, # Required. Daily VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
"vo2MaxCovariance": 3.14, # Optional. The covariance of the VO2 max value.
},
"dataSource": { # Data Source definition to track the origin of data. Each health data point, regardless of the complexity or data model (whether a simple step count or a detailed sleep session) must retain information about its source of origin (e.g. the device or app that collected it). # Optional. Data source information for the metric
"application": { # Optional metadata for the application that provided this data. # Output only. Captures metadata for the application that provided this data.
"googleWebClientId": "A String", # Output only. The Google OAuth 2.0 client ID of the web application or service that recorded the data. This is the client ID used during the Google OAuth flow to obtain user credentials. This field is system-populated when the data is uploaded from Google Web API.
"packageName": "A String", # Output only. A unique identifier for the mobile application that was the source of the data. This is typically the application's package name on Android (e.g., `com.google.fitbit`) or the bundle ID on iOS. This field is informational and helps trace data origin. This field is system-populated when the data is uploaded from the Fitbit mobile application, Health Connect or Health Kit.
"webClientId": "A String", # Output only. The client ID of the application that recorded the data. This ID is a legacy Fitbit API client ID, which is different from a Google OAuth client ID. Example format: `ABC123`. This field is system-populated and used for tracing data from legacy Fitbit API integrations. This field is system-populated when the data is uploaded from a legacy Fitbit API integration.
},
"device": { # Captures metadata about the device that recorded the measurement. # Optional. Captures metadata for raw data points originating from devices. We expect this data source to be used for data points written on device sync.
"displayName": "A String", # Optional. An optional name for the device.
"formFactor": "A String", # Optional. Captures the form factor of the device.
"manufacturer": "A String", # Optional. An optional manufacturer of the device.
},
"platform": "A String", # Output only. Captures the platform that uploaded the data.
"recordingMethod": "A String", # Optional. Captures how the data was recorded.
},
"distance": { # Distance traveled over an interval of time. # Optional. Data for points in the `distance` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"millimeters": "A String", # Required. Distance in millimeters over the observed interval.
},
"exercise": { # An exercise that stores information about a physical activity. # Optional. Data for points in the `exercise` session data type collection.
"activeDuration": "A String", # Optional. Duration excluding pauses.
"createTime": "A String", # Output only. Represents the timestamp of the creation of the exercise.
"displayName": "A String", # Required. Exercise display name.
"exerciseEvents": [ # Optional. Exercise events that happen during an exercise, such as pause & restarts.
{ # Represents instantaneous events that happen during an exercise, such as start, stop, pause, split.
"eventTime": "A String", # Required. Exercise event time
"eventUtcOffset": "A String", # Required. Exercise event time offset from UTC
"exerciseEventType": "A String", # Required. The type of the event, such as start, stop, pause, resume.
},
],
"exerciseMetadata": { # Additional exercise metadata. # Optional. Additional exercise metadata.
"hasGps": True or False, # Optional. Whether the exercise had GPS tracking.
"poolLengthMillimeters": "A String", # Optional. Pool length in millimeters. Only present in the swimming exercises.
},
"exerciseType": "A String", # Required. The type of activity performed during an exercise.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed exercise interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this exercise ( )
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"splitSummaries": [ # Optional. Laps or splits recorded within an exercise. Laps could be split based on distance or other criteria (duration, etc.) Laps should not be overlapping with each other.
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"splits": [ # Optional. The default split is 1 km or 1 mile. - if the movement distance is less than the default, then there are no splits - if the movement distance is greater than or equal to the default, then we have splits
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"updateTime": "A String", # Output only. This is the timestamp of the last update to the exercise.
},
"floors": { # Gained elevation measured in floors over the time interval # Optional. Data for points in the `floors` interval data type collection.
"count": "A String", # Required. Number of floors in the recorded interval
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRate": { # A heart rate measurement. # Optional. Data for points in the `heart-rate` sample data type collection.
"beatsPerMinute": "A String", # Required. The heart rate value in beats per minute.
"metadata": { # Heart rate metadata. # Optional. Metadata about the heart rate sample.
"motionContext": "A String", # Optional. Indicates the user’s level of activity when the heart rate sample was measured
"sensorLocation": "A String", # Optional. Indicates the location of the sensor that measured the heart rate.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. Observation time
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRateVariability": { # Captures user's heart rate variability (HRV) as measured by the root mean square of successive differences (RMSSD) between normal heartbeats or by standard deviation of the inter-beat intervals (SDNN). # Optional. Data for points in the `heart-rate-variability` sample data type collection.
"rootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences between normal heartbeats. This is a measure of heart rate variability used by Fitbit.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time of the heart rate variability measurement.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"standardDeviationMilliseconds": 3.14, # Optional. The standard deviation of the heart rate variability measurement.
},
"height": { # Body height measurement. # Optional. Data for points in the `height` sample data type collection.
"heightMillimeters": "A String", # Required. Height of the user in millimeters.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the height was recorded.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"hydrationLog": { # Holds information about a user logged hydration. # Optional. Data for points in the `hydration-log` session data type collection.
"amountConsumed": { # Represents the volume quantity. # Required. Amount of liquid (ex. water) consumed.
"milliliters": 3.14, # Required. Value representing the volume in milliliters.
"userProvidedUnit": "A String", # Optional. Value representing the user provided unit.
},
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
},
"name": "A String", # Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.
"oxygenSaturation": { # Captures the user's instantaneous oxygen saturation percentage (SpO2). # Optional. Data for points in the `oxygen-saturation` sample data type collection.
"percentage": 3.14, # Required. The oxygen saturation percentage. Valid values are from 0 to 100.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which oxygen saturation was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"respiratoryRateSleepSummary": { # Records respiratory rate details during sleep. Can have multiple per day if the user sleeps multiple times. # Optional. Data for points in the `respiratory-rate-sleep-summary` sample data type collection.
"deepSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for deep sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"fullSleepStats": { # Respiratory rate statistics for a given sleep stage. # Required. Full respiratory rate statistics.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"lightSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for light sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"remSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for REM sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which respiratory rate was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"runVo2Max": { # VO2 max value calculated based on the user's running activity. Value stored in ml/kg/min. # Optional. Data for points in the `run-vo2-max` sample data type collection.
"runVo2Max": 3.14, # Required. Run VO2 max value in ml/kg/min.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the metric was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"sedentaryPeriod": { # SedentaryPeriod SedentaryPeriod data represents the periods of time that the user was sedentary (i.e. not moving while wearing the device). # Optional. Data for points in the `sedentary-period` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"sleep": { # A sleep session possibly including stages. # Optional. Data for points in the `sleep` session data type collection.
"createTime": "A String", # Output only. Creation time of this sleep observation.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed sleep interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metadata": { # Additional information about how the sleep was processed. # Optional. Sleep metadata: processing, main, manually edited, stages status.
"externalId": "A String", # Optional. Sleep identifier relevant in the context of the data source.
"manuallyEdited": True or False, # Output only. Some sleeps autodetected by algorithms can be manually edited by users.
"nap": True or False, # Output only. Naps are sleeps without stages and relatively short durations.
"processed": True or False, # Output only. Sleep and sleep stages algorithms finished processing.
"stagesStatus": "A String", # Output only. Sleep stages algorithm processing status.
},
"outOfBedSegments": [ # Optional. “Out of bed” segments that can overlap with sleep stages.
{ # A time interval to represent an out-of-bed segment.
"endTime": "A String", # Required. Segment end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the segment relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Segment tart time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the segment relative to the Coordinated Universal Time (UTC).
},
],
"stages": [ # Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period.
{ # Sleep stage segment.
"createTime": "A String", # Output only. Creation time of this sleep stages segment.
"endTime": "A String", # Required. Sleep stage end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the sleep stage relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Sleep stage start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the sleep stage relative to the Coordinated Universal Time (UTC).
"type": "A String", # Required. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
"updateTime": "A String", # Output only. Last update time of this sleep stages segment.
},
],
"summary": { # Sleep summary: metrics and stages summary. # Output only. Sleep summary: metrics and stages summary.
"minutesAfterWakeUp": "A String", # Output only. Minutes after wake up calculated by restlessness algorithm.
"minutesAsleep": "A String", # Output only. Total number of minutes asleep. For classic sleep it is the sum of ASLEEP stages (excluding AWAKE and RESTLESS). For "stages" sleep it is the sum of LIGHT, REM and DEEP stages (excluding AWAKE).
"minutesAwake": "A String", # Output only. Total number of minutes awake. It is a sum of all AWAKE stages.
"minutesInSleepPeriod": "A String", # Output only. Delta between wake time and bedtime. It is the sum of all stages.
"minutesToFallAsleep": "A String", # Output only. Minutes to fall asleep calculated by restlessness algorithm.
"stagesSummary": [ # Output only. List of summaries (total duration and segment count) per each sleep stage type.
{ # Total duration and segment count for a stage.
"count": "A String", # Output only. Number of sleep stages segments.
"minutes": "A String", # Output only. Total duration in minutes of a sleep stage.
"type": "A String", # Output only. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
},
],
},
"type": "A String", # Optional. SleepType: classic or stages.
"updateTime": "A String", # Output only. Last update time of this sleep observation.
},
"steps": { # Step count over the time interval. # Optional. Data for points in the `steps` interval data type collection.
"count": "A String", # Required. Number of steps in the recorded interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"swimLengthsData": { # Swim lengths data over the time interval. # Optional. Data for points in the `swim-lengths-data` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"strokeCount": "A String", # Required. Number of strokes in the lap.
"swimStrokeType": "A String", # Required. Swim stroke type.
},
"timeInHeartRateZone": { # Time in heart rate zone record. It's an interval spent in specific heart rate zone. # Optional. Data for points in the `time-in-heart-rate-zone` interval data type collection.
"heartRateZoneType": "A String", # Required. Heart rate zone type.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"vo2Max": { # VO2 max measurement. # Optional. Data for points in the `vo2-max` sample data type collection.
"measurementMethod": "A String", # Optional. The method used to measure the VO2 max value.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which VO2 max was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"vo2Max": 3.14, # Required. VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
},
"weight": { # Body weight measurement. # Optional. Data for points in the `weight` sample data type collection.
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the weight was measured
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"weightGrams": 3.14, # Required. Weight of a user in grams.
},
},
],
"nextPageToken": "A String", # Next page token, empty if the response is complete
}
list_next()
Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call 'execute()' on to request the next
page. Returns None if there are no more items in the collection.
patch(name, body=None, x__xgafv=None)
Updates a single identifiable data point. If a data point with the specified `name` is not found, the request will fail.
Args:
name: string, Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens. (required)
body: object, The request body.
The object takes the form of:
{ # A computed or recorded metric.
"activeMinutes": { # Record of active minutes in a given time interval. # Optional. Data for points in the `active-minutes` interval data type collection.
"activeMinutesByActivityLevel": [ # Required. Active minutes by activity level. At most one record per activity level is allowed.
{ # Active minutes at a given activity level.
"activeMinutes": "A String", # Required. Number of whole minutes spent in activity.
"activityLevel": "A String", # Required. The level of activity.
},
],
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activeZoneMinutes": { # Record of active zone minutes in a given time interval. # Optional. Data for points in the `active-zone-minutes` interval data type collection, measured in minutes.
"activeZoneMinutes": "A String", # Required. Number of Active Zone Minutes earned in the given time interval. Note: active_zone_minutes equals to 1 for low intensity (fat burn) zones or 2 for high intensity zones (cardio, peak).
"heartRateZone": "A String", # Required. Heart rate zone in which the active zone minutes have been earned, in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activityLevel": { # Internal type to capture activity level during a certain time interval. # Optional. Data for points in the `activity-level` daily data type collection.
"activityLevelType": "A String", # Required. Activity level type in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"altitude": { # Captures the altitude gain (i.e. deltas), and not level above sea, for a user in millimeters. # Optional. Data for points in the `altitude` interval data type collection.
"gainMillimeters": "A String", # Required. Altitude gain in millimeters over the observed interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"bodyFat": { # Body fat measurement. # Optional. Data for points in the `body-fat` sample data type collection.
"percentage": 3.14, # Required. Body fat percentage, in range [0, 100].
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which body fat was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"dailyHeartRateVariability": { # Represents the daily heart rate variability data type. At least one of the following fields must be set: - `average_heart_rate_variability_milliseconds` - `non_rem_heart_rate_beats_per_minute` - `entropy` - `deep_sleep_root_mean_square_of_successive_differences_milliseconds` # Optional. Data for points in the `daily-heart-rate-variability` daily data type collection.
"averageHeartRateVariabilityMilliseconds": 3.14, # Optional. A user's average heart rate variability calculated using the root mean square of successive differences (RMSSD) in times between heartbeats.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of heart rate variability measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"deepSleepRootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences (RMSSD) value during deep sleep.
"entropy": 3.14, # Optional. The Shanon entropy of heartbeat intervals. Entropy quantifies randomness or disorder in a system. High entropy indicates high HRV. Entropy is measured from the histogram of time interval between successive heart beats values measured during sleep.
"nonRemHeartRateBeatsPerMinute": "A String", # Optional. Non-REM heart rate
},
"dailyHeartRateZones": { # User's heart rate zone thresholds based on the Karvonen algorithm for a specific day. # Optional. Data for points in the `daily-heart-rate-zones` daily data type collection.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the heart rate zones record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"heartRateZones": [ # Required. The heart rate zones.
{ # The heart rate zone.
"heartRateZoneType": "A String", # Required. The heart rate zone type.
"maxBeatsPerMinute": "A String", # Required. Maximum heart rate for this zone in beats per minute.
"minBeatsPerMinute": "A String", # Required. Minimum heart rate for this zone in beats per minute.
},
],
},
"dailyOxygenSaturation": { # A daily oxygen saturation (SpO2) record. Represents the user's daily oxygen saturation summary, typically calculated during sleep. # Optional. Data for points in the `daily-oxygen-saturation` daily data type collection.
"averagePercentage": 3.14, # Required. The average value of the oxygen saturation samples during the sleep.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the daily oxygen saturation record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"lowerBoundPercentage": 3.14, # Required. The lower bound of the confidence interval of oxygen saturation samples during sleep.
"standardDeviationPercentage": 3.14, # Optional. Standard deviation of the daily oxygen saturation averages from the past 7-30 days.
"upperBoundPercentage": 3.14, # Required. The upper bound of the confidence interval of oxygen saturation samples during sleep.
},
"dailyRespiratoryRate": { # A daily average respiratory rate (breaths per minute) for a day of the year. One data point per day calculated for the main sleep. # Optional. Data for points in the `daily-respiratory-rate` daily data type collection.
"breathsPerMinute": 3.14, # Required. The average number of breaths taken per minute.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date on which the respiratory rate was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailyRestingHeartRate": { # Measures the daily resting heart rate for a user, calculated using the all day heart rate measurements. # Optional. Data for points in the `daily-resting-heart-rate` daily data type collection.
"beatsPerMinute": "A String", # Required. The resting heart rate value in beats per minute.
"dailyRestingHeartRateMetadata": { # Metadata for the daily resting heart rate. # Optional. Metadata for the daily resting heart rate.
"calculationMethod": "A String", # Required. The method used to calculate the resting heart rate.
},
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of the resting heart rate measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailySleepTemperatureDerivations": { # Provides derived sleep temperature values, calculated from skin or internal device temperature readings during sleep. # Optional. Data for points in the `daily-sleep-temperature-derivations` daily data type collection.
"baselineTemperatureCelsius": 3.14, # Optional. The user's baseline skin temperature. It is the median of the user's nightly skin temperature over the past 30 days.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date for which the sleep temperature derivations are calculated.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"nightlyTemperatureCelsius": 3.14, # Required. The user's nightly skin temperature. It is the mean of skin temperature samples taken from the user’s sleep.
"relativeNightlyStddev30dCelsius": 3.14, # Optional. The standard deviation of the user’s relative nightly skin temperature (temperature - baseline) over the past 30 days.
},
"dailyVo2Max": { # Contains a daily summary of the user's VO2 max (cardio fitness score), which is the maximum rate of oxygen the body can use during exercise. # Optional. Data for points in the `daily-vo2-max` daily data type collection.
"cardioFitnessLevel": "A String", # Optional. Represents the user's cardio fitness level based on their VO2 max.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date for which the Daily VO2 max was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"estimated": True or False, # Optional. An estimated field is added to indicate when the confidence has decreased sufficiently to consider the value an estimation.
"vo2Max": 3.14, # Required. Daily VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
"vo2MaxCovariance": 3.14, # Optional. The covariance of the VO2 max value.
},
"dataSource": { # Data Source definition to track the origin of data. Each health data point, regardless of the complexity or data model (whether a simple step count or a detailed sleep session) must retain information about its source of origin (e.g. the device or app that collected it). # Optional. Data source information for the metric
"application": { # Optional metadata for the application that provided this data. # Output only. Captures metadata for the application that provided this data.
"googleWebClientId": "A String", # Output only. The Google OAuth 2.0 client ID of the web application or service that recorded the data. This is the client ID used during the Google OAuth flow to obtain user credentials. This field is system-populated when the data is uploaded from Google Web API.
"packageName": "A String", # Output only. A unique identifier for the mobile application that was the source of the data. This is typically the application's package name on Android (e.g., `com.google.fitbit`) or the bundle ID on iOS. This field is informational and helps trace data origin. This field is system-populated when the data is uploaded from the Fitbit mobile application, Health Connect or Health Kit.
"webClientId": "A String", # Output only. The client ID of the application that recorded the data. This ID is a legacy Fitbit API client ID, which is different from a Google OAuth client ID. Example format: `ABC123`. This field is system-populated and used for tracing data from legacy Fitbit API integrations. This field is system-populated when the data is uploaded from a legacy Fitbit API integration.
},
"device": { # Captures metadata about the device that recorded the measurement. # Optional. Captures metadata for raw data points originating from devices. We expect this data source to be used for data points written on device sync.
"displayName": "A String", # Optional. An optional name for the device.
"formFactor": "A String", # Optional. Captures the form factor of the device.
"manufacturer": "A String", # Optional. An optional manufacturer of the device.
},
"platform": "A String", # Output only. Captures the platform that uploaded the data.
"recordingMethod": "A String", # Optional. Captures how the data was recorded.
},
"distance": { # Distance traveled over an interval of time. # Optional. Data for points in the `distance` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"millimeters": "A String", # Required. Distance in millimeters over the observed interval.
},
"exercise": { # An exercise that stores information about a physical activity. # Optional. Data for points in the `exercise` session data type collection.
"activeDuration": "A String", # Optional. Duration excluding pauses.
"createTime": "A String", # Output only. Represents the timestamp of the creation of the exercise.
"displayName": "A String", # Required. Exercise display name.
"exerciseEvents": [ # Optional. Exercise events that happen during an exercise, such as pause & restarts.
{ # Represents instantaneous events that happen during an exercise, such as start, stop, pause, split.
"eventTime": "A String", # Required. Exercise event time
"eventUtcOffset": "A String", # Required. Exercise event time offset from UTC
"exerciseEventType": "A String", # Required. The type of the event, such as start, stop, pause, resume.
},
],
"exerciseMetadata": { # Additional exercise metadata. # Optional. Additional exercise metadata.
"hasGps": True or False, # Optional. Whether the exercise had GPS tracking.
"poolLengthMillimeters": "A String", # Optional. Pool length in millimeters. Only present in the swimming exercises.
},
"exerciseType": "A String", # Required. The type of activity performed during an exercise.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed exercise interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this exercise ( )
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"splitSummaries": [ # Optional. Laps or splits recorded within an exercise. Laps could be split based on distance or other criteria (duration, etc.) Laps should not be overlapping with each other.
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"splits": [ # Optional. The default split is 1 km or 1 mile. - if the movement distance is less than the default, then there are no splits - if the movement distance is greater than or equal to the default, then we have splits
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"updateTime": "A String", # Output only. This is the timestamp of the last update to the exercise.
},
"floors": { # Gained elevation measured in floors over the time interval # Optional. Data for points in the `floors` interval data type collection.
"count": "A String", # Required. Number of floors in the recorded interval
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRate": { # A heart rate measurement. # Optional. Data for points in the `heart-rate` sample data type collection.
"beatsPerMinute": "A String", # Required. The heart rate value in beats per minute.
"metadata": { # Heart rate metadata. # Optional. Metadata about the heart rate sample.
"motionContext": "A String", # Optional. Indicates the user’s level of activity when the heart rate sample was measured
"sensorLocation": "A String", # Optional. Indicates the location of the sensor that measured the heart rate.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. Observation time
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRateVariability": { # Captures user's heart rate variability (HRV) as measured by the root mean square of successive differences (RMSSD) between normal heartbeats or by standard deviation of the inter-beat intervals (SDNN). # Optional. Data for points in the `heart-rate-variability` sample data type collection.
"rootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences between normal heartbeats. This is a measure of heart rate variability used by Fitbit.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time of the heart rate variability measurement.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"standardDeviationMilliseconds": 3.14, # Optional. The standard deviation of the heart rate variability measurement.
},
"height": { # Body height measurement. # Optional. Data for points in the `height` sample data type collection.
"heightMillimeters": "A String", # Required. Height of the user in millimeters.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the height was recorded.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"hydrationLog": { # Holds information about a user logged hydration. # Optional. Data for points in the `hydration-log` session data type collection.
"amountConsumed": { # Represents the volume quantity. # Required. Amount of liquid (ex. water) consumed.
"milliliters": 3.14, # Required. Value representing the volume in milliliters.
"userProvidedUnit": "A String", # Optional. Value representing the user provided unit.
},
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
},
"name": "A String", # Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.
"oxygenSaturation": { # Captures the user's instantaneous oxygen saturation percentage (SpO2). # Optional. Data for points in the `oxygen-saturation` sample data type collection.
"percentage": 3.14, # Required. The oxygen saturation percentage. Valid values are from 0 to 100.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which oxygen saturation was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"respiratoryRateSleepSummary": { # Records respiratory rate details during sleep. Can have multiple per day if the user sleeps multiple times. # Optional. Data for points in the `respiratory-rate-sleep-summary` sample data type collection.
"deepSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for deep sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"fullSleepStats": { # Respiratory rate statistics for a given sleep stage. # Required. Full respiratory rate statistics.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"lightSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for light sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"remSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for REM sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which respiratory rate was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"runVo2Max": { # VO2 max value calculated based on the user's running activity. Value stored in ml/kg/min. # Optional. Data for points in the `run-vo2-max` sample data type collection.
"runVo2Max": 3.14, # Required. Run VO2 max value in ml/kg/min.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the metric was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"sedentaryPeriod": { # SedentaryPeriod SedentaryPeriod data represents the periods of time that the user was sedentary (i.e. not moving while wearing the device). # Optional. Data for points in the `sedentary-period` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"sleep": { # A sleep session possibly including stages. # Optional. Data for points in the `sleep` session data type collection.
"createTime": "A String", # Output only. Creation time of this sleep observation.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed sleep interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metadata": { # Additional information about how the sleep was processed. # Optional. Sleep metadata: processing, main, manually edited, stages status.
"externalId": "A String", # Optional. Sleep identifier relevant in the context of the data source.
"manuallyEdited": True or False, # Output only. Some sleeps autodetected by algorithms can be manually edited by users.
"nap": True or False, # Output only. Naps are sleeps without stages and relatively short durations.
"processed": True or False, # Output only. Sleep and sleep stages algorithms finished processing.
"stagesStatus": "A String", # Output only. Sleep stages algorithm processing status.
},
"outOfBedSegments": [ # Optional. “Out of bed” segments that can overlap with sleep stages.
{ # A time interval to represent an out-of-bed segment.
"endTime": "A String", # Required. Segment end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the segment relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Segment tart time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the segment relative to the Coordinated Universal Time (UTC).
},
],
"stages": [ # Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period.
{ # Sleep stage segment.
"createTime": "A String", # Output only. Creation time of this sleep stages segment.
"endTime": "A String", # Required. Sleep stage end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the sleep stage relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Sleep stage start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the sleep stage relative to the Coordinated Universal Time (UTC).
"type": "A String", # Required. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
"updateTime": "A String", # Output only. Last update time of this sleep stages segment.
},
],
"summary": { # Sleep summary: metrics and stages summary. # Output only. Sleep summary: metrics and stages summary.
"minutesAfterWakeUp": "A String", # Output only. Minutes after wake up calculated by restlessness algorithm.
"minutesAsleep": "A String", # Output only. Total number of minutes asleep. For classic sleep it is the sum of ASLEEP stages (excluding AWAKE and RESTLESS). For "stages" sleep it is the sum of LIGHT, REM and DEEP stages (excluding AWAKE).
"minutesAwake": "A String", # Output only. Total number of minutes awake. It is a sum of all AWAKE stages.
"minutesInSleepPeriod": "A String", # Output only. Delta between wake time and bedtime. It is the sum of all stages.
"minutesToFallAsleep": "A String", # Output only. Minutes to fall asleep calculated by restlessness algorithm.
"stagesSummary": [ # Output only. List of summaries (total duration and segment count) per each sleep stage type.
{ # Total duration and segment count for a stage.
"count": "A String", # Output only. Number of sleep stages segments.
"minutes": "A String", # Output only. Total duration in minutes of a sleep stage.
"type": "A String", # Output only. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
},
],
},
"type": "A String", # Optional. SleepType: classic or stages.
"updateTime": "A String", # Output only. Last update time of this sleep observation.
},
"steps": { # Step count over the time interval. # Optional. Data for points in the `steps` interval data type collection.
"count": "A String", # Required. Number of steps in the recorded interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"swimLengthsData": { # Swim lengths data over the time interval. # Optional. Data for points in the `swim-lengths-data` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"strokeCount": "A String", # Required. Number of strokes in the lap.
"swimStrokeType": "A String", # Required. Swim stroke type.
},
"timeInHeartRateZone": { # Time in heart rate zone record. It's an interval spent in specific heart rate zone. # Optional. Data for points in the `time-in-heart-rate-zone` interval data type collection.
"heartRateZoneType": "A String", # Required. Heart rate zone type.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"vo2Max": { # VO2 max measurement. # Optional. Data for points in the `vo2-max` sample data type collection.
"measurementMethod": "A String", # Optional. The method used to measure the VO2 max value.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which VO2 max was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"vo2Max": 3.14, # Required. VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
},
"weight": { # Body weight measurement. # Optional. Data for points in the `weight` sample data type collection.
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the weight was measured
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"weightGrams": 3.14, # Required. Weight of a user in grams.
},
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This resource represents a long-running operation that is the result of a network API call.
"done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
"error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
"code": 42, # The status code, which should be an enum value of google.rpc.Code.
"details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
{
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
],
"message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
},
"metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
"name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
"response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
}
reconcile(parent, dataSourceFamily=None, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
Reconcile data points from multiple data sources into a single data stream.
Args:
parent: string, Required. Parent data type of the Data Point collection. Format: `users/me/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/heart-rate` For a list of the supported data types see the DataPoint data union field. (required)
dataSourceFamily: string, Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources
filter: string, Optional. Filter expression based on https://aip.dev/160. A time range, either physical or civil, can be specified. See the ListDataPointsRequest.filter for the supported fields and syntax.
pageSize: integer, Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly. For `exercise` and `sleep` the default page size is 25. The maximum page size for `exercise` and `sleep` is 25.
pageToken: string, Optional. The `next_page_token` from a previous request, if any.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response containing the list of reconciled DataPoints.
"dataPoints": [ # Data points matching the query
{ # A reconciled computed or recorded metric.
"activeMinutes": { # Record of active minutes in a given time interval. # Data for points in the `active-minutes` interval data type collection.
"activeMinutesByActivityLevel": [ # Required. Active minutes by activity level. At most one record per activity level is allowed.
{ # Active minutes at a given activity level.
"activeMinutes": "A String", # Required. Number of whole minutes spent in activity.
"activityLevel": "A String", # Required. The level of activity.
},
],
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activeZoneMinutes": { # Record of active zone minutes in a given time interval. # Data for points in the `active-zone-minutes` interval data type collection, measured in minutes.
"activeZoneMinutes": "A String", # Required. Number of Active Zone Minutes earned in the given time interval. Note: active_zone_minutes equals to 1 for low intensity (fat burn) zones or 2 for high intensity zones (cardio, peak).
"heartRateZone": "A String", # Required. Heart rate zone in which the active zone minutes have been earned, in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"activityLevel": { # Internal type to capture activity level during a certain time interval. # Data for points in the `activity-level` daily data type collection.
"activityLevelType": "A String", # Required. Activity level type in the given time interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"altitude": { # Captures the altitude gain (i.e. deltas), and not level above sea, for a user in millimeters. # Data for points in the `altitude` interval data type collection.
"gainMillimeters": "A String", # Required. Altitude gain in millimeters over the observed interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"bodyFat": { # Body fat measurement. # Data for points in the `body-fat` sample data type collection.
"percentage": 3.14, # Required. Body fat percentage, in range [0, 100].
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which body fat was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"dailyHeartRateVariability": { # Represents the daily heart rate variability data type. At least one of the following fields must be set: - `average_heart_rate_variability_milliseconds` - `non_rem_heart_rate_beats_per_minute` - `entropy` - `deep_sleep_root_mean_square_of_successive_differences_milliseconds` # Data for points in the `daily-heart-rate-variability` daily data type collection.
"averageHeartRateVariabilityMilliseconds": 3.14, # Optional. A user's average heart rate variability calculated using the root mean square of successive differences (RMSSD) in times between heartbeats.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of heart rate variability measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"deepSleepRootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences (RMSSD) value during deep sleep.
"entropy": 3.14, # Optional. The Shanon entropy of heartbeat intervals. Entropy quantifies randomness or disorder in a system. High entropy indicates high HRV. Entropy is measured from the histogram of time interval between successive heart beats values measured during sleep.
"nonRemHeartRateBeatsPerMinute": "A String", # Optional. Non-REM heart rate
},
"dailyHeartRateZones": { # User's heart rate zone thresholds based on the Karvonen algorithm for a specific day. # Data for points in the `daily-heart-rate-zones` daily data type collection.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the heart rate zones record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"heartRateZones": [ # Required. The heart rate zones.
{ # The heart rate zone.
"heartRateZoneType": "A String", # Required. The heart rate zone type.
"maxBeatsPerMinute": "A String", # Required. Maximum heart rate for this zone in beats per minute.
"minBeatsPerMinute": "A String", # Required. Minimum heart rate for this zone in beats per minute.
},
],
},
"dailyOxygenSaturation": { # A daily oxygen saturation (SpO2) record. Represents the user's daily oxygen saturation summary, typically calculated during sleep. # Data for points in the `daily-oxygen-saturation` daily data type collection.
"averagePercentage": 3.14, # Required. The average value of the oxygen saturation samples during the sleep.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in user's timezone) of the daily oxygen saturation record.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"lowerBoundPercentage": 3.14, # Required. The lower bound of the confidence interval of oxygen saturation samples during sleep.
"standardDeviationPercentage": 3.14, # Optional. Standard deviation of the daily oxygen saturation averages from the past 7-30 days.
"upperBoundPercentage": 3.14, # Required. The upper bound of the confidence interval of oxygen saturation samples during sleep.
},
"dailyRespiratoryRate": { # A daily average respiratory rate (breaths per minute) for a day of the year. One data point per day calculated for the main sleep. # Data for points in the `daily-respiratory-rate` daily data type collection.
"breathsPerMinute": 3.14, # Required. The average number of breaths taken per minute.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date on which the respiratory rate was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailyRestingHeartRate": { # Measures the daily resting heart rate for a user, calculated using the all day heart rate measurements. # Data for points in the `daily-resting-heart-rate` daily data type collection.
"beatsPerMinute": "A String", # Required. The resting heart rate value in beats per minute.
"dailyRestingHeartRateMetadata": { # Metadata for the daily resting heart rate. # Optional. Metadata for the daily resting heart rate.
"calculationMethod": "A String", # Required. The method used to calculate the resting heart rate.
},
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date (in the user's timezone) of the resting heart rate measurement.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
},
"dailySleepTemperatureDerivations": { # Provides derived sleep temperature values, calculated from skin or internal device temperature readings during sleep. # Data for points in the `daily-sleep-temperature-derivations` daily data type collection.
"baselineTemperatureCelsius": 3.14, # Optional. The user's baseline skin temperature. It is the median of the user's nightly skin temperature over the past 30 days.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Date for which the sleep temperature derivations are calculated.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"nightlyTemperatureCelsius": 3.14, # Required. The user's nightly skin temperature. It is the mean of skin temperature samples taken from the user’s sleep.
"relativeNightlyStddev30dCelsius": 3.14, # Optional. The standard deviation of the user’s relative nightly skin temperature (temperature - baseline) over the past 30 days.
},
"dailyVo2Max": { # Contains a daily summary of the user's VO2 max (cardio fitness score), which is the maximum rate of oxygen the body can use during exercise. # Data for points in the `daily-vo2-max` daily data type collection.
"cardioFitnessLevel": "A String", # Optional. Represents the user's cardio fitness level based on their VO2 max.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. The date for which the Daily VO2 max was measured.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"estimated": True or False, # Optional. An estimated field is added to indicate when the confidence has decreased sufficiently to consider the value an estimation.
"vo2Max": 3.14, # Required. Daily VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
"vo2MaxCovariance": 3.14, # Optional. The covariance of the VO2 max value.
},
"dataPointName": "A String", # Identifier. Data point name, only supported for the subset of identifiable data types. For the majority of the data types, individual data points do not need to be identified and this field would be empty. Format: `users/{user}/dataTypes/{data_type}/dataPoints/{data_point}` Example: `users/abcd1234/dataTypes/sleep/dataPoints/a1b2c3d4-e5f6-7890-1234-567890abcdef` The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. The `{data_type}` ID corresponds to the kebab-case version of the field names in the DataPoint data union field, e.g. `total-calories` for the `total_calories` field. The `{data_point}` ID can be client-provided or system-generated. If client-provided, it must be a string of 4-63 characters, containing only lowercase letters, numbers, and hyphens.
"distance": { # Distance traveled over an interval of time. # Data for points in the `distance` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"millimeters": "A String", # Required. Distance in millimeters over the observed interval.
},
"exercise": { # An exercise that stores information about a physical activity. # Data for points in the `exercise` session data type collection.
"activeDuration": "A String", # Optional. Duration excluding pauses.
"createTime": "A String", # Output only. Represents the timestamp of the creation of the exercise.
"displayName": "A String", # Required. Exercise display name.
"exerciseEvents": [ # Optional. Exercise events that happen during an exercise, such as pause & restarts.
{ # Represents instantaneous events that happen during an exercise, such as start, stop, pause, split.
"eventTime": "A String", # Required. Exercise event time
"eventUtcOffset": "A String", # Required. Exercise event time offset from UTC
"exerciseEventType": "A String", # Required. The type of the event, such as start, stop, pause, resume.
},
],
"exerciseMetadata": { # Additional exercise metadata. # Optional. Additional exercise metadata.
"hasGps": True or False, # Optional. Whether the exercise had GPS tracking.
"poolLengthMillimeters": "A String", # Optional. Pool length in millimeters. Only present in the swimming exercises.
},
"exerciseType": "A String", # Required. The type of activity performed during an exercise.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed exercise interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this exercise ( )
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"splitSummaries": [ # Optional. Laps or splits recorded within an exercise. Laps could be split based on distance or other criteria (duration, etc.) Laps should not be overlapping with each other.
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"splits": [ # Optional. The default split is 1 km or 1 mile. - if the movement distance is less than the default, then there are no splits - if the movement distance is greater than or equal to the default, then we have splits
{ # Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
"activeDuration": "A String", # Output only. Lap time excluding the pauses.
"endTime": "A String", # Required. Lap end time
"endUtcOffset": "A String", # Required. Lap end time offset from UTC
"metricsSummary": { # Summary metrics for an exercise. # Required. Summary metrics for this split.
"activeZoneMinutes": "A String", # Optional. Total active zone minutes for the exercise.
"averageHeartRateBeatsPerMinute": "A String", # Optional. Average heart rate during the exercise.
"averagePaceSecondsPerMeter": 3.14, # Optional. Average pace in seconds per meter.
"averageSpeedMillimetersPerSecond": 3.14, # Optional. Average speed in millimeters per second.
"caloriesKcal": 3.14, # Optional. Total calories burned by the user during the exercise.
"distanceMillimeters": 3.14, # Optional. Total distance covered by the user during the exercise.
"elevationGainMillimeters": 3.14, # Optional. Total elevation gain during the exercise.
"heartRateZoneDurations": { # Time spent in each heart rate zone. # Optional. Time spent in each heart rate zone.
"lightTime": "A String", # Optional. Time spent in light heart rate zone.
"moderateTime": "A String", # Optional. Time spent in moderate heart rate zone.
"peakTime": "A String", # Optional. Time spent in peak heart rate zone.
"vigorousTime": "A String", # Optional. Time spent in vigorous heart rate zone.
},
"mobilityMetrics": { # Mobility workouts specific metrics # Optional. Mobility workouts specific metrics. Only present in the advanced running exercises.
"avgCadenceStepsPerMinute": 3.14, # Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout.
"avgGroundContactTimeDuration": "A String", # Optional. The ground contact time for a particular stride is the amount of time for which the foot was in contact with the ground on that stride
"avgStrideLengthMillimeters": "A String", # Optional. Stride length is a measure of the distance covered by a single stride
"avgVerticalOscillationMillimeters": "A String", # Optional. Distance off the ground your center of mass moves with each stride while running
"avgVerticalRatio": 3.14, # Optional. Vertical oscillation/stride length between [5.0, 11.0].
},
"runVo2Max": 3.14, # Optional. Run VO2 max value for the exercise. Only present in the running exercises at the top level as in the summary of the whole exercise.
"steps": "A String", # Optional. Total steps taken during the exercise.
"totalSwimLengths": 3.14, # Optional. Number of full pool lengths completed during the exercise. Only present in the swimming exercises at the top level as in the summary of the whole exercise.
},
"splitType": "A String", # Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic.
"startTime": "A String", # Required. Lap start time
"startUtcOffset": "A String", # Required. Lap start time offset from UTC
},
],
"updateTime": "A String", # Output only. This is the timestamp of the last update to the exercise.
},
"floors": { # Gained elevation measured in floors over the time interval # Data for points in the `floors` interval data type collection.
"count": "A String", # Required. Number of floors in the recorded interval
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRate": { # A heart rate measurement. # Data for points in the `heart-rate` sample data type collection.
"beatsPerMinute": "A String", # Required. The heart rate value in beats per minute.
"metadata": { # Heart rate metadata. # Optional. Metadata about the heart rate sample.
"motionContext": "A String", # Optional. Indicates the user’s level of activity when the heart rate sample was measured
"sensorLocation": "A String", # Optional. Indicates the location of the sensor that measured the heart rate.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. Observation time
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"heartRateVariability": { # Captures user's heart rate variability (HRV) as measured by the root mean square of successive differences (RMSSD) between normal heartbeats or by standard deviation of the inter-beat intervals (SDNN). # Data for points in the `heart-rate-variability` sample data type collection.
"rootMeanSquareOfSuccessiveDifferencesMilliseconds": 3.14, # Optional. The root mean square of successive differences between normal heartbeats. This is a measure of heart rate variability used by Fitbit.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time of the heart rate variability measurement.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"standardDeviationMilliseconds": 3.14, # Optional. The standard deviation of the heart rate variability measurement.
},
"height": { # Body height measurement. # Data for points in the `height` sample data type collection.
"heightMillimeters": "A String", # Required. Height of the user in millimeters.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the height was recorded.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"hydrationLog": { # Holds information about a user logged hydration. # Data for points in the `hydration-log` session data type collection.
"amountConsumed": { # Represents the volume quantity. # Required. Amount of liquid (ex. water) consumed.
"milliliters": 3.14, # Required. Value representing the volume in milliliters.
"userProvidedUnit": "A String", # Optional. Value representing the user provided unit.
},
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
},
"oxygenSaturation": { # Captures the user's instantaneous oxygen saturation percentage (SpO2). # Data for points in the `oxygen-saturation` sample data type collection.
"percentage": 3.14, # Required. The oxygen saturation percentage. Valid values are from 0 to 100.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which oxygen saturation was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"respiratoryRateSleepSummary": { # Records respiratory rate details during sleep. Can have multiple per day if the user sleeps multiple times. # Data for points in the `respiratory-rate-sleep-summary` sample data type collection.
"deepSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for deep sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"fullSleepStats": { # Respiratory rate statistics for a given sleep stage. # Required. Full respiratory rate statistics.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"lightSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for light sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"remSleepStats": { # Respiratory rate statistics for a given sleep stage. # Optional. Respiratory rate statistics for REM sleep.
"breathsPerMinute": 3.14, # Required. Average breaths per minute.
"signalToNoise": 3.14, # Optional. How trustworthy the data is for the computation.
"standardDeviation": 3.14, # Optional. Standard deviation of the respiratory rate during sleep.
},
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which respiratory rate was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"runVo2Max": { # VO2 max value calculated based on the user's running activity. Value stored in ml/kg/min. # Data for points in the `run-vo2-max` sample data type collection.
"runVo2Max": 3.14, # Required. Run VO2 max value in ml/kg/min.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the metric was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
},
"sedentaryPeriod": { # SedentaryPeriod SedentaryPeriod data represents the periods of time that the user was sedentary (i.e. not moving while wearing the device). # Data for points in the `sedentary-period` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"sleep": { # A sleep session possibly including stages. # Data for points in the `sleep` session data type collection.
"createTime": "A String", # Output only. Creation time of this sleep observation.
"interval": { # Represents a time interval of session data point, which bundles multiple observed metrics together. # Required. Observed sleep interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session end time in civil time in the timezone the subject is in at the end of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Session start time in civil time in the timezone the subject is in at the start of the session.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. The end time of the observed session.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. The start time of the observed session.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC).
},
"metadata": { # Additional information about how the sleep was processed. # Optional. Sleep metadata: processing, main, manually edited, stages status.
"externalId": "A String", # Optional. Sleep identifier relevant in the context of the data source.
"manuallyEdited": True or False, # Output only. Some sleeps autodetected by algorithms can be manually edited by users.
"nap": True or False, # Output only. Naps are sleeps without stages and relatively short durations.
"processed": True or False, # Output only. Sleep and sleep stages algorithms finished processing.
"stagesStatus": "A String", # Output only. Sleep stages algorithm processing status.
},
"outOfBedSegments": [ # Optional. “Out of bed” segments that can overlap with sleep stages.
{ # A time interval to represent an out-of-bed segment.
"endTime": "A String", # Required. Segment end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the segment relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Segment tart time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the segment relative to the Coordinated Universal Time (UTC).
},
],
"stages": [ # Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period.
{ # Sleep stage segment.
"createTime": "A String", # Output only. Creation time of this sleep stages segment.
"endTime": "A String", # Required. Sleep stage end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the sleep stage relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Sleep stage start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the sleep stage relative to the Coordinated Universal Time (UTC).
"type": "A String", # Required. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
"updateTime": "A String", # Output only. Last update time of this sleep stages segment.
},
],
"summary": { # Sleep summary: metrics and stages summary. # Output only. Sleep summary: metrics and stages summary.
"minutesAfterWakeUp": "A String", # Output only. Minutes after wake up calculated by restlessness algorithm.
"minutesAsleep": "A String", # Output only. Total number of minutes asleep. For classic sleep it is the sum of ASLEEP stages (excluding AWAKE and RESTLESS). For "stages" sleep it is the sum of LIGHT, REM and DEEP stages (excluding AWAKE).
"minutesAwake": "A String", # Output only. Total number of minutes awake. It is a sum of all AWAKE stages.
"minutesInSleepPeriod": "A String", # Output only. Delta between wake time and bedtime. It is the sum of all stages.
"minutesToFallAsleep": "A String", # Output only. Minutes to fall asleep calculated by restlessness algorithm.
"stagesSummary": [ # Output only. List of summaries (total duration and segment count) per each sleep stage type.
{ # Total duration and segment count for a stage.
"count": "A String", # Output only. Number of sleep stages segments.
"minutes": "A String", # Output only. Total duration in minutes of a sleep stage.
"type": "A String", # Output only. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
},
],
},
"type": "A String", # Optional. SleepType: classic or stages.
"updateTime": "A String", # Output only. Last update time of this sleep observation.
},
"steps": { # Step count over the time interval. # Data for points in the `steps` interval data type collection.
"count": "A String", # Required. Number of steps in the recorded interval.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"swimLengthsData": { # Swim lengths data over the time interval. # Data for points in the `swim-lengths-data` interval data type collection.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
"strokeCount": "A String", # Required. Number of strokes in the lap.
"swimStrokeType": "A String", # Required. Swim stroke type.
},
"timeInHeartRateZone": { # Time in heart rate zone record. It's an interval spent in specific heart rate zone. # Data for points in the `time-in-heart-rate-zone` interval data type collection.
"heartRateZoneType": "A String", # Required. Heart rate zone type.
"interval": { # Represents a time interval of an observed data point. # Required. Observed interval.
"civilEndTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"civilStartTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"endTime": "A String", # Required. Observed interval end time.
"endUtcOffset": "A String", # Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC).
"startTime": "A String", # Required. Observed interval start time.
"startUtcOffset": "A String", # Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC).
},
},
"vo2Max": { # VO2 max measurement. # Data for points in the `vo2-max` sample data type collection.
"measurementMethod": "A String", # Optional. The method used to measure the VO2 max value.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which VO2 max was measured.
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"vo2Max": 3.14, # Required. VO2 max value measured as in ml consumed oxygen / kg of body weight / min.
},
"weight": { # Body weight measurement. # Data for points in the `weight` sample data type collection.
"notes": "A String", # Optional. Standard free-form notes captured at manual logging.
"sampleTime": { # Represents a sample time of an observed data point. # Required. The time at which the weight was measured
"civilTime": { # Civil time representation similar to google.type.DateTime, but ensures that neither the timezone nor the UTC offset can be set to avoid confusion between civil and physical time queries. # Output only. The civil time in the timezone the subject is in at the time of the observation.
"date": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Required. Calendar date.
"day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
"month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
"year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
},
"time": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Optional. Time of day. Defaults to the start of the day, at midnight if omitted.
"hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
"nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
"seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
},
},
"physicalTime": "A String", # Required. The time of the observation.
"utcOffset": "A String", # Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC).
},
"weightGrams": 3.14, # Required. Weight of a user in grams.
},
},
],
"nextPageToken": "A String", # Next page token, empty if the response is complete
}
reconcile_next()
Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call 'execute()' on to request the next
page. Returns None if there are no more items in the collection.
rollUp(parent, body=None, x__xgafv=None)
Roll up data points over physical time intervals for supported data types.
Args:
parent: string, Required. Parent data type of the Data Point collection. Format: `users/{user}/dataTypes/{data_type}`, e.g.: - `users/me/dataTypes/steps` - `users/me/dataTypes/distance` For a list of the supported data types see the RollupDataPoint value union field. (required)
body: object, The request body.
The object takes the form of:
{ # Request to roll up data points by physical time intervals.
"dataSourceFamily": "A String", # Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: `users/me/dataSourceFamilies/{data_source_family}` The supported values are: - `users/me/dataSourceFamilies/all-sources` - default value - `users/me/dataSourceFamilies/google-wearables` - tracker devices - `users/me/dataSourceFamilies/google-sources` - Google first party sources
"pageSize": 42, # Optional. The maximum number of data points to return. If unspecified, at most 1440 data points will be returned. The maximum page size is 10000; values above that will be truncated accordingly.
"pageToken": "A String", # Optional. The next_page_token from a previous request, if any. All other request fields need to be the same as in the initial request when the page token is specified.
"range": { # Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time. # Required. Closed-open range of data points that will be rolled up. The maximum range for `calories-in-heart-rate-zone`, `heart-rate`, `active-minutes` and `total-calories` is 14 days. The maximum range for all other data types is 90 days.
"endTime": "A String", # Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
"startTime": "A String", # Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
},
"windowSize": "A String", # Required. The size of the time window to group data points into before applying the aggregation functions.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response containing the list of rolled up data points.
"nextPageToken": "A String", # A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
"rollupDataPoints": [ # Values for each aggregation time window.
{ # Value of a rollup for a single physical time interval (aggregation window)
"activeMinutes": { # Represents the result of the rollup of the active minutes data type. # Returned by default when rolling up data points from the `active-minutes` data type, or when requested explicitly using the `active-minutes` rollup type identifier.
"activeMinutesRollupByActivityLevel": [ # Active minutes by activity level. At most one record per activity level is allowed.
{ # Active minutes by activity level.
"activeMinutesSum": "A String", # Number of whole minutes spent in activity.
"activityLevel": "A String", # The level of activity.
},
],
},
"activeZoneMinutes": { # Represents the result of the rollup of the active zone minutes data type. # Returned by default when rolling up data points from the `active-zone-minutes` data type, or when requested explicitly using the `active-zone-minutes` rollup type identifier.
"sumInCardioHeartZone": "A String", # Active zone minutes in `HeartRateZone.CARDIO`.
"sumInFatBurnHeartZone": "A String", # Active zone minutes in `HeartRateZone.FAT_BURN`.
"sumInPeakHeartZone": "A String", # Active zone minutes in `HeartRateZone.PEAK`.
},
"activityLevel": { # Represents the result of the rollup of the activity level data type. # Returned by default when rolling up data points from the `activity-level` data type, or when requested explicitly using the `activity-level` rollup type identifier.
"activityLevelRollupsByActivityLevelType": [ # List of total durations in each activity level type.
{ # Represents the total duration in a specific activity level type.
"activityLevelType": "A String", # Activity level type.
"totalDuration": "A String", # Total duration in the activity level type.
},
],
},
"altitude": { # Represents the result of the rollup of the user's altitude. # Returned by default when rolling up data points from the `altitude` data type, or when requested explicitly using the `altitude` rollup type identifier.
"gainMillimetersSum": "A String", # Sum of the altitude gain in millimeters.
},
"bodyFat": { # Represents the result of the rollup of the body fat data type. # Returned by default when rolling up data points from the `body-fat` data type, or when requested explicitly using the `body-fat` rollup type identifier.
"bodyFatPercentageAvg": 3.14, # Average body fat percentage.
},
"caloriesInHeartRateZone": { # Represents the result of the rollup of the calories in heart rate zone data type. # Returned by default when rolling up data points from the `calories-in-heart-rate-zone` data type, or when requested explicitly using the `calories-in-heart-rate-zone` rollup type identifier.
"caloriesInHeartRateZones": [ # List of calories burned in each heart rate zone.
{ # Represents the amount of kilocalories burned in a specific heart rate zone.
"heartRateZone": "A String", # The heart rate zone.
"kcal": 3.14, # The amount of kilocalories burned in the specified heart rate zone.
},
],
},
"distance": { # Result of the rollup of the user's distance. # Returned by default when rolling up data points from the `distance` data type, or when requested explicitly using the `distance` rollup type identifier.
"millimetersSum": "A String", # Sum of the distance in millimeters.
},
"endTime": "A String", # End time of the window this value aggregates over
"floors": { # Represents the result of the rollup of the user's floors. # Returned by default when rolling up data points from the `floors` data type, or when requested explicitly using the `floors` rollup type identifier.
"countSum": "A String", # Sum of the floors count.
},
"heartRate": { # Represents the result of the rollup of the heart rate data type. # Returned by default when rolling up data points from the `heart-rate` data type, or when requested explicitly using the `heart-rate` rollup type identifier.
"beatsPerMinuteAvg": 3.14, # The average heart rate value in the interval.
"beatsPerMinuteMax": 3.14, # The maximum heart rate value in the interval.
"beatsPerMinuteMin": 3.14, # The minimum heart rate value in the interval.
},
"hydrationLog": { # Represents the result of the rollup of the hydration log data type. # Returned by default when rolling up data points from the `hydration-log` data type, or when requested explicitly using the `hydration-log` rollup type identifier.
"amountConsumed": { # Rollup for volume quantity. # Rollup for amount consumed.
"millilitersSum": 3.14, # Required. The sum of volume in milliliters.
"userProvidedUnitLast": "A String", # Optional. The user provided unit on the last element.
},
},
"runVo2Max": { # Represents the result of the rollup of the user's daily heart rate variability personal range. # Returned by default when rolling up data points from the `run-vo2-max` data type, or when requested explicitly using the `run-vo2-max` rollup type identifier.
"rateAvg": 3.14, # Average value of run VO2 max in the interval.
"rateMax": 3.14, # Maximum value of run VO2 max in the interval.
"rateMin": 3.14, # Minimum value of run VO2 max in the interval..
},
"sedentaryPeriod": { # Represents the result of the rollup of the user's sedentary periods. # Returned by default when rolling up data points from the `sedentary-period` data type, or when requested explicitly using the `sedentary-period` rollup type identifier.
"durationSum": "A String", # The total time user spent sedentary during the interval.
},
"startTime": "A String", # Start time of the window this value aggregates over
"steps": { # Represents the result of the rollup of the steps data type. # Returned by default when rolling up data points from the `steps` data type, or when requested explicitly using the `steps` rollup type identifier.
"countSum": "A String", # Total number of steps in the interval.
},
"swimLengthsData": { # Represents the result of the rollup of the swim lengths data type. # Returned by default when rolling up data points from the `swim-lengths-data` data type, or when requested explicitly using the `swim-lengths-data` rollup type identifier.
"strokeCountSum": "A String", # Total number of swim strokes in the interval.
},
"timeInHeartRateZone": { # Represents the result of the rollup of the time in heart rate zone data type. # Returned by default when rolling up data points from the `time-in-heart-rate-zone` data type, or when requested explicitly using the `time-in-heart-rate-zone` rollup type identifier.
"timeInHeartRateZones": [ # List of time spent in each heart rate zone.
{ # Represents the total time spent in a specific heart rate zone.
"duration": "A String", # The total time spent in the specified heart rate zone.
"heartRateZone": "A String", # The heart rate zone.
},
],
},
"totalCalories": { # Represents the result of the rollup of the user's total calories. # Returned by default when rolling up data points from the `total-calories` data type, or when requested explicitly using the `total-calories` rollup type identifier.
"kcalSum": 3.14, # Sum of the total calories in kilocalories.
},
"weight": { # Represents the result of the rollup of the weight data type. # Returned by default when rolling up data points from the `weight` data type, or when requested explicitly using the `weight` rollup type identifier.
"weightGramsAvg": 3.14, # Average weight in grams.
},
},
],
}
rollUp_next()
Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call 'execute()' on to request the next
page. Returns None if there are no more items in the collection.