Cancel Appointment

  • Type: Controller
  • Verb: POST
  • Default URL Path for Single-Source System: <base-url>/Appointment/{sourceAppointmentId}
  • Default URL Path for Multi-Source System:* <base-url>/Appointment/{sourceSystem}/{sourceAppointmentId}

Where:

  • sourceSystem identifies the source system.
  • sourceAppointmentId is the ID of an appointment in the source system.

Your Base URL is configured in Setup > Appointment Scheduling.

All communications with the external system use the FHIR R4 standard.

Request Body

1{
2         "resourceType": "Appointment",
3         "id": "1839594",
4         "status": "cancelled",
5         "cancelationReason" : {
6         "coding" : [
7         {
8         "system" : "http://terminology.hl7.org/CodeSystem/appointment-cancellation-reason",
9         "code" : "pat-mv"
10         }
11         ]
12         }
13         }

Response Codes

  • 200: Success
  • 401: Unauthorized
  • 404: Appointment not found
  • 5xx: Server error

To map slots, resourceType, id, identifier, serviceType, appointmentType, slot, participant, actor, and status are required in the FHIR response.

1{
2    "resourceType" : "Appointment",
3    "id" : "<string>"
4    "identifier" : [{ Identifier }], //Source system identifier mandatory in the response if there are multiple source systems
5    "cancelationReason" : { CodeableConcept },
6    "serviceCategory" : [{ CodeableConcept }],
7    "serviceType" : [{ CodeableConcept }],
8    "specialty" : [{ CodeableConcept }],
9    "appointmentType" : { CodeableConcept },
10    "reasonCode" : [{ CodeableConcept }],
11    "reasonReference" : [{ Reference(Condition|Procedure|Observation|ImmunizationRecommendation) }],
12    "priority" : "<unsignedInt>",
13    "description" : "<string>", 
14    "supportingInformation" : [{ Reference(Any) }],
15    "start" : "<instant>",// start of the appointment - ISO 8601 format
16    "end" : "<instant>",// end of the appointment - ISO 8601 format
17    "minutesDuration" : "<positiveInt>",
18    "slot" : [{ Reference(Slot) }],
19    "created" : "<dateTime>",
20    "comment" : "<string>",
21    "patientInstruction" : "<string>",
22    "basedOn" : [{ Reference(ServiceRequest) }],
23    "participant" : [{"type" : [{ CodeableConcept }],//Patient EHR id
24    "actor" : { Reference(Patient|Practitioner|PractitionerRole|RelatedPerson | Device|HealthcareService|Location) }, //Practitioner EHR id
25    "required" : "<code>",
26    "status" : "<code>", // Mandatory in the response
27    "period" : { Period }}],
28    "requestedPeriod" : [{ Period }
29    ]
30}

"Cancelation" is spelled with one L, per the FHIR R4 specification.

Note

The valid values for status are:

  • proposed
  • pending
  • booked
  • arrived
  • fulfilled
  • cancelled
  • noshow
  • entered-in-error
  • checked-in
  • waitlist

If the request cannot be processed for any reason (e.g. it’s unsupported, there’s a timeout, etc.) status is returned as proposed.