Statuses & Transitions
Every job application in Nico follows a lifecycle from initial discovery to final outcome. There are 12 statuses organized into 5 categories that map to your kanban board columns.
Status overview
| Category | Status | Description |
|---|
| Draft | proposed | Job suggested by an AI agent, awaiting your decision |
| draft | You’re preparing your application materials |
| Applied | applied | Application has been sent to the company |
| acknowledged | Company has confirmed receipt of your application |
| Interviewing | phone_screen | Initial phone or video screening scheduled |
| interviewing | You’re in the active interview process |
| final_round | Final round of interviews |
| Offer | offer | You’ve received a job offer |
| negotiating | You’re discussing terms and conditions |
| Finished | hired | You accepted the offer — congratulations! |
| rejected | The company declined your application |
| withdrawn | You decided not to continue with this application |
State machine diagram
Forward transitions
The typical happy path moves forward through these stages:
| Action | From | To | What happened |
|---|
| Decide to pursue | proposed | draft | You chose to pursue an AI-suggested job |
| Submit application | proposed, draft | applied | You sent your application to the company |
| Company confirms | applied | acknowledged | The company confirmed receipt |
| Phone screen | applied, acknowledged | phone_screen | A phone/video screening was scheduled |
| Start interviews | applied, acknowledged, phone_screen | interviewing | Formal interviews begin |
| Final round | phone_screen, interviewing | final_round | You advanced to final interviews |
| Receive offer | phone_screen, interviewing, final_round | offer | The company made you an offer |
| Negotiate | offer | negotiating | You’re discussing terms |
| Accept offer | offer, negotiating | hired | You accepted — you’re hired! |
Terminal transitions
These can happen from any active status:
| Action | To | Who decides | Description |
|---|
| Reject | rejected | Company | The company declined your application |
| Withdraw | withdrawn | You | You decided not to continue |
Termination reasons
When an application ends in rejected or withdrawn, you can record why.
Rejection reasons
Withdrawal reasons
When a company rejects your application:| Reason | Description |
|---|
no_response | No response from the company |
position_filled | The position was filled by someone else |
others_more_qualified | Other candidates were more qualified |
not_qualified | You didn’t meet the qualifications |
location_mismatch | Location requirements weren’t met |
no_work_authorization | Work authorization issues |
culture_fit | Culture fit concerns |
other | Another reason |
When you decide to withdraw:| Reason | Description |
|---|
accepted_other_offer | You accepted a different offer |
compensation_too_low | The pay was below your expectations |
location_mismatch | The location didn’t work for you |
culture_fit | You had concerns about company culture |
work_life_balance | Work-life balance concerns |
company_reputation | Concerns about the company’s reputation |
other | Another reason |
Furthest status tracking
Nico automatically tracks the furthest point each application reaches. Even if you move an application backward (for rescheduling, for example), the furthest status is preserved.
This powers your statistics — helping you understand where in the process your applications typically succeed or stall.
Tracking order: draft → applied → acknowledged → phone_screen → interviewing → final_round → offer → negotiating → hired
Terminal states (rejected, withdrawn) don’t update the furthest status — only forward progress through the pipeline counts.