I need an example of how to subscribe a email address to mailchimp newsletter.
Please check new api link here: https://bitbucket.org/mailchimp/mailchimp-api-php
This is new malichimp api and I am not sure how to use it. :(
For MailChimp 2.0 API, not for 1.3.
Please somebody provide an example on how to subscribe user to mailchimp.
Thank You.
Edit1: Already tried following code, but not working:
$merge_vars = array('MM1'=>$mm1);
$MailChimp = new Mailchimp($apikey);
$result = $MailChimp->call('lists/subscribe', array(
'id' => $listid,
'email' => array('email'=>$email),
'merge_vars' => $merge_vars,
'double_optin' => false,
'update_existing' => true,
'replace_interests' => false,
'send_welcome' => false,
));
print_r($result);
But not working. Throwing following error: Fatal error: Call to a member function call() on a non-object in subscribe.php on line 22
Subscribe through php using curl.
$apikey = 'xxxxxxxxxx'; //your apikey
$listId = 'xxxxxxxxxx'; // your list id
$endpoint = "http://yourdatacenter.api.mailchimp.com/3.0/lists/"; // find your datacenter in your apikey( xxxxxxxxxxxxxxxxxxxxxxxx-us13 <= this is your datacenter)
$auth = base64_encode( 'user:'. $apikey );
$data = array(
'apikey' => $apikey,
'email_address' => 'yourvalid_email_address',
'status' => 'subscribed',
'merge_fields' => array());
$json_data = json_encode($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $endpoint.$listId.'/members/');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json',
'Authorization: Basic '.$auth));
curl_setopt($ch, CURLOPT_USERAGENT, 'PHP-MCAPI/2.0');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data);
$result = curl_exec($ch);
echo "<pre>"; // Response form mailchimp
print_r(json_decode($result,true));
Here is with Try & Catch (example for when dup emails)
header('Content-Type: application/json');
include_once 'Mailchimp.php';
$api_key = '';
$list_id = '';
$email = '[email protected]';
$merge_vars = array();
$Mailchimp = new Mailchimp($api_key);
$Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
try{
$subscriber = $Mailchimp_Lists->subscribe(
$list_id,
array('email'=>htmlentities($email)),
$merge_vars,
false,
false,
false,
false
);
echo json_encode(array('status' => !empty($subscriber['leid'])?'submitted':'error'));
} catch(Mailchimp_Error $e){
echo json_encode(array(
'status' => 'error',
'message' => $e->getMessage()
));
}
Readmore about subscribe()
: https://apidocs.mailchimp.com/api/2.0/lists/subscribe.php
Referring to the documentation, this should be like so:
$merge_vars = array('MM1'=>$mm1);
$listid = 'YOURLISTID';
$MailChimp = new Mailchimp($apikey);
$result = $MailChimp->lists->subscribe($listid,
array('email'=>"[email protected]"),
$merge_vars,
false,
true,
false,
false
);
print_r($result);
Tested and working.
this might be helpful for some, simple mailchimp subscriber API code sample with php
mailchimp subscriber API code example in PHP
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With