Callable TriggerA trigger that is called by other workflows
The callable trigger is useful for breaking up larger workflows and for creating common modules that can be reused in multiple workflows.
When configuring a long and perhaps complex Workflow, before progressing to the next stage in your Workflow, you may wish to gather some or all of the data that has been generated thus far and send it to a Callable Workflow to be processed separately.
Usage of this in an advanced scenario can be found in our Processing Large Volumes of Data tutorial.
On this page we will talk you through basic usage of the Callable Trigger.
The basic setup of a callable trigger is:
A good example Workflow to use here is the Slack Suggestions Form Workflow from our Webform / Slack Tutorial.
Having created this workflow, you can add a 'Call Workflow' helper as another step:
Two key things to note from the above screenshot are:
You need to choose which workflow you are calling from the drop-down list at box 2 above. You can only call Workflows which have been set up with a Callable Trigger. So this step can be left for now. We will set up a Callable Trigger Workflow below and this can be completed afterwards.
You can configure the data which is passed to the Callable Workflow by adding properties to the Data object at box 3 above. Here we have taken the result from the Text Helpers connector as a property called output
Now create a new Workflow with a Callable Trigger:
What we are doing in this Workflow is creating a Workflow which is called and sends a notification email when the main Workflow successfully completes. We could, of course, have just added the send email step in the main Workflow, but this guide is just to demonstrate how a Callable Workflow works!
From the screenshot above you will see, at box 2, that the Content of the email is set to JSONPath type and is taking the output property from the trigger step, which directly pulls the output from the Call Workflow step in the main Workflow.
Disabling callable workflows is something that needs to be managed very carefully.
It is possible that many workflows are calling just one callable workflow. Therefore Tray has the built-in protection of not allowing callable workflows to be disabled - to prevent any workflows from returning errors.
So if you do wish to disable a callable workflow, this must currently be done by using a Terminate connector:
This will have the effect of disabling the workflow, without creating any errors in workflows that call it.