Working with Functions

Run cloud functions within your workflow.

Overview

Paragon's Functions are built-in cloud functions that provide a powerful way to add custom logic to your workflows. You can use functions to transform or compute data, or even to perform more complex operations within workflows that you might otherwise need to write server-side code for. Paragon functions support Javascript (ES7) and provide access to select npm modules.

To add a function to your workflow, click the "+" button in the workflow canvas and choose the Function step from the sidebar.

Defining function parameters

You can pass any data from upstream steps into your Function as parameters using the key-value table under "What data should be passed in as parameters?". Under "Key", you can give your variable a name and under "Value" you can insert a variable from the variable menu by clicking the dropdown button.

Writing function code

You can write your custom code in the yourFunction() function, which accepts any valid Javascript (ES7). Any data that you return from this function can then accessed by downstream steps in your workflow.

You can access parameters defined in the key-value table above by referencing parameters.<parameter_name> within yourFunction(). For example, a parameter whose key is email can be accessed in the function by referencing parameters.email.

Using NPM modules in functions

Paragon provides access to certain npm modules that can be used within functions. Here's an example of how you can access the uuid npm module within a function.

JavaScript
JavaScript
function yourFunction(parameters, libraries) {
const uuid = libraries.uuid
}

Note that you'll need to add the libraries parameter to yourFunction(). If your function needs to work asynchronously, you can declare it async.

You can find the full list of supported npm modules in our Javascript Libraries Catalog. If you don't see the module that you're looking for, let us know and can usually add it for you.