Webhooks

Un webhook es una llamada HTTP que se activa por un evento. Puede utilizar webhooks para activar los módulos de déclencheur instantáneos. Cualquier aplicación que esté conectada a Internet y permita peticiones HTTP puede enviar webhooks a Adobe Workfront Fusion.

Requisitos de acceso

Debe tener el siguiente acceso para utilizar la funcionalidad de este artículo:

Adobe Workfront plan*
Pro o superior
Adobe Workfront licencia*
Plan, Trabajo
Adobe Workfront Fusion licencia**

Requisito de licencia actual: no se requiere licencia de Workfront Fusion.

O

Requisito de licencia heredado: Workfront Fusion para automatización e integración de trabajo

Producto

Requisito de producto actual: si tiene el plan Select o Prime Adobe Workfront, su organización debe adquirir Adobe Workfront Fusion así como Adobe Workfront para utilizar la funcionalidad descrita en este artículo. Workfront Fusion está incluido en el plan Workfront de Ultimate.

O

Requisito de productos heredados: su organización debe comprar Adobe Workfront Fusion y Adobe Workfront para utilizar la funcionalidad descrita en este artículo.

*Para saber qué plan, tipo de licencia o acceso tiene, póngase en contacto con el administrador de Workfront.

**Para obtener información sobre Adobe Workfront Fusion licencias, consulte Adobe Workfront Fusion licencias

Usar un webhook en Workfront Fusion

NOTE
Para llamar a un webhook de terceros (un webhook saliente), utilice uno de los módulos HTTP. Para obtener más información, consulte Módulos HTTP.

Para usar un webhook para conectar una aplicación a Workfront Fusion:

  1. Agregue el módulo de déclencheur instantáneo Webhooks >Webhook personalizado a su escenario.

  2. Haga clic en Agregar junto al campo Webhook e introduzca un nombre para el nuevo webhook.

  3. (Opcional) Haga clic en Configuración avanzada.

  4. En el campo Restricciones de IP, escriba una lista separada por comas de las direcciones IP desde las que el módulo puede aceptar datos.

  5. Haga clic en Guardar

Después de crear un gancho web, aparece una dirección URL única. Dirección a la que el webhook envía los datos. Workfront Fusion valida los datos enviados a esta dirección y los pasa para su procesamiento en el escenario.

NOTE
Una vez creado un webhook, puede utilizarlo en más de un escenario a la vez.

Configuración de la estructura de datos del gancho web configure-the-webhook-s-data-structure

Para reconocer la estructura de datos de la carga útil entrante, Workfront Fusion analiza los datos de ejemplo que envía a la dirección mostrada. Puede proporcionar los datos de ejemplo realizando un cambio en el servicio o la aplicación que hará que ese servicio o aplicación llame al webhook. Por ejemplo, puede quitar un archivo.

O puede seguir los pasos a continuación para enviar los datos de ejemplo a través del módulo HTTP > Realizar una solicitud.

  1. Cree un nuevo escenario con el módulo HTTP > Realizar una solicitud

  2. Configure el módulo con los siguientes valores:

    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 layout-auto html-authored no-header
    URL Introduzca la URL del webhook. Puede encontrar esta URL en el módulo de Webhooks que ha utilizado para configurar el webhook.
    Método POST
    Tipo de cuerpo Raw
    Tipo de contenido JSON (application/json)
    Solicitar contenido Se esperaba un JSON sin procesar en el webhook

  3. Abra el escenario con el módulo Webhooks en una pestaña o ventana separada del explorador.

  4. En el módulo de webhooks, haga clic en Volver a determinar la estructura de datos.

    No es necesario desenlazar otros módulos del módulo de webhooks.

  5. Cambie al escenario con el módulo HTTP y ejecútelo.

  6. Vuelva al escenario con el módulo Webhooks.

    Un mensaje "Determinado correctamente" significa que el módulo ha determinado correctamente la estructura de datos.

  7. Haga clic en Aceptar para guardar la estructura de datos.

    Los elementos del gancho web ahora están disponibles en el panel de asignación para su uso con módulos posteriores en el escenario.

La cola de ganchos web

Si un gancho web recibe datos y no hay un escenario activo que espere esos datos, los datos se almacenan en la cola. Una vez activado el escenario, se procesan secuencialmente todos los paquetes que esperan en la cola.

IMPORTANT
Las colas de webhook se comparten entre escenarios que emplean el mismo webhook. Si una de las situaciones está desactivada, todos los datos entrantes se mantienen en cola.

Formatos de datos entrantes admitidos

Workfront Fusion admite 3 formatos de datos entrantes: Cadena de consulta, Datos de formulario y JSON.

Workfront Fusion valida todos los datos entrantes con respecto a la estructura de datos seleccionada. A continuación, según la configuración del escenario, los datos se almacenan en la cola para su procesamiento o se procesan inmediatamente.

Si alguna parte de los datos no pasa la validación, Workfront Fusion devuelve un código de estado HTTP 400 y especifica, en el cuerpo de la respuesta HTTP, el motivo por el que los datos entrantes no superaron las comprobaciones de validación. Si la validación de los datos entrantes se realiza correctamente, Workfront Fusion devuelve el estado "200 Accepted".

Cadena de consulta

GET https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>?name=<yourname>&job=automate

Datos de formulario

POST https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>

Content-Type: application/x-www-form-urlencoded

name=<yourname>&job=automate

Datos de formulario multiparte

POST https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>


Content-Type: multipart/form-data; boundary=---generatedboundary

---generatedboundary

Content-Disposition: form-data; name="file"; filename="file.txt"


