Crear una suscripción

Crea una nueva suscripción de webhook en una lista de SharePoint.

Permisos

La aplicación debe tener al menos permisos de edición en la lista de SharePoint donde se creará la suscripción.

Si la aplicación es una aplicación de Microsoft Azure Active Directory (Azure AD)

Debe conceder a la aplicación de Azure AD los permisos que se especifican en la siguiente tabla:

Aplicación Permiso
Office 365 SharePoint Online Leer y escribir elementos y listas en todas las colecciones de sitios.

Si la aplicación es un complemento de SharePoint

Debe conceder al complemento de SharePoint los siguientes permisos u otros superiores:

Ámbito Derechos de permiso
Lista Administrar

Solicitud HTTP

POST /_api/web/lists('list-id')/subscriptions

Cuerpo de la solicitud

Incluya las siguientes propiedades en el cuerpo de la solicitud.

Nombre Tipo Descripción
resource string La dirección URL de la lista de la que se van a recibir las notificaciones.
notificationUrl string La dirección URL del servicio a la que se van a enviar las notificaciones.
expirationDateTime date La fecha en que expirará la notificación y se eliminará.
clientState string Opcional. Cadena opaca que se ha pasado al cliente en todas las notificaciones.
Puede usarla para validar las notificaciones o etiquetar suscripciones diferentes.

Ejemplo

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"
}

Respuesta

Si se ha agregado la suscripción, se devuelve una respuesta de 201 Created que incluye el objeto de suscripción recién creado.

Ejemplo

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"
}

Validación de URL

Importante

Antes de crear una nueva suscripción, SharePoint envía una solicitud con un token de validación en la cadena de consulta de la solicitud a la dirección URL de notificación proporcionada. Su servicio debe responder a esta solicitud devolviendo el token de validación. Si el servicio no puede validar la solicitud de esta manera, no se crea la suscripción.**

Ejemplo

{
  return new OkObjectResult(req.Query["validationtoken"].ToString());
}

Consulte también