Skip to main content
Learning
Building forms
How to add content and layout forms

To build a form, follow these steps:

  1. Inside the Automation Builder, select an Activity or Trigger.

  2. In the Details panel, find the Form section and click Edit.
    This will open the Form Builder. Here’s what you’ll see in the Form Builder:

    image

The Form Builder has three main parts:

  1. Palette
    Contains all the content and layout elements.
  2. Canvas
    The area where you build your form.
  3. Details
    Shows properties and settings for the selected element.

When you first open the Form Builder, you'll see a Form on the Canvas with a single Row.

Let's look at how to arrange content.

Layout

Use Row and Column Set layout elements to organize your form's content. You can find these layout elements in the Layout section of the Palette.

image

Rows

Rows hold the main content of a form. You can have as many rows as you need. Each row can have one to three Columns. These Columns can be split into smaller sections using Column Sets.

When you select a Column in a Row, you can adjust these properties:

PropertyDescription
BorderChoose whether the Column should have a border.
Group ArraysDecide whether Input or Output Arrays should be grouped - see here for further detail.

Column Sets

A Column Set lets you split the columns in a Row into smaller sections. This helps you organise and display Content better on the form.

When you select a Column in a Column Set, you can set these properties:

PropertyDescription
Borderchoose whether the Column should have a border.

Content

To display your form's content, use elements from the Content section in the Palette.

Drag these elements from the Palette and drop them into a Column within a Row or a Column Set.

image

Let's take a look at each of these Content elements in turn.

Display Data

A Display Data element displays Input data from an Activity on a Form. Drag the Display Data element into a Column. Then, in the Details panel, pick the Input data you want to show.

All Display Data elements share these common properties to customize how the information appears:

PropertyDescription
LabelText accompanying the displayed information.
Label colorColor of the label text.
Label weightMakes the label text bold or normal.
Label sizeAdjusts the label text size.
Label positionPositions the label text above or to the left of the Input data.
Content colorColor of the Input data value.
Content sizeAdjusts the size of the Input data value.

Additional properties depend on the type of Input data:

Number

Properties specific to displaying number values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.

Logical

Properties specific to displaying logical values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.

Date

Properties specific to displaying date values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.

Time

Properties specific to displaying time values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.

Date/Time

Properties specific to displaying date/time values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.

TextArray

Properties specific to displaying arrays of text values:

PropertyDescription
Display on single lineWhether the Input data values should be shown on one line or multiple lines.
Single line separatorIf the Input data values are shown on one line, the text to use between each value.

NumberArray

Properties specific to displaying arrays of number values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.
Display on single lineWhether the Input data values should be shown on one line or multiple lines.
Single line separatorIf the Input data values are shown on one line, the text to use between each value.

LogicalArray

Properties specific to displaying arrays of logical values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.
Display on single lineWhether the Input data values should be shown on one line or multiple lines.
Single line separatorIf the Input data values are shown on one line, the text to use between each value.

DateArray

Properties specific to displaying arrays of date values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.
Display on single lineWhether the Input data values should be shown on one line or multiple lines.
Single line separatorIf the Input data values are shown on one line, the text to use between each value.

TimeArray

Properties specific to displaying arrays of time values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.
Display on single lineWhether the Input data values should be shown on one line or multiple lines.
Single line separatorIf the Input data values are shown on one line, the text to use between each value.

DateTimeArray

Properties specific to displaying arrays of date/time values:

PropertyDescription
Display formatHow the Input data value is shown; see here for further details on formatting.
Display on single lineWhether the Input data values should be shown on one line or multiple lines.
Single line separatorIf the Input data values are shown on one line, the text to use between each value.

FileArray

Properties specific to displaying arrays of files:

PropertyDescription
Display on single lineWhether the Input data values should be shown on one line or multiple lines.
Single line separatorIf the Input data values are shown on one line, the text to use between each value.

PersonArray

Properties specific to displaying arrays of people:

PropertyDescription
Display on single lineWhether the Input data values should be shown on one line or multiple lines.
Single line separatorIf the Input data values are shown on one line, the text to use between each value.

Capture Data

A Capture Data element gathers information on the form linked to an Activity or Trigger. Drag the Capture Data element into a Column. Then, in the Details panel, select the Output data you want to capture.

Each Output data item can only be used once per form. After linking an Output data item to a Capture Data element, it will no longer be available in the selection list.

All Capture Data elements have these common properties to customize how the captured information appears:

PropertyDescription
LabelText accompanying the capture widget.
Label colorColor of the label text.
Label weightMakes the label text bold or normal.
Label sizeAdjusts the label text size.

Additional properties depend on the type of Output data:

Text, TextArray

Properties specific to capturing text values:

