Skip to main content

Version: 17.10 (EOL)

Form JSON Definitions

Example

An example Form definition file is shown below.

form-def.json
{
"name": "Loan App",
"formCode": "loan-app",
"transactInsights": false,
"logFormXml": false,
"currentFormVersionNumber": "1.0.0",
"trackingReceiptNoMode": "Tracking Code Only",
"formSpaces": [
{
"name": "Web Plug-in",
"anonAccess": true,
"authAccess": true
}
],
"formGroups": [
{
"name" :"Job Reviewers",
"description" :"Authorized Job Reviewers",
"reassignTask" : false,
"savedAssignedForm" : true,
"completedForm" : true,
"newForm" : false,
"workGroupShare" : true
},
{
"name" :"Job Managers",
"description" :"Authorized Job Managers",
"reassignTask" : false,
"savedAssignedForm" : true,
"completedForm" : true,
"newForm" : false,
"workGroupShare" : true
}
],
"formVersions": [
{
"versionNumber": "1.0.0",
"formType": "Maestro Form",
"usesFormFunctions": true,
"unifiedAppData": true,
"formDataEncryption": true,
"strictHeaderSecurity": true,
"formVersionFile": "home-loan-v1.0.0.zip",
"properties": [],
"formFunctions": [
{
"name": "GetAccounts",
"version": "1.0.0",
"trigger": "Form Function",
"sequence": 1
},
{
"name": "StpDelivery",
"version": "1.0.0",
"trigger": "User Submit",
"sequence": 1
},
{
"name": "PrefillFunction",
"version": "1.0.0",
"trigger": "Form Open",
"sequence": 1
}
],
"services": [],
"formDataConfig": {
"formDataFile": "formdata.xml",
"contactEmailXPath": "//Email",
"dataExtractMapping": [
{
"name": "First Name",
"xpath": "//FirstName",
"searchable": true
},
{
"name": "Last Name",
"xpath": "//LastName",
"searchable": true
},
{
"name": "Email",
"xpath": "//Email",
"searchable": true
}
],
"requestParamPrefillMapping": []
}
}
]
}

Schema

Form definitions must comply with the following schema.

Fields are optional unless otherwise indicated.

AttributeType
namestring

Required. The form's name.

formCodestring

Required. The form code.

currentFormVersionNumberstring

Required. A version number.

For general information about version numbers, see Version Attributes.

trackingReceiptNoModestring

Required. This must be one of the following:

  • "Tracking Code Only"
  • "Receipt Number Only"
emailConfirmationstring

Required. This must be one of the following:

  • "None"
  • "Confirmation"
  • "Confirmation and PDF Receipt"
  • "Link to Receipt"
transactInsightsboolean
logFormXmlboolean
pageTrackingIncludePositionstring

Specify the page script position in relation to the HTML markup.

  • "Inside HEAD: Place the script inside the <head> element of the HTML markup.
  • "After HTML: Place the script outside/after the HTML markup.

For more information about page tracking, see Configure Form Page Tracking.

pageTrackingScriptFilestring

Specify the path to the file containing the page tracking script.

For more information about page tracking, see Configure Form Page Tracking.

deliveryChannelsobject (DeliveryChannels)

Required. Associate delivery channels with the form.

Delivery channels are used to deliver submissions in various states.

trackingCodeServiceobject (TrackingCodeService)

Required. Associate a tracking code service with the form.

A tracking code service is used to generate tracking codes for form transactions.

formSpaces[]object (FormSpace)

Required. Associate one or more form spaces with the form.

formGroups[]object (FormGroup)

Required. Associate zero or more form groups with the form.

formVersions[]object (FormVersion)

Required. Associate one or more form versions with the form.

DeliveryChannels

Use a DeliveryChannels object to associate delivery channels with the form.

For more information about delivery channels, see Associate a Delivery Channel With a Form.

AttributeType
abandonDeliverystring

Required. Delivery channel for abandoned submissions.

Can be empty.

productionDeliverystring

Required. Delivery channel for successful submissions.

Use this delivery channel to deliver successful submissions for this form when the form is not in test mode. Can be empty.

TrackingCodeService

Use a TrackingCodeService object to associate a tracking code service with the form.

AttributeType
serviceNamestring

Required. The name of a tracking code service.

serviceVersionstring

Required. A version number.

For general information about version numbers, see Version Attributes.

FormSpace

Use a FormSpace object to associate a form space with a form.

For information about form spaces, see Form Spaces Overview. For more information about form access, see Configure a Form Space.

AttributeType
namestring

Required. A form space name.

anonAccessboolean

Required. Whether to allow authenticated users to access forms in the form space.

authAccessboolean

Required. Whether to allow anonymous users to access forms in the form space.

FormGroup

Use a FormGroup object to associate a form group with a form.

For information about form groups, see Form Groups. For information about groups generally, see Create a Group.

AttributeType
namestring

Required. The form group's name.

descriptionstring

Required. A brief description of the form group.

reassignTaskboolean

Required. Whether group members can reassign task submissions to other users within the form work group.

