Microsoft Graph Mail 创建订阅:操作:创建;异常:[状态代码:NotFound;原因:请求的用户无效。]

Microsoft Graph Mail create subscription: Operation: Create; Exception: [Status Code: NotFound; Reason: The requested user is invalid.]

我正在尝试使用 Microsoft Graph 创建对电子邮件收据的订阅 API。

我的设置

我尝试使用节点 API,遵循 tutorial on their Github

我也手动尝试过,使用 postman 发送 post 请求并手动获取令牌,然后为挑战设置服务器。

错误

对于这两个,我都收到以下错误:

Error: Operation: Create; Exception: [Status Code: NotFound; Reason: The requested user '85601dde-359a-4eae-a91e-a0f18a645ba4@9118c136-2fff-45b0-9695-dac64c966630' is invalid.]

不理解

我不太明白是“85601dde-359a-4eae-a91e-a0f18a645ba4@9118c136-2fff-45b0-9695-dac64c966630”因为我在其他 post 看到人们有他们的电子邮件地址在这个错误中。我可以在 JWT 令牌中找到这个 ID,所以我想这就是它的来源,但我不知道它是否正常。

我还发现问题可能出在我有“本地邮件”而不是“Office 365 邮件”,但我已确认我有 Office 365 邮件。

详情

我的授权是:

这是我的有效负载:

{
  "changeType": "created",
  "clientState": "SecretClientState",
  "notificationUrl": "https://e0a2d0f478cf.ngrok.io",
  "resource": "me/mailFolders('Inbox')/messages",
  "expirationDateTime": "2020-11-28T04:30:28.2257768+00:00"
}

完成错误响应

{
    "error": {
        "code": "ExtensionError",
        "message": "Operation: Create; Exception: [Status Code: NotFound; Reason: The requested user '85601dde-359a-4eae-a91e-a0f18a645ba4@9118c136-2fff-45b0-9695-dac64c966630' is invalid.]",
        "innerError": {
            "date": "2020-11-27T12:24:08",
            "request-id": "227dd9a1-858f-4286-b1b3-a22d2d0d8529",
            "client-request-id": "227dd9a1-858f-4286-b1b3-a22d2d0d8529"
        }
    }
}

看起来您正在使用客户端凭据流程并获取令牌,然后发出 POST 请求。所以尝试将资源修改为

users/{userid}/mailFolders('Inbox')/messages

如果你想使用me/mailFolders('Inbox')/消息使用委托权限(Mail.read)并获取用户令牌。