Get it on Google Play
10-03-2017
 

Integrando Mailchimp con tu web o aplicación mediante API Rest

Mailchimp Logo

Mailchimp Logo

Mailchimp es el sistema para envío de newsletters mas usado del mercado. Dispone de plugins para conectarse con centenares de aplicaciones. En este post voy a explicar como lo haríamos para integrar Mailchimp con nuestra aplicación(En este caso con PHP y Curl).

Mailchimp dispone de una API Rest muy potente, la podéis consultar en el siguiente enlace. Para insertar registros en una lista de mailchimp primero deberemos tener claras tres cosas:

1) El servidor donde se guardan nuestros datos, lo encontraremos en la URL del panel de control de mailchimp(También se encuentra al final de la API Key):

Mailchimp Server URL

Mailchimp Server URL

2) Nuestra API Key, que nos servirá para autenticarnos ante Mailchimp. La podemos encontrar en “Panel de control” > “Account” > “Extras” > “API Keys”.

3) El ID de la lista de mailchimp queremos insertar los datos. La podremos encontrar en “Lista” > “Settings” > “List name and defaults”

Insertar un registro en mailchimp

Ahora que ya lo tenemos todo claro si queremos insertar un registro en Mailchimp a través de su API Rest usando PHP y Curl podemos hacerlo con este simple script:

$datetime=date("d-m-Y H:i:s");

$server="xxxx";
$listid="xxxxxxxx"; 
$apikey="xxxxxxxxxxxxxxxxxxxxxx-xxxx";

$auth = base64_encode( 'user:'.$apikey );

$data = array(
	'apikey'        => $apikey,
	'email_address' => $mail,
	'status'        => 'subscribed',
	'merge_fields'  => array(
		'FNAME' => utf8_encode( $fname ),
		'CAMPO_PERSONALIZADO_1' => utf8_encode( $campoPersonalizado1 ),
		'CAMPO_PERSONALIZADO_2' => utf8_encode( $campoPersonalizado2 ),
		'CAMPO_PERSONALIZADO_3' => utf8_encode( $campoPersonalizado3 )
		)
	);

$json_data = json_encode($data);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://'.$server.'.api.mailchimp.com/3.0/lists/'.$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);

$response = curl_exec($ch);

En fin, espero que os sea útil y buen fin de semana.

Si te a servido, por favor comparte
 

Leave a Reply