Vital Link API

Connect end users to their wearable and health-data providers. Generate Link tokens that drive the Vital Link Widget, complete OAuth / email / password / demo provider flows, deregister a connection, complete MFA for password providers, run bulk operations (export, import, pause, historical-pull trigger), and retrieve the catalog of 300+ supported providers — Fitbit, Garmin, Oura, Whoop, Withings, Polar, Strava, Dexcom, Freestyle Libre, Apple HealthKit, Android Health Connect, Samsung Health, and the rest.

Vital Link 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 1 JSON Schema definition.

Tagged areas include Link, Provider Connections, OAuth, Wearables, and Bulk Operations. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, sample payloads, 1 Naftiko capability spec, and 1 JSON Schema.

OpenAPI Specification

vital-link-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Vital Link API
  description: Connect end users to their wearable and health-data providers (Fitbit, Garmin, Oura, Whoop, Apple HealthKit,
    Dexcom, and 300+ more). Generate Link tokens that drive the Vital Link Widget, OAuth/email/password provider flows, bulk
    operations, demo providers, and the list of supported providers.
  version: 0.4.497
  contact:
    name: Junction (Vital) Support
    url: https://docs.junction.com
paths:
  /v2/link/bulk_op:
    get:
      tags:
      - link
      summary: List Bulk Ops
      operationId: list_bulk_ops_v2_link_bulk_op_get
      parameters:
      - name: next_cursor
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Next Cursor
      - name: page_size
        in: query
        required: false
        schema:
          type: integer
          maximum: 50
          minimum: 0
          default: 10
          title: Page Size
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkOpsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: list_bulk_ops
      x-fern-availability: beta
  /v2/link/bulk_import:
    post:
      tags:
      - link
      summary: Bulk Import Connections
      operationId: bulk_import_connections_v2_link_bulk_import_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkImportConnectionsBody'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkImportConnectionsResponse'
        '202':
          description: Accepted
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: bulk_import
      x-fern-availability: beta
  /v2/link/bulk_trigger_historical_pull:
    post:
      tags:
      - link
      summary: Bulk Trigger Historical Pull
      operationId: bulk_trigger_historical_pull_v2_link_bulk_trigger_historical_pull_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkTriggerHistoricalPullBody'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '202':
          description: Accepted
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: bulk_trigger_historical_pull
      x-fern-availability: beta
  /v2/link/bulk_export:
    post:
      tags:
      - link
      summary: Bulk Export Connections
      operationId: bulk_export_connections_v2_link_bulk_export_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkExportConnectionsBody'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkExportConnectionsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: bulk_export
      x-fern-availability: beta
  /v2/link/bulk_pause:
    post:
      tags:
      - link
      summary: Bulk Pause Connections
      operationId: bulk_pause_connections_v2_link_bulk_pause_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkPauseConnectionsBody'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: bulk_pause
      x-fern-availability: beta
  /v2/link/token:
    post:
      tags:
      - link
      summary: Generate Vital Link Token
      description: 'Endpoint to generate a user link token, to be used throughout the vital

        link process. The vital link token is a one time use token, that

        expires after 10 minutes. If you would like vital-link widget to launch

        with a specific provider, pass in a provider in the body. If you would

        like to redirect to a custom url after successful or error connection,

        pass in your own custom redirect_url parameter.'
      operationId: generate_vital_link_token_v2_link_token_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkTokenExchange'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LinkTokenExchangeResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: token
  /v2/link/code/create:
    post:
      tags:
      - link
      summary: Create Token
      description: Generate a token to invite a user of Vital mobile app to your team
      operationId: create_token_v2_link_code_create_post
      parameters:
      - name: user_id
        in: query
        required: true
        schema:
          type: string
          format: uuid
          title: User Id
      - name: expires_at
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          description: When the link code should expire. Defaults to server time plus 1 hour.
          title: Expires At
        description: When the link code should expire. Defaults to server time plus 1 hour.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VitalTokenCreatedResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: code_create
  /v2/link/provider/oauth/{oauth_provider}:
    get:
      tags:
      - link
      summary: Generate Oauth Link Endpoint
      description: This endpoint generates an OAuth link for oauth provider
      operationId: generate_oauth_link
      parameters:
      - name: oauth_provider
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/OAuthProviders'
      - name: x-vital-link-token
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Vital-Link-Token
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Source'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: generate_oauth_link
      security: []
  /v2/link/provider/password/{provider}:
    post:
      tags:
      - link
      summary: Connect Password Provider
      description: This connects auth providers that are password based.
      operationId: connect_password_provider_v2_link_provider_password__provider__post
      parameters:
      - name: provider
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/PasswordProviders'
          title: Providers that require password auth
      - name: x-vital-link-token
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Vital-Link-Token
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IndividualProviderData'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderLinkResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: connect_password_provider
      security: []
  /v2/link/provider/password/{provider}/complete_mfa:
    post:
      tags:
      - link
      summary: Complete Password Provider Mfa
      description: This connects auth providers that are password based.
      operationId: complete_password_provider_mfa_v2_link_provider_password__provider__complete_mfa_post
      parameters:
      - name: provider
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/PasswordProviders'
          title: Providers that require password auth
      - name: x-vital-link-token
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Vital-Link-Token
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CompletePasswordProviderMFABody'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderLinkResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: complete_password_provider_mfa
      security: []
  /v2/link/provider/email/{provider}:
    post:
      tags:
      - link
      summary: Connect Email Auth Provider
      description: This connects auth providers that are email based.
      operationId: connect_email_auth_provider_v2_link_provider_email__provider__post
      parameters:
      - name: provider
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/EmailProviders'
          title: Email providers that require emails freestyle_auth
      - name: x-vital-link-token
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Vital-Link-Token
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EmailProviderAuthLink'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: connect_email_auth_provider
      security: []
  /v2/link/providers:
    get:
      tags:
      - link
      summary: Get Providers
      description: GET List of all available providers given the generated link token.
      operationId: get_providers_v2_link_providers_get
      parameters:
      - name: x-vital-link-token
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Vital-Link-Token
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SourceLink'
                title: Response Get Providers V2 Link Providers Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: get_all_providers
      security: []
  /v2/link/connect/demo:
    post:
      tags:
      - link
      summary: Create Demo Connection
      description: POST Connect the given Vital user to a demo provider.
      operationId: create_demo_connection_v2_link_connect_demo_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DemoConnectionCreationPayload'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DemoConnectionStatus'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: link
      x-fern-sdk-method-name: connect_demo_provider
  /v2/providers:
    get:
      tags:
      - providers
      summary: Get List Of Providers
      description: Get Provider list
      operationId: get_list_of_providers_v2_providers_get
      parameters:
      - name: source_type
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Type
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ClientFacingProviderDetailed'
                title: Response Get List Of Providers V2 Providers Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-fern-sdk-group-name: providers
      x-fern-sdk-method-name: get_all
