Get Filtered Vacancies
Retrieve a paginated, filtered list of your vacancies.
Request
POST /v1/vacancies/get-filtered
Content-Type: application/json
X-Api-Key: YOUR_API_KEY_HERE
Request body
{
"skip": 0,
"take": 20,
"orderBy": "dateRegistered",
"descending": true,
"columns": ["id", "refNo", "role", "description", "salaryFrom", "salaryTo"],
"filters": {
"role": "nurse",
"statusId": 1,
"salaryFrom": 30000,
"salaryTo": 60000,
"startDateFrom": "2026-04-01T00:00:00Z",
"startDateTo": "2026-12-31T00:00:00Z"
}
}
All fields are optional. Omit filters entirely to return all active vacancies.
Parameters
| Field | Type | Default | Description |
|---|---|---|---|
skip | integer | 0 | Records to skip (pagination offset) |
take | integer | 20 | Max records to return — capped at 100 |
orderBy | string | "dateRegistered" | Sort field. See allowed values below |
descending | boolean | true | Sort direction |
columns | string[] | (all) | Fields to include in response. See Column Selection |
filters | object | — | Filter criteria (all optional) |
Allowed orderBy values
id · refNo · role · title · startDate · endDate · dateRegistered · salaryFrom · salaryTo · hourlyRate · statusId
Filter fields
| Field | Type | Description |
|---|---|---|
role | string | Case-insensitive partial match on role |
title | string | Case-insensitive partial match on title |
description | string | Case-insensitive partial match on description |
statusId | integer | Exact match on status ID |
jobTypeId | integer | Exact match on job type |
gradeId | integer | Exact match on grade |
specialityId | integer | Exact match on speciality |
locationId | integer | Exact match on location |
divisionId | integer | Exact match on division |
departmentId | integer | Exact match on department |
sourceId | integer | Exact match on source |
salaryFrom | decimal | Minimum salary |
salaryTo | decimal | Maximum salary |
hourlyRateFrom | decimal | Minimum hourly rate |
hourlyRateTo | decimal | Maximum hourly rate |
startDateFrom | ISO 8601 | Earliest start date |
startDateTo | ISO 8601 | Latest start date |
dateRegisteredFrom | ISO 8601 | Earliest registration date |
dateRegisteredTo | ISO 8601 | Latest registration date |
isComplete | boolean | Filter by completion status |
Response
{
"total": 142,
"skip": 0,
"take": 20,
"items": [
{
"id": 1045,
"refNo": "RS-1045",
"role": "Senior Nurse",
"description": "We are looking for a senior nurse...",
"salaryFrom": 35000.00,
"salaryTo": 45000.00
}
]
}
| Field | Description |
|---|---|
total | Total matching records (use for pagination) |
skip | Echo of the requested skip |
take | Echo of the requested take |
items | Array of vacancy objects |