Index
DataPointsService(interface)DataSubscriptionService(interface)HealthProfileService(interface)ActiveEnergyBurned(message)ActiveEnergyBurnedRollupValue(message)ActiveMinutes(message)ActiveMinutes.ActiveMinutesByActivityLevel(message)ActiveMinutes.ActivityLevel(enum)ActiveMinutesRollupValue(message)ActiveMinutesRollupValue.ActiveMinutesRollupByActivityLevel(message)ActiveZoneMinutes(message)ActiveZoneMinutes.HeartRateZone(enum)ActiveZoneMinutesRollupValue(message)ActivityLevel(message)ActivityLevel.ActivityLevelType(enum)ActivityLevelRollupValue(message)ActivityLevelRollupValue.ActivityLevelRollupByActivityLevelType(message)Altitude(message)AltitudeRollupValue(message)BatchDeleteDataPointsOperationMetadata(message)BatchDeleteDataPointsRequest(message)BatchDeleteDataPointsResponse(message)BloodGlucose(message)BloodGlucose.MealType(enum)BloodGlucose.MeasurementSource(enum)BloodGlucose.MeasurementTiming(enum)BloodGlucose.Specimen(enum)BloodGlucoseRollupValue(message)BodyFat(message)BodyFatRollupValue(message)CaloriesInHeartRateZoneRollupValue(message)CaloriesInHeartRateZoneRollupValue.CaloriesInHeartRateZoneValue(message)CivilDateTime(message)CivilTimeInterval(message)CoreBodyTemperature(message)CoreBodyTemperature.MeasurementLocation(enum)CoreBodyTemperatureRollupValue(message)CreateDataPointOperationMetadata(message)CreateDataPointRequest(message)CreateSubscriberMetadata(message)CreateSubscriberPayload(message)CreateSubscriberRequest(message)CreateSubscriptionPayload(message)CreateSubscriptionRequest(message)DailyHeartRateVariability(message)DailyHeartRateZones(message)DailyHeartRateZones.HeartRateZone(message)DailyOxygenSaturation(message)DailyRespiratoryRate(message)DailyRestingHeartRate(message)DailyRestingHeartRate.DailyRestingHeartRateMetadata(message)DailyRestingHeartRate.DailyRestingHeartRateMetadata.CalculationMethod(enum)DailyRollUpDataPointsRequest(message)DailyRollUpDataPointsResponse(message)DailyRollupDataPoint(message)DailySleepTemperatureDerivations(message)DailyVO2Max(message)DailyVO2Max.CardioFitnessLevel(enum)DataPoint(message)DataSource(message)DataSource.Application(message)DataSource.Device(message)DataSource.Device.FormFactor(enum)DataSource.Platform(enum)DataSource.RecordingMethod(enum)DataType(message)DeleteSubscriberMetadata(message)DeleteSubscriberRequest(message)DeleteSubscriptionRequest(message)Distance(message)DistanceRollupValue(message)Electrocardiogram(message)Electrocardiogram.ResultClassification(enum)EndpointAuthorization(message)EnergyQuantity(message)EnergyUnit(enum)Exercise(message)Exercise.ExerciseEvent(message)Exercise.ExerciseEvent.ExerciseEventType(enum)Exercise.ExerciseMetadata(message)Exercise.ExerciseType(enum)Exercise.SplitSummary(message)Exercise.SplitSummary.SplitType(enum)Floors(message)FloorsRollupValue(message)Food(message)Food.FoodServing(message)FoodAccessLevel(enum)FoodMeasurementUnit(message)GetDataPointRequest(message)GetIdentityRequest(message)GetIrnProfileRequest(message)GetPairedDeviceRequest(message)GetProfileRequest(message)GetSettingsRequest(message)HeartRate(message)HeartRate.HeartRateMetadata(message)HeartRate.HeartRateMetadata.MotionContext(enum)HeartRate.HeartRateMetadata.SensorLocation(enum)HeartRateRollupValue(message)HeartRateVariability(message)HeartRateVariabilityPersonalRangeRollupValue(message)HeartRateZoneType(enum)Height(message)HydrationLog(message)HydrationLogRollupValue(message)HydrationLogRollupValue.VolumeQuantityRollup(message)Identity(message)IrnProfile(message)IrregularRhythmNotification(message)IrregularRhythmNotification.AlertWindow(message)IrregularRhythmNotification.HeartBeat(message)ListDataPointsRequest(message)ListDataPointsResponse(message)ListPairedDevicesRequest(message)ListPairedDevicesResponse(message)ListSubscribersRequest(message)ListSubscribersResponse(message)ListSubscriptionsRequest(message)ListSubscriptionsResponse(message)MealType(enum)MedicalDeviceInfo(message)MetricsSummary(message)MetricsSummary.MobilityMetrics(message)MetricsSummary.TimeInHeartRateZones(message)Nutrient(enum)NutrientQuantity(message)NutritionLog(message)NutritionLog.Serving(message)NutritionLogRollupValue(message)NutritionLogRollupValue.EnergyQuantityRollup(message)NutritionLogRollupValue.NutrientQuantityRollup(message)NutritionLogRollupValue.WeightQuantityRollup(message)ObservationSampleTime(message)ObservationTimeInterval(message)OxygenSaturation(message)PairedDevice(message)PairedDevice.DeviceType(enum)Profile(message)ReconcileDataPointsRequest(message)ReconcileDataPointsResponse(message)ReconciledDataPoint(message)RespiratoryRateSleepSummary(message)RespiratoryRateSleepSummary.RespiratoryRateSleepSummaryStatistics(message)RestingHeartRatePersonalRangeRollupValue(message)RollUpDataPointsRequest(message)RollUpDataPointsResponse(message)RollupDataPoint(message)RunVO2Max(message)RunVO2MaxRollupValue(message)SedentaryPeriod(message)SedentaryPeriodRollupValue(message)SessionTimeInterval(message)Settings(message)Settings.DistanceUnit(enum)Settings.GlucoseUnit(enum)Settings.HeightUnit(enum)Settings.StrideLengthType(enum)Settings.SwimUnit(enum)Settings.TemperatureUnit(enum)Settings.WaterUnit(enum)Settings.WeightUnit(enum)Sleep(message)Sleep.OutOfBedSegment(message)Sleep.SleepMetadata(message)Sleep.SleepMetadata.StagesState(enum)Sleep.SleepStage(message)Sleep.SleepStageType(enum)Sleep.SleepSummary(message)Sleep.SleepSummary.StageSummary(message)Sleep.SleepType(enum)Steps(message)StepsRollupValue(message)Subscriber(message)Subscriber.State(enum)SubscriberConfig(message)SubscriberConfig.SubscriptionCreatePolicy(enum)Subscription(message)SwimLengthsData(message)SwimLengthsData.SwimStrokeType(enum)SwimLengthsDataRollupValue(message)TimeInHeartRateZone(message)TimeInHeartRateZoneRollupValue(message)TimeInHeartRateZoneRollupValue.TimeInHeartRateZoneValue(message)TotalCaloriesRollupValue(message)UpdateDataPointOperationMetadata(message)UpdateDataPointRequest(message)UpdateProfileRequest(message)UpdateSettingsRequest(message)UpdateSubscriberMetadata(message)UpdateSubscriberRequest(message)UpdateSubscriptionRequest(message)VO2Max(message)VO2Max.MeasurementMethod(enum)VolumeQuantity(message)VolumeUnit(enum)WebhookNotificationCloudLog(message)Weight(message)WeightQuantity(message)WeightRollupValue(message)WeightUnit(enum)
DataPointsService
Data Points Service exposing the user's health and fitness measured and derived data.
| BatchDeleteDataPoints |
|---|
|
Delete a batch of identifyable data points.
|
| CreateDataPoint |
|---|
|
Creates a single identifiable data point.
|
| DailyRollUpDataPoints |
|---|
|
Roll up data points over civil time intervals for supported data types.
|
| GetDataPoint |
|---|
|
Get a single identifyable data point.
|
| ListDataPoints |
|---|
|
Query user health and fitness data points.
|
| ReconcileDataPoints |
|---|
|
Reconcile data points from multiple data sources into a single data stream.
|
| RollUpDataPoints |
|---|
|
Roll up data points over physical time intervals for supported data types.
|
| UpdateDataPoint |
|---|
|
Updates a single identifiable data point. If a data point with the specified
|
DataSubscriptionService
Data Subscription Service that allows clients (e.g., Fitbit 3P applications, internal Fitbit Services) to manage their subscriber endpoints. This service provides CRUD APIs for subscribers, and also offers functionalities for subscriber verification and statistics.
| CreateSubscriber |
|---|
|
Registers a new subscriber endpoint to receive notifications. A subscriber represents an application or service that wishes to receive data change notifications for users who have granted consent. Endpoint Verification: For a subscriber to be successfully created, the provided
Both tests must pass for the subscriber creation to succeed. If verification fails, the operation will not be completed and an error will be returned. This process ensures the endpoint is reachable and correctly validates the
|
| CreateSubscription |
|---|
|
Creates a subscription for a specific user to a specific subscriber. This method requires the subscriber to have a
|
| DeleteSubscriber |
|---|
|
Deletes a subscriber registration. This will stop all notifications to the subscriber's endpoint.
|
| DeleteSubscription |
|---|
|
Deletes a specific user subscription, stopping notifications for this user to this subscriber.
|
| ListSubscribers |
|---|
|
Lists all subscribers registered within the owned Google Cloud Project.
|
| ListSubscriptions |
|---|
|
Lists all active subscriptions for a given subscriber. This can be filtered, for example, by user or data type.
|
| UpdateSubscriber |
|---|
|
Updates the configuration of an existing subscriber, such as the endpoint URI or the data types it's interested in. Endpoint Verification: If the
Both tests must pass using the potentially updated values for the subscriber update to succeed. If verification fails, the update will not be applied, and an error will be returned.
|
| UpdateSubscription |
|---|
|
Updates the data types for an existing user subscription.
|
HealthProfileService
Health Profile Service
| GetIdentity |
|---|
|
Gets the user's identity. It includes the legacy Fitbit user ID and the Google user ID and it can be used by migrating clients to map identifiers between the two systems.
|
| GetIrnProfile |
|---|
|
Returns user's IRN Profile details.
|
| GetPairedDevice |
|---|
|
Returns user's Device.
|
| GetProfile |
|---|
|
Returns user Profile details.
|
| GetSettings |
|---|
|
Returns user settings details.
|
| ListPairedDevices |
|---|
|
Returns the user's list of paired 1P trackers and smartwatches.
|
| UpdateProfile |
|---|
|
Updates the user's profile details.
|
| UpdateSettings |
|---|
|
Updates the user's settings details.
|
ActiveEnergyBurned
Energy burned as part of an activity, excluding the basal energy burn.
| Fields | |
|---|---|
interval |
Required. Observed interval |
kcal |
Required. Energy burned during an activity, measured in kilocalories. |
ActiveEnergyBurnedRollupValue
Represents the result of the rollup of active energy burned.
| Fields | |
|---|---|
kcal_sum |
Output only. Sum of the active energy burned in kilocalories. |
ActiveMinutes
Record of active minutes in a given time interval.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
active_minutes_by_activity_level[] |
Required. Active minutes by activity level. At most one record per activity level is allowed. |
ActiveMinutesByActivityLevel
Active minutes at a given activity level.
| Fields | |
|---|---|
activity_level |
Required. The level of activity. |
active_minutes |
Required. Number of whole minutes spent in activity. |
ActivityLevel
Activity level.
| Enums | |
|---|---|
ACTIVITY_LEVEL_UNSPECIFIED |
Activity level is unspecified. |
LIGHT |
Light activity level. |
MODERATE |
Moderate activity level. |
VIGOROUS |
Vigorous activity level. |
ActiveMinutesRollupValue
Represents the result of the rollup of the active minutes data type.
| Fields | |
|---|---|
active_minutes_rollup_by_activity_level[] |
Active minutes by activity level. At most one record per activity level is allowed. |
ActiveMinutesRollupByActivityLevel
Active minutes by activity level.
| Fields | |
|---|---|
activity_level |
The level of activity. |
active_minutes_sum |
Number of whole minutes spent in activity. |
ActiveZoneMinutes
Record of active zone minutes in a given time interval.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
heart_rate_zone |
Required. Heart rate zone in which the active zone minutes have been earned, in the given time interval. |
active_zone_minutes |
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
Represents different heart rate zones.
| Enums | |
|---|---|
HEART_RATE_ZONE_UNSPECIFIED |
Unspecified heart rate zone. |
FAT_BURN |
The fat burn heart rate zone. |
CARDIO |
The cardio heart rate zone. |
PEAK |
The peak heart rate zone. |
ActiveZoneMinutesRollupValue
Represents the result of the rollup of the active zone minutes data type.
| Fields | |
|---|---|
sum_in_cardio_heart_zone |
Active zone minutes in |
sum_in_peak_heart_zone |
Active zone minutes in |
sum_in_fat_burn_heart_zone |
Active zone minutes in |
ActivityLevel
Internal type to capture activity level during a certain time interval.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
activity_level_type |
Required. Activity level type in the given time interval. |
ActivityLevelType
Represents different activity level types.
| Enums | |
|---|---|
ACTIVITY_LEVEL_TYPE_UNSPECIFIED |
Unspecified activity level type. |
SEDENTARY |
Sedentary activity level. |
LIGHTLY_ACTIVE |
Lightly active activity level. |
MODERATELY_ACTIVE |
Moderately active activity level. |
VERY_ACTIVE |
Very active activity level. |
ActivityLevelRollupValue
Represents the result of the rollup of the activity level data type.
| Fields | |
|---|---|
activity_level_rollups_by_activity_level_type[] |
List of total durations in each activity level type. |
ActivityLevelRollupByActivityLevelType
Represents the total duration in a specific activity level type.
| Fields | |
|---|---|
activity_level_type |
Activity level type. |
total_duration |
Total duration in the activity level type. |
Altitude
Captures the altitude gain (i.e. deltas), and not level above sea, for a user in millimeters.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
gain_millimeters |
Required. Altitude gain in millimeters over the observed interval. |
AltitudeRollupValue
Represents the result of the rollup of the user's altitude.
| Fields | |
|---|---|
gain_millimeters_sum |
Sum of the altitude gain in millimeters. |
BatchDeleteDataPointsOperationMetadata
Metadata for a batch delete data points operation.
| Fields | |
|---|---|
failed_requests |
The key in this map is the index of the request in the |
BatchDeleteDataPointsRequest
Request to delete a batch of identifiable data points.
| Fields | |
|---|---|
parent |
Optional. Parent (data type) for the Data Point collection Format:
For a list of the supported data types see the 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[] |
Required. The names of the DataPoints to delete. A maximum of 10000 data points can be deleted in a single request. |
BatchDeleteDataPointsResponse
Response containing the list of possibly soft-deleted DataPoints.
| Fields | |
|---|---|
data_points[] |
The list of soft-deleted DataPoints, if the data type supports only soft deletion. |
BloodGlucose
Represents a blood glucose level measurement. LINT: LEGACY_NAMES
| Fields | |
|---|---|
sample_time |
Required. The time at which blood glucose was measured. |
measurement_source |
Optional. Source of the measurement. |
meal_type |
Optional. Meal type of the measurement. |
measurement_timing |
Optional. Timing of the measurement. |
specimen |
Optional. Type of body fluid used to measure the blood glucose. |
notes |
Optional. Standard free-form notes captured at manual logging. |
blood_glucose_milligrams_per_deciliter |
Required. Blood glucose level concentration in mg/dL. |
MealType
Meal type associated with the measurement.
| Enums | |
|---|---|
MEAL_TYPE_UNSPECIFIED |
Unspecified meal type. |
BREAKFAST |
Breakfast. |
LUNCH |
Lunch. |
DINNER |
Dinner. |
SNACK |
Snack. |
MeasurementSource
The clinical method or tool used to measure the blood glucose level.
| Enums | |
|---|---|
MEASUREMENT_SOURCE_UNSPECIFIED |
Unspecified measurement source. |
SELF_MONITORING_BLOOD_GLUCOSE |
Self-monitoring of blood glucose (Blood glucose meter) |
CONTINUOUS_GLUCOSE_MONITORING |
Continuous glucose monitoring device |
LAB_TEST |
Laboratory test |
MeasurementTiming
Timing of the measurement.
| Enums | |
|---|---|
MEASUREMENT_TIMING_UNSPECIFIED |
Unspecified measurement timing. |
AFTER_MEAL |
Measurement taken after meal. |
BEFORE_MEAL |
Measurement taken before meal. |
FASTING |
Measurement taken while fasting. |
GENERAL |
General measurement (not associated with a meal or time of day). |
BEFORE_BED |
Measurement taken before bed. |
OVER_NIGHT |
Measurement taken over night. |
Specimen
Type of body fluid used to measure the blood glucose.
| Enums | |
|---|---|
SPECIMEN_UNSPECIFIED |
Unspecified specimen. |
CAPILLARY_BLOOD |
Capillary blood. |
INTERSTITIAL_FLUID |
Interstitial fluid. |
PLASMA |
Plasma. |
SERUM |
Serum. |
TEARS |
Tears. |
WHOLE_BLOOD |
Whole blood. |
BloodGlucoseRollupValue
Represents the result of the rollup of the blood glucose data type. LINT: LEGACY_NAMES
| Fields | |
|---|---|
blood_glucose_milligrams_per_deciliter_avg |
Average blood glucose level in mg/dL. |
BodyFat
Body fat measurement.
| Fields | |
|---|---|
sample_time |
Required. The time at which body fat was measured. |
percentage |
Required. Body fat percentage, in range [0, 100]. |
BodyFatRollupValue
Represents the result of the rollup of the body fat data type.
| Fields | |
|---|---|
body_fat_percentage_avg |
Average body fat percentage. |
CaloriesInHeartRateZoneRollupValue
Represents the result of the rollup of the calories in heart rate zone data type.
| Fields | |
|---|---|
calories_in_heart_rate_zones[] |
List of calories burned in each heart rate zone. |
CaloriesInHeartRateZoneValue
Represents the amount of kilocalories burned in a specific heart rate zone.
| Fields | |
|---|---|
heart_rate_zone |
The heart rate zone. |
kcal |
The amount of kilocalories burned in the specified heart rate zone. |
CivilDateTime
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.
| Fields | |
|---|---|
date |
Required. Calendar date. |
time |
Optional. Time of day. Defaults to the start of the day, at midnight if omitted. |
CivilTimeInterval
Counterpart of google.type.Interval, but using CivilDateTime.
| Fields | |
|---|---|
start |
Required. The inclusive start of the range. |
end |
Required. The exclusive end of the range. |
CoreBodyTemperature
Core body temperature measurement, distinct from peripheral body temperature, reflects the temperature of the body's internal organs.
| Fields | |
|---|---|
sample_time |
Required. The time at which core body temperature was measured. |
measurement_location |
Optional. The location of the core body temperature measurement. |
id |
Optional. The unique identifier of the core body temperature measurement. |
temperature_celsius |
Required. The core body temperature in Celsius. |
MeasurementLocation
Measurement location for core body temperature.
| Enums | |
|---|---|
MEASUREMENT_LOCATION_UNSPECIFIED |
Measurement location is unspecified. |
OTHER |
Other measurement location. |
ARMPIT |
Armpit measurement location. |
BODY |
Body measurement location. |
EAR |
Ear measurement location. |
FINGER |
Finger measurement location. |
GASTRO_INTESTINAL |
Gastro-intestinal measurement location. |
MOUTH |
Mouth measurement location. |
RECTUM |
Rectum measurement location. |
TOE |
Toe measurement location. |
EAR_DRUM |
Ear drum measurement location. |
TEMPORAL_ARTERY |
Temporal artery measurement location. |
FOREHEAD |
Forehead measurement location. |
URINARY_BLADDER |
Urinary bladder measurement location. |
NASAL |
Nasal measurement location. |
NASOPHARYNGEAL |
Nasopharyngeal measurement location. |
WRIST |
Wrist measurement location. |
VAGINA |
Vagina measurement location. |
CoreBodyTemperatureRollupValue
Represents the result of the rollup of the core body temperature data type.
| Fields | |
|---|---|
temperature_celsius_avg |
Average core body temperature in Celsius. |
temperature_celsius_max |
Maximum core body temperature in Celsius. |
temperature_celsius_min |
Minimum core body temperature in Celsius. |
CreateDataPointOperationMetadata
This type has no fields.
Metadata for a create data point operation.
CreateDataPointRequest
Request to create an identifiable data point.
| Fields | |
|---|---|
parent |
Required. The parent resource name where the data point will be created. Format: |
data_point |
Required. The data point to create. |
CreateSubscriberMetadata
This type has no fields.
Represents metadata for creating a subscriber.
CreateSubscriberPayload
Payload for creating a subscriber.
| Fields | |
|---|---|
endpoint_uri |
Required. The full HTTPS URI where update notifications will be sent. The URI must be a valid URL and use HTTPS as the scheme. This endpoint will be verified during the |
subscriber_configs[] |
Optional. Configuration for the subscriber. |
endpoint_authorization |
Required. Authorization mechanism for the subscriber endpoint. The |
CreateSubscriberRequest
-- Messages -- Request message for CreateSubscriber.
| Fields | |
|---|---|
parent |
Required. The parent resource where this subscriber will be created. Format: projects/{project} Example: projects/my-project-123 |
subscriber |
Required. The subscriber to create. |
subscriber_id |
Optional. The ID to use for the subscriber, which will become the final component of the subscriber's resource name. This value should be 4-36 characters, and valid characters are /a-z/. |
CreateSubscriptionPayload
Payload for creating a subscription.
| Fields | |
|---|---|
data_types[] |
Optional. Data types subscribed to. |
user |
Required. Immutable. The resource name of the user for whom this subscription is active. Format: |
CreateSubscriptionRequest
Request message for CreateSubscription.
| Fields | |
|---|---|
parent |
Required. The parent subscriber. Format: projects/{project}/subscribers/{subscriber} The {subscriber} ID is user-settable (4-36 characters, matching /a-z/) if provided during creation, or system-generated otherwise. |
subscription_id |
Optional. The {subscription_id} is user-settable (4-36 chars, matching /a-z/) or system-generated otherwise. If provided, the ID must be unique within the parent subscriber. |
subscription |
Required. The subscription to create. |
DailyHeartRateVariability
Represents the daily heart rate variability data type.
At least one of the following fields must be set:
average_heart_rate_variability_millisecondsnon_rem_heart_rate_beats_per_minuteentropydeep_sleep_root_mean_square_of_successive_differences_milliseconds
| Fields | |
|---|---|
date |
Required. Date (in the user's timezone) of heart rate variability measurement. |
average_heart_rate_variability_milliseconds |
Optional. A user's average heart rate variability calculated using the root mean square of successive differences (RMSSD) in times between heartbeats. |
non_rem_heart_rate_beats_per_minute |
Optional. Non-REM heart rate |
entropy |
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. |
deep_sleep_root_mean_square_of_successive_differences_milliseconds |
Optional. The root mean square of successive differences (RMSSD) value during deep sleep. |
DailyHeartRateZones
User's heart rate zone thresholds based on the Karvonen algorithm for a specific day.
| Fields | |
|---|---|
date |
Required. Date (in user's timezone) of the heart rate zones record. |
heart_rate_zones[] |
Required. The heart rate zones. |
HeartRateZone
The heart rate zone.
| Fields | |
|---|---|
heart_rate_zone_type |
Required. The heart rate zone type. |
min_beats_per_minute |
Required. Minimum heart rate for this zone in beats per minute. |
max_beats_per_minute |
Required. Maximum 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.
| Fields | |
|---|---|
date |
Required. Date (in user's timezone) of the daily oxygen saturation record. |
average_percentage |
Required. The average value of the oxygen saturation samples during the sleep. |
lower_bound_percentage |
Required. The lower bound of the confidence interval of oxygen saturation samples during sleep. |
upper_bound_percentage |
Required. The upper bound of the confidence interval of oxygen saturation samples during sleep. |
standard_deviation_percentage |
Optional. Standard deviation of the daily oxygen saturation averages from the past 7-30 days. |
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.
| Fields | |
|---|---|
date |
Required. The date on which the respiratory rate was measured. |
breaths_per_minute |
Required. The average number of breaths taken per minute. |
DailyRestingHeartRate
Measures the daily resting heart rate for a user, calculated using the all day heart rate measurements.
| Fields | |
|---|---|
date |
Required. Date (in the user's timezone) of the resting heart rate measurement. |
daily_resting_heart_rate_metadata |
Optional. Metadata for the daily resting heart rate. |
beats_per_minute |
Required. The resting heart rate value in beats per minute. |
DailyRestingHeartRateMetadata
Metadata for the daily resting heart rate.
| Fields | |
|---|---|
calculation_method |
Required. The method used to calculate the resting heart rate. |
CalculationMethod
The method used to calculate the resting heart rate.
| Enums | |
|---|---|
CALCULATION_METHOD_UNSPECIFIED |
The calculation method is unspecified. |
WITH_SLEEP |
The resting heart rate is calculated using the sleep data. |
ONLY_WITH_AWAKE_DATA |
The resting heart rate is calculated using only awake data. |
DailyRollUpDataPointsRequest
Request to roll up data points by civil time intervals.
| Fields | |
|---|---|
parent |
Required. Parent data type of the Data Point collection. Format:
For a list of the supported data types see the |
range |
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 |
window_size_days |
Optional. Aggregation window size, in number of days. Defaults to 1 if not specified. |
page_size |
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. |
page_token |
Optional. The |
data_source_family |
Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: The supported values are:
|
DailyRollUpDataPointsResponse
Response containing the list of rolled up data points.
| Fields | |
|---|---|
rollup_data_points[] |
Values for each aggregation time window. |
DailyRollupDataPoint
Value of a daily rollup for a single civil time interval (aggregation window) of reconciled data points from all data sources, excluding those data points that are identified as recorded by wearables in intervals when they were not actually worn.
| Fields | |
|---|---|
civil_start_time |
Start time of the window this value aggregates over |
civil_end_time |
End time of the window this value aggregates over |
Union field
The field names usually follow the format If there were no manual, on-wrist data points in this interval, the value will not be set. When the value is set, but the data shows zero, e.g. These messages represent the aggregated data payload for each data type and are embedded within the |
|
steps |
Returned by default when rolling up data points from the |
floors |
Returned by default when rolling up data points from the |
heart_rate |
Returned by default when rolling up data points from the |
resting_heart_rate_personal_range |
Returned by default when rolling up data points from the |
heart_rate_variability_personal_range |
Returned by default when rolling up data points from the |
weight |
Returned by default when rolling up data points from the |
altitude |
Returned by default when rolling up data points from the |
distance |
Returned by default when rolling up data points from the |
body_fat |
Returned by default when rolling up data points from the |
total_calories |
Returned by default when rolling up data points from the |
active_zone_minutes |
Returned by default when rolling up data points from the |
sedentary_period |
Returned by default when rolling up data points from the |
run_vo2_max |
Returned by default when rolling up data points from the |
calories_in_heart_rate_zone |
Returned by default when rolling up data points from the |
activity_level |
Returned by default when rolling up data points from the |
nutrition_log |
Returned by default when rolling up data points from the |
hydration_log |
Returned by default when rolling up data points from the |
time_in_heart_rate_zone |
Returned by default when rolling up data points from the |
active_minutes |
Returned by default when rolling up data points from the |
swim_lengths_data |
Returned by default when rolling up data points from the |
core_body_temperature |
Returned by default when rolling up data points from the |
active_energy_burned |
Returned by default when rolling up data points from the |
blood_glucose |
Returned by default when rolling up data points from the |
DailySleepTemperatureDerivations
Provides derived sleep temperature values, calculated from skin or internal device temperature readings during sleep.
| Fields | |
|---|---|
date |
Required. Date for which the sleep temperature derivations are calculated. |
nightly_temperature_celsius |
Required. The user's nightly skin temperature. It is the mean of skin temperature samples taken from the user’s sleep. |
baseline_temperature_celsius |
Optional. The user's baseline skin temperature. It is the median of the user's nightly skin temperature over the past 30 days. |
relative_nightly_stddev_30d_celsius |
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.
| Fields | |
|---|---|
date |
Required. The date for which the Daily VO2 max was measured. |
estimated |
Optional. An estimated field is added to indicate when the confidence has decreased sufficiently to consider the value an estimation. |
cardio_fitness_level |
Optional. Represents the user's cardio fitness level based on their VO2 max. |
vo2_max |
Required. Daily VO2 max value measured as in ml consumed oxygen / kg of body weight / min. |
vo2_max_covariance |
Optional. The covariance of the VO2 max value. |
CardioFitnessLevel
The cardio fitness level categories.
| Enums | |
|---|---|
CARDIO_FITNESS_LEVEL_UNSPECIFIED |
Unspecified cardio fitness level. |
POOR |
Poor cardio fitness level. |
FAIR |
Fair cardio fitness level. |
AVERAGE |
Average cardio fitness level. |
GOOD |
Good cardio fitness level. |
VERY_GOOD |
Very good cardio fitness level. |
EXCELLENT |
Excellent cardio fitness level. |
DataPoint
A computed or recorded metric.
| Fields | |
|---|---|
name |
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: Example: The The The |
data_source |
Optional. Data source information for the metric |
Union field data. Data type component in the name field will always correspond to the data field set. These messages represent the data payload for each data type and are embedded within the DataPoint resource. They are not standalone resources themselves. Unless otherwise noted, data types will exclude data points that are identified as recorded by wearables in intervals when they were not actually worn. data can be only one of the following: |
|
steps |
Optional. Data for points in the |
floors |
Optional. Data for points in the |
heart_rate |
Optional. Data for points in the |
sleep |
Optional. Data for points in the |
daily_resting_heart_rate |
Optional. Data for points in the |
daily_heart_rate_variability |
Optional. Data for points in the |
exercise |
Optional. Data for points in the |
weight |
Optional. Data for points in the |
altitude |
Optional. Data for points in the |
distance |
Optional. Data for points in the |
body_fat |
Optional. Data for points in the |
active_zone_minutes |
Optional. Data for points in the |
heart_rate_variability |
Optional. Data for points in the |
daily_sleep_temperature_derivations |
Optional. Data for points in the |
sedentary_period |
Optional. Data for points in the |
run_vo2_max |
Optional. Data for points in the |
oxygen_saturation |
Optional. Data for points in the |
daily_oxygen_saturation |
Optional. Data for points in the |
activity_level |
Optional. Data for points in the |
vo2_max |
Optional. Data for points in the |
daily_vo2_max |
Optional. Data for points in the |
nutrition_log |
Optional. Data for points in the |
irregular_rhythm_notification |
Optional. Data for points in the |
electrocardiogram |
Optional. Data for points in the |
daily_heart_rate_zones |
Optional. Data for points in the |
hydration_log |
Optional. Data for points in the |
food |
Optional. The food details. |
time_in_heart_rate_zone |
Optional. Data for points in the |
active_minutes |
Optional. Data for points in the |
respiratory_rate_sleep_summary |
Optional. Data for points in the |
daily_respiratory_rate |
Optional. Data for points in the |
swim_lengths_data |
Optional. Data for points in the |
height |
Optional. Data for points in the |
core_body_temperature |
Optional. Data for points in the |
active_energy_burned |
Optional. Data for points in the |
food_measurement_unit |
Optional. The food measurement unit details. |
blood_glucose |
Optional. Data for points in the |
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).
| Fields | |
|---|---|
recording_method |
Optional. Captures how the data was recorded. |
device |
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. |
application |
Output only. Captures metadata for the application that provided this data. |
platform |
Output only. Captures the platform that uploaded the data. |
Application
Optional metadata for the application that provided this data.
| Fields | |
|---|---|
package_name |
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., |
web_client_id |
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: |
google_web_client_id |
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. |
Device
Captures metadata about the device that recorded the measurement.
| Fields | |
|---|---|
form_factor |
Optional. Captures the form factor of the device. |
manufacturer |
Optional. An optional manufacturer of the device. |
display_name |
Optional. An optional name for the device. |
FormFactor
Form factor of the device, e.g. phone, watch, band, etc.
| Enums | |
|---|---|
FORM_FACTOR_UNSPECIFIED |
The form factor is unspecified. |
FITNESS_BAND |
The device is a fitness band. |
WATCH |
The device is a watch. |
PHONE |
The device is a phone. |
RING |
The device is a ring. |
CHEST_STRAP |
The device is a chest strap. |
SCALE |
The device is a scale. |
TABLET |
The device is a tablet. |
HEAD_MOUNTED |
The device is a head mounted device. |
SMART_DISPLAY |
The device is a smart display. |
Platform
The platform that uploaded the data. Additional values may be added in the future. Clients should be prepared to handle unknown values gracefully.
| Enums | |
|---|---|
PLATFORM_UNSPECIFIED |
The platform is unspecified. |
FITBIT |
The data was uploaded from Fitbit. |
HEALTH_CONNECT |
The data was uploaded from Health Connect. |
HEALTH_KIT |
The data was uploaded from Health Kit. |
FIT |
The data was uploaded from Google Fit. |
FITBIT_WEB_API |
The data was uploaded from Fitbit legacy Web API. |
NEST |
The data was uploaded from Nest devices. |
GOOGLE_WEB_API |
The data was uploaded from Google Health API. |
GOOGLE_PARTNER_INTEGRATION |
The data was uploaded from Google Partner Integrations. |
RecordingMethod
The method by which the data was recorded.
| Enums | |
|---|---|
RECORDING_METHOD_UNSPECIFIED |
The recording method is unspecified. |
MANUAL |
The data was manually entered by the user. |
PASSIVELY_MEASURED |
The data was passively measured by a device. |
DERIVED |
The data was derived from other data, e.g., by an algorithm in the backend. |
ACTIVELY_MEASURED |
The data was actively measured by a device. |
UNKNOWN |
The recording method is unknown. This is set when the data is uploaded from a third party app that does not provide this information. |
DataType
Represents a type of health data a user can have data points recorded for. It matches the parent resource of collection containing data points of the given type.
Clients currently do not need to interact with this resource directly.
| Fields | |
|---|---|
name |
Identifier. The resource name of the data type. Format: See |
DeleteSubscriberMetadata
This type has no fields.
Represents metadata for deleting a subscriber.
DeleteSubscriberRequest
Request message for DeleteSubscriber.
| Fields | |
|---|---|
name |
Required. The name of the subscriber to delete. Format: projects/{project}/subscribers/{subscriber} Example: projects/my-project/subscribers/my-subscriber-123 The {subscriber} ID is user-settable (4-36 characters, matching /a-z/) or system-generated if not provided during creation. |
force |
Optional. If set to true, any child resources (e.g., subscriptions) will also be deleted. If false (default) and child resources exist, the request will fail. |
DeleteSubscriptionRequest
Request message for DeleteSubscription.
| Fields | |
|---|---|
name |
Required. The resource name of the subscription to delete. Format: |
Distance
Distance traveled over an interval of time.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
millimeters |
Required. Distance in millimeters over the observed interval. |
DistanceRollupValue
Result of the rollup of the user's distance.
| Fields | |
|---|---|
millimeters_sum |
Sum of the distance in millimeters. |
Electrocardiogram
Represents an Electrocardiogram (ECG) measurement session. This data type is based on SaMD feature and any changes to it may require additional review.
| Fields | |
|---|---|
interval |
Required. Observed interval. NOTE: Historical ECG data lacks timezone offsets, so NOTE: The |
result_classification |
Optional. The result classification of the ECG reading. |
waveform_samples[] |
Optional. An array of voltage values representing lead I ECG values. Each sample represents voltage difference in ECG graph. The first value in array corresponds to the start of the reading. |
medical_device_info |
Output only. The meta information for the compatible device used to conduct the measurement. ECG measurements typically populate |
beats_per_minute_avg |
Optional. Average heart rate recorded during ECG reading in beats per minute. |
sampling_frequency_hertz |
Optional. The sampling frequency of waveform samples in hertz. |
millivolts_scaling_factor |
Optional. The factor by which to divide waveform samples to get voltage in millivolts: millivolts = waveform_sample / millivolts_scaling_factor. |
lead_number |
Optional. The number of leads used for ECG reading. |
ResultClassification
The classification of the ECG reading rhythm.
| Enums | |
|---|---|
RESULT_CLASSIFICATION_UNSPECIFIED |
Unspecified result classification. |
NORMAL_SINUS_RHYTHM |
Heart rhythm appears normal. Corresponds to result "Normal Sinus Rhythm". |
ATRIAL_FIBRILLATION |
Signs of Atrial Fibrillation detected. Corresponds to result "Atrial Fibrillation". |
INCONCLUSIVE |
The reading is inconclusive as it could not be classified. Corresponds to result "Inconclusive". |
INCONCLUSIVE_HIGH_HEART_RATE |
The reading is inconclusive as it could not be classified because heart rate is high (>120bpm). Corresponds to result "Inconclusive: High heart rate". |
INCONCLUSIVE_LOW_HEART_RATE |
The reading is inconclusive as it could not be classified because heart rate is low (<50bpm). Corresponds to result "Inconclusive: Low heart rate". |
UNREADABLE |
The reading is unreadable. |
NOT_ANALYZED |
The reading was not analyzed. |
EndpointAuthorization
Authorization mechanism for a subscriber endpoint. For all requests sent by the Webhooks service, the JSON payload is cryptographically signed. The signature is delivered in the X-HEALTHAPI-SIGNATURE HTTP header. This is an ECDSA (NIST P256) signature of the JSON payload. Clients must verify this signature using Google Health API's public key to confirm the payload was sent by the Health API.
| Fields | |
|---|---|
secret |
Required. Input only. Provides a client-provided secret that will be sent with each notification to the subscriber endpoint using the "Authorization" header. The value must include the authorization scheme, e.g., "Bearer |
secret_set |
Output only. Whether the secret is set. |
EnergyQuantity
Represents the energy quantity.
| Fields | |
|---|---|
user_provided_unit |
Optional. Value representing the user provided unit. |
kcal |
Required. Value representing the energy in kilocalories. |
EnergyUnit
Enum representing the unit of energy.
| Enums | |
|---|---|
ENERGY_UNIT_UNSPECIFIED |
Unspecified energy unit. |
JOULE |
Value representing joule. |
KILOJOULE |
Value representing kilojoule. |
KILOCALORIE |
Value representing kilocalorie. |
SMALL_CALORIE |
Value representing small calorie. |
CALORIE |
Value representing calorie. |
Exercise
An exercise that stores information about a physical activity.
| Fields | |
|---|---|
interval |
Required. Observed exercise interval |
exercise_type |
Required. The type of activity performed during an exercise. |
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 |
exercise_events[] |
Optional. Exercise events that happen during an exercise, such as pause & restarts. |
split_summaries[] |
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. |
metrics_summary |
Required. Summary metrics for this exercise ( ) |
exercise_metadata |
Optional. Additional exercise metadata. |
display_name |
Required. Exercise display name. |
active_duration |
Optional. Duration excluding pauses. |
notes |
Optional. Standard free-form notes captured at manual logging. |
update_time |
Output only. This is the timestamp of the last update to the exercise. |
create_time |
Output only. Represents the timestamp of the creation of the exercise. |
ExerciseEvent
Represents instantaneous events that happen during an exercise, such as start, stop, pause, split.
| Fields | |
|---|---|
event_time |
Required. Exercise event time |
event_utc_offset |
Required. Exercise event time offset from UTC |
exercise_event_type |
Required. The type of the event, such as start, stop, pause, resume. |
ExerciseEventType
The type of the event, such as start, stop, pause, resume.
| Enums | |
|---|---|
EXERCISE_EVENT_TYPE_UNSPECIFIED |
Exercise event type is unspecified. |
START |
Exercise start event. |
STOP |
Exercise stop event. |
PAUSE |
Exercise pause event. |
RESUME |
Exercise resume event. |
AUTO_PAUSE |
Exercise auto-pause event. |
AUTO_RESUME |
Exercise auto-resume event. |
ExerciseMetadata
Additional exercise metadata.
| Fields | |
|---|---|
has_gps |
Optional. Whether the exercise had GPS tracking. |
pool_length_millimeters |
Optional. Pool length in millimeters. Only present in the swimming exercises. |
ExerciseType
The type of activity performed during an exercise.
| Enums | |
|---|---|
EXERCISE_TYPE_UNSPECIFIED |
Exercise type is unspecified. |
RUNNING |
Running type. |
WALKING |
Walking type. |
BIKING |
Biking type. |
SWIMMING |
Swimming type. |
HIKING |
Hiking type. |
YOGA |
Yoga type. |
PILATES |
Pilates type. |
WORKOUT |
Workout type. |
HIIT |
HIIT type. |
WEIGHTLIFTING |
Weightlifting type. |
STRENGTH_TRAINING |
Strength training type. |
OTHER |
Other type. |
SplitSummary
Represents splits or laps recorded within an exercise. Lap events partition a workout into segments based on criteria like distance, time, or calories.
| Fields | |
|---|---|
start_time |
Required. Lap start time |
start_utc_offset |
Required. Lap start time offset from UTC |
end_time |
Required. Lap end time |
end_utc_offset |
Required. Lap end time offset from UTC |
active_duration |
Output only. Lap time excluding the pauses. |
metrics_summary |
Required. Summary metrics for this split. |
split_type |
Required. Method used to split the exercise laps. Users may manually mark the lap as complete even if the tracking is automatic. |
SplitType
The type of the split, such as manual, duration, distance, calories.
| Enums | |
|---|---|
SPLIT_TYPE_UNSPECIFIED |
Split type is unspecified. |
MANUAL |
Manual split. |
DURATION |
Split by duration. |
DISTANCE |
Split by distance. |
CALORIES |
Split by calories. |
Floors
Gained elevation measured in floors over the time interval
| Fields | |
|---|---|
interval |
Required. Observed interval |
count |
Required. Number of floors in the recorded interval |
FloorsRollupValue
Represents the result of the rollup of the user's floors.
| Fields | |
|---|---|
count_sum |
Sum of the floors count. |
Food
Represents a food item.
| Fields | |
|---|---|
display_name |
Required. The display name of the food. |
brand |
Optional. The brand of the food. |
access_level |
Required. The access level of the food. |
description |
Optional. The description of the food. |
language_code |
Optional. The language code where the food is available in format xx-XX. Supported values are defined in |
meal_type |
Optional. The meal type associated with this food. |
nutrients[] |
Optional. Value representing the nutrients of the food for the default serving. |
energy_from_fat |
Optional. Value representing the energy from fat of the food for the default serving. |
total_carbohydrate |
Optional. Value representing the total carbohydrate of the food for the default serving. |
total_fat |
Optional. Value representing the total fat of the food for the default serving. |
energy_min |
Optional. Value representing the minimum energy of the food for the default serving. |
energy_avg |
Optional. Value representing the average energy of the food for the default serving. |
energy_max |
Optional. Value representing the maximum energy of the food for the default serving. |
default_serving |
Required. Value representing the default serving of the food. |
servings[] |
Optional. The serving of the food. |
FoodServing
Represents different properties and information about the serving of a specific food.
| Fields | |
|---|---|
food_measurement_unit |
Required. Food measurement unit |
food_measurement_unit_display_name |
Output only. Legacy measurement unit for serving size in singular form (e.g. "piece", "gram"). |
food_measurement_unit_display_name_plural |
Output only. Legacy measurement unit for serving size in plural form (e.g. "pieces", "grams"). |
multiplier |
Optional. Value representing the multiplier used to compute the energy when using this serving instead of the default serving. |
amount |
Optional. Amount of food consumed, fractional values are supported. |
FoodAccessLevel
Enum representing the access level of a food item.
| Enums | |
|---|---|
FOOD_ACCESS_LEVEL_UNSPECIFIED |
Unspecified food access level. |
FOOD_ACCESS_LEVEL_PUBLIC |
Public food access level. |
FOOD_ACCESS_LEVEL_PRIVATE |
Private food access level. |
FoodMeasurementUnit
Represents a food measurement unit.
| Fields | |
|---|---|
display_name |
Required. The display name of the food measurement unit (e.g., "gram", "piece"). |
plural_display_name |
Optional. The plural display name of the food measurement unit (e.g., "grams", "pieces"). |
GetDataPointRequest
Request for getting a single data point
| Fields | |
|---|---|
name |
Required. The name of the data point to retrieve. Format: See |
GetIdentityRequest
Request message for getting Identity details.
| Fields | |
|---|---|
name |
Required. The resource name of the Identity. Format: |
GetIrnProfileRequest
Request message for getting IRN Profile details.
| Fields | |
|---|---|
name |
Required. The resource name of the IRN Profile. Format: |
GetPairedDeviceRequest
Request message for getting a Device.
| Fields | |
|---|---|
name |
Required. The name of the device to retrieve. Format: users/{user}/devices/{device} |
GetProfileRequest
Request message for getting Profile details.
| Fields | |
|---|---|
name |
Required. The name of the Profile. Format: |
GetSettingsRequest
Request message for getting Settings details.
| Fields | |
|---|---|
name |
Required. The name of the Settings. Format: |
HeartRate
A heart rate measurement.
| Fields | |
|---|---|
sample_time |
Required. Observation time |
metadata |
Optional. Metadata about the heart rate sample. |
beats_per_minute |
Required. The heart rate value in beats per minute. |
HeartRateMetadata
Heart rate metadata.
| Fields | |
|---|---|
motion_context |
Optional. Indicates the user’s level of activity when the heart rate sample was measured |
sensor_location |
Optional. Indicates the location of the sensor that measured the heart rate. |
MotionContext
The user’s level of activity when the heart rate sample was measured.
| Enums | |
|---|---|
MOTION_CONTEXT_UNSPECIFIED |
The default value when no data is available. |
ACTIVE |
The user is active. |
SEDENTARY |
The user is inactive. |
SensorLocation
The location of the sensor that measured the heart rate.
| Enums | |
|---|---|
SENSOR_LOCATION_UNSPECIFIED |
The default value when no data is available. |
CHEST |
Chest sensor. |
WRIST |
Wrist sensor. |
FINGER |
Finger sensor. |
HAND |
Hand sensor. |
EAR_LOBE |
Ear lobe sensor. |
FOOT |
Foot sensor. |
HeartRateRollupValue
Represents the result of the rollup of the heart rate data type.
| Fields | |
|---|---|
beats_per_minute_avg |
The average heart rate value in the interval. |
beats_per_minute_max |
The maximum heart rate value in the interval. |
beats_per_minute_min |
The minimum heart rate value in the interval. |
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).
| Fields | |
|---|---|
sample_time |
Required. The time of the heart rate variability measurement. |
root_mean_square_of_successive_differences_milliseconds |
Optional. The root mean square of successive differences between normal heartbeats. This is a measure of heart rate variability used by Google Health. |
standard_deviation_milliseconds |
Optional. The standard deviation of the heart rate variability measurement. |
HeartRateVariabilityPersonalRangeRollupValue
Represents the result of the rollup of the user's daily heart rate variability personal range.
| Fields | |
|---|---|
average_heart_rate_variability_milliseconds_min |
The lower bound of the user's average heart rate variability personal range. |
average_heart_rate_variability_milliseconds_max |
The upper bound of the user's average heart rate variability personal range. |
HeartRateZoneType
The heart rate zone type.
| Enums | |
|---|---|
HEART_RATE_ZONE_TYPE_UNSPECIFIED |
Unspecified heart rate zone. |
LIGHT |
The light heart rate zone. |
MODERATE |
The moderate heart rate zone. |
VIGOROUS |
The vigorous heart rate zone. |
PEAK |
The peak heart rate zone. |
Height
Body height measurement.
| Fields | |
|---|---|
sample_time |
Required. The time at which the height was recorded. |
height_millimeters |
Required. Height of the user in millimeters. |
HydrationLog
Holds information about a user logged hydration.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
amount_consumed |
Required. Amount of liquid (ex. water) consumed. |
HydrationLogRollupValue
Represents the result of the rollup of the hydration log data type.
| Fields | |
|---|---|
amount_consumed |
Rollup for amount consumed. |
VolumeQuantityRollup
Rollup for volume quantity.
| Fields | |
|---|---|
user_provided_unit_last |
Optional. The user provided unit on the last element. |
milliliters_sum |
Required. The sum of volume in milliliters. |
Identity
Represents details about the Google user's identity.
| Fields | |
|---|---|
name |
Identifier. The resource name of this Identity resource. Format: |
legacy_user_id |
Output only. The legacy Fitbit User identifier. This is the Fitbit ID used in the legacy Fitbit APIs (v1-v3). It can be referenced by clients migrating from the legacy Fitbit APIs to map their existing identifiers to the new Google user ID. It must not be used for any other purpose. It is not of any use for new clients using only the Google Health APIs. Valid values are strings of 1-63 characters, and valid characters are lowercase and uppercase letters, numbers, and hyphens. |
health_user_id |
Output only. The Google User Identifier in the Google Health APIs. It matches the Valid values are strings of 1-63 characters, and valid characters are lowercase and uppercase letters, numbers, and hyphens. |
IrnProfile
Irregular Rhythm Notifications (IRN) Profile details.
The Irregular Rhythm Notifications (IRN) feature checks for signs of atrial fibrillation (AFib). The IrnProfile details include information about the user's onboarding status, enrollment status, and the last update time of analyzable data for this feature.
| Fields | |
|---|---|
name |
Identifier. The resource name of this IrnProfile resource. Format: |
onboarding_status |
Required. Whether or not the user has onboarded onto the IRN feature. |
enrollment_status |
Required. Whether or not the user is currently enrolled in having their data processed for IRN alerts. |
update_time |
Output only. The timestamp of the last piece of analyzable data synced by the user. |
IrregularRhythmNotification
Represents an Irregular Rhythm Notification alert, indicating a potential sign of atrial fibrillation (AFib). This data type is based on SaMD feature and any changes to it may require additional review.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
alert_windows[] |
Optional. The overlapping analysis windows that were used to evaluate rhythm for potential AFib, containing specific information about the user's heart rhythm. |
medical_device_info |
Output only. The meta information for the compatible device used to conduct the measurement. Irregular Rhythm Notification measurements typically populate |
AlertWindow
An analysis window evaluated for AFib.
Note: The current version of the algorithm will only produce alerts if all windows are positive. So anything returned from the API will always have the positive bit set to true. Internally, windows can be negative, however. We never save "inconclusive" windows (they aren't produced by the algorithm).
| Fields | |
|---|---|
start_time |
Required. Observed interval. The start time of the analysis window. |
start_utc_offset |
Required. The UTC offset of the user's timezone when the analysis window started. |
end_time |
Required. The end time of the analysis window. |
end_utc_offset |
Required. The UTC offset of the user's timezone when the analysis window ended. |
civil_start_time |
Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval |
civil_end_time |
Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval |
positive |
Optional. Flag indicating whether the window was positive for AFib or not. A |
heart_beats[] |
Optional. All heart beats in the interval contained in this analysis window. |
HeartBeat
A single heart beat measurement.
| Fields | |
|---|---|
physical_time |
Required. The time of the heart beat measurement. |
utc_offset |
Required. The UTC offset of the user's timezone when the heart beat measurement occurred. |
civil_time |
Output only. The civil time in the timezone the subject is in at the time of the observation. |
beats_per_minute |
Required. The beats-per-minute value extrapolated from the time before the following heart beat. This is calculated as 60000 / rr, where rr is the gap between heart beats in milliseconds (IBI - Interbeat Interval). |
ListDataPointsRequest
Request for listing raw data points
| Fields | |
|---|---|
parent |
Required. Parent data type of the Data Point collection. Format:
For a list of the supported data types see the |
page_size |
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 |
page_token |
Optional. The |
filter |
Optional. Filter expression following https://google.aip.dev/160. A time range (either physical or civil) can be specified. The supported filter fields are:
Data points in the response will be ordered by the interval start time in descending order. |
ListDataPointsResponse
Response containing raw data points matching the query
| Fields | |
|---|---|
data_points[] |
Data points matching the query |
next_page_token |
Next page token, empty if the response is complete |
ListPairedDevicesRequest
Request message for listing Devices.
| Fields | |
|---|---|
parent |
Required. The parent, which owns this collection of devices. Format: users/{user} |
page_size |
Optional. The maximum number of devices to return. The service may return fewer than this value. If unspecified, at most 5 devices will be returned. The maximum value is 100. values above 100 will be coerced to 100. |
page_token |
Optional. A page token, received from a previous When paginating, all other parameters provided to |
ListPairedDevicesResponse
Response message for ListPairedDevices.
| Fields | |
|---|---|
paired_devices[] |
The paired devices of the user. |
next_page_token |
A token, which can be sent as |
ListSubscribersRequest
Request message for ListSubscribers.
| Fields | |
|---|---|
parent |
Required. The parent, which owns this collection of subscribers. Format: projects/{project} |
page_size |
Optional. The maximum number of subscribers to return. The service may return fewer than this value. If unspecified, at most 50 subscribers will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. |
page_token |
Optional. A page token, received from a previous |
ListSubscribersResponse
Response message for ListSubscribers.
| Fields | |
|---|---|
subscribers[] |
Subscribers from the specified project. |
next_page_token |
A token, which can be sent as |
total_size |
The total number of subscribers matching the request. |
ListSubscriptionsRequest
Request message for ListSubscriptions.
| Fields | |
|---|---|
parent |
Required. The parent subscriber. Format: projects/{project}/subscribers/{subscriber} The {subscriber} ID is user-settable (4-36 characters, matching /a-z/) if provided during creation, or system-generated otherwise. |
filter |
Optional. A filter to apply to the list of subscriptions. The filter syntax is described in https://google.aip.dev/160. The filter can be applied to the following fields: - The Example: user = "users/user1" Example: user = "users/user1" OR user = "users/user2" Example: user = "users/user1" AND (data_type = "sleep" OR data_type = "weight") |
page_size |
Optional. The maximum number of subscriptions to return. The service may return fewer than this value. If unspecified, at most 50 subscriptions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. |
page_token |
Optional. A page token, received from a previous |
ListSubscriptionsResponse
Response message for ListSubscriptions.
| Fields | |
|---|---|
subscriptions[] |
The subscriptions from the specified subscriber. |
next_page_token |
A token, which can be sent as |
MealType
Enum representing the meal type.
| Enums | |
|---|---|
MEAL_TYPE_UNSPECIFIED |
Unspecified meal type. |
BEFORE_BREAKFAST |
Value representing a meal before breakfast. |
BREAKFAST |
Value representing a breakfast. |
BEFORE_LUNCH |
Value representing a morning snack. |
LUNCH |
Value representing a lunch. |
BEFORE_DINNER |
Value representing an afternoon snack. |
DINNER |
Value representing dinner. |
AFTER_DINNER |
Value representing an evening snack. |
SNACK |
Value representing any meal outside of the usual three meals per day. |
ANYTIME |
Value representing any time (legacy NA). |
MedicalDeviceInfo
Software as Medical Device (SaMD) metadata. Used to construct the Unique Device Identifier (UDI).
| Fields | |
|---|---|
algorithm_version |
Output only. The algorithm version used by the feature. |
service_version |
Output only. The service version used by the feature. |
firmware_version |
Output only. The firmware version running on the compatible device used to collect the data. |
feature_version |
Output only. The version of the feature/app running on the device. |
device_model |
Output only. The model name or device type of the compatible device used to collect the data. |
MetricsSummary
Summary metrics for an exercise.
| Fields | |
|---|---|
heart_rate_zone_durations |
Optional. Time spent in each heart rate zone. |
mobility_metrics |
Optional. Mobility workouts specific metrics. Only present in the advanced running exercises. |
calories_kcal |
Optional. Total calories burned by the user during the exercise. |
distance_millimeters |
Optional. Total distance covered by the user during the exercise. |
steps |
Optional. Total steps taken during the exercise. |
average_speed_millimeters_per_second |
Optional. Average speed in millimeters per second. |
average_pace_seconds_per_meter |
Optional. Average pace in seconds per meter. |
average_heart_rate_beats_per_minute |
Optional. Average heart rate during the exercise. |
elevation_gain_millimeters |
Optional. Total elevation gain during the exercise. |
active_zone_minutes |
Optional. Total active zone minutes for the exercise. |
run_vo2_max |
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. |
total_swim_lengths |
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. |
MobilityMetrics
Mobility workouts specific metrics
| Fields | |
|---|---|
avg_ground_contact_time_duration |
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 |
avg_cadence_steps_per_minute |
Optional. Cadence is a measure of the frequency of your foot strikes. Steps / min in real time during workout. |
avg_stride_length_millimeters |
Optional. Stride length is a measure of the distance covered by a single stride |
avg_vertical_oscillation_millimeters |
Optional. Distance off the ground your center of mass moves with each stride while running |
avg_vertical_ratio |
Optional. Vertical oscillation/stride length between [5.0, 11.0]. |
TimeInHeartRateZones
Time spent in each heart rate zone.
| Fields | |
|---|---|
light_time |
Optional. Time spent in light heart rate zone. |
moderate_time |
Optional. Time spent in moderate heart rate zone. |
vigorous_time |
Optional. Time spent in vigorous heart rate zone. |
peak_time |
Optional. Time spent in peak heart rate zone. |
Nutrient
Holds information about a user logged food.
| Enums | |
|---|---|
NUTRIENT_UNSPECIFIED |
Unspecified nutrient. |
BIOTIN |
Value representing biotin nutrient. |
CAFFEINE |
Value representing caffeine nutrient. |
CALCIUM |
Value representing calcium nutrient. |
CHLORIDE |
Value representing chloride nutrient. |
CARBOHYDRATES |
Value representing carbohydrates nutrient. |
CHOLESTEROL |
Value representing cholesterol nutrient. |
CHROMIUM |
Value representing chromium nutrient. |
COPPER |
Value representing copper nutrient. |
DIETARY_FIBER |
Value representing dietary fiber nutrient. |
FOLIC_ACID |
Value representing folic acid nutrient. |
IODINE |
Value representing iodine nutrient. |
IRON |
Value representing iron nutrient. |
MAGNESIUM |
Value representing magnesium nutrient. |
MANGANESE |
Value representing manganese nutrient. |
MOLYBDENUM |
Value representing molybdenum nutrient. |
MONOUNSATURATED_FAT |
Value representing monounsaturated fat nutrient. |
NIACIN |
Value representing niacin nutrient. |
PANTOTHENIC_ACID |
Value representing pantothenic acid nutrient. |
PHOSPHORUS |
Value representing phosphorus nutrient. |
POLYUNSATURATED_FAT |
Value representing polyunsaturated fat nutrient. |
POTASSIUM |
Value representing potassium nutrient. |
PROTEIN |
Value representing protein nutrient. |
RIBOFLAVIN |
Value representing riboflavin nutrient. |
SATURATED_FAT |
Value representing saturated fat nutrient. |
SELENIUM |
Value representing selenium nutrient. |
SODIUM |
Value representing sodium nutrient. |
SUGAR |
Value representing sugar nutrient. |
THIAMIN |
Value representing thiamin nutrient. |
TRANS_FAT |
Value representing trans fat nutrient. |
UNSATURATED_FAT |
Value representing unsaturated fat nutrient. |
VITAMIN_A |
Value representing vitamin A nutrient. |
VITAMIN_B12 |
Value representing vitamin B12 nutrient. |
VITAMIN_B6 |
Value representing vitamin B6 nutrient. |
VITAMIN_C |
Value representing vitamin C nutrient. |
VITAMIN_D |
Value representing vitamin D nutrient. |
VITAMIN_E |
Value representing vitamin E nutrient. |
VITAMIN_K |
Value representing vitamin K nutrient. |
ZINC |
Value representing zinc nutrient. |
FOLATE |
Value representing folate nutrient. |
NutrientQuantity
Represents the quantity of a nutrient.
| Fields | |
|---|---|
quantity |
Required. Value representing the quantity of the nutrient. |
nutrient |
Required. Value representing the nutrient. |
NutritionLog
Holds information about a user logged food.
There are two ways of creating a nutrition log based on the food type: 1. Identified food: Using the food field, which is a reference to a Food resource. In this case fields nutrients, energy, energy_from_fat, total_carbohydrate, total_fat, food_display_name will be populated based on the referenced food. 2. Anonymous food: Using the food_display_name field and setting the nutrients, energy, energy_from_fat, total_carbohydrate, total_fat fields manually.
The identified food is preferred over the anonymous food. Nutrition logs created from anonymous food are not be editable.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
nutrients[] |
Optional. Value representing the nutrients of the nutrition log. |
energy |
Optional. Value representing the energy of the nutrition log. For nutrition logs created from an identified food, this field will be populated based on the referenced food. For anonymous food, this field will be populated manually. |
energy_from_fat |
Optional. Value representing the energy from fat of the nutrition log. For nutrition logs created from an identified food, this field will be populated based on the referenced food. For anonymous food, this field will be populated manually. |
total_carbohydrate |
Optional. Value representing the total carbohydrate of the nutrition log. For nutrition logs created from an identified food, this field will be populated based on the referenced food. For anonymous food, this field will be populated manually. |
total_fat |
Optional. Value representing the total fat of the nutrition log. For nutrition logs created from an identified food, this field will be populated based on the referenced food. For anonymous food, this field will be populated manually. |
meal_type |
Optional. Value representing the meal type of the nutrition log. |
serving |
Optional. Value representing the nutrition log serving. |
food |
Required. Represents the food ID. |
food_display_name |
Value representing the display name of the food. For nutrition logs created from an identified food, this field will be populated based on the referenced food. For anonymous food, this field will be populated manually. |
Serving
Represents different properties and information about the serving of a specific food.
| Fields | |
|---|---|
food_measurement_unit |
Required. Food measurement unit |
food_measurement_unit_display_name |
Output only. Legacy measurement unit for serving size in singular form (e.g. "piece", "gram"). |
amount |
Optional. Amount of food consumed, fractional values are supported. |
NutritionLogRollupValue
Represents the result of the rollup of the nutrition log data type.
| Fields | |
|---|---|
nutrients[] |
List of the nutrient roll-ups by the nutrient type. |
energy |
Energy rollup. |
energy_from_fat |
Value Energy from fat rollup. |
total_carbohydrate |
Total carbohydrate rollup. |
total_fat |
Total fat rollup. |
EnergyQuantityRollup
Rollup for the energy quantity.
| Fields | |
|---|---|
user_provided_unit_last |
Optional. The user provided unit on the last element. |
kcal_sum |
Required. The sum of the energy in kilocalories. |
NutrientQuantityRollup
Nutrient quantity rollup.
| Fields | |
|---|---|
quantity |
Required. Aggregated nutrient weight. |
nutrient |
Required. Aggregated nutrient. |
WeightQuantityRollup
Rollup for the weight.
| Fields | |
|---|---|
user_provided_unit_last |
Optional. The user provided unit on the last element. |
grams_sum |
Required. The sum of the weight in grams. |
ObservationSampleTime
Represents a sample time of an observed data point.
| Fields | |
|---|---|
physical_time |
Required. The time of the observation. |
utc_offset |
Required. The offset of the user's local time during the observation relative to the Coordinated Universal Time (UTC). |
civil_time |
Output only. The civil time in the timezone the subject is in at the time of the observation. |
ObservationTimeInterval
Represents a time interval of an observed data point.
| Fields | |
|---|---|
start_time |
Required. Observed interval start time. |
start_utc_offset |
Required. The offset of the user's local time at the start of the observation relative to the Coordinated Universal Time (UTC). |
end_time |
Required. Observed interval end time. |
end_utc_offset |
Required. The offset of the user's local time at the end of the observation relative to the Coordinated Universal Time (UTC). |
civil_start_time |
Output only. Observed interval start time in civil time in the timezone the subject is in at the start of the observed interval |
civil_end_time |
Output only. Observed interval end time in civil time in the timezone the subject is in at the end of the observed interval |
OxygenSaturation
Captures the user's instantaneous oxygen saturation percentage (SpO2).
| Fields | |
|---|---|
sample_time |
Required. The time at which oxygen saturation was measured. |
percentage |
Required. The oxygen saturation percentage. Valid values are from 0 to 100. |
PairedDevice
User's Paired 1P Device
The PairedDevice details include information about the device type, battery status, battery level, last sync time, device version, mac address, and features.
| Fields | |
|---|---|
name |
Identifier. The resource name of this Device resource. Format: |
device_type |
Output only. The device type. Supported: TRACKER | SCALE |
battery_status |
Output only. The battery status of the device. Supported: High | Medium | Low | Empty |
battery_level |
Output only. The battery level of the device. |
last_sync_time |
Output only. The time of last sync with the Fitbit mobile application. |
device_version |
Output only. The product name of the device |
mac_address |
Output only. Mac ID number of the device. |
features[] |
Output only. Lists of unique features supported by the device. Comprehensive list of supported features: Fitness Tracking
Heart Rate & Health
Advanced Sensors
Sleep & Wellness
Advanced Workouts
GPS & Location
Payments & NFC
Activity Detection
Smart Features & UI
Gym HR Broadcasting
Privacy & Security
BLE Protocol
Cellular & Wi-Fi
Data Sync & Transfer
Google Integrations
|
DeviceType
The type of device.
| Enums | |
|---|---|
DEVICE_TYPE_UNSPECIFIED |
Device type is not specified. |
TRACKER |
Device type is tracker. |
SCALE |
Device type is scale. |
Profile
Profile details.
| Fields | |
|---|---|
name |
Identifier. The resource name of this Profile resource. Format: |
age |
Optional. The age in years based on the user's birth date. Updates to this field are currently not supported. |
membership_start_date |
Output only. The date the user created their account. Updates to this field are currently not supported. |
user_configured_walking_stride_length_mm |
Optional. The user's user configured walking stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - |
user_configured_running_stride_length_mm |
Optional. The user's user configured running stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - |
auto_walking_stride_length_mm |
Output only. The automatically calculated walking stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - |
auto_running_stride_length_mm |
Output only. The automatically calculated running stride length, in millimeters. The user must consent to one of the following access scopes to access this field: - |
ReconcileDataPointsRequest
Request to reconcile data points from multiple data sources.
| Fields | |
|---|---|
parent |
Required. Parent data type of the Data Point collection. Format:
For a list of the supported data types see the |
page_size |
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 |
page_token |
Optional. The |
filter |
Optional. Filter expression based on https://aip.dev/160. A time range, either physical or civil, can be specified. See the |
data_source_family |
Optional. The data source family name to reconcile. If empty, data points from all data sources will be reconciled. Format: The supported values are:
|
ReconcileDataPointsResponse
Response containing the list of reconciled DataPoints.
| Fields | |
|---|---|
data_points[] |
Data points matching the query |
next_page_token |
Next page token, empty if the response is complete |
ReconciledDataPoint
A reconciled computed or recorded metric.
| Fields | |
|---|---|
data_point_name |
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: Example: The The The |
Union field data. Data type component in the name field will always correspond to the data field set. These messages represent the data payload for each data type and are embedded within the DataPoint resource. They are not standalone resources themselves. Unless otherwise noted, data types reconciliation algorithm will exclude data points that are identified as recorded by wearables in intervals when they were not actually worn. data can be only one of the following: |
|
steps |
Data for points in the |
floors |
Data for points in the |
heart_rate |
Data for points in the |
sleep |
Data for points in the |
daily_resting_heart_rate |
Data for points in the |
daily_heart_rate_variability |
Data for points in the |
exercise |
Data for points in the |
weight |
Data for points in the |
altitude |
Data for points in the |
distance |
Data for points in the |
body_fat |
Data for points in the |
active_zone_minutes |
Data for points in the |
heart_rate_variability |
Data for points in the |
daily_sleep_temperature_derivations |
Data for points in the |
sedentary_period |
Data for points in the |
run_vo2_max |
Data for points in the |
oxygen_saturation |
Data for points in the |
daily_oxygen_saturation |
Data for points in the |
activity_level |
Data for points in the |
vo2_max |
Data for points in the |
daily_vo2_max |
Data for points in the |
nutrition_log |
Data for points in the |
daily_heart_rate_zones |
Data for points in the |
hydration_log |
Data for points in the |
time_in_heart_rate_zone |
Data for points in the |
active_minutes |
Data for points in the |
respiratory_rate_sleep_summary |
Data for points in the |
daily_respiratory_rate |
Data for points in the |
swim_lengths_data |
Data for points in the |
height |
Data for points in the |
core_body_temperature |
Data for points in the |
active_energy_burned |
Data for points in the |
RespiratoryRateSleepSummary
Records respiratory rate details during sleep. Can have multiple per day if the user sleeps multiple times.
| Fields | |
|---|---|
sample_time |
Required. The time at which respiratory rate was measured. |
deep_sleep_stats |
Optional. Respiratory rate statistics for deep sleep. |
light_sleep_stats |
Optional. Respiratory rate statistics for light sleep. |
rem_sleep_stats |
Optional. Respiratory rate statistics for REM sleep. |
full_sleep_stats |
Required. Full respiratory rate statistics. |
RespiratoryRateSleepSummaryStatistics
Respiratory rate statistics for a given sleep stage.
| Fields | |
|---|---|
breaths_per_minute |
Required. Average breaths per minute. |
standard_deviation |
Optional. Standard deviation of the respiratory rate during sleep. |
signal_to_noise |
Optional. How trustworthy the data is for the computation. |
RestingHeartRatePersonalRangeRollupValue
Represents the rollup value for the daily resting heart rate data type.
| Fields | |
|---|---|
beats_per_minute_min |
The lower bound of the user's daily resting heart rate personal range. |
beats_per_minute_max |
The upper bound of the user's daily resting heart rate personal range. |
RollUpDataPointsRequest
Request to roll up data points by physical time intervals.
| Fields | |
|---|---|
parent |
Required. Parent data type of the Data Point collection. Format:
For a list of the supported data types see the |
range |
Required. Closed-open range of data points that will be rolled up. The maximum range for |
window_size |
Required. The size of the time window to group data points into before applying the aggregation functions. |
page_size |
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. |
page_token |
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. |
data_source_family |
Optional. The data source family name to roll up. If empty, data points from all available data sources will be rolled up. Format: The supported values are:
|
RollUpDataPointsResponse
Response containing the list of rolled up data points.
| Fields | |
|---|---|
rollup_data_points[] |
Values for each aggregation time window. |
next_page_token |
A token, which can be sent as |
RollupDataPoint
Value of a rollup for a single physical time interval (aggregation window) of reconciled data points from all data sources, excluding those data points that are identified as recorded by wearables in intervals when they were not actually worn.
| Fields | |
|---|---|
start_time |
Start time of the window this value aggregates over |
end_time |
End time of the window this value aggregates over |
Union field
The field names usually follow the format If there were no manual, on-wrist data points in this interval, the value will not be set. When the value is set, but the data shows zero, e.g. These messages represent the aggregated data payload for each data type and are embedded within the |
|
steps |
Returned by default when rolling up data points from the |
floors |
Returned by default when rolling up data points from the |
heart_rate |
Returned by default when rolling up data points from the |
weight |
Returned by default when rolling up data points from the |
altitude |
Returned by default when rolling up data points from the |
distance |
Returned by default when rolling up data points from the |
body_fat |
Returned by default when rolling up data points from the |
total_calories |
Returned by default when rolling up data points from the |
active_zone_minutes |
Returned by default when rolling up data points from the |
sedentary_period |
Returned by default when rolling up data points from the |
run_vo2_max |
Returned by default when rolling up data points from the |
calories_in_heart_rate_zone |
Returned by default when rolling up data points from the |
activity_level |
Returned by default when rolling up data points from the |
nutrition_log |
Returned by default when rolling up data points from the |
hydration_log |
Returned by default when rolling up data points from the |
time_in_heart_rate_zone |
Returned by default when rolling up data points from the |
active_minutes |
Returned by default when rolling up data points from the |
swim_lengths_data |
Returned by default when rolling up data points from the |
core_body_temperature |
Returned by default when rolling up data points from the |
active_energy_burned |
Returned by default when rolling up data points from the |
blood_glucose |
Returned by default when rolling up data points from the |
RunVO2Max
VO2 max value calculated based on the user's running activity. Value stored in ml/kg/min.
| Fields | |
|---|---|
sample_time |
Required. The time at which the metric was measured. |
run_vo2_max |
Required. Run VO2 max value in ml/kg/min. |
RunVO2MaxRollupValue
Represents the result of the rollup of the user's daily heart rate variability personal range.
| Fields | |
|---|---|
rate_min |
Minimum value of run VO2 max in the interval.. |
rate_max |
Maximum value of run VO2 max in the interval. |
rate_avg |
Average value of run VO2 max in the interval. |
SedentaryPeriod
SedentaryPeriod
SedentaryPeriod data represents the periods of time that the user was sedentary (i.e. not moving while wearing the device).
| Fields | |
|---|---|
interval |
Required. Observed interval. |
SedentaryPeriodRollupValue
Represents the result of the rollup of the user's sedentary periods.
| Fields | |
|---|---|
duration_sum |
The total time user spent sedentary during the interval. |
SessionTimeInterval
Represents a time interval of session data point, which bundles multiple observed metrics together.
| Fields | |
|---|---|
start_time |
Required. The start time of the observed session. |
start_utc_offset |
Required. The offset of the user's local time at the start of the session relative to the Coordinated Universal Time (UTC). |
end_time |
Required. The end time of the observed session. |
end_utc_offset |
Required. The offset of the user's local time at the end of the session relative to the Coordinated Universal Time (UTC). |
civil_start_time |
Output only. Session start time in civil time in the timezone the subject is in at the start of the session. |
civil_end_time |
Output only. Session end time in civil time in the timezone the subject is in at the end of the session. |
Settings
Settings details.
| Fields | |
|---|---|
name |
Identifier. The resource name of this Settings resource. Format: |
auto_stride_enabled |
Optional. True if the user's stride length is determined automatically. Updates to this field are currently not supported. |
distance_unit |
Optional. The measurement unit defined in the user's account settings. Updates to this field are currently not supported. |
glucose_unit |
Optional. The measurement unit defined in the user's account settings. |
height_unit |
Optional. The measurement unit defined in the user's account settings. |
language_locale |
Optional. The locale defined in the user's account settings. Updates to this field are currently not supported. |
utc_offset |
Optional. The user's timezone offset relative to UTC. Updates to this field are currently not supported. |
stride_length_walking_type |
Optional. The stride length type defined in the user's account settings for walking. Updates to this field are currently not supported. |
stride_length_running_type |
Optional. The stride length type defined in the user's account settings for running. Updates to this field are currently not supported. |
swim_unit |
Optional. The measurement unit defined in the user's account settings. |
temperature_unit |
Optional. The measurement unit defined in the user's account settings. |
time_zone |
Optional. The timezone defined in the user's account settings. This follows the IANA Time Zone Database. Updates to this field are currently not supported. |
weight_unit |
Optional. The measurement unit defined in the user's account settings. |
water_unit |
Optional. The measurement unit defined in the user's account settings. |
food_language_code |
Output only. The food language code derived from the user's food database. Possible values: Updates to this field are currently not supported. |
DistanceUnit
The measurement unit defined in the user's account settings.
| Enums | |
|---|---|
DISTANCE_UNIT_UNSPECIFIED |
Distance unit is not specified. |
DISTANCE_UNIT_MILES |
Distance unit is miles. |
DISTANCE_UNIT_KILOMETERS |
Distance unit is kilometers. |
GlucoseUnit
The measurement unit defined in the user's account settings.
| Enums | |
|---|---|
GLUCOSE_UNIT_UNSPECIFIED |
Glucose unit is not specified. |
GLUCOSE_UNIT_MG_DL |
Glucose unit is mg/dL. |
GLUCOSE_UNIT_MMOL_L |
Glucose unit is mmol/l. |
HeightUnit
The measurement unit defined in the user's account settings.
| Enums | |
|---|---|
HEIGHT_UNIT_UNSPECIFIED |
Height unit is not specified. |
HEIGHT_UNIT_INCHES |
Height unit is inches. |
HEIGHT_UNIT_CENTIMETERS |
Height unit is cm. |
StrideLengthType
The stride length type defined in the user's account settings. Specifies if the user's stride length is determined automatically (default) or manually as defined in the user's account settings.
| Enums | |
|---|---|
STRIDE_LENGTH_TYPE_UNSPECIFIED |
Stride length type is not specified. |
STRIDE_LENGTH_TYPE_DEFAULT |
Stride length type is computed based on the user's gender and height. |
STRIDE_LENGTH_TYPE_MANUAL |
Stride length type is manually set by the user. |
STRIDE_LENGTH_TYPE_AUTO |
Stride length type is determined automatically. |
SwimUnit
The swim unit defined in the user's account settings.
| Enums | |
|---|---|
SWIM_UNIT_UNSPECIFIED |
Swim unit is not specified. |
SWIM_UNIT_METERS |
Swim unit is meters. |
SWIM_UNIT_YARDS |
Swim unit is yards. |
TemperatureUnit
The measurement unit defined in the user's account settings.
| Enums | |
|---|---|
TEMPERATURE_UNIT_UNSPECIFIED |
Temperature unit is not specified. |
TEMPERATURE_UNIT_CELSIUS |
Temperature unit is Celsius. |
TEMPERATURE_UNIT_FAHRENHEIT |
Temperature unit is Fahrenheit. |
WaterUnit
The water measurement unit defined in the user's account settings.
| Enums | |
|---|---|
WATER_UNIT_UNSPECIFIED |
Water unit is not specified. |
WATER_UNIT_ML |
Water unit is milliliters. |
WATER_UNIT_FL_OZ |
Water unit is fluid ounces. |
WATER_UNIT_CUP |
Water unit is cups. |
WeightUnit
The measurement unit defined in the user's account settings.
| Enums | |
|---|---|
WEIGHT_UNIT_UNSPECIFIED |
Weight unit is not specified. |
WEIGHT_UNIT_POUNDS |
Weight unit is pounds. |
WEIGHT_UNIT_STONE |
Weight unit is stones. |
WEIGHT_UNIT_KILOGRAMS |
Weight unit is kilograms. |
Sleep
A sleep session possibly including stages.
| Fields | |
|---|---|
interval |
Required. Observed sleep interval. |
type |
Optional. SleepType: classic or stages. |
stages[] |
Optional. List of non-overlapping contiguous sleep stage segments that cover the sleep period. |
out_of_bed_segments[] |
Optional. “Out of bed” segments that can overlap with sleep stages. |
metadata |
Optional. Sleep metadata: processing, main, manually edited, stages status. |
summary |
Output only. Sleep summary: metrics and stages summary. |
create_time |
Output only. Creation time of this sleep observation. |
update_time |
Output only. Last update time of this sleep observation. |
OutOfBedSegment
A time interval to represent an out-of-bed segment.
| Fields | |
|---|---|
start_time |
Required. Segment tart time. |
start_utc_offset |
Required. The offset of the user's local time at the start of the segment relative to the Coordinated Universal Time (UTC). |
end_time |
Required. Segment end time. |
end_utc_offset |
Required. The offset of the user's local time at the end of the segment relative to the Coordinated Universal Time (UTC). |
SleepMetadata
Additional information about how the sleep was processed.
| Fields | |
|---|---|
stages_status |
Output only. Sleep stages algorithm processing status. |
processed |
Output only. Sleep and sleep stages algorithms finished processing. |
nap |
Output only. Naps are sleeps without stages and relatively short durations. |
manually_edited |
Output only. Some sleeps autodetected by algorithms can be manually edited by users. |
external_id |
Optional. Sleep identifier relevant in the context of the data source. |
StagesState
Sleep stages algorithm processing status.
| Enums | |
|---|---|
STAGES_STATE_UNSPECIFIED |
Output only. Sleep stages status is unspecified. |
REJECTED_COVERAGE |
Output only. Sleep stages cannot be computed due to low RR coverage. |
REJECTED_MAX_GAP |
Output only. Sleep stages cannot be computed due to the large middle gap (2h). |
REJECTED_START_GAP |
Output only. Sleep stages cannot be computed due to the large start gap (1h). |
REJECTED_END_GAP |
Output only. Sleep stages cannot be computed due to the large end gap (1h). |
REJECTED_NAP |
Output only. Sleep stages cannot be computed because the sleep log is a nap (has < 3h duration). |
REJECTED_SERVER |
Output only. Sleep stages cannot be computed because input data is not available (PPGV2, wake magnitude, etc). |
TIMEOUT |
Output only. Sleep stages cannot be computed due to server timeout. |
SUCCEEDED |
Output only. Sleep stages successfully computed. |
PROCESSING_INTERNAL_ERROR |
Output only. Sleep stages cannot be computed due to server internal error. |
SleepStage
Sleep stage segment.
| Fields | |
|---|---|
start_time |
Required. Sleep stage start time. |
start_utc_offset |
Required. The offset of the user's local time at the start of the sleep stage relative to the Coordinated Universal Time (UTC). |
end_time |
Required. Sleep stage end time. |
end_utc_offset |
Required. The offset of the user's local time at the end of the sleep stage relative to the Coordinated Universal Time (UTC). |
type |
Required. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc. |
create_time |
Output only. Creation time of this sleep stages segment. |
update_time |
Output only. Last update time of this sleep stages segment. |
SleepStageType
Sleep stage type: AWAKE, DEEP, REM, LIGHT etc.
| Enums | |
|---|---|
SLEEP_STAGE_TYPE_UNSPECIFIED |
The default unset value. |
AWAKE |
Sleep stage AWAKE. |
LIGHT |
Sleep stage LIGHT. |
DEEP |
Sleep stage DEEP. |
REM |
Sleep stage REM. |
ASLEEP |
Sleep stage ASLEEP. |
RESTLESS |
Sleep stage RESTLESS. |
SleepSummary
Sleep summary: metrics and stages summary.
| Fields | |
|---|---|
stages_summary[] |
Output only. List of summaries (total duration and segment count) per each sleep stage type. |
minutes_in_sleep_period |
Output only. Delta between wake time and bedtime. It is the sum of all stages. |
minutes_after_wake_up |
Output only. Minutes after wake up calculated by restlessness algorithm. |
minutes_to_fall_asleep |
Output only. Minutes to fall asleep calculated by restlessness algorithm. |
minutes_asleep |
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). |
minutes_awake |
Output only. Total number of minutes awake. It is a sum of all AWAKE stages. |
StageSummary
Total duration and segment count for a stage.
| Fields | |
|---|---|
type |
Output only. Sleep stage type: AWAKE, DEEP, REM, LIGHT etc. |
minutes |
Output only. Total duration in minutes of a sleep stage. |
count |
Output only. Number of sleep stages segments. |
SleepType
Sleep type: classic or stages.
| Enums | |
|---|---|
SLEEP_TYPE_UNSPECIFIED |
Sleep type is unspecified. |
CLASSIC |
Classic sleep is a sleep with 3 stages types: AWAKE, RESTLESS and ASLEEP. |
STAGES |
On top of "classic" sleep stages an additional processing pass can calculate stages more precisely, overwriting the prior stages with AWAKE, LIGHT, REM and DEEP. |
Steps
Step count over the time interval.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
count |
Required. Number of steps in the recorded interval. |
StepsRollupValue
Represents the result of the rollup of the steps data type.
| Fields | |
|---|---|
count_sum |
Total number of steps in the interval. |
Subscriber
-- Resource Messages -- A subscriber receives notifications from Google Health API.
| Fields | |
|---|---|
name |
Identifier. The resource name of the Subscriber. Format: projects/{project}/subscribers/{subscriber} The {project} ID is a Google Cloud Project ID or Project Number. The {subscriber} ID is user-settable (4-36 characters, matching /a-z/) if provided during creation, or system-generated otherwise (e.g., a UUID). Example (User-settable subscriber ID): projects/my-project/subscribers/my-sub-123 Example (System-generated subscriber ID): projects/my-project/subscribers/a1b2c3d4-e5f6-7890-1234-567890abcdef |
endpoint_uri |
Required. The full HTTPS URI where update notifications will be sent. The URI must be a valid URL and use HTTPS as the scheme. This endpoint will be verified during CreateSubscriber and UpdateSubscriber calls. See RPC documentation for verification details. |
create_time |
Output only. The time at which the subscriber was created. |
update_time |
Output only. The time at which the subscriber was last updated. |
subscriber_configs[] |
Optional. Configuration for the subscriber. |
endpoint_authorization |
Required. Authorization mechanism for a subscriber endpoint. This is required to ensure the endpoint can be verified. |
state |
Output only. The state of the subscriber. |
State
The state of the subscriber.
| Enums | |
|---|---|
STATE_UNSPECIFIED |
Represents an unspecified subscriber state. |
UNVERIFIED |
Represents an unverified subscriber. This is the initial state of the subscriber when it is created. The backend will verify the subscriber's endpoint_uri. |
ACTIVE |
Represents an active subscriber. The endpoint has been verified. |
INACTIVE |
Represents an inactive subscriber. |
SubscriberConfig
Configuration for a subscriber. A notification is sent to a subscription ONLY if the subscriber has a config for the data type.
| Fields | |
|---|---|
data_types[] |
Required. See Google Health API data types for the list of supported data types. Values should be in kebab-case. |
subscription_create_policy |
Required. Policy for subscription creation. |
SubscriptionCreatePolicy
Policy for subscription creation.
| Enums | |
|---|---|
SUBSCRIPTION_CREATE_POLICY_UNSPECIFIED |
Represents an unspecified policy. |
AUTOMATIC |
When using This means you do not need to call |
MANUAL |
Requires subscriptions to be created manually for new users. The developer needs to call CreateSubscription for new users. |
Subscription
A subscription to a data collection for a specific user, to be delivered to a subscriber.
| Fields | |
|---|---|
name |
Identifier. The resource name of the Subscription. Format: |
data_types[] |
Optional. Data types subscribed to. A subscriber will only receive notifications for data types that are declared here. A subscription can only subscribe to the data types of the subscriber. Supported data types are: "altitude", "distance", "floors", "sleep", "steps", "weight". |
user |
Immutable. The resource name of the user for whom this subscription is active. Format: |
SwimLengthsData
Swim lengths data over the time interval.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
swim_stroke_type |
Required. Swim stroke type. |
stroke_count |
Required. Number of strokes in the lap. |
SwimStrokeType
Swim stroke type.
| Enums | |
|---|---|
SWIM_STROKE_TYPE_UNSPECIFIED |
Swim stroke type is unspecified. |
FREESTYLE |
Freestyle swim stroke type. |
BACKSTROKE |
Backstroke swim stroke type. |
BREASTSTROKE |
Breaststroke swim stroke type. |
BUTTERFLY |
Butterfly swim stroke type. |
SwimLengthsDataRollupValue
Represents the result of the rollup of the swim lengths data type.
| Fields | |
|---|---|
stroke_count_sum |
Total number of swim strokes in the interval. |
TimeInHeartRateZone
Time in heart rate zone record. It's an interval spent in specific heart rate zone.
| Fields | |
|---|---|
interval |
Required. Observed interval. |
heart_rate_zone_type |
Required. Heart rate zone type. |
TimeInHeartRateZoneRollupValue
Represents the result of the rollup of the time in heart rate zone data type.
| Fields | |
|---|---|
time_in_heart_rate_zones[] |
List of time spent in each heart rate zone. |
TimeInHeartRateZoneValue
Represents the total time spent in a specific heart rate zone.
| Fields | |
|---|---|
heart_rate_zone |
The heart rate zone. |
duration |
The total time spent in the specified heart rate zone. |
TotalCaloriesRollupValue
Represents the result of the rollup of the user's total calories.
| Fields | |
|---|---|
kcal_sum |
Sum of the total calories in kilocalories. |
UpdateDataPointOperationMetadata
This type has no fields.
Metadata for an update data point operation.
UpdateDataPointRequest
Request to update an identifiable data point.
| Fields | |
|---|---|
data_point |
Required. The data point to update The data point's Format: |
UpdateProfileRequest
Request message for updating Profile details.
| Fields | |
|---|---|
profile |
Required. Profile details. |
update_mask |
Optional. The list of fields to be updated. |
UpdateSettingsRequest
Request message for updating Settings details.
| Fields | |
|---|---|
settings |
Required. Settings details |
update_mask |
Optional. The list of fields to be updated. |
UpdateSubscriberMetadata
This type has no fields.
Represents metadata for updating a subscriber.
UpdateSubscriberRequest
Request message for UpdateSubscriber.
| Fields | |
|---|---|
subscriber |
Required. The subscriber resource to update. Its 'name' field is mapped to the URI, and the value of the 'name' field should be of the form: "projects/{project}/subscribers/{subscriber_id}". The remaining fields of the Subscriber object represent the new values for the corresponding fields in the existing subscriber resource. |
update_mask |
Optional. A field mask that specifies which fields of the Subscriber message are to be updated. This allows for partial updates. Supported fields: - endpoint_uri - subscriber_configs - endpoint_authorization |
UpdateSubscriptionRequest
Request message for UpdateSubscription.
| Fields | |
|---|---|
subscription |
Required. The subscription to update. The subscription's |
update_mask |
Optional. The list of fields to update. |
VO2Max
VO2 max measurement.
| Fields | |
|---|---|
sample_time |
Required. The time at which VO2 max was measured. |
measurement_method |
Optional. The method used to measure the VO2 max value. |
vo2_max |
Required. VO2 max value measured as in ml consumed oxygen / kg of body weight / min. |
MeasurementMethod
Measurement method used to measure the VO2 max value.
| Enums | |
|---|---|
MEASUREMENT_METHOD_UNSPECIFIED |
Unspecified measurement method. |
FITBIT_RUN |
Fitbit specific, measures VO2 max rate during a run. |
GOOGLE_DEMOGRAPHIC |
Google specific, measures VO2 max rate for a user based on their demographic data. |
COOPER_TEST |
Run as far as possible for 12 minutes. Distance correlated with age and gender translates to a VO2 max value. |
HEART_RATE_RATIO |
Maximum heart rate divided by the resting heart rate, with a multiplier applied. Does not require any exercise. |
METABOLIC_CART |
Measured by a medical device called metabolic cart. |
MULTISTAGE_FITNESS_TEST |
Continuous 20m back-and-forth runs with increasing difficulty, until exhaustion. |
ROCKPORT_FITNESS_TEST |
Measured using walking exercise. |
MAX_EXERCISE |
Healthkit specific, measures VO2 max rate by monitoring exercise to the user’s physical limit. Similar to COOPER_TEST or MULTISTAGE_FITNESS_TEST. |
PREDICTION_SUB_MAX_EXERCISE |
Healthkit specific, estimates VO2 max rate based on low-intensity exercise. Similar to ROCKPORT_FITNESS_TEST. |
PREDICTION_NON_EXERCISE |
Healthkit specific, estimates VO2 max rate without any exercise. Similar to HEART_RATE_RATIO. |
OTHER |
Use when the method is not covered in this enum. |
VolumeQuantity
Represents the volume quantity.
| Fields | |
|---|---|
user_provided_unit |
Optional. Value representing the user provided unit, used only for user-facing input and display purposes. In the API format, all volume quantities are converted to milliliters. |
milliliters |
Required. Value representing the volume in milliliters. |
VolumeUnit
Enum representing the unit of volume.
| Enums | |
|---|---|
VOLUME_UNIT_UNSPECIFIED |
Unspecified volume unit. |
CUP_IMPERIAL |
Cup (imperial) |
CUP_US |
Cup (US) |
FLUID_OUNCE_IMPERIAL |
Fluid ounce (imperial) |
FLUID_OUNCE_US |
Fluid ounce (US) |
LITER |
Liter |
MILLILITER |
Milliliter |
PINT_IMPERIAL |
Pint (imperial) |
PINT_US |
Pint (US) |
WebhookNotificationCloudLog
Log message for a webhook notification sent by the Google Health API to a subscriber's endpoint. Includes the HTTP response received from the endpoint.
| Fields | |
|---|---|
http_response |
Required. Represents the HTTP response. This message includes the status code, reason phrase, headers, and body. |
Weight
Body weight measurement.
| Fields | |
|---|---|
sample_time |
Required. The time at which the weight was measured |
notes |
Optional. Standard free-form notes captured at manual logging. |
weight_grams |
Required. Weight of a user in grams. |
WeightQuantity
Represents the weight quantity.
| Fields | |
|---|---|
user_provided_unit |
Optional. Value representing the user provided unit. |
grams |
Required. Value representing the weight in grams. |
WeightRollupValue
Represents the result of the rollup of the weight data type.
| Fields | |
|---|---|
weight_grams_avg |
Average weight in grams. |
WeightUnit
Enum representing the unit of weight.
| Enums | |
|---|---|
WEIGHT_UNIT_UNSPECIFIED |
Unspecified weight unit. |
GRAM |
Value representing gram. |
KILOGRAM |
Value representing kilogram. |
OUNCE |
Value representing ounce. |
POUND |
Value representing pound. |
STONE |
Value representing stone. |
MILLIGRAM |
Value representing milligram. |
MICROGRAM |
Value representing microgram. |
NANOGRAM |
Value representing nanogram. |