Formula Event
The Formula Event allows users to define a series of formula-based transformations. Each row consists of:
- Title: A descriptive name for the formula row.
- Formula (Predefined): A selection of predefined formulas.
- Formula Block: Inputs that can be defined using:
- Static values
- Variables
- Output from previous formula blocks
- Output from previous event nodes in the workflow
 
- Actions: Options to add, delete, and duplicate formula rows.
Predefined Formulas
Users can select from various predefined formulas and use a combination of them to derive desired outputs. The available categories and functions include:
String Functions
String functions allow manipulation and transformation of text data.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| lower | string | Yes | String | String | Converts a string to lowercase | 
| upper | string | Yes | String | String | Converts a string to uppercase | 
| capitalize | string | Yes | String | String | Capitalizes the first character of a string | 
| title | string | Yes | String | String | Converts string to title case (capitalizes first letter of each word) | 
| strip | string chars | Yes No | String String | String | Removes leading and trailing characters (spaces by default) | 
| lstrip | string chars | Yes No | String String | String | Removes leading characters (spaces by default) | 
| rstrip | string chars | Yes No | String String | String | Removes trailing characters (spaces by default) | 
| split | string sep maxsplit | Yes No No | String String Integer | List of Strings | Splits a string by separator into a list of strings | 
| replace | string old new count | Yes Yes Yes No | String String String Integer | String | Replaces occurrences of a substring with another | 
| count | string sub start end | Yes Yes No No | String String Integer Integer | Integer | Counts occurrences of a substring | 
| startswith | string prefix start end | Yes Yes No No | String String Integer Integer | Boolean | Checks if string starts with the specified prefix | 
| endswith | string suffix start end | Yes Yes No No | String String Integer Integer | Boolean | Checks if string ends with the specified suffix | 
| find | string sub start end | Yes Yes No No | String String Integer Integer | Integer | Returns the lowest index of substring | 
| join | separator iterable | Yes Yes | String List | String | Joins elements of an iterable with a separator | 
| concat | x y | Yes Yes | String String | String | Concatenates two strings | 
| generate_word | length | No | Integer | String | Generates a random word of specified length | 
| dynamic_seq | seq_iter seq_length | Yes Yes | List Integer | String | Creates a dynamic sequence | 
Digital Logic Functions
Digital logic functions perform boolean operations.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| and | x y | Yes Yes | Boolean Boolean | Boolean | Returns True if both x and y are True | 
| or | x y | Yes Yes | Boolean Boolean | Boolean | Returns True if either x or y is True | 
| not | x | Yes | Boolean | Boolean | Returns the opposite boolean value | 
| nand | x y | Yes Yes | Boolean Boolean | Boolean | Returns True if not both x and y are True | 
| nor | x y | Yes Yes | Boolean Boolean | Boolean | Returns True if neither x nor y is True | 
| xor | x y | Yes Yes | Boolean Boolean | Boolean | Returns True if x and y have different boolean values | 
| xnor | x y | Yes Yes | Boolean Boolean | Boolean | Returns True if x and y have the same boolean value | 
| implies | x y | Yes Yes | Boolean Boolean | Boolean | Returns True if x implies y (if x then y) | 
| equivalence | x y | Yes Yes | Boolean Boolean | Boolean | Returns True if x and y are equivalent | 
DateTime Functions
DateTime functions handle date and time operations.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| now | - | - | - | String | Returns the current date and time | 
| today | - | - | - | String | Returns the current date | 
| yesterday | - | - | - | String | Returns yesterday's date | 
| tomorrow | - | - | - | String | Returns tomorrow's date | 
| fromtimestamp | timestamp | Yes | Integer/Float | String | Converts a timestamp to a date string | 
| utcnow | - | - | - | String | Returns the current UTC time | 
| strptime | date_string format | Yes Yes | String String | String | Parses a string into a datetime | 
| strftime | input_date format | Yes Yes | String String | String | Formats a datetime into a string | 
| date_replace | input_date year month day hour minute second microsecond | Yes No No No No No No No | String Integer Integer Integer Integer Integer Integer Integer | String | Replaces components of a date | 
| add_timedelta | input_date days seconds microseconds milliseconds minutes hours weeks | Yes No No No No No No No | String Integer Integer Integer Integer Integer Integer Integer | String | Adds a time delta to a date | 
| isoformat | input_date | Yes | String | String | Returns ISO 8601 formatted date | 
| timestamp | input_date | Yes | String | Float | Returns POSIX timestamp | 
| weekday | date_string | Yes | String | Integer | Returns weekday (0-6, Monday is 0) | 
| isoweekday | date_string | Yes | String | Integer | Returns ISO weekday (1-7, Monday is 1) | 
| str_weekday | date_string | Yes | String | String | Returns weekday name | 
| str_isoweekday | date_string | Yes | String | String | Returns ISO weekday name | 
| get_date | input_date | Yes | String | String | Extracts date part | 
| get_datetime | input_date | Yes | String | String | Returns datetime | 
| get_time | input_date | Yes | String | String | Extracts time part | 
| get_day | input_date | Yes | String | Integer | Extracts day of month | 
| get_month | input_date | Yes | String | Integer | Extracts month (1-12) | 
| get_year | input_date | Yes | String | Integer | Extracts year | 
| get_date_difference | input_date1 input_date2 | Yes Yes | String String | Integer | Calculates difference between dates | 
| convert_timezone | input_date target_timezone | Yes Yes | String String | String | Converts date to target timezone | 
Info/Utility Functions
Info functions provide utility operations for type checking and conversions.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| is_even | x | Yes | Integer | Boolean | Checks if a number is even | 
| is_odd | x | Yes | Integer | Boolean | Checks if a number is odd | 
| type_check | x expected_type | Yes Yes | Any String | Boolean | Checks if x matches expected type | 
| convert_type | x target_type | Yes Yes | Any String | Any | Converts x to target type | 
| round_off | x precision | Yes No | Number Integer | Float | Rounds a number to specified precision | 
| round_to | x precision | Yes No | Number Integer | Float | Rounds a number to specified precision | 
| is_positive | x | Yes | Number | Boolean | Checks if a number is positive | 
| is_negative | x | Yes | Number | Boolean | Checks if a number is negative | 
| absolute | x | Yes | Number | Number | Returns absolute value | 
| is_integer | x | Yes | Any | Boolean | Checks if x is an integer | 
| is_float | x | Yes | Any | Boolean | Checks if x is a float | 
| to_string | x | Yes | Number/Boolean | String | Converts to string | 
| to_int | x | Yes | String/Float/Boolean | Integer | Converts to integer | 
| to_float | x | Yes | String/Integer/Boolean | Float | Converts to float | 
| to_bool | x | Yes | String/Number | Boolean | Converts to boolean | 
Regex Functions
Regex functions perform regular expression operations.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| findall | pattern string | Yes Yes | String String | List | Finds all occurrences of pattern | 
| sub | pattern replacement string | Yes Yes Yes | String String String | String | Replaces pattern matches with replacement | 
| re_split | pattern string | Yes Yes | String String | List | Splits string by pattern | 
| subn | pattern replacement string | Yes Yes Yes | String String String | Dictionary | Returns modified string and count of replacements | 
Statistics Functions
Statistics functions perform statistical operations on numeric data.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| min | numbers | Yes | List of Numbers | Number | Returns minimum value | 
| max | numbers | Yes | List of Numbers | Number | Returns maximum value | 
| mean | numbers | Yes | List of Numbers | Number | Calculates average value | 
| median | numbers | Yes | List of Numbers | Number | Finds the median value | 
| mode | numbers | Yes | List of Numbers | List of Numbers | Finds the most common value(s) | 
| range | numbers | Yes | List of Numbers | Number | Calculates range (max-min) | 
| variance | numbers | Yes | List of Numbers | Number | Calculates variance | 
| standard_deviation | numbers | Yes | List of Numbers | Number | Calculates standard deviation | 
| percentile | numbers percent | Yes Yes | List of Numbers Number | Number | Calculates percentile value | 
| quantiles | numbers num_quantiles | Yes Yes | List of Numbers Integer | List of Numbers | Calculates quantile values | 
| array_length | numbers | Yes | List of Numbers | Integer | Returns count of items | 
| generate_number | value top bottom | Yes No No | Integer Integer Integer | Integer | Generates a number | 
Arithmetic Functions
Arithmetic functions perform basic mathematical operations.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| sum | numbers | Yes | List of Numbers | Number | Calculates sum of numbers | 
| product | numbers | Yes | List of Numbers | Number | Calculates product of numbers | 
| subtract | x y | Yes Yes | Number Number | Number | Subtracts y from x | 
| add | x y | Yes Yes | Number Number | Number | Adds x and y | 
| divide | x y | Yes Yes | Number Number | Float | Divides x by y | 
| modulo | x y | Yes Yes | Integer Integer | Integer | Returns remainder of x divided by y | 
| abs | x | Yes | Number | Number | Returns absolute value | 
| square | x | Yes | Number | Number | Returns x squared | 
| cube | x | Yes | Number | Number | Returns x cubed | 
| power | x y | Yes Yes | Number Number | Number | Returns x raised to power y | 
| sqrt | x | Yes | Number | Float | Returns square root of x | 
| factorial | x | Yes | Integer | Integer | Returns factorial of x | 
Math Functions
Math functions provide advanced mathematical operations.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| gcd | a b | Yes Yes | Integer Integer | Integer | Finds greatest common divisor | 
| log | x base | Yes No | Number Number | Float | Calculates logarithm | 
| log10 | x | Yes | Number | Float | Calculates base-10 logarithm | 
| sin | x | Yes | Number | Float | Calculates sine of x (radians) | 
| cos | x | Yes | Number | Float | Calculates cosine of x (radians) | 
| tan | x | Yes | Number | Float | Calculates tangent of x (radians) | 
| degrees | x | Yes | Number | Float | Converts radians to degrees | 
| radians | x | Yes | Number | Float | Converts degrees to radians | 
| hypot | x y | Yes Yes | Number Number | Float | Calculates hypotenuse length | 
Array Functions
Array functions manipulate lists and arrays.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| append | array item | Yes Yes | List Any | List | Adds item to end of array | 
| extend | array iterable | Yes Yes | List List | List | Extends array with another iterable | 
| insert | array index item | Yes Yes Yes | List Integer Any | List | Inserts item at specified index | 
| remove | array item | Yes Yes | List Any | List | Removes first occurrence of item | 
| pop | array index | Yes No | List Integer | Any | Removes and returns item at index | 
| clear | array | Yes | List | Empty List | Removes all items from array | 
| index | array item start end | Yes Yes No No | List Any Integer Integer | Integer | Returns first index of item | 
| array_count | array item | Yes Yes | List Any | Integer | Counts occurrences of item | 
| array_sort | array reverse | Yes No | List Boolean | List | Sorts array in place | 
| array_reverse | array | Yes | List | List | Reverses array in place | 
| array_len | array | Yes | List | Integer | Returns length of array | 
| array_max | array | Yes | List | Any | Returns maximum element | 
| array_min | array | Yes | List | Any | Returns minimum element | 
| array_sum | array | Yes | List of Numbers | Number | Returns sum of elements | 
| array_slice | array top bottom step | Yes No No No | List Integer Integer Integer | List | Returns a slice of the array | 
Dictionary Functions
Dictionary functions manipulate key-value pairs.
| Function | Parameters | Required | Type | Output Type | Description | 
|---|---|---|---|---|---|
| dict_get | dictionary key default | Yes Yes No | Dictionary Any Any | Any | Gets value for key or default | 
| dict_set | dictionary key value | Yes Yes Yes | Dictionary Any Any | Dictionary | Sets key to value in dictionary | 
| dict_pop | dictionary key default | Yes Yes No | Dictionary Any Any | Any | Removes key and returns value | 
| dict_popitem | dictionary | Yes | Dictionary | Dictionary | Removes and returns last key-value pair | 
| dict_keys | dictionary | Yes | Dictionary | List | Returns list of keys | 
| dict_values | dictionary | Yes | Dictionary | List | Returns list of values | 
| dict_items | dictionary | Yes | Dictionary | List | Returns list of key-value pairs | 
| dict_clear | dictionary | Yes | Dictionary | Empty Dictionary | Removes all items | 
| dict_update | dictionary other | Yes Yes | Dictionary Dictionary | Dictionary | Updates dictionary with another | 
| dict_copy | dictionary | Yes | Dictionary | Dictionary | Creates a shallow copy | 
| dict_fromkeys | iterable value | Yes No | List Any | Dictionary | Creates dictionary from keys with value | 
| dict_len | dictionary | Yes | Dictionary | Integer | Returns number of items | 
| dict_contains | dictionary key | Yes Yes | Dictionary Any | Boolean | Checks if key exists | 
| jmespath_search | jmespath_query input_json default_empty_result return_input_on_empty | Yes Yes No No | String Dictionary/List String Boolean | Any | Queries JSON using JMESPath | 
| json_contract_validation | input_json json_schema | Yes Yes | Dictionary Dictionary | Boolean | Validates JSON against schema | 
Example Usage
- Select a formula category (e.g., String, Arithmetic, Statistics).
- Choose a formula from the predefined options.
- Provide the required inputs.
- The formula executes within the workflow, using defined inputs.
- The resulting output can be used in subsequent steps.
Actions
- Add: Insert a new formula row.
- Delete: Remove an existing formula row.
- Duplicate: Copy a formula row for reuse.
This feature enables dynamic computation and transformation of data within workflows.