Common Tasks
Log Message
The method writes a message to the system activity log. This message can be a static string or a dynamic format string that includes runtime data using Java-style format specifiers.
Format String Syntax:
A format string can include placeholders with the syntax:
%[arg$][flags][width][.precision]conversion
An explanation of each of the components:
arg$- Optional. A number followed by a $ sign which indicates which of the additional arguments to use, argument numbers start at 1. This can be replaced with a < which specifies that the argument from the previous placeholder should be used.flags- Optional. A sequence of any of the following characters:-- Makes the output left-justified by adding any padding spaces to the right instead of to the left.#- Shows an alternate representation of the formatted data depending on the conversion.+- Causes positive numbers to always be prefixed with "+".- (A space character) This prefixes a space to positive numbers, primarily so that the digits can be lined up with the digits of negative numbers.0- Pads numbers with zeroes on the left.,- Groups digits (for example by thousands) and puts separators between the groups.(- Encloses negative numbers in parentheses.width- Optional. A whole number specifying the minimum number of characters that the output should occupy. If necessary spaces are added to the right to reach this number, or to the left if the - flag is used..precisionOptional. A.followed by a whole number indicating how many decimal digits to show in the formatted data.conversion- Required. A character which indicates how an argument's data should be represented. If the character is uppercase the data will be formatted in uppercase where possible. The list of possible characters is shown in the table below.
List of conversions
| Character | Conversion | Description |
|---|---|---|
| % | Percent | Displays a literal "%" character in the output. |
| n | Line break | Displays a line break in the output. |
| b or B | Boolean | Displays the boolean value of an argument as "true" or "false". If "B" is used then it displays "TRUE" or "FALSE" instead. |
| h or H | Unsigned hexadecimal integer | Represents an argument's binary data as an unsigned hexadecimal integer. If "H" is used then digits A to F are shown in uppercase. Note: For any data other than positive integers this does not represent its real value. |
| s or S | String | Displays the default string representation of the argument. If "S" is used then the string will be converted to uppercase where possible. |
| c or C | Unicode character | Displays a unicode character representation of the argument. For whole numbers, this is the unicode character that corresponds to the number. If "C" is used then the character will be converted to uppercase where possible. |
| d | Decimal integer | Represents a whole number as a decimal integer. |
| o | Octal integer | Represents a whole number as an octal integer. The "#" flag will prefix the number with "0". |
| x or X | Hexadecimal integer | Represents a whole number as a hexadecimal integer. The "#" flag will prefix the number with "0x". If "X" is used then digits A to F and the letter X are shown in uppercase. |
| e or E | Scientific notation | Represents a floating point number in scientific notation. If "E" is used then the letter "E" of the representation will be uppercase. The "#" flag will force a decimal point even if there are no decimal digits. |
| f | Floating point number | Represents a floating point number. The "#" flag will force a decimal point even if there are no decimal digits. |
| g or G | General number | Displays the shortest representation between f and e or E for a floating point number. |
| a or A | Hexadecimal floating point number | Display a floating point number's internal representation with hexadecimal digits. |
| t or T | Time or date | Displays a formatted date or time. The t or T must be followed by one more character indicating how the date or time should be formatted. If "T" is used then text parts of a date or time such as "JANUARY" will be uppercase. |
The following characters can be used for date and time formatting:
- H - 24-hour format of an hour (00 to 23)
- I - 12-hour format of an hour (01 to 12)
- k - 24-hour format of an hour (0 to 23)
- l (lowercase 'L') - 12-hour format of an hour (1 to 12)
- M - Minutes with leading zeros (00 to 59)
- S - Seconds with leading zeros (00 to 59) (The value 60 may occur for leap seconds)
- L - Milliseconds with leading zeroes (000 to 999)
- N - Nanoseconds with leading zeroes (000000000 to 999999999)
- p - "am", "pm", "AM" or "PM" to indicate morning or afternoon
- z - Difference to Greenwich time (Example: -0800)
- Z - Timezone abbreviations (Examples: EST, MDT)
- s - The seconds since the Unix Epoch (January 1 1970 00:00:00 GMT)
- Q - The milliseconds since the Unix Epoch (January 1 1970 00:00:00 GMT)
- B - A full textual representation of a month (January through December)
- b or h - A short textual representation of a month (three letters)
- A - A full textual representation of a day (Example: Monday)
- a - A short textual representation of a day (Example: Mon)
- C - The first two digits of the year (For 1970, "19" would be shown)
- Y - A four digit representation of a year
- y - A two digit representation of a year
- j - The day of the year with leading zeroes (001 to 366)
- m - A numeric representation of a month (01 to 12)
- d - The day of the month (01 to 31)
- e - The day of the month without leading zeros (1 to 31)
- R - The time in 24-hour format (Example: 21:30)
- T - The time in 24-hour format with seconds (Example: 21:30:02)
- r - The time in 12-hour format with seconds (Example: 09:30:02 PM) ("AM" and "PM" are always uppercase)
- D - Date representation as month/day/year (Example: 12/17/23)
- F - Date representation as year-month-day (Example: 2023-12-17)
- c - Full date and time (Example: Thu Mar 28 10:51:00 EDT 2024)
Input Parameters
| Name | Description |
|---|---|
| Format String | A direct message or format string with placeholders |
| Value | Optional unless placeholders are used. Values to fill into placeholders. |
Set State Value
The Set State Value method allows you to assign a value directly to a specified path in the Execution State. This makes it easy to enrich or adjust state data during process execution, either by providing a fixed value or by evaluating an expression.
Input Parameters:
| Name | Description |
|---|---|
| Value | A constant value or an expression that will be evaluated and stored at the specified JSON Path. |
Result Mapping
The output location is defined by a JSON Path expression, which specifies where the calculated value will be stored in the Execution State.
Counter
The Counter method is used to increment or decrement a numeric value stored at a specified location in the Execution State. The adjustment is controlled by the Step parameter, which can be either positive (to increase the counter) or negative (to decrease it).
If the JSON Path specified in the result mapping does not already exist, the counter is automatically initialized with a value of 0 before applying the step.
Input Parameters:
| Name | Description |
|---|---|
| Step | An integer (positive or negative) that determines how much the counter should be adjusted by. |
Result Mapping
The updated counter value is stored in the Execution State at the location defined by the JSON Path expression provided in the result mapping.
Merge Arrays
The method allows you to combine two arrays into one. If one of the inputs is a single value (not an array), it is automatically wrapped in an array before merging. You can optionally limit the number of elements in the resulting array.
Input Parameters:
| Name | Description |
|---|---|
| First Array | Direct value or JSON Path to an array in the execution state |
| Second Array | Same as above |
| Limit | Optional. Restricts output to the last N elements |
Result Mapping
A JSON Path expression defines where the result should be saved in the execution state.
Email Notification
The Email Notification method lets you easily send a message to all members of a project’s team. It’s designed for use within workflows when you need to share updates, alerts, or confirmations automatically. This task supports both plain text and HTML content, so your message can be as simple or as richly formatted as you need.
Input Parameters:
| Name | Description |
|---|---|
| Subject | The subject line of the email |
| HTML Body | The HTML-formatted content of the email |
| Text Body | The plain text version of the email content |
This method ensures that your team stays informed, right from within your automated processes — no external integration required.
JSON Parser
The JSON Parser method lets you enrich the Execution State by injecting new structured data. It takes a JSON-formatted string, parses it, and stores the resulting structure at a specified path within the Execution State.
Input Parameters:
| Name | Description |
|---|---|
| JSON String | The raw JSON text to be parsed and converted into structured Execution State data |
Result Mapping
Use a JSON Path expression to define where the parsed result should be placed in the Execution State. This gives you full control over how and where the data is integrated into your workflow.
Object to String
The Object to String method performs the reverse of the JSON Parser. It takes an object (such as a value, array, or structure) from the Execution State and converts it into a string. The output is always a compact JSON, represented as a single-line string. This makes it suitable for storage, transmission, or embedding in other structures.
Input Parameters:
| Name | Description |
|---|---|
| Object | An object, array, or JSON Path expression pointing to an object in the Execution State |
Result Mapping
Use a JSON Path expression to define where the compact JSON string should be placed in the Execution State. This ensures full control over how and where the stringified data is integrated into your workflow.
Time stamp
The Time Stamp method generates the current date and time, adjusted according to the selected time zone. The value can be returned in different formats and optionally shifted forward or backward by a specified number of seconds, minutes, hours, days, months, or years.
This makes it useful for scheduling, logging, or aligning events with different time zones.
Input Parameters:
| Name | Description |
|---|---|
| Time Zone | Determines the base time zone. Options: UTC (default) or Team’s Time Zone (configured in your profile). |
| Output Mode | Defines the output format. Options: ISO 8601 string or Unix Epoch (seconds or milliseconds). |
| Add Seconds | Number of seconds to add (or subtract if negative). |
| Add Minutes | Number of minutes to add (or subtract if negative). |
| Add Hours | Number of hours to add (or subtract if negative). |
| Add Days | Number of days to add (or subtract if negative). |
| Add Months | Number of months to add (or subtract if negative). |
| Add Years | Number of years to add (or subtract if negative). |
Result Mapping
The resulting timestamp is stored in the Execution State at the location defined by the provided JSON Path expression.
Hash
The Hash method generates a hash value from the provided input using a selected cryptographic algorithm. This is useful for tasks such as data verification, integrity checks, or securely handling values.
The result can be returned either as a Base64-encoded string or as a hexadecimal string, depending on the selected output format.
Input Parameters:
| Name | Description |
|---|---|
| Algorithm | Specifies the hashing algorithm. Supported values: MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA3-224, SHA3-256, SHA3-384, SHA3-512. |
| Input String | The input value to be hashed. Can be provided directly or referenced from the Execution State using a JSON Path. |
| Output Format | Defines the format of the result. Options: Base64 or Hexadecimal. When selecting dynamically, use key values: base64 or hex. |
Result Mapping
The resulting hash value is stored in the Execution State at the location specified by the provided JSON Path expression.