Update an appointment
Change an appointment: status, window, technicians or release it.
PATCH https://cotlet.dev/api/v1/servicetrade/appointments/{appointment_id}
write Confirm
Send only the fields to change; the rest stay as they are. Technicians and services are replaced as a whole, not added to. Releasing or cancelling reaches technicians and can reach the customer. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| appointment_id integer required | integer | Appointment id from list_appointments. |
| status string | string | One of scheduled, canceled_by_vendor, canceled_by_customer, completed, no_show. |
| window_start string | string | ISO 8601 date-time with offset. |
| window_end string | string | ISO 8601 date-time with offset. |
| technician_ids array | array | Replaces the whole technician list of the appointment. |
| released boolean | boolean | true gives the appointment to its technicians. |
Request
curl -X PATCH https://cotlet.dev/api/v1/servicetrade/appointments/90417 \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"released":true}' result = client.call("servicetrade", "update_appointment", {"appointment_id":90417,"released":True}) const result = await cotlet.call('servicetrade', 'update_appointment', {"appointment_id":90417,"released":true}); cotlet call servicetrade update_appointment --data '{"appointment_id":90417,"released":true}' Example response
{
"appointment_id": 90417,
"status": "scheduled",
"window_start": "2026-10-26T08:00:00-04:00",
"window_end": "2026-10-26T10:00:00-04:00",
"technicians": [
{
"id": 3301,
"name": "Marcus Hill"
}
],
"released": true
}