You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Graph API中获取回复邮件的parent_message_id

如何从跨平台回复邮件的Graph API响应中获取父邮件ID

当收到Gmail等其他平台的回复邮件时,Graph API返回的邮件对象里没有直接提供parent_message_id字段,可以通过以下两种方式定位父邮件:

方法1:通过对话ID(conversationId)查询

同属一个邮件对话的所有邮件会共享同一个conversationId,可利用这个ID筛选对话内的所有邮件,再定位父邮件:

  1. 从回复邮件的响应中提取conversationId,示例中的值为:AQQkADAwATM3ZmYAZS01OWRhLTM5MjgtMDACLTAwCgAQAAo6snnrhhJOv0qLJ4Io1Fo=
  2. 调用Graph API查询该对话下的所有邮件:
    GET /me/messages?$filter=conversationId eq 'AQQkADAwATM3ZmYAZS01OWRhLTM5MjgtMDACLTAwCgAQAAo6snnrhhJOv0qLJ4Io1Fo='
    
  3. 在返回的邮件列表中,通过发送时间最早、主题不含Re:前缀的特征找到父邮件,其id就是所需的父邮件ID。

方法2:解析邮件头获取原始父邮件标识

跨平台回复的邮件会在邮件头中携带父邮件的标识,需额外请求获取邮件头后解析:

  1. 从回复邮件的响应中提取邮件自身的id,示例中的值为:AQMkADAwATM3ZmYAZS01OWRhLTM5MjgtMDACLTAw....
  2. 调用Graph API获取该邮件的完整邮件头:
    GET /me/messages/{messageId}/?$select=internetMessageHeaders
    
  3. 在返回的internetMessageHeaders中,找到In-Reply-To或References字段,其值就是父邮件的internetMessageId(格式类似<xxx@xxx.com>)
  4. 用这个internetMessageId查询对应的父邮件:
    GET /me/messages?$filter=internetMessageId eq '<父邮件的internetMessageId>'
    
  5. 从查询结果中提取父邮件的id即可。

内容的提问来源于stack exchange,提问作者Bhavya Ardeshana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 13:01:11