These data types can be used to capture activities, workouts and metrics around exercise.
Activity
This data type can be used to capture any activity a user does. This can be common fitness activities like running or different sports, as well as activities like meditation, gardening, and sleep.
If the user was doing more than one activity during that time period, create a session for the main activity type, and multiple segments for the different activity types. For example, if they did a little bit of kick boxing and boxing during a mixed martial arts class, create a session for mixed martial arts. You can then breakdown the different activity types into segments.
Each data point needs a start time and end time. Data points don't need to be back-to-back or directly after each other, there can be gaps in between.
REST
Name | com.google.activity.segment |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | activity type (int —enum)
The type of activity the user was doing. See the list of activity types here. |
Android
Name | com.google.activity.segment |
Data type object | TYPE_ACTIVITY_SEGMENT |
Android permission | ACTIVITY_RECOGNITION |
Fields (format—unit) | FIELD_ACTIVITY (int —enum)
The type of activity the user was doing. See the list of activity types here. |
Basal metabolic rate (BMR)
This data type captures the BMR of a user, in kilocalories. Each data point represents The number of kilocalories a user would burn if at rest all day, based on their height and weight. Only the end time should be set. This will be used as the timestamp for the reading.
REST
Name | com.google.calories.bmr |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | calories (float —kcal per day)
The number of kilocalories a user would burn if at rest all day, based on their height and weight. |
Android
Name | com.google.calories.bmr |
Data type object | TYPE_BASAL_METABOLIC_RATE |
Fields (format—units) | FIELD_CALORIES (float —kcal per day)
The number of kilocalories a user would burn if at rest all day, based on their age, weight and height. |
Calories burned
This data type captures the total calories (in kilocalories) burned by the user, including calories burned at rest (BMR). Each data point represents the total kilocalories burned over a time interval, so both the start and end times should be set.
REST
Name | com.google.calories.expended |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | calories (float —kcal)
Number of kilocalories burned. |
Android
Name | com.google.calories.expended |
Data type object | TYPE_CALORIES_EXPENDED |
Android permission | ACTIVITY_RECOGNITION |
Fields (format—units) | FIELD_CALORIES (float —kcal)
Number of kilocalories burned. |
Cycling pedaling cadence
If a user goes cycling, this data type can be used to capture their pedaling rate, in crank revolutions per minute (RPM). Each data point represents an instantaneous measure of the pedaling rate, so only the end time should be set. This will be used as the timestamp for the reading.
REST
Name | com.google.cycling.pedaling.cadence |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | rpm (float —rpm)
Number of bicycle crank revolutions per minute. |
Android
Name | com.google.cycling.pedaling.cadence |
Data type object | TYPE_CYCLING_PEDALING_CADENCE |
Fields (format—units) | FIELD_RPM (float —rpm)
Number of bicycle crank revolutions per minute. |
Cycling pedaling cumulative
If a user goes cycling, this data type can be used to capture the number of crank revolutions over a time period. Each data point represents the number of revolutions since the count at the start time.
REST
Name | com.google.cycling.pedaling.cumulative |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | revolutions (int —count)
Number of bicycle crank revolutions over a time period. |
Android
Name | com.google.cycling.pedaling.cumulative |
Data type object | TYPE_CYCLING_PEDALING_CUMULATIVE |
Fields (format—units) | FIELD_REVOLUTIONS (int —count)
Number of bicycle crank revolutions over a time period. |
Heart Points
This data type captures the number of Heart Points a user has earned, from all their activity. Each data point represents the number of Heart Points calculated for a time interval.
User's can set a daily Heart Point goal and track their progress. Heart Points can be calculated using:
- heart rate
- Metabolic Equivalent of Task (MET) values
- walking speed
The number of Heart Points earned depends on the intensity of the activity. Use this guide to calculate and write Heart Points:
Data | 1 HP (Low-medium intensity activity) | 2 HPs (High intensity activity) |
---|---|---|
Heart rate | 1 minute of actvity at >50% maximum heart rate | 1 minute of activity at >70% max heart rate |
MET value | 3-6 MET. For example, rowing or rock climbing, | >6 MET. For example, HIIT, skiing, volleyball or football. |
Walking speed | 100-130 steps per minute | >130 steps per minute |
REST
Name | com.google.heart_minutes |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | intensity (float —Heart Points)
Heart Points earned based on the intensity of the exercise or activity the user does. |
Android
Name | com.google.heart_minutes |
Data type object | TYPE_HEART_MINUTES |
Fields (format—units) | FIELD_INTENSITY (float —heart points)
The intensity of the exercise or activity the user does. One minute of
light to moderate physical activity (like walking faster than 2.5 mph,
or cycling faster than 10 mph) earns 1 heart point. One minute of more
intense activity earns 2 heart points. |
Move Minutes
This data type captures the number of Move Minutes Google Fit calculates that a user has earned, from all their activity. Each data point represents the derived number of Move Minutes for a time interval. Both start and end time must be set.
Users can earn Move Minutes from any activity like yoga, dancing, or gardening and other household chores. If they go for a walk, Google Fit awards one Move Minute every time they take at least 30 steps within 60 seconds.
REST
Name | com.google.active_minutes |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | duration (int —milliseconds)
The duration of Move Minutes earned, in milliseconds.
Valid range: >=0 |
Android
Name | com.google.active_minutes |
Data type object | TYPE_MOVE_MINUTES |
Fields (format—units) | FIELD_DURATION (int —milliseconds)
The duration of Move Minutes earned, in milliseconds.
Valid range: 0—Long.MAX_VALUE |
Power
This data type captures the power generated by a user when doing an activity, measured in watts. For example, using a power meter when exercising on a stationary bike. Each data point represents an instantaneous measurement of power generated.
Each data point represents an instantaneous measure of power generated, so only the end time should be set. This will be used as the timestamp for the reading.
REST
Name | com.google.power.sample |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | watts (float —watts)
Power generated, in watts. |
Android
Name | com.google.power.sample |
Data type object | TYPE_POWER_SAMPLE |
Fields (format—units) | FIELD_WATTS (float —watts)
Power generated, in watts. |
Step count cadence
This data type captures the walking cadence, measured in steps per minute. Each data point represents an instantaneous measurement of the cadence in steps per minute.
REST
Name | com.google.step_count.cadence |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
Fields (format—units) | rpm (float —steps/minute)
Cadence measured in steps per minute. |
Android
Name | com.google.step_count.cadence |
Data type object | TYPE_STEP_COUNT_CADENCE |
Fields (format—units) | FIELD_RPM (float —steps/minute)
Cadence measured in steps per minute. |
Step count delta
This data type captures the number of steps taken since the last reading. Each step is only reported once so data points shouldn't have overlapping time. The start time of each data point should represent the start of the interval in which steps were taken.
The start time must be equal to or greater than the end time of the previous data point. Adding all of the values together for a period of time calculates the total number of steps during that period.
REST
Name | com.google.step_count.delta | |
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
|
Fields (format—units) |
|
Android
Name | com.google.step_count.delta | |
Data type object | TYPE_STEP_COUNT_DELTA | |
Android permission | ACTIVITY_RECOGNITION | |
Fields (format—units) |
|
Workout
Each data point represents a single continuous set of a workout exercise performed by a user. The data point contains fields for the exercise type (for example resistance exercises or weight training), the number of repetitions of the exercise, the duration of the exercise, and the resistance.
REST
Name | com.google.activity.exercise | |||||
OAuth permission scopes |
https://www.googleapis.com/auth/fitness.activity.read
https://www.googleapis.com/auth/fitness.activity.write
|
|||||
Fields (format—units) |
|
Android
Name | com.google.activity.exercise | |||||
Fields (format—units) |
|