Passa al contenuto principale

Webhook

I webhook notificano un sistema esterno quando un'esportazione pianificata è completata. Sono forniti dall'app Exportelier Automation e restano disattivati finché un amministratore del sito non attiva la consegna via webhook.

Tipi di webhook disponibili

  • Webhook in entrata di Slack — pubblica il riepilogo dell'esportazione come un normale messaggio del canale.
  • Webhook del flusso di lavoro Microsoft Teams — pubblica una Adaptive Card 1.2 tramite un flusso di lavoro Teams creato dal cliente.

Configurazione dei webhook Le impostazioni degli endpoint webhook con tipo, riferimento mascherato e stato.

Un webhook crea collegamenti — non carica il file su Slack o Teams

Un webhook non allega mai il file PDF, DOCX o Markdown generato al messaggio del provider. Per impostazione predefinita, un'esportazione pianificata di un solo elemento contiene un link al relativo elemento Jira. Se la stessa esecuzione include anche una destinazione allegato Jira riuscita, il messaggio contiene un link all'allegato generato. Entrambi i link restano in Jira e richiedono al destinatario le relative autorizzazioni Jira.

Che aspetto ha il messaggio

Entrambi i canali inviano la stessa riga di riepilogo:

Exportelier export "Weekly sprint report": sprint-report-2026-09-01.pdf (14 issues)
  • Slack riceve il riepilogo seguito dai link cliccabili Apri elemento Jira e Apri documento, quando disponibili.
  • Teams riceve una Adaptive Card 1.2 con intestazione Exportelier export: <nome della pianificazione>, la stessa riga di riepilogo e le corrispondenti azioni OpenUrl, quando disponibili.

Il link all'elemento Jira viene omesso nelle esportazioni con più elementi. Il link al documento viene omesso se prima non riesce una destinazione allegato Jira. Il messaggio Prova dell'endpoint non include link, perché non esporta né allega alcun documento.

Configurazione

Entrambi i canali seguono le stesse tre parti: attivare la consegna una volta, registrare l'endpoint e selezionarlo in una pianificazione.

1. Attivare la consegna via webhook

In Exportelier Automation apri Impostazioni → Consegna esterna e attiva Attiva la consegna via webhook. Compare una finestra di conferma: è il punto in cui un amministratore del sito accetta esplicitamente che i dati escano da Atlassian.

Finché questo interruttore è disattivato, la destinazione di consegna Webhook resta in grigio in ogni pianificazione e non viene mai inviato nulla.

2a. Registrare un webhook in entrata di Slack

Slack rilascia gli URL dei webhook in entrata tramite un'app Slack:

  1. Apri api.slack.com/apps e scegli Create New App → From scratch. Assegna un nome — ad esempio Exportelier — e seleziona il workspace di destinazione.
  2. Nella barra laterale dell'app apri Incoming Webhooks e attiva Activate Incoming Webhooks.
  3. Fai clic su Add New Webhook to Workspace, seleziona il canale che deve ricevere le notifiche e conferma con Allow.
  4. Copia la Webhook URL generata. Ha la forma https://hooks.slack.com/services/T…/B…/…. Trattala come una password: chiunque la possieda può pubblicare in quel canale.
  5. In Exportelier Automation vai su Impostazioni → Endpoint webhook, imposta Canale su Webhook in entrata di Slack, incolla l'URL in Endpoint e fai clic su Aggiungi endpoint.

Exportelier accetta soltanto URL HTTPS sull'host hooks.slack.com. I messaggi appaiono con il nome e l'icona dell'app Slack che hai creato; entrambi si modificano in Slack sotto Basic Information → Display Information.

Non un URL di trigger del Workflow Builder

Anche Slack Workflow Builder rilascia URL hooks.slack.com, ma hanno la forma https://hooks.slack.com/triggers/… e si aspettano le variabili con nome di quel flusso di lavoro anziché un campo text. Il controllo dell'host di Exportelier accetta un URL simile, ma nel canale non comparirà alcun messaggio leggibile. Usa un webhook in entrata (/services/…) di un'app Slack come descritto sopra.

2b. Registrare un webhook del flusso di lavoro Microsoft Teams

Microsoft ha ritirato i webhook dei connettori Office 365 a maggio 2026. Per questo Exportelier accetta nuovi endpoint Teams solo da Microsoft Teams Workflows.

  1. Nel canale Teams di destinazione apri Altre opzioni (…) → Workflows.
  2. Seleziona Send webhook alerts to a channel. È il modello Anyone. Se crei il flusso di lavoro da zero, scegli il trigger When a Teams webhook request is received e imposta il tipo di autenticazione su Anyone.
  3. Autentica l'account Microsoft che sarà proprietario del flusso di lavoro, seleziona team e canale e aggiungi il flusso di lavoro. Microsoft indica che questi modelli di webhook Teams non richiedono una licenza premium.
  4. Copia l'URL generato. Trattalo come una password: chiunque disponga di questo URL firmato può attivare il flusso di lavoro.
  5. In Exportelier Automation vai su Impostazioni → Endpoint webhook, imposta Canale su Webhook del flusso di lavoro Microsoft Teams, incolla l'URL in Endpoint e fai clic su Aggiungi endpoint.

Gli URL supportati usano HTTPS su un sottodominio di environment.api.powerplatform.com o logic.azure.com. Exportelier non invia un'intestazione OAuth; è l'URL segreto Anyone ad autorizzare la richiesta.

