Vital logo

Vital

Vital (now operating as Junction, formerly tryVital) is a health-data API platform that gives digital-health, virtual-care, diagnostics, wellness, and EHR/EMR builders a single integration to wearable-device data and nationwide lab testing. Connect 300+ wearables and health devices — Apple HealthKit, Android Health Connect, Oura, Whoop, Garmin, Fitbit, Withings, Dexcom, Freestyle Libre, Withings, Polar, and the rest — through the Vital Link Widget; ingest normalized daily summaries and per-sample timeseries for sleep, activity, body, workouts, heart rate, HRV, glucose, blood pressure, SpO2, ECG, and menstrual cycle; order at-home testkits, at-home phlebotomy, walk-in / Patient Service Center lab collection, and on-site collection across all 50 U.S. states; retrieve structured biomarker results; and run Junction Sense continuous queries to turn raw data into clinically actionable insights. Backed by SOC 2 Type 2, ISO 27001, GDPR-ready, and HIPAA-compliant infrastructure with both US and EU regional deployments.

8 APIs 13 Features
Health DataWearablesLab TestingDigital HealthHealthtechHealthcareHIPAAHealthKitHealth ConnectEHREMRBiomarkersDiagnosticsContinuous Glucose MonitoringSleepActivityHeart RateWebhooksPhlebotomyLab Orders

APIs

Vital Users API

Create, list, get, update, and delete end users on the Junction (Vital) platform. Each user represents a person whose wearable, device, and lab data is ingested under your team....

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, de...

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...

Vital Lab Testing API

Order, fulfill, and retrieve lab tests across a nationwide US lab network spanning all 50 states including NY, NJ, and RI. Covers at-home testkits, at-home phlebotomy, walk-in /...

Vital Lab Report Parser API

Submit existing lab-result PDFs to be parsed and normalized into structured biomarker results. Create a lab-report parser job, then poll for status and the parsed result set — u...

Vital Sense API

Junction Sense — query and aggregation API for per-user health data. Run on-demand aggregate queries across a user's ingested wearable and lab data, fetch the result table for a...

Vital Team API

Read and administer team-level resources on the Junction (Vital) platform. Get team metadata, search team users by uuid or client_user_id, fetch the Svix webhook portal URL for ...

Vital Management API

Programmatically manage all Junction regional and global resources for your organization. Authenticated with a separate x-vital-management-api-key, this API governs organization...

Features

300+ wearable and health-device integrations

Apple HealthKit, Android Health Connect, Samsung Health, Oura, Whoop, Garmin, Fitbit, Withings, Polar, Strava, Wahoo, Cronometer, Ultrahuman, Peloton, Zwift, Hammerhead, Dexcom (G6 and G7), Freestyle Libre (cloud + BLE), Abbott LibreView, 8Sleep, Beurer, Kardia, Accu-Chek, Contour, Omron — all behind a single, normalized schema.

Vital Link Widget and Connect app

Drop-in user-facing UI that handles OAuth, email/password, and mobile-SDK connection flows. Generate a one-time Link token, hand it to the widget or Connect app, and the widget runs the full consent-and-connect handshake for any supported provider.

Nationwide lab-testing network

A single API to order at-home testkits, at-home phlebotomy, walk-in / Patient Service Center collection, and on-site collection across all 50 US states including NY, NJ, and RI — with no test upcharges and built-in operational support (result tracking, reminders, exception handling, 6-day support).

Normalized biomarker and timeseries schema

Every supported device, lab, and provider is mapped onto Vital's normalized schema so your app sees one Sleep, one Activity, one Heart Rate, one Glucose, one Biomarker — regardless of which Fitbit / Garmin / Quest / Labcorp source it came from.

Junction Sense — continuous queries

Define a continuous aggregate query once (e.g. "weekly HRV baseline", "monthly glucose time-in-range") and Junction recomputes it as new data lands. Read the materialized result table per user or run an ad-hoc query.

Webhooks with Svix-backed delivery

Daily-data created/updated events for every wearable resource, historical-pull completion, lab-test orders + appointments + critical results, lab-report parser status, provider connection events, and continuous-query result changes. Backed by Svix for retry, signing, and a per-team management portal.

ETL pipelines (BYO destination)

Pipe ingested data directly into your own infrastructure — Azure Event Hubs, Google Cloud Pub/Sub, or RabbitMQ — instead of (or in addition to) webhooks. Configurable per team.

US and EU regional deployments

Pick your data residency — production and sandbox base URLs are split into api.us.junction.com and api.eu.junction.com. Regional API key prefixes (pk_us, pk_eu, sk_us, sk_eu) prevent cross-region key reuse.

Mobile SDKs for HealthKit and Health Connect

First-party Swift, Kotlin, Flutter, and React Native SDKs that wrap Apple HealthKit and Android Health Connect, plus Bluetooth Devices SDKs for direct device pairing (Accu-Chek, Beurer BLE, Contour, Freestyle Libre BLE, Omron BLE).

Typed server SDKs (Fern-generated)

Python, TypeScript/Node, Go, and Java SDKs are generated from a single Fern API spec — keeping the SDK surface in lockstep with the underlying OpenAPI 3.1 definition.

HIPAA, SOC 2 Type 2, ISO 27001, GDPR-ready

BAA-eligible HIPAA infrastructure, SOC 2 Type 2 and ISO 27001 attestations, plus EU-region GDPR-aligned deployment. Suitable for regulated digital-health, virtual-care, and diagnostics workloads.

Sandbox with synthetic data

Dedicated sandbox environment (api.sandbox.us.junction.com / .eu.) with sk_* API keys, demo providers, and synthetic user lifecycle simulation so you can build and test without touching real PHI.

Lab report parser

Submit existing lab-result PDFs (from other labs, historical patient records) and Vital normalizes them into the same biomarker schema as Junction-fulfilled orders.

Use Cases

Virtual-first / digital-health clinics

Add wearable monitoring and ordering of standard lab panels to telehealth visits without integrating dozens of device APIs and lab vendors.

Consumer diagnostics and wellness platforms

White-label at-home testkits, deliver results in-app, and pair them with continuous wearable context (sleep, HRV, glucose) to drive coaching and lifestyle programs.

EHR / EMR and healthcare SaaS providers

Embed Junction as a labs-and-devices module inside an EHR/EMR product so customers get ordering, results, and wearable data without leaving the chart.

Cardiometabolic and CGM programs

Pull continuous-glucose-monitor data from Dexcom, Freestyle Libre, and Abbott LibreView; pair with lab biomarkers (HbA1c, lipid panel, fasting insulin); compute glucose-variability metrics with Sense.

Sleep, recovery, and performance apps

Normalized sleep, sleep-cycle, HRV, workout, and recovery data from Oura, Whoop, Garmin, Fitbit, Apple Watch, and 25+ other devices in one schema.

Women's-health and fertility platforms

Menstrual-cycle, basal-body-temperature, and hormone-panel lab data combined for cycle tracking and fertility coaching.

Population-health and research cohorts

Backfill historical wearable + lab data across thousands of users via bulk-import, bulk-pull, and historical-pull endpoints. Push to ETL pipelines for in-house analytics.

AI agents over patient health data

Expose normalized wearable + lab data to AI agents (via Naftiko capabilities or MCP) so agents can reason over a patient's biomarkers, sleep, and activity without bespoke per-source adapters.

Integrations

Apple HealthKit

First-class iOS Swift SDK plus Flutter / React Native bindings stream HealthKit categories (sleep, activity, HR, HRV, workouts, ECG, glucose, blood pressure, body) into the Vital normalized schema.

Android Health Connect

Kotlin / Flutter / React Native SDKs read from Android Health Connect — Samsung Health, Google Fit successor, Fitbit Android, and other Health Connect publishers — through one bridge.

Samsung Health

Read Samsung-Health data on Android via the Health SDK without writing Samsung-Health-specific code.

Oura, Whoop, Garmin, Fitbit, Withings, Polar

OAuth-based cloud providers, all behind one Link Widget flow and one normalized data schema.

Dexcom and Freestyle Libre (cloud + BLE)

Continuous-glucose monitoring via Dexcom cloud (v3), Freestyle Libre cloud, Abbott LibreView, and direct Bluetooth Low Energy for newer Libre models. Normalized into the glucose timeseries resource.

8Sleep, Peloton, Zwift, Hammerhead

Non-OAuth cloud providers covering connected mattresses and indoor-training platforms.

Strava, Wahoo, Cronometer, Ultrahuman

Additional OAuth providers covering endurance training, nutrition logging, and metabolic wearables.

Bluetooth devices via Devices SDK

Accu-Chek, Beurer BLE, Contour, Freestyle Libre BLE, Omron BLE — paired directly to the user's phone through the Vital Devices SDK and reported back through the same API.

ETL destinations (Azure / GCP / RabbitMQ)

Forward ingested data to Azure Event Hubs, Google Cloud Pub/Sub, or RabbitMQ for in-house analytics pipelines.

Anthropic Claude

Junction's normalized health-data API is a natural fit as a tool surface for Anthropic Claude agents — pair the Vital OpenAPI specs in this repo with Claude tool calling (or Naftiko capabilities / MCP servers) to let Claude reason over a patient's sleep, HRV, glucose, lab biomarkers, and order new lab panels under appropriate medical oversight.

Svix

Vital's webhook delivery is Svix-backed — your team can be issued a Svix management portal URL for managing webhook endpoints, signing secrets, and delivery history.

