Calendar & scheduling
Cal.com setup guide
Booking pages and bookings in Cal.com. Agents look up event types and open slots, book, reschedule, confirm or decline bookings for attendees, and follow up when meetings are booked, cancelled or over.
Agents check availability and keep calendars up to date for the people they work with.
Ways to connect
Company admins connect apps, on the Integrations page in Everdeck: open Cal.com, choose one of the ways below, follow its steps and fill in its fields. Everdeck checks what you enter before it saves anything, and asks you to confirm it’s you (your second factor) before you type any secret. How connecting works.
Cal.com can be connected 2 ways. Where there’s a key or token to paste, that’s usually the quickest.
API key
API key.
- In Cal.com open Settings > Developer > API Keys (https://app.cal.com/settings/developer/api-keys), signed in as the user the agent should act for.
- Create a key and copy it. Live keys start with cal_live_; test keys start with cal_.
- Paste the key into the form.
| Field | What to enter |
|---|---|
| API key | A secret: Everdeck saves it encrypted and never shows it again. Where to find it. |
Disconnecting deletes the credentials Everdeck saved, but Everdeck can't revoke them: the key, token or password itself keeps working at Cal.com until you delete or rotate it there.
Your Cal.com OAuth client
Your OAuth app.
This way signs in with an OAuth app you create for Cal.com, as its steps describe: Everdeck never uses an app of its own. Register this redirect URI with your app:
https://everdeck.io/api/oauth/callback
Then save the app’s client ID and secret in Everdeck, on the connect page or under OAuth apps, and sign in.
- Open https://app.cal.com/settings/developer/oauth and create an OAuth client with the redirect URI https://everdeck.io/api/oauth/callback and the scopes listed below.
- Wait for approval: new clients stay pending until a Cal.com admin reviews them, and you get an email with the result.
- Copy the client ID and client secret into the form, then sign in as the Cal.com user the agent should act for.
The scopes Everdeck asks for:
PROFILE_READEVENT_TYPE_READBOOKING_READBOOKING_WRITEWEBHOOK_READWEBHOOK_WRITE
Disconnecting deletes the tokens Everdeck saved. Cal.com documents no revocation endpoint: remove the app in Cal.com's settings.
What agents can do
An agent uses an action only when its charter grants it, on the agent’s Tools tab, where you choose whether each one runs by itself (Auto), asks first or never runs. Each action has a risk tier: tier 3 actions, which customers or the public see, ask first unless you choose otherwise, and tier 4 actions (money, deleting things, access) always need a person. How tools and tiers work.
Actions marked Reads outside content return things people outside your company may have written. Agents treat what they read as information, never as instructions, and their riskier actions later in the same session need approval.
-
List event typesTier 0 · ReadReads outside content
cal_com_list_event_typesList your event types (meeting kinds such as "30 min intro") with id, length, booking page URL, locations and booking questions. Pass username to see another user's public event types.
-
Find open slotsTier 0 · ReadReads outside content
cal_com_get_available_slotsList the open start and end times for an event type between two dates, grouped by date and shown in time_zone.
-
Find bookingsTier 0 · ReadReads outside content
cal_com_list_bookingsList your bookings, newest or soonest first depending on status. Filter by status, attendee email, start and end window, event type, or when bookings were created or changed.
-
Read a bookingTier 0 · ReadReads outside content
cal_com_get_bookingRead one booking with attendees, guests, hosts, location, answers to booking questions and any cancellation or reschedule details. A recurring booking's uid returns every occurrence.
-
Book a meetingTier 3 · ExternalReads outside content
cal_com_create_bookingBook an event type for an attendee at an open slot from get_available_slots. Cal.com sends the attendee and guests its usual booking confirmation unless the event type turns attendee emails off. Event types that require confirmation create a pending booking.
-
Reschedule a bookingTier 3 · External
cal_com_reschedule_bookingMove an accepted or pending booking to a new open start time. Cal.com notifies the attendee and returns the booking with a new uid. For an event type that requires confirmation, the moved booking waits for confirmation again unless rescheduled_by is the event type owner's email.
-
Confirm a booking requestTier 3 · External
cal_com_confirm_bookingAccept a booking that is waiting for your confirmation. The attendee is notified.
-
Decline a booking requestTier 3 · External
cal_com_decline_bookingDecline a booking that is waiting for your confirmation. The attendee is notified with your reason.
-
Cancel a bookingTier 4 · Money or irreversibleReads outside content
cal_com_cancel_bookingCancel a booking for every attendee, with an optional reason they are shown. Passing the uid of a recurring booking cancels every occurrence. This cannot be undone.
-
Record no-showsTier 2 · ReversibleReads outside content
cal_com_mark_absentRecord which attendees (or the host) did not attend a booking. Visible to you and your team only; send absent false to correct a mistake.
Testing, problems and disconnecting
Everdeck checks the connection when you save it. On the connection’s page in Integrations, Test checks it again at any time.
If Cal.com later refuses the connection, for example because a key was deleted or a sign-in expired, the connection shows Needs attention on the Integrations page and the people who manage connections are told. Agents can’t use it until a company admin fixes it with Edit or Reconnect.
To stop agents using Cal.com, open the connection and select Disconnect. Agents stop using it at once and its saved credentials are deleted. What else happens depends on how it was connected: each way above says.
Still stuck?
Email [email protected] and say what you were trying to do. Or browse every guide.