Skip to main content

List Time Off

Retrieve a paginated list of staff time-off requests.

Endpointโ€‹

GET /v1/staff/time-off

Authenticationโ€‹

Requires an API key with the staff:read scope.

Query Parametersโ€‹

ParameterTypeDefaultDescription
pageinteger1Page number
per_pageinteger15Items per page (max 100)
staff_idinteger-Filter by staff member ID
statusstring-Filter by status: pending, approved, rejected
start_datestring-Return requests whose end date is on or after this date (YYYY-MM-DD)
end_datestring-Return requests whose start date is on or before this date (YYYY-MM-DD)
sortstringstart_dateSort field: id, start_date, end_date, status, created_at
directionstringdescSort direction: asc or desc

Responseโ€‹

Success (200 OK)โ€‹

{
"data": [
{
"id": 7,
"staff_id": 5,
"staff": { "id": 5, "first_name": "Jane", "last_name": "Smith" },
"start_date": "2026-04-14",
"end_date": "2026-04-16",
"start_time": null,
"end_time": null,
"is_all_day": true,
"type": "annual_leave",
"status": "pending",
"reason": "Easter break",
"approved_by": null,
"created_at": "2026-04-01T09:00:00+00:00",
"updated_at": "2026-04-01T09:00:00+00:00"
}
],
"meta": {
"current_page": 1,
"per_page": 15,
"total": 4,
"total_pages": 1,
"request_id": "req_abc123",
"timestamp": "2026-04-01T10:00:00+00:00"
}
}

Errorsโ€‹

StatusCodeDescription
401authentication_requiredNo API key provided
401invalid_api_keyInvalid API key
403insufficient_scopeAPI key lacks staff:read scope

Example Requestโ€‹

curl -X GET "https://app.equipdash.com/api/v1/staff/time-off?status=pending&staff_id=5" \
-H "Authorization: Bearer eqd_live_abc123xyz789..."