En poursuivant votre navigation, vous acceptez l'utilisation de cookies à des fins d'analyse, de pertinence et de publicité. Pour en savoir plus et gérer vos paramètres, cliquez ici.

×

Manuel Sarbacane
Découvrez en détails toutes les fonctionnalités de Sarbacane

L'API Sarbacane

L'API Sarbacane est une extension disponible dans Sarbacane. En l'activant, vous pouvez ajouter / modifier / supprimer des données dans vos listes de contacts et listes noires via de simples requêtes HTTP avec la méthode GET.


Dès son activation, un bouton « Accès API » s'ajoute dans la liste des actions sur vos listes.

API - Sarbacane

Insérer des données dans une liste de contacts via l'API Sarbacane

Comment insérer des données dans une liste de contacts via l'API Sarbacane ?
Beaucoup de méthodes sont possibles, nous vous proposons un exemple par langage de programmation.
Commençons par créer un formulaire HTML qui servira de base pour envoyer les données dans votre liste de contacts Sarbacane.


Voici un exemple de formulaire comprenant un champ email à saisir :

<form action="" method="POST">
        <input type="text" placeHolder="Email" name="email" />
        <input type="text" placeHolder="Nom" name="nom" />
        <input type="text" placeHolder="Prenom" name="prenom" />
        <input type="submit">
</form>

Passons au traitement des données avec l'API Sarbacane.



Pour utiliser l'API Sarbacane vérifiez que l'extension "php_curl" est bien activée dans votre configuration PHP. (fichier php.ini)


Passons à l'action.

Comme certaines données restent les mêmes pour chaque appel de l'API, copiez cette fonction PHP au début du fichier qui va permettre de créer votre chaîne de départ et se connecter à l'API plus facilement.

<?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);
}
?>

Comme vous avez pu le voir, pour être appelée cette fonction a besoin de 2 paramètres:

  • une URL ($url)
  • des données ($data)


Dans Sarbacane, l'URL est disponible dans le menu "Listes de contacts" pour chaque liste de contacts créée en cliquant sur « Accès API ».

Screen Sarbacane - Accées API LDD

/!\ Si l'option "accès API " n'apparait pas, vérifiez que celle-ci est bien activée dans vos extensions. Menu "extensions" (1) puis "API liste de contacts / listes de désinscription" (2).


Screen Sarbacane - Activation API

Au niveau d'une liste de contact préalablement créée, cliquez sur "Accès API" pour voir apparaitre une fenêtre expliquant les fonctions d'ajout, de modification, et de suppression des contacts dans la liste avec les URLS correspondantes.


Screen Sarbacane - Info API

Pour se connecter à l'API nous allons utiliser l'URL de la liste de contacts ($url). Copiez-collez l'URL qui se présente sous cette forme disponible dans la fenêtre "Accès API":


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

Nous allons avoir besoin de garder qu'une partie de sorte à obtenir une url du type:

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

(troncature à droite du "?")


Nous obtenons donc:

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

Il faut maintenant envoyer les données ($data) à ajouter dans cette liste:

$data est un tableau comprenant les données et se présentent sous cette forme.

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

/!\ Dans cet exemple $email a déjà été initialisé préalablement avec une adresse email.


La case "action" est obligatoire est permet de choisir quelle action est à effectuer sur les données.

Trois valeurs sont possibles : 'INSERT', 'UPDATE', 'DELETE'.
Le formulaire HTML d'exemple ci-dessus comprenait uniquement un champ 'Email' le tableau $data ne contient donc que l'entrée 'Email' pour noter exemple.


/!\ Par défaut une liste de contacts ne comporte que la colonne Email. Si vous décidez d'ajouter des colonnes à votre liste, il faudra les ajouter dans votre liste et les renseigner dans le tableau "$data".


Exemple avec une liste comprenant la colonne email, nom, prénom :

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

Une fois les valeurs présentes dans le tableau '$data', il suffit d'envoyer celle-ci à l’API grâce à cette commande.

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

Vos données sont désormais dans votre liste de contacts.
/!\ Sarbacane met à jour votre liste de contacts toutes les 4 minutes. Pour forcer la mise à jour de votre liste, redémarrez le logiciel.


Récapitulatif du fichier de code 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);
}

// On récupère les valeurs à envoyer
$url = "https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw";
$email = $_POST["email"];

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

//Envoi des données
post_to_url($url, $data);
?>

Pour se connecter à l'API nous avons besoin de récupérer l'URL de notre liste de diffusion.
L'url est affichée dans le logiciel Sarbacane dans le menu "listes de diffusion" puis "accès api".


Screen Sarbacane - Accées API LDD

/!\ Si l'option "accès API " n'apparait pas, vérifiez que celle-ci est bien activée dans vos extensions. Menu "extensions" (1) puis "API liste de contacts / listes de désinscription" (2).


Screen Sarbacane - Activation API

En cliquant sur "Accès API" on ouvre une liste d'option permettant d'ajouter, modifier, supprimer des contacts de la liste de diffusion.


Screen Sarbacane - Info API

Copiez-collez l'url de l'action à effectuer (INSERT, UPDATE, DELETE)


Pour notre exemple l'action à effectuer sera une insertion.

Exemple:

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

Cette url est composée de deux parties :


La première partie :
https://api-sd.sarbacane.com/lists/325/7CsS69R44UaSy7TazcRLMw qui permet d'identifier votre liste


Puis la seconde :
?action=INSERT&Email=max@domaine.com qui représente les données envoyées dans l'url.



Décomposons cette chaîne de caractères :


La chaîne de caractères "action=INSERT" permet d'exécuter l'action à effectuer (INSERT signifie insertion dans une liste)


Le caractère '&' permet de séparer les différentes données envoyées dans l'url.

Email=max@domaine.com correspond à la colonne "Email" qui sera renseignée avec la valeur "max@domaine.com".

/!\ Si votre liste dispose de plusieurs colonnes, l'url affichée par Sarbacane se complète avec les différentes données.


Voici un exemple avec une url comprenant un champ email, nom et prénom:

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

Une fois l'url obtenue il ne reste plus qu'à remplacer le contenu de la variable URL par votre URL comprenant vos données. (Le reste du code ASP permet d'envoyer la requête, il n'est donc pas à éditer.)

<%
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
%>


Insérer des données dans une liste noire via l'API Sarbacane

La méthode est la même que pour insérer des données dans une liste de contacts via l'API, seul l'URL d'appel de l'API change.


Menu
Go Top

En poursuivant votre navigation, vous acceptez l'utilisation de cookies à des fins d'analyse, de pertinence et de publicité. Pour en savoir plus et gérer vos paramètres, cliquez ici.

×