Common Configurations
Several nodes provide a shared set of common configurations to control how data is handled and validated during flow execution. Below are the three common options.
User Identify Rule
The User Identity Rule is the condition used to match the user retrieved by the node with the user stored in the current user session (which can be already active or to be activated at the end of the flow).
This rule can be configured in two ways:
-
Textual editor mode: Manually define the matching condition (for example:
username == username). -
Visual editor mode: A guided interface to select attributes and combine conditions without writing expressions manually.
The rule must follow the format:
(user attribute) == (node attribute)(0-n applied functions){ n[0-n][(|| or &&) (user attribute) == (node attribute)(0-n applied functions)]}
Example:
email == cn.toLowerCase().concat('@example.com') || email == uid.toLowerCase().concat('@example.com')
Attribute Manipulation
A set of basic functions is available to manipulate attributes:
| Function | Description |
|---|---|
| .slice() | Returns a copy of the array. E.g. .slice(1), .slice(0, 2) |
| .substring() | Returns the part of the string between the start and end index. E.g. .substring(2), .substring(1, 3) |
| .toUpperCase() | Converts the string to uppercase. |
| .toLowerCase() | Converts the string to lower case. |
| .trim() | Removes space characters from both sides of the string. |
| .prepend() | Prepends one string to another. E.g. .prepend("work_", "email") |
| .concat() | Joins two or more strings. E.g. .concat(str1, str2) |
| .replace() | Replaces a specified value in a string. E.g. .replace("work_email", "email") |
| .split() | Splits a string into an array of substrings. E.g. .split("(") |
Save in Session
The Save in Session option is used to persist data within the IO user session.
The Session Attribute Mapping section allows mapping IO user attributes to specific values. Multiple mappings can be defined; they are then stored in the IO user session at the end of the flow.
Rules are defined as: IO attribute : value retrieved from the node
Example: username: uid
For attribute manipulation, see Attribute Manipulation above.
Save in the Flow Store
Attributes generated or retrieved from the node can be saved into a variable. They can then be reused by other nodes in the flow by referencing them as {{variable.attribute}}.
To do this, choose the attributes to be stored in the variable (all attributes exposed by the node are listed in a multi-select dropdown), then define a variable name that can be freely set by the user.
A flag is also available to make the variable available to the frontend.