Table of Contents

Workflow Triggers

Joshua Lim Updated by Joshua Lim

Workflow Trigger

A Trigger is an event that will initiate a Workflow. Every Workflow must start with a Trigger and can have only one Trigger. All Triggers are defined by conditions. A Trigger will only fire and initiate a Workflow when all conditions are met.

Start creating your Workflow by selecting the Trigger and configuring it accordingly.

Here is the list of available Triggers:

Trigger

Description

Conversation Opened

Triggered when a conversation with the Contact is opened.

Conversation Closed

Triggered when a conversation with the Contact is closed.

Contact Tag Updated

Triggered when a specified tag is added to or removed from the Contact.

Contact Field Updated

Triggered when the specified contact field is updated or edited.

Shortcut

Triggers when the shortcut is selected from the Inbox module.

Incoming Webhook

Triggers when an external app or service sends an HTTP POST request.

Click-to-Chat Ads

Triggers when an Ad is clicked or an Ad related message is received.

Manual Trigger

Triggers for a Contact when the Trigger Another Workflow Step is executed and linked with a Workflow with this trigger.

TikTok Messaging Ads

Triggers when a TikTok ad is clicked or a TikTok ad-related message is received.

Lifecycle Updated

Triggers for a Contact when their Lifecycle stage is updated.

After the Trigger has been specified, move on to Step configuration. Choose any of the available steps.

Advanced Settings

Each Trigger setting has an Advanced Settings toggle at the bottom that specifies Trigger once per contact (except for Manual Trigger). This restricts Contacts from ever repeating this Workflow, so they can only go through the Workflow journey a single time.

gif showing the trigger once per contact switch

When the toggle is ON, the Workflow will not be triggered for any Contact who has enrolled in this Workflow before, even if the condition was set to OFF when it happened.

Configuration of Trigger

Every Workflow has to start with a Trigger and can only have a single Trigger. When the trigger conditions are met, the Workflow will be carried out sequentially on the triggering Contact.

Trigger: Conversation Opened

Initiates the Workflow when a conversation with the Contact is opened and all trigger conditions are met.

Configuration

The trigger condition for this Workflow is limited to source, which identifies how the conversation was opened. Where no conditions are added, the Workflow will trigger whenever a conversation is opened no matter the Source.

The Sources are as follows:

Source

Description

User

The conversation is opened by the User (outbound conversations).

Common use cases:

  • New features updates
  • Follow-up messages

Workflow

The conversation is opened by a Workflow step.

Contact

The conversation is opened by the Contact (inbound conversations).

Common use cases:

  • Contact routing
  • Contact assignment

API

The conversation is opened by the Developer API.

Zapier

The conversation is opened by a Zap.

Make

The conversation is opened by Make.

Click-to-Chat Ads

The conversation is opened by clicking on an Ad.

For each Source, a maximum of 10 conditions is allowed with either AND or OR logical operators. Each condition is required to have its own source, an operator and a value.

Trigger Variables

All trigger variables for the Conversation Opened trigger reflect information related to the conversation, such as conversation first incoming message. Learn more about trigger variables for the Conversation Opened trigger here.

Trigger: Conversation Closed

Adding conditions to the conversation close trigger is optional. If no conditions are added, the Workflow will trigger whenever a conversation is closed no matter the Source.

Initiates the Workflow when a conversation with the Contact is closed and all trigger conditions are met.

Configuration

There are two possible trigger conditions for Closed Conversations: Source, which identifies who closed the Conversation, and Category, which identifies the conversation's classification.

The following Sources will trigger this Workflow if they close a conversation:

Source

Description

User

The conversation is closed by the User.

Workflow

The conversation is closed by a Workflow step.

Bot

The conversation is closed by bot.

API

The conversation is closed by the Developer API.

Zapier

The conversation is closed by a Zap.

Make

The conversation is closed by Make.

Conversation closed by merging contact will NOT trigger a Workflow.

This Workflow will also be triggered if conversations related to specified Categories are closed. These Categories are determined in the Closing Notes section of the platform. In Workflows, they will appear as choices in the dropdown menu for values.

For each Source and Category, a maximum of 10 conditions is allowed with either AND or OR logical operators. Each condition is required to have its own source, an operator and a value.

Trigger Variables

All trigger variables for the Conversation Closed trigger reflect information related to the conversation, such as conversation resolution time, first response time and the closing summary of the conversation. Learn more about trigger variables for the Conversation Closed trigger here.

Trigger: Contact Tag Updated

Initiates the Workflow when specified Tags are added to or removed from a Contact.

Configuration

To configure this Workflow, select an action that will act as a Trigger. The options are when a Tag is added to a Contact or when a Tag is removed from the Contact.

