Executions
Executions are the central part of your automation. Each execution represents a piece of automation which is or was running. Executions can be of type:
FLOW
orSCRIPT
which contain automation logicCONNECTION
which are connections to third party systemSCHEDULE
which execute other flows periodically
Concept
Creating Executions
Executions can be created in several ways:
Using the User Interface
You can manually create executions of flows using the user interface. Navigate to the flow you want to start and click on "Run" or "Run in dev mode" to start the execution in productive or development mode respectively:
Run and Run in dev mode buttons
Find more information about the development and productive modes in Development and Productive Mode
Once a flow is started, it is executed once and immediately. You will be navigated to the execution.
Header of the an execution
Using the REST API
To create an execution using the REST API make a HTTP POST
request to
https://<your-workspace-name>.cloudomation.com/api/latest/execution
Please refer to the REST API documentation for details.
Using Webhooks
To create executions using a webhook, first you need to create and enable a webhook. Please refer to Webhooks for details.
Using Schedules
To create executions using a schedule, first you need to create and enable a schedule.
Helper to Create a Schedule
The scheduling bundle adds an additional button to the flow view which helps you to manually configure a schedule for your flow. Refer to the bundle manager on how to import bundles.
The schedule button
Clicking on the button will execute a helper flow which assists you in creating a new schedule. The helper flow will create a message form for you to configure the details of the schedule.
It is also possible to create schedules without using the helper flow. Please refer to Scheduling for more details.
By Executions
Executions can create other executions.
An execution creating synchronuous child executions of type FLOW
, CONNECTION
, and CONNECTION
.
import flow_api
def handler(system: flow_api.System, this: flow_api.Execution):
this.flow('my-child-flow', custom_parameter='value')
this.connect('my-database', fetchval='SELECT 1+1')
this.connect(connector_type='REST', url='https://cloudomation.com')
return this.success('all done')