Text a personal SMS confirmation when someone books on Cal.com

When a new Cal.com booking comes in, an agent texts the attendee a friendly confirmation by name and logs the meeting to a Google Sheet.

Agentic Task
Cal.comTwilioGoogle SheetsSalesOperationsMeeting WorkflowsNotifications & Alerts

Build me an agent that sends a personalized SMS confirmation the moment someone books a meeting with me on Cal.com.

Trigger: a Cal.com poll trigger on new_booking. Whenever a new booking appears, the agent runs once for that booking.

What the agent should do, in order:

1. Call Cal.com Get a Booking using the booking id from the trigger payload. Pull the attendee first name, phone number, event type title, start time, attendee time zone, location or join link, and any intake form answers (responses / bookingFieldsResponses).

2. If no phone number was collected on the booking, skip the SMS step entirely and continue to logging. Do not error out.

3. Otherwise, draft a friendly 1 to 2 sentence SMS confirmation that: addresses the attendee by first name, restates the start time in their local time zone with the time zone abbreviation, and includes the meeting link (for video meetings) or the address (for in-person meetings). If the intake form answers contain something concrete that warrants prep (for example a specific question they want to discuss, a doc they want reviewed, a context about their company), add one short additional line with tailored prep guidance. Otherwise keep it to the confirmation sentence only. Keep the total message under 320 characters so it fits comfortably in two SMS segments.

4. Send the SMS via Twilio Send a Message, using my Twilio number as the From and the attendee's phone number (in E.164 format) as the To.

5. Append a row to my bookings log in Google Sheets via Append Values. The columns are: timestamp sent, attendee name, attendee phone, event type, start time (in attendee time zone), location or join link, and the exact SMS body that was sent. If the SMS was skipped because no phone was collected, log the row anyway and put 'skipped: no phone' in the SMS body column.

Inputs the workflow should ask me to configure once: my Twilio sending phone number, my Google Sheet ID, and the sheet tab name to append to.

Tone for the SMS: warm and human, like a quick note from me personally. Not corporate. No emojis unless the event type clearly calls for a casual vibe. Never start with 'Hi {firstName},' as a hollow template; lead with something that feels like I actually wrote it.

Additional information

What does this prompt do?
  • Sends a warm SMS confirmation to the attendee the moment they book a meeting with you.
  • Personalizes the text using their first name, the time restated in their time zone, and the meeting link or address.
  • Adds one tailored line of prep guidance when the event type calls for it, pulling from their intake form answers.
  • Logs every confirmation to a Google Sheet so you have a clean audit trail of who was texted and what was sent.
What do I need to use this?
  • A Cal.com account with an API key.
  • A Twilio account with a phone number that can send SMS.
  • A Google account and a Google Sheet to use as the bookings log.
How can I customize it?
  • Change the tone or length of the SMS, for example more formal for executive calls or playful for product demos.
  • Decide which event types should get a prep instruction line and which should stay short and simple.
  • Swap the Google Sheet log for a different spreadsheet, add columns, or turn the logging step off entirely.

Frequently asked questions

What happens if the attendee did not share a phone number?
The agent skips the text gracefully and still records the booking in your Google Sheet so nothing falls through the cracks.
Will the meeting time show up in the attendee's local time zone?
Yes. The agent reads the time zone the attendee selected when they booked and restates the time that way in the SMS.
Can the message reference what the attendee wrote in the intake form?
Yes. The agent reads their intake answers and, when it makes sense for that event type, adds one short line of prep guidance based on what they told you.
Can I send a WhatsApp message instead of an SMS?
Yes. Twilio supports WhatsApp on the same connection, so you can swap the channel as long as your Twilio number is enabled for it.
Does this work for free Cal.com plans?
It works on any Cal.com plan that gives you an API key. Paid plans tend to support richer event types and intake forms, which makes the personalization stronger.

Stop retyping the same confirmation message to every meeting attendee.

Connect Cal.com, Twilio, and Google Sheets once and let Geni send a warm, personal text the moment a booking lands.