Création d’un abonnement
Crée un nouvel abonnement de webhook sur une liste SharePoint.
Autorisations
L’application doit au moins disposer de droits d’accès en modification à la liste SharePoint dans laquelle l’abonnement est créé.
Si votre application est une application Microsoft Azure Active Directory (Azure AD) :
Vous devez accorder à l’application Azure AD les autorisations indiquées dans le tableau suivant :
Application | Autorisation |
---|---|
Office 365 SharePoint Online | Lire et écrire des éléments et des listes dans toutes les collections de sites. |
Si votre application est un complément SharePoint :
Vous devez accorder au complément SharePoint les autorisations suivantes ou des autorisations supérieures :
Domaine d’application | Droits d’autorisation |
---|---|
Répertorier | Gérer |
Requête HTTP
POST /_api/web/lists('list-id')/subscriptions
Corps de la demande
Inclure les propriétés suivantes dans le corps de la requête.
Nom | Type | Description |
---|---|---|
ressource | chaîne | URL de la liste à partir de laquelle vous souhaitez recevoir des notifications. |
notificationUrl | chaîne | URL du service auquel envoyer des notifications. |
expirationDateTime | date | Date à laquelle la notification arrivera à expiration et sera supprimée. |
clientState | string | Facultatif. Chaîne opaque renvoyée au client pour toutes les notifications. Vous pouvez utiliser cette chaîne pour valider les notifications ou marquer différents abonnements. |
Exemple
POST /_api/web/lists('5C77031A-9621-4DFC-BB5D-57803A94E91D')/subscriptions
Accept: application/json
Content-Type: application/json
{
"resource": "https://contoso.sharepoint.com/_api/web/lists('5C77031A-9621-4DFC-BB5D-57803A94E91D')",
"notificationUrl": "https://91e383a5.ngrok.io/api/webhook/handlerequest",
"expirationDateTime": "2016-04-27T16:17:57+00:00"
}
Réponse
Si l’abonnement est ajouté, une réponse 201 Created
contenant l’objet d’abonnement nouvellement créé est renvoyée.
Exemple
HTTP/1.1 201 Created
Content-Type: application/json
{
"id": "a8e6d5e6-9f7f-497a-b97f-8ffe8f559dc7",
"expirationDateTime": "2016-04-27T16:17:57Z",
"notificationUrl": "https://91e383a5.ngrok.io/api/webhook/handlerequest",
"resource": "5c77031a-9621-4dfc-bb5d-57803a94e91d"
}
Validation d’URL
Importante
Avant la création d’un abonnement, SharePoint envoie une requête avec un jeton de validation dans la chaîne de requête de la demande à l’URL de notification fournie. Votre service doit répondre à cette demande en renvoyant le jeton de validation. Si votre service ne parvient pas à valider la demande de cette façon, l’abonnement n’est pas créé.**
Exemple
{
return new OkObjectResult(req.Query["validationtoken"].ToString());
}