Weekday SMS appointment reminders from your Google Calendar

Every weekday at 8am, text tomorrow's clients a friendly reminder pulled from your calendar and post a summary to Slack.

Agentic Task
ClickSendGoogle CalendarSlack BotOperationsPersonal ProductivityMeeting WorkflowsNotifications & Alerts
PromptCreate

Build me an appointment reminder agent that runs on a cron trigger every weekday at 8am in my local time zone.

Each run, use Google Calendar's List Events on my primary calendar (plus any additional calendars I specify at setup) to fetch events starting in the next 24 hours. Include the event summary, description, location, hangout / conference link, start and end time, and the attendee list.

For each event, the agent should reason about who the client is and where their mobile phone number lives. Phone numbers may appear in the event description as free text, inside an attendee's display name, or on an attendee entry. Extract the client's name and phone number, then normalize the number to E.164 using a default country code I configure (e.g. +1 for US). If no plausible mobile number can be extracted, skip the event and remember it as "skipped: missing number" for the summary.

Also skip any event whose extendedProperties.private already contains reminder-sent = "true" so the same client isn't texted twice, and skip events that are all-day, cancelled, marked as free/out-of-office, or that are internal team meetings with no external client.

For every event that passes the checks, draft a short, friendly SMS (under 300 characters) that includes the client's first name, the appointment day and time in my local time zone, the location or video meeting link, and my business name. Then send it via ClickSend's Send SMS operation. Use my configured sender ID or dedicated number as the from field.

After a successful send, call Google Calendar's Patch Event to set extendedProperties.private.reminder-sent = "true" on that event so it won't be re-reminded on subsequent runs.

When all events are processed, post a one-line summary to a Slack channel I specify using Slack Bot's Send a Message operation. The summary should show how many reminders were sent, how many events were skipped because a phone number could not be found (with the event titles), and how many were already reminded. If zero events matched, post something short like "No reminders needed today".

Setup inputs I should be prompted for: business name, default country code, additional calendar IDs (optional), ClickSend sender ID or number, Slack channel ID for the summary, and the local time zone for the 8am schedule.

What does this prompt do?

  • Scans your Google Calendar every weekday morning for appointments happening in the next 24 hours.
  • Figures out each attendee's name and mobile number, even when the phone number is buried in the event description.
  • Sends every client a short, personalized SMS through ClickSend with the time, location or video link, and your business name.
  • Skips anyone already reminded, and posts a one-line recap in Slack showing how many texts went out and which events were skipped.

What do I need to use this?

  • A Google Calendar account with your appointments on it.
  • A ClickSend account with SMS credit and a sender ID or number.
  • A Slack workspace where the recap message should be posted.
  • Your business name and a default country code to use when a phone number is missing its country prefix.

How can I customize it?

  • Change the run time or days (for example 7am, or including Saturdays for salons and clinics).
  • Add extra calendars beyond your primary one, or narrow to a specific calendar like 'Consultations'.
  • Rewrite the SMS wording, tone, or signature to match your brand voice.
  • Swap the Slack channel or add a manager DM alongside the summary.

FAQs

What happens if a client doesn't have a phone number on their event?
That event is skipped, and it shows up in the Slack recap so you know to add the number for next time. No text is sent to a broken or missing number.
Will the same client get texted twice if I re-run it?
No. Once an event has been reminded, it gets flagged on the calendar entry and the workflow ignores it on the next run.
Can I use my own calendars beyond the primary one?
Yes. You can list any additional Google Calendars you own, like a 'Consultations' or team calendar, and appointments on those calendars will be included.
Do phone numbers need to be in a specific format?
No. The agent normalizes numbers to international format using the default country code you provide, so free-text numbers like '415-555-0123' still work.
Is this a good fit for clinics, salons, or solo consultants?
Yes. It was designed for exactly that pattern, where appointments live in Google Calendar and phone numbers often sit in the event description rather than a structured field.

Related templates

A brand asset library your marketing team actually searches

Every logo, photo, video cut and ad export in one searchable grid, with previews, campaign tags and rights expiry dates at a glance.

General Input Storage
General Input Database
JigsawStack
+1
App
Turn Mailjet email clicks into ranked HubSpot follow-ups

Twice a day we spot the people clicking your pricing and demo pages, create a follow-up task for their owner, and post a ranked recap to Slack.

Mailjet
HubSpot
Slack Bot
Agentic Task
Clean out the Looker dashboards and Looks nobody opens

One board showing every dashboard and Look with its folder, owner and favorite count, so you can find dead content and retire it safely.

Looker
Slack Bot
App
LiveKit live operations console for room moderation

Watch every live room on one screen, remove disruptive guests, start recordings and end stuck sessions without anyone opening a terminal.

LiveKit
Slack Bot
General Input Database
App
Wake up dormant Keap leads with a researched reason

Every Monday we find leads who never bought, research a real reason to reach out, and send a short personal email instead of another check in.

Keap
Slack Bot
Agentic Task
LiveChat coverage board for planning next week's shifts

See the exact hours your chat queue backs up and customers give up waiting, then plan next week's shifts before it happens again.

LiveChat
Slack Bot
General Input Database
App

Stop losing revenue to no-shows.

Connect Google Calendar, ClickSend, and Slack once, and Geni texts tomorrow's clients every weekday at 8am.