Updates a scheduled appointment on a direct-scheduling agenda. Completed or
cancelled appointments, and appointments synced from an external calendar,
cannot be updated.
scheduledStartAt (Unix seconds) and durationMinutes reschedule the
appointment; passing 0 for either keeps the existing value. notes always
replaces the stored notes, so send the full text. assigneeMemberId reassigns
the appointment to another eligible member. Agenda and appointment type cannot
be changed through this endpoint.
Reschedules or edits a scheduled, locally created direct appointment. Only scheduled appointments on direct-scheduling agendas can be changed. This operation is not idempotent and must not be blindly retried.
RequestUpdateAppointmentRequest
ResponseUpdateAppointmentResponse
UpdateAppointmentRequest
Field
Type
Description
id
string
Appointment to update.
scheduled_start_at
int64
New scheduled start (unix seconds); zero keeps the current start.
duration_minutes
int32
New duration in minutes; zero keeps the current duration.
notes
string
Replacement notes. The stored notes are always overwritten with this value.
assignee_member_id
optional string
Reassign to a specific member eligible for the appointment's agenda.
UpdateAppointmentResponse
Field
Type
Description
appointment
Appointment
The updated appointment.
Related Types
Appointment
Field
Type
Description
id
string
Appointment identifier.
customer_id
string
Customer the appointment is booked for.
agenda_id
string
Agenda the appointment belongs to.
appointment_type_id
string
Appointment type applied to the appointment.
assigned_member_id
string
Member currently assigned, or empty when unassigned.
scheduled_start_at
int64
Scheduled start as unix seconds.
scheduled_end_at
int64
Scheduled end as unix seconds.
duration_minutes
int32
Scheduled duration in minutes.
status
AppointmentStatus
Current lifecycle status.
notes
string
Free-text notes stored on the appointment.
created_at
int64
Unix seconds when the appointment was created.
updated_at
int64
Unix seconds when the appointment was last updated.
{
"id": "<appointment-id>",
"scheduledStartAt": "1788260400",
"durationMinutes": 90,
"notes": "Rescheduled at customer request",
"assigneeMemberId": "<member-id>"
}
This operation is not idempotent. Do not blindly retry after a timeout.