The rule that matters
The agent must call the availability tool before it can offer a time. This is enforced on the booking path rather than requested in the prompt, so the agent cannot skip it under pressure from a customer asking “just book me in for tomorrow morning”. Equally, the agent cannot claim a booking was made unless the booking tool actually committed one. A reply that asserts a confirmed appointment with no successful tool call behind it is caught before the customer sees it.The flow
1
Understand what they want
Service or offering, and any constraints (a particular person, a branch, a time of day).
2
Check availability
Real availability from your calendar, filtered by your working hours, holidays and the rules
your vertical pack sets.
3
Offer real slots
The agent offers times that are actually free. If nothing fits, it says so and offers the nearest
alternatives rather than inventing a slot.
4
Confirm the details
Name, contact detail, and the specifics your business needs. Email addresses are read back on
voice before use.
5
Book and confirm
The appointment is written to your calendar, the customer gets a confirmation, and the record is
written to your CRM.
Guards
Day-word guard. “Next Tuesday” is ambiguous, and getting it wrong books the right time in the wrong week. Day words are resolved against your timezone and the current date, and the agent confirms the resolved date rather than repeating the phrase back. Identity guard. Changing or cancelling an existing appointment requires the caller to match the appointment. The agent will not move someone else’s booking because a caller knows their name. Slot-offered guard. A customer can only accept a slot that was actually offered. This stops a conversation drifting into a confirmed time that was never on the table. Timezone. Everything is anchored to your workspace timezone, not the caller’s, unless you configure otherwise.Calendars
Bookings write to the calendar you connect. See Calendars for what is supported and how to connect it. If you have no calendar connected, the agent still captures the request and creates a lead, and your team completes the booking. It says the appointment is requested rather than confirmed.Changes and cancellations
Reschedules and cancellations run through the same tools and the same identity guard. Both write back to your calendar and your CRM, and both emit events your triggers and webhooks can act on.Reminders
Appointment reminders can be sent ahead of the booking on a delay you choose. On WhatsApp, a reminder sent outside the 24-hour window needs an approved template, and if none is registered the reminder is skipped rather than failing silently. See WhatsApp.Events
Booking emitsbooking.created, and the appointment envelope carries the scheduled start, which is
what makes “remind them two hours before” a rule rather than an integration.