从Outlook Email Rest API获取所有电子邮件,但垃圾邮件

时间:2017-10-25 08:16:45

标签: outlook outlook-restapi

我正在尝试从Outlook Email Rest API获取用户的所有电子邮件。

  • 看起来API只允许最多检索50封电子邮件:无法检索更多?
  • 我需要“所有”电子邮件(不仅是收件箱中的电子邮件)。但是,如果我们解析所有电子邮件,我们就会遇到问题:实际上,它包含垃圾邮件文件夹中的电子邮件,并且API中的这些电子邮件中没有“标记”,表明它们是垃圾邮件。我们找到了2个变通办法:
    • 首先扫描所有垃圾邮件,保存ID,然后在我们扫描所有电子邮件时忽略它们
    • 检查垃圾邮件文件夹ID,并检查电子邮件的parentId是否不是垃圾邮件文件夹ID。如果您的联系人位于垃圾邮件文件夹的子文件夹中,但谁在垃圾邮件中创建文件夹,那么它会中断吗?
    • 任何方式在电子邮件上发送一个标记为垃圾邮件?还有其他标志,如IsRead / IsDraft,但不是这个

非常感谢

1 个答案:

答案 0 :(得分:1)

  

看起来API只允许最多检索50封电子邮件:无法检索更多?

是的,你可以获得更多。您需要使用paging来获取下一组结果。响应中应该有一个@odata.nextLink属性,您可以执行GET操作以获取下一页。

  

我需要“所有”电子邮件(不仅是收件箱中的电子邮件)。但是,如果我们解析所有电子邮件,我们就会遇到问题:实际上,它包含垃圾邮件文件夹中的电子邮件,并且API中的这些电子邮件中没有“标记”,表明它们是垃圾邮件。

是的,这是正确的。我想我会在这里做第二个选项,将Junk文件夹的ID与消息的ParentId相匹配。