bar*_*und 10 javascript api mailchimp
提出此请求时:
// Subscribe a new account holder to a MailChimp list
function subscribeSomeoneToMailChimpList()
{
var options =
{
"apikey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"id": "xxxxxx",
"email":
{
"email": "me@example.com"
},
"send_welcome": false
};
var mcSubscribeRequest = UrlFetchApp.fetch("https://us4.api.mailchimp.com/2.0/lists/subscribe.json", options);
var mcListObject = Utilities.jsonParse(mcSubscribeRequest.getContentText());
}
Run Code Online (Sandbox Code Playgroud)
返回此响应:
请求失败,https://us4.api.mailchimp.com/2.0/lists/subscribe.json返回代码500.截断的服务器响应:{"status":"error","code": - 100,"name": "ValidationError","error":"您必须指定apikey值"}(使用muteHttpExceptions选项检查完整响应)(第120行,文件"v2")
第120行UrlFetchApp.fetch是调用的行.
API密钥有效(我已经使用不包含关联数组的简单API调用进行了测试).当我将API密钥直接附加到基本URL并将其从中删除时options,我收到一条错误消息,指出列表ID无效.然后,当我将列表ID直接附加到基本URL并将其删除时options,我收到一条错误消息,指出该电子邮件地址必须是关联数组形式.
我的问题是:使用上面的格式,如何发送包含关联数组的请求?
相关的API文档可以在这里找到.
bar*_*und 19
经过进一步的研究和修补,我能够解决这个问题:
https://<dc>.api.mailchimp.com/2.0/lists/subscribe.json?apikey=<my_api_key>&id=<my_list_id>&email[email]=test@test.com&merge_vars[FNAME]=John&merge_vars[LNAME]=Doe&double_optin=false&send_welcome=false
Run Code Online (Sandbox Code Playgroud)
凡<dc>应与你的API密钥破折号后的部分进行更换.例如, " US1 ", " US2 ", " UK1 ",等等.