{ "data_structure": "physical_summary", "user_id": "demo-user-01", "physical_health": { "summary": { "physical_summary": { "metadata": { "sources_of_data_array": ["Garmin"] }, "distance": { "steps_int": 8432, "active_steps_int": 6120, "walked_distance_meters_float": 6180.0 }, "activity": { "active_seconds_int": 3240 } } } }}Garmin integration
How to integrate with the Garmin API: ROOK simplifies access to Garmin wearable data for health, fitness, and insurance apps.
How it connects
ROOK connects to Garmin through its cloud API.
ROOK's Garmin Web API integration delivers body metrics, physical activity and sleep data from Garmin devices as structured JSON, by webhook and API.
Utilize Garmin data to personalize user experiences, boosting engagement and retention.
Our Garmin integration delivers notifications within minutes after a user completes an event and syncs their app.
Read the Garmin docs{ "data_structure": "sleep_summary", "user_id": "demo-user-01", "sleep_health": { "summary": { "sleep_summary": { "metadata": { "sources_of_data_array": ["Garmin"] }, "duration": { "sleep_duration_seconds_int": 26400, "deep_sleep_duration_seconds_int": 6300, "rem_sleep_duration_seconds_int": 5400 }, "heart_rate": { "hr_resting_bpm_int": 56 } } } }}{ "data_structure": "body_summary", "user_id": "demo-user-01", "body_health": { "summary": { "body_summary": { "metadata": { "sources_of_data_array": ["Garmin"] }, "heart_rate": { "hr_avg_bpm_int": 67, "hr_resting_bpm_int": 58 }, "oxygenation": { "saturation_avg_percentage_int": 97 } } } }}Available data
The Garmin data ROOK delivers.
Every field below comes from the Garmin documentation and arrives in ROOK's standard structure, whatever device the user wears.
Physical health
physical summary25 fields
active_seconds_intcalories_basal_metabolic_rate_kcal_floatcalories_expenditure_kcal_floatcalories_net_active_kcal_floatfloors_climbed_floathigh_stress_duration_seconds_inthr_avg_bpm_inthr_granular_data_arrayhr_maximum_bpm_inthr_minimum_bpm_inthr_resting_bpm_intlow_stress_duration_seconds_intmedium_stress_duration_seconds_intmoderate_intensity_seconds_intsaturation_avg_percentage_intsaturation_granular_data_arraysteps_intstress_at_rest_duration_seconds_intstress_avg_level_intstress_duration_seconds_intstress_granular_data_arraystress_maximum_level_inttraveled_distance_meters_floatvigorous_intensity_seconds_intvo2max_mL_per_min_per_kg_int
activity event28 fields
activity_duration_seconds_intactivity_end_datetime_stringactivity_start_datetime_stringactivity_type_name_stringcadence_avg_rpm_floatcadence_maximum_rpm_floatcalories_net_active_kcal_floatelevation_gain_actual_altitude_meters_floatelevation_loss_actual_altitude_meters_floathr_avg_bpm_inthr_maximum_bpm_intpace_avg_min_per_km_floatposition_start_objectspeed_maximum_meters_per_second_floatsteps_inttraveled_distance_meters_floatvelocity_avg_objectspeed_avg_meters_per_second_floatpace_maximum_min_per_km_floatcadence_granular_data_arrayelevation_granular_data_arrayhr_minimum_bpm_inthr_granular_data_arrayspeed_granular_data_arraysteps_granular_data_arraytraveled_distance_granular_data_arraypower_granular_data_arrayposition_granular_data_array
oxygenation event2 fields
saturation_avg_percentage_intsaturation_granular_data_array
stress event3 fields
stress_avg_level_intstress_maximum_level_intstress_granular_data_array
steps event1 field
accumulated_steps_int
Sleep health
sleep summary21 fields
breathing_granular_data_arraybreaths_avg_per_min_intbreaths_maximum_per_min_intbreaths_minimum_per_min_intdeep_sleep_duration_seconds_inthrv_avg_rmssd_floathrv_rmssd_granular_data_arraylight_sleep_duration_seconds_intrem_sleep_duration_seconds_intsaturation_avg_percentage_intsaturation_granular_data_arraysaturation_maximum_percentage_intsaturation_minimum_percentage_intsleep_date_stringsleep_duration_seconds_intsleep_efficiency_1_100_score_intsleep_end_datetime_stringsleep_quality_rating_1_5_score_intsleep_start_datetime_stringtime_awake_during_sleep_seconds_inttime_in_bed_seconds_int
Body health
body summary9 fields
current_phase_stringcycle_day_intcycle_length_days_intdays_until_next_phase_intis_a_predicted_cycle_boollast_updated_datetime_stringlength_of_current_phase_days_intperiod_start_date_stringpredicted_cycle_length_days_int
body metrics event5 fields
bmi_floatbone_composition_percentage_intmuscle_composition_percentage_intwater_composition_percentage_intweight_kg_float
heart rate event5 fields
hr_avg_bpm_inthr_granular_data_arrayhr_maximum_bpm_inthr_minimum_bpm_inthrv_avg_rmssd_float
blood pressure event1 field
blood_pressure_avg_object
Get started
Connect Garmin in three steps.
- Enable Garmin in the ROOK portalTurn Garmin on as a data source for your client in the ROOK portal.
- Add Garmin to your connections pageUsers pick Garmin on the connections page and authorize ROOK with their Garmin account.
- Receive standardized dataROOK turns Garmin data into the same JSON structure as every other data source and delivers it to your backend by webhook and API.
Use cases
What teams build with Garmin data.
From seamless wearable integrations to advanced health insights, ROOK empowers you to build personalized wellness apps, research platforms, fitness dashboards, chronic care solutions and many more great use cases.
Training
Garmin data
Garmin wearables provide athletes with personalized insights by tracking heart rate, sleep, and strain, supporting progress monitoring and injury prevention.
Explore fitness use casesCare
Garmin data
Garmin's heart rate and sleep data enhance apps designed to manage hypertension and sleep apnea, improving health monitoring and overall condition management.
Explore healthcare use casesFitness
Garmin data
Garmin activity and sleep data allow fitness apps to create personalized workouts and effectively track user progress.
Explore fitness use casesStress
Garmin data
Garmin tracks heart rate variability to help users monitor stress and practice techniques like breathwork for better well-being.
Corporate Wellness
Garmin data
Garmin data enables personalized health monitoring, enhancing employee well-being and productivity while helping employers reduce healthcare costs.
Explore corporate wellness use cases
More data sources
More data sources ROOK connects to through their cloud APIs.
FAQ
Frequently asked questions about the Garmin integration
What teams ask before they connect Garmin through ROOK.
What Garmin data can I get through ROOK?
ROOK extracts 100 Garmin fields covering physical activity, sleep and body and vital signs data, grouped into summaries and events. The data each user shares depends on the permissions they grant when they connect Garmin.
How quickly does Garmin data reach my backend?
Our Garmin integration delivers notifications within minutes after a user completes an event and syncs their app.
Do I need my own Garmin developer account?
No. ROOK handles the Garmin connection, so you only enable Garmin as a data source in the ROOK portal.
How does ROOK connect to Garmin?
Through the Garmin cloud API. Users authorize their Garmin account once and ROOK keeps pulling new data, with no mobile development on your side.
Read the Garmin documentationNo questions match that yet. Try another word or topic.
Articles on Garmin from the ROOK blog
- Can you still get Garmin Connect API access in 2026?Garmin paused new Garmin Connect Developer Program applications. Approved integrations keep working, and Garmin attribution rules apply to all Garmin data.Read more

- Can ROOK connect Garmin devices?ROOK announced in December 2023 that Garmin devices are integrated into the ROOK ecosystem, so clients can receive Garmin health data through ROOK.Read more

- How do you standardize Fitbit, Apple Watch, and Garmin data?Five steps to standardize wearable data from Fitbit, Apple Watch and Garmin: a canonical model, unit and timestamp normalization, aligned definitions, gap handling, one pipeline.Read more

Nothing matches that search.
Build on better health data
Turn fragmented health data into your next product advantage.
Connect the sources your users rely on, standardize what comes back, and build workflows that respond to change.








