/customers-consents/{customer_id} (GET)
Permet de gérer et récupérer l'historique des consentements des profils.
Endpoint: social-sb.com/api/v2/customers-consents/{customer_id}
Verb: GET
Paramètres obligatoires :
- customerId: Identifiant SPREAD du customer
Paramètres complémentaires :
Aucun
Réponse :
"customer":
{
 "id": "123456",
 "consents":
 [
    {
        "consentId": "9876",
        "trackId": "1000",
        "consentTechName": "NewsEmail",
        "customerConsentCreatedAt": "2018-06-11 13:03:05",
        "customerConsentStatus": "accepted",
        "customerConsentSource": "campaignParticipation",
        "customerConsentSourceId": "65745"
    },
    {
        "consentId": "9875",
        "trackId": "1001",
        "consentTechName": "NewsSMS",
        "customerConsentCreatedAt": "2018-06-11 13:03:38",
        "customerConsentStatus": "refused",
        "customerConsentSource": "campaignParticipation",
        "customerConsentSourceId": "65746"
    },
    {
        "consentId": "9874",
        "trackId": "1002",
        "consentTechName": "J'accepte d'être contacté occasionnellement par téléphone",
        "customerConsentCreatedAt": "2018-06-11 13:03:44",
        "customerConsentStatus": "unknown",
        "customerConsentSource": "campaignParticipation",
        "customerConsentSourceId": "65747"
    }
 ]
},
"count": 3,
"nextPageUrl": "http://social-sb.com/api/v2/customers-consents/123456?startAt=3"Exemple d'appel PHP :
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers-consents/123456");
// Auth avec la clé publique et la clé privée (voir dans Paramétrage > Tracker)
curl_setopt($curl, CURLOPT_USERPWD, "clef_public:cle_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 consentements créés après la date passée en paramètre seront remontés
- createBefore⇒ seuls les consentements créés avant la date passée en paramètre seront remontés
- consentId⇒ seul le consentement ayant pour ID le paramètre sera remonté
- consentTechName⇒ seul le consentement ayant pour tech name le paramètre sera remonté
- customerConsentStatus⇒ seuls les consentements ayant le statut passé en paramètre seront remontés. Les valeurs possibles :
- accepted
- refused
- toBeConfirmed
- unknown
- customerConsentSource⇒ seuls les consentements venant d'une source comme celle passée en paramètre seront remontés. Les valeurs possibles :
- campaignParticipation
- duplicationFromAPartnership
- confirmationOfADoubleOptin
- unsubscriptionUnifiedMessaging
- manualImport
- automaticImport
- upstreamAPIGET
- upstreamAPIGETJS
- upstreamAPIPOST
- unifiedMessaging
- transactionalEmail
- optinsMigration
- manualUpdate
- migrationOfCustomersToALegalBasis
- prospectMigrationToALegalBasis
- upstreamAPIv2POST
- publicConsentManagementUserInterface
Les paramètres sur la pagination :
- startAt⇒ permet de commencer la liste des consentements à partir de l'occurence passée en paramètre
- maxResult⇒ permet de limiter le nombre de consentements remontés par pages (max 5000)
/customers-consents (GET)
Permet de récupérer tous les customers ayant répondu à un consentement.
Endpoint: social-sb.com/api/v2/customers-consents
Verb: GET
Paramètres obligatoires (à passer en paramètre GET) :
- consentId: Identifiant SPREAD du consentement
OU
- consentTechName: Le nom technique donné au consentement
OU
- trackId: Identifiant SPREAD d'un consentement donné par un customer. Si le choix est de passer par la trackId, alors aucun paramètre d'affinage ne sera pris en compte.
Paramètres complémentaires :
Aucun
Réponse :
"consent": {
 "id": "9874",
 "consentTechName": "J'accepte d'être contacté occasionnellement par téléphone",
 "customers":
 [
    {
        "id": "123456",
        "trackId": "1002",
        "customerConsentCreatedAt": "2018-04-06 09:36:56",
        "customerConsentStatus": "unknown",
        "customerConsentSource": "campaignParticipation",
        "customerConsentSourceId": "65745"
    },
    {
        "id": "123457",
        "trackId": "1003",
        "customerConsentCreatedAt": "2018-04-09 09:06:25",
        "customerConsentStatus": "refused",
        "customerConsentSource": "campaignParticipation",
        "customerConsentSourceId": "65746"
    },
    {
        "id": "123458",
        "trackId": "1004",
        "customerConsentCreatedAt": "2018-04-09 09:50:33",
        "customerConsentStatus": "toBeConfirmed",
        "customerConsentSource": "campaignParticipation",
        "customerConsentSourceId": "65747"
    }
 ]
},
"count": 4,
"nextPageUrl": "http:social-sb.com/api/v2/customers-consents?consentId=9874&startAt=4"Exemple d'appel PHP :
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers-consents?consentId=9874");
// 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 consentements créés après la date passée en paramètre seront remontés
- createBefore⇒ seuls les consentements créés avant la date passée en paramètre seront remontés
- customerConsentStatus⇒ seuls les consentements ayant le statut passé en paramètre seront remontés. Les valeurs possibles :
- accepted
- refused
- toBeConfirmed
- unknown
- customerConsentSource⇒ seuls les consentements venant d'une source comme celle passée en paramètre seront remontés. Les valeurs possibles :
- campaignParticipation
- duplicationFromAPartnership
- confirmationOfADoubleOptin
- unsubscriptionUnifiedMessaging
- manualImport
- automaticImport
- upstreamAPIGET
- upstreamAPIGETJS
- upstreamAPIPOST
- unifiedMessaging
- transactionalEmail
- optinsMigration
- manualUpdate
- migrationOfCustomersToALegalBasis
- prospectMigrationToALegalBasis
- upstreamAPIv2POST
- publicConsentManagementUserInterface
Les paramètres sur la pagination :
- startAt⇒ permet de commencer la liste des consentements à partir de l'occurence passée en paramètre
- maxResult⇒ permet de limiter le nombre de consentements remontés par pages (max 5000)
/customers-consents/{customerId} (POST)
Permet de créer un consentement validé pour un profil et un consentement donnés.
Endpoint: social-sb.com/api/v2/customers-consents/{customerId}
Verb: POST
Paramètres obligatoires :
- customerId: Identifiant SPREAD du profil (valeur à passer dans l'url)
- id: Identifiant SPREAD du consentement (valeur à passer en POST) OU- techName: Identifiant SPREAD unique d'un consentement pour un site donné
- createdAt: La date du consentement
- customerConsentStatus: La valeur du consentement. Trois valeurs possibles :
- accepted
- refused
- unknown. Cette dernière valeur ne fonctionne que s'il existe déjà une valeur pour ce consentement et ce customer.
Paramètres complémentaires :
- ip: L'adresse IP du profil
- channelId: L'identifiant unique SPREAD du canal sur lequel doit s'ajouter le consentement. Si aucun channel ID n'est fourni, le consentement s'ajoutera à tous les canaux du consentement.
Réponse :
"consent":
{
 "id": 9876,
 "techName": "NewsEmail",
 "customer":
 {
    "id": "123456",
    "trackId": "1000",
    "customerConsentCreatedAt": "2O18-06-30 09:10:34",
    "customerConsentStatus": "accepted"
 }
}Exemple d'appel PHP :
$curl_post_data = array(
    'consent' => array(
        "id" => 9876,
        "techName" => "NewsEmail",
        "createdAt" => "2O18-06-30 09:10:34",
        "customerConsentStatus" => "accepted",
        "ip" => "1.1.1.1" # pas obligatoire
    )
);
 
$curl_post_data = json_encode($curl_post_data);
 
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://social-sb.com/api/v2/customers-consents/123456");
curl_setopt($curl, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
//// 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);