• Genesys Cloud CX 1, Genesys Cloud CX 2, Genesys Cloud CX 3, Genesys Cloud CX 1 Digital Add-on II, Genesys Cloud CX 2 Digital, or Genesys Cloud CX 3 Digital license
  • Architect > UI View permission
  • Architect > Flow Add, View, Edit, Delete permission
  • languageUnderstanding > All permission

Use the Call Bot Flow action to create a new Genesys Digital Bot Flow, or to integrate an existing bot flow into your message flows.

To access the Call Bot Flow action, follow these steps:

  1. Open an existing message flow, or create a new one.
  2. Click an existing state or task, or create a new one. 
  3. From the Architect toolbox, drag a Call Bot Flow action into the editor.
  4. Configure the action according to your design.

Click the image to enlarge.

Call Bot Flow action configuration

Name Description
Name field Type a distinctive name for the action. The label you enter here becomes the action’s name displayed in the flow structure.


In the Bot Flow box, perform any of the following actions:

  • To call an existing bot, click Select a Bot flow and choose the bot to use.
  • If you select an existing bot flow, to change or update the flow click Edit.
  • To create a new bot, click Add.

(Optional) Add input variables for the configured slots. Input variables are not necessary if you do not use the variables within the inbound flow.


(Optional) Add output variables for the configured slots. Output variables are not necessary if you do not use the variables within the inbound flow.

Execution Results

Exit Reason indicates what caused the bot flow to exit. See the Execution results: Exit reasons section for details.

Intent returns from the bot flow at runtime. If the flow does not detect an intent, the variable bound in the Intent setting defaults to a NOT_SET String at runtime.

This table describes reasons that cause a bot flow to exit. 

Error Reason
TriggeredByFlow The bot’s business rules dictated that it was not possible to continue in self-service. Add an Exit Bot Flow action to the appropriate place in the bot flow.
AgentRequestedByUser The end user specifically asked to speak to a human agent.
Error.* Any reason code that begins with Error indicates an error in the bot flow. The text that follows provides more information about the nature of the error. 
Error.Expression.DivideByZero One of your expressions, when performing an arithmetic calculation, tried to divide by zero.
Error.Expression.DataType One of your expressions returned a value that contained the wrong data type.  For example, your expression should return an integer but actually returned a string.

One of your expressions tried to reference an item in a collection which does not exist; for example, referencing item four of a collection that only contains 4 items. 

Note: Collection indexes start at zero for the first item.

Error.Expression.ValueNotSet One of your expressions incorrectly tried to make use of a variable that is NOT_SET, or returned a NOT_SET value.
Error.Expression.NumericOverflow One of your expressions, when adding, subtracting, or multiplying numbers, created a value that is larger (either positive or negative) than the maximum allowed value for that data type. See, for example, “System.MaxInt” and “System.MinInt”.
Error.Expression.StringOverflow One of your expressions tried to create a string value that contains more than the allowed number of characters.
Error.TooManyActionsPerTurn Your flow has a loop that executes too many times without stopping to ask for user input, or to relay information back to the user. The current maximum number of actions per turn is 1000.
Error.TooManyTurns Your flow asked for user input or relayed information back to the user too many times in a single session. The current maximum number of turns per session is 200.
Error.MaxRecursiveTaskDepthReached Your flow has a reusable task and within that task, it uses a Call Task action to invoke the same task again.  The current maximum number of times that a task can call itself is five.
Error.UnknownIntent:  A Set Intent action specified the name of an intent that does not exist.
Error.InvalidInputVariable.<variablename> When invoking the bot flow; for example, from an inbound call flow or inbound chat flow, an invalid value passed for one of the bot flow’s input variables.
Error.InvalidConfirmationMode The expression used to set the confirmation mode for an “Ask for …” action returned an invalid value. The expression should return “always” or “never.”

Any reason code that starts with “RecognitionFailure” indicates that the bot has given the end user several attempts in a particular “Ask for …” action (e.g. “Ask for Slot”, “Ask for Intent”, etc.), but the bot still did not detect a good answer even after all of those attempts.

The rest of the text provides more information about why recognition was unsuccessful. The presence of “Confirmation” at the end of a reason string indicates that the end user’s final (unsuccessful) attempt occurred when the bot asked to confirm an intent or slot value.  The presence of “Collection” at the end of a reason string indicates that the bot asked the “main” question for that action. See the following entries for examples.

RecognitionFailure.MaxNoMatches.Collection The bot asked the main question several times, and each time the user responded with speech or text input, but the bot was unable to understand.  This behavior is called a “no-match.” After several no-matches, the bot gave up and exited.
RecognitionFailure.MaxNoInputs.Collection The bot asks the main question and receives no input. After several attempts, the bot gave up.
RecognitionFailure.MaxNoInputs.Confirmation The bot asked the confirmation question several times and each time, the user stayed silent or was not clear enough for the bot to understand. This behavior is called “no-input.” After several no-inputs, the bot gave up and exited.
RecognitionFaliure.MaxNoToConfirms The end user said “no” to a confirmation question too many times in a single action.
RecognitionFailure.MaxTurns The total number of “no-inputs”, “no-matches”, and “no to confirms” was too high for a single action. This behavior implies that the user experience is poor, so the bot gave up and exited. 
RecognitionFailure.AllOptionsRejected When the end user says “no” as the bot confirms a certain intent or slot value, the bot will not try to recognize or confirm the same intent or slot value until it leaves the current action.  If a small number of possible intents (or slot values) exist, and the user says “no” to all of them, then the bot exits with this reason code.