Creazione e gestione di webhook per flussi di lavoro
I webhook sono un modo semplice per automatizzare la comunicazione tra le applicazioni inviando automaticamente i dati quando si verificano determinate azioni. In Qlik Cloud, i webhook possono attivare azioni in altre applicazioni senza intervento manuale, facilitando l'integrazione di Qlik Cloud nei flussi di lavoro e l'automazione delle attività basate sugli eventi di sistema. Ogni volta che si verifica un evento definito, viene inviata una richiesta JSON all'endpoint del webhook specificato, consegnando i dati dell'evento all'applicazione scelta.
Nozioni sui webhook
Come funzionano i webhook
Quando si verifica un evento in Qlik Cloud (ad esempio, si crea una nuova app o si elimina un utente), un webhook invia le informazioni in formato JSON a un'applicazione esterna specificata, utilizzando un richiamo HTTP. L'applicazione esterna può allora utilizzare i dati dell'evento per attivare ulteriori azioni.
Ad esempio:
-
Inviare una notifica al team dell'utente mediante Slack ogni volta che viene creata una nuova app.
-
Inviare automaticamente un'email di benvenuto quando viene aggiunto un nuovi membro del team a un tenant.
-
Aggiornare un foglio di calcolo quando un utente viene eliminato dal tenant.
Vantaggi dell'uso dei webhook
I webhook consentono l'integrazione in tempo reale con altri sistemi, eliminando la necessità di continui controlli manuali oppure di ripetitive richieste API. Ascoltando gli eventi e inviando immediatamente i dati rilevanti, i webhook riducono il lavoro inutile e consentono di creare facilmente un'automazione.
Piattaforme popolari per le integrazioni dei webhook
Per gestire e rispondere ai dati dei webhook, si possono creare servizi personalizzati o utilizzare piattaforme di terze parti come:
-
Qlik Application Automation (solo in lingua inglese)
Limiti di webhook
Per garantire prestazioni ottimali e gestire efficacemente le risorse di sistema, si applicano i seguenti limiti:
-
La cronologia di consegna dei webhook viene conservata per un periodo di 7 giorni.
-
Ogni utente può possedere un massimo di 150 webhook.
-
È possibile creare al massimo 100 webhook per ogni tenant.
Struttura della richiesta dei webhook
Quando un webhook viene attivato da un evento, invia una richiesta JSON all'endpoint specificato. La struttura di questa richiesta contiene importanti dettagli sull'evento, come il tipo di evento, il timestamp e altri metadati.
Esempio di richiesta webhook: evento di eliminazione di un'app
Ecco un esempio di richiesta JSON inviata quando un'app viene eliminata:
Richiesta URL
https://api.blendr.io/v1/widgets/F502987A-AF89-4992-8127-F28794C5A74A?X-Execution-Token=xxxxx
Intestazioni
{
"Content-Type": "application/json",
"Qlik-Signature": "446bd5e3f5b635f491d17557e4bec6ebc61b7bd2bc9cc7b612e4e",
"User-Agent": "Qlik Webhook"
}
Corpo
{
"cloudEventsVersion": "0.1",
"source": "com.qlik/engine",
"contentType": "application/json",
"eventId": "e65c1481-e8a-4be-a5ca-27dfcde077d7",
"eventTime": "2021-03-08T14:51:29Z",
"eventTypeVersion": "1.0.0",
"eventType": "com.qlik.v1.app.deleted",
"extensions": {
"ownerId": "vNRGrDZIypJzauw59BbpvkRhqbmI",
"tenantId": "oZcMPa_1PwH4FUdrh6839YHHdEJN",
"userId": "vNRGrDZIypJtcGTzauw59BbpqbmI"
},
"data": {
"attributes": {
"id": "0984fec4-aa8c-4253-b1d1-4fd4f9c78",
"name": "New App",
"createdDate": "2021-03-08T14:51:28.888Z",
"modifiedDate": "2021-03-08T14:51:29.316Z",
"owner": "auth0|b62a17c577a4abe6e807b07d18c4d82286352542d633d120100b03fb11",
"ownerId": "vNRGrDZIypJtcGTzauw59BbpvbmI",
"published": false,
"hasSectionAccess": false
}
}
}
Questo payload fornisce informazioni dettagliate sull'app eliminata, come l'ID, il nome, il proprietario e il timestamp dell'eliminazione, aiutando il sistema ricevente a elaborare l'evento. Per saperne di più sui payload dell'evento, vedere Portale Qlik Developer: eventi API.
Creazione di webhook
I webhook possono essere creati dai seguenti utenti:
-
Amministratori tenant dal centro attività Amministrazione.
-
Tutti gli utenti dell'interfaccia di Qlik Application Automation.
Per ulteriori informazioni sull'uso dei webhook con Application Automation, vedere Utilizzo dei webhook (solo in lingua inglese).
Procedere come indicato di seguito:
-
Nel centro attività Amministrazione, andare a Webhook.
-
Fare clic su Crea nuovo.
-
Inserire un nome per il webhook e, facoltativamente, aggiungere una descrizione.
-
Per l'URL (endpoint), inserire il nome di dominio completamente qualificato (FQDN) in cui il webhook invierà i dati JSON.
-
Questo URL deve utilizzare il protocollo HTTPS (esempio: https: //dominio.com). Gli indirizzi IP non possono essere utilizzati come endpoint dei webhook.
-
-
Facoltativamente, inserire un segreto per l'autenticazione del webhook.
-
Il segreto deve avere da 32 e 64 caratteri.
-
Se creato, il segreto sarà incluso come parte di un hash, aggiunto alla richiesta HTTP come qlik-signature.
-
-
In via opzionale, aggiungere intestazioni HTTP da aggiungere alla richiesta.
-
In Eventi, scegliere gli eventi di sistema che attiveranno il webhook. Gli eventi disponibili includono:
-
Eventi per l'app: creazione, eliminazione, esportazione, aggiornamento dei dati, pubblicazione, ricaricamento,
-
Eventi per l'utente: creazione, eliminazione.
-
-
Fare clic su Crea.
Gestione dei webhook
Ordinamento e ricerca di webhook
Per ordinare e cercare webhook nella tabella:
-
Fare clic su nella parte superiore di una colonna per modificare l'ordinamento.
-
Fare clic su nella parte superiore di una colonna per cercare un webhook. Il filtro di ricerca funziona per le corrispondenze totali e parziali.
Disattivazione di webhook
Procedere come indicato di seguito:
-
Nel centro attività Amministrazione, andare a Webhook.
-
Fare clic su accanto al webhook.
-
Per attivare il webhook, selezionare Abilita webhook.
-
Per disattivare il webhook, selezionare Disabilita webhook.
I webhook creati di recente vengono abilitati per impostazione predefinita.
Modifica di webhook
Procedere come indicato di seguito:
-
Nel centro attività Amministrazione, andare a Webhook.
-
Per il webhook che si desidera modificare, fare clic su .
-
Selezionare Modifica.
-
Effettuare le proprie modifiche e fare clic su Salva.
Eliminazione di webhook
Procedere come indicato di seguito:
-
Nel centro attività Amministrazione, andare a Webhook.
-
Selezionare il webhook da eliminare.
-
Fare clic su Elimina.
-
Confermare l'eliminazione.
Visualizzazione della cronologia dei webhook
La cronologia degli eventi per i webhook viene conservata per un periodo di 7 giorni.
Procedere come indicato di seguito:
-
Nel centro attività Amministrazione, andare a Webhook.
-
Fare clic su accanto a un webhook per espandere la relativa cronologia degli eventi.
-
Per inviare di nuovo manualmente la consegna di un evento, fare clic su nella riga dell'evento.
-
Per visualizzare il payload di risposta all'evento, fare clic su nella riga dell'evento.
Il payload mostra dettagli come ID app, nome e timestamp, utili per il debug o la verifica di eventi passati.