Skip to content
AI Agents

SMS appointment scheduling bot with automated follow-ups

36 nodes 41 3 Scheduled trigger
Download

Loading workflow…

Workflow Description

The workflow receives customer SMS via a Twilio trigger, manages chat sessions and history in Airtable, and uses an AI agent with Cal.com tools to book, find, reschedule and cancel repair appointments before replying by SMS. A daily schedule trigger re-engages leads without appointments (max 3 follow-ups, 3-day gap) while honoring STOP requests.

How it works

  1. 1.A Twilio Trigger receives inbound SMS and a Switch node checks whether the body contains STOP.
  2. 2.STOP messages update the Airtable record status to STOP and send a confirmation SMS.
  3. 3.The existing chat session is fetched from the Lead Tracker table and passed to the AI agent as context.
  4. 4.The agent (GPT-4o-mini) uses Cal.com HTTP tools for availability, booking creation, lookup, reschedule and cancel, with a structured output parser plus auto-fixing parser.
  5. 5.The Airtable record is updated (name, summary, appointment, chat log) and the agent reply is sent back via Twilio.
  6. 6.A daily schedule trigger searches Airtable for leads with no appointment, status not STOP, fewer than 3 follow-ups and 3+ days since last follow-up, generates an AI follow-up message, updates counters and sends it via Twilio.

Use cases

  • Scheduling PC/laptop repair appointments through an SMS chatbot.
  • Letting customers check, reschedule or cancel existing bookings by SMS.
  • Re-engaging leads who never completed a booking with capped follow-ups.
  • Handling opt-out requests via the STOP keyword.

Requirements

  • Twilio credentials for both the trigger and SMS sending, with a Twilio number wired to n8n.
  • Airtable credentials and a base/table (Lead Tracker) containing fields such as session_id, status, chat_messages, followup_count, last_followup_at and appointment_id.
  • An OpenAI API key for the agent chat model, follow-up chain and parser auto-fixing model.
  • Cal.com API v2 credentials (header auth or calApi) and replacing eventTypeId 648297 with your own event type ID.

Setup and testing in n8n

  1. Send an SMS containing STOP and verify the Airtable status changes and the confirmation arrives.
  2. Start a new enquiry, complete a booking and confirm it appears in Cal.com and Airtable.
  3. Ask about an existing booking, then reschedule or cancel it to exercise the Cal.com tools.
  4. Create a lead record with no appointment and an old follow-up date, run the follow-up branch manually, and verify the message and counter update.

Service Value

Ideal as a smart automation service combining integrations and AI to produce ready-to-use results.

Apps Used

Twilio OpenAI Airtable Schedule If Output Parser LLM Chain HTTP Request AI Agent

Details

Trigger Scheduled trigger
Nodes 36
Apps 9
Views 41
Downloads 3

How to Use

  1. 1.Click "Download Template"
  2. 2.Open your n8n dashboard
  3. 3.Go to Workflows > Import from File
  4. 4.Select downloaded file and configure credentials

Nodes Used (36)

/

Twilio Trigger

Set

#1

OpenAI Chat Model1

OpenAI

#2

Find Follow-Up Candidates

Airtable

#3

Send Follow Up Message

Set

#4

Sticky Note

Sticky Note

#5

Update Follow-Up Count and Date

Airtable

#6

Create/Update Session

Airtable

#7

Get Existing Chat Session

Airtable

#8

Every 24hrs

Schedule Trigger

#9

Send Reply

Set

#10

Send Confirmation

Set

#11

User Request STOP

Airtable

#12

Check For Command Words

Switch

#13

Structured Output Parser

Output Parser Structured

#14

Auto-fixing Output Parser

Output Parser Autofixing

#15

OpenAI Chat Model2

OpenAI

#16

Sticky Note3

Sticky Note

#17

Sticky Note4

Sticky Note

#18

Sticky Note5

Sticky Note

#19

Sticky Note6

Sticky Note

#20

Sticky Note7

Sticky Note

#21

Sticky Note8

Sticky Note

#22

Sticky Note1

Sticky Note

#23

Generate Follow Up Message

LLM Chain

#24

Sticky Note2

Sticky Note

#25

Sticky Note9

Sticky Note

#26

OpenAI Chat Model3

OpenAI

#27

Get Availability

HTTP Request

#28

Get Existing Booking

HTTP Request

#29

Find Existing Booking

HTTP Request

#30

Reschedule Booking

HTTP Request

#31

Cancel Booking

HTTP Request

#32

Create a Booking

HTTP Request

#33

Sticky Note10

Sticky Note

#34

Sticky Note12

Sticky Note

#35

Appointment Scheduling Agent1

Agent

#36

Source and license

Sticky Note

#37
Stay in the loop

Fresh workflows, straight to your inbox

Get newly published DROPIDEA workflows, a clear overview of what they do, and a link to explore them.

  • New workflows
  • Clear overviews
  • Setup guides

Be first to discover what is new

Your name, your email, and one confirmation.

Email confirmation · Unsubscribe anytime