Automation Flows
Set up rules-based message automation across WhatsApp, Instagram, and Messenger.
Overview
A flow is an automated sequence triggered by customer behavior (new conversation, specific keywords) that sends messages or performs actions via your connected channels.
Examples:
- Send a welcome message when a customer first messages you
- Trigger an OTP code when they text "verify"
- Auto-respond "We're closed" outside business hours
Visit /flows to list all flows.
Creating a Flow
- Go to
/flows→ Create Flow - Choose a channel (WhatsApp, Instagram, or Messenger)
- Optionally select a specific connection (business account) — if blank, uses your organization's default
Triggers
Choose what starts the flow:
New Conversation — Any inbound message from a new customer.
Keyword Trigger — Customer's message contains a word/phrase (e.g., "help", "verify", "refund").
Message Received — Any inbound message (from new or existing customers).
Custom Trigger — (Advanced) Defined by integrations or external systems.
Steps
Add one or more sequential steps that execute when the trigger matches:
Send Text Message — Send a freeform message to the customer.
Send Template — Send a pre-approved template (WhatsApp only; uses template variables if needed).
Send Media — Send an image, document, audio, or video.
Send Location — Share a map location.
Wait — Pause before the next step (e.g., wait 1 hour or 3 days) — useful for time-based sequences.
Assign to Agent — Route the conversation to a specific agent or based on availability.
Add Label — Automatically label the conversation (e.g., "automation").
Steps execute in order. If one fails, the flow stops (unless you configure retry logic).
Cooldowns
A cooldown prevents the same customer from triggering the same flow too often.
Example: If cooldown is 1 hour, a customer won't get the auto-response more than once per hour, even if they send multiple keywords.
Cooldowns are per conversation, so different conversations can trigger independently.
Default: No cooldown (every message can trigger). Set cooldown in the flow settings before creating steps.
Scoping
By default, a flow runs on all channels (WhatsApp, Instagram, Messenger) if you didn't pick a specific one during creation.
To limit to one channel, select it when creating the flow. Edit the flow later to change scoping.
Execution Log
Click on a flow to see the execution log — timestamp, trigger, customer phone/name, step results, and any errors.
Use this to verify flows are working or debug failed executions.
Testing Flows
Before deploying:
- Create the flow with steps
- Enable it (toggle to "Active")
- Send a test message from your personal number matching the trigger
- Check the execution log — does the expected step execute?
If not, review trigger keywords and connection status.
Pausing & Enabling
Click Pause on a flow to temporarily disable it. Paused flows don't trigger even if the condition matches. Resume later to re-enable.
Editing & Deleting
- Edit: Click the flow to adjust trigger, steps, cooldown, or channel scoping
- Delete: Flows can be deleted anytime; deletion doesn't affect past conversations
Troubleshooting
"Flow triggered but step didn't execute"
- Verify the connection (business account) is active at
/channels/hub - Check if a template status changed (e.g., from Approved to Rejected)
- Review execution log for error details
"Cooldown not working"
- Cooldowns apply per conversation per flow — different conversations trigger independently
- A cooldown timer resets if a step fails
"Wrong customers getting the message"
- Check trigger keywords for unintended matches (e.g., "no" matches "hello")
- Use word boundaries if available, or edit the trigger text