Action cards

Action cards perform actions based on event data. Examples include sending emails, adding tags, splitting the flow using the Criteria Router, triggering a webhook, and more. The action cards are:
 

The Criteria Router helps you split the flow into different paths based on specific rules or filters. You can choose from a wide range of filters related to visitors, system, and CRM data. 

  • To add a Criteria router card to the flow, click on the card holder (+) icon to view the cards gallery and select the Criteria router card under the action cards section.
  • Now, give your card a name and click on Add a rule.
  • Now, define a rule by entering the conditions in the search field or choose a rule based on the section header.
  • You can add multiple rules to perform multiple complex routing based on your business requirements. 
     
Note: To create a rule by passing an input through the visitor.info() JavaScript API or the Update Custom Information REST API, select the "Context variable", condition, and the key name in the format %visitor.custominfo.<keyname>%. For example, if the key name is "Plan," the input should be set as %visitor.custominfo.Plan%.
 
  • After adding all the required rules, click Save.
  • Once the card is configured, you can view all the flows based on the conditions specified in the criteria router cards. In case if the visitors don't match any condition, then they will be diverted to the 'Not matched' flow.

This card can be used to jump from one card to another. You can either re-use/restart a flow from there. There are two types of Go To cards that you can add inside the flow builder:

  • Individual Card - to show the flow jump as a separate card
  • Wire Connect   - to show the flow jump by wire

To add this card

  • Click on the cardholder (+) icon to view the cards gallery and select the Go To cards under the action card section.
  • Choose the type of Go To card - Individual Card or Wire Connect
  • Specify the card name you want to go to. Once this card is activated, the flow will continue from the specified card.
  • Click Save.
 
Note:  The type of Go To card cannot be changed once the configuration is saved.

Add tag(s)

The add tag(s) card can be used to tag an existing record such as to a lead, chat, or contact. 
  1. To add tags, click on the card holder (+) icon to view the card gallery and select the Add tags card under the action cards section.
  2. Give a name, select the tags to add, and click on Save.
 
Note: Only conversational tags are listed here.
 
There are three possible flows upon the execution of the add tag(s) card:
  1. Success: To add cards after the tag is associated successfully.
  2. Failure: To add cards in case of tag association failure due to technical reasons.
  3. Misconfiguration: To add cards if the associated tag is deleted. 

Plugs

Plugs in the flow bot builder help to perform customized actions/third-party integrations. To build plugs, navigate to Settings > Developers > Plugs. Once the plug is built and published, you can use it in the flow bot builder.

  • Click on the card holder (+) icon to view the cards gallery and select the Plugs card under the action cards section.
  • Give your card a name, and select the Plug you want to associate from the drop-down.
  • Then, provide the context variables for plug's Input and Output fields.
     
Note: To pass input through the visitor.info() JavaScript API or the Update Custom Information REST API, use the key name in the format %visitor.custominfo.<keyname>%. For example, if the key name is "Plan," the input should be set as %visitor.custominfo.Plan%.
  • Click Save.

There are two possible flows when the plug card is triggered. The flows can be used to:

  • Success: To add cards upon successful execution of the plug.
  • Failure: To add cards in case of plug failure. This can happen due to wrong usage/values or technical issues.

The send email card allows triggering emails. 

  • To send emails, click on the card holder (+) icon to view the card gallery and select the Send Email card under the action cards section.
 
This card will use the email address set up in the Global Settings (Settings > Global Settings > Email Configurations > Sender email address) as the From address.
 
  • Provide the card name.
  • Next, you can also use your existing Email templates for this card. All the templates from your portal will be listed here. You can either associate a template with the card or copy the subject and body from the email template to the card.
  • When an email template is associated with the card, the contents of the template will be synced with this card. Any changes made to the email template will be automatically updated on this card.

Learn how to add email templates
 
  • To use the same email template without editing the email contents, subject, or body, click Use Template.
  • If you wish to make modifications to the chosen template, click on Edit & Use.
  • If you do not have any existing templates, you can create a custom subject and body for your email. You can also insert dynamic text by typing % to enhance the email's content.
  • Next, specify the recipient's email address and CC (carbon copy) recipients to send the email to the required address.
  • Finally, click Save.

