> ## Documentation Index
> Fetch the complete documentation index at: https://docs.junction.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Query a single user

> Post aggregate user query via the Junction API. Requires authentication with your team API key.

<Card horizontal icon="person-digging" color="#57164A">
  Junction Sense is in **closed beta**.

  Interested in Junction Sense? Get in touch with your Customer Success Manager.
</Card>

<AccordionGroup>
  <Accordion title="Receiving data in JSON" icon="brackets-curly" defaultOpen>
    JSON is the default output format. Each query instruction outputs one entry containing a dataframe to the `$.results` array,
    in the declaration order of the query instructions.

    ```json theme={null}
    {
        "results": [
            {
                "table": {
                    "index": [...],
                    "min": [...],
                    "max": [...],
                    "mean": [...],
                    "newest": [...]
                }
            }
        ]
    }
    ```
  </Accordion>

  <Accordion title="Receiving data in Parquet" icon="chevrons-up" defaultOpen>
    Specify `Accept: application/vnd.vital.tar+gzip+parquet` in your request header.

    The response body is a gzipped Tarball of multiple Parquet files, namely `0.parquet`, `1.parquet`, `2.parquet`, etc.
    The numbering corresponds to the declaration order of the query instructions.
  </Accordion>
</AccordionGroup>


## OpenAPI

````yaml post /aggregate/v1/user/{user_id}/query
openapi: 3.1.0
info:
  title: Junction API
  description: https://docs.junction.com/
  version: 0.4.483
servers:
  - url: https://api.us.junction.com
    x-fern-server-name: Production
  - url: https://api.eu.junction.com
    x-fern-server-name: ProductionEU
  - url: https://api.sandbox.us.junction.com
    x-fern-server-name: Sandbox
  - url: https://api.sandbox.eu.junction.com
    x-fern-server-name: SandboxEU
security:
  - apiKeyAuth: []
