Cette page décrit la méthode de setConsent de Server SDK. Pour le Web SDK, voir setConsent.
La méthode setConsent indique au SDK du serveur s’il peut envoyer des données pour un visiteur (opt-in) ou s’il doit les ignorer (opt-out). Le SDK envoie les préférences du visiteur ou de la visiteuse à Edge Network, puis stocke le résultat dans le cookie kndctr_<orgId>_consent par le biais du service de cookie que vous transmettez à forRequest.
Le SDK prend en charge les normes de consentement suivantes :
- Adobe standard : versions 1.0 et 2.0.
- IAB Transparency & Consent Framework (TCF) : version 2.0.
Cette méthode n’est disponible que lorsque l’instance inclut le composant Consentement, qui inclut createInstance par défaut .
Consentement défini de l’appel pour un visiteur call
Le consentement appartient à un seul visiteur. Par conséquent, appelez toujours setConsent sur le handle de forRequest de ce visiteur, jamais sur l’instance de niveau supérieur. L’exemple suivant utilise la norme Adobe 2.0 :
const visitor = alloy.forRequest({ request: req, cookie: visitorCookies });
await visitor.setConsent({
consent: [{
standard: "Adobe",
version: "2.0",
value: {
collect: { val: "y" }
}
}]
});
L’exemple suivant utilise la norme Adobe 1.0 :
await visitor.setConsent({
consent: [{
standard: "Adobe",
version: "1.0",
value: { general: "in" }
}]
});
L’exemple suivant utilise la norme IAB TCF 2.0 :
await visitor.setConsent({
consent: [{
standard: "IAB TCF",
version: "2.0",
value: "CO052l-O052l-DGAMBFRACBgAIBAAAAAAIYgEawAQEagAAAA",
gdprApplies: true
}]
});
Si vous utilisez la norme IAB TCF et que vous souhaitez que les données de consentement figurent sur le profil du visiteur, incluez également les informations de consentement IAB dans l’objet d’xdm d’événement. Le SDK ne l’ajoute pas automatiquement aux événements.
Mémoire du consentement stored-consent
Le SDK lit et écrit le cookie de consentement par le biais du service cookie que vous transmettez à forRequest :
- Si votre service de cookies lit les cookies du navigateur du visiteur, le consentement que le visiteur a enregistré précédemment, sur le serveur ou dans le navigateur avec le Web SDK, s’applique déjà. Vous n’avez pas besoin de
setConsentrappeler tant que les préférences du visiteur n’ont pas changé. - Si vous ne transmettez pas de service de cookie, le SDK ne se souvient pas du consentement entre les requêtes. Chaque requête commence à partir de
defaultConsent.
Le SDK ignore la requête s’il a déjà envoyé les mêmes préférences pour le visiteur. Il effectue le suivi des préférences qu’il a envoyées via le service storage. Cette vérification ne fonctionne donc entre les requêtes que si vous transmettez le service storage de ce visiteur à forRequest. Sinon, chaque appel envoie une requête à Edge Network, même si les préférences du visiteur n’ont pas changé. Appelez setConsent lorsque le visiteur effectue ou modifie un choix de consentement, plutôt que sur chaque demande.
La requête n’est pas authentifiée. Assurez-vous que votre flux de données accepte les requêtes non authentifiées. Voir Définir le type d’accès au flux de données.
Options options
La méthode setConsent accepte un objet avec les propriétés suivantes :
consent: obligatoire. Tableau d’objets de consentement, chacun dans l’une des normes prises en charge.identityMap: mappage d’identités pour le visiteur. Edge Network applique le consentement au niveau de l’appareil. Il utilise donc uniquement leECIDde cette carte.edgeConfigOverrides: un objet de remplacement de configuration de train de données pour cette requête.
Objet de résultat result
La méthode setConsent renvoie une promesse qui est résolue avec un objet vide lorsque l’Edge Network accepte les préférences de consentement.