Maestro Forms

   MaestroThe UI design product.  |   Form Builder |  All versions This feature is related to all versions.

A Maestro form is a web document designed to capture user's data.


In this documentation, we use the following terms interchangeably: form, application form, application, user application and customer application.

You create a form in Journey Maestro using various components and libraries. A form design (look and feel) is usually based on a template or a brand that significantly simplifies your life as a Ford Builder. A Template Designer creates a template, which helps you build forms following a specific design. First, you create a form for individual purposes and then extend it and add extra functionality to it by creating new form versions of the original form. Maestro forms are built on the AngularJSAngularJS is a structural framework for dynamic web apps. It lets you use HTML as your template language and lets you extend HTML's syntax to express your application's components clearly and succinctly. AngularJS's data binding and dependency injection eliminate much of the code you would otherwise have to write. For more information, see framework.

When the Maestro form is ready, you build it as a Form Archive (FAR file), which is a self contained ZIP file with all generated resources in it. Now, you can publish (deploy) it in various Journey Manager environments to make the form available to form users and applicants.

As forms require various types of data, including user data, dynamically, they interact with Manager. This means you have to configure Maestro forms in Journey Manager before they can be used.

The Maestro editor is hosted on a Manager instance and the version the project uses dictates which version of the editor the form opens in. This allows you to edit your form in the same version you have used to edit your forms to help manage changes to your forms so making a simple text change will not get new features from newer versions. For more information, see Maestro features.


A Maestro's form is represented differently in Manager. For more information, see Manager's form overview.

Forms are tools for capturing data from applicants (form users). They typically contain page groups, pages, sections, and fields to guide applicants through the data capture process. A Form moves through various events of the Customer Journey Experience, usually configured by a Business Analyst (BA) or Subject Matter Expert (SME) based on requirements gathered. We refer to the BA or SME as the Form Designer.

A Transaction Experience is a sequence of events that includes Prefill, Data Capture, Save and Resume, Attachments, Payments, Assignments, Notifications, and Collaboration between parties.

Some of these events have an impact on the form design, while others are configured in Manager.

Organizations frequently have high-level concerns before beginning form development, including:

  • Branding
  • Integration
  • Accessibility
  • Security

These concerns are translated into action during a Form's development that can include:

  • Styling
  • Validation
  • Data Structure
  • Usability

Maestro provides the tools to address these concerns using the UX principles embodied in the software.

Although the same interface is used to create templates and forms, a Form Builder will likely have less control over the appearance of a form than a Template Designer has over a template. This is because Template Designers typically define extension points, which prevent Form Builders from introducing inconsistencies across an organization's forms.

When a form is published, all of its assets, such as templates, images, style, components, and so on, are bundled into a single-page AngularJS application and made available via a form space.

When creating a form, a Form Builder will:

  1. Choose what template the form should be based on
  2. Apply a brand to the form (if more than one brand exists)
  3. Add page groups, pages, sections, and fields to the form
  4. Create validation rules and other business logic
  5. Integrate with third-party services via pre-built Exchange packages
  6. Configure what data will be collected via Journey Analytics

Next, learn about a form architecture.