PropertyDescription
Full widthDecide if the widget should use the full width of the column it is placed in.
Capture typeChoose if the widget supports Single line or Multi-line capture.
ResizeIf Capture type is Multi-line, choose if widget can be resized: options are None, Both, Horizontal, Vertical.
PlaceholderA hint or example of the expected information format or type.
Error separatorText to use between errors if there are multiple errors reported for the field.

Number, NumberArray

Properties specific to capturing number values:

PropertyDescription
Full widthDecide if the widget should use the full width of the column it is placed in.
PlaceholderA hint or example of the expected information format or type.
Error separatorText to use between errors if there are multiple errors reported for the field.

Logical, LogicalArray

Properties specific to capturing logical values:

Property            Description
Capture typeChoose the widget to capture the logical value: Checkbox, Button Group, Radio Group, or Dropdown.
Checkbox typeIf Capture type is Checkbox, choose either Checkbox or Toggle button.
Label positionIf Capture type is Checkbox, choose either Left or Right.
VerticalIf Capture type is Radio Group, choose whether the Radio Group should be displayed horizontally (No) or vertically (Yes).
SearchableIf Capture type is Dropdown, choose whether the dropdown selection is searchable.
ClearableIf Capture type is Dropdown, choose whether the dropdown selection can be cleared.
Error separatorText to use between errors if there are multiple errors reported for the field.

If the Capture type is Button Group, Radio Group, or Dropdown, use Edit labels to set the labels for the logical values (TRUE and FALSE).

Date, DateArray

Properties specific to capturing date values:

PropertyDescription
ClearableChoose whether the date value can be cleared.
Full widthDecide if the widget should use the full width of the column it is placed in.
Capture formatHow the value is shown; see here for further details on formatting.
PlaceholderA hint or example of the expected information format or type.
Error separatorText to use between errors if there are multiple errors reported for the field.

Time, TimeArray

Properties specific to capturing time values:

PropertyDescription
Full widthDecide if the widget should use the full width of the column it is placed in.
PlaceholderA hint or example of the expected information format or type.
Error separatorText to use between errors if there are multiple errors reported for the field.

Date/Time, DateTimeArray

Properties specific to capturing date/time values:

PropertyDescription
ClearableChoose whether the date value can be cleared.
Full widthDecide if the widget should use the full width of the column it is placed in.
Date capture formatHow the date value is shown; see here for further details on formatting.
Date placeholderA hint or example of the expected information format or type.
Time capture formatHow the time value is shown; see here for further details on formatting.
Time placeholderA hint or example of the expected information format or type.
Error separatorText to use between errors if there are multiple errors reported for the field.

Choice, ChoiceArray

Properties specific to capturing choice values:

PropertyDescription
Capture typeChoose the widget to capture the logical value: Button Group, Radio Group, or Dropdown.
VerticalIf Capture type is Radio Group, choose whether the Radio Group should be displayed horizontally (No) or vertically (Yes).
Full widthIf Capture type is Dropdown, choose if the widget should use the full width of the column it is placed in.
PlaceholderIf Capture type is Dropdown, a hint or example of the expected information format or type.
SearchableIf Capture type is Dropdown, choose whether the dropdown selection is searchable.
ClearableIf Capture type is Dropdown, choose whether the dropdown selection can be cleared.
Error separatorText to use between errors if there are multiple errors reported for the field.

Use Edit item labels to set the labels for the choice values.

File, FileArray

Properties specific to capturing files:

PropertyDescription
PlaceholderA hint or example of the expected information format or type.
Error separatorText to use between errors if there are multiple errors reported for the field.

Person, PersonArray

Properties specific to capturing person values:

PropertyDescription
Full widthDecide if the widget should use the full width of the column it is placed in.
PlaceholderA hint or example of the expected information format or type.
SearchableDecide whether the dropdown selection is searchable.
Error separatorText to use between errors if there are multiple errors reported for the field.

Heading

A Heading is text that explains what the next part of the form is about. To use it, drag the Heading element into a Column.

A Heading element has these properties:

PropertyDescription
TextThe heading text.
AlignSet the heading text alignment to Left, Center, or Right.
ColourChoose the colour of the heading text.
Heading sizeSelect the heading size from Heading 1 (largest) to Heading 6 (smallest).

Content Block

A Content Block lets you create rich content by adding text, images, videos, and tables to your form. You can also include Input data within your content. To use it, drag the Content Block into a Column.

To create and edit content, click the Reference Image in the block.

image

This opens the Content Block editor, shown below.

image

The Content Block editor makes it easy to create and format your content. To insert Input data, type the 'at' symbol @ and a list of all available Input data will appear for you to choose from.

Divider

A Divider adds a horizontal line to your form, helping you separate content. To use it, drag the Divider element into a Column.

The Divider element has these properties:

