簡體   English   中英

如何使用動態模板將 Sendgrid 中的 email 發送給單個收件人並獲取已發送的 HTML 以供保留

[英]How to send an email in Sendgrid to a single recipient using dynamic template and obtain the sent HTML for retention purposes

我目前正致力於將 sendgrid 中的郵件發送與我們的內部 CRM 系統相集成。 我正在使用的用例是在我們的 CRM 中按下特定按鈕時向單個客戶發送自定義的 email。 我在包含手柄的 sendgrid 中創建了一個動態模板,我想用我們的 CRM 系統中的值(例如客戶名稱)替換它。 我的目的是在發送我的 email 時使用 sendgrid api 端點。發送后,我需要獲取發送給客戶的 HTML,以便它可以保留在我們的數據庫中。

“郵件發送”涵蓋了大部分要求,但據我所知,郵件發送不提供響應正文(只是一個狀態代碼),因此我無法獲得 HTML 的副本,我想在其中包含值插入車把的位置。

我注意到您可以查詢 email 活動提要 api 並按主題/電子郵件過濾以找到已發送的消息(我試過了),但響應不包含 HTML。

我還研究了單一發送作為一種替代方案,它確實提供了一個響應主體,但這只允許你發送到一個部分或一個聯系人列表,並且似乎更適合 email 去選擇的人,而不是只有一個。

任何人都可以建議我能夠通過“郵件發送”選項實現所有內容,同時還保留發送的 email 的 HTML 的方法,包括其車把替換件?

我暫時在 postman 中測試 api 調用,所以在這個階段 postman 實現會很好。 我最終將使用 c# ASP.Net web forms 解決方案,查詢 sendgrid api 端點。 我也很欣賞可能需要通過 sendgrid 后台進行一些配置。

成功 postman 請求發送“郵件發送”:

POST /v3/mail/send
Base url: https://api.sendgrid.com
{
  "personalizations": [
    {
      "to": [
        {
          "email": "my@toemailgoeshere.co.uk",
          "name": "API Testing"
        }
      ],
      "subject": "API testing successful",
      "dynamic_template_data": {
      "sellerName": "Mr Seller",
      "sellerEmail": "Test @ Test",
      "telNumber": "0123 456 789"
        }
    }
  ],
  "from": {
    "email": "my@fromemailgoeshere.co.uk",
    "name": "API Testing"
  },
  "template_id" : "templateidfordesigntemplategoeshere"
}

在 sendgrid 后台保存的動態模板中包含的 html 片段的虛擬示例:

...
<p>Best Regards,</p><br>
<p>{{sellerName}}</p>
<p>My Dummy Title</p>
<p>{{sellerEmail}}</p>
<p>01234 567 890</p>
<p>My Dummy Company</p>

我想保留在內部 CRM 系統中的 html 片段示例:

...
<p>Best Regards,</p><br>
<p>Mr Seller</p>
<p>My Dummy Title</p>
<p>Test @ Test</p>
<p>01234 567 890</p>
<p>My Dummy Company</p>

我找到了解決方案,並認為我會分享以防其他人遇到同樣的問題。 我發現了一個 nuget package 用於在 .NET 應用程序中使用 Handlebars.js 模板。 [https://github.com/Handlebars-Net/Handlebars.Net][1] 我首先查詢了 designs sendgrid api 端點以檢索包含把手的模板作為響應。 然后我在我的 crm 的動態值中使用 Handlebars.net 到 pipe,它產生了我需要保留的 html。 我最終通過 api 執行了 sendgrid 郵件發送,使用我剛剛填充的 html,如果郵件發送導致成功錯誤,我將 html 保留在數據庫中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM