/customers/{id} (GET)
Cette méthode permet de récupérer les informations d'un profil en particulier.
Endpoint : https://social-sb.com/api/v2/customers/{id}
Verb : GET
Paramètres obligatoires :
id
: identifiant SPREAD
Paramètres complémentaires :
Aucun
Réponse :
"customer": {
"id": "123456",
"lastName": "Doe",
"firstName": "John",
"email": "email-example@gmail.com",
"country": null,
"city": null,
"address": null,
"address2": null,
"address3": null,
"zip": null,
"phone": null,
"mobile": null,
"lang": "fr",
"birthday": null,
"gender": null,
"createdAt": "2018-04-10T14:15:48+0000",
"updatedAt": "2018-05-21T14:06:47+0000",
"isFan": "0",
"isFollow": "0",
"isFanLinkedin": "0",
"isBuyer": "0",
"actionCount": "0",
"lastActionDt": null,
"lastOrderDt": null,
"cagnotteAmount": "99",
"externalId" : null,
"company": "",
"fonction": "",
"tags" : [
"tag1", "tag2", "tag3"
],
"custom_fields": [
"34567" => "Sport:Basket",
"56789" => "Logement:Appartement"
],
"status" : "Statut bronze"
}
Exemple d'appel PHP :
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers/123456");
// Auth avec la clé publique et la clé privée (voir dans Paramétrage > Tracker)
curl_setopt($curl, CURLOPT_USERPWD, "clef_public:clef_privee");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$curl_return = curl_exec($curl);
var_dump($curl_return);
curl_close($curl);
/customers/ (GET)
Permet de récupérer tous les profils de la CRM (pour un site_id)
Endpoint : https://social-sb.com/api/v2/customers/
Verb : GET
Paramètres obligatoires :
Aucun
Paramètres complémentaires :
Aucun
Réponse :
"customers": [
{
"id": "123456",
"lastName": "Doe",
"firstName": "John",
"email": "email-example@gmail.com",
"country": null,
"city": null,
"address": "chemin Odette Vidal",
"address2": null,
"address3": null,
"zip": null,
"phone": "0235000000",
"mobile": "0600000000",
"lang": "fr",
"birthday": null,
"gender": "female",
"createdAt": "2017-04-12T08:10:19+0000",
"updatedAt": "2017-04-12T10:10:35+0000",
"isFan": "0",
"isFollow": "0",
"isFanLinkedin": "0",
"isBuyer": "1",
"actionCount": "0",
"lastActionDt": null,
"lastOrderDt": null,
"cagnotteAmount": null,
"externalId" : null,
"company": "",
"fonction": "",
"tags" : [
"tag1", "tag2", "tag3"
]
},
{
"id": "123457",
"lastName": "Doe",
"firstName": "Jane",
"email": "email-example2@gmail.com",
"country": null,
"city": null,
"address": "157, place de Bouvier",
"address2": null,
"address3": null,
"zip": null,
"phone": "0235100000",
"mobile": "0620000000",
"lang": "fr",
"birthday": null,
"gender": "male",
"createdAt": "2017-04-12T08:10:50+0000",
"updatedAt": "2017-04-12T10:11:03+0000",
"isFan": "0",
"isFollow": "0",
"isFanLinkedin": "0",
"isBuyer": "1",
"actionCount": "0",
"lastActionDt": null,
"lastOrderDt": null,
"cagnotteAmount": null,
"externalId" : null,
"company": "",
"fonction": "",
"tags" : ""
}
],
"count": 2,
"nextPageUrl": "http://social-sb.com/api/v2/customers?maxResults=25&startAt=2"
La clé nextPageUrl
contient l'url permettant de récupérer les prochains customers.
Exemple d'appel PHP :
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers");
// Auth avec la clé publique et la clé privée (voir dans Paramétrage > Tracker)
curl_setopt($curl, CURLOPT_USERPWD, "clef_public:clef_privee");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$curl_return = curl_exec($curl);
var_dump($curl_return);
curl_close($curl);
Faire une recherche précise :
Il est possible d'affiner la liste retournée en passant des paramètres GET.
Les paramètres d'affinage possibles :
createdAfter
⇒ seuls les customers créés après la date passée en paramètre seront remontés
createBefore
⇒ seuls les customers créés avant la date passée en paramètre seront remontés
modifiedAfter
⇒ seuls les customers modifiés après la date passée en paramètre seront remontés
modifiedBefore
⇒ seuls les customers modifiés avant la date passée en paramètre seront retournés
email
⇒ seul le customer avec l'adresse email passée en paramètre sera retourné
lastName
⇒ seuls les customers ayant le même nom de famille que celui passé en paramètre seront retournés
firstName
⇒ seuls les customers ayant le même nom de famille que celui passé en paramètre seront retournés
zipcode
⇒ seuls les customers ayant le même code postal que celui passé en paramètre seront remontés
city
⇒ seuls les customers ayant la même ville que celle passée en paramètre seront retournés
country
⇒ seuls les customers ayant le même pays que celui passé en paramètre seront retournés. Attention : les valeurs du pays suivent la norme ISO ALPHA-2 Code
phoneNumber
⇒ seuls les customers ayant le même numéro de téléphone fixe seront remontés
mobilePhoneNumber
⇒ seuls les customers ayant le même numéro de téléphone mobile seront remontés
caseInsensitive
⇒ les recherches sur des chaines de caractères ne sera pas sensible à la casse. Utilisation : /customers?caseInsensitive=1
showCustomFields
⇒ permet d'afficher les valeurs des champs personnalisés des customers. Utilisation : /customers?showCustomFields=1
externalId
⇒ seul le customer ayant le même external ID que celui passé en paramètre sera remonté
ids
⇒ une liste d'IDs séparés par une virgule. Seuls les profils avec ces IDs ressortiront de l'appel. Cette option se cumule avec les filtres ci-dessus.
Les paramètres sur la pagination :
startAt
⇒ permet de commencer la liste des campagnes à partir de l'occurence passée en paramètre
maxResults
⇒ permet de limiter le nombre de campagnes remontées par pages (max 5000)
?maxResults=25,startAt=25
/customers/ (POST)
Permet de créer un nouveau profil.
Endpoint : https://social-sb.com/api/v2/customers/
Verb : POST
Paramètres obligatoires :
email
: Email du customer à créer (dans le payload "contact")
Paramètres complémentaires :
lastName
: Nom de famille du customer à créer
firstName
: Prénom du customer à créer
country
: Pays
city
: Ville
address
: Adresse du customer à créer
address2
: Complément d'adresse à créer
address3
: Complément d'adresse à créer
zip
: Code postal
phone
: numéro de téléphone fixe
mobile
: numéro de téléphone mobile
lang
: langue du customer
birthday
: Date d'anniversaire, le format doit être "YYYY-mm-dd"
gender
: Genre du customer. Les valeurs possibles sont "male" ou "female"
isFan
: Est fan de la page Facebook (1 = oui; 0 = non)
isFollow
: Suit la page Twitter (1 = oui; 0 = non)
isFanLinkedin
: Fan de la page Linkedin (1 = oui; 0 = non)
isBuyer
: Est client (1 = oui, 0 = non),
externalId
: Un identifiant unique du customer,
company
: L'entreprise du customer,
fonction
: Le job du customer,
tags
: permet d'ajouter des tags de profils. Les tags doivent être renseigné dans un tableau (exemple : array("tag1", "tag2", "tag3"))
custom_fields
: permet d'ajouter des valeurs aux champs personnalisés. Les champs personnalisés doivent être renseignés dans un tableau (exemple : array(id_champ_perso1 ⇒ "valeur", id_champ_perso ⇒ "valeur"))
Réponse :
"customer": {
"id": "123456",
"lastName": "Doe",
"firstName": "John",
"email": "email-example@gmail.com",
"country": null,
"city": null,
"address": null,
"address2": null,
"address3": null,
"zip": null,
"phone": null,
"mobile": null,
"lang": "fr",
"birthday": null,
"gender": null,
"createdAt": "2018-04-10T14:15:48+0000",
"updatedAt": "2018-05-21T14:06:47+0000",
"isFan": "0",
"isFollow": "0",
"isFanLinkedin": "0",
"isBuyer": "0",
"actionCount": "0",
"lastActionDt": null,
"lastOrderDt": null,
"cagnotteAmount": "99",
"externalId": null,
"company": "",
"fonction": "",
"tags" : ""
}
Exemple d'appel PHP :
$curl_post_data = array(
'customer' => array (
'email' => 'email-example@sb.am',
'firstName' => 'John',
'lastName' => 'Doe',
'tags' => array(
"tag1", "tag2", "tag3"
),
'custom_fields' => array(
"1234" => "1", // boutons radios (Oui / Non)
"1235" => "42", // numérique
"1236" => "valeur", // boutons radios (choix unique)
"1237" => "2018-02-13", // date
"1238" => "un texte", // texte
"1239" => "valeur1|valeur7" // cases à cocher (choix multiple)
)
)
);
$curl_post_data = json_encode($curl_post_data);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers");
curl_setopt($curl, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
// Auth avec la clé publique et la clé privée (voir dans Paramétrage > Tracker)
curl_setopt($curl, CURLOPT_USERPWD, "clef_public:clef_privee");
curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data );
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$curl_return = curl_exec($curl);
var_dump($curl_return);
curl_close($curl);
/customers/{id} (PUT)
Permet de mettre à jour les informations d'un profil.
Endpoint : https://social-sb.com/api/v2/customers/{id}
Verb : PUT
Paramètres obligatoires :
id
: identifiant SPREAD
email
: Email du customer à créer (dans le payload "contact")
Paramètres complémentaires :
lastName
: Nom de famille du customer à créer
firstName
: Prénom du customer à créer
country
: Pays
city
: Ville
address
: Adresse du customer à créer
address2
: Complément d'adresse à créer
address3
: Complément d'adresse à créer
zip
: Code postal
phone
: numéro de téléphone fixe
mobile
: numéro de téléphone mobile
lang
: langue du customer
birthday
: Date d'anniversaire, le format doit être "YYYY-mm-dd"
gender
: Genre du customer. Les valeurs possibles sont "male" ou "female"
isFan
: Est fan de la page Facebook (1 = oui; 0 = non)
isFollow
: Suit la page Twitter (1 = oui; 0 = non)
isFanLinkedin
: Fan de la page Linkedin (1 = oui; 0 = non)
isBuyer
: Est client (1 = oui, 0 = non),
externalId
: Un identifiant unique du customer,
company
: L'entreprise du customer,
fonction
: Le job du customer,
tags
: permet d'ajouter des tags de profils. Les tags doivent être renseigné dans un tableau (exemple : array("tag1", "tag2", "tag3"))
custom_fields
: permet d'ajouter des valeurs aux champs personnalisés. Les champs personnalisés doivent être renseignés dans un tableau (exemple : array(id_champ_perso1 ⇒ "valeur", id_champ_perso ⇒ "valeur"))
Réponse :
"customer": {
"id": "123456",
"lastName": "Doe",
"firstName": "John",
"email": "email-example@gmail.com",
"country": null,
"city": null,
"address": null,
"address2": null,
"address3": null,
"zip": null,
"phone": null,
"mobile": null,
"lang": "fr",
"birthday": null,
"gender": null,
"createdAt": "2018-04-10T14:15:48+0000",
"updatedAt": "2018-05-21T14:06:47+0000",
"isFan": "0",
"isFollow": "0",
"isFanLinkedin": "0",
"isBuyer": "0",
"actionCount": "0",
"lastActionDt": null,
"lastOrderDt": null,
"cagnotteAmount": "99",
"externalId": null,
"company": "",
"fonction": "",
"tags" : ""
}
Exemple d'appel PHP :
$curl_post_data = array(
'customer' => array (
'email' => 'email-example@sb.am',
'firstName' => 'John',
'lastName' => 'Doe'
)
);
$curl_post_data = json_encode($curl_post_data);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers/14764505");
curl_setopt($curl, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
// Auth avec la clé publique et la clé privée (voir dans Paramétrage > Tracker)
curl_setopt($curl, CURLOPT_USERPWD, "clef_public:clef_privee");
curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data );
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$curl_return = curl_exec($curl);
var_dump($curl_return);
curl_close($curl);
/customers/email/update/ (PUT)
Permet de modifier l'adresse email d'un profil.
Endpoint : https://social-sb.com/api/v2/customers/email/update
Verb : PUT
Paramètres obligatoires :
old_email
: email actuel du profil
new_email
: nouvel email du profil
Paramètres complémentaires :
Aucun
Réponse :
"customer": {
"id": "123456",
"lastName": "Doe",
"firstName": "John",
"email": "email-example@gmail.com",
"country": null,
"city": null,
"address": null,
"address2": null,
"address3": null,
"zip": null,
"phone": null,
"mobile": null,
"lang": "fr",
"birthday": null,
"gender": null,
"createdAt": "2018-04-10T14:15:48+0000",
"updatedAt": "2018-05-21T14:06:47+0000",
"isFan": "0",
"isFollow": "0",
"isFanLinkedin": "0",
"isBuyer": "0",
"actionCount": "0",
"lastActionDt": null,
"lastOrderDt": null,
"cagnotteAmount": "99",
"externalId": null,
"company": "",
"fonction": "",
"tags" : ""
}
Exemple d'appel PHP :
$curl_post_data = array(
'customer' => array (
'old_email' => 'oldemail@gmail.com',
'new_email' => 'newemail@gmail.com'
)
);
$curl_post_data = json_encode($curl_post_data);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers/email/update");
curl_setopt($curl, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
// Auth avec la clé publique et la clé privée (voir dans Paramétrage > Tracker)
curl_setopt($curl, CURLOPT_USERPWD, "clef_public:clef_privee");
curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data );
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$curl_return = curl_exec($curl);
var_dump($curl_return);
curl_close($curl);
/customers/{id} (DELETE)
Permet de supprimer un profil.
Endpoint : https://social-sb.com/api/v2/customers/{id}
Verb : DELETE
Paramètres obligatoires :
id
: identifiant SPREAD
Paramètres complémentaires :
Aucun
Réponse :
"response": "Customer deleted."
Exemple d'appel PHP :
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers/123456");
curl_setopt($curl, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
// Auth avec la clé publique et la clé privée (voir dans Paramétrage > Tracker)
curl_setopt($curl, CURLOPT_USERPWD, "clef_public:clef_privee");
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$curl_return = curl_exec($curl);
var_dump($curl_return);
curl_close($curl);