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 | Optionnel. Chaîne opaque transmise au client sur 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
Avant la création d’un nouvel abonnement, SharePoint envoie une demande avec un jeton de validation dans le corps de la demande à l’URL de service fournie. Votre service doit répondre à cette demande en retournant le jeton de validation.
Si votre service ne parvient pas à valider la demande de cette façon, l’abonnement n’est pas créé.