Update Schedule
Update an existing schedule slot.
Endpointโ
PATCH /v1/experiences/{id}/schedules/{scheduleId}
Authenticationโ
Requires an API key with the experiences:write scope.
Path Parametersโ
| Parameter | Type | Description |
|---|---|---|
id | integer | Experience ID |
scheduleId | integer | Schedule ID |
Request Bodyโ
All fields are optional. Only include fields you want to update.
| Field | Type | Required | Description |
|---|---|---|---|
date | string | No | New start date (YYYY-MM-DD) |
start_time | string | No | New start time (HH:MM) |
end_time | string | No | New end time (HH:MM); pass null to clear |
end_date | string | No | New return date (YYYY-MM-DD). Set to a later day to make this a multi-day departure, or to the start date to collapse it back to single-day. Omit to leave the existing span untouched |
capacity | integer | No | New capacity |
guides_needed | integer | No | Guides this session needs before it can take bookings (guide availability link). Pass null to fall back to the experience default. |
guide_ids | array | No | New array of guide staff IDs |
booking_option_id | integer | No | Reserve this session for one booking option. Pass null to run it for every option again. Must be an option of this experience |
Example Requestโ
curl -X PATCH "https://app.equipdash.com/api/v1/experiences/1/schedules/3" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"capacity": 15,
"guide_ids": [1]
}'
Responseโ
Success (200 OK)โ
{
"data": {
"id": 3,
"date": "2026-02-20",
"start_time": "10:00",
"capacity": 15,
"booked_slots": 0,
"available_slots": 15,
"available": true,
"guides": [
{
"id": 1,
"name": "John Smith"
}
],
"timezone": "America/New_York",
"start_datetime_utc": "2026-02-20T15:00:00+00:00",
"end_datetime_utc": null,
"multi_day": false,
"days_nights": null,
"days_nights_short": null,
"created_at": "2026-02-01T10:00:00+00:00",
"updated_at": "2026-02-01T12:00:00+00:00"
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-02-01T12:00:00+00:00"
}
}
Errorsโ
| Status | Code | Description |
|---|---|---|
| 400 | validation_error | Invalid request body |
| 401 | authentication_required | No API key provided |
| 403 | insufficient_scope | API key lacks experiences:write scope |
| 404 | not_found | Experience or schedule not found |
| 409 | conflict | New date/time conflicts with existing schedule |
Notesโ
- You cannot reduce capacity below the current number of booked slots
- Changing the date or time will update the
start_datetime_utcaccordingly - A start-only edit (no
end_datein the request) preserves an existing multi-day span โ it will not collapse a multi-day departure to single-day - To remove all guides, pass an empty array:
"guide_ids": [] - Updating a schedule does not affect existing bookings on that schedule