List Shifts
Changed onLists shifts matching the given filters. Either provide ids (ignores all other filters) or provide start, end, and at least one of employeeIds or scheduleIds. The time window must be no longer than 1 month. Defaults to returning planned and published shifts.
OAuth Scopes: scheduling:shifts, time_tracking
Request
- Base URLhttps://companySubDomain.bamboohr.com
- Auth
- HTTP basic
- or OAuth 2Authorization code/authorize.phpToken URL/token.phpScopesscheduling:shifts
- or OAuth 2Authorization code/authorize.phpToken URL/token.phpScopestime_tracking
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Query parameters
Filter by shift IDs, as either a comma-separated string (e.g. id1,id2) or an array. If provided, other filters are ignored.
Start datetime for the shift window (ISO-8601 datetime string). Required if ids not provided.
End datetime for the shift window (ISO-8601 datetime string). Required if ids not provided.
Filter by employee IDs, as either a comma-separated string (e.g. 10,20) or an array. Use the string "null" as a value to include unassigned shifts (e.g. employeeIds=10,null).
Filter by schedule IDs, as either a comma-separated string (e.g. id1,id2) or an array.
Filter by shift statuses, as either a comma-separated string (e.g. planned,published) or an array.
The starting page for pagination.
The number of items to be returned.
Response
Shifts retrieved successfully
Example response
{
"data": [
{
"id": "019aa09f-0712-74cb-9186-8ad0eb6038dc_20240101T093000",
"scheduleId": "0199de9b-6bcb-77e7-941d-3caf74b9a372",
"name": "Morning Shift",
"color": "00FFAA",
"capacity": 1,
"claimsRequireApproval": true,
"start": "2025-01-01T06:00:00Z",
"end": "2025-01-01T14:00:00Z",
"timezone": "America/Denver",
"recurrenceRule": "FREQ=WEEKLY;INTERVAL=1",
"recurrenceId": "20240101T090000",
"recurrenceDtstart": "2024-01-01T09:00:00Z",
"recurrenceDtend": "2024-12-31T23:59:59Z",
"recurrenceUntil": "2024-12-31T23:59:59Z",
"employeeIds": [
10,
20
],
"createdAt": "2025-01-01T06:00:00Z",
"updatedAt": "2025-01-01T06:00:00Z",
"deletedAt": "2025-01-01T06:00:00Z"
}
]
}Changes
- info
the security scope
scheduling:shiftswas added to the endpoint's security schemeoauth - info
the security scope
time_trackingwas removed from the endpoint's security schemeoauth - info
added the required property
//to the response with the status - info
added the required property
//to the response with the status
- info