Vital · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Junction Summary API
16 actions
16 updates
phrasing
extends
openapi/vital-io-summary-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 16
$.info
$.paths['/v2/summary/electrocardiogram/{user_id}'].get
$.paths['/v2/summary/sleep_cycle/{user_id}'].get
$.paths['/v2/summary/profile/{user_id}'].get
$.paths['/v2/summary/profile/{user_id}/raw'].get
$.paths['/v2/summary/devices/{user_id}/raw'].get
$.paths['/v2/summary/activity/{user_id}'].get
$.paths['/v2/summary/activity/{user_id}/raw'].get
$.paths['/v2/summary/workouts/{user_id}'].get
$.paths['/v2/summary/workouts/{user_id}/raw'].get
$.paths['/v2/summary/sleep/{user_id}'].get
$.paths['/v2/summary/sleep/{user_id}/raw'].get
$.paths['/v2/summary/body/{user_id}'].get
$.paths['/v2/summary/body/{user_id}/raw'].get
$.paths['/v2/summary/meal/{user_id}'].get
$.paths['/v2/summary/menstrual_cycle/{user_id}'].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 Summary API
version: 1.0.0
extends: openapi/vital-io-summary-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: 15
- target: $.paths['/v2/summary/electrocardiogram/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's electrocardiogram summaries
effect: read
questions:
- Can I get a user's electrocardiogram readings for a date range?
- Which ECG recordings came from a specific provider?
instructions:
- text: Get ECG summaries for {user} from {start} to {end}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show {user}'s electrocardiograms from {provider} since {start}.
slots:
user: path.user_id
provider: query.provider
start: query.start_date
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/sleep_cycle/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's sleep cycles
effect: read
questions:
- Can I see a user's sleep cycle data for a period?
- What sleep cycles were recorded for a user last week?
instructions:
- text: Get sleep cycles for {user} starting {start}.
slots:
user: path.user_id
start: query.start_date
- text: Show {user}'s sleep cycle records from {start} to {end} via {provider}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/profile/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's normalized profile
effect: read
questions:
- What profile information has a user's connected device shared?
- Can I read a user's normalized profile from one provider?
instructions:
- text: Get the profile for {user}.
slots:
user: path.user_id
- text: Show {user}'s profile from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/profile/{user_id}/raw'].get
update:
x-apievangelist-phrasing:
intent: Get a user's raw provider profile
effect: read
questions:
- Can I see the raw profile payload exactly as a provider sent it?
- Where is the unprocessed provider profile for a user?
instructions:
- text: Get the raw provider profile for {user}.
slots:
user: path.user_id
- text: Fetch {user}'s unnormalized profile data from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/devices/{user_id}/raw'].get
update:
x-apievangelist-phrasing:
intent: Get a user's raw device data
effect: read
questions:
- Which devices has a user connected, in the provider's raw format?
- Can I get raw device records for a user from one provider?
instructions:
- text: Get raw device data for {user}.
slots:
user: path.user_id
- text: Show {user}'s raw devices from {provider}.
slots:
user: path.user_id
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/activity/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's daily activity summaries
effect: read
questions:
- How active was a user each day over a date range?
- Can I get a user's daily activity summaries from one provider?
instructions:
- text: Get activity summaries for {user} from {start} to {end}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show {user}'s daily activity since {start}.
slots:
user: path.user_id
start: query.start_date
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/activity/{user_id}/raw'].get
update:
x-apievangelist-phrasing:
intent: Get a user's raw activity data
effect: read
questions:
- Can I see raw activity data exactly as the provider reported it?
- Where do I get unprocessed daily activity for a user?
instructions:
- text: Get raw activity for {user} from {start}.
slots:
user: path.user_id
start: query.start_date
- text: Fetch {user}'s unnormalized activity records 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/summary/workouts/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's workout summaries
effect: read
questions:
- What workouts did a user log in a date range?
- Can I list a user's workout summaries from a single provider?
instructions:
- text: Get workout summaries for {user} since {start}.
slots:
user: path.user_id
start: query.start_date
- text: List {user}'s workouts from {start} to {end}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/workouts/{user_id}/raw'].get
update:
x-apievangelist-phrasing:
intent: Get a user's raw workout data
effect: read
questions:
- Can I get the provider's raw workout records for a user?
- Where is the unnormalized workout payload?
instructions:
- text: Get raw workout data for {user} from {start}.
slots:
user: path.user_id
start: query.start_date
- text: Fetch {user}'s raw {provider} workouts 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/summary/sleep/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's nightly sleep summaries
effect: read
questions:
- How did a user sleep over the past month?
- Can I get nightly sleep summaries for a user?
instructions:
- text: Get sleep summaries for {user} from {start} to {end}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show {user}'s nightly sleep since {start}.
slots:
user: path.user_id
start: query.start_date
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/sleep/{user_id}/raw'].get
update:
x-apievangelist-phrasing:
intent: Get a user's raw sleep data
effect: read
questions:
- Can I see raw sleep data as the provider delivered it?
- Where do I find unprocessed sleep records for a user?
instructions:
- text: Get raw sleep data for {user} from {start}.
slots:
user: path.user_id
start: query.start_date
- text: Fetch {user}'s unnormalized {provider} sleep 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/summary/body/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's body measurement summaries
effect: read
questions:
- Can I get a summary of a user's body measurements over time?
- What body summary data came from a specific provider?
instructions:
- text: Get body summaries for {user} from {start} to {end}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show {user}'s body measurements from {provider} since {start}.
slots:
user: path.user_id
provider: query.provider
start: query.start_date
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/body/{user_id}/raw'].get
update:
x-apievangelist-phrasing:
intent: Get a user's raw body data
effect: read
questions:
- Can I see raw body measurement data straight from the provider?
- Where are unprocessed body records for a user?
instructions:
- text: Get raw body data for {user} from {start}.
slots:
user: path.user_id
start: query.start_date
- text: Fetch {user}'s unnormalized body records between {start} and {end}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/meal/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's logged meals
effect: read
questions:
- What meals did a user log during a period?
- Can I pull nutrition logs from a user's connected app?
instructions:
- text: Get meals for {user} from {start} to {end}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
- text: Show what {user} logged eating since {start} in {provider}.
slots:
user: path.user_id
start: query.start_date
provider: query.provider
method: generated
generated: '2026-10-01'
- target: $.paths['/v2/summary/menstrual_cycle/{user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user's menstrual cycles
effect: read
questions:
- Can I retrieve a user's menstrual cycle data?
- Which menstrual cycles were recorded in a date range?
instructions:
- text: Get menstrual cycles for {user} since {start}.
slots:
user: path.user_id
start: query.start_date
- text: Show {user}'s cycle tracking from {start} to {end} via {provider}.
slots:
user: path.user_id
start: query.start_date
end: query.end_date
provider: query.provider
method: generated
generated: '2026-10-01'