System state values
The following system values store Flow state information.
| Value Name | Description |
|---|---|
| $JoinURI | Every time a Flow is run, it generates a new URI for the Boomi Flow player. This URI is stored in the $JoinURI value, and can be found in the browser address field that opens when a Flow is run. - The Flow needs to have run at least once for this value to be generated. - The Boomi Flow engine automatically populates and subsequently updates the $JoinURI value every time a Flow is run. - The $JoinURI allows you to resume a Flow that is already running. - Example usage: Some apps require more than one end-user accessing a running Flow at the same time. Sharing the $JoinUri lets a user transfer control of the Flow to another user. For example, in an app that automates approval, a Sales Manager can transfer control of the Flow to the Director of Sales, for deals worth over $1 million. The Director can then approve the deal, and pass control back to the Sales Manager. |
| $State/ID | Every time a Flow is run, it generates a new Flow state. The State ID is a unique identifier that identifies these states. The $State/ID value stores this ID. - Once a Flow is completed from start to finish, all the state information is removed from the Boomi Flow servers. - Running a Flow generates a new URI for the Boomi Flow player, and the string at the end of the URI (right after “join=…”) is the State ID. |
| $State/Current Step ID | Every step in a Flow has a unique identifier. The $State/Current Step ID value stores the ID of the step the Flow is currently on. |
| $State/Date Created | - The user who first runs the Flow is designated as the ‘Owner’ of the Flow. - The $State/Date Created value stores the date, and the time in UTC, when the Flow was first run by the Owner. |
| $State/Date Modified | The $State/Date Modified value stores the date, and the time in UTC, when Flow control is returned to Boomi Flow. This generally happens when you hit an outcome, for example, by clicking a check box. |
| $State/External ID | You can tag a Flow state in Boomi Flow, and then load it with a unique ID. This value can be used if you cannot know beforehand what the state will be. For example, you can use the $State/External ID to tag a Flow state with an invoice number (instead of the ID generated by the Boomi Flow engine). |
| $State/Flow ID | The $State/Flow ID stores the unique identifier generated for each Flow. This is displayed at the bottom of the Flow canvas, and remains the same throughout the life-cycle of the Flow. ![]() |
| $State/Flow Version ID | The $State/Flow Version ID stores the unique identifier generated for each version of the Flow. Every time the Flow is changed, a new version ID is generated. This is displayed at the bottom of the Flow canvas. ![]() |
| $State/Flow Developer Name | This value contains the name of the Flow. When a Flow is renamed, the $State/Flow Developer Name is updated with the new data. |
| $State/Is Done? | Stores the state of the Flow as either False (the Flow is still running) or True (the Flow has completed execution). - When a Flow is run, the value of $State/Is Done? is set to False. - At the end of runtime, the value of $State/Is Done? is changed to True. - Check the $State/Is Done? value to determine if a Flow has completed execution. A Flow is considered complete when it reaches a step that does not have any outbound outcomes. |
| $State/Join Uri | The $State/Join Uri value is the same as the $JoinURI value. |
| $State/Owner ID | The user who first runs a Flow is designated as the ‘Owner’ of the Flow, and is assigned a unique identifier. The $State/Owner ID stores this ID value. Note: If the Flow uses a swimlane where the Owner has no access to the Flow, the user performing the authentication becomes the new Owner, and the $State/Owner ID is updated in the system to reflect the change. |
| $State/Owner User ID | The user who first runs the Flow is designated as the ‘Owner’ of the Flow. The $State/Owner User ID value stores the User ID of this user, as stored in the user directory from which the Flow received the user. For example, if a user is logged in into Salesforce, the $State/Owner User ID would be the User ID of the user in Salesforce. |
| $State/Owner First Name | The user who first runs the Flow is designated as the ‘Owner’ of the Flow. If the Flow is using a third-party for authentication, the $State/Owner First Name value stores the first name of the Flow Owner. |
| $State/Owner Last Name | The user who first runs the Flow is designated as the ‘Owner’ of the Flow. If the Flow is using a third-party for authentication, the $State/Owner Last Name value stores the last name of the Flow Owner. |
| $State/Owner Username | The user who first runs the Flow is designated as the ‘Owner’ of the Flow. The $State/Owner Username value stores the user name of the Flow Owner, based on the login details of that user in the third-party. |
| $State/Owner Email | The user who first runs the Flow is designated as the ‘Owner’ of the Flow. If the Flow is using a third-party for authentication, the $State/Owner Email value stores the email address of the Flow Owner. |
| $State/Owner Name | The user who first runs the Flow is designated as the ‘Owner’ of the Flow. If the Flow is using a third-party for authentication, the $State/Owner Name value stores the name of the Flow Owner. |
| $State/Tenant ID | The ID of the Flow tenant. For example, you can insert the $State/Tenant ID value into a step or page step to display the ID of the tenant that the Flow belongs to. |
| $State/Current Step Developer Name | Every step in a Flow has a name. The $State/Current Map Step Developer Name value stores this data. Note: It is possible to have multiple steps with the same $State/Current Step Developer Name value. |
| $State/Parent ID | If there is a Flow running a subflow via Flow Out feature, the **$State/Parent ID **value contains the ID of the parent Flow state that initiated the child Flow. Use this value to return the child Flow back to the parent Flow state. |