I messaggi appaiono con l'identità predefinita del bot Workflows di Microsoft. Microsoft non supporta un nome o un'icona personalizzati per questi post via webhook.

Connettori Office 365 ritirati

Gli endpoint *.webhook.office.com memorizzati restano visibili come Azione richiesta affinché le pianificazioni non vengano modificate silenziosamente. Crea e prova un nuovo endpoint di flusso di lavoro, aggiorna tutte le pianificazioni interessate e solo allora elimina l'endpoint legacy. Gli endpoint legacy non sono disponibili per nuove pianificazioni e falliscono localmente prima che venga inviata qualsiasi richiesta.

2c. Verificare l'endpoint

Ogni endpoint registrato ha un pulsante Prova. Pubblica un messaggio fisso —

Exportelier test message: this webhook endpoint is configured correctly. No export was generated.

— attraverso lo stesso controllo di uscita, lo stesso segreto memorizzato e lo stesso generatore di payload usato da un'esecuzione pianificata: una prova riuscita dimostra quindi il percorso di consegna e non solo il formato dell'URL. In caso di successo la riga mostra Consegnato; in caso di errore il motivo compare sopra la tabella e corrisponde all'elenco di risoluzione dei problemi più sotto.

Il pulsante è disattivato finché la consegna via webhook è spenta, perché non verrebbe inviato nulla.

3. Selezionare l'endpoint in una pianificazione

Apri Pianificazioni, modifica la pianificazione che deve notificare e aggiungi la destinazione di consegna Webhook. Scegli il Canale e poi l'Endpoint memorizzato: gli endpoint sono elencati con il loro riferimento mascherato, perché l'URL stesso non viene mai restituito al browser dopo il salvataggio.

Le due opzioni di collegamento sono attive per impostazione predefinita e possono essere disattivate separatamente. Una pianificazione può combinare più destinazioni: la stessa esecuzione può allegare il documento a un elemento Jira e pubblicare una notifica webhook. Exportelier completa la destinazione allegato prima di un webhook che richiede il link al documento, indipendentemente dall'ordine visualizzato.

Risoluzione dei problemi

Non arriva nulla subito. Exportelier Automation controlla le pianificazioni in scadenza ogni cinque minuti, quindi una consegna può arrivare fino a cinque minuti dopo l'orario configurato. Per verificare un endpoint senza attendere un'esecuzione, usa il suo pulsante Prova in Impostazioni → Endpoint webhook: riporta gli stessi messaggi di un'esecuzione pianificata.

Controlla l'esito dell'ultima esecuzione. L'elenco Pianificazioni ha una colonna Ultima esecuzione con stato Riuscita, Parzialmente riuscita o Esecuzione non riuscita, e mostra il motivo di un errore. Un'esecuzione che ha generato il documento ma non è riuscita a pubblicare il webhook viene segnalata come Parzialmente riuscita.

MessaggioSignificato
La consegna via webhook è stata disattivata da un amministratore.L'interruttore Attiva la consegna via webhook in Impostazioni → Consegna esterna è disattivato.
L'endpoint webhook non è configurato.L'endpoint memorizzato è stato revocato in Exportelier mentre una pianificazione lo referenziava ancora. Registralo di nuovo e riselezionalo nella pianificazione.
Il segreto memorizzato non corrisponde a questo canale webhook.Il canale della pianificazione è stato cambiato con l'altro provider senza scegliere un endpoint corrispondente.
L'endpoint webhook ha rifiutato la richiesta.Il provider ha risposto con un errore — tipicamente un webhook revocato in Slack o un flusso di lavoro Teams disattivato o eliminato. Crea un nuovo endpoint lato provider.
Un webhook Slack deve usare un URL https hooks.slack.com.L'URL è stato rifiutato al salvataggio. Copialo di nuovo dalla pagina Incoming Webhooks dell'app Slack.
Questo connettore Microsoft Teams non è più supportato.Un connettore *.webhook.office.com ritirato. Sostituiscilo con un endpoint di flusso di lavoro come descritto sopra.

Nel canale non arriva nulla ma l'esecuzione risulta riuscita. Slack e Teams rispondono entrambi 200 prima che il messaggio venga renderizzato. Verifica che il webhook sia ancora associato al canale previsto — in Slack sotto Incoming Webhooks, in Teams sotto Workflows.

Affidabilità e sicurezza

  • La consegna via webhook è disattivata per impostazione predefinita e richiede una conferma esplicita dell'amministratore.
  • Gli URL degli endpoint sono archiviati come secret Forge cifrati, non vengono mai restituiti al browser dopo il salvataggio e sono mostrati solo come riferimento mascherato. Non devono finire in ticket, screenshot o log.
  • Le opzioni di collegamento attive inviano al provider esterno l'indirizzo del sito Jira e, per le esportazioni di un solo elemento, la chiave dell'elemento. Gli URL generati non contengono credenziali né parametri di query firmati e richiedono comunque autenticazione e autorizzazioni Jira.
  • Le richieste scadono dopo 10 secondi e vengono ritentate una sola volta, solo per errori di rete, HTTP 429 o 5xx. Una risposta 4xx è definitiva e non viene ritentata.
  • Una risposta positiva del provider, inclusi HTTP 200 o 202, marca la destinazione come consegnata.

Vedi Architettura di sicurezza per capire come è isolato il traffico in uscita e la pagina API per l'attivazione programmatica.