Webhooks

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

Requisitos de acceso

Expanda para ver los requisitos de acceso para la funcionalidad en este artículo.

Para utilizar la funcionalidad de este artículo debe tener el siguiente acceso:

table 0-row-2 1-row-2 2-row-2 3-row-2 layout-auto html-authored no-header
paquete de Adobe Workfront Cualquiera
Licencia de Adobe Workfront

Nuevo: estándar

O

Actual: Trabajo o superior

Licencia de Adobe Workfront Fusion**

Actual: No se requiere licencia de Workfront Fusion

O

Heredado: Workfront Fusion para la automatización e integración del trabajo

Producto

Nuevo:

  • Seleccione o paquete de Prime Workfront: su organización debe adquirir Adobe Workfront Fusion.
  • Paquete de Ultimate Workfront: Workfront Fusion está incluido.

O

Actual: Su organización debe comprar Adobe Workfront Fusion.

Para obtener más información sobre esta tabla, consulte Requisitos de acceso en la documentación.

Para obtener información sobre las licencias de Adobe Workfront Fusion, consulte licencias de Adobe Workfront Fusion.

Uso de 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 utilizar un webhook para conectar una aplicación a Workfront Fusion:

  1. Añada el módulo Webhooks >Webhook personalizado módulo de activación instantáneo a su escenario.

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

  3. (Opcional) Haga clic en Ajustes avanzados.

  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 webhook, aparece una dirección URL única. Esta es la dirección a la que el webhook envía los datos. Workfront Fusion valida los datos enviados a esta dirección y los transmite 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 webhook 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 muestra 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.

También puede 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.
    Method POST
    Body type Raw
    Content type JSON (aplicación/json)
    Request content Se esperaba un JSON sin procesar en el webhook

    Nueva configuración de escenario

  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 desvincular 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.

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

    Determinado correctamente

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

    Los elementos del webhook 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 webhook recibe datos y no hay un escenario activo que los espere, 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 utilizan el mismo webhook. Si uno de los escenarios está desactivado, todos los datos entrantes se retienen en la 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 supera 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 Aceptado".

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 Añadir para añadir un nuevo webhook.
  2. Haga clic en Mostrar ajustes avanzados.
  3. Haga clic en paso JSON.

Encabezados del webhook

Para acceder a los encabezados del webhook, habilitar encabezados de petición GET al configurar el webhook.

  1. Haga clic en Añadir para añadir un nuevo webhook.
  2. Haga clic en Mostrar ajustes avanzados.
  3. Haga clic en Encabezados de petición GET.

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.
Configurar un filtro
Para obtener más información sobre cómo obtener un elemento de una matriz con una clave determinada, vea Asignar un elemento de una matriz con una clave determinada en el artículo Asignar una matriz.

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. Añada 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 Webhook 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 pulse 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 webhook. Puede ser texto simple, HTML, XML, JSON, etc.

    note tip
    TIP
    Se recomienda establecer el encabezado de 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 del webhook de la siguiente manera:
table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header
Status Código de estado HTTP de éxito 2xx, p. ej. 200
Body Código de HTML
Custom headers

>

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

Ejemplo de redireccionamiento

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

>

  • > Key: ubicación
  • > Value: dirección URL a la que desea redirigir. >
Respuesta de webhook

Desactivación de un 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 permanecido en estado desactivado durante más de 30 días.

Resolución de problemas

Elementos que faltan en el panel de asignación

Si faltan algunos elementos en el panel de asignación en la configuración de los módulos siguientes 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:

Volver a determinar la estructura de datos

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

recommendation-more-help
7e1891ad-4d59-4355-88ab-a2e62ed7d1a3