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

如何用Microsoft Graph API转发邮件并自定义主题?及IMAP认证失败问题

解决方案:自定义转发邮件主题

替代方案:通过草稿邮件实现自定义主题

Graph API原生的forward接口确实不支持修改转发邮件的主题,你可以改用创建转发草稿→修改主题→发送草稿的流程来实现需求,具体步骤如下:

  • 创建转发草稿
    调用POST /me/messages/{message-id}/createForward接口,传入收件人(toRecipients)和备注(comment)参数,生成包含原邮件内容的草稿邮件。

  • 修改草稿主题
    获取上一步返回的草稿ID,调用PATCH /me/messages/{draft-id}接口,在请求体中指定自定义的subject字段。

  • 发送草稿邮件
    调用POST /me/messages/{draft-id}/send接口,完成最终的邮件发送。

Python示例代码

import requests
import json

# 替换为实际的访问令牌和原邮件ID
access_token = "YOUR_ACCESS_TOKEN"
original_msg_id = "TARGET_MESSAGE_ID"

# 1. 创建转发草稿
create_draft_url = f"https://graph.microsoft.com/v1.0/me/messages/{original_msg_id}/createForward"
headers = {
    "Authorization": f"Bearer {access_token}",
    "Content-Type": "application/json"
}
draft_payload = {
    "toRecipients": [
        {
            "emailAddress": {
                "address": "recipient@example.com"
            }
        }
    ],
    "comment": "自定义转发备注"
}
draft_res = requests.post(create_draft_url, headers=headers, json=draft_payload)
draft_msg = draft_res.json()
draft_id = draft_msg["id"]

# 2. 修改草稿主题
update_draft_url = f"https://graph.microsoft.com/v1.0/me/messages/{draft_id}"
update_payload = {
    "subject": "[自定义前缀] 原邮件主题内容"
}
requests.patch(update_draft_url, headers=headers, json=update_payload)

# 3. 发送草稿
send_draft_url = f"https://graph.microsoft.com/v1.0/me/messages/{draft_id}/send"
requests.post(send_draft_url, headers=headers)

注意事项

  • 确保你的应用已申请Mail.Send和Mail.ReadWrite权限,否则会触发权限不足的错误。
  • 该流程会完整保留原邮件的格式、附件等内容,同时支持完全自定义转发主题。

内容的提问来源于stack exchange,提问作者Javier Perez

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 09:50:17