savedAssignedFormboolean

Required. Whether group members can share tasks assigned to the group as well as incomplete submissions for the form.

completedFormboolean

Required. Whether group members can share the list of completed submissions and access to receipts.

newFormboolean

Required. Whether users can start a new form belonging to the group.

workGroupShareboolean

Required. Whether users of this work group can share a form.

FormVersion

Use a FormVersion object to associate a form version with a form.

For information about form versions, see Form Versions Overview. For information about form version configuration, see Configure a Form Version.

AttributeType
versionNumberstring

Required. The form version number.

This version number should be sequential for the form and must be unique for the form.

For general information about version numbers, see Version Attributes.

formTypestring

Required. The form type.

This must be one of the following:

  • "Maestro Form"
  • "Composer Form"
usesFormFunctionsboolean

Required. Whether to use Transact namespace functions.

unifiedAppDataboolean

Required. Whether to enable the Unified Application Data Document Model in the form version.

strictHeaderSecurityboolean

Required. Whether to enforce a strict header security policy.

For more information about this option, see Configure a Form Version.

formDataEncryptionboolean

Required. Whether to use form data encryption.

For more information about form data encryption, see Configure a Form Version.

formVersionFilestring

Required. Path to the form archive (ZIP file) for the form version.

formDataConfigobject (FormDataConfig)

Required. A form data configuration.

formFunctions[]object (FormFunction)

Required. Zero or more form functions.

services[]object (Service)

Required. Zero or more services.

versionPropertyValues[]object (PropertyDef)

Required. Zero or more version property values.

FormDataConfig

Use a FormDataConfig object to associate a form data configuration with a form version.

For information about form data configuration, see Form Data Configuration Overview and Form Configuration Mapping.

AttributeType
contactEmailXPathstring

A valid XPath in the form XML data identifying the element where the applicant's contact email address is stored.

saveChallengeXPathstring

A valid XPath in the form XML data identifying the Save Challenge element.

dataExtractMapping[]object (DataExtractMapping)

Required. One or more data extract mappings associated with the form data configuration.

requestParamPrefillMapping[]object (RequestParamPrefillMapping)

Required.

DataExtractMapping

Use a DataExtractMapping object to associate a form data extract mapping with a form data configuration.

Form data extract mappings are used to define form XML values to be extracted when form XML data is submitted. This submission data extract information is summarized in the Form Submission Data view. For information about form data extract mappings, see Form Data Extract Mappings and Form Configuration Mapping.

AttributeType
namestring

Required. The name of a field in the data extract mapping.

xpathstring

Required. A valid XPath identifying the mapping field element.

searchableboolean

Required. Whether to enable searching on encrypted data.

RequestParamPrefillMapping

Use a RequestParamPrefillMapping object to associate a request param prefill mapping with a form data configuration.

Request param prefill mappings are used to map JSON prefill data, request URL parameters, cookie values, and session values into the form XML data model when the form is rendered. This feature is supported in the Self Service Portal and Web Plug-in. For information about request param prefill mapping, see Form Request Parameter Prefill Mapping.

AttributeType
paramNamestring

Required. The name by which this request or JSON parameter is identified.

xpathstring

Required. A valid XPath identifying the request param prefill mapping element.

The element identified by this XPath contains the request or JSON parameter that will generate the value to prefill into the form XML data.

FormFunction

Use a FormFunction object to associate a form function with a form version.

Form Functions are also known as Fluent Functions. For information about form functions, see Transact Functions Overview.

AttributeType
functionTriggerstring

Required. When the function is called.

This must be one of the following:

  • "Form Resume"
  • "Form Update"
  • "Form Ineligible"
  • "Form Function"
  • "User Save"
  • "User Submit"
  • "User Cancel"
  • "Background Delivery"
functionSequencestring

The order that functions with the same trigger are called.

serviceNamestring

Required. The form function's service name.

versionNumberstring

Required. The function version number.

For general information about version numbers, see Version Attributes.

Service

Use a Service object to associate a service with a form version.

For information about services, see Services Overview.

AttributeType
serviceNamestring

Required. The service name.

serviceTypestring

Required. The service type.

This must be one of the following:

  • "Job Controller"
  • "Form Security Filter"
  • "Form Prefill"
  • "Submission Preprocessor"
  • "Form Saved Processor"
  • "Submission Data Validator"
  • "Submission Completed Processor"
  • "Render Receipt"
  • "Task Expiry Process"
  • "Email Service"
serviceVersionstring

Required. The service version number.

For general information about version numbers, see Version Attributes.

PropertyDef

Use a PropertyDef object to associate a property definition with a form version.

For information about properties, see Properties Overview.

AttributeType
namestring

Required. The property name.

scopestring

Required. The scope within which the property exists.

For all form properties, specify the literal value "Form".

typestring

Required. The property type.

This must be one of the following:

  • "Boolean"
  • "CSV"
  • "HTML"
  • "Image"
  • "JSON"
  • "List"
  • "Long Text"
  • "Number"
  • "String"
valuestring

The property's value.

valueFilestring

A file path.