多个收件人SendGrid Google Apps脚本

时间:2018-09-26 12:56:42

标签: google-apps-script sendgrid

我正在创建 Google表格以使用SendGrid发送邮件。

下面是使用Google Apps脚本发送邮件的代码,但是我无法发送给多个收件人。我是根据以下问题改编的:Send emails using Sendgrid with google appscript

它可以工作,但是只向收件人列表的第一个元素发送电子邮件。

function AutoSend2() {
    var SENDGRID_KEY ='MY_KEY';
    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Feuille 1");
    var numRows = sheet.getLastRow() - 1;
    var sheet_ti = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("TEMPLATE_ID");
    var data_ti = sheet_ti.getDataRange().getValues();
    var template_id = data_ti[0][0];
    var data = sheet.getDataRange().getValues();

    var headers = {
        "Authorization" : "Bearer "+ SENDGRID_KEY,

        "Content-Type": "application/json"
    }
    for (ind_to = 0; ind_to <= 15; ind_to++) {
       if (data[0][ind_to] == "EMAILS") {
          break;
       }
       if (ind_to == 15) {
          ind_to = -1;
          break;
       }
    }
    for (i = 1; i < data.length && i <= numRows; i++) {
        var pers = [{
            "to": [
              {
                "email": data[i][ind_to]
              }
             ]
        }]
        var body =
          {
            "template_id": template_id,

            "from": {
              "email": "newsletters@xxx.com",
              "name": "XXX"
            },
            "content": [
              {
                "type": "text/html",
                "value": "XXX"
              }
            ],

            "personalizations":
            pers
          }
        var options = 
          {
            'method': 'post',
            'headers': headers,
            'payload': JSON.stringify(body)
          }
        var response = UrlFetchApp.fetch("https://api.sendgrid.com/v3/mail/send", options)
    }
}

我收到此错误消息:

  

https://api.sendgrid.com/v3/mail/send。发行代码:400。服务条款:{“错误”:[{“消息”:“无效类型。期望:对象,给定:字符串。”,“字段”:“ personalizations.0.to.0”,”帮助”:“ http://sendgrid.com/docs/API_Refer ...

关于如何解决此问题的任何想法?谢谢。

0 个答案:

没有答案