How to Build an Appointment Reminder App Without Code

card-developer-logo-or-avatar-2 - Card-developer-avatar-2
June 19, 2024
Written by
Tolulope Ayemobola
Contributor
Opinions expressed by Twilio contributors are their own
Reviewed by
Diane Phan
Twilion

Have you ever forgotten about a crucial appointment and missed it? Or have you lost significant time because a customer missed an appointment with you? Fortunately, there is a solution to these widespread issues: an appointment reminder system with Twilio SMS .

You can quickly set up an appointment reminder system that delivers SMS reminders to you and your clients before their appointment using Studio, Twilio's no-code platform . This post will walk you through the steps necessary to create an appointment reminder system using Twilio SMS and Twilio Studio.

The appointment reminder system helps streamline scheduling processes, reduce missed appointments, and enhance customer satisfaction. The visual interface, debugging features, and real-time monitoring provided by Twilio Studio simplify the development and maintenance of the appointment reminder system.

Understand No-Code developer environments

Building mobile, web, and enterprise applications is more accessible than ever thanks to no-code platforms and apps. The interfaces range from click-and-pick to drag-and-drop, or WYSIWYG app builders .

As a result, you don't need to be an expert programmer in Python, JavaScript, Swift, C++, Go, or any other language. For the most part, no-code technologies use APIs and integrations to link data from databases to web services.

Get started with Twilio Studio

Twilio Studio empowers both developers and non-technical users to create powerful and customized communication workflows, enabling automation, personalization, and enhanced user experiences.

Let's see how to build a Flow that integrates with your application via a REST API and delivers a reminder SMS along with a confirmation message.

You need to create a Twilio account if you do not have one already. Click the Start for free option on the Twilio website , the button circled in red in the image below. Complete the necessary fields, then create an account.

Twilio official website landing page

Build your Twilio Studio Flow

Let's begin with a new Twilio Studio Flow. To build a new Flow, log in to your Twilio account, navigate to the Studio Dashboard, and click on the “Create Flow” button. Name your flow anything such as "Appointment Assistant". Press the Next button.

In the screen that would follow, choose the “Appointment Reminders” template and click Next

Template selection for preferable no-code flow

Configure your Twilio Studio Flow

After creating your new flow, it's time to configure it. Start by adding a new trigger widget to your flow. Once the specified trigger fires, the Trigger (Start) Widget initiates the Flow. This instance will initiate the Flow's Execution using the REST API trigger.

The flow trigger; starting point

Add a message widget

To begin, add a Send & Wait For Reply Widget to the Canvas and use the red and gray dots in the corner of the new Widget to connect it to the REST API trigger. With this widget, you may send the user an SMS and watch for a response.

The liquid variables such as {{flow.data}} are used to refer to values that are given in via a REST API trigger. Include information such as the date, time, and location of the appointment.

For example, you could enter "Your appointment is coming up on 10th June, 2021 - an actual value for the placeholder {{flow.data.appointment_time}}" in the Widget's MESSAGE BODY box.

Configuring the message widget

“Kindly respond with 1 to confirm and 2 to withdraw." Studio is compatible with the liquid template syntax, which is a reliable mechanism to help in loading dynamic content throughout a Studio Flow. By doing this, you are telling Studio that you want the text in between the two curly brackets to be dynamically interpreted by it depending on values supplied to it. In this instance, a dynamic interpretation will be applied to the appointment_time value that was supplied via your REST API request.

Create a split based on response

Assume the user confirms or cancels their appointment by replying to the SMS message. You must include some reasoning so that we can determine the user's preferred option. To handle the event, use the Split Based On... widget. Connect it to the Reply block that is hanging from your Send & Wait For Reply widget named "confirm_appt" by dragging it onto the Canvas.

Twilio Studio Tutorial Appointment Reminders Split Based On... Widget placed on Canvas that will evaluate the response to the Send & Wait For Reply Widget.

The Split Based On... widget's variable has to be configured before it can be used. Choose confirm_appt and choose inbound.Body in this scenario as you are interested in the user's response.

Twilio Studio Tutorial Appointment Reminders Split Based On Confirmation Configuration.

Establish transitional terms in the Studio Flow

The next step is to identify the options you want to see in those text responses, which are the numbers 1 and 2. To access the Transition On... dropdown menu, click the red New button located at the bottom of the Split Widget. To establish a new condition, choose Condition Matches.

Twilio Studio Tutorial Appointment Reminders Split Based On Confirmation Add Condition.

Locate the newly formed condition in the right sidebar and choose Equal To from the selection menu. In order to verify the appointment, set the value to 1. Once the new condition has been saved, it will show up as a transition on the widget. Change the condition's name to 1.

Twilio Studio Tutorial Appointment Reminders Split Based On Confirmation Set 1 Condition.

The next thing you'll need is a condition to check if the user hit 2 to cancel the appointment. Select Condition Matches by clicking New on the Split Based On... widget, similar to what we did with the first condition.