PropertyDescription
ColourChoose the colour of the horizontal line.
SizeChoose the thinkness of the horizontal line.
TextText displayed alongside with the line.
Text weightMakes the text bold or normal.

Error Block

Form errors, like missing or invalid data, appear under the relevant form widgets. To show all errors in one place, such as at the top or bottom of the form, use an Error block. This block displays all form-related errors. To use it, drag the Error block into a Column.

The Error block has these properties:

PropertyDescription
Heading textThe heading text.
AlignSet the heading text alignment to Left, Center, or Right.
Heading sizeSelect the heading size from Heading 1 (largest) to Heading 6 (smallest).

Conditional Logic

Conditional logic lets you decide if a form element is visible or hidden. For Capture elements, it controls whether they are enabled or disabled. It helps you keep forms simple by showing or hiding elements based on user input.

Types of Conditional Logic:

  • Show/Hide conditions
  • Enable/Disable conditions

Show/Hide Conditions

Show/Hide conditions apply to all form elements, including Rows, Columns, and Column Sets. The default option is Show always, meaning the element is always visible. Other options are Show when and Hide when. Selecting one of these options will display a formula (fx) input box:

Properties Input Data

Click the formula input box to open a Formula editor dialog, where you can enter your formula.

For a Show when condition, the element will be shown if the formula returns TRUE; otherwise, it will be hidden.

For a Hide when condition, the element will be hidden if the formula returns TRUE; otherwise, it will be shown.

Learn more about Conditional Logic formulas.

Enable/Disable Conditions

Enable/Disable conditions apply only to Capture elements. The default option is Enable always, meaning the element is always enabled. Other options are Enable when and Disable when. Selecting one of these options will display a formula (fx) input box:

Properties Input Data

Click the formula input box to open a Formula editor dialog, where you can enter your formula.

For an Enable when condition, the element will be enabled on if the formula returns TRUE; otherwise, it will be disabled.

For a Disable when condition, the element will be disabled if the formula returns TRUE; otherwise, it will be enabled.

Learn more about Conditional Logic formulas.

Arrays and Group Arrays

Capture Data can be either single-valued or multi-valued. Single-valued data captures one value on a form. Multi-valued data captures several values. When you add a Capture Data element for Output data that is an array, Add and Delete buttons appear to let users add and remove values values.

For forms needing the same number of items in different arrays (like SKU, Quantity, Price, and Description on an order form), use the Group Arrays property of a Row. This shows a single Add and Delete button for the group, ensuring all arrays stay in sync.

When using Group Arrays, you can choose how elements are arranged:

  • As Table: Best for a few elements. Organizes the array group as a table with column headings. Rows are added or removed with the Add or Delete buttons.
  • As Panel: Best for many elements. Offers more layout options, allowing you to include Headings, Content Blocks, and other elements. Each time Add is clicked, a new panel appears with your custom layout.

As Table has some restrictions:

  • Only one capture element per column.
  • Elements within a Column Set must be added to columns within the set, not to the containing column.
  • Only Capture Data and Display Data elements can be added; other elements like Content Blocks and Headings will be ignored.

Let's take a look at the differences between individual arrays and grouped arrays:

image

Individual (non grouped) arrays each have their own Add button. A user can add different numbers of items in each of the arrays, as shown below.

image

Using the Group Arrays property on a Row Column combines all the Add buttons into one, making sure each array has the same number of items.

image

image

When you select Group Arrays you can control how the elements are arranged on the form. The options are As Table or As Panel.

If you have just a few elements, then choose As Table. This will organise the array group as a table, with a heading label for each column and rows added or removed if you select Add or Delete buttons.

If you have more elements that will fit in a table, select the As Panel option. This gives you more layout options and allows you to add Headings, Content Blocks and other elements. With As Panel selected, each time a user clicks Add, a new panel will appear with elements arrange as per your layout.

The As Table options comes with a few restrictions. Only one capture element can be added per Column; any more elements will be ignored. If you subdivide using Column Set, you cannot add elements to the Column containing the Column Set; only columns within the Column Set. Also, you can only add Capture Data elements and Display Data elements, You cannot add Content Block, Heading or any other type of element; these will be ignored.

You can combine Input data and Output data in the same array group. The table will show as many rows or panels as the array with the most items.

When you mix Input data, the Add and Delete buttons are removed. This helps if you want users to add new information to supplement existing information.

Data validation

Data validation checks that the Output data linked to a Capture Data element is correct. When you add Capture Data elements to a form, they are linked to an Output data element that may have a Validation formula. Validation formulas return TRUE if the entered data is valid and FALSE if it is not.

The Form applies these Validation formulas to the Output data captured on the form. It shows error messages underneath the Capture Group element and groups errors from different Capture Data elements in an Error block.

In summary, the Form enforces validation rules.

Learn more about Validation formulas.