# Junction: Devices

## Devices

- [Devices / Event Catalog (175 pages)](https://docs.junction.com/_llms/devices/event-catalog.md): Documentation for Devices / Event Catalog.

### Product Guides

#### Bring Your Own OAuth

- [Bring Your Own OAuth](https://docs.junction.com/wearables/connecting-providers/bring-your-own-oauth/overview.md): Use Bring Your Own OAuth (BYOO) to connect wearable providers through Junction using your own branded OAuth client credentials.
- [Hosting OAuth Callbacks on Your Own Domain](https://docs.junction.com/wearables/connecting-providers/bring-your-own-oauth/callback-endpoints.md): Host OAuth callback endpoints on your own domain to satisfy provider redirect URI requirements and forward responses to Junction.
- [Sharing Credentials](https://docs.junction.com/wearables/connecting-providers/bring-your-own-oauth/sharing-credentials.md): Share existing OAuth client credentials between Junction BYOO and your own systems when providers allow only one redirect URI.

#### Junction iOS App

- [Introduction](https://docs.junction.com/wearables/vital-app/introduction.md): Use the Junction Connect iOS app to sync Apple HealthKit data to Junction without building a custom iOS app, using a code-based pairing flow.

#### Providers

- [Historical Data Pull Range](https://docs.junction.com/wearables/providers/historical-data-pull-range.md): Customize how much historical data Junction fetches when a new provider is connected using Team Data Pull Preferences per provider.
- [Resources](https://docs.junction.com/wearables/providers/resources.md): Understand the two wearable data categories in Junction: Summaries for daily aggregates and Timeseries for granular time-stamped measurements.
- [Supported Providers](https://docs.junction.com/wearables/providers/introduction.md): Browse all 300+ supported wearable device providers organized by connection type, with BYOO availability and developer program details.
- [Synthetic Data (Sandbox)](https://docs.junction.com/wearables/providers/test_data.md): Using demo users to build and test your Junction integration.
- [Update Frequency](https://docs.junction.com/wearables/providers/update-frequency.md): Understand how Junction discovers new wearable data through push, polling, and hybrid update models across cloud-based providers.

#### Connecting Providers

- [Building a Custom Widget](https://docs.junction.com/wearables/connecting-providers/custom_widget.md): Build a custom Link widget UI to connect wearable providers as an alternative to the default Junction Link hosted widget.
- [Handle Connection Errors](https://docs.junction.com/wearables/connecting-providers/connection-errors.md): Use connection lifecycle webhooks and the Junction API to detect, reconcile, and recover provider connections that require user action.
- [Introduction to Link](https://docs.junction.com/wearables/connecting-providers/introduction.md): Introduction to Junction Link, the mechanism for connecting user wearable accounts to Junction as a hosted widget or custom API integration.
- [Launching Link](https://docs.junction.com/wearables/connecting-providers/launching_link.md): Launch Junction Link by creating a Link Token on your backend and using it to open the provider connection flow in your application.
- [Link Errors](https://docs.junction.com/wearables/connecting-providers/errors.md): Handle errors from Junction Link including OAuth flow query parameter errors and JSON response errors for password and email providers.
- [Link Flow](https://docs.junction.com/wearables/connecting-providers/link_flow.md): Understand the end-to-end Junction Link flow for connecting wearable devices, from API key setup through Link Token generation.
- [Provider Types](https://docs.junction.com/wearables/connecting-providers/auth_types.md): Browse all supported wearable providers grouped by authentication type: OAuth, email, and email plus password connections.

#### Device Data

- [Data Attributions](https://docs.junction.com/wearables/providers/data-attributions.md): Understand the Source Type taxonomy that identifies how wearable data was collected, such as from a watch, phone, ring, or companion app.
- [Data Ingestion Bounds](https://docs.junction.com/wearables/providers/data-ingestion-bounds.md): Set per-user data ingestion start and end dates to control the historical pull range and automatically pause connections after expiry.
- [Heart Rate Zones](https://docs.junction.com/wearables/providers/heart-rate-zones.md): Learn how Junction calculates heart rate zones using percentage brackets of maximum heart rate with configurable fallback birth dates.
- [Primary Key](https://docs.junction.com/wearables/providers/data-primary-key.md): Reference for the primary key structure used to uniquely identify summary and timeseries data records in the Junction data model.
- [Timestamps and Time Zones](https://docs.junction.com/wearables/providers/timestamps-and-time-zones.md): Learn about Junction timestamp conventions including UTC-based ISO 8601 formatting and floating time handling for specific device types.

#### Mobile SDKs

- [Installation](https://docs.junction.com/wearables/sdks/installation.md): Install Junction Mobile SDKs on iOS and Android with platform-specific requirements, minimum OS versions, and dependency configuration.
- [Junction Core SDK](https://docs.junction.com/wearables/sdks/vital-core.md): Use the Junction Core SDK to access the Junction API from mobile apps through typed request methods across iOS, Android, Flutter, and React Native.
- [Junction Devices SDK](https://docs.junction.com/wearables/sdks/vital-devices.md): Use the Junction Devices SDK for Bluetooth-based device connectivity with required permission setup for iOS and Android projects.
- [Mobile SDK Authentication](https://docs.junction.com/wearables/sdks/authentication.md): Authenticate Junction Mobile SDKs using Sign-In Tokens that give each app installation scoped API access as an individual user.

##### Health SDK

- [Health SDK Connection Policies](https://docs.junction.com/wearables/sdks/health/connection-policies.md): Choose between Auto Connect and Explicit Connect modes to control how the Health SDK manages Apple HealthKit and Health Connect connections.
- [Junction Health SDK](https://docs.junction.com/wearables/sdks/health/overview.md): Overview of the Junction Health SDK for integrating with Apple HealthKit and Android Health Connect, including setup and common API usage.

#### Provider Guides

- [Abbott LibreView](https://docs.junction.com/wearables/guides/abbott-libreview.md): Connect Abbott continuous glucose monitors like Freestyle Libre to Junction through the LibreView cloud platform integration.
- [Android Health Connect](https://docs.junction.com/wearables/guides/android-health-connect.md): Integrate Android Health Connect as an SDK-based provider with Junction, including setup, permissions, and required Mobile SDK components.
- [Apple HealthKit](https://docs.junction.com/wearables/guides/apple-healthkit.md): Integrate Apple HealthKit as an SDK-based provider with Junction, including sync frequency, background delivery, and Mobile SDK setup.
- [Dexcom (G6 and older)](https://docs.junction.com/wearables/guides/dexcom.md): Connect legacy Dexcom G6 devices via the password-based integration, which requires users to enable Dexcom Share for data access.
- [Dexcom (OAuth based)](https://docs.junction.com/wearables/guides/dexcom_v3.md): Connect Dexcom CGM devices via the OAuth-based dexcom_v3 integration, including webhook behavior and custom OAuth credential setup.
- [Fitbit](https://docs.junction.com/wearables/guides/fitbit.md): Understand Fitbit-specific integration details including always-active BMR webhooks, respiratory rate from sleep stages, and time zone handling.
- [Garmin](https://docs.junction.com/wearables/guides/garmin.md): Understand Garmin webhook behavior where historical data is delivered incrementally as daily events rather than being available immediately.
- [Google Fit](https://docs.junction.com/wearables/guides/google_fit.md): Handle Google Fit cloud data sync delays and plan migration to Health Connect as the successor to the deprecated Google Fit SDK.
- [Google Health API](https://docs.junction.com/wearables/guides/google-health.md): Connect Fitbit and Pixel Watch data through Junction's Google Health integration.
- [Omron](https://docs.junction.com/wearables/guides/omron.md): Connect Omron blood pressure monitors to Junction, noting the requirement that users must grant all permissions during authorization.
- [Polar](https://docs.junction.com/wearables/guides/polar.md): Understand Polar integration limitations where historical data backfill is only available for sleep and sleep stream resources.
- [Samsung Health](https://docs.junction.com/wearables/guides/samsung-health.md): Set up the Samsung Health integration using Junction Mobile SDKs on Android, including project configuration, permissions, data sync, and background sync.
- [Strava](https://docs.junction.com/wearables/guides/strava.md): Connect Strava to Junction using Bring Your Own OAuth credentials.
- [WHOOP](https://docs.junction.com/wearables/guides/whoop.md): Connect WHOOP devices to Junction using Bring Your Own OAuth credentials, with a 10-member development limit before WHOOP app approval.

### API Reference

#### Junction Mobile SDK Integration

- [Create Sign-In Token](https://docs.junction.com/api-reference/user/create-sign-in-token.md): Create or submit user sign in token via the Junction API. Requires authentication with your team API key.

#### Device Connections

- [List of Providers](https://docs.junction.com/api-reference/providers.md): Retrieve providers via the Junction API. Requires authentication with your team API key.
- [Get User Connections](https://docs.junction.com/api-reference/user/get-users-connected-providers.md): Retrieve user providers via the Junction API. Requires authentication with your team API key.
- [Refresh User Data](https://docs.junction.com/api-reference/user/refresh-user-data.md): Create or submit user refresh via the Junction API. Requires authentication with your team API key.
- [Deregister Connection](https://docs.junction.com/api-reference/user/deregister-a-provider.md): Deregister a provider connection via the Junction API. Requires authentication with your team API key.

#### Link

- [Generate a link token](https://docs.junction.com/api-reference/link/generate-link-token.md): Create or submit link token via the Junction API. Requires authentication with your team API key.
- [Create Code](https://docs.junction.com/api-reference/link/create-code.md): Create or submit link code create via the Junction API. Requires authentication with your team API key.
- [Link OAuth provider](https://docs.junction.com/api-reference/link/link-oauth-provider.md): Retrieve link provider OAuth via the Junction API. Requires authentication with your team API key.
- [Link Password provider](https://docs.junction.com/api-reference/link/link-password-provider.md): Create or submit link provider password via the Junction API. Requires authentication with your team API key.
- [Link Email provider](https://docs.junction.com/api-reference/link/link-email-provider.md): Create or submit link provider email via the Junction API. Requires authentication with your team API key.
- [Link Demo provider](https://docs.junction.com/api-reference/link/link-demo-provider.md): Create or submit link connect demo via the Junction API. Requires authentication with your team API key.
- [Complete Password Provider MFA](https://docs.junction.com/api-reference/link/complete-password-provider-mfa.md): Create or submit link provider password complete mfa via the Junction API. Requires authentication with your team API key.

#### Link Migration

- [List Bulk Ops](https://docs.junction.com/api-reference/link/list-bulk-ops.md): Retrieve link bulk op via the Junction API. Requires authentication with your team API key.
- [Bulk Import](https://docs.junction.com/api-reference/link/bulk-import.md): Create or submit link bulk import via the Junction API. Requires authentication with your team API key.
- [Bulk Trigger Historical Pull](https://docs.junction.com/api-reference/link/bulk-trigger-historical-pull.md): Create or submit link bulk trigger historical pull via the Junction API. Requires authentication with your team API key.
- [Bulk Pause](https://docs.junction.com/api-reference/link/bulk-pause.md): Create or submit link bulk pause via the Junction API. Requires authentication with your team API key.
- [Bulk Export](https://docs.junction.com/api-reference/link/bulk-export.md): Create or submit link bulk export via the Junction API. Requires authentication with your team API key.

#### Debugging

- [Get user resources](https://docs.junction.com/api-reference/data/introspection/user-resources.md): List available data resources for the authenticated user, showing which providers and data types are accessible.
- [Get historical pulls](https://docs.junction.com/api-reference/data/introspection/historical-pulls.md): List historical data pull records to track the progress and status of initial data backfills for connected providers.

#### Device

- [Get User Devices](https://docs.junction.com/api-reference/data/device/get-devices.md): Retrieve user devices via the Junction API. Requires authentication with your team API key.
- [Get User Device](https://docs.junction.com/api-reference/data/device/get-device.md): Retrieve user device via the Junction API. Requires authentication with your team API key.

#### Sleep

- [Summary](https://docs.junction.com/api-reference/data/sleep/get-summary.md): Retrieve processed sleep summary data for a specific user, including duration, efficiency, and quality scores.
- [Raw](https://docs.junction.com/api-reference/data/sleep/get-raw.md): Retrieve raw sleep data for a specific user as received from their connected wearable provider.

#### Sleep Cycle

- [Summary](https://docs.junction.com/api-reference/data/sleep-cycle/get-summary.md): Retrieve sleep cycle analysis data for a specific user, including sleep stage breakdowns and cycle metrics.

#### Meal

- [Summary](https://docs.junction.com/api-reference/data/meal/get-summary.md): Retrieve meal and nutrition summary data for a specific user from their connected tracking provider.

#### Workouts

- [Summary](https://docs.junction.com/api-reference/data/workouts/get-summary.md): Retrieve processed workout summary data for a specific user, including type, duration, and calorie metrics.
- [Stream](https://docs.junction.com/api-reference/data/workouts/get-stream.md): Retrieve timeseries workouts stream via the Junction API. Requires authentication with your team API key.
- [Raw](https://docs.junction.com/api-reference/data/workouts/get-raw.md): Retrieve raw workout data for a specific user as received from their connected wearable provider.

#### Profile

- [Summary](https://docs.junction.com/api-reference/data/profile/get-summary.md): Retrieve the processed user profile data from their connected wearable provider, including demographics and preferences.
- [Raw](https://docs.junction.com/api-reference/data/profile/get-raw.md): Retrieve raw user profile data as received from their connected wearable provider without processing.

#### Activity

- [Summary](https://docs.junction.com/api-reference/data/activity/get-summary.md): Retrieve processed activity summary data for a specific user, including steps, calories, and distance metrics.
- [Raw](https://docs.junction.com/api-reference/data/activity/get-raw.md): Retrieve raw activity data for a specific user as received from their connected wearable provider.

#### Body

- [Summary](https://docs.junction.com/api-reference/data/body/get-summary.md): Retrieve processed body summary data for a specific user, including weight, body fat, and BMI measurements.
- [Raw](https://docs.junction.com/api-reference/data/body/get-raw.md): Retrieve raw body composition data for a specific user as received from their connected wearable provider.

#### Menstrual Cycle

- [Summary](https://docs.junction.com/api-reference/data/menstrual-cycle/get-summary.md): Retrieve menstrual cycle tracking summary data for a specific user from their connected wearable provider.

#### Electrocardiogram

- [Summary](https://docs.junction.com/api-reference/data/electrocardiogram/get-summary.md): Retrieve electrocardiogram summary data for a specific user from their connected wearable provider.
- [Electrocardiogram Voltage](https://docs.junction.com/api-reference/data/timeseries/electrocardiogram-voltage.md): Retrieve electrocardiogram voltage timeseries data for a user over a specified date range, grouped by source, using the Junction API.

#### Vitals Timeseries

- [Afib Burden](https://docs.junction.com/api-reference/data/timeseries/afib-burden.md): Retrieve AFib burden timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Blood Oxygen](https://docs.junction.com/api-reference/data/timeseries/blood-oxygen.md): Retrieve blood oxygen timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Blood Pressure](https://docs.junction.com/api-reference/data/timeseries/blood-pressure.md): Retrieve blood pressure timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Glucose](https://docs.junction.com/api-reference/data/timeseries/glucose.md): Retrieve glucose timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Heart Rate](https://docs.junction.com/api-reference/data/timeseries/heartrate.md): Retrieve heart rate timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Heart Rate Variability](https://docs.junction.com/api-reference/data/timeseries/hrv.md): Retrieve heart rate variability timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Heart Rate Alert](https://docs.junction.com/api-reference/data/timeseries/heart-rate-alert.md): Retrieve heart rate alert timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Insulin Injection](https://docs.junction.com/api-reference/data/timeseries/insulin-injection.md): Retrieve insulin injection timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Respiratory Rate](https://docs.junction.com/api-reference/data/timeseries/respiratory-rate.md): Retrieve respiratory rate timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Vo2 Max](https://docs.junction.com/api-reference/data/timeseries/vo2-max.md): Retrieve VO2 max timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Forced Expiratory Volume 1](https://docs.junction.com/api-reference/data/timeseries/forced-expiratory-volume-1.md): Retrieve forced expiratory volume (FEV1) timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Forced Vital Capacity](https://docs.junction.com/api-reference/data/timeseries/forced-vital-capacity.md): Retrieve forced vital capacity timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Peak Expiratory Flow Rate](https://docs.junction.com/api-reference/data/timeseries/peak-expiratory-flow-rate.md): Retrieve peak expiratory flow rate timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Inhaler Usage](https://docs.junction.com/api-reference/data/timeseries/inhaler-usage.md): Retrieve inhaler usage timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Heart Rate Recovery One Minute](https://docs.junction.com/api-reference/data/timeseries/heart-rate-recovery-one-minute.md): Retrieve one-minute heart rate recovery timeseries data for a user over a specified date range, grouped by source, using the Junction API.

#### Body Timeseries

- [Body Fat](https://docs.junction.com/api-reference/data/timeseries/body-fat.md): Retrieve body fat timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Body Weight](https://docs.junction.com/api-reference/data/timeseries/body-weight.md): Retrieve body weight timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Lean Body Mass](https://docs.junction.com/api-reference/data/timeseries/lean-body-mass.md): Retrieve lean body mass timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Body Mass Index](https://docs.junction.com/api-reference/data/timeseries/body-mass-index.md): Retrieve body mass index (BMI) timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Waist Circumference](https://docs.junction.com/api-reference/data/timeseries/waist-circumference.md): Retrieve waist circumference timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Body Temperature](https://docs.junction.com/api-reference/data/timeseries/body-temperature.md): Retrieve body temperature timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Body Temperature Delta](https://docs.junction.com/api-reference/data/timeseries/body-temperature-delta.md): Retrieve body temperature delta timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Basal Body Temperature](https://docs.junction.com/api-reference/data/timeseries/basal-body-temperature.md): Retrieve basal body temperature timeseries data for a user over a specified date range, grouped by source, using the Junction API.

#### Activity Timeseries

- [Calories Active](https://docs.junction.com/api-reference/data/timeseries/calories-active.md): Retrieve active calories timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Calories Basal](https://docs.junction.com/api-reference/data/timeseries/calories-basal.md): Retrieve basal calories timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Distance](https://docs.junction.com/api-reference/data/timeseries/distance.md): Retrieve distance timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Floors Climbed](https://docs.junction.com/api-reference/data/timeseries/floors-climbed.md): Retrieve floors climbed timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Steps](https://docs.junction.com/api-reference/data/timeseries/steps.md): Retrieve step count timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Workout Duration](https://docs.junction.com/api-reference/data/timeseries/workout-duration.md): Retrieve workout duration timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Wheelchair Push](https://docs.junction.com/api-reference/data/timeseries/wheelchair-push.md): Retrieve wheelchair push timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Stand Hour](https://docs.junction.com/api-reference/data/timeseries/stand-hour.md): Retrieve stand hour timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Stand Duration](https://docs.junction.com/api-reference/data/timeseries/stand-duration.md): Retrieve stand duration timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Fall](https://docs.junction.com/api-reference/data/timeseries/fall.md): Retrieve fall detection timeseries data for a user over a specified date range, grouped by source, using the Junction API.

#### Workout Stream Timeseries

- [Workout Distance](https://docs.junction.com/api-reference/data/timeseries/workout-distance.md): Retrieve workout distance timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Workout Swimming Stroke](https://docs.junction.com/api-reference/data/timeseries/workout-swimming-stroke.md): Retrieve workout swimming stroke timeseries data for a user over a specified date range, grouped by source, using the Junction API.

#### Wellness Timeseries

- [Sleep Apnea Alert](https://docs.junction.com/api-reference/data/timeseries/sleep-apnea-alert.md): Retrieve sleep apnea alert timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Sleep Breathing Disturbance](https://docs.junction.com/api-reference/data/timeseries/sleep-breathing-disturbance.md): Retrieve sleep breathing disturbance timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Mindfulness Minutes](https://docs.junction.com/api-reference/data/timeseries/mindfulness-minutes.md): Retrieve mindfulness minutes timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Stress Level](https://docs.junction.com/api-reference/data/timeseries/stress-level.md): Retrieve stress level timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Uv Exposure](https://docs.junction.com/api-reference/data/timeseries/uv-exposure.md): Retrieve UV exposure timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Daylight Exposure](https://docs.junction.com/api-reference/data/timeseries/daylight-exposure.md): Retrieve daylight exposure timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Handwashing](https://docs.junction.com/api-reference/data/timeseries/handwashing.md): Retrieve handwashing timeseries data for a user over a specified date range, grouped by source, using the Junction API.

#### Diary Timeseries

- [Note](https://docs.junction.com/api-reference/data/timeseries/note.md): Retrieve note timeseries data for a user over a specified date range, grouped by source, using the Junction API.

#### Nutrition Timeseries

- [Caffeine](https://docs.junction.com/api-reference/data/timeseries/caffeine.md): Retrieve caffeine intake timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Carbohydrates](https://docs.junction.com/api-reference/data/timeseries/carbohydrates.md): Retrieve carbohydrate intake timeseries data for a user over a specified date range, grouped by source, using the Junction API.
- [Water](https://docs.junction.com/api-reference/data/timeseries/water.md): Retrieve water intake timeseries data for a user over a specified date range, grouped by source, using the Junction API.

## Optional

- [Changelog](https://docs.junction.com/changelog/wearables)
