Webhook GitLab: Configurazione, Verifica ed Errori

Webhook GitLab

Webhook GitLab: Configurazione, Signing Token e Disattivazione | We.Inc

Aggiungi un webhook GitLab di progetto o di gruppo, scegli i trigger, verifica l'header webhook-signature o X-Gitlab-Token e scopri quando GitLab disattiva un hook che fallisce.

Un webhook GitLab invia una richiesta HTTP POST al tuo URL quando avviene un evento in un progetto o in un gruppo, come un push, una merge request o un nuovo commento. Aggiungilo da Impostazioni, Webhook. Proteggilo con un signing token e rispondi subito con 200, perché GitLab disattiva gli hook che continuano a fallire.

Dati sui webhook GitLab (docs.gitlab.com, ottobre 2026)

I webhook sono il modo in cui GitLab avvisa il tuo sito, lo script di deploy o la chat del team che qualcosa è cambiato, senza che il tuo codice debba chiederlo in continuazione. La configurazione richiede un minuto; le parti che creano problemi in seguito sono dimostrare che una richiesta arriva davvero da GitLab ed evitare che l'hook venga disattivato. Lo strumento qui sotto calcola la firma del signing token nel tuo browser, così puoi testare il tuo ricevitore.

Domande frequenti

Cos'è X-Gitlab-Token?

È il vecchio secret token. Quando ne imposti uno, GitLab lo invia in chiaro nell'header X-Gitlab-Token e il tuo server lo confronta. La documentazione di GitLab ora raccomanda invece un signing token per i nuovi webhook.

Perché il mio webhook GitLab è stato disattivato?

GitLab disattiva un hook dopo quattro errori consecutivi, cioè risposte 4xx o 5xx, timeout di connessione o altri errori HTTP. Prima resta spento per un minuto, poi più a lungo a ogni errore successivo fino a 24 ore, e in modo permanente dopo 40 di fila.

Come capisco quale evento è arrivato?

Leggi l'header X-Gitlab-Event. Il suo valore è il tipo di evento seguito da Hook, per esempio Push Hook, Merge Request Hook, Note Hook per i commenti o Pipeline Hook.

Posso aggiungere un webhook a un intero gruppo?

Sì, sui piani Premium e Ultimate. Un webhook di gruppo scatta per gli eventi di ogni progetto del gruppo, e può ricevere anche eventi su membri del gruppo, progetti e sottogruppi.

Il signing token funziona su GitLab self-managed?

La documentazione di GitLab dice che è arrivato nella versione 19.0 dietro un feature flag attivo di default ed è diventato disponibile per tutti nella 19.1. Le versioni self-managed più vecchie hanno solo il secret token.

Come funziona il signing token

Passare dal secret token senza interruzioni

Questo ricevitore controlla la firma del signing token, rifiuta i timestamp scaduti e ripiega sul vecchio secret token durante la migrazione.

I token arrivano dalle variabili d'ambiente. La finestra di validità di cinque minuti è una nostra scelta; scegli quella che fa per te.

Eventi comuni e i loro valori X-Gitlab-Event

Eventi dei webhook GitLab

Generatore di firma del signing token

Inserisci un signing token, il webhook-id, il webhook-timestamp e il corpo grezzo per ottenere il valore webhook-signature che GitLab invierebbe. Tutto gira nel tuo browser.

Signing token (inizia con whsec_)

Corpo grezzo della richiesta

Il token deve iniziare con whsec_ seguito da testo base64.

Il token precompilato è un esempio inventato, non una chiave reale. Con questi valori il risultato è:

Quando GitLab disattiva un hook?

Consegne fallite consecutive: {n}

Attivo: le consegne continuano.

Disattivato temporaneamente: spento per 1 minuto all'inizio, più a lungo dopo ogni errore successivo, fino a 24 ore, poi riattivato automaticamente.

Disattivato in modo permanente: resta spento finché una richiesta di test non riceve una risposta 2xx.

Inizia gratis · Nessuna carta di credito richiesta

Correlati: Guide

Prodotto

Per chi è

Funzionalità

Risorse

Azienda

Mappa del sito