Skip to main content
PATCH
Update an appointment
Use the Cobalt id in the URL path. The {id} parameter should be the Cobalt appointment ID returned from API responses or GET endpoints, not the EHR ID.
The update process differs based on the current status of the appointment:

1. Updating Pending or Failed Appointments

For appointments with a status of ‘pending’ or ‘failed’, you can update any attribute of the appointment.

2. Updating Scheduled Appointments

For appointments with a status of ‘scheduled’, you can update the status, note, or visit type.
Rescheduling (changing date/time): a Scheduled appointment’s date/time cannot be edited in place. To reschedule, follow the standard flow clinics use to keep cancellations tracked: PATCH the existing appointment’s status to a cancelled status (from GET /visit-statuses), then create a new appointment at the new time with POST /v1/appointments.

Example Request for Updating a Pending/Failed Appointment

Example Response

Authorizations

client_id
string
header
required
client_secret
string
header
required
access_token
string
header
required

Path Parameters

id
string
required

Cobalt appointment ID (UUID, with or without dashes).

Body

application/json
status
string

New appointment status. Validated against the account's visit statuses.

Example:

"cancelled"

note
string

Replacement appointment note.

Example:

"Purpose of visit: Annual checkup"

cancellation_reason
string

Reason for a cancel / no-show / reschedule. Must accompany a status change to Cancelled, Rescheduled, or No Show, and must match one of the practice's configured reasons (eClinicalWorks only).

Example:

"Patient Illness"

type
string

New visit type code (eClinicalWorks only).

Example:

"NP"

duration

New duration in minutes, updatable only together with type (eClinicalWorks only).

Example:

"30"

skip_visit_type_validation
enum<string>

Skip visit-type validation on a type update (eClinicalWorks only).

Available options:
true,
false
provider
string

New rendering provider EMR ID (eClinicalWorks only).

Example:

"provider-123"

secondary_provider
string

New secondary provider / resource EMR ID (eClinicalWorks only).

Example:

"provider-456"

practice_id

eClinicalWorks practice ID.

Example:

"practice-1"

mrn
string

Patient MRN (retry of a failed appointment only).

Example:

"12345"

datetime
string<date-time>

New appointment datetime, ISO 8601 (retry of a failed appointment only).

Example:

"2026-06-15T14:30:00-07:00"

callback_urls

URL(s) to receive the completion webhook for this update.

Example:

Response

Appointment update queued

success
boolean
required
message
string
required
appointment_id
string
required
job_id
integer