How to Set Up Workflows in the Booking Pages Tab
Workflows let you automate emails (or webhooks) around your bookings. For example, send a confirmation the moment someone books, a reminder 24 hours before, or a follow-up after the meeting ends.
Before you start
Workflows only apply to bookings made after you turn the workflow on. Past bookings are not affected.
You need an active booking page to attach a workflow to.
Step 1: Open the Workflows panel
Go to the Booking Pages tab.
Find the booking page you want to automate.
Click ⚡ Workflows on that page's card.
Step 2: Create a new workflow
In the Workflows panel, click New Workflow (or similar "add" button).
Give it a name you'll recognize later, like "24hr reminder" or "Thank you email."
Step 3: Choose a trigger
The trigger decides when the workflow fires. Pick one:
Trigger | Fires when... |
|---|---|
When a booking is made | Immediately after a booking is confirmed |
Before the event starts | X minutes before the scheduled start time |
After the event ends | X minutes after the scheduled end time |
When a booking is cancelled | The booking is cancelled |
When a booking is rescheduled | The booking's time is changed |
When marked a no-show | You mark the attendee as a no-show |
If you choose Before the event or After the event, you'll also set how many minutes (for example, 1440 minutes = 24 hours).
Step 4: Add one or more steps
Each workflow can have multiple steps, and each step is either:
Email — sent to the attendee or the host (you)
Webhook — sends booking data to a URL you provide (for connecting other tools)
For email steps, fill in:
Recipient: attendee or host
Subject
Body
You can personalize the email body and subject with these variables:
{{invitee_name}}{{event_name}}{{start_time}}{{host_name}}{{location}}{{meeting_link}}{{cancel_link}}{{reschedule_link}}
Example: Hi {{invitee_name}}, see you at {{start_time}}!
Adding links
Email bodies support standard markdown link syntax:
[link text](https://example.com)
Example: Add this to your calendar: [Add event]({{meeting_link}})
This renders as a clickable link in the sent email, instead of showing the raw URL. You can combine it with variables, as shown above.
For webhook steps, you'll need the destination URL. A webhook secret is optional and, once saved, cannot be viewed again (only replaced).
What to use webhooks for
A webhook sends booking details to a URL of your choice the moment the trigger fires. This is how you connect Multical to other tools you already use. Common examples:
Zapier or Make: catch the webhook and fan it out to almost anything (Google Sheets row, Slack DM, text message, another app).
Slack: post a message to a channel when someone books, cancels, or no-shows, so your team sees it in real time.
CRM (HubSpot, Airtable, etc.): create or update a contact/record automatically when someone books a call.
Spreadsheets (Google Sheets, Airtable): log every booking to a running list without manual entry.
Custom systems: if you or your team has an internal tool or database, a webhook can feed booking events into it directly.
You don't need to build the receiving end yourself. Zapier and Make both offer a "Catch Webhook" trigger you can point a Multical webhook step at, then build any downstream automation from there without writing code.
Step 5: Turn it on
Toggle the workflow active. Inactive workflows are saved but won't fire.
Step 6: Save
Click save. Your workflow now applies to any new booking on that page.
Good to know
Reschedules: if a booking's time changes, any pending "before/after event" emails are recalculated against the new time automatically. A "when rescheduled" workflow (if you have one) fires too.
Cancellations: cancelling a booking stops any pending time-based emails for it and fires your "when cancelled" workflow, if you have one.
Editing: you can edit a workflow's trigger, steps, or active status at any time. Changes apply going forward only.
Deleting: deleting a workflow also removes its scheduled and past-send history for that workflow.
Troubleshooting
Email didn't send: double check the workflow is marked active, and that the trigger applies to the booking in question (for example, a "before event" workflow only applies to future, confirmed bookings).
Wrong info in the email: check your
{{variable}}spelling matches the list above exactly.