Operations (sample payloads)

Main operations

Add to Collection (advanced)

Add a value to a collection from which a range of elements can be later received. NOTE: If you don't require queue-like functionality, consider using other operations for manipulating lists. For queue-like behavior, consider using AWS SQS Connector. Sample Input

\{
    "scope": "Current Run",
    "collection_name": "user_ids",
    "value": 12345
\}

Sample Output

{}

Append to List

Append a value to a list under the given key. The value can also be a list, resulting their concatenation. Sample Input

\{
    "scope": "Workflow",
    "key": "user_preferences",
    "value": "dark_mode",
    "create_if_missing": true,
    "append_array_as_single_item": false
\}

Sample Output

{}

Atomic Increment

Increment a numeric value atomically. Can be used concurrently from multiple executions. Sample Input

\{
    "scope": "Workflow",
    "key": "visitor_count",
    "value_to_add": 1
\}

Sample Output

{
    "value": 42
}

Await Get Value

Wait for a value under a specified key, until it's available Sample Input

\{
    "scope": "Workflow",
    "key": "user_data",
    "timeout": 120
\}

Sample Output

{
    "timeout": 0,
    "value": \{
        "name": "John Doe",
        "email": "john.doe@example.com",
        "age": 30
    \}
}

Delete from List

Delete a given index in a list Sample Input

\{
    "scope": "Current Run",
    "key": "shopping_list",
    "index": 2
\}

Sample Output

{}

Delete Value

Delete a value under a key, in the given scope. Sample Input

\{
    "scope": "Workflow",
    "key": "user_preferences"
\}

Sample Output

{}

Get All Keys

Get all the currently existing keys from storage and optionally their values from the given scope. If more than 10 keys are available only the first 10 of them will be retrieved together with a key to be used in a subsequent get_all request in order to fetch the next batch. Sample Input

\{
    "scope": "Workflow",
    "include_values": true,
    "page_size": 5
\}

Sample Output

{
    "items": [
        {
            "key": "user_preferences",
            "created": "2023-05-15T10:30:00Z",
            "value": \{
                "theme": "dark",
                "notifications": true
            \}
        },
        \{
            "key": "last_sync_date",
            "created": "2023-05-14T18:45:22Z",
            "value": "2023-05-14T18:45:22Z"
        \},
        \{
            "key": "api_key",
            "created": "2023-05-10T09:00:00Z",
            "value": "abc123xyz789"
        \},
        \{
            "key": "active_users",
            "created": "2023-05-13T14:20:15Z",
            "value": [
                "john@example.com",
                "jane@example.com",
                "bob@example.com"
            ]
        \},
        \{
            "key": "config_version",
            "created": "2023-05-12T11:11:11Z",
            "value": 2.1
        \}
    ],
    "next_page_reference": "eyJsYXN0X2tleCI6ImNvbmZpZ192ZXJzaW9uIn0="
}

Get Value

Get a value from under a key, that was set earlier in the given scope. Sample Input

{
    "scope": "Workflow",
    "key": "user_preferences",
    "default_value": \{
        "theme": "light",
        "notifications": true
    \}
}

Sample Output

{
    "value": \{
        "theme": "dark",
        "notifications": false,
        "language": "en"
    \}
}

Set Value

Set a value under a key, in the given scope. Sample Input

{
    "scope": "Workflow",
    "key": "user_preferences",
    "value": \{
        "theme": "dark",
        "notifications": true,
        "language": "en"
    \},
    "force_store_in_older_format": false
}

Sample Output

{}

Set Value in List

Set value under a given index in a list Sample Input

\{
    "scope": "Current Run",
    "key": "shopping_list",
    "index": 2,
    "value": "Milk",
    "create_if_missing": true
\}

Sample Output

{}

Shift Collection (advanced)

Get and remove number of items from the end of a collection. NOTE: If you don't require queue-like functionality, consider using other operations for manipulating lists. For queue-like behavior, consider using AWS SQS Connector. Sample Input

\{
    "scope": "Current Run",
    "collection_name": "order_queue",
    "amount": 3
\}

Sample Output

{
    "values": [
        {
            "created": "2023-05-15T14:30:00Z",
            "data": \{
                "orderId": "ORD-1234",
                "customerName": "John Doe",
                "totalAmount": 99.99
            \}
        },
        {
            "created": "2023-05-15T14:31:00Z",
            "data": \{
                "orderId": "ORD-1235",
                "customerName": "Jane Smith",
                "totalAmount": 149.99
            \}
        },
        {
            "created": "2023-05-15T14:32:00Z",
            "data": \{
                "orderId": "ORD-1236",
                "customerName": "Bob Johnson",
                "totalAmount": 79.99
            \}
        }
    ]
}

Was this page helpful?