Flow Designer has a HaloITSM Incidents trigger and built-in HaloITSM steps to help you integrate Halo into your alert management and incident response flows.

HaloITSM Steps

The following steps are available:

  • Create Ticket: create a new ticket in Halo, populating it with information from the alert or any previous steps in the flow.
  • Update Ticket : update an existing Halo ticket as new information becomes available.
  • Add Action: add the outcome of an action to an existing Halo ticket.

Create Ticket

Use the Create Ticket step to automatically create a new ticket in Halo. Map outputs from previous steps to the inputs; at runtime, the values in the inputs are used to fill in the incident record.

Update Ticket

Use the Update Ticket step to automatically update information on an existing Halo ticket. Map outputs from previous steps to the inputs to create the update. Any inputs excluded from the request retain their current values.

Add Action

Use the Add Action step to add an action and outcome to an existing Halo ticket.

HaloITSM Incidents trigger

The built-in HaloITSM Incidents trigger initiates a flow when it receives a request from a HaloITSM webhook.

Add the HaloITSM Incidents trigger to the canvas

  1. Go to the Triggers tab in the palette, expand the App Triggers section, and drag the trigger onto the canvas.
  2. Double-click the trigger (or click the pencil icon).
  3. Set the authenticating user, and then copy the URL and Configuration Payload — you'll use these to set up the webhook in HaloITSM. Alternatively, you can create an integration user to use as the authenticating user.

  1. Click the Flood Control tab to edit the trigger's default flood control settings. For more information about these settings, see Trigger Flood Control.
  2. Click Done.
  3. On the flow canvas, connect the steps you want to run when xMatters receives a request to that URL.

You're now ready to configure HaloITSM to target the trigger.

Configure URL

To have HaloITSM send alerts to the flow trigger, you need to configure two webhooks and set them to use the trigger URLs. One webhook is for Halo tickets with an assigned agent, and the other is for tickets without an assigned agent.

First let's create a webhook for Halo tickets with assigned agents.

  1. In Halo, go to Configuration > Integrations > Webhooks.

  2. In the top-right corner, click New.

  3. On the New Webhook window, give the webhook a unique name. For example, "xMatters - Assigned" or "xMatters - Unassigned".
  4. In the Payload URL field, paste the trigger URL.
    • Add the target names of any recipients you want to notify when the alert fires. You can either add them to the end of the URL, or in the Parameters tab.
      • For URL authentication, use an ampersand to attach recipients. For example, if you want to notify Emma Pearson and the on-call members in the group responsible for the Antares service, you'd add &recipients=epearson,antares to the URL.
      • For other authentication types, use a question mark to attach recipients. For example, if you want to notify Barry Gull and the on-call members in the group responsible for the Cassiopeia service, you'd add ?recipients=bgull,cassiopeia to the URL.
      • You must URL-encode any special characters or spaces in the target names.

  5. Ensure the Enabled checkbox is selected and the Use a custom payload is deselected.

  6. Use the Events section to add any business rules for the webhook. A business rule is logic that determines when the webhook is used. The following steps describe creating a business rule for when a new ticket is logged in Halo.

  7. In the Events section click Add.
  8. On the New Event window, expand the Event drop-down menu and select New Ticket Logged.

  9. Click Add to add the following criteria to the event: 
    • For tickets with assigned agents:
      • Field: Agent
      • Rule Type: Is equal to
      • Value: Name of the assigned agent.
    • For tickets unassigned to agents: 
      • Field: Agent
      • Rule Type: Is equal to
      • Value: Unassigned
  10. Click Save to save the Event and return to the New Webhook window.
  11. Click Save.
  12. Repeat steps 2 - 10 to create a webhook for the Unassigned Agent.