Skip to main content
Skip table of contents

Form Builder Schema

Enables the business administrators to create, manage, and utilize multiple forms introducing new question types, sections, weightage, and form type categorization to enhance the user experience and data collection capabilities.

Key Features

Features

Types

Form Types

  • Questionnaire Form

  • Survey Form

  • Wrap-up Form

  • Pre-Conversation Form

  • Generic Form

Question Types

  • INPUT

    • alphaNumeric (Alpha Numeric Character)

    • alphaNumericSpecial (Alpha Numeric Special Character)

    • email (Email)

    • number (Number)

    • phoneNumber (Phone Number)

    • password (Password)

    • positiveNumber (Positive Number)

    • url (URL)

    • ip (IP address with or without port)

    • date (Date)

    • time (Time)

    • dateTime (DateTime)

    • shortAnswer (Short Sentence)

    • file (Media File)

  • OPTIONS

    • boolean (Yes/No) → Single Select

    • mcqs (Multiple Choice) → Single Select

    • checkbox (Checkboxes) → Multiple Select

    • dropdown (Dropdown) → Single Select

    • 5-star-rating (5 Star Rating) → Single Select

    • nps (Net Promotor Score) → Single Select

  • TEXTAREA

    • paragraph (Long Sentences)

Sections

  • Allow adding multiple sections

  • Enable/disable Sections

Weightage

  • Questionnaire weightage formula being used on section to question level =>, for example, if section is assigned 50 weightage and the question is assigned 30 weightage then the formula will look like: “ 30/100 * 50 ”

  • Form Level Weightage (Only Allowed in Questionnaire Type Forms)

Question Level Weightage

(Allowed only on MCQ and Dropdown Type Questions)

  1. Allow businesses to set weightage from form level to question’s option level.

  2. Weightage values range from 0% to 100%

  3. Weightage only applies to Multiple Choices (MCQs) and Dropdown (dropdown) type questions.

Questionnaire Valid Weightage Sample:
  • Form: (Questionnaire) → [100] ← Form Weightage

    • Section-1 → [30] ← Section Weightage

      • Question-1 → [20] ← Question Weightage

        • Option-1 → [100] ← Option Weightage

        • Option-2 → [50] ← Option Weightage

        • Option-5 → [0] ← Option Weightage

      • Question-2 → [40] ← Question Weightage

        • Option-1 → [100] ← Option Weightage

        • Option-2 → [0] ← Option Weightage

      • Question-3 → [40] ← Question Weightage

        • Option-1 → [100] ← Option Weightage

        • Option-2 → [50] ← Option Weightage

        • Option-3 → [0] ← Option Weightage

    • Section-2 → [40] ← Section Weightage

      • Question-1 → [50] ← Question Weightage

        • Option-1 → [100] ← Option Weightage

        • Option-2 → [50] ← Option Weightage

        • Option-3 → [0] ← Option Weightage

      • Question-2 → [50] ← Question Weightage

        • Option-1 → [100] ← Option Weightage

        • Option-2 → [50] ← Option Weightage

        • Option-3 → [0] ← Option Weightage

    • Section - 3 → [30] ← Section Weightage

      • Question-1 → [30] ← Question Weightage

        • Option-1 → [100] ← Option Weightage

        • Option-2 → [50] ← Option Weightage

        • Option-3 → [0] ← Option Weightage

      • Question-2 → [30] ← Question Weightage

        • Option-1 → [100] ← Option Weightage

        • Option-2 → [50] ← Option Weightage

        • Option-3 → [0] ← Option Weightage

      • Question-3 → [40] ← Question Weightage

        • Option-1 → [100] ← Option Weightage

        • Option-2 → [50] ← Option Weightage

        • Option-3 → [0] ← Option Weightage

  • Audio File Attachments for Question Prompts

    • Against each question, one can add Audio-type file attachments to allow businesses to fulfill IVR prompt use cases.

    • The maximum file limit is 5MB

    • File Engine Supported audio file type: mp3.

Form Solution.png

Questions Types

Detailed schema for all possible question types in a form with screenshots.

Value Type (Question)

Attribute Type (HTML)

Question Schema

Question Screenshots

  • alphaNumeric

  • alphaNumericSpecial

  • email

  • number

  • phoneNumber

  • password

  • positiveNumber

  • url

  • ip

  • date

  • time

  • dateTime

  • shortAnswer

INPUT

