Skip to content

Data Storage

Using the Data Storage component, you can easily manage and operate on lists and objects by setting or retrieving any desired data. This process employs a key-value store mechanism, where the key represents the field’s name and the value corresponds to the particular data’s actual value.

Categories: helpers

Type: dataStorage/v1


Actions

Append Value to List

Name: appendValueToList

Append value to the end of a list. If the list does not exist, it will be created.

Properties

NameLabelTypeDescriptionRequired
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace for appending a value.true
keyKeySTRINGThe identifier of a list must be unique within the chosen scope, or a new value will overwrite the existing one.true
typeTypeSTRING
Options ARRAY, BOOLEAN, DATE, DATE_TIME, INTEGER, NULL, NUMBER, OBJECT, STRING, TIME
The value type.null
valueValueARRAY
Items []
The value to set under given key.true
valueValueBOOLEAN
Options true, false
The value to set under given key.true
valueValueDATEThe value to set under given key.true
valueValueDATE_TIMEThe value to set under given key.true
valueValueINTEGERThe value to set under given key.true
valueValueNULLThe value to set under given key.true
valueValueNUMBERThe value to set under given key.true
valueValueOBJECT
Properties {}
The value to set under given key.true
valueValueSTRINGThe value to set under given key.true
valueValueTIMEThe value to set under given key.true
appendListAsSingleItemAppend a List as a Single ItemBOOLEAN
Options true, false
When set to true, and the value is a list, it will be added as a single value rather than concatenating the lists.null

Example JSON Structure

{
"label" : "Append Value to List",
"name" : "appendValueToList",
"parameters" : {
"scope" : "",
"key" : "",
"type" : "",
"value" : "00:00:00",
"appendListAsSingleItem" : false
},
"type" : "dataStorage/v1/appendValueToList"
}

Output

This action does not produce any output.

Atomic Increment

Name: atomicIncrement

The numeric value can be incremented atomically, and the action can be used concurrently from multiple executions.

Properties

NameLabelTypeDescriptionRequired
keyKeySTRINGThe identifier of a value to increment.true
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace to obtain a value from.true
valueToAddValue to AddINTEGERThe value that can be added to the existing numeric value, which may have a negative value.null

Example JSON Structure

{
"label" : "Atomic Increment",
"name" : "atomicIncrement",
"parameters" : {
"key" : "",
"scope" : "",
"valueToAdd" : 1
},
"type" : "dataStorage/v1/atomicIncrement"
}

Output

Type: INTEGER

Await Get Value

Name: awaitGetValue

Wait for a value under a specified key, until it’s available.

Properties

NameLabelTypeDescriptionRequired
keyKeySTRINGThe identifier of a value to wait for.true
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace to obtain a value from.true
typeTypeSTRING
Options ARRAY, BOOLEAN, DATE, DATE_TIME, INTEGER, NULL, NUMBER, OBJECT, STRING, TIME
The value type.null
defaultValueDefault ValueARRAY
Items []
The default value to return if no value exists under the given key.null
defaultValueDefault ValueBOOLEAN
Options true, false
The default value to return if no value exists under the given key.null
defaultValueDefault ValueDATEThe default value to return if no value exists under the given key.null
defaultValueDefault ValueDATE_TIMEThe default value to return if no value exists under the given key.null
defaultValueDefault ValueINTEGERThe default value to return if no value exists under the given key.null
defaultValueDefault ValueNULLThe default value to return if no value exists under the given key.null
defaultValueDefault ValueNUMBERThe default value to return if no value exists under the given key.null
defaultValueDefault ValueOBJECT
Properties {}
The default value to return if no value exists under the given key.null
defaultValueDefault ValueSTRINGThe default value to return if no value exists under the given key.null
defaultValueDefault ValueTIMEThe default value to return if no value exists under the given key.null
timeoutTimeoutINTEGERIf a value is not found within the specified time, the action returns a null value. Therefore, the maximum wait time should be set accordingly.true

Example JSON Structure

{
"label" : "Await Get Value",
"name" : "awaitGetValue",
"parameters" : {
"key" : "",
"scope" : "",
"type" : "",
"defaultValue" : "00:00:00",
"timeout" : 1
},
"type" : "dataStorage/v1/awaitGetValue"
}

Output

The output for this action is dynamic and may vary depending on the input parameters. To determine the exact structure of the output, you need to execute the action.

Delete Value

Name: deleteValue

Remove a value associated with a key in the specified scope.

Properties

NameLabelTypeDescriptionRequired
keyKeySTRINGThe identifier of a value to delete, stored earlier in the selected scope.true
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace to delete a value from. The value should have been previously accessible, either in the present workflow execution, or the workflow itself for all the executions, or the user account for all the workflows the user has.true

Example JSON Structure

{
"label" : "Delete Value",
"name" : "deleteValue",
"parameters" : {
"key" : "",
"scope" : ""
},
"type" : "dataStorage/v1/deleteValue"
}

Output

This action does not produce any output.

Delete Value from List

Name: deleteValueFromlist

Delete a value from the given index in a list.

Properties

NameLabelTypeDescriptionRequired
keyKeySTRINGThe identifier of a list to delete value from, stored earlier in the selected scope.true
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace to delete a value from. The value should have been previously accessible, either in the present workflow execution, or the workflow itself for all the executions, or the user account for all the workflows the user has.true
indexIndexINTEGERThe specified index in the list will be removed, and if it doesn’t exist, the list will remain unaltered.true

Example JSON Structure

{
"label" : "Delete Value from List",
"name" : "deleteValueFromlist",
"parameters" : {
"key" : "",
"scope" : "",
"index" : 1
},
"type" : "dataStorage/v1/deleteValueFromlist"
}

