SendGrid API v3:回复主题

问题描述 投票:0回答:2

我正在尝试使用 SendGrid v3 API 发送电子邮件作为对上一个线程的回复。但它始终在 Outlook 中显示为新的电子邮件线程。我正在使用 “Message-ID”、“In-Reply-To”和“References” 字段,但它总是无法在单线程下显示。我在here引用此线程来设置标题。

SendGrid 文档没有指定 v3 是否支持回复上一个线程。任何实现电子邮件线程对话的方法都是值得赞赏的。

c# sendmail .net-standard-2.0 sendgrid-api-v3 email-threading
2个回答
8
投票

好的。我在这里找到了关键。我缺少 "<>" 尖括号,看起来 SendGrid 非常重视它。这就是标题部分的样子。

"headers": {
    "Message-ID": "<[email protected]>",
    "In-Reply-To": "<[email protected]>",
    "References": "<[email protected]>"
}

检查标题值周围的尖括号。


0
投票

A 正在努力解决同样的问题,所以这是我的解决方案概述 - 希望它有所帮助!

首先如何找到 Message-ID?

您可以在通过 SendGrid“发送”API 发送电子邮件时指定此项。示例 POST 调用的 JSON 正文可能如下所示:

{"personalizations":[{"to":[{"email":"[email protected]","name":"John Doe"}],"subject":"Email title"}],"content": [{"type": "text/plain", "value": "Heya!"}],"from":{"email":"[email protected]","name":"myname"},"reply_to":{"email":"[email protected]","name":"myname"},"headers": {
"Message-ID": "<[email protected]>"}}

坦率地说,我还不知道“Message-ID”结构或格式的限制,但您可以查看您收到的其他电子邮件中的示例,例如在 gmail 中“显示原始消息”>>“消息 ID”

现在,当您想要发送电子邮件作为对上一封邮件的回复时,您的 POST 调用的正文可能如下所示:

{"personalizations":[{"to":[{"email":"[email protected]","name":"John Doe"}],"subject":"Email title"}],"content": [{"type": "text/plain", "value": "This is my reply!"}],"from":{"email":"[email protected]","name":"myname"},"reply_to":{"email":"[email protected]","name":"myname"},"headers": {
"Message-ID": "<[email protected]>",
"In-Reply-To": "<[email protected]>",
"References": "<[email protected]>"}}

很高兴听到更多关于此的细节/想法!

附注我遇到了一些令人困惑的事情:

  • SendGrid 不提供与此相关的文档!
  • Message-ID 与 SendGrid 的内部消息 ID 不同,用于跟踪电子邮件事件和活动源。
  • 您也不应该像我一样将 Message-ID 与 x-message-id 混合在一起,当您发送电子邮件时,您会在 API 响应的标头中收到该 ID。

祝你好运!

© www.soinside.com 2019 - 2024. All rights reserved.