title: Cal.com
Cal.com is a modern and open source scheduling platform. With HIPAA, GDPR and SOC2 compliance, you can ensure that data is well-protected and that makes Cal.com a great fit for healthcare use cases.
This extension allows you to let a stakeholder (eg: a patient) book an appointment as part of a care flow and to retrieve the booking details of an appointment.
In order to set up this extension, you will need to provide a Cal.com API key. You can obtain an API key via the Cal.com portal (Settings > Developer > API keys
).
You can add this action to your care flow to enable a stakeholder (eg: a patient) to book an appointment in a predefined calendar. This is a stakeholder-actionable action which means it requires an actual user to book an appointment. Also note that this is a blocking action and that the care flow will not progress - unless there are parallel tracks or transitions - until the action/activity is completed (i.e. an appointment was booked).
The actual booking of the appointment can happen in two ways:
Below you can find an overview of all Awell Apps and whether they support rendering of the booking widget.
App | Supported |
---|---|
Awell Hosted Pages | Yes |
Your app (custom integration) | Yes |
Awell Care | No |
Awell MyCare | No |
Adding this action to your care flow will expose a new data point you can use in your care flow, the bookingId
. When the care flow is orchestrated and the book appointment activity is completed, the id of the actual booking will be ingested as the value of that bookingId
data point.
This action allows you to fetch the details of a booking based on the provided bookingId
. This action will make the following data points available for you to use in your care flow:
Updates a booking and saves new bookingId
and bookingUid
as Data Points. Values possible to update:
Creates a booking and saves new bookingId
as Data Points. Available fields:
json
"responses": {
"name": "John Doe",
"email": "john.doe@example.com",
"location": "Calcom HQ"
},
Deletes a Booking with a given ID.
This extension is free but keep in mind that you might need a paid plan for Cal.com depending on your needs.
When a previously made booking is rescheduled, there is no way yet to get the new/updated booking details into the care flow or have the care flow react on the updated booking.
Also note that when a booking is rescheduled, Cal.com doesn't update the original booking resource but creates a new one instead. As far as we know, there is no reference from the old booking to the new (rescheduled) booking.
An appointment has been booked with Cal.com and we have the below booking resource:
{
...,
"bookingId": "1",
"date": "Jan 1, 2023"
}
However, the patient reschedules the booking to Jan 10, 2023. When querying Cal.com's API (GET v1/bookings/{bookingId}
), it will still return the old booking date instead of the new/rescheduled date.
{
...,
"bookingId": "1",
"date": "Jan 1, 2023"
}
Webhooks offer a great way to automate the flow with Awell when invitees schedule, cancel, or reschedule events, or when the meeting ends.
Important notes: