---
title: "Post Initial Tier Assign"
method: POST
path: "/api/episodes/{episode_id}/initial-tier"
tags: ["initial-tier"]
---

# Post Initial Tier Assign

`POST /api/episodes/{episode_id}/initial-tier`

## Request

- Base URL: `https://app.archangelhealth.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://app.archangelhealth.ai/api/episodes/{episode_id}/initial-tier`
- Auth: none declared

Assign the initial tier and persist onto `_patient_store[episode_id]`.

Idempotent: if the same input snapshot has already been recorded, the
persisted blob and event log are not duplicated. The tier reassignment
itself is always recomputed (the algorithm is pure), so the response
is always a fresh `TierAssignment`.

## Path parameters

- `episode_id` string, required

## Headers

- `authorization` string, nullable

## Request body

- AssignInitialTierRequest: Wraps an `InitialTierInput` so future versions can attach metadata.
  - `input` InitialTierInput, required: The full input the algorithm consumes — six categories per PRD §4.
    - `procedure` ProcedureInput, required
      - `cpt_code` string, required
      - `anchor_procedure_family` 'LEJR' | 'CABG' | 'SPINAL_FUSION' | 'HIP_FEMUR_FRACTURE' | 'MAJOR_BOWEL', required
      - `scheduled_date` string, required
      - `is_emergency` boolean
      - `bilateral` boolean, nullable
      - `laterality` 'LEFT' | 'RIGHT' | 'BILATERAL' | 'N_A', nullable
      - `approach` 'OPEN' | 'MIS' | 'ROBOTIC' | 'UNKNOWN', nullable
      - `notes` string, nullable
    - `active_problems` ActiveProblemsInput
      - `problems` ActiveProblem[]
        - `icd10` string, required
        - `description` string
        - `status` 'ACTIVE' | 'RESOLVED' | 'CHRONIC'
        - `onset_date` string, nullable
        - `severity_note` string, nullable
      - `functional_status` 'INDEPENDENT' | 'PARTIALLY_DEPENDENT' | 'TOTALLY_DEPENDENT' | 'UNKNOWN'
      - `bmi` number, nullable
      - `asa_class_if_documented` 1 | 2 | 3 | 4 | 5, nullable
    - `medications` MedicationsInput
      - `medications` Medication[]
        - `rxnorm_code` string, nullable
        - `name` string, required
        - `dose` string, nullable
        - `route` string, nullable
        - `frequency` string, nullable
        - `start_date` string, nullable
        - `indication` string, nullable
    - `allergies` AllergiesInput
      - `allergies` Allergy[]
        - `substance` string, required
        - `reaction_type` 'ANAPHYLAXIS' | 'RASH' | 'GI' | 'ANGIOEDEMA' | 'OTHER' | 'UNKNOWN'
        - `severity` 'MILD' | 'MODERATE' | 'SEVERE', nullable
        - `notes` string, nullable
    - `social_history` SocialHistoryInput
      - `smoking_status` 'NEVER' | 'FORMER' | 'CURRENT' | 'UNKNOWN'
      - `pack_years` number, nullable
      - `alcohol_use` 'NONE' | 'OCCASIONAL' | 'MODERATE' | 'HEAVY' | 'AT_RISK_OR_AUDIT_POSITIVE' | 'UNKNOWN'
      - `substance_use` SubstanceUse[]
        - `substance` 'OPIOIDS' | 'STIMULANTS' | 'CANNABIS' | 'OTHER', required
        - `status` 'ACTIVE' | 'IN_RECOVERY' | 'PRIOR' | 'UNKNOWN'
      - `lives_alone` boolean, nullable
      - `has_reliable_caregiver` boolean, nullable
      - `housing_status` 'STABLE' | 'UNSTABLE' | 'HOMELESS' | 'UNKNOWN'
      - `food_security` 'SECURE' | 'INSECURE' | 'UNKNOWN'
      - `transportation_barrier` boolean, nullable
      - `employment_status` 'EMPLOYED' | 'UNEMPLOYED' | 'RETIRED' | 'DISABLED' | 'UNKNOWN', nullable
      - `primary_language` string, nullable
      - `needs_interpreter` boolean, nullable
      - `age` integer
    - `recent_labs` RecentLabsInput
      - `labs` TriageTypesLabResult[]
        - `loinc` string, nullable
        - `name` string, required
        - `value` number, required
        - `unit` string
        - `drawn_at` string
        - `reference_range` string, nullable
        - `is_abnormal` boolean, nullable
      - `studies` StudyResult[]
        - `type` 'ECHO' | 'ECG' | 'PFT' | 'CXR' | 'STRESS_TEST' | 'CARDIAC_CATH' | 'OTHER'
        - `performed_at` string
        - `summary` string
        - `ejection_fraction` number, nullable
        - `significant_findings` string[]

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/archangelhealth/apis/archangel-health-surgical-patient-platform.md) - [All operations](https://skmtc.dev/archangelhealth/apis/archangel-health-surgical-patient-platform/llms.txt) - [OpenAPI document](https://skmtc.dev/archangelhealth/apis/archangel-health-surgical-patient-platform/revisions/3514f4e119da?raw)
