使用 Outlook API 发送电子邮件时 CreateReply 出错

问题描述

我正在使用 deprecated now API 向现有电子邮件发送回复,如下所示:

POST https://outlook.office.com/api/beta/me/messages/{message_id}/createreply

出现这样的错误

The specified object was not found in the store.,The process Failed to (truncated...

消息 ID 是正确的,是从刚刚发送的电子邮件中保存的。

请帮忙!

解决方法

找了好久,最后发现是错误的Message ID。

因此,看起来当您使用草稿发送电子邮件并保存该消息 ID 时,一旦发送电子邮件并将其移至“已发送”文件夹,它最终会被替换。因此,您的消息 ID 不再有效,API 返回 404 错误。

解决方案是从刚刚创建的草稿中保存 ConversationId,并在发送回复之前使用该 ConversationId 获取最新的电子邮件:

/me/messages?$select=Id&$top=100&$filter=conversationId eq 'AAQkADZlNzhlNj='