Flow Designer 101
Flow Designer lets you build multi-step processes triggered by system activities simply by dragging, dropping, and connecting steps.
In the overview below, we go over the parts of Flow Designer and the pieces you can use to create your flows. That might be all you need to get started if you're the type who likes to dump out the blocks and start building.
If you're the type who learns by example, we walk through designing a flow from concept to test, and all the steps in-between. In that topic, we go into how to use the various types of steps — triggers, built-in apps and custom steps, and tools — to build a flow. In other topics in this section, we delve deeper into troubleshooting runtime issues, how to use the ready-made apps, and creating your own custom steps.
Before you start building
With the drag-and-drop, drag-and-connect interface, it's easy to get started, but there are a couple of things you need before you can build flows and put them to work.
If you've read the overview of how to get integrated, you need steps 1 and 2 — step 3 is Flow Designer. But to summarize...
- First you need a communication plan with a form you want actions to flow from. You can use an existing communication plan or create a new one from scratch. If you want to build flows based on an existing built-in integration, you first need to convert your built-in integration to a communication plan.
- Next, you need a way to target that form. Targeting the form creates the event which triggers the flow which runs the steps which feeds the other tools in you toolchain. You can target the form manually from a message in the Messaging tab or, if you want to truly unlock the power of an automated incident management workflow, by targeting an inbound integration.
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.
- Click the Developer tab.
- If it's not already selected, click Communication Plans under Communication Plan Builder on the left.
- Click Edit beside the plan you want to build a flow for and select Flows.
- Click the name of the form you want to create or edit flows for (or Create a flow if the form doesn't have any flows yet).
- If you're already in the communication plan, click the Flows tab.
- Click the name of the form you want to create or edit flows for (or Create a flow if the form doesn't have any flows yet).
Get to know Flow Designer
Flow Designer has three main areas — the large, central canvas where you build your flows, the palette on the right that holds the building blocks you can use in your flows, and the Activity panel that lets you check the runtime state of the flows.
The palette is where you find the steps and tools you can use to build flows. The different tabs in the palette organize the steps into categories.
- Triggers: Triggers are special steps that kick off a flow based on a system activity, such as an event status change, a specific response, or an added comment. Connect other steps to the trigger to have them executed when the trigger occurs.
- Apps: Apps are steps we've created for the most common actions in popular applications to help you create flows quickly. Simply drag, connect, and configure some basic settings, and you're ready to get started. Keep an eye out on the Apps panel as we add more ready-made steps for other applications.
- Tools: Tools are, well, tools that let you create richer and more nuanced flows. For example, you can use a switch step to split a flow onto different paths (for example, use path A if the event is customer impacting but use path B if it's not). We'll be adding additional tools to the Tools panel as they become available.
- Custom: Custom steps are steps you or someone in your organization has added to the communication plan. Maybe you want to trigger a flashing light to go off when a ticket is created — since we don't have a built-in step for your proprietary flashing light software, you need to create that yourself. Using a custom step in your flow is the same as any other step: drag it onto the canvas, connect it, and configure any required inputs.
There are also some existing components that you'll use to build out your flows.
- Endpoints: Endpoints define which application you want to send a request to (like ServiceNow or Slack). You can add endpoints as you add steps in your flow or use endpoints that you've already configured in xMatters.
- Constants: Constants represent unchanging bits of information that can be used as inputs in your steps. For example, you could use a constant to represent a time zone when posting dates to help desk ticket, or as the "from" name when posting to a chat client. You can define the constants available using the Integration Builder.
Flows are what it's all about, linking together the tools you use every day into a single, seamless process, and the canvas is the backdrop for building your flows. Drag steps onto the canvas and connect them to automatically send information from one system to another, transforming it along the way if needed. Flows are tied to a form, so each form in a communication plan has a canvas where you can create multiple flows, one for each trigger type.
- Triggers: Each flow starts with a trigger that kicks off the rest of the flow. Find your available triggers in the first panel on the palette. (If you have existing outbound integrations for your communication plan form, they'll already be added as triggers on your canvas — you can build flows off of them to extend their current functionality.)
- Steps: Steps are the building blocks of your flows. They can be triggers, actions in systems you use every day, or tools such as switches that let you fine-tune your flow. Whether built-in apps or custom creations, steps take outputs from the event and previous steps as inputs, use and transform that information, and then pass it to steps further downstream.
- Connectors & Ports: Connectors are the lines you draw between steps to link them into a flow. You draw these lines between the output port (the little circle on the right) of one step and the input port (the circle on the left) of the next. This lets information flow from one step to the next.
- Tools: Tools let you build richer and more nuanced flows tailored to your needs; for example, you could use a switch step to have the flow take different paths based on the value of a selected property.
- Step status indicators: There are a few ways we let you know when something isn't quite right, either during configuration or while troubleshooting issues during runtime (for example, a warning badge on a step icon).
- Auto-layout: The auto-layout button lets you bring order to chaos (if you so choose) by aligning your steps into a grid. It also fits the canvas to the window if you've zoomed in.
- Mini-map: The mini-map helps you orient yourself on the canvas. If you get creative in building flows and adding steps, or you zoom in, you might end up with a canvas that doesn't fit on the screen. The mini-map not only shows you where you are as you move around the canvas, you can also drag on the mini-map to pan around the canvas.
The Activity panel
The Activity panel is the command center for identifying and troubleshooting any issues with your flows. It's where to find: details from the event that triggered the flow; the inputs and outputs that were passed from step to step; which steps completed and, if the flow stopped, where that happened and what might have gone wrong.
Drag, connect, configure
We go into details on creating a new flow in our Create a flow instructions, including the different trigger types and when you might use one over the other, how to configure switch steps, and setting up endpoints. But if you just want to jump in and start building, here are the basics — it really can be as simple as drag, connect, and configure.
Simply drag a step from the palette to add it to the canvas. Once you drop the step on the canvas, it's ready to connect to a flow.
You might want to disable the flow until you have it built. To do that, double-click the trigger and click the Enabled toggle to turn it off.
To connect two steps, draw a connector between them by dragging from the output port of one step (the little circle on the right) to the input port of the next (the little circle on the left). Once the steps are connected, outputs from the event and any previous steps in the flow are available as inputs to this step. At this point, you can do any setup that's required (you'll see a little configuration status indicator if there's something you need to do). Then you're ready to test it out.
Make sure you connect a step to a flow before you configure it. This lets you leverage the event properties and the outputs of any previous steps when setting up the inputs for this step.
Some steps are a little bit different, like Response triggers, which let you add the responses that you want to trigger flows, and switch steps where you can split the flow into multiple paths. But the basics of adding them and connecting them are the same.
Double-click a step or click the pencil icon that appears when you hover to configure the step's inputs and its endpoint (if available).
As you build and refine flows, we recommend saving as you go, since the changes you make — either configuring steps or dropping new ones in — aren't saved until you click Save.
Remember to go back and enable the trigger if you turned it off!
- Zoom in and out using the scroll wheel on your mouse, and simply drag the canvas to move it around if you want to focus on another area.
- Drag steps to move them around the canvas. To move all the steps in a flow, select them all (holding the shift key) and then drag. Or use the auto-layout button to organize everything in a nice, neat grid.
- Use the mini-map to move around the canvas: simply click and drag the mini-map box so it highlights the area you want to show on-screen.
Deleting most elements is as simple as selecting or moving your pointer over them and clicking the delete icon (the trash can) that appears. Keep in mind that this might orphan steps further down the flow and disconnect the source that they're using to populate inputs.
- Delete a step: Hover over the step and click the delete icon.
- Delete a switch step (and all its paths) or all Responses triggers: Hover over the parent element and click the delete icon to remove it and all its children.
- Delete a single path from a switch step: Click the delete icon on the corner of the path definition.
- Delete a single response option: Double-click the parent Responses trigger and click the x beside the response you want to remove. This removes it from the flow and from the form.
- Delete a connector: Select the connector and click the x that appears on the line.
There are a few visual indicators that can help to make sure you don't have any problems during runtime. If you don't see these indicators but your flow isn't doing what you expect, use the Activity panel to debug runtime issues.
|Missing configuration: When a step is missing configuration or information it's relying on, a little warning badge appears in the corner.|
|Disabled: You can enable and disable triggers (for example, you might disable a trigger if you're doing some troubleshooting or building out a new flow you don't want to fire just yet). Double-click the trigger and click the Enabled toggle to turn it on or off.|
Deprecated: In rare cases, a step might be deprecated for some reason, such as if we have a new and improved version. For example, the Notification Responses trigger for outbound integrations is marked as deprecated because we've introduced a new Responses trigger in Flow Designer that allows you to easily design flows for individual response choices without any scripting.
|Orphans: When you disconnect steps from the previous step, they're orphaned. Since all steps are orphans until you connect them, and you may do this on purpose as you're refining your workflows, we don't warn you that they are orphans, but it's good to take a quick look around to see if you have any unconnected steps.
Ready to get started?
Follow along as we walk through designing a flow for major incident management (MIM), where a sequence of automated actions are run as a result of a person selecting a single response to an alert from a monitoring tool.