paths:
  /aggregate/v1/user/{user_id}/query:
    post:
      summary: Query One
      operationId: query_one_aggregate_v1_user__user_id__query_post
      parameters:
        - name: user_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: The user id to query for
        - name: accept
          in: header
          required: false
          schema:
            enum:
              - '*/*'
              - application/json
              - application/vnd.vital.tar+gzip+parquet
            type: string
            default: '*/*'
            title: Accept
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QueryBatch'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AggregationResponse'
            application/vnd.vital.tar+gzip+parquet: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    QueryBatch:
      properties:
        timeframe:
          anyOf:
            - $ref: '#/components/schemas/RelativeTimeframe'
            - $ref: '#/components/schemas/Placeholder'
          title: Timeframe
        queries:
          items:
            $ref: '#/components/schemas/Query'
          type: array
          title: Queries
        config:
          $ref: '#/components/schemas/QueryConfig'
      type: object
      required:
        - timeframe
        - queries
      title: QueryBatch
    AggregationResponse:
      properties:
        results:
          items:
            $ref: '#/components/schemas/AggregationResult'
          type: array
          title: Results
      type: object
      required:
        - results
      title: AggregationResponse
    HTTPValidationError:
      properties:
        detail:
          title: Detail
      type: object
      title: HTTPValidationError
    RelativeTimeframe:
      properties:
        type:
          type: string
          const: relative
          title: Type
        anchor:
          type: string
          format: date
          title: Anchor
        past:
          $ref: '#/components/schemas/Period'
      type: object
      required:
        - type
        - anchor
        - past
      title: RelativeTimeframe
    Placeholder:
      properties:
        placeholder:
          type: boolean
          const: true
          title: Placeholder
      type: object
      required:
        - placeholder
      title: Placeholder
    Query:
      properties:
        select:
          items:
            anyOf:
              - $ref: '#/components/schemas/AggregateExpr'
              - $ref: '#/components/schemas/GroupKeyColumnExpr'
              - $ref: '#/components/schemas/SleepColumnExpr'
              - $ref: '#/components/schemas/DerivedReadinessColumnExpr'
              - $ref: '#/components/schemas/ActivityColumnExpr'
              - $ref: '#/components/schemas/WorkoutColumnExpr'
              - $ref: '#/components/schemas/BodyColumnExpr'
              - $ref: '#/components/schemas/MealColumnExpr'
              - $ref: '#/components/schemas/MenstrualCycleColumnExpr'
              - $ref: '#/components/schemas/ProfileColumnExpr'
              - $ref: '#/components/schemas/SleepScoreValueMacroExpr'
              - $ref: '#/components/schemas/ChronotypeValueMacroExpr'
              - $ref: '#/components/schemas/AsleepAtValueMacroExpr'
              - $ref: '#/components/schemas/AwakeAtValueMacroExpr'
              - $ref: '#/components/schemas/AwakeningsValueMacroExpr'
              - $ref: '#/components/schemas/UnrecognizedValueMacroExpr'
              - $ref: '#/components/schemas/DiscreteTimeseriesExpr'
              - $ref: '#/components/schemas/IntervalTimeseriesExpr'
              - $ref: '#/components/schemas/InsulinInjectionTimeseriesExpr'
              - $ref: '#/components/schemas/BloodPressureTimeseriesExpr'
              - $ref: '#/components/schemas/TemperatureTimeseriesExpr'
              - $ref: '#/components/schemas/WorkoutDurationTimeseriesExpr'
              - $ref: '#/components/schemas/NoteTimeseriesExpr'
              - $ref: '#/components/schemas/IndexColumnExpr'
              - $ref: '#/components/schemas/ScalarOutputSubqueryExpr'
              - $ref: '#/components/schemas/SourceColumnExpr'
          type: array
          title: Select
        group_by:
          items:
            anyOf:
              - $ref: '#/components/schemas/DateTruncExpr'
              - $ref: '#/components/schemas/DatePartExpr'
              - $ref: '#/components/schemas/SleepColumnExpr'
              - $ref: '#/components/schemas/DerivedReadinessColumnExpr'
              - $ref: '#/components/schemas/ActivityColumnExpr'
              - $ref: '#/components/schemas/WorkoutColumnExpr'
              - $ref: '#/components/schemas/BodyColumnExpr'
              - $ref: '#/components/schemas/MealColumnExpr'
              - $ref: '#/components/schemas/MenstrualCycleColumnExpr'
              - $ref: '#/components/schemas/ProfileColumnExpr'
              - $ref: '#/components/schemas/SleepScoreValueMacroExpr'
              - $ref: '#/components/schemas/ChronotypeValueMacroExpr'
              - $ref: '#/components/schemas/AsleepAtValueMacroExpr'
              - $ref: '#/components/schemas/AwakeAtValueMacroExpr'
              - $ref: '#/components/schemas/AwakeningsValueMacroExpr'
              - $ref: '#/components/schemas/UnrecognizedValueMacroExpr'
              - $ref: '#/components/schemas/DiscreteTimeseriesExpr'
              - $ref: '#/components/schemas/IntervalTimeseriesExpr'
              - $ref: '#/components/schemas/InsulinInjectionTimeseriesExpr'
              - $ref: '#/components/schemas/BloodPressureTimeseriesExpr'
              - $ref: '#/components/schemas/TemperatureTimeseriesExpr'
              - $ref: '#/components/schemas/WorkoutDurationTimeseriesExpr'
              - $ref: '#/components/schemas/NoteTimeseriesExpr'
              - $ref: '#/components/schemas/SourceColumnExpr'
          type: array
          title: Group By
        where:
          anyOf:
            - type: string
            - type: 'null'
          title: Where
          description: >-
            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.
      type: object
      required:
        - select
      title: Query
    QueryConfig:
      properties:
        provider_priority_overrides:
          anyOf:
            - items:
                anyOf:
                  - $ref: '#/components/schemas/Providers'
                  - $ref: '#/components/schemas/Labs'
              type: array
            - type: 'null'
          title: Provider Priority Overrides
      type: object
      title: QueryConfig
    AggregationResult:
      properties:
        table:
          additionalProperties:
            items: {}
            type: array
          type: object
          title: Table
          description: >-
            The result table of the query, organized in a column oriented
            format.
      type: object
      required:
        - table
      title: AggregationResult
    Period:
      properties:
        value:
          type: integer
          minimum: 1
          title: Value
          default: 1
        unit:
          type: string
          enum:
            - minute
            - hour
            - day
            - week
            - month
            - year
          title: Unit
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - unit
      title: Period
    AggregateExpr:
      properties:
        arg:
          anyOf:
            - $ref: '#/components/schemas/SleepColumnExpr'
            - $ref: '#/components/schemas/DerivedReadinessColumnExpr'
            - $ref: '#/components/schemas/ActivityColumnExpr'
            - $ref: '#/components/schemas/WorkoutColumnExpr'
            - $ref: '#/components/schemas/BodyColumnExpr'
            - $ref: '#/components/schemas/MealColumnExpr'
            - $ref: '#/components/schemas/MenstrualCycleColumnExpr'
            - $ref: '#/components/schemas/ProfileColumnExpr'
            - $ref: '#/components/schemas/SleepScoreValueMacroExpr'
            - $ref: '#/components/schemas/ChronotypeValueMacroExpr'
            - $ref: '#/components/schemas/AsleepAtValueMacroExpr'
            - $ref: '#/components/schemas/AwakeAtValueMacroExpr'
            - $ref: '#/components/schemas/AwakeningsValueMacroExpr'
            - $ref: '#/components/schemas/UnrecognizedValueMacroExpr'
            - $ref: '#/components/schemas/DiscreteTimeseriesExpr'
            - $ref: '#/components/schemas/IntervalTimeseriesExpr'
            - $ref: '#/components/schemas/InsulinInjectionTimeseriesExpr'
            - $ref: '#/components/schemas/BloodPressureTimeseriesExpr'
            - $ref: '#/components/schemas/TemperatureTimeseriesExpr'
            - $ref: '#/components/schemas/WorkoutDurationTimeseriesExpr'
            - $ref: '#/components/schemas/NoteTimeseriesExpr'
            - $ref: '#/components/schemas/IndexColumnExpr'
            - $ref: '#/components/schemas/ScalarOutputSubqueryExpr'
          title: Arg
        func:
          type: string
          enum:
            - mean
            - min
            - max
            - sum
            - count
            - median
            - stddev
            - oldest
            - newest
          title: Func
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - arg
        - func
      title: AggregateExpr
    GroupKeyColumnExpr:
      properties:
        group_key:
          anyOf:
            - type: integer
            - type: string
              const: '*'
          title: Group Key
      type: object
      required:
        - group_key
      title: GroupKeyColumnExpr
    SleepColumnExpr:
      properties:
        sleep:
          type: string
          enum:
            - 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
          title: Sleep
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - sleep
      title: SleepColumnExpr
    DerivedReadinessColumnExpr:
      properties:
        derived_readiness:
          type: string
          enum:
            - date
            - chronotype
            - sleep_score
            - recovery_score
            - recovery_zone
            - stress_score
            - strain_score
            - strain_zone
          title: Derived Readiness
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - derived_readiness
      title: DerivedReadinessColumnExpr
    ActivityColumnExpr:
      properties:
        activity:
          type: string
          enum:
            - 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
          title: Activity
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - activity
      title: ActivityColumnExpr
    WorkoutColumnExpr:
      properties:
        workout:
          type: string
          enum:
            - 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
          title: Workout
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - workout
      title: WorkoutColumnExpr
    BodyColumnExpr:
      properties:
        body:
          type: string
          enum:
            - 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
          title: Body
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - body
      title: BodyColumnExpr
    MealColumnExpr:
      properties:
        meal:
          type: string
          enum:
            - 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
          title: Meal
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - meal
      title: MealColumnExpr
    MenstrualCycleColumnExpr:
      properties:
        menstrual_cycle:
          type: string
          enum:
            - 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
          title: Menstrual Cycle
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - menstrual_cycle
      title: MenstrualCycleColumnExpr
    ProfileColumnExpr:
      properties:
        profile:
          type: string
          enum:
            - height_centimeter
            - birth_date
            - wheelchair_use
            - gender
            - sex
            - source_type
            - source_provider
            - source_app_id
            - source_device_id
            - created_at
            - updated_at
          title: Profile
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - profile
      title: ProfileColumnExpr
    SleepScoreValueMacroExpr:
      properties:
        value_macro:
          type: string
          const: sleep_score
          title: Value Macro
        version:
          type: string
          const: automatic
          title: Version
          default: automatic
      type: object
      required:
        - value_macro
      title: SleepScoreValueMacroExpr
    ChronotypeValueMacroExpr:
      properties:
        value_macro:
          type: string
          const: chronotype
          title: Value Macro
        version:
          type: string
          const: automatic
          title: Version
          default: automatic
      type: object
      required:
        - value_macro
      title: ChronotypeValueMacroExpr
    AsleepAtValueMacroExpr:
      properties:
        value_macro:
          type: string
          const: asleep_at
          title: Value Macro
        version:
          type: string
          const: automatic
          title: Version
          default: automatic
      type: object
      required:
        - value_macro
      title: AsleepAtValueMacroExpr
    AwakeAtValueMacroExpr:
      properties:
        value_macro:
          type: string
          const: awake_at
          title: Value Macro
        version:
          type: string
          const: automatic
          title: Version
          default: automatic
      type: object
      required:
        - value_macro
      title: AwakeAtValueMacroExpr
    AwakeningsValueMacroExpr:
      properties:
        value_macro:
          type: string
          const: awakenings
          title: Value Macro
        version:
          type: string
          const: automatic
          title: Version
          default: automatic
      type: object
      required:
        - value_macro
      title: AwakeningsValueMacroExpr
    UnrecognizedValueMacroExpr:
      properties:
        value_macro:
          type: string
          title: Value Macro
      type: object
      required:
        - value_macro
      title: UnrecognizedValueMacroExpr
    DiscreteTimeseriesExpr:
      properties:
        timeseries:
          type: string
          enum:
            - glucose
            - heartrate
            - hrv
            - ige
            - igg
            - cholesterol
            - weight
            - fat
            - blood_oxygen
            - electrocardiogram_voltage
            - respiratory_rate
            - stress_level
          title: Timeseries
          description: ℹ️ This enum is non-exhaustive.
        field:
          anyOf:
            - type: string
              enum:
                - source_provider
                - source_type
            - type: string
              const: source_app_id
            - type: string
              enum:
                - source_workout_id
                - source_sport
            - type: string
              enum:
                - timezone_offset
                - type
            - type: string
              const: value
          title: Field
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - timeseries
        - field
      title: DiscreteTimeseriesExpr
    IntervalTimeseriesExpr:
      properties:
        timeseries:
          type: string
          enum:
            - 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
          title: Timeseries
          description: ℹ️ This enum is non-exhaustive.
        field:
          anyOf:
            - type: string
              enum:
                - source_provider
                - source_type
            - type: string
              const: source_app_id
            - type: string
              enum:
                - source_workout_id
                - source_sport
            - type: string
              enum:
                - timezone_offset
                - type
            - type: string
              enum:
                - duration
                - value
          title: Field
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - timeseries
        - field
      title: IntervalTimeseriesExpr
    InsulinInjectionTimeseriesExpr:
      properties:
        timeseries:
          type: string
          const: insulin_injection
          title: Timeseries
        field:
          anyOf:
            - type: string
              enum:
                - source_provider
                - source_type
            - type: string
              const: source_app_id
            - type: string
              enum:
                - source_workout_id
                - source_sport
            - type: string
              enum:
                - timezone_offset
                - type
            - type: string
              enum:
                - duration
                - value
            - type: string
              enum:
                - delivery_mode
                - delivery_form
                - bolus_purpose
          title: Field
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - timeseries
        - field
      title: InsulinInjectionTimeseriesExpr
    BloodPressureTimeseriesExpr:
      properties:
        timeseries:
          type: string
          const: blood_pressure
          title: Timeseries
        field:
          anyOf:
            - type: string
              enum:
                - source_provider
                - source_type
            - type: string
              const: source_app_id
            - type: string
              enum:
                - source_workout_id
                - source_sport
            - type: string
              enum:
                - timezone_offset
                - type
            - type: string
              enum:
                - systolic
                - diastolic
          title: Field
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - timeseries
        - field
      title: BloodPressureTimeseriesExpr
    TemperatureTimeseriesExpr:
      properties:
        timeseries:
          type: string
          enum:
            - body_temperature
            - body_temperature_delta
          title: Timeseries
          description: ℹ️ This enum is non-exhaustive.
        field:
          anyOf:
            - type: string
              enum:
                - source_provider
                - source_type
            - type: string
              const: source_app_id
            - type: string
              enum:
                - source_workout_id
                - source_sport
            - type: string
              enum:
                - timezone_offset
                - type
            - type: string
              enum:
                - duration
                - value
            - type: string
              const: sensor_location
          title: Field
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - timeseries
        - field
      title: TemperatureTimeseriesExpr
    WorkoutDurationTimeseriesExpr:
      properties:
        timeseries:
          type: string
          const: workout_duration
          title: Timeseries
        field:
          anyOf:
            - type: string
              enum:
                - source_provider
                - source_type
            - type: string
              const: source_app_id
            - type: string
              enum:
                - source_workout_id
                - source_sport
            - type: string
              enum:
                - timezone_offset
                - type
            - type: string
              enum:
                - duration
                - value
            - type: string
              const: intensity
          title: Field
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - timeseries
        - field
      title: WorkoutDurationTimeseriesExpr
    NoteTimeseriesExpr:
      properties:
        timeseries:
          type: string
          const: note
          title: Timeseries
        field:
          anyOf:
            - type: string
              enum:
                - source_provider
                - source_type
            - type: string
              const: source_app_id
            - type: string
              enum:
                - source_workout_id
                - source_sport
            - type: string
              enum:
                - timezone_offset
                - type
            - type: string
              enum:
                - tags
                - content
          title: Field
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - timeseries
        - field
      title: NoteTimeseriesExpr
    IndexColumnExpr:
      properties:
        index:
          type: string
          enum:
            - sleep
            - derived_readiness
            - activity
            - workout
            - body
            - meal
            - menstrual_cycle
            - profile
            - timeseries
          title: Index
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - index
      title: IndexColumnExpr
    ScalarOutputSubqueryExpr:
      properties:
        select:
          anyOf:
            - $ref: '#/components/schemas/AggregateFieldExpr'
            - $ref: '#/components/schemas/Placeholder'
          title: Select
        from:
          anyOf:
            - $ref: '#/components/schemas/UnnestExpr'
            - $ref: '#/components/schemas/Placeholder'
          title: From
        where:
          anyOf:
            - type: string
            - type: 'null'
          title: Where
      type: object
      required:
        - select
        - from
      title: ScalarOutputSubqueryExpr
      description: A subquery that produces a single scalar value per row.
    SourceColumnExpr:
      properties:
        source:
          anyOf:
            - type: string
              enum:
                - source_provider
                - source_type
            - type: string
              const: source_app_id
            - type: string
              enum:
                - source_workout_id
                - source_sport
          title: Source
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - source
      title: SourceColumnExpr
    DateTruncExpr:
      properties:
        date_trunc:
          $ref: '#/components/schemas/Period'
        arg:
          anyOf:
            - $ref: '#/components/schemas/IndexColumnExpr'
            - $ref: '#/components/schemas/Placeholder'
          title: Arg
      type: object
      required:
        - date_trunc
        - arg
      title: DateTruncExpr
    DatePartExpr:
      properties:
        arg:
          anyOf:
            - $ref: '#/components/schemas/IndexColumnExpr'
            - $ref: '#/components/schemas/Placeholder'
          title: Arg
        date_part:
          anyOf:
            - type: string
              enum:
                - minute
                - hour
                - day
                - week
                - month
                - year
            - type: string
              enum:
                - weekday
                - week_of_year
                - day_of_year
          title: Date Part
          description: ℹ️ This enum is non-exhaustive.
      type: object
      required:
        - arg
        - date_part
      title: DatePartExpr
    Providers:
      type: string
      enum:
        - 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
      title: Providers
      description: ℹ️ This enum is non-exhaustive.
    Labs:
      type: string
      enum:
        - ayumetrix
        - spiriplex
        - ussl
        - quest
        - sonora_quest
        - labcorp
        - bioreference
        - us_biotek
        - manual
        - sanocardio
        - ihd
        - nexus
        - my_uti
        - crl
      title: Labs
      description: ℹ️ This enum is non-exhaustive.
    AggregateFieldExpr:
      properties:
        func:
          type: string
          enum:
            - mean
            - min
            - max
            - sum
            - count
            - median
            - stddev
            - oldest
            - newest
          title: Func
          description: ℹ️ This enum is non-exhaustive.
        arg:
          anyOf:
            - $ref: '#/components/schemas/MCMenstrualFlowFieldExpr'
            - $ref: '#/components/schemas/MCCervicalMucusFieldExpr'
            - $ref: '#/components/schemas/MCIntermenstrualBleedingFieldExpr'
            - $ref: '#/components/schemas/MCContraceptiveFieldExpr'
            - $ref: '#/components/schemas/MCDetectedDeviationsFieldExpr'
            - $ref: '#/components/schemas/MCOvulationTestFieldExpr'
            - $ref: '#/components/schemas/MCHomePregnancyTestFieldExpr'
            - $ref: '#/components/schemas/MCHomeProgesteroneTestFieldExpr'
            - $ref: '#/components/schemas/MCSexualActivityFieldExpr'
            - $ref: '#/components/schemas/MCBasalBodyTemperatureFieldExpr'
            - $ref: '#/components/schemas/ElementFieldExpr'
            - type: 'null'
          title: Arg
      type: object
      required:
        - func
      title: AggregateFieldExpr
      description: >-
        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.
    UnnestExpr:
      properties:
        unnest:
          anyOf:
            - $ref: '#/components/schemas/SleepColumnExpr'
            - $ref: '#/components/schemas/DerivedReadinessColumnExpr'
            - $ref: '#/components/schemas/ActivityColumnExpr'
            - $ref: '#/components/schemas/WorkoutColumnExpr'
            - $ref: '#/components/schemas/BodyColumnExpr'
            - $ref: '#/components/schemas/MealColumnExpr'
            - $ref: '#/components/schemas/MenstrualCycleColumnExpr'
            - $ref: '#/components/schemas/ProfileColumnExpr'
            - $ref: '#/components/schemas/SleepScoreValueMacroExpr'
            - $ref: '#/components/schemas/ChronotypeValueMacroExpr'
            - $ref: '#/components/schemas/AsleepAtValueMacroExpr'
            - $ref: '#/components/schemas/AwakeAtValueMacroExpr'
            - $ref: '#/components/schemas/AwakeningsValueMacroExpr'
            - $ref: '#/components/schemas/UnrecognizedValueMacroExpr'
            - $ref: '#/components/schemas/DiscreteTimeseriesExpr'
            - $ref: '#/components/schemas/IntervalTimeseriesExpr'
            - $ref: '#/components/schemas/InsulinInjectionTimeseriesExpr'
            - $ref: '#/components/schemas/BloodPressureTimeseriesExpr'
            - $ref: '#/components/schemas/TemperatureTimeseriesExpr'
            - $ref: '#/components/schemas/WorkoutDurationTimeseriesExpr'
            - $ref: '#/components/schemas/NoteTimeseriesExpr'
          title: Unnest
      type: object
      required:
        - unnest
      title: UnnestExpr
      description: 'FROM clause variant: unnest a list column into elements.'
    MCMenstrualFlowFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        menstrual_flow:
          type: string
          enum:
            - date
            - flow
          title: Menstrual Flow
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - menstrual_flow
      title: MCMenstrualFlowFieldExpr
    MCCervicalMucusFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        cervical_mucus:
          type: string
          enum:
            - date
            - quality
          title: Cervical Mucus
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - cervical_mucus
      title: MCCervicalMucusFieldExpr
    MCIntermenstrualBleedingFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        intermenstrual_bleeding:
          type: string
          const: date
          title: Intermenstrual Bleeding
      additionalProperties: false
      type: object
      required:
        - intermenstrual_bleeding
      title: MCIntermenstrualBleedingFieldExpr
    MCContraceptiveFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        contraceptive:
          type: string
          enum:
            - date
            - type
          title: Contraceptive
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - contraceptive
      title: MCContraceptiveFieldExpr
    MCDetectedDeviationsFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        detected_deviations:
          type: string
          enum:
            - date
            - deviation
          title: Detected Deviations
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - detected_deviations
      title: MCDetectedDeviationsFieldExpr
    MCOvulationTestFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        ovulation_test:
          type: string
          enum:
            - date
            - test_result
          title: Ovulation Test
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - ovulation_test
      title: MCOvulationTestFieldExpr
    MCHomePregnancyTestFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        home_pregnancy_test:
          type: string
          enum:
            - date
            - test_result
          title: Home Pregnancy Test
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - home_pregnancy_test
      title: MCHomePregnancyTestFieldExpr
    MCHomeProgesteroneTestFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        home_progesterone_test:
          type: string
          enum:
            - date
            - test_result
          title: Home Progesterone Test
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - home_progesterone_test
      title: MCHomeProgesteroneTestFieldExpr
    MCSexualActivityFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        sexual_activity:
          type: string
          enum:
            - date
            - protection_used
          title: Sexual Activity
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - sexual_activity
      title: MCSexualActivityFieldExpr
    MCBasalBodyTemperatureFieldExpr:
      properties:
        field_for:
          type: string
          const: menstrual_cycle
          title: Field For
          default: menstrual_cycle
        basal_body_temperature:
          type: string
          enum:
            - date
            - value
          title: Basal Body Temperature
          description: ℹ️ This enum is non-exhaustive.
      additionalProperties: false
      type: object
      required:
        - basal_body_temperature
      title: MCBasalBodyTemperatureFieldExpr
    ElementFieldExpr:
      properties:
        element:
          type: boolean
          const: true
          title: Element
      additionalProperties: false
      type: object
      required:
        - element
      title: ElementFieldExpr
      description: |-
        References the element itself in a scalar-element list subquery arg.

        Symmetric with the reserved ``element`` keyword in WHERE predicates.
        Only valid when the UNNEST source is a ``List[scalar]``.
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-vital-api-key
      description: Vital Team API Key

````