使用 Outlook REST 实现邮件文件夹对话视图的最佳方式 API

Best way to achieve Conversation view for mail folder using Outlook REST API

我想使用 Outlook REST API 来显示邮件文件夹中的邮件并按对话对邮件进行分组,就像您在任何现代网络邮件中所做的那样。

例如 inbox,我会请求使用第一个查询,例如 <mailuri>/inbox/messages?$select=ConversationId(默认情况下它是反向时间顺序)

将此请求结果按 ConversationId 分组是不够的,因为某些电子邮件可能不在 inbox(想想 sentmails)中,或者它们可能被分页而未返回第一页。

因此,对于每个不同的 ConversationId,我需要执行另一个 REST 请求,以检索参与者或简单地计算对话中的电子邮件。我可能会使用新的 batch request 来执行此操作。

涉及到很多请求。有更好的解决方案吗?

正如您可能已经意识到的那样,REST API 并不直接提供一种将对话作为一个实体来处理的方法。这是我们在路线图上要改进的地方。

根据 API 的当前状态,您所描述的基本上是正确的方法。您可以将第二个请求推迟到 "fill in" 对话,直到用户选择它。

您实际上可以使用此端点来涵盖收件箱和已发送的项目

https://outlook.office.com/api/v2.0/me/messages/?$select=ConversationId & $filter=ConversationId eq '${params.conversationId}'