--- title: Application Status Reference collection: Hub User Guide path: Hub User Guide/Reference/Application Status Reference parentDocument: Reference outlineId: 84ce9efa-0f15-4cb0-9036-2ef0757446d7 createdBy: Jennie R.F. --- Every application moves through a defined set of statuses as it progresses from submission to final outcome. This page documents each status, what it means, and the valid transitions between them. ## Status Definitions `**new**` -- Application recently submitted. This is the starting status for every application that comes in through the apply form. `**waiting_first_round**` -- Waiting to be scheduled for a first-round interview. The application has been advanced from its initial review stage into the first-round interview stage but does not yet have an interview booked. `**first_round_scheduled**` -- First-round interview has been scheduled. Set automatically when a Cal.com booking webhook matches the applicant's email, or when an admin manually changes the status. `**needs_first_decision**` -- First round complete, awaiting a decision. Set automatically when an admin locks the first-round stage (all completed reviews must be locked and the minimum reviewer threshold met). `**waiting_second_round**` -- Waiting to be scheduled for a second-round interview. The committee decided to advance the application past the first round into a second-round stage. `**second_round_scheduled**` -- Second-round interview has been scheduled. Same mechanism as first round -- triggered by a Cal.com webhook match or manual status change. `**needs_final_decision**` -- Second round complete, awaiting final decision. Set automatically when the final stage is locked. `**accepted**` -- Application accepted into the cohort. Terminal status. `**waitlist**` -- Application waitlisted. Can still transition to `accepted` or `declined`. `**declined**` -- Application declined. Terminal status. ## Valid Transitions Each status can only move to specific next statuses. The system enforces these rules and rejects invalid transitions. * `new` → `waiting_first_round`, `first_round_scheduled`, `declined` * `waiting_first_round` → `first_round_scheduled`, `waiting_second_round`, `declined` * `first_round_scheduled` → `needs_first_decision`, `waiting_first_round`, `declined` * `needs_first_decision` → `waiting_second_round`, `accepted`, `waitlist`, `declined` * `waiting_second_round` → `second_round_scheduled`, `accepted`, `waitlist`, `declined` * `second_round_scheduled` → `needs_final_decision`, `waiting_second_round`, `declined` * `needs_final_decision` → `accepted`, `waitlist`, `declined` * `accepted` → (none -- terminal) * `waitlist` → `accepted`, `declined` * `declined` → (none -- terminal) ## What Triggers Transitions **Automatic transitions:** * **Stage locking** sets `needs_first_decision` or `needs_final_decision` depending on whether the locked stage is the final stage or a first-round stage. * **Advancing to next stage** sets `waiting_first_round` or `waiting_second_round` based on the next stage's type. If an interview is already scheduled for that round, the status skips directly to `first_round_scheduled` or `second_round_scheduled`. * **Cal.com webhooks** move an application from `waiting_first_round` to `first_round_scheduled` (or the second-round equivalent) when a booking is created. **Manual transitions:** * Admins can change any application's status through the **Applications** tab, provided the transition is valid. * Bulk status changes are available for processing multiple applications at once. * The **Decisions** tab records accept, waitlist, or decline decisions and updates the status accordingly. :::info An application can be declined from almost any active status. The `waitlist` status is the only non-terminal outcome status -- waitlisted applications can still be accepted or declined later. ::: ## Status Groups The system groups statuses for filtering: * **Active:** `new`, `waiting_first_round`, `first_round_scheduled`, `needs_first_decision`, `waiting_second_round`, `second_round_scheduled`, `needs_final_decision` * **Decision pending:** `needs_first_decision`, `needs_final_decision` * **Terminal:** `accepted`, `waitlist`, `declined`