webhooks:
  daily.data.activity.*:
    post:
      tags:
      - summary
      summary: Activity
      operationId: activitydaily_data_activity___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingActivityChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.sleep.*:
    post:
      tags:
      - summary
      summary: Sleep
      operationId: sleepdaily_data_sleep___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingSleepChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.sleep_cycle.*:
    post:
      tags:
      - summary
      summary: Sleep Cycle
      operationId: sleep_cycledaily_data_sleep_cycle___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingSleepCycleChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.workouts.*:
    post:
      tags:
      - summary
      summary: Workout
      operationId: workoutdaily_data_workouts___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingWorkoutsChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.workout_stream.*:
    post:
      tags:
      - summary
      summary: Workout Stream
      operationId: workout_streamdaily_data_workout_stream___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingWorkoutStreamChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.body.*:
    post:
      tags:
      - summary
      summary: Body
      operationId: bodydaily_data_body___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingBodyChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.profile.*:
    post:
      tags:
      - summary
      summary: Profile
      operationId: profiledaily_data_profile___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingProfileChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.meal.*:
    post:
      tags:
      - summary
      summary: Meal
      operationId: mealdaily_data_meal___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingMealChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.menstrual_cycle.*:
    post:
      tags:
      - summary
      summary: Menstrual Cycle
      operationId: menstrual_cycledaily_data_menstrual_cycle___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingMenstrualCycleChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  daily.data.electrocardiogram.*:
    post:
      tags:
      - summary
      summary: Electrocardiogram
      operationId: electrocardiogramdaily_data_electrocardiogram___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingElectrocardiogramChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.activity.created:
    post:
      tags:
      - summary
      summary: Activity Historical Pull Completed
      operationId: activity_historical_pull_completedhistorical_data_activity_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingActivityHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.sleep.created:
    post:
      tags:
      - summary
      summary: Sleep Historical Pull Completed
      operationId: sleep_historical_pull_completedhistorical_data_sleep_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingSleepHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.sleep_cycle.created:
    post:
      tags:
      - summary
      summary: Sleep Cycle Historical Pull Completed
      operationId: sleep_cycle_historical_pull_completedhistorical_data_sleep_cycle_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingSleepCycleHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.workouts.created:
    post:
      tags:
      - summary
      summary: Workout Historical Pull Completed
      operationId: workout_historical_pull_completedhistorical_data_workouts_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingWorkoutsHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.workout_stream.created:
    post:
      tags:
      - summary
      summary: Workout Stream Historical Pull Completed
      operationId: workout_stream_historical_pull_completedhistorical_data_workout_stream_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingWorkoutStreamHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.body.created:
    post:
      tags:
      - summary
      summary: Body Historical Pull Completed
      operationId: body_historical_pull_completedhistorical_data_body_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingBodyHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.profile.created:
    post:
      tags:
      - summary
      summary: Profile Historical Pull Completed
      operationId: profile_historical_pull_completedhistorical_data_profile_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingProfileHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.meal.created:
    post:
      tags:
      - summary
      summary: Meal Historical Pull Completed
      operationId: meal_historical_pull_completedhistorical_data_meal_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingMealHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.menstrual_cycle.created:
    post:
      tags:
      - summary
      summary: Menstrual Cycle Historical Pull Completed
      operationId: menstrual_cycle_historical_pull_completedhistorical_data_menstrual_cycle_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingMenstrualCycleHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  historical.data.electrocardiogram.created:
    post:
      tags:
      - summary
      summary: Electrocardiogram Historical Pull Completed
      operationId: electrocardiogram_historical_pull_completedhistorical_data_electrocardiogram_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingElectrocardiogramHistoricalPullCompleted'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  continuous_query.result_table.changed:
    post:
      tags:
      - aggregation
      summary: Result Table Changed
      operationId: result_table_changedcontinuous_query_result_table_changed_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingContinuousQueryResultTableChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  provider.connection.created:
    post:
      tags:
      - link
      summary: Provider Connection Created
      operationId: provider_connection_createdprovider_connection_created_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingProviderConnectionCreatedEvent'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  provider.connection.error:
    post:
      tags:
      - link
      summary: Provider Connection Error
      operationId: provider_connection_errorprovider_connection_error_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingProviderConnectionErrorEvent'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  provider.device.*:
    post:
      tags:
      - summary
      summary: Provider Device Created
      operationId: provider_device_createdprovider_device___post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientFacingDeviceChanged'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  labtest.order.*:
    post:
      tags:
      - lab-testing
      

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