Anonymous Form Bundles

   Journey Manager (JM) Previously known as Transact Manager (TM). |   System Manager / DevOps |  v5.1 & Higher This feature is related to v5.1 and higher.

Anonymous bundles are form bundles that require the use of an email address to allow form users to partially fill out the forms and then complete them later. For example, a triage form can ask a user to enter an email address, so after the form is filled out and submitted, the user can be sent an email with a link to open and continue editing this form bundle. You can use a hard coded contact email in the form, but you must decide how much information the user should re-enter, in case they are not able to complete the form in one go. Regardless of the email address, an anonymous form bundle must be always protected with a save challenge.

We will demonstrate anonymous form bundles with the Maestro Onboarding Job and four Maestro forms examples.

Configure a Form

Below is the Maestro Onboarding - Triage form including the Email Address field. This form starts the anonymous collaboration job.

  1. Select the Same as label checkbox under the Data Extract Name, so you can reference it in the collaboration job as $formDataMap.emailAddress.
  2. Select the Contact Email Address from the Form Data Config Mapping dropdown list.
Note

This email address can't be blank, so the field must be mandatory where the email address is to be entered by the form user.

You can hard code an email address, such as onboarding@company.com, in the form by doing one of the following:

  • Setting the initial data value to onboarding@company.com.
  • Creating a Maestro form rule to hide the email address or to make it read-only.

However, we don't recommend using a hard-coded address.

Job Definition - Additional Products

The job definitions for additional products shows the configuration bundle step below:

{
	"name": "Additional Products",
	"type": "",
	"dynanicPreConditions": true,
	"shareExtractData": false,
	"shareFormData": true,
	"allFormsEditable": true,
	"showPreviousForms": true,
	"redirectNext": true,
	"actions": [
		{
		"name": "Credit Cards Application",
		"type": "Job Task Assign",
		"preCondition": "$formDataMap.productCreditCards == 'true'",
		"redirectNext": true,
		"properties":[
			{"name": "Task Assign Email", "value": "$formDataMap.enailAddress"},
			{"name": "Task Form Code", "value": maestroonboardingcre},
			{"name": "Task Message", "value": "Please complete the Credit Card Application form."},
			{"name": "Task Subject", "value": "Complete Credit Card Application"},
			{"name": "Task Input XML Prefil", "value": "$func.startSubmissionXml()"},
			{"name": "Task Type", "value": "Anonymous"},
			{"name": "Task Save Challenge", "value": "$formDataMap.phoneNumber"}
		]
		},
		{
		"name": "Insurance Application",
		"type": "Job Task Assign",
		"preCondition": "$formDataMap.productInsurance == 'true'",
		"redirectNext": true,
		"properties": [
		{"name": "Task Assign Email", "value": "$formDataMap.enailAddress"},
			{"name": "Task Form Code", "value": maestroonboardingins},
			{"name": "Task Message", "value": "Please complete the Insurance Application form."},
			{"name": "Task Subject", "value": "Complete Insurance Application"},
			{"name": "Task Input XML Prefil", "value": "$func.startSubmissionXML()"},
			{"name": "Task Type", "value": "Anonymous"},
			{"name": "Task Save Challenge", "value": "$formDataMap.phoneNumber"}
		]
		},
...	]
}

The following action properties are typically used for an anonymous form bundle:

  • { "name": "Task Type", "value": "Anonymous" }
  • { "name": "Task Assign Email", "value": "$formDataMap.emailAddress" }. Anonymous form bundles require an email to be set. If the value is blank, the Job Task Assign service throws an error. The email address can be set to a value or it can be read from a data extract of the triage form.
  • { "name": "Task Input XML Prefill", "value": "$func.startSubmissionXml()" }. The Anonymous form task gets the XML data from the previous submission. You can also use $func.stepOrStartSubmissionXml() instead. This is required if the step uses the dynamicPreConditions. For more information, see job functions.
  • { "name": "Task Save Challenge", "value": "${formDataMap.phoneNumber}" }. The save challenge data is set for the form.
Note

It is possible for anonymous tasks to copy attachments from a previous task, but sharing of attachments is not supported in form bundles. For more information, see action properties.

Example 1

The Job Controller below has been extracted from the mOnboarding - Anonymous - shareExtractData job definition JSON above with the following step level attributes: dynamicPreConditions, shareExtractData, as well as the standard ones: allFormsEditable, showPreviousForms and redirectNext.

"dynanicPreConditions": true,
"shareExtractData": true,
"shareFormData": false,
"allFormsEditable": true,
"showPreviousForms": true,
"redirectNext": true,

Example 2

In this example, the job controller is extracted from the mOnboarding - Anonymous - shareFormData job definition above with the following step attributes:

  • dynamicPreConditions, ShareFormData
  • allFormsEditable,
  • showPreviousForms
  • redirectNext.
"dynanicPreConditions": true,
"shareExtractData": true,
"shareFormData": false,
"allFormsEditable": true,
"showPreviousForms": true,
"redirectNext": true,

Next, learn about authenticated form bundles.