- A trigger is your workflow’s first step. It defines how often your workflow executes. It may also represent an event that needs to occur for your workflow to kick off. A workflow always has exactly one trigger.
- Actions are all subsequent steps of your workflow that start executing once your workflow is activated by a trigger.
Creating a new workflow
To create a new empty workflow, go to the Workflows section in your OpenOps instance, and click New Workflow in the top right corner. What you’ll see is the workflow editor, which initially looks like this: Let’s look around and see what controls the editor provides:- In the top left corner, if you click the arrow next to the workflow name, you’ll see a menu that lets you rename or delete the workflow, move it to a folder for better organization, or perform export and import operations:
- To the right of the workflow name, use the Notes button if you want to describe the intent of your workflow in detail or leave any other comments for future reference.
- Click the three-dot menu icon to expose additional options: Tree view, Version history, and Run logs.
Adding a trigger
When you create a new workflow, the editor creates an empty stub trigger. When you click the trigger node, you can see a list of trigger blocks — groups of related triggers. Select a block that works for you: After selecting a block, choose a specific trigger within that block: OpenOps provides over 10 triggers divided into several blocks:- Schedule: Every X minutes, Every hour, Every day, Every week, Every month, Cron expression.
- Jira Cloud: New issue, Updated issue.
- Linear: New issue, Updated issue, Removed issue.
- IMAP: New email.
- Microsoft Outlook: New email.
- Webhook: Catch webhook.
- Use the live URL shown in the trigger properties to start the workflow asynchronously.
- If the webhook caller expects a response, add
/syncto the end of the live URL. The request waits for the workflow to complete. - To return a response body and headers from your workflow, add an HTTP step with the Send Webhook Response action.
Adding actions
As soon as you’ve created a trigger, the next and all subsequent steps of your workflow will be actions.Adding the first action
Click the + icon under the trigger, and a pop-up menu will display a list of available action blocks. Clicking a block lets you select a specific action: OpenOps provides a total of 120+ actions. One way to make sense of them is to classify them by intent:- To get data for your workflow to process, look at cloud provider integration actions like AWS, Azure or Google Cloud, recommendation provider actions such as Umbrella, Archera and AWS Compute Optimizer, or generic HTTP actions.
- To control the execution of your workflow, use actions grouped under Condition and Split, Loop on items, Delay, and Stop Execution.
- To process data obtained in previous steps, use Date, List, Math, and Text operations, Data mapper for advanced transformations, AI Step for applying LLM prompts to step outputs, and Code for transformations that you can’t express with available no-code actions.
- To request human intervention, use Approval or Slack.
- To make or request changes to cloud resources, use cloud provider actions, IaC integration actions like AWS CloudFormation and Terraform, and the GitHub action.
- To make updates in project management tools, use Jira Cloud, Linear, Zendesk, or Monday.com actions.
- To save data and generate reports, use SMTP, SFTP, Storage, and OpenOps Tables actions.
- Actions that get data from or send data to external resources will require you to define a connection. For example, for AWS-related actions, you’d need to specify your access key ID, secret access key, and the default region. For a Slack connection, you’d specify your Slack instance’s redirect URL, your client ID, and your client secret. One connection can be reused across multiple actions, and the OpenOps UI provides a separate view to list all connections you have defined so far.
- Actions that process data obtained in previous steps will ask you to specify the input data. For details, see Passing Data Between Workflow Steps.
- You can get AI assistance in many actions that involve writing CLI commands (AWS CLI, Azure CLI, Google Cloud CLI), SQL queries (AWS Athena, Snowflake, Databricks, BigQuery), or custom code. To enable AI assistance, you’ll need to connect OpenOps to an LLM provider of your choice. OpenAI, Anthropic, Perplexity, and a dozen other LLM providers are supported.
- Every action has two toggles: Continue on Failure, which lets the current action fail and continues the workflow regardless, and Retry on Failure, which retries the current action up to four times before giving up.
Adding more actions
You can add more actions by clicking the + icon in the workflow graph. You don’t need to add actions sequentially: the + button is available between existing actions, allowing you to add new actions in the middle of your workflow.Copying and pasting steps
If you need to reuse an action step in multiple places, you can copy/paste it. This copies the action along with all its property values, saving you the trouble of reconfiguring it. For example, you can copy/paste actions between different workflows, or between conditional branches of the same workflow that often end up sharing a part of their containing actions. There are three ways to use copy/paste actions:- With the standard copy/paste keyboard shortcuts (Ctrl+C/V or Cmd+C/V on Mac). When you paste this way, the copied action is inserted after the action that is currently selected in the workflow graph.
- Using the right-click context menu of any action:
- By clicking the three-dot menu of any action:
- Select an action after which you want to insert the copied action, then right-click and choose Paste after.
- Right-click the + icon between two existing actions and click Paste here:
- Right-click a loop action and select Paste inside loop. This inserts the copied action as the first action inside the loop:
- To paste as the first action after a loop or condition, right-click anywhere inside the loop or condition and click Paste after selection.
- To paste as the last action in the workflow, right-click anywhere outside the workflow graph and click Paste after selection.
Note that copy/paste has variable availability depending on the protocol used to access OpenOps:
- HTTPS installations, and HTTP on localhost: keyboard shortcuts, context menu, and three-dot menu are all available.
- Non-localhost HTTP installations:
- Keyboard shortcuts are available for copying and pasting.
- Three-dot menu and right-click context menu are available, but only for copying. Use the keyboard shortcut for pasting.
- After copying via the context or three-dot menu, you can only paste within the same workflow.