Output

This action does not produce any output.

Get All Entries(Keys and Values)

Name: getAllEntries

Retrieve all the currently existing keys from storage, along with their values within the provided scope.

Properties

NameLabelTypeDescriptionRequired
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace to get keys from.true

Example JSON Structure

{
"label" : "Get All Entries(Keys and Values)",
"name" : "getAllEntries",
"parameters" : {
"scope" : ""
},
"type" : "dataStorage/v1/getAllEntries"
}

Output

The output for this action is dynamic and may vary depending on the input parameters. To determine the exact structure of the output, you need to execute the action.

Get Value

Name: getValue

Retrieve a previously assigned value within the specified scope using its corresponding key.

Properties

NameLabelTypeDescriptionRequired
keyKeySTRINGThe identifier of a value to get, stored earlier in the selected scope.true
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace to get a value from. The value should have been previously accessible, either in the present workflow execution, or the workflow itself for all the executions, or the user account for all the workflows the user has.true
typeTypeSTRING
Options ARRAY, BOOLEAN, DATE, DATE_TIME, INTEGER, NULL, NUMBER, OBJECT, STRING, TIME
The value type.null
defaultValueDefault ValueARRAY
Items []
The default value to return if no value exists under the given key.null
defaultValueDefault ValueBOOLEAN
Options true, false
The default value to return if no value exists under the given key.null
defaultValueDefault ValueDATEThe default value to return if no value exists under the given key.null
defaultValueDefault ValueDATE_TIMEThe default value to return if no value exists under the given key.null
defaultValueDefault ValueINTEGERThe default value to return if no value exists under the given key.null
defaultValueDefault ValueNULLThe default value to return if no value exists under the given key.null
defaultValueDefault ValueNUMBERThe default value to return if no value exists under the given key.null
defaultValueDefault ValueOBJECT
Properties {}
The default value to return if no value exists under the given key.null
defaultValueDefault ValueSTRINGThe default value to return if no value exists under the given key.null
defaultValueDefault ValueTIMEThe default value to return if no value exists under the given key.null

Example JSON Structure

{
"label" : "Get Value",
"name" : "getValue",
"parameters" : {
"key" : "",
"scope" : "",
"type" : "",
"defaultValue" : "00:00:00"
},
"type" : "dataStorage/v1/getValue"
}

Output

The output for this action is dynamic and may vary depending on the input parameters. To determine the exact structure of the output, you need to execute the action.

Set Value

Name: setValue

Set a value under a key, in the specified scope.

Properties

NameLabelTypeDescriptionRequired
keyKeySTRINGThe identifier of a value. Must be unique across all keys within the chosen scope to prevent overwriting the existing value with a new one. Also, it must be less than 1024 bytes in length.true
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace to set a value in. The value should have been previously accessible, either in the present workflow execution, or the workflow itself for all the executions, or the user account for all the workflows the user has.true
typeTypeSTRING
Options ARRAY, BOOLEAN, DATE, DATE_TIME, INTEGER, NULL, NUMBER, OBJECT, STRING, TIME
The value type.null
valueValueARRAY
Items []
The value to set under the specified key.true
valueValueBOOLEAN
Options true, false
The value to set under the specified key.true
valueValueDATEThe value to set under the specified key.true
valueValueDATE_TIMEThe value to set under the specified key.true
valueValueINTEGERThe value to set under the specified key.true
valueValueNULLThe value to set under the specified key.true
valueValueNUMBERThe value to set under the specified key.true
valueValueOBJECT
Properties {}
The value to set under the specified key.true
valueValueSTRINGThe value to set under the specified key.true
valueValueTIMEThe value to set under the specified key.true

Example JSON Structure

{
"label" : "Set Value",
"name" : "setValue",
"parameters" : {
"key" : "",
"scope" : "",
"type" : "",
"value" : "00:00:00"
},
"type" : "dataStorage/v1/setValue"
}

Output

This action does not produce any output.

Set Value in List

Name: setValueInList

Set value under a specified index in a list.

Properties

NameLabelTypeDescriptionRequired
keyKeySTRINGThe identifier of a list. Must be unique across all keys within the chosen scope to prevent overwriting the existing value with a new one. Also, it must be less than 1024 bytes in length.true
scopeScopeSTRING
Options CURRENT_EXECUTION, WORKFLOW, PRINCIPAL, ACCOUNT
The namespace to set a value in. The value should have been previously accessible, either in the present workflow execution, or the workflow itself for all the executions, or the user account for all the workflows the user has.true
indexIndexINTEGERThe index in a list to set a value under. The previous value will be overridden.true
typeTypeSTRING
Options ARRAY, BOOLEAN, DATE, DATE_TIME, INTEGER, NULL, NUMBER, OBJECT, STRING, TIME
The value type.null
valueValueARRAY
Items []
The value to set under the specified list’s key.true
valueValueBOOLEAN
Options true, false
The value to set under the specified list’s key.true
valueValueDATEThe value to set under the specified list’s key.true
valueValueDATE_TIMEThe value to set under the specified list’s key.true
valueValueINTEGERThe value to set under the specified key.true
valueValueNULLThe value to set under the specified key.true
valueValueNUMBERThe value to set under the specified list’s key.true
valueValueOBJECT
Properties {}
The value to set under the specified list’s key.true
valueValueSTRINGThe value to set under the specified list’s key.true
valueValueTIMEThe value to set under the specified list’s key.true

Example JSON Structure

{
"label" : "Set Value in List",
"name" : "setValueInList",
"parameters" : {
"key" : "",
"scope" : "",
"index" : 1,
"type" : "",
"value" : "00:00:00"
},
"type" : "dataStorage/v1/setValueInList"
}

Output

This action does not produce any output.