Skip to main content
Using webhooks with Zapier

Zapier is a popular way to automate tasks through customized workflows.

Updated over a week ago

Think of webhooks a bit like digital messengers that let apps talk to each other in real-time. charles’ Incoming webhook trigger and Outgoing webhook node are powerful features that help you connect other systems to trigger a flow and share data.

Using Zaps (automated Zapier workflows), Zapier watches for new or updated data in connected apps that’s then used to do tasks in other connected apps. If we combine our webhook functionality with Zaps we have a powerful took that can use data from many systems in Journeys and vice versa.

Let’s take a look at some examples ⬇️

Use cases

Use case

Description

Appointment reminders

You can create a Zap to send WhatsApp reminders to clients by integrating your scheduling or appointment booking tool with charles via Zapier.

Event registration

Zapier can automatically send personalized WhatsApp messages to registrants of an event, webinar, or workshop to confirm their attendance and provide event details by connecting your event registration platform with charles.

Follow-up surveys

Send post-purchase or post-interaction surveys through WhatsApp to gather customer feedback and improve your products or services and send that data through Zapier to Notion.

Feedback and reviews

Zapier can trigger a Journeys flow to request feedback and reviews from customers after they've made a purchase or received a service. by connecting with your CRM or review management platform.

New blog or content alerts

Automatically share blog posts, articles, or content updates on WhatsApp by connecting your blog or content management platform with your charles through Zapier.

Birthday greetings and offers

Set up Zapier to send automated WhatsApp birthday greetings and special offers to customers on their special day.

Cross-selling and upselling

Suggest complementary products or services to existing customers based on their purchase history through WhatsApp via Zapier.

💡 In all these cases, Zapier acts as the bridge that connects charles to other apps. This exchange and automation saves time, reduces manual work and enhances efficiency.

Setup

Webhooks consist of the following:

  • Trigger: The event that initiates the webhook, specified with a webhook URL

  • Headers: Supplementary information, often related to authentication

  • Message (or "payload"): The data transmitted by the webhook, including event or profile details

Trigger a flow from Zapier

In this example we’re triggering a flow when a new contact is added to a Google sheet.

In charles:

  1. Setup a new flow with an Incoming webhook trigger

  2. Copy the Webhook URL:

3. Build and Publish the flow

In Zapier:

4. Create your Zapier workflow. For this example, we’re triggering a flow when a new contact is added to a Google Sheet:

5. Add a Webhooks by Zapier action

6. Choose POST event. Continue:

7. Paste the Webhook URL from step 2 into the URL field:

8. Set the Payload Type as json

9. Configure the Data to share with the flow

A phone number is required to trigger a flow so make sure to include one

10. Finally, under Headers add the API key with the following format:

a. Header: X-Api-Key

b. Text: copy the API key that you find in Example using cURL within the trigger in charles

11. Publish the Zap to turn it on

Trigger a Zap from Journeys

In this example we’re going to add a new line in a Google sheet with my favourite animal (🐩).

In Zapier

  1. Create Zap and select the Webhooks by Zapier trigger

  2. Set the Event as Catch Hook. Continue:

3. Copy the webhook URL:

In charles

4. Create your flow and add the Outgoing webhook node

5. Set the Request type to POST and paste the webhook URL from step 3 into the URL:

6. Configure the Body payload with what data you want to send to Zapier:

Variable formats

Here’s how to format the variables in the payload body.

Contacts

Variable

Description

Format

Preferred name

Contact’s preferred name in WhatsApp

{{flowbuilder_trigger_person.preferred_name}}

First name

Contact’s first name in WhatsApp

{{flowbuilder_trigger_person.first)name}}

Last name

Contact’s last name in WhatsApp

{{flowbuilder_trigger_person.last_name}}

Nickname

Contact’s WhatsApp nickname

{{flowbuilder_trigger_person.nickname}}

Email

Contact’s email

{{flowbuilder_trigger_person.email}}

Custom properties

{{flowbuilder_custom_properties.[technical_name]}}

You can find the technical name of the 🎨Custom properties in Settings.

Orders

Variable  

Description

Format

Order name

Name of the order

{{flowbuilder_trigger_order.name}}

Order summary

Summary of the order

{{flowbuilder_trigger_order.summary}}

Total amount

Total order amount (gross)

{{flowbuilder_trigger_order.amount_total_gross}}

7. Preview and publish the flow

In Zapier

8. Build your Zap. For this example we’re going to add a new line to the Google sheet:

9. Publish the Zap


Helpful links

Did this answer your question?