Integrating Mailchimp lists
In this section is reported an example about the integration of a 4WS.Platform application and MailChimp.
For a more detail documentation, see the MailChimp APIs, accessible through the following link: MailChimp API
Two steps are required in order to integrate MailChimp:
a client side js action is defined and used to communicate with another one defined on the server side, typically linked to an “after save” event in a grid or form.
a server side js action where the real integration is carried out; the example reported below, a snipped is showed to add/update a contact in a MailChimp list.
Server side js action
utils.log('vo.mailPersonale: '+vo.mailPersonale,'DEBUG');
utils.log('vo.nome: '+vo.nome,'DEBUG');
utils.log('vo.amministratore: '+vo.amministratore,'DEBUG');
var headers = new java.util.HashMap();
headers.put('Authorization','Basic 3e977ace7e94468143f9444dff91733b-us7');
json = utils.getJSONObject({
"email_address": vo.mailPersonale,
"status": "subscribed",
"merge_fields": {
"FNAME": vo.nome,
"LNAME": vo.amministratore
}
});
try {
json=utils.getWebContentWithHeaders('http://us7.api.mailchimp.com/3.0/lists/295e2088ea/members/' //uri
, false // replaceVariables
, 'POST' //httpMethod
, "application/json" //contentType
, json// requestBody
, null //user
, null// pwd
, null// charSet
, headers //headers
);
utils.log('response : '+json,'DEBUG');
}catch (e){
var mail=new java.lang.String(vo.mailPersonale);
var hash=org.apache.commons.codec.digest.DigestUtils.md5Hex(mail);
utils.log('error: '+e.message,'ERROR');
json=utils.getWebContentWithHeaders('http://us7.api.mailchimp.com/3.0/lists/295e2088ea/members/'+ hash //uri
, false // replaceVariables
, 'PUT' //httpMethod
, "application/json" //contentType
, json// requestBody
, null //user
, null// pwd
, null// charSet
, headers //headers
);
utils.log('response : '+json,'DEBUG');
}
PreviousAdding a where clause to a business component linked to gridNextFormatting a number as a currency value to use it inside an email template
Last updated
Was this helpful?