Crear trabajos con webhooks

Licencia:

Esta funcionalidad requiere una licencia para el rol de ArcGIS Workflow Manager Server Advanced.

Los webhooks permiten a las aplicaciones enviar información a otras aplicaciones y servicios cuando se produce una acción o evento específico. ArcGIS Workflow Manager actúa como receptor de la carga del webhook y permite procesar información a partir de un webhook entrante para crear un trabajo a partir de la plantilla de trabajo especificada automáticamente. También puede guardar la carga del webhook entrante como un archivo y adjuntarlo al trabajo, así como configurar valores de salida personalizados que se pueden utilizar en todo el trabajo.

A partir de 11.2, todos los webhooks entrantes requieren seguridad de encabezado. Para permitir que Workflow Manager utilice webhooks sin seguridad de encabezado, debe definir la propiedad allowUnsecureWebhooks como true en el archivo de configuración de Workflow Manager.

Nota:

Si ArcGIS Workflow Manager Server está federado con un portal de ArcGIS Enterprise que utiliza la autenticación Windows (IWA) integrada o la autenticación de infraestructura de clave pública (PKI), los webhooks de no se pueden usar para crear trabajos en Workflow Manager.

Crear un webhook entrante

Para crear un webhook entrante, siga estos pasos:

  1. Acceda a la aplicación web de Workflow Manager.
  2. Haga clic en la pestaña Diseño.

    Aparece la página Diseño.

    Nota:

    Si no tiene suficientes privilegios, la pestaña Diseño no estará disponible.

  3. Haga clic en Plantillas de trabajo Job Templates.

    Aparece el panel Plantillas de trabajo.

  4. Elija la plantilla de trabajo para la que desea crear un webhook entrante.

    La plantilla de trabajo aparece en el panel.

  5. Haga clic en la pestaña Acciones automatizadas.

    Si no tiene una licencia para el rol de ArcGIS Workflow Manager Server Advanced o privilegios suficientes, no puede configurar las acciones automáticas.

  6. En la sección Creación de trabajos de webhook, haga clic en Agregar webhook.

    Aparece el cuadro de diálogo Crear webhook.

  7. Proporcione un nombre para el webhook en el cuadro de texto Nombre.
  8. Proporcione un nombre de usuario y una contraseña en los cuadros de texto Nombre de usuario y Contraseña para crear credenciales para el webhook entrante.

    También puede usar una expresión ArcGIS Arcade en los cuadros de texto Nombre de usuario y Contraseña para rellenar dinámicamente estos valores con la configuración cifrada definida por el usuario.

    Precaución:

    La información que proporcione en los cuadros de texto Nombre de usuario y Contraseña no se cifra. Se recomienda crear configuraciones cifradas definidas por el usuario para almacenar credenciales de webhook de forma segura.

    Sugerencia:

    Haga clic en La entrada admite expresiones de Arcade This input supports Arcade expressions y elija una expresión de Arcade para agregarla su cuadro de texto asociado.

  9. Si lo desea, active el Nombre de usuario y la contraseña de reserva y proprocione un conjunto de copia de seguridad de credenciales en los cuadros de texto Nombre de usuario de reserva y Contraseña de reserva.

    También puede usar una expresión Arcade en los cuadros de texto Nombre de usuario y Contraseña para rellenar dinámicamente estos valores con la configuración cifrada definida por el usuario.

    Precaución:

    La información que proporcione en los cuadros de texto Nombre de usuario de reserva y Contraseña de reserva no se cifra. Se recomienda crear configuraciones cifradas definidas por el usuario para almacenar credenciales de webhook de forma segura.

  10. Elija un método de autenticación en la sección Seguridad de encabezado:
    Nota:

    Los webhooks de servicio de entidades entrantes deben utilizar el método ArcGIS Webhook para la autenticación.

    • Simple: valida una solicitud entrante haciendo coincidir un encabezado definido y el secreto.

      Proporcione valores de autenticación en los cuadros de texto Nombre de encabezado y Valor.

    • ArcGIS Webhook: valida una solicitud entrante haciendo coincidir una función hash generada a partr de un clave secreta compartida.

      Proporcione un valor en el cuadro de texto Secreto.

  11. Si lo desea, haga clic en la pestaña Carga y active Adjuntar respuesta para guardar la carga del webhook entrante como un archivo y adjuntarla al trabajo.
  12. Si lo desea, configure el nombre del adjunto y la carpeta en la que se almacenará haciendo lo siguiente:
    1. Proporcione el nombre de la carpeta en la que se almacenará el adjunto en el cuadro de texto Nombre de carpeta.

      El nombre de la carpeta no puede contener una ruta de sistema de archivos ni caracteres especiales. Si no se proporciona ningún nombre de carpeta, se crea automáticamente una carpeta llamada General.

      Nota:

      La carpeta está contenida en el elemento de flujo de trabajo y no es una ruta de sistema de archivos.

    2. Seleccione una de las siguientes opciones de Nombre de adjunto:
      • Generado automáticamente: nombra automáticamente el adjunto con la siguiente sintaxis: <StepName>_<RunDate>_<RunTime>.
      • Personalizado: permite proporcionar un nombre de adjunto personalizado.
  13. Si lo desea, analice la carga del webhook entrante y configure valores de salida personalizados haciendo lo siguiente:
    1. Si lo desea y el origen del webhook entrante es un webhook de servicio de entidades, active Extraer cambios para usar los cambios extraídos en los valores de salida.
      Nota:

      Para extraer los cambios correctamente, asegúrese de que el primer paso del trabajo creado por el webhook esté asignado al usuario especificado en la configuración del webhook. La asignación se puede actualizar a un usuario diferente o a un grupo para los pasos posteriores.

    2. Active el botón de alternancia Modo de prueba en la sección Valores de salida.
    3. Pegue un ejemplo de la carga del webhook entrante en el cuadro de texto Respuesta de muestra.

      Ejemplo de carga en formato JSON:

      {"spatialReference": {
        "wkid": 4326,
        "latestWkid": 4326
      },
      "location": [
        {
          "name": "380 New York Street",
          "extent": {
            "xmin": -117.196701,
            "ymin": 34.055489
          }
        }
      ]}
    4. Haga clic en Agregar salida y ruta.
    5. Proporcione un nombre para el valor de salida en el cuadro de texto Valor de salida.

      Este es el nombre del valor que se utiliza para obtener el valor de salida personalizado.

    6. Proporcione una expresión JSONPath en notación de puntos o notación entre corchetes para el valor que desea almacenar en el cuadro de texto Ruta de extracción.

      Ejemplo de JSONPath en notación de puntos:

      $location.0.name

      Ejemplo de JSONPath en notación entre corchetes:

      $['location'][0]['name']

      El valor aparece en la columna Resultado de muestra.

    7. Si lo desea, repita los subpasos anteriores para agregar más valores de salida personalizados.
  14. Haga clic en Guardar.

    El webhook entrante aparece en la sección Creación de trabajos de webhook.

  15. Haga clic en Guardar para guardar la plantilla de trabajo.

    Al webhook se le asigna un Id. y una dirección URL.

  16. Desplace el cursor por el webhook y haga clic en Copiar dirección URL Copy Step ID para copiar la dirección URL del webhook entrante al portapapeles y configurarla para su uso en la aplicación.

