> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wirespeed.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Halo ITSM

> Integration mit Halo ITSM, um Tickets aus Wirespeed-Fällen und -Detektionen automatisch zu erstellen und zu verwalten

## Voraussetzungen

In Halo ITSM benötigen Sie eine API-Anwendung mit dem Grant-Typ **Client Credentials**. So erstellen Sie eine:

1. Melden Sie sich bei Ihrer **Halo ITSM**-Instanz an
2. Gehen Sie zu **Configuration** > **Integrations** > **HaloPSA API** > **View Applications**
3. Klicken Sie auf **New**, um eine Anwendung zu erstellen
4. Setzen Sie **Authentication Method** auf `Client ID and Secret (Services)`
5. Setzen Sie **Login Type** auf **Agent** und **Agent** auf **Application Identity**
6. Wählen Sie unter **Identity Roles** die Option **IT Agent**
7. Gewähren Sie der Anwendung Zugriff auf die folgenden Scopes: `read:tickets`, `edit:tickets`, `read:customers`
8. Kopieren Sie **Client ID** und **Client Secret**
9. Speichern Sie die Anwendung

## Wirespeed mit Halo ITSM verbinden

1. Melden Sie sich bei Wirespeed an und gehen Sie zu Integrationen > [**Integration hinzufügen**](https://app.wirespeed.co/settings/integrations?tab=browse)
2. Wählen Sie **Halo ITSM** und klicken Sie auf **Integrieren**
3. Füllen Sie die folgenden Felder aus:
   * **URL der Halo-Instanz** – die Basis-URL Ihrer Halo-Instanz (z. B. `https://yourcompany.halopsa.com`)
   * **Client-ID** – aus der oben erstellten API-Anwendung
   * **Geheimer Clientschlüssel** – aus der oben erstellten API-Anwendung
4. Klicken Sie auf **Speichern**

Wirespeed prüft die Zugangsdaten, indem der Zugriff auf Teams, Ticket Types und Categories getestet wird. Schlägt eine Prüfung fehl, wird die Integration nicht aktiviert – prüfen Sie in diesem Fall Zugangsdaten und Scopes erneut.

## Ticketverhalten konfigurieren

Klicken Sie nach dem Aktivieren der Integration auf **Konfigurieren**, um die Einstellungen für die Ticketerstellung festzulegen:

| Einstellung | Beschreibung |
| - | - |
| **Kunde** | Halo-Kunde, der mit den Tickets verknüpft wird (optional) |
| **Team** | Halo-Team, dem Tickets zugewiesen werden |
| **Kategorie** | Incident-Kategorie, die allen Tickets zugewiesen wird (erforderlich). |
| **Tickets für eigenständige Detektionen erstellen** | Wenn aktiviert, werden Tickets für Detektionen erstellt, die geschlossen sind und zu keinem Fall gehören |
| **Titelvorlage für Fall-Tickets** | Titelvorlage für Fall-Tickets. Unterstützt Variablen wie `` `sid` `` und `` `title` `` |
| **Titelvorlage für Detektions-Tickets** | Titelvorlage für Detektions-Tickets. Unterstützt Variablen wie `` `sid` `` und `` `title` `` |

Klicken Sie anschließend auf **Speichern**.

## Webhook hinzufügen

Damit Wirespeed Fälle automatisch schließt, wenn ein Ticket in Halo gelöst wird, und Notizen zurücksynchronisiert, richten Sie einen Webhook ein:

1. Melden Sie sich bei Wirespeed an und gehen Sie zu [**Integrationen**](https://app.wirespeed.co/settings/integrations) > wählen Sie Ihre Halo-ITSM-Integration > **Konfigurieren**

2. Kopieren Sie die **Webhook-URL** und das **Webhook-Secret**

3. Melden Sie sich bei Ihrer **Halo ITSM**-Instanz an

4. Gehen Sie zu **Configuration** > **Integrations** > **Webhooks**

5. Klicken Sie auf **New**, um einen Webhook zu erstellen

6. Fügen Sie die **Webhook-URL** aus Schritt 2 ein

7. Setzen Sie **Authentication** auf **Sign Request Body with a Secret Key**

8. Setzen Sie **Secret** auf das **Webhook-Secret** aus Schritt 2

9. Konfigurieren Sie als Namen des Signatur-Headers `x-signature` und setzen Sie **Signing Algorithm** auf `SHA-256`

   > [!WARNING]
   >
   > Das Dropdown Signing Algorithm in Halo bietet auch `RSA-SHA256` und andere RSA-Varianten an. Wählen Sie **keine** davon aus – Wirespeed kann RSA-signierte Anfragen nicht prüfen, und jeder Webhook-Aufruf schlägt mit einem `400`-Fehler fehl, bis der Algorithmus wieder auf `SHA-256` gesetzt wird.

10. Fügen Sie der Signatur die folgenden **Request Headers** in genau dieser Reihenfolge hinzu:

    1. `content-length`
    2. `content-type`
    3. `host`
    4. `x-halo-date`

    Alle vier Header sind erforderlich. Fehlt einer davon, ist der HMAC ungültig und Wirespeed gibt `400` zurück.

    Das Feld **Version** in Halo wird von Wirespeed ignoriert. Behalten Sie den Standardwert bei; er hat keinen Einfluss auf die Signaturprüfung.

11. Fügen Sie unter **Events** das Ereignis **Ticket Updated by Agent** hinzu. Legen Sie unter **Edit criteria** Folgendes fest:
    * **Rule Type:** Contains (comma separated value)
    * **Summary:** `Wirespeed:, WSPD-, DTN-`

12. Fügen Sie **Ticket Updated by User** mit denselben Werten unter **Edit criteria** hinzu

13. Speichern Sie den Webhook

> [!NOTE]
>
> Das Webhook-Secret ist erforderlich. Wirespeed prüft den Header `x-signature` per HMAC-SHA256 mit dem **Webhook-Secret** aus Schritt 2 als Schlüssel. Halo bezieht `x-halo-date` in diese Signatur ein; Wirespeed lehnt außerdem Callbacks ab, deren `x-halo-date` fehlt, nicht auswertbar ist oder mehr als **5 Minuten** von der Serveruhr abweicht.
>
> Halo sollte die Signatur aus dieser kanonischen Zeichenfolge berechnen:
>
> ```text theme={null}
> content-length: <content-length>
> content-type: <content-type>
> host: <host>
> x-halo-date: <x-halo-date>
> <raw request body>
> ```
>
> Der resultierende HMAC-SHA256-Digest sollte base64-kodiert und im Header `x-signature` gesendet werden.

## Funktionsweise

* Wenn ein Wirespeed-Fall oder eine Detektion ausgelöst wird, wird in Halo ein Ticket als **Incident** erstellt; die Priorität wird aus dem Schweregrad abgeleitet (Kritisch → P1, Hoch → P2, Mittel → P3, Niedrig/Informativ → P4).
* Wenn ein Ticket in Halo geschlossen wird (Status-ID 9), wird der zugehörige Wirespeed-Fall automatisch geschlossen.
* Notizen, die einem Ticket in Halo hinzugefügt werden, werden in die Zeitleiste des Wirespeed-Falls zurücksynchronisiert.
* Kommentare zu einem Wirespeed-Fall oder einer seiner Detektionen werden im verknüpften Halo-Ticket veröffentlicht.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.