c# – SendGrid v3 API – 使用带有空/无内容的模板发送邮件

我正在尝试使用SendGrid v3发送电子邮件.

我正在使用官方的csharp nuget包:https://github.com/sendgrid/sendgrid-csharp/

我希望使用一个事务模板,其中我定义了一系列替换标记.简单的替换值,如-firstname-等.

我定义的事务模板基本上已经定义了所有必需的信息/内容/主体.我只希望使用这个模板,并将替换标签替换为我在有效负载中定义的Personalization.SubstututionTags.

文档建议我必须在有效载荷中发送内容 – 事实上,如果我发送没有任何“内容”的电子邮件,我将收到错误状态代码400.

07001

The content param is required. You may not send an email without the
content parameter. This is to prevent you from sending an empty email
to your recipients.

如果我只想使用模板中的内容,我应该在内容中包含哪些内容?

如果我包含一些任意内容,如

      'content': [
        {
          'type': 'text/html',
          'value': 'I\'m replacing the <strong>body tag</strong>'
        }
      ],

它不会用模板覆盖模板中的内容吗?

提前致谢!

最佳答案 这是相反的方式.将填充模板正文,无论您在何处拥有<%body%>,您在API调用内容中发送的任何内容都将为
put in the Template.

您必须在API调用中传递内容,但它可以只是“”.你必须把<%body%>模板中的标签,但可以注释掉:<! – <%body%> – 取代.

这是SendGrid理解导致此障碍的要求,他们正在努力删除它,但还没有ETA.

点赞