Fern

The Junction OpenAPI definition and the Python/TypeScript/Go/Java server SDKs are generated with Fern from a single source of truth (github.com/tryVital/vital-fern-api).

Solutions

For digital-health builders

One API for the two hardest health-data integrations — wearables and labs — so a small team can ship a clinical-grade product without negotiating individual vendor contracts.

For diagnostics companies

Add a software layer (ordering, results, patient app) over a managed nationwide lab network without building lab-vendor integrations or running a fulfillment ops team in-house.

For platforms adding wearable data

Replace per-device SDKs and OAuth flows with one Link Widget and one normalized timeseries + summary schema covering 300+ devices.

For enterprises

SOC 2 Type 2, ISO 27001, HIPAA, GDPR-ready, US/EU regional deployments, white-label app branding, uptime SLAs, prioritized integrations, ETL pipelines, and Analytics API access on the Scale plan.

Semantic Vocabularies

Vital Io Context

31 classes · 9 properties

JSON-LD

API Governance Rules

Vital API Rules

9 rules · 3 errors 5 warnings 1 info

SPECTRAL

Resources

🔗
PostmanWorkspace
PostmanWorkspace
🔗
ArazzoWorkflows
ArazzoWorkflows
🌐
Portal
Portal
🔗
Documentation
Documentation
🔗
APIReference
APIReference
🚀
Quickstart
Quickstart
🚀
GettingStarted
GettingStarted
🌐
Console
Console
📝
SignUp
SignUp
📝
SignIn
SignIn
💰
Pricing
Pricing
🟢
StatusPage
StatusPage
📄
ChangeLog
ChangeLog
🔗
RateLimiting
RateLimiting
🔗
Documentation
Documentation
🔑
Authentication
Authentication
🔗
Webhooks
Webhooks
🔗
Documentation
Documentation
🔗
Security
Security
👥
GitHubOrganization
GitHubOrganization
👥
GitHubRepository
GitHubRepository
👥
GitHubRepository
GitHubRepository
🔗
SampleApp
SampleApp
🔗
OpenAPI
OpenAPI
🔗
OpenAPI
OpenAPI
🔗
OpenAPI
OpenAPI
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
📦
SDK
SDK
🔗
SampleApp
SampleApp
🔗
SpectralRules
SpectralRules
🔗
Vocabulary
Vocabulary
🔗
JSON-LD
JSON-LD
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps

Sources

Raw ↑
aid: vital-io
name: Vital
description: >-
  Vital (now operating as Junction, formerly tryVital) is a health-data API platform that gives digital-health,
  virtual-care, diagnostics, wellness, and EHR/EMR builders a single integration to wearable-device data and nationwide
  lab testing. Connect 300+ wearables and health devices — Apple HealthKit, Android Health Connect, Oura, Whoop, Garmin,
  Fitbit, Withings, Dexcom, Freestyle Libre, Withings, Polar, and the rest — through the Vital Link Widget; ingest
  normalized daily summaries and per-sample timeseries for sleep, activity, body, workouts, heart rate, HRV, glucose,
  blood pressure, SpO2, ECG, and menstrual cycle; order at-home testkits, at-home phlebotomy, walk-in / Patient Service
  Center lab collection, and on-site collection across all 50 U.S. states; retrieve structured biomarker results; and
  run Junction Sense continuous queries to turn raw data into clinically actionable insights. Backed by SOC 2 Type 2,
  ISO 27001, GDPR-ready, and HIPAA-compliant infrastructure with both US and EU regional deployments.
type: Index
position: Consumer
access: 3rd-Party
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
tags:
  - Health Data
  - Wearables
  - Lab Testing
  - Digital Health
  - Healthtech
  - Healthcare
  - HIPAA
  - HealthKit
  - Health Connect
  - EHR
  - EMR
  - Biomarkers
  - Diagnostics
  - Continuous Glucose Monitoring
  - Sleep
  - Activity
  - Heart Rate
  - Webhooks
  - Phlebotomy
  - Lab Orders