Next, select Tag(s) that will be the condition(s) to be met for the Workflow's initiation.

Importing contacts with tags or custom fields doesn't automatically trigger Workflows. To activate Workflows after importing, a secondary action is required. For more information on initiating Workflows post-import, refer to our developer API or integration tools like Make/Zapier.
screenshot showing the setup for contact tag updated trigger

Trigger: Contact Field Updated

Initiates the Workflow when a specified Contact Field is updated.

Configuration

Any Contact or Custom Field can be configured as a Trigger for this Workflow. Select the Contact Field that will act as a condition for this Trigger. Any update to this field will initiate the Workflow.

Importing contacts with tags or custom fields doesn't automatically trigger Workflows. To activate Workflows after importing, a secondary action is required. For more information on initiating Workflows post-import, refer to our developer API or integration tools like Make/Zapier.

screenshot of contact field updated trigger

Trigger: Shortcut

Initiates a selected Workflow from the Shortcut menu in the Inbox module.

screenshot of shortcut trigger

How it Works

Shortcut refers to a Workflow that is created with the trigger ‘Shortcut’. This feature allows Users to launch Workflows that have Shortcut as a trigger without leaving the Inbox module.

In the Inbox module, click the Shortcut icon at the toolbar of the message composer. This will open the Shortcuts menu, which shows all the Shortcuts published in the Workspace. Select the desired Shortcut to initiate its Workflow.

The Shortcut icon will be disabled if there are no Shortcuts created and published in the Workspace.

If you do not wish to allow Agents to initiate Shortcuts, disable it in the Advanced Restrictions settings under Workspace User Settings​.

Configuration

You can configure Shortcuts with individual icons, names and descriptions. When the Shortcuts menu opens, these will be displayed to allow you to easily identify and select the desired Shortcut.

Shortcut Form

In the configuration drawer of the Shortcut trigger, you can opt to create a Shortcut form. Any time the Shortcut is triggered, the form will open. The Workflow will only be initiated after the form has been filled in by the User.

The Shortcut form can be customized with form fields to input data or comments. The values filled in can be saved as variables and used in the Workflow.

To add a form field:

  1. Click the + Add Form Field button.
  2. Name the form field. For e.g. Order ID, Refund Reason.
  3. Select the field type. The available field types are:
  • Text
  • List (dropdown)
  • Checkbox
  • Number
  • Date
  • Time
  • Phone Number
  • Email
  • URL
  1. Name the variable for this field.
  2. Use the output variables in the Workflow Steps. Learn more about output variables here.
  3. Set the form field as required by switching the Required toggle to ON. This makes it mandatory for Agents to fill in the data or comments.

Trigger: Incoming Webhook

Initiates the workflow when a specific event occurs on a third party application and the information is sent via HTTP request.

This trigger is available for Business plan and above only.

Configuration

Once you select this trigger, a unique webhook URL is automatically generated for each of your workflows. You will send HTTP POST requests to this URL to eventually trigger the workflow.

You will then need to provide the JSON key in your payload that matches the contact identifier type. This allows our system to identify which Contact or Contacts will be triggered by the workflow. It has a max character limit of 500.

There are three main Contact identifier types (how we identify a Contact):

  • Contact ID
  • Email
  • Phone number
Choose incoming webhook trigger

You can also store the parameters in your incoming webhook payload as variables so you can use them in other steps in the workflow depending on your use case.

Requirements:

  • The JSON key in your payload must match the text in the JSON field on the platform.
  • The same JSON key cannot be saved twice; it must be a defined value (not an object or an array).
  • The JSON key has a max character limit of 500.

You will complete the process by saving the JSON key-value to a variable. The variable must be unique in text and has a max character limit of 30. A maximum of 10 variables is allowed. Please note that only JSON body can be saved.

Example

How to fill in the JSON key to save a response for different response formats:

{ 
"name": "Jason",
"zip_codes": "12345",
"phone": "123123"
}

To save the phone number in the above JSON Body, use $.phone as the JSON key.

{ 
"custom_fields": {
"firstName": "John",
"lastName": "Doe",
"locale": "en_GB",
"timezone": "5",
"gender": "male",
"phone": "123123",
"email": "zy@respond.io",
"customerid": "1"
},
"created_at": 1575618542
}

To save the phone number in the above JSON Body, use $.custom_fields.phone.

{
"data": {
"id":"1776025372480910",
"contacts" : [
{
"firstName":"John",
"lastName":"Doe",
"locale": "en_GB"
},
{
"firstName":"Jane",
"lastName":"Doe",
"locale": "en_GB"
}
]
}
}

To save the first name ‘Jane’ in the above JSON Body, use $.data.contacts[1].firstName.

