Offers
Manage job offers, generate offer letters, and track offer status.
Get All Offers
GET
/api/recruitment/offersGet all offers with optional filters.
{
"offers": [
{
"id": "...",
"candidate": { "id": "...", "firstName": "John" },
"job": { "id": "...", "title": "Software Engineer" },
"offeredCTC": 120000,
"designation": "Senior Engineer",
"department": "Engineering",
"joiningDate": "2024-02-01",
"status": "sent",
"createdAt": "2024-01-15T10:30:00Z"
}
]
}
Get Offer
GET
/api/recruitment/offers/[id]Get a specific offer details.
{
"offer": {
"id": "...",
"candidate": { ... },
"job": { ... },
"offeredCTC": 120000,
"salaryType": "per-annum",
"pfAmount": 14400,
"esicAmount": 0,
"designation": "Senior Engineer",
"department": "Engineering",
"joiningDate": "2024-02-01",
"officeLocation": "Remote",
"perks": "Health insurance, stock options",
"status": "sent",
"isSigned": false
}
}
Update Offer
PATCH
/api/recruitment/offers/[id]Update offer status or details.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Required | Offer ID (path param) |
status | string | Optional | New status (draft/sent/accepted/rejected) |
{
"offer": { ... updated offer }
}
Get Offer Letter
GET
/api/recruitment/offers/[id]/letterGet generated offer letter HTML.
{
"letterHtml": "<html>...offer letter content...</html>"
}
Offer Statuses
| Status | Description |
|---|---|
draft | Offer is being prepared |
sent | Offer sent to candidate |
accepted | Candidate accepted the offer |
rejected | Candidate rejected the offer |
Salary Types
| Type | Description |
|---|---|
per-annum | Annual salary |
per-month | Monthly salary |
per-day | Per-day salary |
per-hour | Per-hour salary |