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

如何在Microsoft Graph API的Reply/ReplyAll中修改收件人地址

如何通过Microsoft Graph API实现带自定义收件人的邮件回复

由于Microsoft Graph API的reply和replyAll接口确实不支持修改收件人列表,要实现类似Outlook的自定义收件人回复功能,你需要手动构造回复邮件并发送,具体步骤如下:

1. 获取原邮件的关键信息

调用GET /me/messages/{message-id}接口获取原邮件核心数据,需用到的字段包括:

  • subject:用于构造回复主题(添加Re:前缀)
  • body:原邮件内容,用于在回复中引用
  • from/toRecipients/ccRecipients:原邮件收发件人信息,可作为自定义收件人的参考

2. 构造自定义回复邮件

按需修改收件人列表,同时按回复格式组装邮件内容:

  • 主题:在原邮件主题前添加Re:(全部回复场景可保留主题逻辑,但自定义收件人无需依赖原接口规则)
  • 收件人:直接在toRecipients、ccRecipients、bccRecipients字段中设置目标邮箱地址,支持添加新收件人、移除原有收件人
  • 正文:将原邮件内容以引用格式(如Outlook灰色块)插入到回复内容上方。原邮件为HTML格式时保留引用的HTML结构;文本格式时用>前缀标记引用内容。

3. 发送构造好的邮件

调用POST /me/sendMail接口发送自定义回复邮件,示例请求体如下:

{
  "message": {
    "subject": "Re: 原邮件主题",
    "body": {
      "contentType": "HTML",
      "content": "<p>你的回复内容</p><hr><p><strong>原邮件内容:</strong></p><blockquote>原邮件的HTML内容</blockquote>"
    },
    "toRecipients": [
      {
        "emailAddress": {
          "address": "new-recipient@example.com"
        }
      },
      {
        "emailAddress": {
          "address": "original-sender@example.com"
        }
      }
    ],
    "ccRecipients": [
      {
        "emailAddress": {
          "address": "cc-recipient@example.com"
        }
      }
    ],
    "conversationId": "原邮件的conversationId"
  },
  "saveToSentItems": true
}

注意事项

  • 设置conversationId字段(取自原邮件的conversationId)可让回复邮件显示在原会话线程中,保持会话关联
  • saveToSentItems设为true可将邮件保存到已发送文件夹,与reply接口行为一致

内容的提问来源于stack exchange,提问作者Sandeep Bhutani

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 09:40:33