Content-Type: text/plain


Content of file.txt


---generatedboundary

Content-Disposition: form-data; name="name"

Workfront Fusion

---generatedboundary

Para recibir archivos codificados con multipart/form-data, debe configurar una estructura de datos con un campo de tipo collection que contenga los campos anidados name, mime y data. El campo name es un tipo text y contiene el nombre del archivo cargado. mime es un tipo text y contiene un archivo en formato MIME. El campo data es un tipo buffer y contiene datos binarios para el archivo que se está transfiriendo.

Para obtener más información sobre el formato MIME, consulte Módulos MIME.

JSON

POST https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>

Content-Type: application/json

{"name": "Workfront Fusion", "job": "automate"}
TIP
Si desea acceder al JSON original, habilite el paso a través de JSON al configurar el webhook.
  1. Haga clic en Agregar para agregar un nuevo enlace web.
  2. Haga clic en Mostrar configuración avanzada.
  3. Haga clic en paso JSON.

Encabezados de webhook

Para acceder a los encabezados del webhook, habilite Obtener encabezados de solicitud al configurar el webhook.

  1. Haga clic en Agregar para agregar un nuevo enlace web.
  2. Haga clic en Mostrar configuración avanzada.
  3. Haga clic en Obtener encabezados de solicitud.

Puede extraer un valor de encabezado determinado con la combinación de las funciones map() y get().

INFO
Ejemplo:
El ejemplo siguiente muestra una fórmula que extrae el valor del encabezado authorization de la matriz Headers[]. La fórmula se utiliza en un filtro que compara el valor extraído con el texto dado para pasar solo webhooks si hay una coincidencia.
Para obtener más información sobre cómo obtener un elemento de una matriz con una clave determinada, consulte Asignar un elemento de una matriz con una clave determinada en el artículo Asignar información de un módulo a otro en Adobe Workfront Fusion.

Respuesta a los webhooks

La respuesta predeterminada a una llamada de webhook es el texto "Aceptado". La respuesta se devuelve a la aplicación que llamó al webhook durante la ejecución del módulo Webhook personalizado.

Prueba de la respuesta a un webhook

  1. Incluya el módulo Webhook personalizado en su escenario.

  2. Agregue un nuevo webhook al módulo.

  3. Copie la URL del webhook en el portapapeles.

  4. Ejecute el escenario.

    El icono del rayo en el módulo Gancho web personalizado cambia a puntos giratorios. Esto muestra que el módulo está esperando la llamada del webhook.

  5. Abra una nueva ventana del explorador, pegue la dirección URL copiada en la barra de direcciones y presione Intro.

    El módulo Webhook personalizado se activará y el explorador mostrará una nueva página.

Si desea personalizar la respuesta del webhook, emplee el módulo Respuesta de webhook.

La configuración del módulo contiene dos campos: Estado y Cuerpo.

  • El campo Estado contiene códigos de estado de respuesta HTTP como 2xx para Correcto (por ejemplo, 200 para Correcto), 3xx para Redireccionamiento (por ejemplo, 307 para Redireccionamiento temporal), 4xx para Errores del cliente (por ejemplo, 400 para Solicitud incorrecta), etc.

  • El campo Cuerpo contiene todo lo que sea aceptado por la llamada del gancho web. Puede ser texto simple, HTML, XML, JSON, etc.

    note tip
    TIP
    Se recomienda establecer el encabezado Content-Type en el tipo MIME correspondiente: text/plain para texto sin formato, text/html para HTML, application/json para JSON, application/xml para XML, etc. Para obtener más información sobre los tipos MIME, consulte Módulos MIME.

El tiempo de espera para enviar una respuesta es de 40 segundos. Si la respuesta no está disponible dentro de ese periodo, Workfront Fusion devuelve el estado "200 Aceptado".

Ejemplo de respuesta del HTML

INFO
Ejemplo:
Configure el módulo Respuesta de webhook de la siguiente manera:
table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header
Estado Código de estado HTTP de éxito 2xx, p. ej. 200
Cuerpo código de HTML
Encabezados personalizados

>

  • > Clave: Content-type
  • > Valor: text/html >
Esto producirá una respuesta del HTML que se mostrará en un explorador web:

Ejemplo de redirección

INFO
Ejemplo: Configure el módulo Respuesta de webhook de la siguiente manera:
table 0-row-2 1-row-2 layout-auto html-authored no-header
Estado Código de estado HTTP de redirección 3xx, p. ej. 303
Encabezados personalizados

>

  • > Key: Ubicación
  • > Value: Dirección URL a la que desea redirigir. >

Desactivación de webhook

Los webhooks se desactivan automáticamente si se aplica cualquiera de las siguientes opciones:

  • El webhook no ha estado conectado a ningún escenario durante más de 5 días
  • El webhook solo se utiliza en escenarios inactivos, que han estado inactivos durante más de 30 días.

Los webhooks desactivados se borran y no se registran automáticamente si no están conectados a ningún escenario y han estado en estado desactivado durante más de 30 días.

Resolución de problemas

Faltan elementos en el panel de asignación

Si faltan algunos elementos en el panel de asignación en la configuración de los módulos que siguen al módulo Webhooks > Webhook personalizado, haga clic en el módulo Webhooks > Webhook personalizado para abrir su configuración y haga clic en Volver a determinar la estructura de datos:

A continuación, siga los pasos descritos en la sección Configurar la estructura de datos del gancho web en este artículo.

recommendation-more-help
5f00cc6b-2202-40d6-bcd0-3ee0c2316b43