Provider and Resources
Electrocardiogram, Heart Rate Alert and AFib Burden (Dec 2024)
Vital now supports collecting Electrocardiogram (ECG) data and a couple of related data points from a set of providers:
Resource | Apple HealthKit [3] | Fitbit | Withings | Kardia |
---|---|---|---|---|
Electrocardiogram Summaryelectrocardiogram | ✅ | - | ✅ | ✅ |
ECG Voltage timeserieselectrocardiogram_voltage | ✅ | - | ✅ | ✅ |
Heart Rate Alertheart_rate_alert | ✅ [1] | ✅ [2] | ✅ [2] | ✅ [2] |
AFib Burdenafib_burden | ✅ | - | - | - |
[1] Irregular rhythm alerts, high heart rate alerts and low heart rate alerts.
[2] Irregular rhythm alerts only.
[3] Requires Vital iOS SDK 1.3.0+, Vital Flutter SDK 4.4.0+ or Vital React Native SDK 5.1.0+.
For more information, check out:
- the Get Electrocardiogram endpoint documentation;
- the Get Electrocardiogram Voltage endpoint documentation;
- the Get Heart Rate Alert endpoint documentation; and
- the Get AFib Burden endpoint documentation;
- the Electrocardiogram data events in the Event Catalog;
- the Electrocardiogram Voltage data events in the Event Catalog;
- the Heart Rate Alert data events in the Event Catalog; and
- the AFib Burden data events in the Event Catalog.
Sleep Cycle Summary Type (Nov 2024)
We are introducing a new Sleep Cycle summary type (sleep_cycle
) which captures the detailed hypnogram of a sleep session.
The existing hyponogram timeseries type is deprecated in favour of this new summary type.
Check out the Get Sleep Cycle endpoint and the Sleep Cycle data events in the Event Catalog for more information.
Body Summary model extension (Nov 2024)
The Body Summary model now includes 4 new fields:
water_percentage
- The percentage of water in the body.muscle_mass_percentage
- The percentage of muscle mass in the body.visceral_fat_index
- Provider’s score of visceral fat levels.bone_mass_percentage
- The percentage of bone mass in the body.
At the time of writing all four are only available from the Withings provider.
Check out the Get Body Summary endpoint and the Body Created event for more information.
Sleep Type (Nov 2024)
New Sleep summaries now have a new Sleep Type field.
Vital maps the Sleep Type from the source provider whenever possible. If this is unavailable at source, Vital infers the Sleep Type based on the sleep session duration.
Sleep Type | Description |
---|---|
long_sleep | >=3 hours of sleep |
short_sleep | <3 hours of sleep |
acknowledged_nap | User-acknowledged naps, typically under 3 hours of sleep |
unknown | The sleep session recording is ongoing. |
Check out the Get Sleep endpoint and the Sleep data events in the Event Catalog for more information.
Apple HealthKit data sync improvements (Aug 2024)
An overhauled Apple HealthKit sync engine is now available across all Vital Mobile SDK platforms. The changes bring historical data sync incrementality, prioritization, network resiliency and reduced resource usage.
-
Most resources now use a resumable sync & upload process.
- This enables the SDK to make constant forward progress, especially when you have specified a very large historical pull stage (60-365 days) through the Team Data Pull Preferences API.
-
The SDK now prioritises syncing of summary types over timeseries data.
-
During the historical pull stage, all timeseries resources would be suppressed until all the summary types have been successfully uploaded.
-
After the historical pull stage, the SDK would make forward progress on summary types, before it proceeds to deal with the more CPU-time consuming timeseries data that are more prone to operating system throttling.
-
-
With an updated iOS App Target configuration, the SDK would now self-register as a
BGProcessingTask
orBGHealthResearchTask
(iOS 17+) to the iOS BackgroundTasks framework.-
This would provide the SDK an additional opportunity to complete any resource sync that is not able to complete during normal HealthKit background delivery.
-
Please refer to the Apple HealthKit guide on how to update your iOS App Target configuration in Xcode.
-
Platform | Release Note |
---|---|
Native iOS | vital-ios 1.2.2 |
Flutter | vital-flutter 4.2.1 |
React Native | vital-react-native 4.2.1 |
Menstrual Cycle Tracking (July 2024)
Menstrual cycle tracking data can now be collected through the Apple HealthKit and Android Health Connect integrations.
Ask for data permission on the MenstrualCycle
resource from the user through the Vital Health SDK.
Check out the Get Menstrual Cycles endpoint and the Menstrual Cycle data events in the Event Catalog for more information.
Steps count in workouts (May 2024)
Workouts now include the total steps count during the session (if available).
Check out the Get Workouts endpoint and the Workout Created event for more information.
New Abbott LibreView integration (May 2024)
Vital has introduced an new Abbott LibreView provider (abbott_libreview
). It uses password authentication,
accepting LibreView patient account credentials.
This is an alternative option to our practice-based Freestyle Libre provider (freestyle_libre
).
With abbott_libreview
, Vital uses the provided LibreView patient account credentials to connect directly
to LibreView. There is no involvement of a LibreView practice in this integration.
Note that both practice-based and patient-based connections would continue to be supported in parallel. The
abbott_libreview
integration does not replace the freestyle_libre
integration.
Check out the Abbott LibreView / Freestyle Libre guide for more information.
Removed Fitbit and Oura required scopes (May 2024)
The Fitbit profile scope and Oura email scope are no longer required for establishing connections.
For Fitbit specifically, please be aware of the updated Fitbit Time Zone resolution precedences. When your user refuses to grant both the activity and the profile scope, Fitbit data are more likely be timestamped incorrectly in UTC time basis due to inaccurate or unavailable time zone information.
We have now updated our Fitbit and Oura integrations not to depend on these scopes to be minimally functional.
If you are interested in requiring your users to grant certain scopes when connecting an OAuth provider, check out the Team Scope Requirements changelog entry and the Set Team Scope Requirements endpoint for more information.
Freestyle Libre: India region (Apr 2024)
Our Freestyle Libre integration now supports the LibreView India region.
Check out the Freestyle Libre documentation for more information.
Health Connect Background Sync (Mar 2024)
Vital Mobile SDK now includes an experimental Background Sync feature for Android Health Connect.
The feature is available through the following Vital Mobile SDK releases:
Platform | Version |
---|---|
Native Android | 2.0.0+ |
Flutter | 3.2.0+ |
React Native | 3.1.0+ |
Check out the following documentation for information, integration guidance as well as caveats of the experimental Background Sync :
- Vital Health SDK: Automatic Data Sync for a general overview
- Android Health Connect integration guide, which includes guidance on the experimental Background Sync feature.
Expanded Source Type attribution (Feb 2024)
Data from Fitbit, Oura, Garmin and Freestyle Libre now comes with Source Type attributions.
Check out the Data Attributions documentation for more information.