Workflows
Blocks
Triggers
WhatsApp Trigger

WhatsApp Trigger

The WhatsApp Trigger fires your workflow the instant a WhatsApp message arrives on your business number. It supports two providers — Meta Cloud API (direct from Meta/Facebook) and Twilio — so you can choose whichever platform your team already uses.

How it works: When a customer sends a WhatsApp message to your business number, Meta or Twilio immediately forwards it to InditeAI via a webhook. Your workflow starts executing within milliseconds.


Key Features

  • Real-time triggering — workflows start the instant a message arrives
  • Two providers supported — Meta Cloud API and Twilio
  • Rich message data — access message text, sender, media URLs, and more
  • Media support — handle text, image, video, audio, document, and location messages
  • Secure verification — webhook tokens prevent unauthorized triggers

Output Variables

Every time the trigger fires, the following variables are available in subsequent blocks:

VariableDescription
messageBodyThe text content of the incoming message
fromSender's phone number (e.g. 917567506308)
toYour registered WhatsApp business number
messageTypetext · image · video · audio · document · location · interactive
messageIdUnique message ID (e.g. wamid.HBgM…)
profileNameSender's WhatsApp display name
timestampUnix timestamp when the message was sent
mediaUrlDownload URL for image / video / audio / document (empty for text)
providermeta or twilio depending on your setup
rawPayloadFull raw webhook payload from the provider

Setup Guide

Setting Up via Meta Cloud API

Meta's Cloud API gives you a direct connection to WhatsApp without any per-message fees beyond Meta's own pricing.

Prerequisites

  • A Meta Business Account
  • A WhatsApp Business Account linked to that Meta Business
  • A Meta App (type: Business) created at developers.facebook.com (opens in a new tab)
  • A phone number added and verified in your WhatsApp Business Account

Step 1 — Add the Trigger in InditeAI

  1. Open your workflow and drag the WhatsApp block onto the canvas as the first block.
  2. In the settings panel, select Meta as the provider.
  3. Click Connect Meta Account and follow the OAuth flow to grant the required permissions (whatsapp_business_messaging, whatsapp_business_management).
  4. Select your WhatsApp Business Account and the phone number you want to listen on.
  5. Note the Webhook URL and Verify Token shown in the settings — you will need them in the next steps.

Step 2 — Create a Meta App (if you don't have one)

  1. Go to https://developers.facebook.com/apps/ (opens in a new tab) and click Create App.
  2. Select Business as the app type and click Next.
  3. Fill in your app name, contact email, and link your Business Account, then click Create App.

Step 3 — Add WhatsApp to Your App

  1. Inside your app dashboard, click Add Product in the left sidebar.
  2. Find WhatsApp and click Set Up.
  3. Under Getting Started, select your WhatsApp Business Account from the dropdown.
  4. Meta will display a temporary test phone number. For production you will add your real number in Step 5 — Phone Numbers.

Step 4 — Configure the Webhook

  1. In the left sidebar of your Meta App dashboard, go to WhatsApp → Configuration.
  2. In the Webhook section, click Edit.
  3. Paste your Webhook URL from InditeAI into the Callback URL field.
  4. Paste your Verify Token from InditeAI into the Verify Token field.
  5. Click Verify and Save — Meta will make a GET request to confirm your webhook is reachable.
⚠️

Your InditeAI workflow must be published before Meta can verify the webhook. If you see a verification error, publish the workflow first and try again.

Step 5 — Subscribe to Message Events

  1. After the webhook is verified, go back to the Webhook Fields section.
  2. Find the messages field in the list and click Subscribe.
  3. This tells Meta to send incoming message events to your webhook URL.

Step 6 — Add a Production Phone Number (optional for new apps)

  1. In the left sidebar under WhatsApp, click Phone Numbers.
  2. Click Add Phone Number and follow the verification steps (SMS or voice call).
  3. Once verified, go back to Configuration and make sure your webhook is associated with this phone number.

Step 7 — Test It

  1. In Meta's API Explorer, send a test message to your phone number.
  2. Check InditeAI's execution log — you should see the workflow run.
  3. If it doesn't trigger, verify:
    • The webhook is Verified (green tick) in Meta dashboard
    • The messages subscription is active
    • Your workflow is in Published state

App Review: For production use beyond a small test list, Meta requires app review for the whatsapp_business_messaging permission. Submit your app for review at developers.facebook.com/apps (opens in a new tab)App Review.


Handling Different Message Types

The messageType variable tells you what kind of message was received. Use a Condition block after the trigger to branch your workflow:

messageTypeWhat it meansmediaUrl available?
textPlain text messageNo
imagePhotoYes
videoVideo fileYes
audioVoice note or audio fileYes
documentPDF, Word, etc.Yes
locationGPS coordinatesNo
interactiveButton reply or list replyNo

Example flow for media:

WhatsApp Trigger
  → Condition: messageType == "image"
      → Download image from mediaUrl
      → Run OCR or AI analysis
  → Condition: messageType == "text"
      → AI Reply block

Example Use Cases

Customer Support Bot

WhatsApp Trigger → AI Chat block → Send WhatsApp Reply

Automatically respond to incoming messages with an AI assistant.

Lead Capture

WhatsApp Trigger → Extract Variables → Save to Google Sheets → Send Welcome Reply

When a customer messages "Hello", capture their name and number in a spreadsheet.

Order Status Lookup

WhatsApp Trigger → HTTP Request (lookup order by phone) → Send WhatsApp Reply

Let customers type their order ID and get an instant status update.

Media Processing

WhatsApp Trigger
  → Condition: messageType == "document"
      → Download PDF from mediaUrl
      → AI Summarize
      → Send summary back via WhatsApp

Troubleshooting

ProblemWhat to check
Workflow not triggeringIs the workflow Published? Is the webhook Verified in Meta / saved in Twilio?
Webhook verification failing (Meta)Publish the workflow before clicking Verify in Meta dashboard
from number looks differentPhone numbers arrive in E.164 format without + (e.g. 917567506308)
Media URL returns 403Media URLs from Meta expire after ~5 minutes — download immediately in the workflow
Twilio sandbox messages not arrivingThe sender must have sent join <keyword> to the sandbox number first
Duplicate triggersEnsure only one workflow is subscribed to the same webhook URL

Need help? If your webhook isn't firing, use your provider's webhook logs to inspect the raw request:

  • Meta: App Dashboard → WhatsApp → Configuration → Webhook Logs
  • Twilio: Console → Monitor → Logs → Messaging
Indite Documentation v1.6.0
PrivacyTermsSupport