Mailchimp几乎是一家完美的公司,除了他们的Node API文档不存在。如何将订阅者添加到我的新列表中并包含他们的名字和姓氏?下面的代码成功添加了订阅者,但没有添加名字和姓氏。
var MCapi = require('mailchimp-api');
MC = new MCapi.Mailchimp('***********************-us3');
addUserToMailchimp = function(user, callback) {
var merge_vars = [
{ EMAIL: user.email },
{ LNAME: user.name.substring(user.name.lastIndexOf(" ")+1) },
{ FNAME: user.name.split(' ')[0] }
];
MC.lists.subscribe({id: '1af87a08af', email:{email: user.email}, merge_vars: merge_vars, double_optin: false }, function(data) {
console.log(data);
}, function(error) {
console.log(error);
});
}; // addUserToMailchimp
答案 0 :(得分:19)
提供的合并变量应作为单个对象传递,而不是对象数组。请参阅下面的示例:
var mcReq = {
id: 'mail-chimp-list-id',
email: { email: 'subscriber-email-address' },
merge_vars: {
EMAIL: 'subscriber-email-address',
FNAME: 'subscriber-first-name',
LNAME: 'subscriber-last-name'
}
};
// submit subscription request to mail chimp
mc.lists.subscribe(mcReq, function(data) {
console.log(data);
}, function(error) {
console.log(error);
});
看起来您在问题中提供了实际的邮件黑猩猩API密钥。如果是这样,您应立即将其删除。