Design a flow

Creating flows with the visual, drag-and-drop Flow Designer is so simple it might disguise how powerful flows can be. With a palette of steps and the ability to add custom ones, you can connect rich, complex processes into a single, automated toolchain.

You could learn by doing, but if you want to learn first then do, this page walks you through the steps of creating a flow, the different trigger types, how to add and connect other steps, how to use the available tools, and how configure steps once they're connected.

Before you get started, remember that flows are tied to a form. Make sure your communication plan has a form that you want to build flows for, and that you have permission to access it. You can create multiple flows for a form, one for each trigger type. For those flows to run, the form needs to be enabled and you need a way to kick things off (both sending a message in the Messaging tab or an inbound integration will work).

As we go through the steps below, we'll build out a major incident management (MIM) flow initiated by a response to an alert from a monitoring tool. Along the way, we'll figure out what steps we need, what information needs to flow through the steps, and if the flow needs to split at some point.

How to get to Flow Designer

Access to Flow Designer is controlled by the communication plan — whoever has permission to access the communication plan can access the flows for forms in that plan.

Step 1: Decide what triggers the flow

Triggers are steps that kick off each flow on the canvas based on system activities, such as event status changes, escalations, or event responses.

In our example, we're using a response to an event notification as the trigger — someone gets a notification in their xMatters app that there's an issue and, after reviewing the details, selects the Create Major Incident response to start that flow. For another workflow, you might need a different trigger type; for example, if you want to trigger a different workflow when an event is escalated, you'd use the Escalations trigger.

If you already know what you want to trigger your flow, drag it onto the canvas. Then you can skip ahead, though you might want to disable the flow until you have it laid out.

Step 2: Decide what information needs to go where

The next step in designing a flow is to figure out what applications need to be included, as well as what information you want to push into those applications and when. This determines what steps you need to add, in what order you need to connect them, and what inputs you need to configure.

In our MIM scenario, the event is initiated by Monitoring Tool X. The form includes properties for summary, details, severity, incident_id, and customer_impacting. We know we need to push incident details into ServiceNow since it's our system of record in this scenario. We also want to post the incident details to a chat channel, but we want to include the ServiceNow incident number in the channel name, so the chat steps come after the ServiceNow Create Incident step. We'll get into the steps that come next when we talk about the switch step.

Step 3: Decide if your flow needs to take a detour

Tools are steps that evaluate the information coming through the flow and use it to decide what action to take next.

Adding a tool step is the same as adding any of the other steps — locate the step in the palette, drag it onto the canvas, and connect it to the preceding step. The configuration varies depending on the type of tool you're adding.

Step 4: Test your flow

It's always a good idea test your flow before putting it into active use. This lets you check if there are any mismatched output-to-input mappings, issues in the underlying setup of any custom steps, or problems with endpoints.

  1. Inject an event that targets your form, either through the Messaging tab, an inbound integration or the xMatters REST API.
  2. Perform whatever action triggers your flow. For example, select the response (Responses trigger) or add a comment (Event Comments trigger).
  3. Use the Activity panel to track down any issues.