bento icon close

¿Como insertar datos en una lista de contactos a través de la API de Mailify?

Existen varios métodos posibles, le proponemos un ejemplo con lenguaje de programación.
Empecemos por crear un formulario HTML que servira de base para enviar los datos a su lista de contactos. Aquí te damos un ejemplo de formulario con el campo email a rellenar:

 

  • <form action="" method="POST">
  • <input type="text" placeHolder="Email" name="email" />
  • <input type="text" placeHolder="Apellido" name="nom" />
  • <input type="text" placeHolder="Nombre" name="prenom" />
  • <input type="submit">
  • </form>

 

Pasamos al procesamiento de los datos con la API Mailify.

Para utilizar la API Mailify comprueba que la extensión "php_curl" esta activada en tu configuración PHP. (archivo php.ini)


Paso 1 - Copia el código


Como algunos datos son identicos para cada llamada a la API, copie esta función PHP al inicio del archivo que permitirá crear su cadena de inicio y conectarse a la API más facilmente.

<?php        
function post_to_url($url, $data) {        
    $fields = '';        
    foreach($data as $key => $value) {           
        $fields .= $key . '=' . $value . '&';
    }
    rtrim($fields, '&');         
    $post = curl_init();        
    curl_setopt($post, CURLOPT_URL, $url);        
    curl_setopt($post, CURLOPT_POST, count($data));        
    curl_setopt($post, CURLOPT_POSTFIELDS, $fields);        
    curl_setopt($post, CURLOPT_RETURNTRANSFER, 1);         
    $result = curl_exec($post);         
    curl_close($post);     
}  
?>

Como lo puedes ver, para ser llamada, esta función necesita 2 parámetros:

  • Una URL ($url)
  • Datos ($data)

Paso 2 - Encontrar la URL en Mailify y pegarla


Para encontrar la URL, sigue los pasos en nuestra guía aquí.


Para conectarnos a la API usaremos la URL de la lista de contacto ($url). Copia-pega la URL que aparece con este formato en la ventana "Acceso API".


https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw?action=INSERT&Email=contact@domaine.com

Solo necesitamos guardar una parte de la URL, para obtener lo siguiente:

https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw

(URL cortada a partir del "?")


Obtendremos pues:

<?php    
    $url = "https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw"; 
?>

Paso 3 - Enviar los datos


Ahora hay que enviar los datos ($data) a añadir en esta lista:

$data es una tabla que contiene los datos y se presenta de la siguiente forma.

<?php            
$data=array(           
    'action' => 'INSERT',           
    'Email' => $email  );   
?> 

/!\ En este ejemplo $email ha sido inicializado anteriormente con una dirección email.


La casilla "acción" es obligatoria y permite elegir que acción hay que efectuar en los datos.

Tres valores son posibles: 'INSERT', 'UPDATE', 'DELETE'.


Ejemplo con más de una columna


El formulario HTML de ejemplo de arriba contenía unicamente un campo 'Email', la tabla $data sólo contiene el valor 'Email' para apuntar el ejemplo.


/!\ Por defecto, una lista de contactos sólo contiene la columna Email. Si decides añadir columnas a tu lista, habrá que añadirlas en la lista y registrarlas en la tabla $data.


Ejemplo con una lista que contiene las columnas email, apellidos, nombre:

<?php     
$data=array(           
    'action' => 'INSERT',           
    'Email' => $email,           
    'Prenom' => $prenom,           
    'Nom' => $nom  ); 
?>

Una vez los valores presentes en la tabla '$data', basta con enviar esta a la API gracias a este comando.

<?php      
    post_to_url($url, $data); 
?>

Ahora tus datos están en tu lista de contactos.
/!\ Mailify actualiza tu lista de contactos cada 4 minutos. Para forzar la actualización de la aplicación, reinicia la aplicación.


Resumen del archivo de código PHP

<?php    
function post_to_url($url, $data) {     
    $fields = '';     
    foreach($data as $key => $value) {      
        $fields .= $key . '=' . $value . '&';     
    }     
    rtrim($fields, '&');      
    $post = curl_init();     
    curl_setopt($post, CURLOPT_URL, $url);     
    curl_setopt($post, CURLOPT_POST, count($data));     
    curl_setopt($post, CURLOPT_POSTFIELDS, $fields);     
    curl_setopt($post, CURLOPT_RETURNTRANSFER, 1);      
    $result = curl_exec($post);      
    curl_close($post);    
}    
// Recuperamos los valores a enviar   
$url = "https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw";   
$email = $_POST["email"];    
$data=array(     
    'action' => 'INSERT',     
    'Email' => $email);     
// Envío de los datos    
post_to_url($url, $data); 
?>

Para conectarse a la API necesitamos efectuar los siguientes pasos:


Paso 1 - Recuperar la URL de nuestra lista de contactos

Para encontrar la URL, sigue los pasos en nuestra guía aquí.


Paso 2 - Copiar la URL de la acción a efectuar

(INSERT, UPDATE, DELETE)


Ejemplo


Para nuestro ejemplo la acción a efectuar será la inserción de un nuevo contacto.


https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw?action=INSERT&Email=max@domaine.com

Esta URL esta compuesta por dos partes:


1. → https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw que permite identificar tu lista

2. → ?action=INSERT&Email=max@domaine.com que representa los datos enviados en la URL.


¿Qué significan estos carácteres?


La cadena de caracter "action=INSERT" permite ejectuar la acción a efectuar (INSERT significa insertar en una lista).
El caracter '&' permite de separar los diferentes datos enviados en la URL.
Email=email@dominio.com. Corresponde a la columna "Email" que será rellenado con el valor "email@dominio.com".


/!\ Si tu lista contiene varias columnas, la url mostrada por Mailify se completa con los diferentes datos.


Ejemplo - URL que contiene un campo email, apellidos y nombre


https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw?action=INSERT&Email=contact@domaine.com&Apellidos=valeur&Nombre=valeur

Paso 3 - Pegar la URL


Una vez obtenemos la URL, sólo falta reemplazar el contenido de la variable URL por tu URL con tus datos. (El resto del código ASP permite enviar la solicitud, no hay que editarlo.)

<%
     url="https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw?action=INSERT&Email=contact@domaine.com&Nom=valeur&Prenom=valeur"     
     Set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP.6.0")     
     xmlhttp.open "GET", url, false     
     xmlhttp.send data 
%>