When a submission moves through a Workflow Builder workflow, Unqork writes workflow metadata directly onto the submission object. These fields are accessible through template expressions and the Submissions API. Use them to build dashboards, filter submission lists, or write conditional logic based on where a submission is in a process.
Available Fields
Field | Type | Description |
|---|---|---|
| String | The name of the workflow node the submission currently occupies. |
| Array | The sequence of workflow nodes the submission has passed through, in order. |
| String | The current status value on the submission. |
| Array | All status values the submission has held, in order. |
| Object | The number of times each timer node has fired for this submission, keyed by node name. |
Field Details
_workflow.state.currentState
The name of the workflow node the submission currently occupies. Matches the node name as configured in the Workflow Builder.
Use this field to filter a submission list to a specific workflow step. For example, all submissions currently at a "Pending Review" node.
_workflow.state.stateHistory
An array of workflow node names the submission has passed through, from the start node to the current node. Each entry records a transition in the workflow.
Use this field to audit the a submission took through a workflow, identify submissions that passed through a specific node, or calculate how long a submission spent between steps.
status.current
The current status value on the submission. Status values are set by workflow nodes or by direct submission updates.
status.all
An array of all status values the submission has held, in the order they were applied. Use this field to review the full status history of a submission.
_workflow.timerExecutionCounts
An object keyed by timer node name. Each value is the number of times that timer has fired for this submission. A timer node that has fired three times has a count of 3.
Use this field to build logic that responds to how many times a timer has fired. For example, an escalation after a timer fires a set number of times without resolution.
Accessing These Fields
These fields are available anywhere template expressions are supported, including module component settings and the Submissions API filter parameter.
In a template expression:
{{__submission__._workflow.state.currentState}}
In a Submissions API query:
GET /api/v1/applications/{appId}/modules/{moduleId}/submissions?filter={"_workflow.state.currentState":"Pending Review"}
Considerations
These fields are populated only for submissions that are associated with an active workflow. Submissions not connected to a workflow do not have
_workflowfields.stateHistoryandstatus.allgrow as the submission progresses through the workflow. For long-running processes, these arrays can become large.timerExecutionCountsonly includes timer nodes that have fired at least once. Nodes that have not yet fired do not appear in the object.Node names in
currentStateandstateHistoryreflect the names configured in the Workflow Builder. Renaming a node does not update historical entries instateHistory.
Changelog
Date | Change |
|---|---|
2026-08-31 | Initial publication (EN-8075). |