Through customer feedback and our experience with low-code solutions, we identified a recurring need for greater configurability at the application level. Solution builders often need to adjust how a solution behaves after it has been deployed.
Application Preferences introduce configuration points that can be managed independently from the solution design. They allow builders to:
This makes Application Preferences useful both for configuring solution behavior and for managing shared values consistently across an application.
Application Preferences are Studio assets.
When creating an Application Preference, you provide the name and description, as you would for other assets. You also define an access key, which uniquely identifies the preference when it is referenced in Studio or retrieved through the API.
The access key uses camelCase and is generated automatically from the preference name. You can modify the generated key if needed.
Each Application Preference consists of a structure of key–value fields; when creating a field, you must provide a default value. The default values will be the ones used once the application is deployed.
Five field types are supported:
In input mappings, you can reference individual Application Preference fields using the following expression:
${applicationPreferences.preferenceName.fieldName}For example:
${applicationPreferences.companySettings.supportEmail}When the Runtime Engine encounters an Application Preference expression as a task input, it resolves the preference value at that point. To keep the value persistent throughout the process instance, assign it to a process variable so that it follows the variable’s lifecycle.
We are progressively adding support for auto-suggestions when entering these expressions.
Note: Application Preferences cannot be assigned as default values for process variables in the variable creation UI, use Set.
We are working in two directions to make preference more valuable in the solution:
Currently, runtime configuration is available through the Preference Service APIs documented in Swagger UI:
<base_application_URL>/rb/swagger-ui/index.html?urls.primaryName=Preference
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.