Skip to main content

Workflow nodes

Learn how to use workflow nodes to call another workflow.


Overview

Complicated workflows can be broken into smaller, more manageable, and potentially reusable components by invoking other workflows. Invoking another workflow is simply a workflow execution that is initiated by another (initiating) workflow execution. To trigger another workflow, the initiating workflow uses a Workflow node.

Data specified with the initiating workflow can be made available to the invoked workflow by providing a JSON formatted payload or by providing values for its inputs.

Similarly, the result of the invoked workflow can be retrieved by the initiating workflow from the response of the invoked workflow. Such a response can be made available through adding a Response node into it.

When a workflow is triggered from another workflow, it runs like a regular execution. When it completes, Actioner records the completion, along with its results, in the initiating workflow's Run history.

Some example use cases include the following:

  • Order fulfillment: Divide the complex order processing workflow into reusable sections for order validation, inventory management, and shipping fulfillment, streamlining the order fulfillment process.

  • User onboarding: Create separate workflow components for user registration, profile setup, and access provisioning, ensuring a seamless onboarding experience for new users.

  • Expense management: Break down expense tracking into sections for expense submission, and approval routing, simplifying the management of expense requests.

  • Lead qualification and nurturing: Break down lead management into components for lead scoring, segmentation, and nurturing strategy, optimizing sales and marketing efforts.

How to invoke another workflow into your workflow

Workflows with Response node

Only workflows containing a Response node can be added into other workflows.

To add a new workflow into your workflow:

  1. Click + button in your canvas and select Workflows option.

  2. On the opening right panel, select the workflow that will be triggered when your workflow is executed.

Depending on the how the selected workflow is triggered (manual or webhook), the parameters on the right panel may vary.

Adding a manual workflow into your workflow

Use shared connections

Make sure that the invoked workflow is not containing any user-based connections. Ensure it uses shared connections in all of its nodes and inputs.

To add a manual workflow into your workflow:

  1. Click + button in your canvas and select Workflows option and proceed to selecting your workflow on the left panel.

  2. Upon selecting a workflow, the parameters of the selected manual workflow open up on WORKFLOW INPUTS section. These fields are the inputs of the selected manual workflow.

  3. Provide values for these inputs. The value you provide will become the value of that input while triggering the invoked workflow.

Dynamically generating values for inputs

To set values dynamically using data in your workflow, such as using data from your inputs, event or from the responses of earlier nodes, use double curlies -- {{ }} to reference to them. You can also use one-liner JavaScript methods inside curlies.

To assign dynamic values to select, checkbox, radio button or date-time inputs, click on gear ⚙ button on the right of the input field and then select Dynamic option.

To hide an input of in the selected workflow, click on gear ⚙ button on the right of the input field and then enable Hidden option.

  1. On Process type section, select if you want to execute the selected workflow synchronously or asynchronously. Select Asynchronously option if you want to proceed to running the following nodes in your initiating workflow without waiting for the invoked workflow's response. If you want to wait for the invoked workflow's response and run the following nodes in your initiating workflow accordingly, choose Synchronously option.

Adding an automated workflow into your workflow

Workflows with webhook trigger

Only automated workflows starting with a webhook trigger can be invoked from other workflows. If the workflow starts with an integration trigger (such as with New message posted event of Slack or Deal updated event of HubSpot), it is not possible to call it from another workflow.

To add an automated workflow into your workflow:

  1. Click + button in your canvas and select Workflows option and proceed to selecting your workflow on the left panel.

  2. Upon selecting a workflow, WORKFLOW EVENT field opens up. This is the field that you need to provide a JSON formatted payload to trigger the selected workflow during runtime.

  3. You can generate payload for the workflow event from the nodes in your workflow. The entered payload will trigger the invoked workflow.

Dynamically generating values for the payload

To set the payload value dynamically using data in your calling workflow, such as using data from your inputs, event or from the responses of earlier nodes, use double curlies -- {{ }} to reference to them. You can also use one-liner JavaScript methods inside curlies.

  1. On Process type section, select if you want to execute the selected workflow synchronously or asynchronously. Select Asynchronously option if you want to proceed to running the following nodes in your initiating workflow without waiting for the invoked workflow's response. If you want to wait for the invoked workflow's response and run the following nodes in your initiating workflow accordingly, choose Synchronously option.

Setting the workflow dynamically

Calling workflows from other apps

By setting the workflow dynamically, you can call workflows from other Actioner apps in the same Actioner workspace.

To dynamically set which workflow will be triggered:

  1. Click on gear ⚙ button on the right of the Select workflow field and then choose Dynamic selection option.

  2. Two fields open up: App ID and Workflow ID.

  3. You can use {{app.id}} to provide the ID of the app that you'll invoke the workflow from. To get the ID of another app, you can use Search apps action from Actioner API integration.

  4. To get a workflow's ID dynamically, you can use Get workflow action from Actioner API integration.

  5. If the workflow your are calling is a manual workflow, provide WORKFLOW INPUT TEMPLATE. You need to provide input values in JSON format.

  6. If the workflow you are calling is an automated workflow, provide WORKFLOW EVENT. You need to provide the payload that will trigger the selected workflow during runtime.

  7. On Process type section, select if you want to execute the selected workflow synchronously or asynchronously. Select Asynchronously option if you want to proceed to running the following nodes in your initiating workflow without waiting for the invoked workflow's response. If you want to wait for the invoked workflow's response and run the following nodes in your initiating workflow accordingly, choose Synchronously option.