如何通过 O365 API/Exchange Managed APi 为其他用户创建任务

How Create Tasks for other users via O365 API/Exchange Managed APi

场景

我正在开发 Sharepoint 提供商托管的应用程序。 Sharepoint 应用程序 Web 仅用作存储项目的存储库,Web 应用程序使用 O365 多租户应用程序通过使用 ADAL 令牌对用户进行身份验证。

我的要求是当用户在 Web 应用程序中创建项目时 he/she 可以将其他用户指定为该项目的责任方。我需要为相关用户创建 o365 任务(即用户应该在同一个 o365 租户中)作为提醒。

问题一:

我搜索了一个 o365 Task API 来创建任务。我发现的大多数结果表明它仍然没有包含在 O365 统一 API 中。有谁知道它会很快发布吗?

问题二:

我使用 Exchange Web 服务(即 EWS)托管 API(使用用户的“OAuth 令牌”)来创建任务并检索它们。这需要 azure AD 应用程序中的委托权限 "Access mailboxes as the signed-in user via Exc"。

但问题出在 EWS Managed API 我只能为登录用户创建任务。我找不到为其他用户创建任务的方法。

是否有任何方法可以使用上述 API 为其他用户创建任务?

深入挖掘后,我发现在 O365 中有一种方法可以获取“app only token”。但这不是一个选项,因为它将授予对 O365 租户中所有邮箱的访问权限,这是不可行的,因为我的应用程序将是可以从应用程序商店购买的第 3 方应用程序。

如果有人能阐明这两个问题,我们将不胜感激。

谢谢。

问题 1:REST API 不支持任务。为此,我建议在 UserVoice 上发布建议。

问题2:EWS不支持将任务分配给其他用户。您需要在 "assigned" 用户的任务文件夹中创建任务。这将要求登录用户 delegate access 访问分配用户的任务文件夹,或者您需要考虑使用仅限应用程序的令牌来访问所有用户的邮箱。