Vital Wearables Data API

Read normalized wearable-device data across 300+ supported devices. Daily summary endpoints cover sleep, sleep cycles, activity, body composition, workouts, menstrual cycle, ECG, meals, and the user profile. Per-sample timeseries endpoints cover heart rate, heart-rate variability, blood pressure, blood oxygen, glucose (including continuous-glucose monitoring), respiratory rate, body temperature, basal body temperature, distance, steps, floors climbed, active and basal calories, stress level, sleep stream, workout stream, and workout-specific metrics (swimming stroke, distance, duration). All data is normalized to a single schema regardless of source provider.

Vital Wearables Data API is one of 8 APIs that Vital publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 machine-runnable capability that can be deployed as REST, MCP, or Agent Skill surfaces via Naftiko and 3 JSON Schema definitions.

Tagged areas include Wearables, Timeseries, Summary, Sleep, and Activity. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, sample payloads, 1 Naftiko capability spec, and 3 JSON Schemas.

OpenAPI Specification

vital-wearables-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Vital Wearables Data API
  description: 'Read normalized wearable device data: daily summaries (sleep, activity, body, workouts, menstrual cycle, profile)
    and per-sample timeseries (heart rate, HRV, blood pressure, glucose, SpO2, ECG, temperature, steps, calories, distance,
    sleep stream, workout stream, and more) across 300+ supported devices.'
  version: 0.4.497
  contact:
    name: Junction (Vital) Support
    url: https://docs.junction.com