All Input Sample Schema
CODE
{
    "_id": "65cc566711819b00328db0a9",  // String (ObjectId)
    "attributeType": "INPUT",  // String (Field type)
    "helpText": "Enter AlphaNumeric Text Here ..",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "what_is_your_name?",  // String (Unique key for the attribute)
    "label": "What is your name?",  // String (Label for the attribute)
    "valueType": "alphaNumeric",  // String (Value type which will be added by customer)
    "attributeWeightage": 10,  // Number (Overall attribute weightage for the question)
    "attributeAttachment": "https://file-server.expertflow.com/xyz"  // String (Optional media file to be attached)
}
image-20240606-132308.png

All Input type questions will have the same look and feel except for the file-type question

file (file upload)

INPUT

Input File Type Sample Schema
CODE
{
    "_id": "65cc566711819b00328db0a9",  // String (ObjectId)
    "attributeType": "INPUT",  // String (Field type)
    "helpText": "Enter AlphaNumeric Text Here ..",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "what_is_your_name?",  // String (Unique key for the attribute)
    "label": "What is your name?",  // String (Label for the attribute)
    "valueType": "file",  // String (Value type which will be added by customer)
    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String (Optional media file to be attached)
    "fileData": {
        "restrictFile": true,  // Boolean (If set to false then no file type validation will be done)
        "fileExtension": ["PNG", "JPG", "JPEG", "DOC", "MOV", "MP3"],  // Array of Strings (Allowed file extensions)
        "fileNumber": 5,  // Number (Maximum 10 and minimum 1)
        "fileSize": 5,  // Number (in MB)
        "destinationFolder": "https://file-server.expertflow.com/file/"  // String (Destination folder for the file)
    }
}
image-20240606-133927.png

Allow users to upload a multi-media file with specific validations

paragraph

TEXTAREA

Paragraph Sample Schema
CODE
{
    "_id": "65cc566711819b00328db0a9",  // String (ObjectId)
    "attributeType": "TEXTAREA",  // String (Field type)
    "helpText": "Enter Paragraph Text Here ..",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "what_is_your_name?",  // String (Unique key for the attribute)
    "label": "What is your name?",  // String (Label for the attribute)
    "valueType": "paragraph",  // String (Value type which will be added by customer)
    "attributeAttachment": "https://file-server.expertflow.com/xyz"  // String (Optional media file to be attached)
}
image-20240607-085412.png

Only Text Area Type Questions

boolean (Yes/No)

OPTIONS

Boolean Sample Schema
CODE
{
    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
    "attributeType": "OPTIONS",  // String (Field type)
    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "customer_type",  // String (Unique key for the attribute)
    "label": "Customer Type",  // String (Label for the attribute)
    "valueType": "boolean",  // String (Boolean, YES/NO Question valueType)
    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String (Optional Media File to be attached)
    "attributeWeightage": null,  // Null or Number (Overall attributeWeightage will be null or 0 in case of boolean)
    "attributeOptions": {
        "enableCategory": false,  // Boolean
        "enableStyle": true,  // Boolean (Assuming style can be enabled for boolean)
        "reverseOrder": false,  // Boolean (If 'true' attributeData will be in reversed order)
        "isMultipleChoice": false,  // Boolean (will be false in case of boolean)
        "attributeData": [
            {
                "label": "Label Name",  // String
                "values": [
                    {
                        "label": "Yes",  // String
                        "value": true,  // Boolean
                        "optionStyle": {
                            "name": "Filled Smile",  // String
                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                            "type": "filled",  // String
                            "color": null  // String
                        },
                        "optionWeightage": null  // Null or Number (weightage will be null or 0 in case of boolean)
                    },
                    {
                        "label": "No",  // String
                        "value": false,  // Boolean
                        "optionStyle": {
                            "name": "Filled Smile",  // String
                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                            "type": "filled",  // String
                            "color": null  // String
                        },
                        "optionWeightage": null  // Null or Number (weightage will be null or 0 in case of boolean)
                    }
                ]
            }
        ]
    }
}
image-20240607-085810.png

Boolean Type Questions with/without emoji enable

mcqs (Multiple Choice → Single Select)

OPTIONS

Multiple Choice Sample Schema
CODE
{
    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
    "attributeType": "OPTIONS",  // String (Field type)
    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "customer_type",  // String (Unique key for the attribute)
    "label": "Customer Type",  // String (Label for the attribute)
    "valueType": "mcq",  // String (Multiple Choice, Single Select)
    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
    "attributeOptions": {
        "enableCategory": false,  // Boolean (In case of MCQ type question, category can be enabled)
        "enableStyle": false,  // Boolean (Emojis cannot be enabled for mcq)
        "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of mcq type question)
        "isMultipleChoice": false,  // Boolean (will be false in case of mcq)
        "attributeData": [
            {
                "label": "Label Name",  // String
                "values": [
                    {
                        "label": "One",  // String
                        "value": null,  // Null (value is not specified for mcq options)
                        "optionStyle": null,  // It may be Null or Object with keys value null in it
                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                    },
                    {
                        "label": "Two",  // String
                        "value": null,  // Null (value is not specified for mcq options)
                        "optionStyle": null,  // It may be Null or Object with keys value null in it
                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                    }
                    // More objects can be added here
                ]
            }
            // More objects will only be added in case of 'enableCategory' is 'true'
        ]
    }
}
image-20240607-090015.png

Multiple Choice Question with Attribute(Question) level weightage

checkbox (Multi-Select)

OPTIONS

Checkboxes Sample Schema
CODE
 {
    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
    "attributeType": "OPTIONS",  // String (Field type)
    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "customer_type",  // String (Unique key for the attribute)
    "label": "Customer Type",  // String (Label for the attribute)
    "valueType": "checkbox",  // String (checkbox)
    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
    "attributeWeightage": null,  // Null or Number (Overall attributeWeightage for the question type checkboxes will be 'null' or 0)
    "attributeOptions": {
        "enableCategory": false,  // Boolean (In case of checkbox type question, category can be enabled)
        "enableStyle": false,  // Boolean (Emojis cannot be enabled for checkbox)
        "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of checkbox type question)
        "isMultipleChoice": true,  // Boolean (will be true in case of checkbox)
        "attributeData": [
            {
                "label": "Label Name",  // String
                "values": [ 
                    {
                        "label": "One",  // String
                        "value": null,  // Null (value is not specified for checkbox options)
                        "optionStyle": null,  // It may be Null or Object with keys value null in it  
                        "optionWeightage": null  // Null or Number (weightage for checkbox options)
                    },
                    {
                        "label": "Two",  // String
                        "value": null,  // Null (value is not specified for checkbox options)
                        "optionStyle": null,  // It may be Null or Object with keys value null in it
                        "optionWeightage": null  // Null or Number (weightage for checkbox options)
                    }
                    // More objects can be added here
                ]
            }
            // More objects will only be added in case 'enableCategory' is 'true'
        ]
    }
}
image-20240607-104709.png

Checkboxes Type Question with Category Enabled

dropdown (Multiple Choice → Single Select)

OPTIONS

Dropdown Sample Schema
CODE
{
    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
    "attributeType": "OPTIONS",  // String (Field type)
    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "customer_type",  // String (Unique key for the attribute)
    "label": "Customer Type",  // String (Label for the attribute)
    "valueType": "dropdown",  // String (dropdown)
    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
    "attributeOptions": {
        "enableCategory": false,  // Boolean (In case of Dropdown type question, category can be enabled)
        "enableStyle": false,  // Boolean (Emojis cannot be enabled for dropdown)
        "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of dropdown type question)
        "isMultipleChoice": false,  // Boolean (will be false in case of dropdown)
        "attributeData": [
            {
                "label": "Label Name",  // String
                "values": [
                    {
                        "label": "One",  // String
                        "value": null,  // Null (value is not specified for dropdown options)
                        "optionStyle": null,  //  It may be Null or Object with keys value null in it 
                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                    },
                    {
                        "label": "Two",  // String
                        "value": null,  // Null (value is not specified for dropdown options)
                        "optionStyle": null,  //  It may be Null or Object with keys value null in it 
                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                    }
                    // More objects can be added here
                ]
            }
        ]
    }
}
image-20240607-103648.png

Dropdown Type Question with Attribute (Question) level Weightage

5-star-rating (5-Star Rating)

OPTIONS

5 Star Rating Sample Schema
CODE
{
    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
    "attributeType": "OPTIONS",  // String (Field type)
    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "customer_type",  // String (Unique key for the attribute)
    "label": "Customer Type",  // String (Label for the attribute)
    "valueType": "5-star-rating",  // String (5-star-rating)
    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
    "attributeOptions": {
        "enableCategory": false,  // Boolean (In case of Dropdown type question, category can be enabled)
        "enableStyle": true,  // Boolean (Emojis can not be enabled for dropdown)
        "reverseOrder": false,  // Boolean (Reverse Order can be 'true' in case of rating type question)
        "isMultipleChoice": false,  // Boolean (will be false in case of dropdown)
        "attributeData": [
            {
                "label": "Label Name",  // String
                "values": [
                    {
                        "label": "Very Dissatisfied",  // String
                        "value": 1,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                            "type": "filled",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null (weightage can be null)
                    },
                    {
                        "label": "Dissatisfied",  // String
                        "value": 2,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                            "type": "filled",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null (weightage can be null)
                    },
                    {
                        "label": "Neutral",  // String
                        "value": 3,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                            "type": "filled",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null (weightage can be null)
                    },
                    {
                        "label": "Satisfied",  // String
                        "value": 4,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                            "type": "filled",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null (weightage can be null)
                    },
                    {
                        "label": "Very Satisfied",  // String
                        "value": 5,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                            "type": "filled",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null (weightage can be null)
                    }
                ]
            }
        ]
    }
}
image-20240607-103902.png