created: '2026-05-25'
modified: '2026-05-25'
url: https://raw.githubusercontent.com/api-evangelist/vital-io/refs/heads/main/apis.yml
specificationVersion: '0.19'
kind: company
apis:
  - aid: vital-io:vital-users-api
    name: Vital Users API
    tags:
      - Users
      - User Management
      - Demographics
      - Insurance
      - Sign-In Tokens
    humanURL: https://docs.junction.com/api-details/junction-api
    baseURL: https://api.us.junction.com
    properties:
      - url: https://docs.junction.com/api-details/junction-api
        type: Documentation
      - url: openapi/vital-users-api-openapi.yml
        type: OpenAPI
      - url: json-schema/vital-user-schema.json
        type: JSONSchema
      - url: examples/vital-create-user-example.json
        type: Example
    description: >-
      Create, list, get, update, and delete end users on the Junction (Vital) platform. Each user represents a person
      whose wearable, device, and lab data is ingested under your team. Manage user demographics, user insurance
      details, sign-in tokens for the Junction app, portal URLs, user-resolve by client_user_id, refresh of all
      connected providers for a user, listing of a user's connections, and soft-delete / undo-delete flows.
  - aid: vital-io:vital-link-api
    name: Vital Link API
    tags:
      - Link
      - Provider Connections
      - OAuth
      - Wearables
      - Bulk Operations
    humanURL: https://docs.junction.com/wearables/providers/introduction
    baseURL: https://api.us.junction.com
    properties:
      - url: https://docs.junction.com/wearables/providers/introduction
        type: Documentation
      - url: openapi/vital-link-api-openapi.yml
        type: OpenAPI
      - url: json-schema/vital-provider-schema.json
        type: JSONSchema
      - url: examples/vital-link-token-example.json
        type: Example
    description: >-
      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.
  - aid: vital-io:vital-wearables-api
    name: Vital Wearables Data API
    tags:
      - Wearables
      - Timeseries
      - Summary
      - Sleep
      - Activity
      - Body
      - Workouts
      - Heart Rate
      - HRV
      - Glucose
      - Blood Pressure
      - SpO2
      - ECG
    humanURL: https://docs.junction.com/api-details/junction-api
    baseURL: https://api.us.junction.com
    properties:
      - url: https://docs.junction.com/api-details/junction-api
        type: Documentation
      - url: openapi/vital-wearables-api-openapi.yml
        type: OpenAPI
      - url: json-schema/vital-sleep-summary-schema.json
        type: JSONSchema
      - url: json-schema/vital-activity-summary-schema.json
        type: JSONSchema
      - url: json-schema/vital-heart-rate-timeseries-schema.json
        type: JSONSchema
      - url: examples/vital-sleep-summary-example.json
        type: Example
      - url: examples/vital-heart-rate-timeseries-example.json
        type: Example
    description: >-
      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.
  - aid: vital-io:vital-lab-testing-api
    name: Vital Lab Testing API
    tags:
      - Lab Testing
      - Lab Orders
      - Biomarkers
      - Phlebotomy
      - Testkits
      - PSC
      - Insurance
      - Diagnosis
      - Compendium
    humanURL: https://docs.junction.com/api-details/junction-api
    baseURL: https://api.us.junction.com
    properties:
      - url: https://docs.junction.com/api-details/junction-api
        type: Documentation
      - url: openapi/vital-lab-testing-api-openapi.yml
        type: OpenAPI
      - url: json-schema/vital-lab-order-schema.json
        type: JSONSchema
      - url: json-schema/vital-lab-result-schema.json
        type: JSONSchema
      - url: examples/vital-create-order-example.json
        type: Example
      - url: examples/vital-lab-result-example.json
        type: Example
    description: >-
      Order, fulfill, and retrieve lab tests across a nationwide US lab network spanning all 50 states including NY, NJ,
      and RI. Covers at-home testkits, at-home phlebotomy, walk-in / Patient Service Center collection, and on-site
      collection. Endpoints handle order creation and lifecycle (create, get, update, cancel, import, register,
      simulate), appointment management (availability, booking, cancellation, rescheduling for both phlebotomy and PSC),
      order transactions, results (JSON and PDF), the lab-test compendium (search + convert), payor and
      insurance/diagnosis search, ABN forms, requisition and label PDFs, collection instructions, and team lab accounts.
  - aid: vital-io:vital-lab-report-parser-api
    name: Vital Lab Report Parser API
    tags:
      - Lab Reports
      - PDF Parsing
      - Biomarkers
      - Document AI
    humanURL: https://docs.junction.com/api-details/junction-api
    baseURL: https://api.us.junction.com
    properties:
      - url: https://docs.junction.com/api-details/junction-api
        type: Documentation
      - url: openapi/vital-lab-report-parser-api-openapi.yml
        type: OpenAPI
    description: >-
      Submit existing lab-result PDFs to be parsed and normalized into structured biomarker results. Create a lab-report
      parser job, then poll for status and the parsed result set — useful for back-loading historical patient records or
      for normalizing results from external labs into the Junction biomarker schema.
  - aid: vital-io:vital-sense-api
    name: Vital Sense API
    tags:
      - Sense
      - Continuous Queries
      - Aggregation
      - Analytics
      - Insights
    humanURL: https://docs.junction.com/api-details/junction-api
    baseURL: https://api.us.junction.com
    properties:
      - url: https://docs.junction.com/api-details/junction-api
        type: Documentation
      - url: openapi/vital-sense-api-openapi.yml
        type: OpenAPI
    description: >-
      Junction Sense — query and aggregation API for per-user health data. Run on-demand aggregate queries across a
      user's ingested wearable and lab data, fetch the result table for a defined continuous query, and read
      continuous-query task-execution history. Sense turns raw ingest into clinically meaningful metrics (sleep debt,
      HRV trends, glucose variability, etc.) without you owning the aggregation infrastructure.
  - aid: vital-io:vital-team-api
    name: Vital Team API
    tags:
      - Team
      - Administration
      - Webhooks
      - Introspection
      - Configuration
    humanURL: https://docs.junction.com/api-details/junction-management-api
    baseURL: https://api.us.junction.com
    properties:
      - url: https://docs.junction.com/api-details/junction-management-api
        type: Documentation
      - url: openapi/vital-team-api-openapi.yml
        type: OpenAPI
    description: >-
      Read and administer team-level resources on the Junction (Vital) platform. Get team metadata, search team users by
      uuid or client_user_id, fetch the Svix webhook portal URL for managing webhook subscriptions, and introspect
      team-level historical pulls and per-resource availability for your team's users.
  - aid: vital-io:vital-management-api
    name: Vital Management API
    tags:
      - Management
      - Organizations
      - Teams
      - API Keys
      - ETL Pipelines
      - Webhooks
    humanURL: https://docs.junction.com/api-details/junction-management-api
    baseURL: https://api.us.junction.com
    properties:
      - url: https://docs.junction.com/api-details/junction-management-api
        type: Documentation
    description: >-
      Programmatically manage all Junction regional and global resources for your organization. Authenticated with a
      separate x-vital-management-api-key, this API governs organizations, teams (create, update, delete, list), team
      and management API keys, team members and invitations, custom OAuth credentials, data-pull preferences, ETL
      pipeline configuration (Azure Event Hubs, Google Cloud Pub/Sub, RabbitMQ), webhook subscriptions (create, list,
      rotate secret, update headers, patch, delete), scope requirements, physician assignments, and lab-account team
      assignments.
