Skip to main content

Staff Shifts API

The Staff Shifts API lets you manage scheduling shifts for your team members.

What is a Staff Shift?โ€‹

A shift represents a scheduled work period for a staff member at a specific location. Shifts can be:

  • Assigned โ€” linked to a specific staff member
  • Open โ€” unassigned and available for pickup

Shift Structureโ€‹

Staff Shift
โ”œโ”€โ”€ Date & Time (shift_date, start_time, end_time)
โ”œโ”€โ”€ Staff Member (optional assignment)
โ”œโ”€โ”€ Location (optional)
โ”œโ”€โ”€ Break Settings (type, time, payment)
โ”œโ”€โ”€ Notes
โ””โ”€โ”€ Status (Open, Unpublished, Published, Updated, etc.)

Shift Statusesโ€‹

StatusDescription
OpenUnassigned shift, available for pickup
UnpublishedAssigned to staff but not yet published
PublishedPublished and visible to staff
UpdatedModified after initial creation
ActiveCurrently in progress
InactiveNo longer active

API Endpointsโ€‹

MethodEndpointDescriptionScope Required
GET/v1/staff/shiftsList all shiftsstaff:read
GET/v1/staff/shifts/{id}Get a single shiftstaff:read
POST/v1/staff/shiftsCreate a new shiftstaff:write
PATCH/v1/staff/shifts/{id}Update a shiftstaff:write
DELETE/v1/staff/shifts/{id}Delete a shiftstaff:write

Common Use Casesโ€‹

List Today's Shiftsโ€‹

curl "https://app.equipdash.com/api/v1/staff/shifts?date=2026-03-09" \
-H "Authorization: Bearer YOUR_API_KEY"

Create a Shift for a Staff Memberโ€‹

curl -X POST "https://app.equipdash.com/api/v1/staff/shifts" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"staff_id": 5,
"shift_date": "2026-03-15",
"start_time": "09:00",
"end_time": "17:00"
}'
  • Staff Members - Manage team members assigned to shifts
  • Webhooks - Get notified on shift changes (shift.created, shift.updated, shift.deleted)