List Open Shifts
Changed onLists the open shifts the authenticated employee could claim: published, claimable shifts on the employee's schedules that have not started, have a spot left, are not already assigned to them, and start on a day the employee has an active employment status. A shift the employee was previously declined for stays listed. Rows carry no evaluation; evaluate them with POST /api/v1/scheduling/shift-claims/evaluate. There is no employee parameter, and a caller without an employee record gets an empty list, as does every caller while Open Shifts is off. The filter must bound start or end from below and above, within 31 days.
OAuth Scopes: scheduling:shifts
Request
- Base URLhttps://companySubDomain.bamboohr.com
- Auth
- HTTP basic
- or OAuth 2Authorization code/authorize.phpToken URL/token.phpScopesscheduling:shifts
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Query parameters
OData v4 filter expression. Required: a date window on start or end, bounded below (ge, gt, eq) and above (le, lt, eq), at most 31 days wide. Allowed fields: id, scheduleId, name, start, end, claimsRequireApproval.
Sort expression on any filterable field (e.g. start desc). Defaults to start ascending.
The starting page for pagination.
The number of items to be returned. Maximum 100.
Response
Open shifts retrieved successfully
Example response
{
"data": [
{
"id": "019aa09f-0712-74cb-9186-8ad0eb6038dc",
"scheduleId": "0199de9b-6bcb-77e7-941d-3caf74b9a372",
"name": "Morning Shift",
"start": "2025-01-01T06:00:00Z",
"end": "2025-01-01T14:00:00Z",
"timezone": "America/Denver",
"claimsRequireApproval": true
}
]
}Changes
- info
endpoint added
- info