5 Star Rating Type Question with emoji enabled

nps → (Net Promoter Score)

OPTIONS

NPS Sample Schema
CODE
{
    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
    "attributeType": "OPTIONS",  // String (Field type)
    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
    "isRequired": true,  // Boolean (Check if field is required or not)
    "key": "customer_type",  // String (Unique key for the attribute)
    "label": "Customer Type",  // String (Label for the attribute)
    "valueType": "nps",  // String (Boolean, checkbox, mcq, dropdown, rating, nps)
    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
    "attributeOptions": {
        "enableCategory": false,  // Boolean
        "enableStyle": false,  //Boolean
        "reverseOrder": false, //Boolean
        "isMultipleChoice": false,  // Boolean (Only true in case of checkboxes)
        "attributeData": [
            {
                "label": "",  // String
                "values": [
                    {
                        "label": "Very Dissatisfied",  // String
                        "value": 0,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 1,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 2,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 3,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 4,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 5,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 6,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 7,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 8,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 9,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    },
                    {
                        "label": "",  // String
                        "value": 10,  // Number
                        "optionStyle": {  // Object
                            "name": "Filled Smile",  // String
                            "media": null,  // String
                            "type": "nps",  // String
                            "color": "#ffffff"  // String
                        },
                        "optionWeightage": null  // Null or Number
                    }
                ]
            }
        ]
    }
}
image-20240607-104215.png

NPS Type Question

Form Schema Restrictions

Restrictions

Questionnaire Form

Survey Form

Wrap-up Form

Pre-Conversation Form

Generic

Sections

By default, sections will be enabled, and toggle disabled.

By default, sections will be disabled but can be enabled.

🚫

By default, sections will be disabled, and toggle will be disabled.

🚫

By default, sections will be disabled, and toggle disabled

By default, sections will be enabled but can be disabled

Weightage

By default, weightage will be enabled, and toggle disabled.

🚫

Form-level weightage is always disabled, the toggle is disabled

Only available on MCQs and Dropdown type question's attribute level.

🚫

Weightage is always disabled, the toggle is disabled

🚫

Weightage is always disabled, the toggle is disabled

  • By default disabled, but can be enabled.

  • Given weightage will only apply/ be available for single select MCQs/dropdown type questions (weightage calculation will only apply on these), should be fine if enabled.

  • When weightage is enabled, only Multiple Choice and Dropdown value types are allowed.

Multiple Choice Categories

🚫

Default/Always disabled, toggle disabled.

🚫

Default/Always disabled, toggle disabled.

Default enabled can be disabled.

🚫

Disabled by default

Enabled by default, can be disabled.

Single Select

Allowed by default
Dropdown and MCQs

Multi Select

🚫

🚫

🚫

Disabled by default

Keys of icon used above:

  • ✅ : Enabled with some restrictions.

  • 🚫 : Disabled.

Question types Available per Form Type

Value Type (Question Type)

Attribute Type (HTML)

Form Type

  • alphaNumeric

  • alphaNumericSpecial

  • email

  • number

  • phoneNumber

  • password

  • positiveNumber

  • url

  • ip

  • date

  • time

  • dateTime

  • shortAnswer

INPUT

PRE-CONVERSATION SURVEY GENERIC

file (file upload)

INPUT

PRE-CONVERSATION SURVEY GENERIC

paragraph

TEXTAREA

PRE-CONVERSATION SURVEY GENERIC

boolean (Yes/No)

OPTIONS

PRE-CONVERSATION SURVEY GENERIC

mcq (Multiple Choice → Single Select)

OPTIONS

PRE-CONVERSATION SURVEY GENERIC WRAPUP QUESTIONNAIRE

checkbox (Multi-Select)

OPTIONS

GENERIC WRAPUP

dropdown (Single Select)

OPTIONS

PRE-CONVERSATION SURVEY GENERIC WRAPUP QUESTIONNAIRE

5-star-rating (5-Star Rating)

OPTIONS

SURVEY GENERIC

