Health Connect stores and structures both health and fitness data and medical records data. It's important to understand first what data types and permissions Health Connect offers so that you can plan your app's requirements.
After development, when you prepare to publish your app to Google Play, you must declare your app's data use as well as declare access to the Health Connect data types that your app uses. Otherwise, users might be prompted with an error message where your app can't access the Health Connect data types because they require special approval.
For more information, see Complete the health apps declaration in the Play Console.
Data type categories
Health Connect supports data types that are used across most health and fitness apps to provide as much variety as possible. Health Connect aims to offer a comprehensive view and storage of health and fitness data. These data types fall into the following categories:
| Category | Description | |
|---|---|---|
| directions_run | Activity | This captures any activity that a user does. It can include health and fitness activities like running and swimming. |
| straighten | Body Measurement | This captures common data related to the body, such as a user's weight and their basal metabolic rate. |
| fertile | Cycle Tracking | This captures menstrual cycles and related data points, such as the binary result of an ovulation test. |
| grocery | Nutrition | This captures hydration and nutrition data types. The former represents how much water a user consume in a single drink. The latter includes optional fields such as calories, sugar, and magnesium. |
| sleep_auto | Sleep | This captures interval data related to a user's length and type of sleep. |
| vital_signs | Vitals | This captures essential information about the user's general health. It includes data such as body temperature, blood glucose, blood pressure, and blood oxygen saturation. |
| mindfulness | Wellness | This captures data related to a user's mental health and well-being. |
Developer experience guides
Health Connect provides developer experience guides that focus on specific health and fitness use cases. These guides show you how to use relevant data types together to build features for the following areas:
The following data type table also indicates which experience guides are associated with each data type.
Data type fields
The Health Connect data types table includes several field columns to help you understand the structure and requirements of each data type. These columns are as follows:
| Field | Description | |
|---|---|---|
| schedule | Record Type | Indicates whether the data is recorded at an instant in time or over an interval. The possible values are: Interval, Instantaneous, Series. |
| straighten | Unit | The unit of measurement for the data type (for example, Calories, Meters, Count). |
| star | Mandatory Fields | These are the essential fields that must be included when writing data for this data type to help maintain data integrity and usefulness. |
Health and fitness data types
Before requesting any permissions, your app must declare them in the manifest. For more information, see the Declare permissions section of the quick start guide.
The following table contains the full list of data types, each with category, feature flags and guides, and permission declarations.
This table is for the Health Connect SDK version 1.0.0-alpha09 and lower. If you're using a higher version of the SDK, see Health Connect data types for SDK 1.0.0-alpha10 and higher.
| Data type Guides |
Category | Record type Permission declarations Feature flag |
|---|---|---|
| Active calories burned Workouts guide
|
Activity | ActiveCaloriesBurnedRecord
androidx.health.permission.ActiveCaloriesBurned.READ androidx.health.permission.ActiveCaloriesBurned.WRITE Aggregate data typesACTIVE_CALORIES_TOTAL |
| Activity intensity Workouts guide
|
Activity | ActivityIntensityRecord
FEATURE_ACTIVITY_INTENSITYAggregate data typesDURATION_TOTALINTENSITY_MINUTES_TOTALMODERATE_DURATION_TOTALVIGOROUS_DURATION_TOTAL |
Basal body temperature
|
Cycle Tracking | BasalBodyTemperatureRecord
androidx.health.permission.BasalBodyTemperature.READ androidx.health.permission.BasalBodyTemperature.WRITE |
Basal metabolic rate
|
Body Measurement | BasalMetabolicRateRecord
androidx.health.permission.BasalMetabolicRate.READ androidx.health.permission.BasalMetabolicRate.WRITE Aggregate data typesBASAL_CALORIES_TOTAL |
| Blood glucose Vitals guide
|
Vitals | BloodGlucoseRecord
androidx.health.permission.BloodGlucose.READ androidx.health.permission.BloodGlucose.WRITE |
| Blood pressure Vitals guide
|
Vitals | BloodPressureRecord
androidx.health.permission.BloodPressure.READ androidx.health.permission.BloodPressure.WRITE Aggregate data typesDIASTOLIC_AVGDIASTOLIC_MAXDIASTOLIC_MINSYSTOLIC_AVGSYSTOLIC_MAXSYSTOLIC_MIN |
Body fat
|
Body Measurement | BodyFatRecord
androidx.health.permission.BodyFat.READ androidx.health.permission.BodyFat.WRITE |
| Body temperature Vitals guide
|
Vitals | BodyTemperatureRecord
androidx.health.permission.BodyTemperature.READ androidx.health.permission.BodyTemperature.WRITE |
Body water mass
|
Body Measurement | BodyWaterMassRecord
androidx.health.permission.BodyWaterMass.READ androidx.health.permission.BodyWaterMass.WRITE |
Bone mass
|
Body Measurement | BoneMassRecord
androidx.health.permission.BoneMass.READ androidx.health.permission.BoneMass.WRITE |
Cervical mucus
|
Cycle Tracking | CervicalMucusRecord
androidx.health.permission.CervicalMucus.READ androidx.health.permission.CervicalMucus.WRITE |
| Cycling pedaling cadence Workouts guide
|
Activity | CyclingPedalingCadenceRecord
androidx.health.permission.Exercise.READ androidx.health.permission.Exercise.WRITE Aggregate data typesRPM_AVGRPM_MAXRPM_MIN |
| Distance Workouts guide
|
Activity | DistanceRecord
androidx.health.permission.Distance.READ androidx.health.permission.Distance.WRITE Aggregate data typesDISTANCE_TOTAL |
| Elevation gained Workouts guide
|
Activity | ElevationGainedRecord
androidx.health.permission.ElevationGained.READ androidx.health.permission.ElevationGained.WRITE Aggregate data typesELEVATION_GAINED_TOTAL |
| Exercise Workouts guide Add exercise routes guide
|
Activity | ExerciseSessionRecord
androidx.health.permission.ExerciseSession.READ androidx.health.permission.ExerciseSession.WRITE Exercise typesView all exercise typesEXERCISE_TYPE_UNKNOWNEXERCISE_TYPE_BADMINTONEXERCISE_TYPE_BASEBALLEXERCISE_TYPE_BASKETBALLEXERCISE_TYPE_BIKINGEXERCISE_TYPE_BIKING_STATIONARYEXERCISE_TYPE_BOOT_CAMPEXERCISE_TYPE_BOXINGEXERCISE_TYPE_CALISTHENICSEXERCISE_TYPE_CRICKETEXERCISE_TYPE_DANCINGEXERCISE_TYPE_ELLIPTICALEXERCISE_TYPE_EXERCISE_CLASSEXERCISE_TYPE_FENCINGEXERCISE_TYPE_FOOTBALL_AMERICANEXERCISE_TYPE_FOOTBALL_AUSTRALIANEXERCISE_TYPE_FRISBEE_DISCEXERCISE_TYPE_GOLFEXERCISE_TYPE_GUIDED_BREATHINGEXERCISE_TYPE_GYMNASTICSEXERCISE_TYPE_HANDBALLEXERCISE_TYPE_HIGH_INTENSITY_INTERVAL_TRAININGEXERCISE_TYPE_HIKINGEXERCISE_TYPE_ICE_HOCKEYEXERCISE_TYPE_ICE_SKATINGEXERCISE_TYPE_MARTIAL_ARTSEXERCISE_TYPE_PADDLINGEXERCISE_TYPE_PARAGLIDINGEXERCISE_TYPE_PILATESEXERCISE_TYPE_RACQUETBALLEXERCISE_TYPE_ROCK_CLIMBINGEXERCISE_TYPE_ROLLER_HOCKEYEXERCISE_TYPE_ROWINGEXERCISE_TYPE_ROWING_MACHINEEXERCISE_TYPE_RUGBYEXERCISE_TYPE_RUNNINGEXERCISE_TYPE_RUNNING_TREADMILLEXERCISE_TYPE_SAILINGEXERCISE_TYPE_SCUBA_DIVINGEXERCISE_TYPE_SKATINGEXERCISE_TYPE_SKIINGEXERCISE_TYPE_SNOWBOARDINGEXERCISE_TYPE_SNOWSHOEINGEXERCISE_TYPE_SOCCEREXERCISE_TYPE_SOFTBALLEXERCISE_TYPE_SQUASHEXERCISE_TYPE_STAIR_CLIMBINGEXERCISE_TYPE_STAIR_CLIMBING_MACHINEEXERCISE_TYPE_STRENGTH_TRAININGEXERCISE_TYPE_STRETCHINGEXERCISE_TYPE_SURFINGEXERCISE_TYPE_SWIMMING_OPEN_WATEREXERCISE_TYPE_SWIMMING_POOLEXERCISE_TYPE_TABLE_TENNISEXERCISE_TYPE_TENNISEXERCISE_TYPE_VOLLEYBALLEXERCISE_TYPE_WALKINGEXERCISE_TYPE_WATER_POLOEXERCISE_TYPE_WEIGHTLIFTINGEXERCISE_TYPE_WHEELCHAIREXERCISE_TYPE_OTHER_WORKOUTEXERCISE_TYPE_YOGAAggregate data typesEXERCISE_DURATION_TOTAL |
| Floors climbed Workouts guide
|
Activity | FloorsClimbedRecord
androidx.health.permission.FloorsClimbed.READ androidx.health.permission.FloorsClimbed.WRITE Aggregate data typesFLOORS_CLIMBED_TOTAL |
| Heart rate Vitals guide
|
Vitals | HeartRateRecord
androidx.health.permission.HeartRate.READ androidx.health.permission.HeartRate.WRITE Aggregate data typesBPM_AVGBPM_MAXBPM_MINMEASUREMENTS_COUNT |
| Heart rate variability Vitals guide
|
Vitals | HeartRateVariabilityRmssdRecord
androidx.health.permission.HeartRateVariability.READ androidx.health.permission.HeartRateVariability.WRITE |
Height
|
Body Measurement | HeightRecord
androidx.health.permission.Height.READ androidx.health.permission.Height.WRITE Aggregate data typesHEIGHT_AVGHEIGHT_MAXHEIGHT_MIN |
Hydration
|
Nutrition | HydrationRecord
androidx.health.permission.Hydration.READ androidx.health.permission.Hydration.WRITE Aggregate data typesVOLUME_TOTAL |
Intermenstrual bleeding
|
Cycle Tracking | IntermenstrualBleedingRecord
androidx.health.permission.IntermenstrualBleeding.READ androidx.health.permission.IntermenstrualBleeding.WRITE |
Lean body mass
|
Body Measurement | LeanBodyMassRecord
androidx.health.permission.LeanBodyMass.READ androidx.health.permission.LeanBodyMass.WRITE |
| Menstruation For MenstruationFlowRecord:
For MenstruationPeriodRecord:
|
Cycle Tracking | MenstruationFlowRecord
MenstruationPeriodRecord
androidx.health.permission.Menstruation.READ androidx.health.permission.Menstruation.WRITE |
| Mindfulness Track mindfulness guide
|
Wellness | MindfulnessSessionRecord
FEATURE_MINDFULNESS_SESSIONMindfulness session typesView all mindfulness session typesMINDFULNESS_SESSION_TYPE_UNKNOWNMINDFULNESS_SESSION_TYPE_MEDITATIONMINDFULNESS_SESSION_TYPE_BREATHINGMINDFULNESS_SESSION_TYPE_MUSICMINDFULNESS_SESSION_TYPE_MOVEMENTMINDFULNESS_SESSION_TYPE_UNGUIDEDAggregate data typesMINDFULNESS_DURATION_TOTAL |
Nutrition
|
Nutrition | NutritionRecord
androidx.health.permission.Nutrition.READ androidx.health.permission.Nutrition.WRITE Aggregate data typesBIOTIN_TOTALCAFFEINE_TOTALCALCIUM_TOTALCHLORIDE_TOTALCHOLESTEROL_TOTALCHROMIUM_TOTALCOPPER_TOTALDIETARY_FIBER_TOTALENERGY_FROM_FAT_TOTALENERGY_TOTALFOLATE_TOTALFOLIC_ACID_TOTALIODINE_TOTALIRON_TOTALMAGNESIUM_TOTALMANGANESE_TOTALMOLYBDENUM_TOTALMONOUNSATURATED_FAT_TOTALNIACIN_TOTALPANTOTHENIC_ACID_TOTALPHOSPHORUS_TOTALPOLYUNSATURATED_FAT_TOTALPOTASSIUM_TOTALPROTEIN_TOTALRIBOFLAVIN_TOTALSATURATED_FAT_TOTALSELENIUM_TOTALSODIUM_TOTALSUGAR_TOTALTHIAMIN_TOTALTOTAL_CARBOHYDRATE_TOTALTOTAL_FAT_TOTALTRANS_FAT_TOTALUNSATURATED_FAT_TOTALVITAMIN_A_TOTALVITAMIN_B12_TOTALVITAMIN_B6_TOTALVITAMIN_C_TOTALVITAMIN_D_TOTALVITAMIN_E_TOTALVITAMIN_K_TOTALZINC_TOTAL |
Ovulation test
|
Cycle Tracking | OvulationTestRecord
androidx.health.permission.OvulationTest.READ androidx.health.permission.OvulationTest.WRITE |
| Oxygen saturation Vitals guide
|
Vitals | OxygenSaturationRecord
androidx.health.permission.OxygenSaturation.READ androidx.health.permission.OxygenSaturation.WRITE |
| Planned exercise Workouts guide Training plans guide
|
Activity | PlannedExerciseSessionRecord
androidx.health.permission.PlannedExerciseSession.READ androidx.health.permission.PlannedExerciseSession.WRITE FEATURE_PLANNED_EXERCISE |
| Power Workouts guide
|
Activity | PowerRecord
androidx.health.permission.Power.READ androidx.health.permission.Power.WRITE Aggregate data typesPOWER_AVGPOWER_MAXPOWER_MIN |
| Respiratory rate Vitals guide
|
Vitals | RespiratoryRateRecord
androidx.health.permission.RespiratoryRate.READ androidx.health.permission.RespiratoryRate.WRITE |
| Resting heart rate Vitals guide
|
Vitals | RestingHeartRateRecord
androidx.health.permission.RestingHeartRate.READ androidx.health.permission.RestingHeartRate.WRITE Aggregate data typesBPM_AVGBPM_MAXBPM_MIN |
Sexual activity
|
Cycle Tracking | SexualActivityRecord
androidx.health.permission.SexualActivity.READ androidx.health.permission.SexualActivity.WRITE |
| Skin temperature Vitals guide Measure skin temperature guide
|
Vitals | SkinTemperatureRecord
FEATURE_SKIN_TEMPERATUREAggregate data typesTEMPERATURE_DELTA_AVGTEMPERATURE_DELTA_MAXTEMPERATURE_DELTA_MIN |
| Sleep session Sleep guide Track sleep sessions guide
|
Sleep | SleepSessionRecord
androidx.health.permission.SleepSession.READ androidx.health.permission.SleepSession.WRITE Aggregate data typesSLEEP_DURATION_TOTAL |
| Speed Workouts guide
|
Activity | SpeedRecord
androidx.health.permission.Speed.READ androidx.health.permission.Speed.WRITE Aggregate data typesSPEED_AVGSPEED_MAXSPEED_MIN |
| Steps Workouts guide For StepsRecord:
For StepsCadenceRecord:
|
Activity | StepsRecord
StepsCadenceRecord
androidx.health.permission.Steps.READ androidx.health.permission.Steps.WRITE Aggregate data types for StepsRecordCOUNT_TOTALAggregate data types for StepsCadenceRecordRATE_AVGRATE_MAXRATE_MIN |
| Total calories burned Workouts guide
|
Activity | TotalCaloriesBurnedRecord
androidx.health.permission.TotalCaloriesBurned.READ androidx.health.permission.TotalCaloriesBurned.WRITE Aggregate data typesENERGY_TOTAL |
| VO2 max Workouts guide
|
Activity | Vo2MaxRecord
androidx.health.permission.VO2Max.READ androidx.health.permission.VO2Max.WRITE |
Weight
|
Body Measurement | WeightRecord
androidx.health.permission.Weight.READ androidx.health.permission.Weight.WRITE Aggregate data typesWEIGHT_AVGWEIGHT_MAXWEIGHT_MIN |
| Wheelchair pushes Workouts guide
|
Activity | WheelchairPushesRecord
androidx.health.permission.WheelchairPushes.READ androidx.health.permission.WheelchairPushes.WRITE Aggregate data typesCOUNT_TOTAL |