Outlook Microsoft Graph API邮件:已删除邮件的Web链接?

Outlook Microsoft Graph API邮件:已删除邮件的Web链接?,outlook,microsoft-graph-api,Outlook,Microsoft Graph Api,我正在试图找到一种方法,为已删除的邮件向OWA提供webLink。普通邮件具有webLink属性,但一旦删除,URLhttps://graph.microsoft.com/v1.0/me/messages/返回该有效负载,而不是消息信息: { "error": { "code": "ErrorItemNotFound", "message": "The specified object was not found in the store., The process fail

我正在试图找到一种方法,为已删除的邮件向OWA提供
webLink
。普通邮件具有
webLink
属性,但一旦删除,URL
https://graph.microsoft.com/v1.0/me/messages/
返回该有效负载,而不是消息信息:

{
  "error": {
    "code": "ErrorItemNotFound",
    "message": "The specified object was not found in the store., The process failed to get the correct properties.",
    "innerError": {
      "request-id": "x-x-x-x",
      "date": "2018-04-17T00:00:00"
    }
  }
}
当邮件被删除时(或者实际发生的情况是邮件在邮箱中移动到“已删除邮件”文件夹或“保留邮件”文件夹之一),邮件的Id会发生更改,因此返回的错误与此一致。这就是为什么存储这些Id是个坏主意,因为如果邮件在文件夹之间移动,同样的事情也会发生。您需要做的是根据消息的新位置查找消息的新Id(这取决于用于删除消息的方法),并且您需要某种类型的搜索参数,例如InternetMessageId应该可以工作,但是像pidTagSearchKey这样的唯一属性可能会更好。但是,如果您在上述邮件被软删除或硬删除之前保存了该邮件的Internet MessageId(这意味着该邮件最终将被保存在RecoverableItemsDeletes文件夹中),那么您可以使用

GET /v1.0/users('user@domain.com')/MailFolders/RecoverableItemsDeletions/messages/?$filter=internetMessageId+eq+%27%3c433353153.1229207532.1524008554985.JavaMail.root%40sjmas03.marketo.org%3e%27
在新位置查找邮件