Webhooks
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
En este artículo se describen los webhooks y cómo configurarlos para el proyecto de Azure DevOps. Los webhooks proporcionan una manera de enviar una representación JSON de un evento de Azure DevOps a cualquier servicio que tenga un punto de conexión público.
Nota:
Azure DevOps no cobra por la configuración de enlaces de servicio ni la integración con servicios externos. Consulte el sitio del servicio específico para conocer los precios relacionados con sus servicios.
Requisitos previos
Necesita los siguientes requisitos previos para administrar webhooks para una organización de Azure DevOps:
Rol De propietario o administrador de colecciones de proyectos en la organización.
Un proyecto de la organización y un servicio con un punto de conexión HTTP o HTTPS público al que desea enviar eventos de Azure DevOps.
Importante
Se recomienda usar solo puntos de conexión HTTPS. HTTP tiene la posibilidad de enviar datos privados, incluidos los encabezados de autenticación, sin cifrar en la carga del evento. Debe usar HTTPS para la autenticación básica en un webhook.
Envío de una representación JSON a un servicio
En el proyecto de Azure DevOps, vaya a Enlaces de servicio de configuración>del proyecto en .
https://<organization-name>/<project-name>/_settings/serviceHooks
En la página Enlaces de servicio , seleccione el + icono o Crear suscripción.
En la pantalla Servicio , seleccione Web Hooks y, a continuación, seleccione Siguiente.
En la pantalla Desencadenador , seleccione y configure el evento de Azure DevOps en el que desea desencadenar el webhook y, a continuación, seleccione Siguiente. Para más información sobre las cargas JSON publicadas por el consumidor de Azure DevOps, consulte Eventos de enlaces de servicio.
En la pantalla Acción, configure la dirección URL de destino y qué hacer cuando se produzca el evento. Para obtener más información sobre qué escribir en Detalles del recurso para enviar, Mensajes para enviar y Mensajes detallados que se van a enviar, consulte Detalles del recurso para enviar.
Nota:
Los webhooks no pueden tener como destino localhost (bucle invertido) ni direcciones IPv6/ de intervalo especial.
Seleccione Probar para probar la suscripción de enlace de servicio.
Cuando la prueba se complete correctamente, cierre la pantalla de notificación y seleccione Finalizar en la pantalla Acción .
Ahora se configura el webhook. Vaya al servicio de destino para ver la representación JSON.
Sugerencia
También puede crear un webhook mediante programación. Para obtener más información, consulte Creación de una suscripción de enlace de servicio mediante programación.
Detalles del recurso que se van a enviar
Los detalles del recurso que se van a enviar, Mensajes para enviar y Mensajes detallados para enviar la configuración en el panel Acción controlan el tamaño de la carga JSON que se va a enviar. Detalles del recurso para enviar controles de la cantidad de recursos que se van a enviar. El valor predeterminado es Todo, pero también puede optar por enviar Mínimo, que solo envía campos clave como URL e id. o Ninguno.
Ninguno y Mínimo son útiles en escenarios en los que el autor de la llamada no necesita mucha o ninguna información sobre el recurso, ya que se basa en el mensaje o en el propio mensaje detallado. Ninguno y Mínimo también son útiles por motivos de seguridad. El autor de la llamada debe volver a llamar a Azure DevOps Services y realizar comprobaciones de permisos y seguridad normales para obtener más detalles sobre el recurso.
En el siguiente ejemplo JSON se muestran detalles mínimos sobre el recurso:
{
"eventType": "git.push",
...
"messages": {
"text": "...",
"html": "...",
"markdown": "..."
},
"detailedMessage": {
"text": "...",
"html": "...",
"markdown": "..."
},
"resource": {
"id": "...",
"url": "https://...",
"name": "...",
"field1:": "..."
}
}