Skip to content

Fortified IDDocs

Step

Configuration reference for Forms Steps, Controls, Step Pipes, and conditional execution.

A Step is one page in a Flow. It contains the Controls shown to the user and can run a Step Pipe when the user leaves the Step.

A Step is represented by a JSON object. Steps can be defined in one file or split across multiple files. For larger Flows, the recommended pattern is to keep each Step in its own file and include the files from the Flow configuration.

Name Description Default Mandatory
document_title Text shown in the browser tab Forms - Fortified ID No
order Sort order for the Step. Use this when Steps are loaded with @include N/A No
time_lock Minimum time before the Step can be submitted, using ISO-8601 duration format 0 No
favicon Favicon used for this Step Internal Fortified ID icon No
verbose_logs Additional logging for selected runtime areas, such as flow or session [] No
controls Controls rendered on the Step N/A Yes
pipe Step Pipe executed when the user leaves the Step N/A No
pipe_request_parameters Additional parameters from earlier Flow data included in the Step Pipe request N/A No
buttons Button overrides for this Step Flow button settings No
enabled Enable or disable the Step true No
include_expr Expression that decides whether the Step is included "true" No
retry_notification Retry notification override for this Step Flow retry notification No
ui Step-level UI configuration, such as advanced grid layout N/A No

When the user leaves a Step, Forms collects the relevant Control data and executes the configured Step Pipe. The request sent to the Pipe depends on the data accumulated so far in the Flow and on which values have changed.

Data sent to the Pipe can be accessed in Pipes with the request object, for example:

  • request.givenName
  • request.mail
  • request.selectedGroup

If the Step Pipe returns data, the response must be a single, flat key/value object. Returned values are added to the accumulated Flow State and can be used by later Steps with expressions such as {{flow.displayName}} or ${flow.manager}.

For more information about accumulated Flow data, see Flow data and Step Pipes.

Use enabled to disable a Step completely. When enabled is false, the Step UI is not shown and the Step Pipe is not executed.

Use include_expr when a Step should be included only in certain situations. The expression must evaluate to true or false, or to a boolean function that returns true or false.

{
"include_expr": "session.username != null"
}

Examples:

{
"include_expr": "false"
}
{
"include_expr": "str.isNotNullOrEmpty(flow.findMyActiveDirectoryExtendAccountExpires)"
}

Buttons are normally configured at Flow level, but a Step can override them when that page needs different button behavior or text.

{
"buttons": {
"next_button": {
"enabled": true,
"text": "forms.create_user.next"
},
"save_button": {
"enabled": true,
"text": "forms.create_user.save"
}
}
}

In this section