我有一堆导出的电子邮件,现在应该在Office 365中删除。
Office 365 API提供DELETE /me/messages/{messageId}
REST端点,但提到的{messageId}
与导出的电子邮件中可以找到的Message-ID
不同。
预期格式为MAAAkL8DFzPTaS5m....S15YyUlnWAAAcDWOTAAA=
,而Message-ID为<XYZfooBar123@BAR.test.outlook.com>
格式。
这两者之间是否有任何链接,从.msg / .eml文件获取所需的ID或以其他方式删除这些电子邮件?
答案 0 :(得分:1)
XYZfooBar123@BAR.test.outlook.com
这是通常由链https://en.wikipedia.org/wiki/Message-ID中的第一个邮件传输代理分配的Internet邮件ID。您可以在搜索邮箱中的邮件或与邮件跟踪日志的关联中使用此属性。然而,Id并不保证是唯一的,例如,如果有人发送了一条消息并自行复制,那么他们将在SentItems文件夹和收件箱文件夹中拥有相同Id的消息副本。
REST中所需的MessageId实际上是ItemId,它是Exchange在项目首次保存到商店时分配给项目的标识符。此ID是全局唯一的,但在文件夹之间移动项目时会更改,例如,请参阅。 (https://msdn.microsoft.com/en-us/library/office/dn605828(v=exchg.150).aspx这适用于EWS,但仍然适用于REST,但Id是不同的格式)
导出消息时,将在GET on / Messages上返回ItemId。
取决于您导出邮件的方式?您可以使用另一个可以使用的相关ID,例如可以转换原始EntryId,也可以使用PR_SearchKey等。