Click Save after setting the sidebar's value to 2, then rename the object to 2. You should now see the transitions No Condition Matches, 1, and 2 hanging from the bottom of Your Split Based On... Widget.

Twilio Studio Tutorial Appointment Reminders Split Based On Confirmation All Transitions.

Make an HTTP request

The appointment confirmation should then be handled by sending a request back to your servers. To accomplish this, drag a Make HTTP Request Widget onto the canvas and complete the fields in the right sidebar labelled Request Method and Request URL.

Configure the Request URL to link to the proper endpoint for your application. You may also set parameters or a request body in the Make HTTP Request Widget's setup in order to send the requests.

Twilio Studio Tutorial Appointment Reminders Confirm HTTP Request Widget on Canvas.

Once the request has been fulfilled, you should send the user a thank-you text. Place your message for the user in the Message Body area after dragging a Send Message Widget onto the Canvas.

Twilio Studio Tutorial Appointment Reminders Thank You Send Message Widget.

Handle cancellation responses

Repeat the procedures above in order to handle cancellations in the application. Using the Split Based On... widget, drag a Make HTTP Request widget on to the canvas and attach it to the hanging 2. Request your cancellation endpoint, and respond to the user with an acknowledgement such as "We understand that plans change. Thanks for letting us know!".

Twilio Studio Tutorial Appointment Reminders full Widget layout shown after connecting both 1 and 2 to respective HTTP Widgets.

Handle an error in the Twilio Studio Flow

What happens if the user types something other than 1 or 2 for confirmation and cancellation? We may notify the user once again by utilizing the integrated No Condition Matches condition.

Select the error message you want to display after dragging a Send Message widget onto the canvas and connecting it to the No Condition Matches. Then, by moving the Sent dot from the Send Message widget to the original Send & Wait For Reply widget, you may prompt the user with the original appointment reminder once more.

Twilio Studio Tutorial Appointment Reminders No Condition Send Message Widget then redirects back to the Send & Wait For Reply Widget.

Review the final Twilio Studio Flow

A Trigger (Start) widget receives a REST API request, uses HTTP Request widgets to POST cancellations and confirmations back to your own endpoint. Then it routes responses through a Split Based On... widget and asks the user to confirm or cancel using a Send & Wait For Reply widget. The flow executes the Send Message widgets to acknowledge the user's response. The final state of the canvas is seen below:

The complete Appointment Assistant flow

Publish your flow

Click on the Publish button at the top of the screen. Once it's published, anyone can use it to send appointment reminders without needing any programming experience.

Header bar, to publish your flow

Test your flow

It's time to give it a try! This appointment reminder process may be started by sending a request to Studio using your API. You can then text back to confirm or cancel. To do this, you will need three credentials - Flow SID, your Twilio number and the recipient’s number.

Go to your Studio Dashboard. All the flows you have created will be listed there, with their SIDs displayed beneath them. Check for Appointment Assistant and copy the Flow SID beneath it.

Get your Flow SID from your Studio Dashboard

Navigate to your Twilio Console dashboard to find your Twilio number on the page.

To start this flow, replace the command with your own values and execute the curl command that follows.

FWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX should be replaced with the actual Flow SID, while FROM_NUMBER is your Twilio phone number, from which notifications will emanate.

You can use an application such as Postman to test the following:

curl -X POST "https://studio.twilio.com/v1/Flows/FWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Executions" -d "To=${MY_PHONE_NUMBER}" -d "From=${FROM_NUMBER}" -d "Parameters={\"appointment_time\": \"Monday at 10AM\"}" -u
Copying the Curl command into Postman

Select Basic Auth, paste your Account_SID as username and your Auth_Token as password. The other elements should be well copied into their respective places – including the URL and body. When this is done, click Send or press enter and the call will be made to the URL, onward to your specified number.

To confirm that the call was successful, go to your Twilio dashboard, click Messaging and then Overview. Scroll to the end of the page, and see the Recent messages log section. The logged message confirms that the message was successfully sent.

Now check your phone for incoming messages from the number in the From field:

The received SMS from Twilio after making the API call.

To test for alternate routes, make the call to the endpoint again and reply with a number other than 1, 2, or 3.

At this point, you can repeat the same thing and reply with 3, to get the appropriate response.

What's next for low code no code appointment reminder apps?

A no-code appointment reminder system with Twilio SMS is an effective way to reduce missed appointments and save valuable time. By leveraging the visual development capabilities of Twilio Studio, developers and non-technical users can conveniently design and deploy customized communication workflows without the need for extensive coding.

Read this article to create a Studio IVR and other audio, messaging, and communications applications , by dragging and dropping widgets. You can also include a gif in your appointment reminders in this article . Everything from phone trees to survey instruments to SMS-capable chatbots may be created with Studio.

Tolulope is a growing software engineer who loves coding and writing about what he does. When he's not coding, he enjoys his time as a disc jockey.