Vital · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Junction Timeseries API
81 actions
81 updates
phrasing
extends
openapi/vital-io-time-series-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Vital's API. It is a proposal applied on top of the contract, not a document Vital publishes.
What the actions change
x-apievangelist-phrasing
Targets 81 · first 16 shown; the file carries all of them
$.info
$.paths['/v2/timeseries/sleep/{sleep_id}/stream'].get
$.paths['/v2/timeseries/workouts/{workout_id}/stream'].get
$.paths['/v2/timeseries/{user_id}/workout_swimming_stroke/grouped'].get
$.paths['/v2/timeseries/{user_id}/workout_distance/grouped'].get
$.paths['/v2/timeseries/{user_id}/heart_rate_recovery_one_minute/grouped'].get
$.paths['/v2/timeseries/{user_id}/waist_circumference/grouped'].get
$.paths['/v2/timeseries/{user_id}/lean_body_mass/grouped'].get
$.paths['/v2/timeseries/{user_id}/body_mass_index/grouped'].get
$.paths['/v2/timeseries/{user_id}/basal_body_temperature/grouped'].get
$.paths['/v2/timeseries/{user_id}/handwashing/grouped'].get
$.paths['/v2/timeseries/{user_id}/daylight_exposure/grouped'].get
$.paths['/v2/timeseries/{user_id}/uv_exposure/grouped'].get
$.paths['/v2/timeseries/{user_id}/fall/grouped'].get
$.paths['/v2/timeseries/{user_id}/inhaler_usage/grouped'].get
$.paths['/v2/timeseries/{user_id}/peak_expiratory_flow_rate/grouped'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Junction Timeseries API
version: 1.0.0
extends: openapi/vital-io-time-series-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 80
- target: $.paths['/v2/timeseries/sleep/{sleep_id}/stream'].get
update:
x-apievangelist-phrasing:
intent: Get the sample stream for one sleep session
effect: read
questions:
- Can I get second-by-second data like heart rate during a single night's sleep?
- Where do I fetch the detailed stream behind one sleep record?
instructions:
- text: Get the stream for sleep session {sleep_id}.
slots:
sleep_id: path.sleep_id
- text: Pull the full time series recorded during sleep {sleep_id}.
slots:
sleep_id: path.sleep_id
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/workouts/{workout_id}/stream'].get
update:
x-apievangelist-phrasing:
intent: Get the sample stream for one workout
effect: read
questions:
- Can I see the detailed data stream captured during one workout?
- Is a workout's moment-by-moment data available, not just its totals?
instructions:
- text: Get the stream for workout {workout_id}.
slots:
workout_id: path.workout_id
- text: Pull the time series recorded during workout {workout_id}.
slots:
workout_id: path.workout_id
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/workout_swimming_stroke/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get swimming stroke counts grouped by source
effect: read
questions:
- Can I pull a swimmer's stroke counts from their workouts?
- Are swimming stroke samples split out by the device that recorded them?
instructions:
- text: Get {user}'s swimming strokes from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Continue listing grouped swim stroke data for {user} from cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/workout_distance/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get workout distance samples grouped by source
effect: read
questions:
- How far did a user go during workouts over a date range?
- Can I see workout distance broken down by recording device?
instructions:
- text: Get {user}'s workout distance since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Page through {user}'s grouped workout distance using cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/heart_rate_recovery_one_minute/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get one-minute heart rate recovery by source
effect: read
questions:
- Can I track how quickly a user's heart rate drops one minute after exercise?
- Which devices reported one-minute heart rate recovery for a user?
instructions:
- text: Get {user}'s one-minute heart rate recovery from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Fetch more grouped heart rate recovery samples for {user} after cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/waist_circumference/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get waist circumference readings by source
effect: read
questions:
- Can I pull a user's waist measurements over time?
- Which app or scale logged a user's waist circumference?
instructions:
- text: Get {user}'s waist circumference since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Show grouped waist measurements for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/lean_body_mass/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get lean body mass readings by source
effect: read
questions:
- How has a user's lean body mass changed over a period?
- Can I see lean mass readings separated by the device that took them?
instructions:
- text: Get {user}'s lean body mass from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: List lean mass samples per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/body_mass_index/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get BMI readings grouped by source
effect: read
questions:
- Can I get a user's BMI history?
- Which sources reported body mass index values for a user?
instructions:
- text: Get {user}'s BMI readings since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Page through grouped body mass index data for {user} with cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/basal_body_temperature/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get basal body temperature by source
effect: read
questions:
- Can I retrieve a user's basal body temperature readings for cycle tracking?
- What basal temperature data has each source recorded for a user?
instructions:
- text: Get {user}'s basal body temperature from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show basal temperature samples per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/handwashing/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get handwashing events grouped by source
effect: read
questions:
- Can I see how often a user washed their hands, as tracked by their watch?
- Are handwashing events available per recording source?
instructions:
- text: Get {user}'s handwashing events since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Fetch the next page of handwashing records for {user} at cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/daylight_exposure/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get daylight exposure time grouped by source
effect: read
questions:
- How much time did a user spend in daylight each day?
- Can I break down daylight exposure by the device that measured it?
instructions:
- text: Get {user}'s daylight exposure from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: List time-in-daylight samples per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/uv_exposure/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get UV exposure readings grouped by source
effect: read
questions:
- Can I pull a user's ultraviolet exposure levels?
- Which device recorded a user's UV exposure readings?
instructions:
- text: Get {user}'s UV exposure since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Page through grouped ultraviolet exposure for {user} with cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/fall/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get detected falls grouped by source
effect: read
questions:
- Has a user's wearable detected any falls in the last month?
- Can I list fall events along with the device that detected them?
instructions:
- text: Get fall events for {user} from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show detected falls for {user} reported by {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/inhaler_usage/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get inhaler usage events grouped by source
effect: read
questions:
- Can I see how often a user used their inhaler?
- Which source logged a patient's inhaler puffs?
instructions:
- text: Get {user}'s inhaler usage since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Fetch more grouped inhaler events for {user} after cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/peak_expiratory_flow_rate/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get peak expiratory flow readings by source
effect: read
questions:
- Can I track a user's peak flow measurements for asthma monitoring?
- What peak expiratory flow rate values did each source record?
instructions:
- text: Get {user}'s peak expiratory flow rate from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: List peak flow readings per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/forced_vital_capacity/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get forced vital capacity readings by source
effect: read
questions:
- Can I retrieve a user's forced vital capacity lung test results?
- Which spirometry source reported a user's FVC values?
instructions:
- text: Get {user}'s forced vital capacity since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Page through grouped FVC readings for {user} using cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/forced_expiratory_volume_1/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get FEV1 readings grouped by source
effect: read
questions:
- Can I pull a user's FEV1, the air exhaled in the first second?
- Which device recorded forced expiratory volume for a user?
instructions:
- text: Get {user}'s FEV1 values from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show one-second forced expiratory volume per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/wheelchair_push/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get wheelchair push counts grouped by source
effect: read
questions:
- Can I track wheelchair pushes for a wheelchair user?
- Are wheelchair push counts split out by the device recording them?
instructions:
- text: Get {user}'s wheelchair pushes since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Fetch the next page of grouped wheelchair push data for {user} at cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/sleep_breathing_disturbance/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get sleep breathing disturbances by source
effect: read
questions:
- Can I see breathing disturbances measured during a user's sleep?
- Which source tracked a user's nighttime breathing disturbances?
instructions:
- text: Get {user}'s sleep breathing disturbances from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: List breathing disturbance readings during sleep for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/sleep_apnea_alert/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get sleep apnea alerts grouped by source
effect: read
questions:
- Has a user's watch raised any sleep apnea notifications?
- Can I list sleep apnea alerts with the source that issued them?
instructions:
- text: Get sleep apnea alerts for {user} since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Page through grouped apnea alerts for {user} with cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/stand_duration/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get standing time grouped by source
effect: read
questions:
- How long did a user spend standing each day?
- Can I see stand duration per recording device?
instructions:
- text: Get {user}'s stand duration from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show time spent standing per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/stand_hour/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get stand hours grouped by source
effect: read
questions:
- How many hours a day did a user stand up and move?
- Which sources counted stand hours for a user?
instructions:
- text: Get {user}'s stand hours since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Fetch more grouped stand hour records for {user} after cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/heart_rate_alert/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get heart rate alerts grouped by source
effect: read
questions:
- Did a user get any high or irregular heart rate notifications?
- Can I list heart rate alerts and which device triggered them?
instructions:
- text: Get heart rate alerts for {user} from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: List heart rate notifications per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/afib_burden/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get AFib burden readings grouped by source
effect: read
questions:
- Can I track a user's atrial fibrillation burden over time?
- Which source measured the share of time a user spent in AFib?
instructions:
- text: Get {user}'s AFib burden since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Page through grouped atrial fibrillation burden for {user} using cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/workout_duration/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get workout durations grouped by source
effect: read
questions:
- How long were a user's workouts over the past few weeks?
- Can I see workout time broken down by device?
instructions:
- text: Get {user}'s workout duration from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show exercise duration per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/vo2_max/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get VO2 max estimates grouped by source
effect: read
questions:
- Which devices estimated a user's VO2 max, and what did each report?
- Can I page through VO2 max values separated by source?
instructions:
- text: Get {user}'s VO2 max from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Fetch the next page of grouped cardio fitness data for {user} at cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/stress_level/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get stress level readings grouped by source
effect: read
questions:
- Which sources reported a user's stress scores?
- Can I compare stress levels recorded by different devices for one user?
instructions:
- text: Get {user}'s stress levels since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: List stress readings per device for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/mindfulness_minutes/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get mindfulness minutes grouped by source
effect: read
questions:
- Which apps logged a user's meditation and mindfulness time?
- Can I see mindful minutes per source for a date range?
instructions:
- text: Get {user}'s mindfulness minutes from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Page through grouped meditation minutes for {user} with cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/caffeine/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get caffeine intake grouped by source
effect: read
questions:
- Which apps did a user log caffeine intake in?
- Can I see caffeine entries split by the app that recorded them?
instructions:
- text: Get {user}'s caffeine intake since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Show caffeine logs per app for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/water/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get water intake grouped by source
effect: read
questions:
- Which sources tracked how much water a user drank?
- Can I get hydration logs separated by app?
instructions:
- text: Get {user}'s water intake from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Fetch more grouped hydration entries for {user} after cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/steps/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get step counts grouped by source
effect: read
questions:
- If a user wears a watch and carries a phone, can I see steps from each separately?
- Can I page through step samples per recording device?
instructions:
- text: Get {user}'s steps since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: List step counts per device for {user} from {provider} between {start} and {end}.
slots:
user: path.user_id
provider: query.provider
start: query.start_date
end: query.end_date
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/floors_climbed/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get floors climbed grouped by source
effect: read
questions:
- Which device counted the floors a user climbed?
- Can I see stair climbing per source over a date range?
instructions:
- text: Get floors climbed by {user} from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Page through grouped stair climbs for {user} with cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/distance/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get distance traveled grouped by source
effect: read
questions:
- Which sources recorded how far a user walked or ran each day?
- Can I compare daily distance between a user's devices?
instructions:
- text: Get {user}'s distance traveled since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Show distance covered per device for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/calories_basal/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get basal calories grouped by source
effect: read
questions:
- Which devices estimated a user's resting calorie burn?
- Can I see basal metabolic calories split by source?
instructions:
- text: Get {user}'s basal calories from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Fetch the next page of grouped resting energy for {user} at cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/calories_active/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get active calories grouped by source
effect: read
questions:
- Which sources reported calories a user burned through activity?
- Can I compare active energy burned across a user's devices?
instructions:
- text: Get {user}'s active calories since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: List active energy burned per device for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/respiratory_rate/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get respiratory rate grouped by source
effect: read
questions:
- Which devices measured a user's breathing rate?
- Can I page through respiratory rate samples per source?
instructions:
- text: Get {user}'s respiratory rate from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show breaths-per-minute readings per device for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/note/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get user notes grouped by source
effect: read
questions:
- Can I pull free-text notes a user logged alongside their health data?
- Which apps did a user's notes come from?
instructions:
- text: Get notes logged by {user} since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Fetch more grouped notes for {user} after cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/insulin_injection/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get insulin injections grouped by source
effect: read
questions:
- Can I see when a diabetic user logged insulin injections?
- Which app or pen recorded a user's insulin doses?
instructions:
- text: Get {user}'s insulin injections from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: List insulin doses per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/ige/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get IgE antibody results grouped by source
effect: read
questions:
- Which sources reported a user's IgE allergy antibody levels?
- Can I page through IgE results separated by source?
instructions:
- text: Get {user}'s IgE results since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Show IgE allergy antibody values per source for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/igg/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get IgG antibody results grouped by source
effect: read
questions:
- Which sources reported a user's IgG antibody levels?
- Can I see IgG food sensitivity results split by source?
instructions:
- text: Get {user}'s IgG results from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Fetch the next page of grouped IgG antibody data for {user} at cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/hypnogram/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get sleep stage hypnograms grouped by source
effect: read
questions:
- Which devices recorded a user's sleep stages through the night?
- Can I compare hypnograms from two different sleep trackers?
instructions:
- text: Get {user}'s hypnogram since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: List sleep stage timelines per device for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/hrv/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get heart rate variability grouped by source
effect: read
questions:
- Which devices reported a user's HRV?
- Can I compare heart rate variability between a ring and a watch for one user?
instructions:
- text: Get {user}'s HRV from {start} to {end}, grouped by source.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Page through grouped heart rate variability for {user} using cursor {cursor}.
slots:
user: path.user_id
cursor: query.next_cursor
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/timeseries/{user_id}/heartrate/grouped'].get
update:
x-apievangelist-phrasing:
intent: Get heart rate samples grouped by source
effect: read
questions:
- Which sources recorded a user's heart rate throughout the day?
- Can I page through heart rate readings device by device?
instructions:
- text: Get {user}'s heart rate since {start}, grouped by source.
slots:
user: path.user_id
start: query.start_date
- text: Show pulse readings per device for {user} from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vital-io/refs/heads/main/overlays/vital-io-time-series-api-phrasing-overlay.yaml