The bot builder allows you to set up dialogs and connect them to another, anywhere in the workflow. For every dialog you create, you can configure a follow-up action for the bot to perform. These actions can be any of the following:

  • Trigger API - This action will allow you to trigger APIs to fetch, update, or post data remotely
  • Client-side actions - This action will enable you to interact with the customer’s browser and help you in retrieving context
  • Assign to an agent - This action will enable you to transfer the bot conversation over to a live agent
  • Add attribute - This action will enable you to add or update attributes of conversations or user profile
  • Make bot inactive - This action will make the bot inactive for a specific period of time
  • Start a new conversation - This action will enable you to end the current conversation and start a new one

Learn more about actions

API library

Configure and manage APIs used in the bot conversation. Once APIs are configured here, they can be triggered using the actions tab in dialog configuration. 

Learn more about the API library


An automated conversational agent that converses with customers based on a set of conditions that you have defined. The bot is also empowered with the ability to perform actions to give it the function of a human support agent.

Bot activities

Select a set of logs for conversations that a bot has had. You can filter based on errors for debugging.

Bot Version

As you make changes or improvements to your bot, you can save them as versions. You can choose to publish a version so that it can start servicing customers and/or create a draft version to make additional changes for the next release while the current version is actively being used. Older versions can be archived so that change management is seamless.
Learn more about versioning

Bot Conversation

The actual conversation that the bot has with a customer. 


A condition defines how the bot should progress in a conversation. It can be based on dialog inputs, API responses, custom parameters, placeholders, or function outputs. For example: After Dialog A is executed, proceed to Dialog B OR if Button C is clicked in Dialog A then proceed to Dialog D. 

Learn more about conditions in Freddy Self-service

Conversation Break

The sequential processing of dialogs within a flow can be broken using the conversation break option. 

Learn more about conversational breaks


This page will have all the conversations that a particular chatbot has had with the customer. You can apply the filters on this page to view just the list of conversations you need.

Custom parameters

When the customer is logged in from portal or website, you might want to fetch some customer information like their order ID, date of birth, customer ID, etc, and display it in the bot conversation. The parameters for such information may not be readily available as a placeholder. 'Custom Parameters' in the bot builder helps to fetch just this information.

Learn more about custom parameters


These are building blocks of a bot conversation. You can configure messages, set up conditions, get user input, and set up actions within dialogs.

Default Flows

  • Hello - First flow when the customer returns to the bot. Has greetings dialog by default.
  • Sorry - Executed when the bot is unable to proceed further in the conversation. It can be used to redirect the customer to an Agent.


A set of dialogs grouped together create a flow. Within a flow, dialogs are sequentially connected to each other by default.


The bot builder provides you with commonly used functions for your daily operations, such as fetching current date, separating strings by a delimiter, manipulating date and time, etc. These Functions act as placeholders and takes care of populating values for fields dynamically.

For example:

Split function:

This function splits the given text based on the delimiter/separator and returns the value based on the index specified.

Syntax: $fn{{#split)}}

Usage: $fn{{#split('chat&bots','&','1')}} 

The ‘&’ here is the separator which will split the text, 1 is the index indicating the position of which value should be returned (0 being the position of the first value).

Output: bots

Learn more about using functions in the bot builder

Intent-based flows

You can enable your chatbot to understand the intent of your customers in a chatbot conversation. Set up questions and its variants and map them to an answer or a chatbot flow so the bot can detect the intent and direct the customers to the right answer. With ready-to-use fallback flows like 'transfer to live-agent' or 'create a ticket', your agents take over from your bots at any moment.

Learn more about intent-based flows


When you have a global customer base, a bot talking to your customers in a language they best understand will improve your customer support and CSAT rating. Within the bot builder, multiple languages are configurable in a single pane, thus making your bot, polyglot.

Learn more about supporting your customers in multiple languages


The preview option allows you to test the bot based on the current configuration. 

Quick actions

They are options shown to the customer to choose from, during the bot conversation. It comprises of slash commands, widget menu, and preset buttons. Preset buttons can be defined globally and are customizable for every conversation. Slash commands and widget menu options can be defined globally but are not customizable for every conversation.

Learn more about quick actions


    Types of users

  • Read Only - Can only view the bot configuration
  • Admin - Can view and make changes in the bot configuration
  • Owner - Can view and make changes in the bot configuration, add and delete users, manage billing, etc.
    The owner’s email will be the PoC for communication from the Bots team about product updates, error alerts, etc.

Text Variants

Variations of the messages of a dialog to make the bot sound more human-like. A variation is displayed at random from the list of available variations.

Learn more

User Input

Configured for a dialog. This is the type of input required from the customer. Enabling the ‘Get user response’ toggle allows you to configure answer types. You can configure this manually or choose to define them dynamically.

Manual Answer Types

  • Button - For the customer to click on a button to choose between options
  • Drop-down - For the customer to select an option from a list
  • Carousel - For the customer to select one card from the carousel
  • Text field - For the customer to type an answer in the text box
  • Date & time - For the customer to enter date and time from the calendar

Dynamic Answer Types

Answer types whose values are obtained from APIs. For example, this can be used when you configure buttons whose names are to be fetched through an API call.

Widget customization

A lot of efforts go into coming up with a company’s brand design. It’s only natural that the support provided by the company reflects the same brand. The bot builder allows you to change the bot widget’s settings to be in sync with your company’s branding. 

Learn more how you can put your brand on the bot widget