Editar un webhook entrante

Para editar un webhook entrante, siga estos pasos:

  1. Acceda a la aplicación web de Workflow Manager.
  2. Haga clic en la pestaña Diseño.

    Aparece la página Diseño.

    Nota:

    Si no tiene suficientes privilegios, la pestaña Diseño no estará disponible.

  3. Haga clic en Plantillas de trabajo Job Templates.

    Aparece el panel Plantillas de trabajo.

  4. Elija la plantilla de trabajo que contiene el webhook entrante que desea editar.

    La plantilla de trabajo aparece en el panel.

  5. Haga clic en la pestaña Acciones automatizadas.

    Si no tiene una licencia para el rol de ArcGIS Workflow Manager Server Advanced o privilegios suficientes, no puede configurar las acciones automáticas.

  6. En la sección Creación de trabajos de webhook, pase el cursor por el webhook entrante que desea editar y haga clic en Editar.

    Aparece el cuadro de diálogo Crear webhook.

  7. Actualice la configuración del webhook entrante según sea necesario.
  8. Haga clic en Guardar para guardar los cambios.
  9. Haga clic en Guardar para guardar la plantilla de trabajo.

    El webhook entrante se actualiza.

Eliminar un webhook entrante

La eliminación de un webhook entrante es permanente y no se puede deshacer.

Para eliminar un webhook entrante, siga estos pasos:

  1. Acceda a la aplicación web de Workflow Manager.
  2. Haga clic en la pestaña Diseño.

    Aparece la página Diseño.

    Nota:

    Si no tiene suficientes privilegios, la pestaña Diseño no estará disponible.

  3. Haga clic en Plantillas de trabajo Job Templates.

    Aparece el panel Plantillas de trabajo.

  4. Elija la plantilla de trabajo que contiene el webhook entrante que desea eliminar.

    La plantilla de trabajo aparece en el panel.

  5. Haga clic en la pestaña Acciones automatizadas.

    Si no tiene una licencia para el rol de ArcGIS Workflow Manager Server Advanced o privilegios suficientes, no puede configurar las acciones automáticas.

  6. En la sección Creación de trabajos de webhook, pase el cursor por el webhook entrante que desea eliminar y haga clic en Eliminar webhook Delete Webhook.
    Precaución:

    Los webhooks entrantes eliminados no se pueden recuperar.

  7. Haga clic en Guardar para guardar la plantilla de trabajo.

    El webhook se elimina.

Temas relacionados