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.
Precaución:
Los webhooks no funcionarán hasta que el elemento de flujo de trabajo se actualice a la última versión.
Crear un webhook entrante
Complete estos pasos para crear un webhook entrante:
- Acceda a la aplicación web de Workflow Manager.
- 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.
- Haga clic en Plantillas de trabajo .
Aparece el panel Plantillas de trabajo.
- Elija la plantilla de trabajo para la que desea crear un webhook entrante.
La plantilla de trabajo aparece en el panel.
- 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.
- En la sección Creación de trabajos de webhook, haga clic en Agregar webhook.
Aparece el cuadro de diálogo Crear webhook.
- Proporcione un nombre para el webhook en el cuadro de texto Nombre.
- 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 el botón La entrada admite expresiones de Arcade y elija una expresión ArcGIS Arcade para agregarla a su cuadro de texto asociado.
- 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 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 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.
- 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.
- 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.
- Si lo desea, siga estos pasos para configurar el nombre del adjunto y la carpeta en la que se almacenará:
- 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 un nombre de carpeta, se crea automáticamente una carpeta denominada General.
Nota:
La carpeta está contenida en el elemento de flujo de trabajo y no es una ruta de sistema de archivos.
- 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.
- Proporcione el nombre de la carpeta en la que se almacenará el adjunto en el cuadro de texto Nombre de carpeta.
- Opcionalmente, siga estos pasos para analizar la carga del webhook entrante y configurar valores de salida personalizados:
- Si el origen del webhook entrante es un webhook de servicio de entidades, puede activar Extraer cambios para usar los cambios extraídos en sus valores de salida.
- Haga clic en el botón de alternancia Modo de prueba en la sección Valores de salida.
- 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 } } ]}
- Haga clic en Agregar salida y ruta.
- 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.
- 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.
- Si lo desea, repita los subpasos c-f para agregar más valores de salida personalizados.
- Haga clic en Guardar.
El webhook entrante aparece en la sección Creación de trabajos de webhook.
- Haga clic en Guardar para guardar la plantilla de trabajo.
Al webhook se le asigna un Id. y una dirección URL.
- Desplace el cursor por el webhook y haga clic en Copiar dirección URL para copiar la dirección URL del webhook entrante al portapapeles y configurarla para su uso en su aplicación.
Editar un webhook entrante
Complete estos pasos para editar un webhook entrante:
- Acceda a la aplicación web de Workflow Manager.
- 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.
- Haga clic en Plantillas de trabajo .
Aparece el panel Plantillas de trabajo.
- Elija la plantilla de trabajo que contiene el webhook entrante que desea editar.
La plantilla de trabajo aparece en el panel.
- 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.
- 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.
- Actualice la configuración del webhook entrante según sea necesario.
- Haga clic en Guardar para guardar los cambios.
- 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. Complete estos pasos para eliminar un webhook entrante:
- Acceda a la aplicación web de Workflow Manager.
- 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.
- Haga clic en Plantillas de trabajo .
Aparece el panel Plantillas de trabajo.
- Elija la plantilla de trabajo que contiene el webhook entrante que desea eliminar.
La plantilla de trabajo aparece en el panel.
- 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.
- 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 .
Precaución:
Los webhooks entrantes eliminados no se pueden recuperar.
- Haga clic en Guardar para guardar la plantilla de trabajo.
El webhook se elimina.