---
title: "Query One"
method: POST
path: "/aggregate/v1/user/{user_id}/query"
---

# Query One

`POST /aggregate/v1/user/{user_id}/query`

## Path parameters

- `user_id` string, uuid, required

## Headers

- `accept` '*/*' | 'application/json' | 'application/vnd.vital.tar+gzip+parquet'

## Request body

- QueryBatch
  - `timeframe` union, required
    - RelativeTimeframe
      - `type` 'relative', required
      - `anchor` string, date, required
      - `past` Period, required
        - `value` integer
        - `unit` 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year', required — ℹ️ This enum is non-exhaustive.
    - Placeholder
      - `placeholder` true, required
  - `queries` Query[], required
    - `select` union[], required
      - union
        - AggregateExpr
          - `arg` union, required
            - SleepColumnExpr
              - …
            - DerivedReadinessColumnExpr
              - …
            - ActivityColumnExpr
              - …
            - WorkoutColumnExpr
              - …
            - BodyColumnExpr
              - …
            - MealColumnExpr
              - …
            - MenstrualCycleColumnExpr
              - …
            - ProfileColumnExpr
              - …
            - SleepScoreValueMacroExpr
              - …
            - ChronotypeValueMacroExpr
              - …
            - AsleepAtValueMacroExpr
              - …
            - AwakeAtValueMacroExpr
              - …
            - AwakeningsValueMacroExpr
              - …
            - UnrecognizedValueMacroExpr
              - …
            - DiscreteTimeseriesExpr
              - …
            - IntervalTimeseriesExpr
              - …
            - InsulinInjectionTimeseriesExpr
              - …
            - BloodPressureTimeseriesExpr
              - …
            - TemperatureTimeseriesExpr
              - …
            - WorkoutDurationTimeseriesExpr
              - …
            - NoteTimeseriesExpr
              - …
            - IndexColumnExpr
              - …
            - ScalarOutputSubqueryExpr — A subquery that produces a single scalar value per row.
              - …
          - `func` 'mean' | 'min' | 'max' | 'sum' | 'count' | 'median' | 'stddev' | 'oldest' | 'newest', required — ℹ️ This enum is non-exhaustive.
        - GroupKeyColumnExpr
          - `group_key` union, required
            - integer
            - '*'
        - SleepColumnExpr
          - `sleep` 'id' | 'session_start' | 'session_end' | 'state' | 'type' | 'duration_second' | 'stage_asleep_second' | 'stage_awake_second' | 'stage_light_second' | 'stage_rem_second' | 'stage_deep_second' | 'stage_unknown_second' | 'latency_second' | 'heart_rate_minimum' | 'heart_rate_mean' | 'heart_rate_maximum' | 'heart_rate_dip' | 'heart_rate_resting' | 'efficiency' | 'hrv_mean_rmssd' | 'hrv_mean_sdnn' | 'skin_temperature' | 'skin_temperature_delta' | 'respiratory_rate' | 'score' | 'recovery_readiness_score' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'time_zone', required — ℹ️ This enum is non-exhaustive.
        - DerivedReadinessColumnExpr
          - `derived_readiness` 'date' | 'chronotype' | 'sleep_score' | 'recovery_score' | 'recovery_zone' | 'stress_score' | 'strain_score' | 'strain_zone', required — ℹ️ This enum is non-exhaustive.
        - ActivityColumnExpr
          - `activity` 'date' | 'calories_total' | 'calories_active' | 'steps' | 'distance_meter' | 'floors_climbed' | 'duration_active_second' | 'intensity_sedentary_second' | 'intensity_low_second' | 'intensity_medium_second' | 'intensity_high_second' | 'heart_rate_mean' | 'heart_rate_minimum' | 'heart_rate_maximum' | 'heart_rate_resting' | 'heart_rate_mean_walking' | 'wheelchair_use' | 'wheelchair_push' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'time_zone' | 'time_zone_offset', required — ℹ️ This enum is non-exhaustive.
        - WorkoutColumnExpr
          - `workout` 'session_start' | 'session_end' | 'title' | 'sport_name' | 'sport_slug' | 'duration_active_second' | 'heart_rate_mean' | 'heart_rate_minimum' | 'heart_rate_maximum' | 'heart_rate_zone_1' | 'heart_rate_zone_2' | 'heart_rate_zone_3' | 'heart_rate_zone_4' | 'heart_rate_zone_5' | 'heart_rate_zone_6' | 'distance_meter' | 'calories' | 'elevation_gain_meter' | 'elevation_maximum_meter' | 'elevation_minimum_meter' | 'speed_mean' | 'speed_maximum' | 'power_source' | 'power_mean' | 'power_maximum' | 'power_weighted_mean' | 'steps' | 'map_polyline' | 'map_summary_polyline' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'external_id' | 'time_zone', required — ℹ️ This enum is non-exhaustive.
        - BodyColumnExpr
          - `body` 'measured_at' | 'weight_kilogram' | 'fat_mass_percentage' | 'water_percentage' | 'muscle_mass_percentage' | 'visceral_fat_index' | 'bone_mass_percentage' | 'body_mass_index' | 'lean_body_mass_kilogram' | 'waist_circumference_centimeter' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'time_zone', required — ℹ️ This enum is non-exhaustive.
        - MealColumnExpr
          - `meal` 'calories' | 'carbohydrate_gram' | 'protein_gram' | 'alcohol_gram' | 'water_gram' | 'fibre_gram' | 'sugar_gram' | 'cholesterol_gram' | 'saturated_fat_gram' | 'monounsaturated_fat_gram' | 'polyunsaturated_fat_gram' | 'omega3_fat_gram' | 'omega6_fat_gram' | 'total_fat_gram' | 'sodium_milligram' | 'potassium_milligram' | 'calcium_milligram' | 'phosphorus_milligram' | 'magnesium_milligram' | 'iron_milligram' | 'zinc_milligram' | 'fluoride_milligram' | 'chloride_milligram' | 'vitamin_a_milligram' | 'vitamin_b1_milligram' | 'riboflavin_milligram' | 'niacin_milligram' | 'pantothenic_acid_milligram' | 'vitamin_b6_milligram' | 'biotin_microgram' | 'vitamin_b12_microgram' | 'vitamin_c_milligram' | 'vitamin_d_microgram' | 'vitamin_e_milligram' | 'vitamin_k_microgram' | 'folic_acid_microgram' | 'chromium_microgram' | 'copper_milligram' | 'iodine_microgram' | 'manganese_milligram' | 'molybdenum_microgram' | 'selenium_microgram' | 'date' | 'name' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id', required — ℹ️ This enum is non-exhaustive.
        - MenstrualCycleColumnExpr
          - `menstrual_cycle` 'period_start' | 'period_end' | 'cycle_end' | 'is_predicted' | 'menstrual_flow' | 'cervical_mucus' | 'intermenstrual_bleeding' | 'contraceptive' | 'detected_deviations' | 'ovulation_test' | 'home_pregnancy_test' | 'home_progesterone_test' | 'sexual_activity' | 'basal_body_temperature' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id', required — ℹ️ This enum is non-exhaustive.
        - ProfileColumnExpr
          - `profile` 'height_centimeter' | 'birth_date' | 'wheelchair_use' | 'gender' | 'sex' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'created_at' | 'updated_at', required — ℹ️ This enum is non-exhaustive.
        - SleepScoreValueMacroExpr
          - `value_macro` 'sleep_score', required
          - `version` 'automatic'
        - ChronotypeValueMacroExpr
          - `value_macro` 'chronotype', required
          - `version` 'automatic'
        - AsleepAtValueMacroExpr
          - `value_macro` 'asleep_at', required
          - `version` 'automatic'
        - AwakeAtValueMacroExpr
          - `value_macro` 'awake_at', required
          - `version` 'automatic'
        - AwakeningsValueMacroExpr
          - `value_macro` 'awakenings', required
          - `version` 'automatic'
        - UnrecognizedValueMacroExpr
          - `value_macro` string, required
        - DiscreteTimeseriesExpr
          - `timeseries` 'glucose' | 'heartrate' | 'hrv' | 'ige' | 'igg' | 'cholesterol' | 'weight' | 'fat' | 'blood_oxygen' | 'electrocardiogram_voltage' | 'respiratory_rate' | 'stress_level', required — ℹ️ This enum is non-exhaustive.
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'value'
        - IntervalTimeseriesExpr
          - `timeseries` 'steps' | 'distance' | 'vo2_max' | 'heart_rate_alert' | 'stand_hour' | 'sleep_breathing_disturbance' | 'water' | 'caffeine' | 'mindfulness_minutes' | 'calories_active' | 'floors_climbed' | 'calories_basal' | 'afib_burden' | 'stand_duration' | 'sleep_apnea_alert' | 'wheelchair_push' | 'forced_expiratory_volume_1' | 'forced_vital_capacity' | 'peak_expiratory_flow_rate' | 'inhaler_usage' | 'fall' | 'uv_exposure' | 'daylight_exposure' | 'handwashing' | 'basal_body_temperature' | 'body_mass_index' | 'lean_body_mass' | 'waist_circumference' | 'heart_rate_recovery_one_minute' | 'workout_swimming_stroke' | 'workout_distance' | 'carbohydrates', required — ℹ️ This enum is non-exhaustive.
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'duration' | 'value'
        - InsulinInjectionTimeseriesExpr
          - `timeseries` 'insulin_injection', required
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'duration' | 'value'
            - 'delivery_mode' | 'delivery_form' | 'bolus_purpose'
        - BloodPressureTimeseriesExpr
          - `timeseries` 'blood_pressure', required
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'systolic' | 'diastolic'
        - TemperatureTimeseriesExpr
          - `timeseries` 'body_temperature' | 'body_temperature_delta', required — ℹ️ This enum is non-exhaustive.
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'duration' | 'value'
            - 'sensor_location'
        - WorkoutDurationTimeseriesExpr
          - `timeseries` 'workout_duration', required
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'duration' | 'value'
            - 'intensity'
        - NoteTimeseriesExpr
          - `timeseries` 'note', required
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'tags' | 'content'
        - IndexColumnExpr
          - `index` 'sleep' | 'derived_readiness' | 'activity' | 'workout' | 'body' | 'meal' | 'menstrual_cycle' | 'profile' | 'timeseries', required — ℹ️ This enum is non-exhaustive.
        - ScalarOutputSubqueryExpr — A subquery that produces a single scalar value per row.
          - `select` union, required
            - AggregateFieldExpr — Aggregate over unnested list elements, optionally targeting a struct field. When arg is None, the aggregate operates on the list elements directly (e.g., count-all, or mean/sum on a scalar numeric list). When arg is a FieldExpr, the struct field is extracted before aggregating.
              - …
            - Placeholder
              - …
          - `from` union, required
            - UnnestExpr — FROM clause variant: unnest a list column into elements.
              - …
            - Placeholder
              - …
          - `where` string, nullable
        - SourceColumnExpr
          - `source` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
    - `group_by` union[]
      - union
        - DateTruncExpr
          - `date_trunc` Period, required
            - `value` integer
            - `unit` 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year', required — ℹ️ This enum is non-exhaustive.
          - `arg` union, required
            - IndexColumnExpr
              - …
            - Placeholder
              - …
        - DatePartExpr
          - `arg` union, required
            - IndexColumnExpr
              - …
            - Placeholder
              - …
          - `date_part` union, required — ℹ️ This enum is non-exhaustive.
            - 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year'
            - 'weekday' | 'week_of_year' | 'day_of_year'
        - SleepColumnExpr
          - `sleep` 'id' | 'session_start' | 'session_end' | 'state' | 'type' | 'duration_second' | 'stage_asleep_second' | 'stage_awake_second' | 'stage_light_second' | 'stage_rem_second' | 'stage_deep_second' | 'stage_unknown_second' | 'latency_second' | 'heart_rate_minimum' | 'heart_rate_mean' | 'heart_rate_maximum' | 'heart_rate_dip' | 'heart_rate_resting' | 'efficiency' | 'hrv_mean_rmssd' | 'hrv_mean_sdnn' | 'skin_temperature' | 'skin_temperature_delta' | 'respiratory_rate' | 'score' | 'recovery_readiness_score' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'time_zone', required — ℹ️ This enum is non-exhaustive.
        - DerivedReadinessColumnExpr
          - `derived_readiness` 'date' | 'chronotype' | 'sleep_score' | 'recovery_score' | 'recovery_zone' | 'stress_score' | 'strain_score' | 'strain_zone', required — ℹ️ This enum is non-exhaustive.
        - ActivityColumnExpr
          - `activity` 'date' | 'calories_total' | 'calories_active' | 'steps' | 'distance_meter' | 'floors_climbed' | 'duration_active_second' | 'intensity_sedentary_second' | 'intensity_low_second' | 'intensity_medium_second' | 'intensity_high_second' | 'heart_rate_mean' | 'heart_rate_minimum' | 'heart_rate_maximum' | 'heart_rate_resting' | 'heart_rate_mean_walking' | 'wheelchair_use' | 'wheelchair_push' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'time_zone' | 'time_zone_offset', required — ℹ️ This enum is non-exhaustive.
        - WorkoutColumnExpr
          - `workout` 'session_start' | 'session_end' | 'title' | 'sport_name' | 'sport_slug' | 'duration_active_second' | 'heart_rate_mean' | 'heart_rate_minimum' | 'heart_rate_maximum' | 'heart_rate_zone_1' | 'heart_rate_zone_2' | 'heart_rate_zone_3' | 'heart_rate_zone_4' | 'heart_rate_zone_5' | 'heart_rate_zone_6' | 'distance_meter' | 'calories' | 'elevation_gain_meter' | 'elevation_maximum_meter' | 'elevation_minimum_meter' | 'speed_mean' | 'speed_maximum' | 'power_source' | 'power_mean' | 'power_maximum' | 'power_weighted_mean' | 'steps' | 'map_polyline' | 'map_summary_polyline' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'external_id' | 'time_zone', required — ℹ️ This enum is non-exhaustive.
        - BodyColumnExpr
          - `body` 'measured_at' | 'weight_kilogram' | 'fat_mass_percentage' | 'water_percentage' | 'muscle_mass_percentage' | 'visceral_fat_index' | 'bone_mass_percentage' | 'body_mass_index' | 'lean_body_mass_kilogram' | 'waist_circumference_centimeter' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'time_zone', required — ℹ️ This enum is non-exhaustive.
        - MealColumnExpr
          - `meal` 'calories' | 'carbohydrate_gram' | 'protein_gram' | 'alcohol_gram' | 'water_gram' | 'fibre_gram' | 'sugar_gram' | 'cholesterol_gram' | 'saturated_fat_gram' | 'monounsaturated_fat_gram' | 'polyunsaturated_fat_gram' | 'omega3_fat_gram' | 'omega6_fat_gram' | 'total_fat_gram' | 'sodium_milligram' | 'potassium_milligram' | 'calcium_milligram' | 'phosphorus_milligram' | 'magnesium_milligram' | 'iron_milligram' | 'zinc_milligram' | 'fluoride_milligram' | 'chloride_milligram' | 'vitamin_a_milligram' | 'vitamin_b1_milligram' | 'riboflavin_milligram' | 'niacin_milligram' | 'pantothenic_acid_milligram' | 'vitamin_b6_milligram' | 'biotin_microgram' | 'vitamin_b12_microgram' | 'vitamin_c_milligram' | 'vitamin_d_microgram' | 'vitamin_e_milligram' | 'vitamin_k_microgram' | 'folic_acid_microgram' | 'chromium_microgram' | 'copper_milligram' | 'iodine_microgram' | 'manganese_milligram' | 'molybdenum_microgram' | 'selenium_microgram' | 'date' | 'name' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id', required — ℹ️ This enum is non-exhaustive.
        - MenstrualCycleColumnExpr
          - `menstrual_cycle` 'period_start' | 'period_end' | 'cycle_end' | 'is_predicted' | 'menstrual_flow' | 'cervical_mucus' | 'intermenstrual_bleeding' | 'contraceptive' | 'detected_deviations' | 'ovulation_test' | 'home_pregnancy_test' | 'home_progesterone_test' | 'sexual_activity' | 'basal_body_temperature' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id', required — ℹ️ This enum is non-exhaustive.
        - ProfileColumnExpr
          - `profile` 'height_centimeter' | 'birth_date' | 'wheelchair_use' | 'gender' | 'sex' | 'source_type' | 'source_provider' | 'source_app_id' | 'source_device_id' | 'created_at' | 'updated_at', required — ℹ️ This enum is non-exhaustive.
        - SleepScoreValueMacroExpr
          - `value_macro` 'sleep_score', required
          - `version` 'automatic'
        - ChronotypeValueMacroExpr
          - `value_macro` 'chronotype', required
          - `version` 'automatic'
        - AsleepAtValueMacroExpr
          - `value_macro` 'asleep_at', required
          - `version` 'automatic'
        - AwakeAtValueMacroExpr
          - `value_macro` 'awake_at', required
          - `version` 'automatic'
        - AwakeningsValueMacroExpr
          - `value_macro` 'awakenings', required
          - `version` 'automatic'
        - UnrecognizedValueMacroExpr
          - `value_macro` string, required
        - DiscreteTimeseriesExpr
          - `timeseries` 'glucose' | 'heartrate' | 'hrv' | 'ige' | 'igg' | 'cholesterol' | 'weight' | 'fat' | 'blood_oxygen' | 'electrocardiogram_voltage' | 'respiratory_rate' | 'stress_level', required — ℹ️ This enum is non-exhaustive.
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'value'
        - IntervalTimeseriesExpr
          - `timeseries` 'steps' | 'distance' | 'vo2_max' | 'heart_rate_alert' | 'stand_hour' | 'sleep_breathing_disturbance' | 'water' | 'caffeine' | 'mindfulness_minutes' | 'calories_active' | 'floors_climbed' | 'calories_basal' | 'afib_burden' | 'stand_duration' | 'sleep_apnea_alert' | 'wheelchair_push' | 'forced_expiratory_volume_1' | 'forced_vital_capacity' | 'peak_expiratory_flow_rate' | 'inhaler_usage' | 'fall' | 'uv_exposure' | 'daylight_exposure' | 'handwashing' | 'basal_body_temperature' | 'body_mass_index' | 'lean_body_mass' | 'waist_circumference' | 'heart_rate_recovery_one_minute' | 'workout_swimming_stroke' | 'workout_distance' | 'carbohydrates', required — ℹ️ This enum is non-exhaustive.
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'duration' | 'value'
        - InsulinInjectionTimeseriesExpr
          - `timeseries` 'insulin_injection', required
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'duration' | 'value'
            - 'delivery_mode' | 'delivery_form' | 'bolus_purpose'
        - BloodPressureTimeseriesExpr
          - `timeseries` 'blood_pressure', required
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'systolic' | 'diastolic'
        - TemperatureTimeseriesExpr
          - `timeseries` 'body_temperature' | 'body_temperature_delta', required — ℹ️ This enum is non-exhaustive.
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'duration' | 'value'
            - 'sensor_location'
        - WorkoutDurationTimeseriesExpr
          - `timeseries` 'workout_duration', required
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'duration' | 'value'
            - 'intensity'
        - NoteTimeseriesExpr
          - `timeseries` 'note', required
          - `field` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
            - 'timezone_offset' | 'type'
            - 'tags' | 'content'
        - SourceColumnExpr
          - `source` union, required — ℹ️ This enum is non-exhaustive.
            - 'source_provider' | 'source_type'
            - 'source_app_id'
            - 'source_workout_id' | 'source_sport'
    - `where` string, nullable — A WHERE clause filtering the input data. If a GROUP BY clause is present, filtering happens prior to GROUP BY evaluation. WHERE clause uses SQL Expression syntax to describe the filtering criteria: * Available operators: `>`, `>=`, `<`, `<=`, `=`, `!=`, `NOT`, `AND` and `OR`. * Parentheses is supported.
    - `align` AlignExpr — Post-aggregation alignment clause for a CQ query. `carry` runs after group_by+aggregate, implicitly materialising missing datetime buckets before filling them. Omitting `.align()` entirely preserves honest-null behaviour; the `carry` field is required when `align` is present.
      - `carry` union, required
        - CarryForwardExpr — Post-aggregation carry operator: last-observation-carried-forward. For each empty bucket, carries the most recent prior non-empty bucket's aggregate forward. `max_age=None` means no cap (carry indefinitely); when set, enforced >= group_by_period at CQ validation time.
          - `mode` 'carry_forward', required
          - `max_age` Period
            - `value` integer
            - `unit` 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year', required — ℹ️ This enum is non-exhaustive.
        - CarryBackwardExpr — Post-aggregation carry operator: carry-backward. For each empty bucket, carries the nearest subsequent non-empty bucket's aggregate backward in time. `max_age=None` means no cap; when set, enforced >= group_by_period at CQ validation time.
          - `mode` 'carry_backward', required
          - `max_age` Period
            - `value` integer
            - `unit` 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year', required — ℹ️ This enum is non-exhaustive.
        - CarryNearestExpr — Post-aggregation carry operator: carry from the nearest non-empty bucket. For each empty bucket, borrows the nearest non-empty adjacent bucket's aggregate — past or future, whichever is closer. On a tie the past value is preferred. `span=None` means no cap; when set, enforced >= group_by_period at CQ validation time.
          - `mode` 'carry_nearest', required
          - `span` Period
            - `value` integer
            - `unit` 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year', required — ℹ️ This enum is non-exhaustive.
  - `config` QueryConfig
    - `provider_priority_overrides` union[], nullable
      - union
        - 'oura' | 'fitbit' | 'garmin' | 'whoop' | 'strava' | 'renpho' | 'peloton' | 'wahoo' | 'zwift' | 'freestyle_libre' | 'abbott_libreview' | 'tandem_source' | 'freestyle_libre_ble' | 'eight_sleep' | 'withings' | 'apple_health_kit' | 'manual' | 'ihealth' | 'google_fit' | 'beurer_api' | 'beurer_ble' | 'omron' | 'omron_ble' | 'onetouch_ble' | 'accuchek_ble' | 'contour_ble' | 'dexcom' | 'dexcom_v3' | 'hammerhead' | 'my_fitness_pal' | 'health_connect' | 'samsung_health' | 'polar' | 'cronometer' | 'kardia' | 'whoop_v2' | 'ultrahuman' | 'my_fitness_pal_v2' | 'map_my_fitness' | 'runkeeper' | 'google_health' — ℹ️ This enum is non-exhaustive.
        - 'ayumetrix' | 'spiriplex' | 'ussl' | 'quest' | 'sonora_quest' | 'labcorp' | 'bioreference' | 'us_biotek' | 'manual' | 'sanocardio' | 'ihd' | 'nexus' | 'my_uti' | 'crl' | 'mtl' — ℹ️ This enum is non-exhaustive.

## Response `200`

Successful Response

- AggregationResponse
  - `results` AggregationResult[], required
    - `table` object, required — The result table of the query, organized in a column oriented format.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/tryvital/apis/junction-api.md) · [All operations](https://skmtc.net/tryvital/apis/junction-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tryvital/junction-api/versions/d28f5cec7d79/schema)
