Create Appointment
Appointments
Create Appointments
Creates a new appointment for a patient.
POST
Create Appointment
Documentation Index
Fetch the complete documentation index at: https://docs.usecobalt.com/llms.txt
Use this file to discover all available pages before exploring further.
Provider and Location IDs
When creating appointments, use theehr_id values from your providers and locations:
provider: Use theehr_idfromGET /v1/providers(not theid)location: Use theehr_idfromGET /v1/locations(not theid)secondary_provider: Use theehr_idfromGET /v1/providers(not theid)
Don’t use the Cobalt
id here. The id field from GET responses is Cobalt’s internal UUID, used only for updating provider/location settings via PATCH endpoints.Date and Time Formats
You have two options for specifying the appointment date and time:Option 1: ISO 8601 Format (Recommended)
Use thedatetime parameter with full ISO 8601 timestamp including timezone:
YYYY-MM-DDTHH:mm:ss±HH:MM (24-hour time with timezone offset)
Option 2: Separate Date and Time
Usedate and time parameters separately. Important: When using this option, the time must be in 12-hour format with am or pm.
YYYY-MM-DD
Time Format: h:mm am/pm or hh:mm am/pm (12-hour format, must include am/pm)
Preventing Double Bookings
Setprevent_double_booking to "true" to have Cobalt check the provider’s schedule for conflicts before submitting the appointment to your EHR. If the requested time slot overlaps with an existing patient visit or a schedule block, the appointment fails immediately with a descriptive error rather than being submitted.
Supported EMRs: eClinicalWorks, Practice Fusion. This field is accepted but ignored for all other EHR systems.
appointment.failed webhook with the conflict_type and conflict_details fields populated (see Failure Examples below).
If Cobalt is unable to check the provider’s schedule due to a network or EHR connectivity issue, the appointment proceeds normally rather than blocking. The conflict check is a best-effort safeguard.
Complete Example Request
Example Response
Webhook Notifications
When the appointment processing is complete, we will send a webhook to your registered endpoint. Here are examples of what those webhook payloads will look like:Success
Failure Examples
Theappointment.failed webhook event includes a failure_reason and can contain additional fields in the data object depending on the cause of the failure.
Patient Not Found:
Authorizations
Body
application/json
Available options:
true, false When set to "true", Cobalt checks the provider's schedule for conflicts before submitting the appointment to the EHR. If an overlap is detected with an existing patient visit or schedule block, the appointment fails immediately with a structured error rather than being submitted. Supported for eClinicalWorks and Practice Fusion; ignored for all other EHR systems. Defaults to no conflict check when omitted.
Available options:
true, false