我正在构建一个Web应用程序,需要从我组织的某些用户的Outlook任务中访问任务。我知道这个功能对于Microsoft Graph来说是相当新的:
https://developer.microsoft.com/en-us/graph/docs/concepts/changelog#outlook-tasks
当我使用Graph Explorer时,我可以通过此调用获得所有任务:
https://graph.microsoft.com/beta/me/outlook/tasks
但是我的任务或当前用户的任务不是我需要的。我需要访问组织中Outlook任务的所有用户的任务列表,无论当前谁在应用程序中连接。我知道我可以使用这样的东西来获取特定用户的任务:
GET /users/{id|userPrincipalName}/outlook/tasks
但我总是接受以下回应:
{ “错误”:{ “code”:“ErrorAccessDenied”, “message”:“访问被拒绝。检查凭据然后重试。”, “innerError”:{ “request-id”:“5831bd5b-8fd1-4f77-b49b-c976ddffab3f”, “日期”:“2017-07-18T15:42:49” } } }
我已授予每个管理员的权限,但我仍然收到相同的回复。我跳过重要的步骤了吗?如果是这样,那些步骤是什么?我可以在Graph Explorer中测试此功能,还是必须在我的应用程序中测试它?
答案 0 :(得分:2)
目前,您只能使用委派的权限(即代表当前用户)访问Outlook任务。您可以使用Tasks.Read.Shared
范围访问自己的任务,但同样,这仅提供对与当前用户共享的Outlook任务的其他访问权限。
您在这里寻找的是Tasks.Read.All
或Tasks.ReadWrite.All
权限。这些将属于应用程序权限并需要行政同意。目前这个功能不可用,虽然我确信它正在考虑之中。我当然会建议在User Voice中发布此建议。