common:
  - type: PostmanWorkspace
    url: https://www.postman.com/kinlaneapi/vital/overview
  - type: ArazzoWorkflows
    url: arazzo/
    workflows:
      - url: arazzo/vital-io-at-home-phlebotomy-booking-workflow.yml
        name: Vital Schedule an At-Home Phlebotomy Draw
        summary: Confirm phlebotomy coverage for an address, place an at-home order, find a slot, and book it.
      - url: arazzo/vital-io-await-order-results-workflow.yml
        name: Vital Await Lab Order Completion and Retrieve Results
        summary: Poll an existing order until it completes, then pull its result metadata and raw results.
      - url: arazzo/vital-io-browse-lab-tests-markers-workflow.yml
        name: Vital Browse Lab Tests and Inspect Markers
        summary: List your team's lab tests, fetch one in detail, and enumerate its biomarkers.
      - url: arazzo/vital-io-cancel-order-notify-portal-workflow.yml
        name: Vital Cancel a Lab Order and Send the User a Portal Link
        summary: Cancel an order, confirm the cancellation, then mint a communications portal URL deeplinked to it.
      - url: arazzo/vital-io-create-order-poll-status-workflow.yml
        name: Vital Create a Lab Order and Poll Until Resolved
        summary: Place an order set lab order for a user and poll its lifecycle status until it completes, cancels, or fails.
      - url: arazzo/vital-io-demo-connection-verify-sources-workflow.yml
        name: Vital Connect a Demo Provider and Verify Connected Sources
        summary: Create a user, attach a demo provider, then confirm the connection landed on the user record.
      - url: arazzo/vital-io-mobile-signin-token-handoff-workflow.yml
        name: Vital Provision a User and Hand Off a Mobile Sign-In Token
        summary: Create a Vital user, mint a mobile sign-in token, and read back the user's connected providers.
      - url: arazzo/vital-io-onboard-user-connect-wearable-workflow.yml
        name: Vital Onboard a User and Connect a Wearable
        summary: Create a Vital user, mint a Link token, and surface the available providers to connect.
      - url: arazzo/vital-io-testkit-order-register-workflow.yml
        name: Vital Create and Register a Lab Testkit Order
        summary: Create an unregistered testkit order, register it against a sample, then read the order back.
      - url: arazzo/vital-io-user-device-inventory-workflow.yml
        name: Vital Inventory a User's Connected Devices
        summary: Resolve a user by client_user_id, list their devices, and fetch the first device in detail.
  - url: https://www.junction.com
    name: Vital / Junction
    type: Portal
  - url: https://docs.junction.com
    name: Junction Documentation
    type: Documentation
  - url: https://docs.junction.com/api-details/junction-api
    name: Junction API Reference
    type: APIReference
  - url: https://docs.junction.com/home/quickstart
    name: Junction Quickstart
    type: Quickstart
  - url: https://docs.junction.com/home/welcome
    name: Junction Welcome / Overview
    type: GettingStarted
  - url: https://app.junction.com
    name: Junction Dashboard
    type: Console
  - url: https://app.junction.com/signup
    name: Junction Sign Up
    type: SignUp
  - url: https://app.junction.com/login
    name: Junction Sign In
    type: SignIn
  - url: https://www.tryvital.com/pricing
    name: Junction Pricing
    type: Pricing
  - url: https://status.tryvital.io
    name: Junction Status
    type: StatusPage
  - url: https://docs.junction.com/home/api/changelog
    name: Junction Changelog
    type: ChangeLog
  - url: https://docs.junction.com/home/rate-limiting
    name: Rate Limiting
    type: RateLimiting
  - url: https://docs.junction.com/home/regions
    name: Regions (US / EU)
    type: Documentation
  - url: https://docs.junction.com/home/authentication
    name: Authentication
    type: Authentication
  - url: https://docs.junction.com/webhooks/introduction
    name: Webhooks
    type: Webhooks
  - url: https://docs.junction.com/wearables/providers/introduction
    name: Supported Wearable Providers (300+)
    type: Documentation
  - url: https://docs.junction.com/home/security
    name: Security and Compliance
    type: Security
  - url: https://github.com/tryVital
    name: tryVital on GitHub
    type: GitHubOrganization
  - url: https://github.com/tryVital/vital-fern-api
    name: vital-fern-api (canonical OpenAPI)
    type: GitHubRepository
  - url: https://github.com/tryVital/docs
    name: Junction Docs (open source)
    type: GitHubRepository
  - url: https://github.com/tryVital/quickstart
    name: Junction Quickstart App
    type: SampleApp
  - url: https://raw.githubusercontent.com/tryVital/vital-fern-api/main/fern/openapi/openapi.json
    name: Junction OpenAPI (upstream)
    type: OpenAPI
  - url: openapi/vital-openapi-original.json
    name: Junction Platform OpenAPI (mirror, JSON)
    type: OpenAPI
  - url: openapi/vital-openapi-original.yml
    name: Junction Platform OpenAPI (mirror, YAML)
    type: OpenAPI
  - url: https://www.npmjs.com/package/@tryvital/vital-node
    name: '@tryvital/vital-node (Node / TypeScript SDK)'
    type: SDK
  - url: https://www.npmjs.com/package/@tryvital/vital-link
    name: '@tryvital/vital-link (Link Widget JS)'
    type: SDK
  - url: https://www.npmjs.com/package/@tryvital/vital-core-react-native
    name: '@tryvital/vital-core-react-native'
    type: SDK
  - url: https://www.npmjs.com/package/@tryvital/vital-devices-react-native
    name: '@tryvital/vital-devices-react-native'
    type: SDK
  - url: https://www.npmjs.com/package/@tryvital/vital-health-react-native
    name: '@tryvital/vital-health-react-native'
    type: SDK
  - url: https://pypi.org/project/vital/
    name: vital (Python SDK on PyPI)
    type: SDK
  - url: https://github.com/tryVital/vital-python
    name: vital-python (Python SDK source)
    type: SDK
  - url: https://github.com/tryVital/vital-node
    name: vital-node (Node SDK source)
    type: SDK
  - url: https://github.com/tryVital/vital-go
    name: vital-go (Go SDK)
    type: SDK
  - url: https://github.com/tryVital/vital-java
    name: vital-java (Java SDK)
    type: SDK
  - url: https://github.com/tryVital/vital-ios
    name: vital-ios (iOS Swift SDK)
    type: SDK
  - url: https://github.com/tryVital/vital-android
    name: vital-android (Android Kotlin SDK)
    type: SDK
  - url: https://github.com/tryVital/vital-flutter
    name: vital-flutter (Flutter SDK)
    type: SDK
  - url: https://github.com/tryVital/vital-react-native
    name: vital-react-native (legacy)
    type: SDK
  - url: https://github.com/tryVital/vital-connect-rn
    name: vital-connect-rn (React Native Connect app)
    type: SampleApp
  - url: rules/vital-rules.yml
    name: Vital Spectral Rules
    type: SpectralRules
  - url: vocabulary/vital-io-vocabulary.yml
    name: Vital Platform Vocabulary
    type: Vocabulary
  - url: json-ld/vital-io-context.jsonld
    name: Vital JSON-LD Context
    type: JSON-LD
  - url: plans/vital-io-plans-pricing.yml
    name: Vital Plans and Pricing (API Commons)
    type: Plans
  - url: rate-limits/vital-io-rate-limits.yml
    name: Vital Rate Limits (API Commons)
    type: RateLimits
  - url: finops/vital-io-finops.yml
    name: Vital FinOps (FOCUS-aligned)
    type: FinOps
  - type: Features
    data:
      - name: 300+ wearable and health-device integrations
        description: >-
          Apple HealthKit, Android Health Connect, Samsung Health, Oura, Whoop, Garmin, Fitbit, Withings, Polar, Strava,
          Wahoo, Cronometer, Ultrahuman, Peloton, Zwift, Hammerhead, Dexcom (G6 and G7), Freestyle Libre (cloud + BLE),
          Abbott LibreView, 8Sleep, Beurer, Kardia, Accu-Chek, Contour, Omron — all behind a single, normalized schema.
      - name: Vital Link Widget and Connect app
        description: >-
          Drop-in user-facing UI that handles OAuth, email/password, and mobile-SDK connection flows. Generate a
          one-time Link token, hand it to the widget or Connect app, and the widget runs the full consent-and-connect
          handshake for any supported provider.
      - name: Nationwide lab-testing network
        description: >-
          A single API to order at-home testkits, at-home phlebotomy, walk-in / Patient Service Center collection, and
          on-site collection across all 50 US states including NY, NJ, and RI — with no test upcharges and built-in
          operational support (result tracking, reminders, exception handling, 6-day support).
      - name: Normalized biomarker and timeseries schema
        description: >-
          Every supported device, lab, and provider is mapped onto Vital's normalized schema so your app sees one Sleep,
          one Activity, one Heart Rate, one Glucose, one Biomarker — regardless of which Fitbit / Garmin / Quest /
          Labcorp source it came from.
      - name: Junction Sense — continuous queries
        description: >-
          Define a continuous aggregate query once (e.g. "weekly HRV baseline", "monthly glucose time-in-range") and
          Junction recomputes it as new data lands. Read the materialized result table per user or run an ad-hoc query.
      - name: Webhooks with Svix-backed delivery
        description: >-
          Daily-data created/updated events for every wearable resource, historical-pull completion, lab-test orders +
          appointments + critical results, lab-report parser status, provider connection events, and continuous-query
          result changes. Backed by Svix for retry, signing, and a per-team management portal.
      - name: ETL pipelines (BYO destination)
        description: >-
          Pipe ingested data directly into your own infrastructure — Azure Event Hubs, Google Cloud Pub/Sub, or RabbitMQ
          — instead of (or in addition to) webhooks. Configurable per team.
      - name: US and EU regional deployments
        description: >-
          Pick your data residency — production and sandbox base URLs are split into api.us.junction.com and
          api.eu.junction.com. Regional API key prefixes (pk_us, pk_eu, sk_us, sk_eu) prevent cross-region key reuse.
      - name: Mobile SDKs for HealthKit and Health Connect
        description: >-
          First-party Swift, Kotlin, Flutter, and React Native SDKs that wrap Apple HealthKit and Android Health
          Connect, plus Bluetooth Devices SDKs for direct device pairing (Accu-Chek, Beurer BLE, Contour, Freestyle
          Libre BLE, Omron BLE).
      - name: Typed server SDKs (Fern-generated)
        description: >-
          Python, TypeScript/Node, Go, and Java SDKs are generated from a single Fern API spec — keeping the SDK surface
          in lockstep with the underlying OpenAPI 3.1 definition.
      - name: HIPAA, SOC 2 Type 2, ISO 27001, GDPR-ready
        description: >-
          BAA-eligible HIPAA infrastructure, SOC 2 Type 2 and ISO 27001 attestations, plus EU-region GDPR-aligned
          deployment. Suitable for regulated digital-health, virtual-care, and diagnostics workloads.
      - name: Sandbox with synthetic data
        description: >-
          Dedicated sandbox environment (api.sandbox.us.junction.com / .eu.) with sk_* API keys, demo providers, and
          synthetic user lifecycle simulation so you can build and test without touching real PHI.
      - name: Lab report parser
        description: >-
          Submit existing lab-result PDFs (from other labs, historical patient records) and Vital normalizes them into
          the same biomarker schema as Junction-fulfilled orders.
  - type: UseCases
    data:
      - name: Virtual-first / digital-health clinics
        description: >-
          Add wearable monitoring and ordering of standard lab panels to telehealth visits without integrating dozens of
          device APIs and lab vendors.
      - name: Consumer diagnostics and wellness platforms
        description: >-
          White-label at-home testkits, deliver results in-app, and pair them with continuous wearable context (sleep,
          HRV, glucose) to drive coaching and lifestyle programs.
      - name: EHR / EMR and healthcare SaaS providers
        description: >-
          Embed Junction as a labs-and-devices module inside an EHR/EMR product so customers get ordering, results, and
          wearable data without leaving the chart.
      - name: Cardiometabolic and CGM programs
        description: >-
          Pull continuous-glucose-monitor data from Dexcom, Freestyle Libre, and Abbott LibreView; pair with lab
          biomarkers (HbA1c, lipid panel, fasting insulin); compute glucose-variability metrics with Sense.
      - name: Sleep, recovery, and performance apps
        description: >-
          Normalized sleep, sleep-cycle, HRV, workout, and recovery data from Oura, Whoop, Garmin, Fitbit, Apple Watch,
          and 25+ other devices in one schema.
      - name: Women's-health and fertility platforms
        description: >-
          Menstrual-cycle, basal-body-temperature, and hormone-panel lab data combined for cycle tracking and fertility
          coaching.
      - name: Population-health and research cohorts
        description: >-
          Backfill historical wearable + lab data across thousands of users via bulk-import, bulk-pull, and
          historical-pull endpoints. Push to ETL pipelines for in-house analytics.
      - name: AI agents over patient health data
        description: >-
          Expose normalized wearable + lab data to AI agents (via Naftiko capabilities or MCP) so agents can reason over
          a patient's biomarkers, sleep, and activity without bespoke per-source adapters.
  - type: Integrations
    data:
      - name: Apple HealthKit
        description: >-
          First-class iOS Swift SDK plus Flutter / React Native bindings stream HealthKit categories (sleep, activity,
          HR, HRV, workouts, ECG, glucose, blood pressure, body) into the Vital normalized schema.
      - name: Android Health Connect
        description: >-
          Kotlin / Flutter / React Native SDKs read from Android Health Connect — Samsung Health, Google Fit successor,
          Fitbit Android, and other Health Connect publishers — through one bridge.
      - name: Samsung Health
        description: Read Samsung-Health data on Android via the Health SDK without writing Samsung-Health-specific code.
      - name: Oura, Whoop, Garmin, Fitbit, Withings, Polar
        description: OAuth-based cloud providers, all behind one Link Widget flow and one normalized data schema.
      - name: Dexcom and Freestyle Libre (cloud + BLE)
        description: >-
          Continuous-glucose monitoring via Dexcom cloud (v3), Freestyle Libre cloud, Abbott LibreView, and direct
          Bluetooth Low Energy for newer Libre models. Normalized into the glucose timeseries resource.
      - name: 8Sleep, Peloton, Zwift, Hammerhead
        description: Non-OAuth cloud providers covering connected mattresses and indoor-training platforms.
      - name: Strava, Wahoo, Cronometer, Ultrahuman
        description: Additional OAuth providers covering endurance training, nutrition logging, and metabolic wearables.
      - name: Bluetooth devices via Devices SDK
        description: >-
          Accu-Chek, Beurer BLE, Contour, Freestyle Libre BLE, Omron BLE — paired directly to the user's phone through
          the Vital Devices SDK and reported back through the same API.
      - name: ETL destinations (Azure / GCP / RabbitMQ)
        description: Forward ingested data to Azure Event Hubs, Google Cloud Pub/Sub, or RabbitMQ for in-house analytics pipelines.
      - name: Anthropic Claude
        description: >-
          Junction's normalized health-data API is a natural fit as a tool surface for Anthropic Claude agents — pair
          the Vital OpenAPI specs in this repo with Claude tool calling (or Naftiko capabilities / MCP servers) to let
          Claude reason over a patient's sleep, HRV, glucose, lab biomarkers, and order new lab panels under appropriate
          medical oversight.
      - name: Svix
        description: >-
          Vital's webhook delivery is Svix-backed — your team can be issued a Svix management portal URL for managing
          webhook endpoints, signing secrets, and delivery history.
      - name: Fern
        description: >-
          The Junction OpenAPI definition and the Python/TypeScript/Go/Java server SDKs are generated with Fern from a
          single source of truth (github.com/tryVital/vital-fern-api).
  - type: Solutions
    data:
      - name: For digital-health builders
        description: >-
          One API for the two hardest health-data integrations — wearables and labs — so a small team can ship a
          clinical-grade product without negotiating individual vendor contracts.
      - name: For diagnostics companies
        description: >-
          Add a software layer (ordering, results, patient app) over a managed nationwide lab network without building
          lab-vendor integrations or running a fulfillment ops team in-house.
      - name: For platforms adding wearable data
        description: >-
          Replace per-device SDKs and OAuth flows with one Link Widget and one normalized timeseries + summary schema
          covering 300+ devices.
      - name: For enterprises
        description: >-
          SOC 2 Type 2, ISO 27001, HIPAA, GDPR-ready, US/EU regional deployments, white-label app branding, uptime SLAs,
          prioritized integrations, ETL pipelines, and Analytics API access on the Scale plan.
maintainers:
  - FN: Kin Lane
    email: info@apievangelist.com