Web Published Forms
Forms created in the form builder are published on a Unique URL. These published forms can be sent as a web survey or embedded in a web application. Submitted formData
is stored as a CX Activity/Conversation Data.
Form Builder
The Form Builder is an integral component of our Unified Admin, designed to enhance business operations by enabling users to create custom forms effortlessly. This tool supports various attributes, allowing for applications such as CX Surveys, Quality Management Evaluations, Web Wiget Conversation Forms, and Agent Desk Wrap-up Forms. With an intuitive drag-and-drop interface, real-time previews, and built-in validation, users can design forms that meet specific business needs without requiring technical expertise.
To create a new form click here.
Each newly created form has a unique form ID and based on that a unique URL for a specific form can be generated consisting of the following payload.
Query Param | Value Example | Description |
---|---|---|
|
| The FQDN URL to the form page being referenced |
|
| A unique identifier for the form being accessed or filled out. |
|
| An identifier for a particular channel within the Expertflow system related to this form. |
|
| The customer provides a Customer identifier on a specific channel in the form of a phone number or other unique identifier. |
|
| A unique conversation ID of the active conversation of the customer. |
|
| A unique identifier for the customer involved in the interaction. |
|
| A session ID for the customer's interaction within the current channel. |
|
| The type of form being accessed, which in this case is a |
formUrl
and formId
are two compulsory query parameters that render a web-published form. the rest are optional and required based on the use cases.
Web Published Forms via Short URL APIs
Web-published forms support both legacy
long URLs
with all query params &short URL
functionality for accessing and submitting the form.Includes security measures to ensure safe access.
Configurable expiry time in configMaps of unified admin for short URLs, making them inaccessible after a set time.
Once the form is submitted, the corresponding short URL is removed to ensure security and restrict multiple submissions.
In Case the server crashes will end up losing all Short URLs.
NOTE: The URL for the survey form will be sent in the conversation as per the Bot’s Training and the conditions it has been trained against.
The system will send a survey form at the end of the conversation and customers can access and submit that form by clicking on that URL.

A form with all its questions will be displayed, which looks like this:

Below is the list of different types of questions and see how they look before and after submission.
Option Type | Before Submission | After Submission |
---|---|---|
5-Star-Rating | ![]() | ![]() |
5-Star-Rating Smiley (filled) | ![]() | ![]() |
5-Star-Rating Smiley (outline) | ![]() | ![]() |
5-Star-Rating Linear Scale | ![]() | ![]() |
Rating Bar | ![]() | ![]() |
Radio Button | ![]() | ![]() |
NPS Type | ![]() | ![]() |
INPUT / TEXTAREA Type | ![]() | ![]() |
Submission Case:
Success Case:

Failure Case:

Validation Patterns for Questions in Web-Published Forms:
Attribute | Allowed Pattern | Min/Max |
---|---|---|
AlphaNumeric | Only alphabets and numbers are allowed. Spaces are also permitted. | {1 - 100} |
AlphaNumericSpecial | Only alphabets, numbers, and special characters like | {0 - 200} |
A valid email address format is required. It includes letters, numbers, dots, and special characters like Examples:
| {0 - 100} | |
URL | A valid URL format, including the protocol ( Examples:
| {0-500} |
IP | Valid IPv4 and IPv6 addresses are allowed. IPv4 addresses consist of four decimal numbers separated by dots, while IPv6 addresses are hexadecimal numbers separated by colons. Examples:
| {0-150} |
Number | Allows positive and negative numbers, as well as decimals. | None |
Password | This pattern enforces the following password requirements:
Examples:
| {8 - 256} |
Positive Number | Allows only positive numbers. | None |
Phone Number | Allows only numbers. A
| None |
Short Answer | Text allowed | {1 - 100} |
Paragraph | Text allowed | {1 - 2000} |
Date | Date Format by default | N/A |
Time | Time Format by default | N/A |
File | N/A | N/A |
Yes No | N/A | N/A |
Multiple Choice Question | N/A | N/A |
Dropdown | N/A | N/A |
5 Star Question | N/A | N/A |
NPS (Net Promotor Score) | N/A | N/A |
Form Data as an Activity
When a form is submitted, it will be stored as an activity in the EFCX system against that specific active or past conversation.
Two possible ways to submit the form:
Push Form Data as a third-party activity for past conversations
Push Form Data for active conversations
Sample Payload of FormData as an Activity:
The data
field contains the actual form submission data:
id
: Identifier for the form data.header
: Header information for the form submission, including sender and session details.body
: The main content of the form submission, including:type
: Type of data, e.g.,FORM_DATA
.markdownText
: will always benull
.formId
: Unique identifier for the form.formTitle
: Title of the form, e.g.,PCS Activity Form
.enableWeightage
: Boolean indicating if weightage is enabled.enableSections
: Boolean indicating if sections are enabled.formWeightage
: Overall weightage of the form (if applicable).sentiment
: Sentiment of the responses (if applicable).additionalDetail
: if applicable can have additional information as an object otherwisenull
.actor
: Quality Manager, Evaluator, Customer, Agent, SuperviorclientApplication
: "QM Questionnaire", "Agent Guidence", "Customer PCS", "Customer Widget", Agent Desk, "Chatbot prompt", "Voice Prompt", "Email Form"review
:id
:
reviewer
:id
agentReviewed
:id
sections
: Array of sections within the form, each containing:sectionId
: Unique identifier for the section.sectionName
: Name of the section.sectionWeightage
: Weightage of the section (if applicable).attributes
: Array of attributes (questions) within the section, each containing:id
: Unique identifier for the attribute.label
: Label for the attribute.valueType
: Type of value, e.g.,boolean
,nps
,5-star-rating
.attributeType
: Type of attribute, e.g.,INPUT
,OPTIONS
,TEXTAREA
.skipType
: Skip type (if applicable).attributeAttachment
: Attachment associated with the attribute.attributeWeightage
: Weightage of the attribute (if application).answer
: Array of answers, each containing:label
: Label for the answer.value
: Value of the answer.isSelected
: Boolean value to represent the selected answer.additionalAttributes
: Additional attributes for the answer. (if applicable)optionWeightage
: Weightage of the option (if applicable).enableStyle
: Boolean indicating if Answer contains styles or not.optionStyle
: Object containing styles of the option (if applicable only in case enableStyle istrue
).name
: Name of any icon (if applicable).type
: Type of any icon (if applicable).color
: Color code as a string of any selected option likeNPS
eg,#00000
.media
: Url of the icon of any selected option eg,https://xyz.com/file-server/xyz.png
Limitations in CX Surveys
By default, the System supports only one survey at a time.
In any case if server crashes all the hash-map data will be lost and form will be only in accessible.