Recuperare lista da MailChimp con PHP

Recuperare lista da MailChimp con PHP

In questi giorni sto combattendo con vari servizi web per l'invio di newsletter.

Oggi è toccato a MailChimp!

Nello specifico, avevo bisogno di recuperare tutti gli iscritti da una determinata lista, usando le API v3 e PHP.

Per queste API ancora non esistono degli SDK dedicati, ma è possibile usare cURL per reperire i dati in formato REST.

Prima di iniziare ci servono tre informazioni:

  • la API KEY -> potete crearla facilmente nelle impostazioni del vostro account
  • ID LISTA -> una volta creata la lista, entrate nelle relative impostazioni; lo trovate a fine pagina
  • DATA CENTER -> è l'ultima parte della API KEY, ma lo vedete anche nel vostro url; è simile a us12

Bene, una volta ottenute queste info, aprite un file PHP e buttateci dentro questo:

$API_KEY = '';
$MC_ROOT = 'https://us12.api.mailchimp.com/3.0/'; // IL MIO DATA CENTER È us-12
$ID_LIST = '';
$url = $MC_ROOT . 'lists/' . $ID_LIST . '/members';

$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_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $result;

Se tutto è impostato bene, il codice vi manderà in output una stringa in fromato JSON.