The Form Fields tab on the Form Configuration page contains the list of fields for requesters to complete when submitting a request through your form:
Form Fields List
To the right of the Form Configuration navigation panel is a list of fields that may be eligible to display on your form in the order they will display on your form once a requester has selected a request type. Whether a default field has been excluded from your form will display below the name of each field:
You can re-arrange the display order of request types on your form by clicking on a request type displayed here and dragging and dropping it to a new place on this list.
Adding/Deleting Custom Form Fields
Users can add custom form fields by clicking the Add New Form Field button above the list of request types.
Custom fields added to a form can be deleted by clicking the delete button at the right of the newly created field:
Form Fields Detail
To the right of the form fields list are some additional options you can configure for each form field:
Custom Form Fields Types
Custom form fields each have a type that determines how the field will function and also determines the rest of the options that appear in the form fields detail for that field.
- Textfield
- This field allows the requester to enter a single line of text prior to request submission.
- Read-Only Text
- This field displays a single or multiple lines of read-only text to the requester.
- Email Textfield
- This field allows the requester to enter text in the format of an email address prior to request submission.
- Multiline Textfield
- This field allows the requester to enter multiple lines of text prior to request submission.
- Dropdown
- This field allows the requester to select an option from a pre-defined list of values in a dropdown prior to request submission.
- Multiselect Dropdown
- This field allows the requester to select one or more options from a pre-defined list of values in a dropdown prior to request submission.
- Checkbox
- This field allows the requester to select a defined checkbox prior to request submission. This field can be configured so that when a requester checks this box one or more additional custom fields display for the requester.
- Date Picker
- This field allows the requester to select a date from a calendar widget prior to request submission.
- Hidden Field
- This field is hidden to the requester. It allows for the passing of values along with the request submission. Additional details on this field type can be found in the additional functionality section below.
- File Upload
- This field allows the requester to upload a file prior to request submission.
Additional Field Options
The following are additional options that may be configurable for a given field:
- Field Label
- This is title requesters will see when viewing this field e.g. the external display name
- Field Name
- This is the name of the field visible on requests e.g. the internal field name.
- Is a required field? checkbox
- When this field is checked, this field is required in order to submit the request.
- Placeholder
- This is any placeholder that should automatically display within the field.
- Default Value
- This is any default value that should automatically populate for this field.
- Helper Text
- This is any helper text you'd like to display below field.
Additional Functionality
Conditionally Display Fields by Request Type
For all fields other than the default Email field, you can configure that field to display for all request types, to only display for a specific list of request types, or (if it is a default field that cannot be deleted) whether that field should display for any request types:
Enabling a field for a specific request type can allow you to make use of conditional fields that may not be relevant for every request type.
For example, you could enable a conditional field for correction requests requiring the requester to enter information about what piece of information they would like to correct and/or where they are seeing this incorrect information within your product to prevent requests from being submitted with information needed to process these requests.
You could also enable a conditional field for request types involving requests for information that asks for additional information needed to verify the requester's identity because of the more sensitive nature of these requests.
Conditionally Display Fields Based on User-Selected Option on Parent Field
For the default Requestor Type field and any custom field whose field-type is Dropdown, Multi-Select Dropdown, or Checkbox you can configure that field to conditionally display additional fields based on the option the user selects on that field.
For example, suppose you wanted to configure an additional field to display for the Requestor Type field if they selected the 'Other' option that would ask for additional information about the kind of requestor they were:
In that case, on the Other option on this field you would click '+ Add Condition' on that row and configure the child field to display when this option is selected on the Requestor Type field:
Once saved, this additional child field will display as a required field only when the requestor selects the Other option on the Requestor Type field.
Hidden Fields
Hidden fields are used to append custom values to DSAR requests. You accomplish this by creating a custom hidden field on the Form Fields tab and providing a default value. The default value is what will be passed along with every request.
Alternatively, if a cusotmer wanted to create a dynamic hidden field value, they can accomplish this via query parameters. Query parameter values will always take precedence over the default values in the form builder. Query parameters should be appended in the following format:
{fieldName}={dynamicValue}
As an example, if you wanted to send along a requester's username along with each request, you could do something like the following:
const username = getUsername();
const hiddenFieldName = 'o-user-name';
const anchorTag = document.createElement('a');
anchorTag.href = `https://my.datasubject.com/AzZcrjS8mPcKBOKq/34338?${hiddenFieldName}=${encodeURIComponent(username}`;
document.append(anchorTag);
Below is an example with screenshots for additional context.
Create a hidden field:
The hidden field is not visible, but the field is in the HTML, with the default value added to the "value" attribute:
The value is always appended to the request:
The hidden field value is stored as request data on the Request Details page:
An example showing how values can be added via query parameters to allow for more dynamic data: