Crear flujos de trabajo más avanzados mediante webhooks

¿Quién puede usar esta función?
  • Todos los miembros (por defecto)
  • Los planes Estándar, Plus y Enterprise Grid

Los flujos de trabajo son procesos o tareas automatizadas de varios pasos que pueden ejecutarse directamente en Slack o conectarse con otras herramientas y servicios. Los flujos de trabajo en Slack pueden ser tan sencillos o complejos como quieras y normalmente no exigen escribir ningún código.

Si eres desarrollador o tienes experiencia con códigos, es posible que quieras crear un flujo de trabajo desencadenado por un evento en un servicio externo (como una herramienta interna que usa tu empresa) con un webhook.

Lo que necesitarás para comenzar

  • Familiaridad con el envío de solicitudes HTTP usando la línea de comando u otra herramienta.
  • Entender los webhooks entrantes. Si necesitas ayuda, lee la documentación sobre la API de Slack o pídele ayuda a un desarrollador de tu equipo.

Aprenderás lo siguiente:

  • Cómo configurar un webhook para desencadenar un flujo de trabajo en Slack.
  • Cómo crear variables personalizadas y usarlas en los pasos del flujo de trabajo.
  • Cómo probar tu flujo de trabajo antes de publicarlo.

Nota: Los propietarios y administradores pueden restringir el acceso a crear flujos de trabajo a través de webhooks. Si no ves esta opción en el Generador de flujos de trabajo, ponte en contacto con un propietario o administrador para pedirle ayuda.

Consejo: Si deseas un repaso sobre cómo configurar un flujo de trabajo y elegir un desencadenante, visita Cómo configurar un flujo de trabajo en Slack.


Configuración del flujo de trabajo

Conceptos básicos del flujo de trabajo de webhook

En Slack, todos los flujos de trabajo se inician en respuesta a un desencadenante. Para desencadenar un flujo de trabajo mediante un webhook, debes configurar el webhook para iniciar tu flujo de trabajo en Slack cuando en otro servicio se produzca un evento que especifiques. Por ejemplo, puedes configurar un flujo de trabajo que publique un mensaje en Slack cuando haya un problema con tu sitio web o servicio y se haya creado una incidencia para comprender y resolver dichos problemas.

Cómo configurar tu webhook

El servicio externo que elijas para crear y configurar tu webhook debe brindarte la capacidad de realizar una solicitud HTTP POST a Slack cuando ocurran ciertos eventos. Slack generará una solicitud URL única para tu flujo de trabajo cuando la publiques y podrás configurar tu webhook para transmitir información a Slack a través del cuerpo de la solicitud HTTP. Se puede hacer referencia a cualquier dato que tu webhook envíe a Slack en pasos posteriores del flujo de trabajo al crear variables.

Consejo: Si no sabes bien cómo configurar tu webhook, te recomendamos que le pidas ayuda a un desarrollador de tu equipo o que consultes cualquier documento de apoyo que te haya entregado el servicio que uses, como Postman o Zapier.

Cómo crear variables personalizadas

Puedes agregar hasta 20 variables para transmitir datos de otro servicio a Slack e incluir información específica de Slack como los nombres de Slack o las direcciones de correo electrónico en los pasos que agregues a tu flujo de trabajo.

Para crear variables personalizadas, puedes agregar pares de valores clave al Generador de flujos de trabajo como una variable basada en texto. Una vez que agregues una variable, verás una vista previa del cuerpo del HTTP para que puedas asegurarte de que los valores coincidan con las salidas JSON en el otro servicio que estés conectando a Slack a través de tu webhook. Ten en cuenta que actualmente no es posible utilizar estructuras JSON anidadas en variables de flujo de trabajo.

En el ejemplo anterior, si no se enviaron el usuario, la severidad ni la descripción_incidencia con tu solicitud de webhook, el flujo de trabajo podría fallar. 

Incident_webhook_workflow.png

Consejo: Si necesitas agregar, quitar o modificar variables en cualquier momento, abre tu flujo de trabajo en el Generador de flujos de trabajo. Después haz clic en Editar junto a Webhook para realizar los cambios. También deberás asegurarte de que cualquier cambio en las variables se refleje en el servicio externo desde el que se envía tu solicitud de webhook.

Obtén tu URL de solicitud web

Cuando publiques tu flujo de trabajo, Slack generará una URL de solicitud única que puedes agregar a tu webhook para asegurarte de que envíe la PUBLICACIÓN que configuraste al canal correcto en Slack. Las URL de solicitud comienzan con https://hooks.slack.com/workflows y las sigue una cadena aleatoria de caracteres.

Asegúrate de mantener tu URL de solicitud segura, ya que cualquier persona que tenga el enlace podrá desencadenar tu flujo de trabajo.

Nota: Los flujos de trabajo de webhook están limitados a una solicitud por segundo. Obtén más información sobre límites de frecuencia en el sitio de la API de Slack.


Pon en práctica lo que aprendiste

Agregar pasos

Una vez que hayas configurado tu webhook y creado las variables que te gustaría usar, estarás listo para agregar pasos a tu flujo de trabajo

  1. Abre tu flujo de trabajo en el Generador de flujos de trabajo. 
  2. Haz clic en Agregar paso
  3. Elige el tipo de paso que desees agregar, luego sigue las indicaciones para personalizar el paso.


Cómo probar tu flujo de trabajo

Antes de publicar tu flujo de trabajo en un canal que los miembros de tu espacio de trabajo estén usando de forma activa, puedes configurar el primer paso para publicar en un canal de prueba.

  1. Envía una PUBLICACIÓN a la solicitud URL de tu flujo de trabajo y sigue los pasos para asegurarte de que todo funcione como corresponde.
  2. Regresa al Generador de flujos de trabajo y actualiza el primer paso de tu flujo de trabajo para publicar en tu canal preferido, luego publica los cambios.


Vuelve a generar una URL de webhook

Si la URL del webhook queda expuesta o debes cambiarla por algún motivo, sigue estos pasos: 

  1. Abre el Generador de flujos de trabajo y selecciona tu flujo de trabajo de la lista.
  2. Haz clic en Editar junto a Webhook.
  3. Selecciona Volver a generar URL y guarda los cambios.

Nota: Cuando vuelves a generar una URL de webhook, la conexión entre tu flujo de trabajo de Slack y el otro servicio se interrumpirá. Actualiza el otro servicio con tu URL nueva para que todo funcione a la perfección.