在Microsoft Graph/Outlook REST API中标识DSN(传递状态通知)或NDR(未传递报告)以及失败的收件人

在Microsoft Graph/Outlook REST API中标识DSN(传递状态通知)或NDR(未传递报告)以及失败的收件人,outlook,microsoft-graph-api,outlook-restapi,Outlook,Microsoft Graph Api,Outlook Restapi,我在这里发现了几个关于在各种邮件服务器中检测邮件状态的问题,但仍然不清楚如何使用outlookrestapi进行检测 我们可以看到对请求的响应: GET https://graph.microsoft.com/v1.0/me/messages/AAMkADhMGAAA= 但答案似乎没有包含此类信息的字段。我还研究了标题请求: https://graph.microsoft.com/v1.0/me/mailfolders/inbox/messages?$select=subject,intern

我在这里发现了几个关于在各种邮件服务器中检测邮件状态的问题,但仍然不清楚如何使用outlookrestapi进行检测

我们可以看到对请求的响应:

GET https://graph.microsoft.com/v1.0/me/messages/AAMkADhMGAAA=
但答案似乎没有包含此类信息的字段。我还研究了标题请求:

https://graph.microsoft.com/v1.0/me/mailfolders/inbox/messages?$select=subject,internetMessageHeaders
不幸的是,没有像
X-Failed-Recipients
这样的头


是否有任何方法可以使用Outlook API获取传递状态和/或失败的收件人

我的方法是像您一样获取消息详细信息和InternetMessageHeader

  • 首先,我检查标题
    内容类型
    多部分/报告
    表示DSN(传递状态通知),请参阅

    • GEThttps://graph.microsoft.com/v1.0/me/messages/?$select=internetMessageHeaders
  • 然后,我得到消息的
    toRecipients
    属性,该消息包含 失败的收件人的电子邮件地址

    • GEThttps://graph.microsoft.com/v1.0/me/messages/
注:

  • 并非所有邮件服务器都遵循RFC3461,因此一些DSN/NDR电子邮件可能会漏掉
  • 我找不到任何文档说明
    toRecipients
    始终包含失败收件人的值,但到目前为止,我还没有找到一个相反的示例