---
title: "Get canonical consumer onboarding choices"
method: GET
path: "/api/user/onboarding-choices"
tags: ["Onboarding"]
---

# Get canonical consumer onboarding choices

`GET /api/user/onboarding-choices`

## Request

- Base URL: `https://api.chipprofessionals.com`
- URL: `https://api.chipprofessionals.com/api/user/onboarding-choices`
- Auth: HTTP bearer

Requires an authenticated Consumer with password setup complete. Reads the catalog without provisioning it or returning saved answers or personal data. Options are ordered canonical ID/label pairs. business_stage_id, investment_range_id, emergency_savings_range_id, fee_transparency_preference_id and fee_structure_preference_id have multiple=false; the remaining fields have multiple=true. The inherited _fields/_relations projection can omit data.fields; without projection all catalog fields are returned.

## Response `200`

Onboarding choices retrieved successfully

- object
  - `success` true, required
  - `data` union, required
    - object
      - `fields` ConsumerOnboardingChoiceFields, required
        - `professional_specialty_ids` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `business_stage_id` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `current_support_ids` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `investment_range_id` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `emergency_savings_range_id` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `financial_need_ids` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `life_events` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `fee_transparency_preference_id` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `fee_structure_preference_id` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `meeting_format_ids` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
        - `preferred_language` ConsumerOnboardingChoiceField, required
          - `multiple` boolean, required: Whether the answer supports multiple selections
          - `options` ConsumerOnboardingChoiceOption[], required: Finite canonical choices in catalog order
            - `id` integer, required: Canonical catalog identity; IDs are not portable between environments
            - `label` string, required
          - `requires_business_owner` true: Present only for business_stage_id
          - `occurrences` true: Present only for life_events
          - `supports_other` true: Present only for preferred_language
          - `supports_no_preference` true: Present only for preferred_language
    - object[]: Empty when inherited field projection excludes fields
  - `message` string, required

## Other responses

- `401`: Authentication required
- `403`: Consumer role required
- `428`: Password setup required
- `503`: Canonical catalog unavailable; internal failure details are not exposed

---

[API](https://skmtc.dev/chipprofessionals/apis/chip-api-documentation.md) - [All operations](https://skmtc.dev/chipprofessionals/apis/chip-api-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/chipprofessionals/apis/chip-api-documentation/revisions/05e58f424c25?raw)
