1

This is my List in my MailChimp. List name: Clients

enter image description here

I am trying to send an email to email: "rajbiswas176@gmail.com" by using MailChimp API.

My PHP code is here:

<?php
/*
$apikey = 'my_api-key-goes_here';
$list_id = 'list_id_of_Clients_goes_here';
*/

    $apikey = 'my_api-key-goes_here';



    $to_emails = array('rajbiswas176@gmail.com');
    $to_names = array('Raj');

    $message = array(
        'html'=>'Yo, this is the <b>html</b> portion',
        'text'=>'Yo, this is the *text* portion',
        'subject'=>'This is the subject',
        'from_name'=>'Me!',
        'from_email'=>'raj.biswas936@gmail.com',
        'to_email'=>$to_emails,
        'to_name'=>$to_names
    );

    $tags = array('WelcomeEmail');

    $params = array(
        'apikey'=>$apikey,
        'message'=>$message,
        'track_opens'=>true,
        'track_clicks'=>false,
        'tags'=>$tags
    );

    $url = "http://us1.sts.mailchimp.com/1.0/SendEmail";

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url.'?'.http_build_query($params));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    $result = curl_exec($ch);
    echo $result;
    curl_close ($ch);

    $data = json_decode($result);
    echo "Status = ".$data->status."\n";
 ?>

But when I am running this script, the output I get is "Status =". And the mail which I am trying to send is not sent also. Where am I wrong? How can I send email to a particular email from the list using MailChimp API

Thank you in advance.

RajB009
  • 417
  • 2
  • 7
  • 19
  • Possible duplicate of [How to send email through MailChimp 3.0 api?](https://stackoverflow.com/questions/31718660/how-to-send-email-through-mailchimp-3-0-api) – Nirali May 08 '18 at 10:16
  • There is no "SendEmail" endpoint in API v3.0. check https://stackoverflow.com/a/36579507/6429700 – Nirali May 08 '18 at 10:18

1 Answers1

-1
$email = 'EMAIL_ADDRESS';
$list_id = 'LIST_ID';
$api_key = 'API_KEY';

$data_center = substr($api_key,strpos($api_key,'-')+1);

$url = 'https://'. $data_center .'.api.mailchimp.com/3.0/lists/'. $list_id .'/members';

$json = json_encode([
    'email_address' => $email,
    'status'        => 'subscribed', //pass 'subscribed' or 'pending'
]);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_USERPWD, 'user:' . $api_key);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
$result = curl_exec($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $status_code;