nps → (Net Promoter Score)

OPTIONS

SURVEY GENERIC

Complete Form Type Schemas

TYPE

SCHEMA

QUESTIONNAIRE

Questionnaire Type Form
CODE
{
    "id": "65b248c710e57100322c5f88",
    "state":"unpublished",
    "formType": "Questionaire",
    "formTitle": "Pre-Chat Form Testing",
    "formDescription": "",
    "enableSections": true,
    "enableWeightage": true,
    "formWeightage" : 0, // null in case enableWeightage is false
    "section": 
      [
        {
          "sectionName": "Section Name",
          "_id":"670f77893c3cb500262901d4",
          "sectionWeightage": 100,
          "attributes": 
          [
            // MCQ Multiple Choice Single Select
            {
                "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                "attributeType": "OPTIONS",  // String (Field type)
                "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                "isRequired": true,  // Boolean (Check if field is required or not)
                "key": "customer_type",  // String (Unique key for the attribute)
                "label": "Customer Type",  // String (Label for the attribute)
                "valueType": "mcq",  // String (Multiple Choice, Single Select)
                "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
                "attributeOptions": {
                    "enableCategory": false,  // Boolean (In case of MCQ type question, category can be enabled)
                    "enableStyle": false,  // Boolean (Emojis cannot be enabled for mcq)
                    "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of mcq type question)
                    "isMultipleChoice": false,  // Boolean (will be false in case of mcq)
                    "attributeData": [
                        {
                            "label": "Label Name",  // String
                            "values": [
                                {
                                    "label": "One",  // String
                                    "value": null,  // Null (value is not specified for mcq options)
                                    "optionStyle": null,  // It may be Null or Object with keys value null in it 
                                    "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                },
                                {
                                    "label": "Two",  // String
                                    "value": null,  // Null (value is not specified for mcq options)
                                    "optionStyle": null,  // It may be Null or Object with keys value null in it 
                                    "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                }
                                // More objects can be added here
                            ]
                        }
                        // More objects will only be added in case of 'enableCategory' is 'true'
                    ]
                }
            },

            //  Dropdown Type Question
            {
                "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                "attributeType": "OPTIONS",  // String (Field type)
                "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                "isRequired": true,  // Boolean (Check if field is required or not)
                "key": "customer_type",  // String (Unique key for the attribute)
                "label": "Customer Type",  // String (Label for the attribute)
                "valueType": "dropdown",  // String (dropdown)
                "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
                "attributeOptions": {
                    "enableCategory": false,  // Boolean (In case of Dropdown type question, category can be enabled)
                    "enableStyle": false,  // Boolean (Emojis cannot be enabled for dropdown)
                    "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of dropdown type question)
                    "isMultipleChoice": false,  // Boolean (will be false in case of dropdown)
                    "attributeData": [
                        {
                            "label": "Label Name",  // String
                            "values": [
                                {
                                    "label": "One",  // String
                                    "value": null,  // Null (value is not specified for dropdown options)
                                    "optionStyle": null,  // It may be Null or Object with keys value null in it 
                                    "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                },
                                {
                                    "label": "Two",  // String
                                    "value": null,  // Null (value is not specified for dropdown options)
                                    "optionStyle": null,  // It may be Null or Object with keys value null in it 
                                    "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                }
                                // More objects can be added here
                            ]
                        }
                    ]
                }
            },

          ]
      }
   ]
}

SURVEY

Survey Type Form
CODE
{
    "id": "65b248c710e57100322c5f88",
    "state": "unpublished",
    "formType": "Survey",
    "formTitle": "Survey Form Testing",
    "formDescription": "",
    "enableSections": true,
    "enableWeightage": false,
    "section": 
          [
            {
              "sectionName": "Section Name",
              "_id": "670f7d5b3c3cb500262901e9",
              "sectionWeightage": null, or 0 because in case of survey weightage is disabled
              "attributes": 
              [
                // Boolean Type Question (YES/NO)
                {
                    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                    "attributeType": "OPTIONS",  // String (Field type)
                    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                    "isRequired": true,  // Boolean (Check if field is required or not)
                    "key": "customer_type",  // String (Unique key for the attribute)
                    "label": "Customer Type",  // String (Label for the attribute)
                    "valueType": "boolean",  // String (Boolean, YES/NO Question valueType)
                    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String (Optional Media File to be attached)
                    "attributeWeightage": null,  // Null or Number (Overall attributeWeightage will be null or 0 in case of boolean)
                    "attributeOptions": {
                        "enableCategory": false,  // Boolean
                        "enableStyle": true,  // Boolean (Assuming style can be enabled for boolean)
                        "reverseOrder": false,  // Boolean (If 'true' attributeData will be in reversed order)
                        "isMultipleChoice": false,  // Boolean (will be false in case of boolean)
                        "attributeData": [
                            {
                                "label": "Label Name",  // String
                                "values": [
                                    {
                                        "label": "Yes",  // String
                                        "value": true,  // Boolean
                                        "optionStyle": {
                                            "name": "Filled Smile",  // String
                                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                                            "type": "filled",  // String
                                            "color": null  // String
                                        },
                                        "optionWeightage": null  // Null or Number (weightage will be null or 0 in case of boolean)
                                    },
                                    {
                                        "label": "No",  // String
                                        "value": false,  // Boolean
                                        "optionStyle": {
                                            "name": "Filled Smile",  // String
                                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                                            "type": "filled",  // String
                                            "color": null  // String
                                        },
                                        "optionWeightage": null  // Null or Number (weightage will be null or 0 in case of boolean)
                                    }
                                ]
                            }
                        ]
                    }
                },
                
                // 5 Star Rating Type Question  (5-star-rating, Emoji-Filled)
                {
                    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                    "attributeType": "OPTIONS",  // String (Field type)
                    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                    "isRequired": true,  // Boolean (Check if field is required or not)
                    "key": "customer_type",  // String (Unique key for the attribute)
                    "label": "Customer Type",  // String (Label for the attribute)
                    "valueType": "5-star-rating",  // String (5-star-rating),
                    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
                    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                    "attributeOptions": {
                        "enableCategory": false,  // Boolean (In case of Dropdown type question, category can be enabled)
                        "enableStyle": true,  // Boolean (Emojis can not be enabled for dropdown)
                        "reverseOrder": false,  // Boolean (Reverse Order can be 'true' in case of rating type question)
                        "isMultipleChoice": false,  // Boolean (will be false in case of dropdown)
                        "attributeData": [
                            {
                                "label": "Label Name",  // String
                                "values": [
                                    {
                                        "label": "Very Dissatisfied",  // String
                                        "value": 1,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                                            "type": "filled",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null (weightage can be null)
                                    },
                                    {
                                        "label": "Dissatisfied",  // String
                                        "value": 2,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                                            "type": "filled",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null (weightage can be null)
                                    },
                                    {
                                        "label": "Neutral",  // String
                                        "value": 3,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                                            "type": "filled",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null (weightage can be null)
                                    },
                                    {
                                        "label": "Satisfied",  // String
                                        "value": 4,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                                            "type": "filled",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null (weightage can be null)
                                    },
                                    {
                                        "label": "Very Satisfied",  // String
                                        "value": 5,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": "https://cx-frontend.expertflow.com/unified-admin/assets/images/form-assets/emoticon-filled-1.svg",  // String
                                            "type": "filled",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null (weightage can be null)
                                    }
                                ]
                            }
                        ]
                    }
                },
                
                // NPS Net Promoter Score Question Type
                {
                    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                    "attributeType": "OPTIONS",  // String (Field type)
                    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                    "isRequired": true,  // Boolean (Check if field is required or not)
                    "key": "customer_type",  // String (Unique key for the attribute)
                    "label": "Customer Type",  // String (Label for the attribute)
                    "valueType": "nps",  // String (Boolean, checkbox, mcq, dropdown, rating, nps)
                    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
                    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                    "attributeOptions": {
                        "enableCategory": false,  // Boolean
                        "enableStyle": false,  //Boolean
                        "reverseOrder": false, //Boolean
                        "isMultipleChoice": false,  // Boolean (Only true in case of checkboxes)
                        "attributeData": [
                            {
                                "label": "",  // String
                                "values": [
                                    {
                                        "label": "Very Dissatisfied",  // String
                                        "value": 0,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 1,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 2,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 3,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 4,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 5,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 6,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 7,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 8,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 9,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    },
                                    {
                                        "label": "",  // String
                                        "value": 10,  // Number
                                        "optionStyle": {  // Object
                                            "name": "Filled Smile",  // String
                                            "media": null,  // String
                                            "type": "nps",  // String
                                            "color": "#ffffff"  // String
                                        },
                                        "optionWeightage": null  // Null or Number
                                    }
                                ]
                            }
                        ]
                    }
                },
                // MCQ Multiple Choice Single Select
                {
                    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                    "attributeType": "OPTIONS",  // String (Field type)
                    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                    "isRequired": true,  // Boolean (Check if field is required or not)
                    "key": "customer_type",  // String (Unique key for the attribute)
                    "label": "Customer Type",  // String (Label for the attribute)
                    "valueType": "mcq",  // String (Multiple Choice, Single Select)
                    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
                    "attributeOptions": {
                        "enableCategory": false,  // Boolean (In case of MCQ type question, category can be enabled)
                        "enableStyle": false,  // Boolean (Emojis cannot be enabled for mcq)
                        "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of mcq type question)
                        "isMultipleChoice": false,  // Boolean (will be false in case of mcq)
                        "attributeData": [
                            {
                                "label": "Label Name",  // String
                                "values": [
                                    {
                                        "label": "One",  // String
                                        "value": null,  // Null (value is not specified for mcq options)
                                        "optionStyle": null, // It may be Null or Object with keys value null in it 
                                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                    },
                                    {
                                        "label": "Two",  // String
                                        "value": null,  // Null (value is not specified for mcq options)
                                        "optionStyle": null,  //  It may be Null or Object with keys value null in it 
                                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                    }
                                    // More objects can be added here
                                ]
                            }
                            // More objects will only be added in case of 'enableCategory' is 'true'
                        ]
                    }
                },
    
                //  Dropdown Type Question
                {
                    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                    "attributeType": "OPTIONS",  // String (Field type)
                    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                    "isRequired": true,  // Boolean (Check if field is required or not)
                    "key": "customer_type",  // String (Unique key for the attribute)
                    "label": "Customer Type",  // String (Label for the attribute)
                    "valueType": "dropdown",  // String (dropdown)
                    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
                    "attributeOptions": {
                        "enableCategory": false,  // Boolean (In case of Dropdown type question, category can be enabled)
                        "enableStyle": false,  // Boolean (Emojis cannot be enabled for dropdown)
                        "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of dropdown type question)
                        "isMultipleChoice": false,  // Boolean (will be false in case of dropdown)
                        "attributeData": [
                            {
                                "label": "Label Name",  // String
                                "values": [
                                    {
                                        "label": "One",  // String
                                        "value": null,  // Null (value is not specified for dropdown options)
                                        "optionStyle": null,  //  It may be Null or Object with keys value null in it 
                                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                    },
                                    {
                                        "label": "Two",  // String
                                        "value": null,  // Null (value is not specified for dropdown options)
                                        "optionStyle": null,  //  It may be Null or Object with keys value null in it 
                                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                    }
                                    // More objects can be added here
                                ]
                            }
                        ]
                    }
                },   
                {
                 // All possible attributes of the type INPUT
                },
                {
                 // TEXTAREA
                },
              ]
            }
          ]

}

WRAPUP

Wrap-up Type Form
CODE
{
    "id": "65b248c710e57100322c5f88",
    "state":"unpublished",
    "formType": "Wrap-up",
    "formTitle": "Wrap Up Form Testing",
    "formDescription": "",
    "enableSections": true,
    "enableWeightage": true,
    "section": 
      [
        {
          "sectionName": "Section Name",
          "sectionWeightage": 100,
          "attributes": 
            [
              // Checkboxes Type Question with Categories enabled
               {
                  "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                  "attributeType": "OPTIONS",  // String (Field type)
                  "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                  "isRequired": true,  // Boolean (Check if field is required or not)
                  "key": "customer_type",  // String (Unique key for the attribute)
                  "label": "Customer Type",  // String (Label for the attribute)
                  "valueType": "checkbox",  // String (checkbox)
                  "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                  "attributeWeightage": null,  // Null or Number (Overall attributeWeightage for the question type checkboxes will be 'null' or 0)
                  "attributeOptions": {
                      "enableCategory": false,  // Boolean (In case of checkbox type question, category can be enabled)
                      "enableStyle": false,  // Boolean (Emojis cannot be enabled for checkbox)
                      "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of checkbox type question)
                      "isMultipleChoice": true,  // Boolean (will be true in case of checkbox)
                      "attributeData": [
                          {
                              "label": "Label Name",  // String
                              "values": [ 
                                  {
                                      "label": "One",  // String
                                      "value": null,  // Null (value is not specified for checkbox options)
                                      "optionStyle": null,  // It may be Null or Object with keys value null in it
                                      "optionWeightage": null  // Null or Number (weightage for checkbox options)
                                  },
                                  {
                                      "label": "Two",  // String
                                      "value": null,  // Null (value is not specified for checkbox options)
                                      "optionStyle": null,  // It may be Null or Object with keys value null in it
                                      "optionWeightage": null  // Null or Number (weightage for checkbox options)
                                  }
                                  // More objects can be added here
                              ]
                          }
                          // More objects will only be added in case 'enableCategory' is 'true'
                      ]
                  }
              },   
            ]
        }
     ]
}

PRE-CONVERSATION

Pre-conversation Type Form
CODE
{
    "id": "65b248c710e57100322c5f88",
    "state":"unpublished",
    "formType": "Pre-conversation",
    "formTitle": "Pre-Chat Form Testing",
    "formDescription": "",
    "enableSections": true,
    "enableWeightage": false,
    "section": 
          [
            {
              "sectionName": "Section Name",
              "sectionWeightage": null, or 0 because in case of survey weightage is disabled
              "attributes": 
              [
                // MCQ Multiple Choice Single Select
                {
                    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                    "attributeType": "OPTIONS",  // String (Field type)
                    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                    "isRequired": true,  // Boolean (Check if field is required or not)
                    "key": "customer_type",  // String (Unique key for the attribute)
                    "label": "Customer Type",  // String (Label for the attribute)
                    "valueType": "mcq",  // String (Multiple Choice, Single Select)
                    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
                    "attributeOptions": {
                        "enableCategory": false,  // Boolean (In case of MCQ type question, category can be enabled)
                        "enableStyle": false,  // Boolean (Emojis cannot be enabled for mcq)
                        "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of mcq type question)
                        "isMultipleChoice": false,  // Boolean (will be false in case of mcq)
                        "attributeData": [
                            {
                                "label": "Label Name",  // String
                                "values": [
                                    {
                                        "label": "One",  // String
                                        "value": null,  // Null (value is not specified for mcq options)
                                        "optionStyle": null,  //  It may be Null or Object with keys value null in it 
                                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                    },
                                    {
                                        "label": "Two",  // String
                                        "value": null,  // Null (value is not specified for mcq options)
                                        "optionStyle": null,  // It may be Null or Object with keys value null in it 
                                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                    }
                                    // More objects can be added here
                                ]
                            }
                            // More objects will only be added in case of 'enableCategory' is 'true'
                        ]
                    }
                },
    
                //  Dropdown Type Question
                {
                    "_id": "65dc26ba07c232003325b8bf",  // String (ObjectId)
                    "attributeType": "OPTIONS",  // String (Field type)
                    "helpText": "Enter Customer Type Here...",  // String (Placeholder of field)
                    "isRequired": true,  // Boolean (Check if field is required or not)
                    "key": "customer_type",  // String (Unique key for the attribute)
                    "label": "Customer Type",  // String (Label for the attribute)
                    "valueType": "dropdown",  // String (dropdown)
                    "attributeAttachment": "https://file-server.expertflow.com/xyz",  // String or Null (Optional Media File to be attached otherwise "null")
                    "attributeWeightage": 10,  // Number (Overall attributeWeightage for the question)
                    "attributeOptions": {
                        "enableCategory": false,  // Boolean (In case of Dropdown type question, category can be enabled)
                        "enableStyle": false,  // Boolean (Emojis cannot be enabled for dropdown)
                        "reverseOrder": false,  // Boolean (Reverse Order cannot be 'true' in case of dropdown type question)
                        "isMultipleChoice": false,  // Boolean (will be false in case of dropdown)
                        "attributeData": [
                            {
                                "label": "Label Name",  // String
                                "values": [
                                    {
                                        "label": "One",  // String
                                        "value": null,  // Null (value is not specified for dropdown options)
                                        "optionStyle": null,  //  It may be Null or Object with keys value null in it 
                                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                    },
                                    {
                                        "label": "Two",  // String
                                        "value": null,  // Null (value is not specified for dropdown options)
                                        "optionStyle": null,  // It may be Null or Object with keys value null in it
                                        "optionWeightage": 10  // Number (weightage can be enabled in case of mcq)
                                    }
                                    // More objects can be added here
                                ]
                            }
                        ]
                    }
                },   
                {
                 // All possible attributes of the type INPUT
                },
                {
                 // TEXTAREA
                },
              ]
            }
          ]

}

GENERIC

Generic Type Form
CODE
{
    "id": "65b248c710e57100322c5f88",
    "state":"unpublished",
    "formType": "Generic",
    "formTitle": "Generic Form Testing",
    "formDescription": "",
    "enableSections": true,
    "enableWeightage": false,
    "section": 
      [
        {
          "sectionName": "Section Name",
          "sectionKey": "section_name",
          "sectionWeightage": 100,
          "attributes": 
            [
              // ALL INPUT AND TEXTAREA AND OPTIONS TYPE QUESTIONS LEGAL in this type of FORM
            ]
        }
     ]
}
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.