Prerequisites
In Halo ITSM, you need an API application configured with the Client Credentials grant type. To create one:- Log in to your Halo ITSM instance
- Navigate to Configuration > Integrations > HaloPSA API > View Applications
- Click New to create an application
- Set Authentication Method to
Client ID and Secret (Services) - Set Login Type to Agent and set Agent to Application Identity
- Under Identity Roles, select IT Agent
- Grant the application access to the following scopes:
read:tickets,edit:tickets,read:customers - Copy the Client ID and Client Secret
- Save the application
Connect Wirespeed to Halo ITSM
- Log in to Wirespeed and navigate to Integrations > Add Integration
- Select Halo ITSM and click Integrate
- Fill in the following fields:
- Halo Instance URL — the base URL of your Halo instance (e.g.
https://yourcompany.halopsa.com) - Client ID — from the API application created above
- Client Secret — from the API application created above
- Halo Instance URL — the base URL of your Halo instance (e.g.
- Click Save
Configure Ticket Behavior
After enabling the integration, click Configure to set ticket creation preferences:
Click Save when done.
Add a Webhook
To have Wirespeed automatically close cases when a ticket is resolved in Halo and sync notes back, set up a webhook:- Log in to Wirespeed and navigate to Integrations > select your Halo ITSM integration > Configure
- Copy the Webhook URL and the Webhook Secret
- Log in to your Halo ITSM instance
- Navigate to Configuration > Integrations > Webhooks
- Click New to create a webhook
- Paste the Webhook URL from Step 2
- Set Authentication to Sign Request Body with a Secret Key
- Set the Secret to the Webhook Secret from Step 2
-
Configure the signature header name as
x-signatureand set the Signing Algorithm toSHA-256 -
Add the following Request Headers to the signature, in this exact order:
content-lengthcontent-typehostx-halo-date
400. Halo’s Version field is ignored by Wirespeed. Leave the default; it does not affect signature verification. -
Under Events, add Ticket Updated by Agent. In Edit criteria, set:
- Rule Type: Contains (comma separated value)
- Summary:
Wirespeed:, WSPD-, DTN-
- Add Ticket Updated by User with the same Edit criteria values
- Save the webhook
The webhook secret is required. Wirespeed verifies the The resulting HMAC-SHA256 digest should be base64-encoded and sent in the
x-signature header using HMAC-SHA256, keyed with the Webhook Secret from Step 2. Halo includes x-halo-date in that signature; Wirespeed also rejects callbacks whose x-halo-date is missing, unparseable, or more than 5 minutes off the server clock.Halo should compute the signature from this canonical string:x-signature header.How It Works
- When a Wirespeed case or detection triggers, a ticket is created in Halo as an Incident with priority mapped from severity (Critical → P1, High → P2, Medium → P3, Low/Info → P4).
- When a ticket is closed in Halo (status ID 9), the corresponding Wirespeed case is automatically closed.
- Notes added to a ticket in Halo are synced back to the Wirespeed case timeline.
- Comments added to a Wirespeed case or one of its detections are posted to the linked Halo ticket.

