GitLab Webhooks: Einrichtung, Prüfung und Fehler

GitLab Webhooks

GitLab Webhooks: Einrichtung, Signing Token und Auto-Deaktivierung | We.Inc

GitLab-Webhook für Projekt oder Gruppe anlegen, Trigger wählen, webhook-signature oder X-Gitlab-Token prüfen und sehen, wann GitLab einen Hook deaktiviert.

Ein GitLab-Webhook sendet einen HTTP POST an deine URL, wenn in einem Projekt oder einer Gruppe etwas passiert, etwa ein Push, ein Merge Request oder ein neuer Kommentar. Du legst ihn unter Einstellungen, Webhooks an. Schütze ihn mit einem Signing Token und antworte schnell mit 200, denn GitLab deaktiviert Hooks, die ständig fehlschlagen.

Fakten zu GitLab-Webhooks (docs.gitlab.com, Oktober 2026)

Über Webhooks teilt GitLab deiner Website, deinem Deploy-Skript oder deinem Team-Chat mit, dass sich etwas geändert hat, ohne dass dein Code immer wieder nachfragen muss. Die Einrichtung dauert eine Minute. Ärger machen später zwei Dinge: nachzuweisen, dass ein Request wirklich von GitLab kommt, und zu verhindern, dass der Hook abgeschaltet wird. Die Prüfung unten erzeugt eine Signing-Token-Signatur in deinem Browser, damit du deinen Empfänger testen kannst.

Häufige Fragen

Was ist X-Gitlab-Token?

Das ist der ältere geheime Token. Wenn du einen setzt, sendet GitLab ihn als Klartext im Header X-Gitlab-Token und dein Server vergleicht ihn. Die GitLab-Doku empfiehlt für neue Webhooks inzwischen stattdessen einen Signing Token.

Warum wurde mein GitLab-Webhook deaktiviert?

GitLab deaktiviert einen Hook nach vier aufeinanderfolgenden Fehlern, also 4xx- oder 5xx-Antworten, Verbindungs-Timeouts oder anderen HTTP-Fehlern. Zuerst ist er eine Minute aus, mit jedem weiteren Fehler länger bis zu 24 Stunden, und nach 40 in Folge dauerhaft.

Wie erkenne ich, welches Ereignis angekommen ist?

Lies den Header X-Gitlab-Event. Sein Wert ist der Ereignistyp gefolgt von Hook, zum Beispiel Push Hook, Merge Request Hook, Note Hook für Kommentare oder Pipeline Hook.

Kann ich einen Webhook für eine ganze Gruppe anlegen?

Ja, in den Tarifen Premium und Ultimate. Ein Gruppen-Webhook feuert bei Ereignissen in jedem Projekt der Gruppe und kann außerdem Ereignisse zu Gruppenmitgliedern, Projekten und Untergruppen empfangen.

Funktioniert der Signing Token auf selbst verwaltetem GitLab?

Laut GitLab-Doku kam er in Version 19.0 hinter einem standardmäßig aktiven Feature-Flag und wurde in 19.1 allgemein verfügbar. Ältere selbst verwaltete Versionen haben nur den geheimen Token.

So funktioniert der Signing Token

Ohne Ausfall von einem geheimen Token umsteigen

Dieser Empfänger prüft die Signing-Token-Signatur, lehnt veraltete Zeitstempel ab und fällt während der Umstellung auf den alten geheimen Token zurück.

Die Tokens kommen aus Umgebungsvariablen. Das Frischefenster von fünf Minuten ist unsere eigene Wahl, nimm, was zu dir passt.

Häufige Ereignisse und ihre X-Gitlab-Event-Werte

GitLab-Webhook-Ereignisse

Signatur-Builder für Signing Tokens

Gib einen Signing Token, die webhook-id, den webhook-timestamp und den rohen Body ein, um den webhook-signature-Wert zu erhalten, den GitLab senden würde. Alles läuft in deinem Browser.

Signing Token (beginnt mit whsec_)

Roher Request-Body

Der Token muss mit whsec_ beginnen, gefolgt von Base64-Text.

Der vorausgefüllte Token ist ein erfundenes Beispiel, kein echter Schlüssel. Mit diesen Werten lautet das Ergebnis:

Wann deaktiviert GitLab einen Hook?

Aufeinanderfolgende fehlgeschlagene Zustellungen: {n}

Aktiv: Zustellungen laufen weiter.

Vorübergehend deaktiviert: zuerst 1 Minute aus, nach jedem weiteren Fehler länger, bis zu 24 Stunden, dann automatisch wieder aktiv.

Dauerhaft deaktiviert: Er bleibt aus, bis ein Test-Request eine 2xx-Antwort bekommt.

Kostenlos starten · Keine Kreditkarte nötig

Verwandt: Ratgeber

Produkt

Für wen

Funktionen

Ressourcen

Unternehmen

Sitemap