Google Fit is an open ecosystem that allows developers to upload fitness data to a central repository where users can access their data from different devices and apps in one location:
- Fitness apps can store data from any wearable or sensor.
- Fitness apps can access data created by other apps.
- User's fitness data is persisted when they upgrade their fitness devices.
Responsible use of Google Fit
As a developer of fitness and wellness apps, you often collect and manage important user information. Keep these key principles in mind:
- Always clearly explain to the user what data you will collect and why.
- Honor user requests to delete their data.
- If you read fitness data from Google Fit, you must also write the fitness data you collect to Google Fit.
- Do not use Google Fit APIs for non-fitness purposes, such as storing medical or biometric data, selling data, or using data for advertising.
- Carefully review the Google Fit Terms and Conditions before using Google Fit.
By using the API, you agree to the Google Fit Terms and Conditions.
Google Fit consists of the following components:
- The fitness store
- A central repository that stores data from a variety of devices and apps. The fitness store is a cloud service that is transparent to clients.
- The sensor framework
- A set of high-level representations that make it easy to work with the fitness store. You use these representations with the Google Fit APIs.
- Permissions and user controls
- A set of authorization scopes to request user permission to work with fitness data. Google Fit requires user consent to access fitness data.
- Google Fit APIs
- Android and REST APIs to access the fitness store. You can create apps that support Google Fit on multiple platforms and devices, such as Android, iOS, and Web apps.
The fitness store
The fitness store is a cloud service that persists fitness data using Google's infrastructure. Apps on different platforms and devices can store data and access data created by other apps. Google Fit provides a set of APIs that make it easy to insert data and query the fitness store.
The sensor framework
The sensor framework defines high-level representations for sensors, fitness data types, data points, and sessions. These representations make it easy to work with the fitness store on any platform.
- Data Sources
- Data sources represent sensors and consist of a name, the type of data collected, and other sensor details. A data source may represent a hardware sensor or a software sensor. You can define software sensors in your apps.
- Data Types
- Data types represent different kinds of fitness data, like step count or heart rate. Data types establish a schema through which different apps can understand each other's data. A data type consists of a name and an ordered list of fields, where each field represents a dimension. For example, a data type for location contains three fields (latitude, longitude, and accuracy), whereas a data type for weight contains only one field.
- Data Points
- Data points consist of a timestamped array of values for a data type, read from a data source. You use data points to record and insert fitness data in the fitness store, and to read raw data from a data source. Points that contain a start time represent a time range instead of an instantaneous reading.
- Datasets represent a set of data points of the same type from a particular data source covering some time interval. You use datasets to insert data into the fitness store. Queries to read data from the fitness store also return datasets.
- Sessions represent a time interval during which users perform a fitness activity, such as a run, a bike ride, and so on. Sessions help organize data and perform detailed or aggregate queries on the fitness store for a fitness activity.
Permissions and user controls
Google Fit requires user consent before apps can read or store fitness data. Google Fit defines OAuth scopes that map to a number of permission groups with separate read and write privileges: activity, body, location, nutrition and health-related data types (health-related data types are grouped with finer granularity). Each permission group grants apps access to a set of data types. Apps specify one or more of these scopes to work with fitness data, and Google Fit requests the corresponding permissions from the user.
Google Fit APIs
Google Fit provides the following APIs: