Work Shifts API Reference

List Event Work Shifts

Retrieve a paginated list of work shifts for a specific event. Requires admin permissions.

HTTP Request

GET /v1/work_shifts/event/{event_uuid}

URL Parameters

Parameter Type Description
event_uuid string The UUID of the event to retrieve work shifts for

Query Parameters

Pass as query string parameters in the URL.

Parameter Type Description
page integer Page number for pagination (default: 1)
per_page integer Number of items per page (default: 15, max: 100)

cURL Example

curl -X GET "https://api.eventstaffapp.com/v1/work_shifts/event/0c663c18-34b9-4d63-9caf-b6075b37607b?page=1&per_page=10" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json"

Response Fields (each work shift in data.data)

Field Type Description
uuidstringWork shift UUID
event_namestringName of the event this shift belongs to
positionstringPosition title for the shift (e.g., "Brand Ambassador")
first_namestringStaff member's first name
last_namestringStaff member's last name
start_timestringScheduled start time (Y-m-d H:i:s), null if TBD
start_time_tbdstring"true" or "false" - whether start time is to be determined
end_timestringScheduled end time (Y-m-d H:i:s), null if TBD
end_time_tbdstring"true" or "false" - whether end time is to be determined
pay_ratefloatPay rate for the shift in USD, null if using position default
confirmedstring"yes" or "no" - whether the staff member has confirmed the shift
created_atstringWhen the shift was created in UTC (Y-m-d H:i:s)
modified_atstringWhen the shift was last modified in UTC (Y-m-d H:i:s)

Example Response

{
    "success": true,
    "data": {
        "current_page": 1,
        "data": [
            {
                "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
                "event_name": "Beach Wedding Reception",
                "position": "Brand Ambassador",
                "first_name": "Jane",
                "last_name": "Smith",
                "start_time": "2026-06-15 17:00:00",
                "start_time_tbd": "false",
                "end_time": "2026-06-15 23:00:00",
                "end_time_tbd": "false",
                "pay_rate": 25.00,
                "confirmed": "yes",
                "created_at": "2026-05-01 10:30:00",
                "modified_at": "2026-05-10 14:15:00"
            },
            {
                "uuid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
                "event_name": "Beach Wedding Reception",
                "position": "Event Coordinator",
                "first_name": "John",
                "last_name": "Doe",
                "start_time": null,
                "start_time_tbd": "true",
                "end_time": null,
                "end_time_tbd": "true",
                "pay_rate": null,
                "confirmed": "no",
                "created_at": "2026-05-02 08:00:00",
                "modified_at": "2026-05-02 08:00:00"
            }
        ],
        "per_page": 10,
        "total": 2,
        "last_page": 1
    },
    "message": ""
}

Notes

  • - All work shift operations require a valid Bearer token and admin user permissions
  • - The event UUID is used in the URL to identify which event's shifts to retrieve
  • - Only active shifts are returned (deleted and canceled shifts are excluded)
  • - Results are scoped to the authenticated user's business
  • - When pay_rate is null, the position's default pay rate applies