使用Outlook 365 API在组织中获取电子邮件的最佳方式

时间:2016-07-27 09:31:29

标签: outlook office365 office365api office365-restapi

我正在构建一个从组织内部的电子邮件中收集统计信息的应用程序。我们假设这些组织使用Outlook 365。 我希望能够以最简单的方式执行以下操作:

  • 获取阅读组织中所有邮件的权限
  • 获取电子邮件+附件并运行我的统计信息

似乎没有简单的方法来使用Outlook 365。 我发现了这个:any-office-365-rest-api-to-get-messages-from-all-mailboxes-in-an-organization,但我不明白它是否适用于使用Outlook 365的任何组织。我错了吗?如何在随机组织上安装此类应用并获得所有权限?

我想到了另一种解决方案,它有它的缺点但很容易: 组织为我创建了一个电子邮件地址,例如mails@org.com,并在Exchange 365中定义以将所有电子邮件转发到此地址。然后我可以使用Outlook 365 REST API来获取所有电子邮件并删除我经过的那些电子邮件。 主要的缺点是,我担心这个电子邮箱会很快到达,我会想念很多电子邮件。根据{{​​3}},电子邮箱应该有50 GB,这是一个足够大的缓冲区。

有正常的方法吗?有人遇到过这样的问题吗?

非常感谢。

1 个答案:

答案 0 :(得分:0)

您需要在Azure AD上创建mutlitenant应用程序。

如果您希望您的应用能够阅读组织中的所有电子邮件(而不是已经记录并授予您的应用的用户的电子邮件)。您需要向应用程序添加以下权限:在所有邮箱中读取邮件(参见图像)

注意此范围仅为 admin_consent 。然后,您的应用程序需要由Office 365租户的管理员进行验证。您可以阅读有关此here的更多信息。

Azure AD application configuration