The official Flutter package for Vital APIs allowing fitness apps linking with tryvital.io and with support for HealthKit.
Package is available on https://pub.dev.
Initialise client with region, environment and api key
final client = VitalClient()
..init(region: Region.eu, environment: Environment.sandbox, apiKey: 'sk_eu_...');
Query users:
final Response<List<User>> usersResponse = client.userService.getAll();
Link data provider:
client.linkProvider(user, 'strava', 'vitalexample://callback');
Note: To return back to the app after successful linking, setup an intent filter in
AndroidManifest.xml
and custom URL scheme ininfo.plist
. Note 2: Refer to documentation for all supported data providers.
-
Follow iOS SDK instructions regarding HealthKit capabilities and background delivery setup for your iOS app.
-
To use HealthKit client you need to call configure first:
await client.healthkitServices.configureClient();
await client.healthkitServices.configureHealthkit(backgroundDeliveryEnabled: true);
- Set User ID
client.healthkitServices.setUserId('eba7c0a2-dc01-49f5-a361-...);
- Ask user for permissions to collect HealthKit data.
client.healthkitServices.askForResources([
HealthkitResource.profile,
HealthkitResource.body,
...
]);
- Sync data
client.healthkitServices.syncData();
- Observe sync status using status stream
Stream<SyncStatus> status = client.healthkitServices.status
For more example usage run the sample app with your API key and Region set in main.dart
.
Please refer to the official Vital docs provide a full reference on using this library.
vital-flutter is available under the AGPLv3 license. See the LICENSE file for more info. VitalDevices is under the Adept Labs Enterprise Edition (EE) license (the “EE License”)
. Please refer to its license inside its folder.