Trigger: Meta Click-to-Chat Ads

Initiates the workflow when a Facebook Ad is clicked or when a message related to the Ad is received.

Configuration

After selecting this trigger, connect your Facebook account to configure it.

Once connected to Facebook, select the Ad Account and relevant Ad that you want the trigger to be linked to.

Only Ads created and managed in the Ads Manager can be selected from here. If you created Ads from within a Meta application, e.g., Meta Business Suite or Instagram, they will not be listed here for selection.
Facebook connected to ctc

When the selected ad is clicked, the workflow is initiated.

Trigger: TikTok Messaging Ads

Initiates the workflow when a TikTok ad is clicked or when a message related to the ad is received.

Configuration

After selecting this trigger, connect your TikTok ads account in Integrations to configure it.

TikTok account

Select the connected TikTok account

Ad account

Select your desired Ad account

TikTok Messaging Ads

Select TikTok Messaging Ads from WhatsApp or Messenger. Only ads created and managed in your TikTok Ads Manager can be selected from here.

Trigger: Manual Trigger

The Manual Trigger can’t work on its own. It can only run through the Trigger Another Workflow Step.

If you’re connecting two or more Workflows together with the Trigger Another Workflow Step, you can use the Manual Trigger on the Workflows connected to the original Workflow. This means the connected Workflows will only work when a Contact enters the Workflow with the Trigger Another Workflow Step.

Configuration

The Manual Trigger can only be used with the Trigger Another Workflow Step.

Let’s say Workflow A is created with the Manual Trigger, and it’s connected to Workflow B. Workflow A will only trigger when Workflow B is published, and a Contact will enter Workflow A through the Trigger Another Workflow Step.

Trigger: Lifecycle Updated

The Lifecycle Updated Trigger initiates a workflow whenever a Contact’s Lifecycle Stage changes. This allows you to automate actions based on Contact progression through your sales stages, such as lead qualification, follow-ups, or customer retention efforts.

Configuration

Enable Lifecycle in Settings

Ensure the Lifecycle feature is enabled in your workspace settings. If Lifecycle is not enabled, you will need to turn it on before configuring this Trigger.

Select Lifecycle Stage(s)

After selecting this Trigger, choose the Lifecycle Stage(s) that will initiate the workflow.

  • All Stages: Triggers the workflow whenever a Contact’s Stage is updated, regardless of the specific stage.
  • Specific Stages: Triggers the workflow only when a Contact’s Stage is updated to one or more selected Stages. You can select one or multiple Stages as needed.

Configure Advanced Settings (Optional)

  • Trigger When Cleared: Optionally, enable this setting to trigger the Workflow when a Contact’s Lifecycle Stage is cleared, leaving no assigned Stage.
  • Trigger Once Per Contact: When enabled, this ensures the Workflow is triggered only once for each Contact, even if they re-enter the selected Stage.
Use our Google Sheets template to capture key data and track conversion rates with the Update Lifecycle Step.

FAQ and Troubleshooting

Why aren't my Click-to-Chat ads appearing in the Click-To-Chat ads trigger?

If your Click-to-Chat ad isn't appearing as expected, it's likely due to specific settings in your ad configuration not aligning with supported types. Here's what to check:

  • Supported Channels: Ensure the Channel you are using is supported. Currently, respond.io supports
    • WhatsApp Business Platform (API)
    • WhatsApp Cloud API
    • Instagram
    • Facebook Messenger
  • Ad Status: Ensure your ad is set to eitherActive or Paused.
  • Campaign Objective: Verify if your ad's objective matches one of the supported types.
    • Previous Meta ads objective name: BRAND_AWARENESS, LINK_CLICKS, CONVERSIONS, MESSAGES, TRAFFIC, and REACH.
    • New Meta ads objective name (beta): OUTCOME_ENGAGEMENT, OUTCOME_AWARENESS, OUTCOME_TRAFFIC, OUTCOME_LEADS, and OUTCOME_SALES.
  • Optimization Goal: Your ad's optimization goals are one of the following: OFFSITE_CONVERSIONS, CONVERSATIONS, IMPRESSIONS, or LINK_CLICKS.
  • Destination Type: Your ad’s destination types are one of the following: APPLINKS_AUTOMATIC, INSTAGRAM_DIRECT, MESSENGER, APP, or WHATSAPP.

Feeling stuck? Do not fear.

Need assistance? Contact us for support. Help is here!

Workflows Overview

Workflow Steps Overview

Can't find what you're looking for? 🔎

Talk to an expert here!

Contact Support
Status Security
Powered by HelpDocs (opens in a new tab)

Powered by HelpDocs (opens in a new tab)