Microsoft Graph возвращает 403 Запрещено при второй попытке создать подписку

Мне удалось подписаться на push-уведомления Microsoft Graph на один раз для следующих ресурсов:

  • мне / календари;
  • мне / календари /{ID}/ События

Однако, когда я пытаюсь сделать то же самое сейчас, я получаю:

403 Запрещено https://graph.microsoft.com/v1.0/subscriptions

{
  "error": {
    "code": "ExtensionError",
    "message": "Operation: Create; Exception: [Status Code: Forbidden; Reason: Forbidden]",
    "innerError": {
      "request-id": "7afa93f6-f616-4ea7-9bbe-c977ffd1e239",
      "date": "2017-07-14T16:23:35"
    }
  }
}

Мой запрос выглядит следующим образом:

{
  "resource": "me/calendars/{ID}/events",
  "notificationUrl": "https://myapp/MyService/notifications/",
  "clientState": null,
  "changeType": "created,updated,deleted",
  "expirationDateTime": "2017-07-17T14:53:33Z"
}

Документы, которые я использую: https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/webhooks

Я подозреваю, что Microsoft Graph выдаст такую ​​ошибку из-за того, что есть подписка, работающая в данный момент после первой подписки. Однако, когда я работал с outlook API, я мог получать столько подписок, сколько хотел.

Вопрос в том, поддерживает ли Graph API несколько подписок на один ресурс, и если да, что может быть причиной 403 Forbidden в таком случае?

2 ответа

Решение

Да, Microsoft Graph поддерживает множественную подписку на один ресурс. Мы исследовали этот запрос. Биржа отказывает в доступе. Пожалуйста, убедитесь, что вы используете правильные учетные данные. Пожалуйста, ответьте на эту проблему, если это необходимо. Спасибо.

Ошибка была исправлена ​​после добавления дополнительных областей.

До:

Calendars.ReadWrite.Shared Files.ReadWrite.All User.Read openid offline_access profile

После:

Calendars.Read Calendars.ReadWrite.Shared Calendars.ReadWrite Files.ReadWrite.All User.Read openid offline_access profile
Другие вопросы по тегам