---
title: "List Time Off Requests"
method: GET
path: "/api/v1/time_off/requests"
tags: ["Time Off", "Public API"]
---

# List Time Off Requests

`GET /api/v1/time_off/requests`

Returns time off requests within the specified date range. Both `start` and `end` query parameters are required (YYYY-MM-DD). The search is inclusive: requests whose date range overlaps the query window are returned. Results can be filtered by status, employee, time off type, or limited to requests the caller can approve.

OAuth Scopes: time_off

## Query parameters

- `id` string
- `action` 'view' | 'approve' | 'myRequests'
- `employeeId` string
- `start` string, date, required
- `end` string, date, required
- `type` string
- `status` string
- `excludeNote` string

## Headers

- `AcceptHeaderParameter` 'application/xml' | 'application/json'

## Response `200`

A list of time off requests matching the specified filters.

- object[]
  - `id` string — The time off request ID.
  - `employeeId` string — The internal employee ID.
  - `name` string — The employee's full name.
  - `start` string, date — The start date of the request in YYYY-MM-DD format.
  - `end` string, date — The end date of the request in YYYY-MM-DD format.
  - `created` string, date — The date the request was created in YYYY-MM-DD format (company timezone).
  - `status` object — The current status of the request.
    - `lastChanged` string, date — The date the status was last changed (company timezone).
    - `lastChangedByUserId` string — The user ID who last changed the status.
    - `status` string — The current status value.
  - `type` object — The time off type for this request.
    - `id` string — The time off type ID.
    - `name` string — The time off type name.
    - `icon` string — The icon name for the time off type.
  - `amount` object — The amount of time off requested.
    - `unit` 'hours' | 'days' — The unit of measurement.
    - `amount` number — The total amount requested.
  - `actions` object — Actions the current user can perform on this request.
    - `view` boolean — Whether the user can view this request.
    - `edit` boolean — Whether the user can edit this request.
    - `cancel` boolean — Whether the user can cancel this request.
    - `approve` boolean — Whether the user can approve this request.
    - `deny` boolean — Whether the user can deny this request.
    - `bypass` boolean — Whether the user can bypass the approval workflow.
  - `dates` object — A map of dates (YYYY-MM-DD) to daily amounts.
  - `notes` object — Notes from employee and/or manager. Omitted when `excludeNote` is set.
    - `employee` string — Note from the employee.
    - `manager` string — Note from the manager.

## Other responses

- `400` — Invalid or missing start/end date.
- `401` — Unauthorized. Invalid API credentials.

---

[API](https://skmtc.net/bamboohr/apis/bamboohr-api.md) · [All operations](https://skmtc.net/bamboohr/apis/bamboohr-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bamboohr/bamboohr-api/versions/19ebf391a399/schema)
