Deprecations
The hypnogram
timeseries type
We have introduced a new Sleep Cycle summary type (sleep_cycle
) which captures the detailed hypnogram of a sleep session.
It replaces the existing hypnogram
timeseries type. More details can be found here: Sleep Cycle Summary
Recommended Action
Start processing the new historical.data.sleep_cycle.created
, daily.data.sleep_cycle.created
and daily.data.sleep_cycle.updated
events.
Stop processing the historical.timeseries.hypnogram.created
, daily.timeseries.hypnogram.created
and daily.timeseries.hypnogram.updated
events.
Redefining Source and Provider
Vital has redefined what Source and Provider means across our API and event schemas:
To migrate to the new definitions, Vital is announcing the following deprecations:
All Data Dvents (daily.data.*)
Inside the Source context located at $.data.source
, the name
, logo
, and slug
fields are
now deprecated.
Vital no longer embeds these Provider object fields in every data event, except for the provider slug.
Using the Steps data event as an illustration, originally
the source
field describes the wearable data provider:
As part of this redefinition, the source
field is redefined to mean the Source context of this steps timeseries
value group. So Vital has introduced a few new Source context fields:
Once the deprecation cycle ends, Vital will remove the deprecated fields:
Recommended Action
Stop parsing name
, logo
and slug
when processing the $.data.source
field in
all Data Events (daily.data.*).
If you need the Provider information, you can obtain it through the Get Providers endpoint.
Get Summary endpoints
This applies to:
- Get Activity:
GET /v2/summary/activity/*
- Get Body:
GET /v2/summary/body/*
- Get Meal:
GET /v2/summary/meal/*
- Get Profile:
GET /v2/summary/profile/*
- Get Sleep:
GET /v2/summary/sleep/*
- Get Workouts:
GET /v2/summary/workouts/*
Similar to changes to the Data Events, the name
, logo
, and slug
sub-fields under the source
field
in each and every summary are now deprecated.
Vital no longer embeds these Provider object fields in every summary, except for the provider slug.
Using the Get Profile endpoint as an illustration, originally
the source
field describes the wearable data provider:
As part of this redefinition, the source
field is redefined to mean the Source context of this Profile
summary. So Vital has introduced a few new Source context fields:
Once the deprecation cycle ends, Vital will remove the deprecated fields:
Recommended Action
Stop parsing name
, logo
and slug
fields in all Get Summary endpoint responses.
If you need the Provider information, you can obtain it through the Get Providers endpoint.
Provider Connection events
This applies to:
- Provider Connection Created:
provider.connection.created
.
Vital has renamed the source
field in this event to provider
, aligning with the redefinition of Source
and Provider.
To illustrate the change, originally the source
field describes the wearable data provider:
As part of this redefinition, source
is no longer applicable here. Vital has introduced an identical
provider
field as its replacement.
Once the deprecation cycle ends, Vital will remove the deprecated source
field:
Recommended Action
Update your provider.connection.created
event parsing logic to parse the provider
field,
and stop parsing the source
field.
The is_final
flag in historical.data.*.created
events
We are removing the is_final
flag from the Historical Pull Completed (historical.data.*.created
) events.
For each resource, Vital now signals one Historical Pull Completed event, only after we have finished fetching
all data chunks. This means is_final
no longer has a meaning, since the event itself is final.
Recommended Action
Stop parsing is_final
as a required field when processing historical.data.*.created
events.