paths:
  /v2/summary/electrocardiogram/{user_id}:
    get:
      tags:
      - summary
      summary: Get User Electrocardiogram
      description: Get electrocardiogram summary for user_id
      operationId: get_user_electrocardiogram_v2_summary_electrocardiogram__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          format: date
          description: Start date in YYYY-MM-DD
          title: Start Date
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date
          - type: 'null'
          description: End date (inclusive) in YYYY-MM-DD
          title: End Date
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientFacingElectrocardiogramResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: electrocardiogram
      x-fern-sdk-method-name: get
  /v2/summary/sleep_cycle/{user_id}:
    get:
      tags:
      - summary
      summary: Get User Sleep Cycle
      description: Get sleep cycle for user_id
      operationId: get_user_sleep_cycle_v2_summary_sleep_cycle__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          format: date
          description: Start date in YYYY-MM-DD
          title: Start Date
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date
          - type: 'null'
          description: End date (inclusive) in YYYY-MM-DD
          title: End Date
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientSleepCycleResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: sleep_cycle
      x-fern-sdk-method-name: get
  /v2/summary/profile/{user_id}:
    get:
      tags:
      - summary
      summary: Get User Profile
      description: Get profile for user_id
      operationId: get_user_profile_v2_summary_profile__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientFacingProfile'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: profile
      x-fern-sdk-method-name: get
  /v2/summary/profile/{user_id}/raw:
    get:
      tags:
      - summary
      summary: Get User Profile Raw
      description: Get raw profile for user_id
      operationId: get_user_profile_raw_v2_summary_profile__user_id__raw_get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RawProfile'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: profile
      x-fern-sdk-method-name: get_raw
  /v2/summary/devices/{user_id}/raw:
    get:
      tags:
      - summary
      summary: Get User Devices Raw
      description: Get Devices for user_id
      operationId: get_user_devices_raw_v2_summary_devices__user_id__raw_get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RawDevicesResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: devices
      x-fern-sdk-method-name: get_raw
  /v2/summary/activity/{user_id}:
    get:
      tags:
      - summary
      summary: Get User Activity
      description: Get activity summary for user_id
      operationId: get_user_activity_v2_summary_activity__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientActivityResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: activity
      x-fern-sdk-method-name: get
  /v2/summary/activity/{user_id}/raw:
    get:
      tags:
      - summary
      summary: Get User Activity Raw
      description: Get raw activity summary for user_id
      operationId: get_user_activity_raw_v2_summary_activity__user_id__raw_get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RawActivityResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: activity
      x-fern-sdk-method-name: get_raw
  /v2/summary/workouts/{user_id}:
    get:
      tags:
      - summary
      summary: Get User Workouts
      description: Get workout summary for user_id
      operationId: get_user_workouts_v2_summary_workouts__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientWorkoutResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: workouts
      x-fern-sdk-method-name: get
  /v2/summary/workouts/{user_id}/raw:
    get:
      tags:
      - summary
      summary: Get User Workouts Raw
      description: Get raw workout summary for user_id
      operationId: get_user_workouts_raw_v2_summary_workouts__user_id__raw_get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RawWorkoutResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: workouts
      x-fern-sdk-method-name: get_raw
  /v2/summary/sleep/{user_id}:
    get:
      tags:
      - summary
      summary: Get User Sleep
      description: Get sleep summary for user_id
      operationId: get_user_sleep_v2_summary_sleep__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientSleepResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: sleep
      x-fern-sdk-method-name: get
  /v2/summary/sleep/{user_id}/raw:
    get:
      tags:
      - summary
      summary: Get User Sleep Raw
      description: Get raw sleep summary for user_id
      operationId: get_user_sleep_raw_v2_summary_sleep__user_id__raw_get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RawSleepResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: sleep
      x-fern-sdk-method-name: get_raw
  /v2/summary/body/{user_id}:
    get:
      tags:
      - summary
      summary: Get User Body
      description: Get Body summary for user_id
      operationId: get_user_body_v2_summary_body__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientBodyResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: body
      x-fern-sdk-method-name: get
  /v2/summary/body/{user_id}/raw:
    get:
      tags:
      - summary
      summary: Get User Body Raw
      description: Get raw Body summary for user_id
      operationId: get_user_body_raw_v2_summary_body__user_id__raw_get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RawBodyResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: body
      x-fern-sdk-method-name: get_raw
  /v2/summary/meal/{user_id}:
    get:
      tags:
      - summary
      summary: Get Meals
      description: Get user's meals
      operationId: get_meals_v2_summary_meal__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time
            will be set to 00:00:00
          title: Start Date
        description: Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
          be set to 00:00:00
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will
            be set to 23:59:59
          title: End Date
        description: Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be
          set to 23:59:59
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientFacingMealResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: meal
      x-fern-sdk-method-name: get
  /v2/summary/menstrual_cycle/{user_id}:
    get:
      tags:
      - summary
      summary: Get User Menstrual Cycles
      operationId: get_user_menstrual_cycles_v2_summary_menstrual_cycle__user_id__get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: provider
        in: query
        required: false
        schema:
          type: string
          description: Provider oura/strava etc
          default: ''
          title: Provider
        description: Provider oura/strava etc
      - name: start_date
        in: query
        required: true
        schema:
          type: string
          format: date
          description: Start date in YYYY-MM-DD
          title: Start Date
      - name: end_date
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date
          - type: 'null'
          description: End date (inclusive) in YYYY-MM-DD
          title: End Date
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MenstrualCycleResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: menstrual_cycle
      x-fern-sdk-method-name: get
  /v2/timeseries/sleep/{sleep_id}/stream:
    get:
      tags:
      - timeseries
      summary: Get User Sleep Stream
      description: Get Sleep stream for a user_id
      operationId: get_user_sleep_stream_v2_timeseries_sleep__sleep_id__stream_get
      parameters:
      - name: sleep_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          description: The Vital Sleep ID
          title: Sleep Id
        description: The Vital Sleep ID
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientFacingSleepStream'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: sleep
      x-fern-sdk-method-name: get_stream_by_sleep_id
      x-fern-availability: deprecated
  /v2/timeseries/workouts/{workout_id}/stream:
    get:
      tags:
      - timeseries
      summary: Get User Workouts
      operationId: get_user_workouts_v2_timeseries_workouts__workout_id__stream_get
      parameters:
      - name: workout_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          description: The Vital ID for the workout
          title: Workout Id
        description: The Vital ID for the workout
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientFacingStream'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: workouts
      x-fern-sdk-method-name: get_by_workout_id
  /v2/timeseries/{user_id}/workout_swimming_stroke/grouped:
    get:
      tags:
      - timeseries
      summary: Workout Swimming Stroke
      operationId: get_workout_swimming_stroke_grouped
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: User id returned by vital create user id request. This id should be stored in your database against the user
            and used for all interactions with the vital api.
      - name: cursor
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: The cursor for fetching the next page, or `null` to fetch the first page.
          deprecated: true
          title: Cursor
        description: The cursor for fetching the next page, or `null` to fetch the first page.
        deprecated: true
      - name: next_cursor
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: The cursor for fetching the next page, or `null` to fetch the first page.
          title: Next Cursor
        description: The cursor for fetching the next page, or `null` to fetch the first page.
      - name: provider
        in: query
        required: false
        schema:
          type: string


# --- truncated at 32 KB (917 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vital-io/refs/heads/main/openapi/vital-wearables-api-openapi.yml