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

# Recruitment Module

> Job openings, candidates, interviews, offers, and hiring pipeline.

### Overview

Recruitment covers the hiring pipeline end to end: job openings, a talent pool and candidate
tracking, interview scheduling, offers, job requests (a department asking to hire), and the joining
pipeline once an offer is accepted. On hire, a candidate becomes an [HRMS](/docs/modules/hrms)
employee record. Requires HR-level access (`hrms.employees.view.workspace`) to open.

### Where to find it

| Area | Route |
| - | - |
| Hiring dashboard | `/recruitment` |
| Job openings / job requests | `/recruitment/job-openings`, `/recruitment/job-requests` |
| Talent pool / candidates | `/recruitment/talent-pool`, `/recruitment/candidates`, `/recruitment/candidates/[id]` |
| Interviews / offers | `/recruitment/interviews`, `/recruitment/offers` |
| Onboarding (joining pipeline) | `/recruitment/onboarding` |
| Careers page (external-facing) | `/recruitment/careers` |
| Reports / settings | `/recruitment/reports`, `/recruitment/settings` |

### Core workflows

#### Post a job and assign a hiring manager

1. Go to **Recruitment → Job Openings → Post new job**.
2. Set **Title**, **Department**, **Type**, **Status**, **Skills**, and a real **Hiring Manager** —
   a workspace member picker, not free text.
3. Fields beyond those (Experience, Application Deadline, Salary range, Location, Job Description,
   Publish-To) are present on the form but are **not yet saved** — see Known limitations below.

#### Move a candidate through the pipeline

1. Candidates land in **Talent Pool** or **Candidates** (via the careers page or manual entry).
2. Open a candidate's detail page to move them through your pipeline stages, log interview
   feedback, and progress toward an **Offer**.

#### Schedule an interview

* **Interviews** (`/recruitment/interviews`) is where interview slots are tracked. The **Schedule
  Interview** dialog itself has known data-entry gaps — see Known limitations below before relying
  on it for anything beyond a placeholder record.

#### Hire and onboard

* Accepting an **Offer** moves a candidate into **Onboarding** (the joining pipeline), and on
  completion creates the corresponding HRMS employee record.

### Permissions

Recruiting-team members access this module (gated by `hrms.employees.view.workspace`); it is
workspace-scoped like the rest of HR data.

### Known limitations

* The **Schedule Interview** dialog's form fields (Candidate, Position, Round, Date, Time, Mode,
  Meeting Link, Notes) are not wired to the form state — only workspace and status reach the API on
  submit. There is also no interviewer field yet (interviews can involve more than one person, so
  this needs a proper multi-person model, not a single field) — both are tracked as known gaps to
  fix, not silently accepted.
* The **Post New Job** dialog saves Title/Department/Type/Status/Skills/Hiring Manager, but
  Experience, Application Deadline, Salary range, Location, Job Description, and Publish-To are
  entered in the form and then silently dropped on submit — also a tracked known gap.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.