webhooks
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Cet article décrit les webhooks et comment les configurer pour votre projet Azure DevOps. Les webhooks permettent d’envoyer une représentation JSON d’un événement Azure DevOps à n’importe quel service disposant d’un point de terminaison public.
Remarque
Azure DevOps ne facture pas la configuration des hooks de service ou l’intégration à des services externes. Reportez-vous au site du service spécifique pour connaître les tarifs liés à leurs services.
Prérequis
Vous avez besoin des prérequis suivants pour gérer les webhooks pour une organisation Azure DevOps :
Rôle Propriétaire ou Administrateur de collection de projets dans l’organisation.
Un projet dans l’organisation et un service avec un point de terminaison HTTP ou HTTPS public auquel vous souhaitez envoyer des événements Azure DevOps.
Important
Il est recommandé d’utiliser uniquement des points de terminaison HTTPS. HTTP peut envoyer des données privées, notamment des en-têtes d’authentification, non chiffrés dans la charge utile de l’événement. Vous devez utiliser HTTPS pour l’authentification de base sur un webhook.
Envoyer une représentation JSON à un service
Dans votre projet Azure DevOps, accédez aux hooks du service de paramètres>de projet à l’adresse
https://<organization-name>/<project-name>/_settings/serviceHooks
.Dans la page Hooks de service, sélectionnez l’icône + ou Créer un abonnement.
Dans l’écran Service , sélectionnez Web Hooks , puis sélectionnez Suivant.
Dans l’écran Déclencheur , sélectionnez et configurez l’événement Azure DevOps sur lequel vous souhaitez déclencher le webhook, puis sélectionnez Suivant. Pour plus d’informations sur les charges utiles JSON publiées par le consommateur Azure DevOps, consultez les événements de hooks de service.
Dans l’écran Action, configurez l’URL cible et ce qu’il faut faire lorsque l’événement se produit. Pour plus d’informations sur les informations à entrer dans les détails de la ressource à envoyer, messages à envoyer et messages détaillés à envoyer, consultez Les détails de la ressource à envoyer.
Remarque
Les webhooks ne peuvent pas cibler localhost (bouclage) ou des adresses IPv4/IPv6 de plage spéciale.
Sélectionnez Tester pour tester l’abonnement de hook de service.
Une fois le test terminé, fermez l’écran de notification, puis sélectionnez Terminer sur l’écran Action .
Le webhook est maintenant configuré. Accédez au service cible pour afficher la représentation JSON.
Conseil
Vous pouvez également créer un webhook par programmation. Pour plus d’informations, consultez Créer un abonnement de hook de service par programmation.
Détails de la ressource à envoyer
Les détails de la ressource à envoyer, messages à envoyer et messages détaillés pour envoyer des paramètres dans le volet Action contrôlent la taille de la charge utile JSON à envoyer. Les détails de la ressource à envoyer contrôlent la quantité de ressource à envoyer. La valeur par défaut est All, mais vous pouvez également choisir d’envoyer minimal, qui envoie uniquement des champs clés tels que l’URL et l’ID ou None.
Aucun et Minimal sont utiles dans les scénarios où l’appelant n’a pas besoin de beaucoup ou d’informations sur la ressource, car il s’appuie sur le message ou le message détaillé lui-même. Aucun et Minimal sont également utiles pour des raisons de sécurité. L’appelant doit rappeler azure DevOps Services et passer par des vérifications de sécurité et d’autorisation normales pour obtenir plus de détails sur la ressource.
L’exemple JSON suivant montre des détails minimes sur la ressource :
{
"eventType": "git.push",
...
"messages": {
"text": "...",
"html": "...",
"markdown": "..."
},
"detailedMessage": {
"text": "...",
"html": "...",
"markdown": "..."
},
"resource": {
"id": "...",
"url": "https://...",
"name": "...",
"field1:": "..."
}
}