There are two possible flows upon the execution of the Send email card: 

  1. Success: To add cards after the mail is sent successfully.
  2. Failure: To add cards in case of failure due to technical reasons.
  3. Misconfiguration: To add card in case of the company email address is not available in the portal's email configuration. 

Webhook

The Webhook card allows the bot to communicate with third-party or external applications directly through API calls, without using Plugs. It lets the bot send and receive data from external applications like Zoho Invoice, Zoho Sheet, or any external service that supports APIs. For example, if the bot collects customer details using input cards, you can use the Webhook card to send this data to Zoho Sheet or update a support ticket in Zoho Desk automatically.

Configuring the Webhook

Each webhook request consists of a few main components that define what data is sent and how.

1. Method
 
Specifies the HTTP method used in the API request. Available methods: GET, POST, PUT, and DELETE. Choose the method based on the action you want to perform, retrieve data, submit a new record, update existing data, or delete an entry.
 
2. URL
 
The Request URL is the API endpoint of the application you’re connecting to, this is where your webhook sends or retrieves data from. The context variables are not supported in the URL field. 
 
 
3. Header
 
Used to include authentication tokens, content types, or organization IDs that the third-party API requires to authorize and process your request. Click Configure to add headers. The values can be entered directly (hard coded) or select a context variable collected from other cards or plugs.
 
Example: "orgId": "1234567"
 
4. Query Parameters
The parameters to be added on your URL for sending additional data like ticket IDs, user emails, or status values. Click Configure to add headers. The values can be entered directly (hard coded) or select a context variable collected from other cards or plugs.
 
Example: "email": Email (context variable)
 
5. Body Parameters
Defines the main payload of your request. Use this to send structured data (such as JSON) when using POST or PUT methods.
 
Examples: Include form inputs, ticket details, or contact data.
 
Note: File uploads are not currently supported in the webhook card.
 
6. Connections
Connections handle authentication securely. Instead of adding credentials directly in the card, link your request to an existing connection created through the Data Resource Environment (DRE). If needed, click Add to create a new connection. All authentication-based connections are managed under DRE, ensuring a secure and centralized setup.

Handling responses

When the webhook executes successfully, it can display or store the returned data.
 
Use the response parameter for the bot reply
 
Enable this to display a specific value from the webhook response immediately in the chat. Provide the response key or JSON path to the field you want displayed.
 
Example response:
{
"ticket_id": "12345",
"details": {
"status": "In Progress"
},
"remarks": "The refund has been initiated and will reflect by November 30th."
}
  1. To display the remarks, enter remarks as the response parameter.
  2. For nested values, use the path (e.g., details.status).
     
Only one response field can be displayed directly from the webhook card. To display multiple values, use context variables and reference them in later cards.
 
Example response (List):
{
"data": [
{
  "ticketNumber": "101",
  "name": "Payment issue (Order ID - #445433)",
  "status": "In Progress"
},
{
  "ticketNumber": "176",
  "name": "Order delay (Order ID - #55684)",
  "status": "Closed"
}
]
}
  1. To display the status, include the key path with the list index in the response parameter. For example, use "data[0].status" to fetch the status from the first item in the list. In this case, data[0].status will return "Open".
     
Response parameter mapping
 
To use multiple response values later in the flow, store them in context variables.
 
Each mapping includes
  • Context variable name – The variable to store the value
  • Response parameter – The JSON key or path
  • Data type – The value’s type (string, number, etc.)
     
You can then reuse these variables in other cards for custom replies or logic like the below reference.
 

Success and failure legs

The Webhook card includes two outcome paths
 
Success leg
 
  1. Triggered when the webhook call is completed successfully.
     
Failure leg
  1. The failure leg is triggered when the webhook request fails for any reason—invalid credentials, wrong URL, network errors, or unexpected responses.
  2. If the external service takes more than 5 seconds to respond, the webhook times out, and the failure leg is executed.
     
This helps you design fallback actions or error messages in case the external system doesn’t respond as expected.