我正在编写一个脚本,该脚本获取Google工作表数据并上传我的mailchimp订阅者数据,其中编辑的单元格值作为更新的合并标签发送。原始代码来自这里。我已经让脚本成功运行,接受这个错误:
"Invalid Resource","status":400,"detail":"Blank email address"
我根据 mailchimp api 文档中的文档理解错误,但我不确定为什么它无法识别脚本中的订阅者数据:
var emHash = md5(em.toLowerCase()); //this is pulled from my md5 function
var payload = JSON.stringify({
"status_if_new": "subscribed",
"email_address": em,
"merge_fields": {
"LEAD": lead,
//rest of vars following same syntax
}
});
var options = {
"headers" : headers,
"payload": payload,
"method" : "put",
"muteHttpExceptions" : true
};
var response = UrlFetchApp.fetch('https://us15.api.mailchimp.com/3.0' + '/lists/' + 'xxxxxxx' + '/members/' + emHash,options);
Logger.log(response);
}
最后一个是通过编辑触发的函数,以便通过上面的函数发送更改的值
function onEdit(e) {
var activeSheet = e.source.getActiveSheet();
var range = e.range;
var rowedited = range.getRowIndex();
if (activeSheet.getName() !== "ATTENDANCE"){
return;
Logger.log("Oops :(");
}
else {
var values = sheet.getRange(rowedited, 1, 1, 13).getValues()[0];
var em = values[2];
var lead = values[1];
//remaining vars omitted for brevity
sendToMailChimp_(em,lead...[etc.]);
}
有什么想法吗?
我想
通了 - 我拉了一个业余动作,并将列归因于错误的数组元素......所以是的,我从 1 而不是 0 开始
脸掌
它现在正在工作!