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

Parameters: update_appointment
NameTypeDescription
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
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}'
Python
result = client.call("servicetrade", "update_appointment", {"appointment_id":90417,"released":True})
Node.js
const result = await cotlet.call('servicetrade', 'update_appointment', {"appointment_id":90417,"released":true});
CLI
cotlet call servicetrade update_appointment --data '{"appointment_id":90417,"released":true}'

Example response

JSON

{
  "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
}

Sign in once. Your agent does the rest.

Sign up and add the apps you need. Free 7-day trial with 2,000 credits, no card needed.