INTEGRITY Dokumentace

Consent API

Kontext

Consent API umožňuje programově řídit všechny aspekty programu Consent Management. Patří sem správa modálního okna, stavu souhlasu a získávání informací o nakonfigurovaných účelech.

Pomocí Consent API můžete propojit předvolby Zaraz Consent s externí platformou pro správu souhlasu, přizpůsobit si modální okno se souhlasem nebo omezit správu souhlasu jen na uživatele z konkrétních regionů.


Události

Může se hodit vědět, kdy je Consent API na stránce plně načteno, aby se kód pracující s jeho metodami a vlastnostmi nespouštěl předčasně.

document.addEventListener("zarazConsentAPIReady", () => {
  // do things with the Consent API
});

Tato událost se aktivuje pokaždé, když uživatel změní své předvolby souhlasu. Lze ji použít k reakci na změny souhlasu, například při aktualizaci nástroje o nové předvolby souhlasu.

document.addEventListener("zarazConsentChoicesUpdated", () => {
  // read the new consent preferences using `zaraz.consent.getAll();` and do things with it
});

Vlastnosti

Následují vlastnosti zaraz.consent objekt.


Metody

Get

zaraz.consent.get(purposeId);

Získejte aktuální stav souhlasu pro daný účel pomocí ID účelu.

Parametry

Set

zaraz.consent.set(consentPreferences);

Nastavení stavu souhlasu pro některé účely pomocí ID účelu.

Parametry

Get All

zaraz.consent.getAll();

Vrátí objekt se stavem souhlasu pro všechny účely.

Set All

zaraz.consent.setAll(consentStatus);

Nastavení stavu souhlasu pro všechny účely najednou.

Parametry

Get All Checkboxes

zaraz.consent.getAllCheckboxes();

Vrátí objekt se stavem zaškrtávacích políček všech účelů.

Set Checkboxes

zaraz.consent.setCheckboxes(checkboxesStatus);

Nastavení stavu souhlasu pro některé účely pomocí ID účelu.

Parametry

Set All Checkboxes

zaraz.consent.setAllCheckboxes(checkboxStatus);

Nastavte checkboxStatus stav pro všechny účely v modálním okně souhlasu najednou.

Parametry

Send queued events

zaraz.consent.sendQueuedEvents();

Pokud se některé události založené na Pageview neodeslaly kvůli chybějícímu souhlasu, lze je touto metodou odeslat poté, co byl souhlas udělen.

Příklady

Kombinací více funkcí Zarazu můžete pro některé návštěvníky Consent Management fakticky vypnout. Pokud ho chcete použít například jen pro návštěvníky z EU, můžete vypnout automatické zobrazování okna se žádostí o souhlas a přidat nástroj Custom HTML s následujícím skriptem:

<script>
function getCookie(name) {
  const value = `; ${document.cookie}`
  return value?.split(`; ${name}=`)[1]?.split(";")[0]
}

function handleZarazConsentAPIReady() {
  const consent_cookie = getCookie("cf_consent")
  const isEUCountry = "{{system.device.location.isEUCountry}}" === "1"
  if (!consent_cookie) {
    if (isEUCountry) {
      zaraz.consent.modal = true
    } else {
      zaraz.consent.setAll(true)
      zaraz.consent.sendQueuedEvents()
    }
  }
}

if (zaraz.consent?.APIReady) {
  handleZarazConsentAPIReady()
} else {
  document.addEventListener("zarazConsentAPIReady", handleZarazConsentAPIReady)
}
</script>

Poznámka: pokud jste si upravili název cookie pro Consent Manager, použijte ve výše uvedeném úryvku kódu tento upravený název místo "cf_consent".

Pokud tomuto nástroji Custom HTML povolíte běh bez vyžadování souhlasu, modální okno se zobrazí všem návštěvníkům z EU, zatímco ostatním návštěvníkům bude souhlas udělen automaticky. Přepínač {{ system.device.location.isEUCountry }} vlastnost bude 1 pokud je návštěvník z země EU a 0 v opačném případě. Podobným způsobem můžete k úpravě chování správy souhlasu použít i jakoukoli jinou vlastnost nebo proměnnou, například {{ system.device.location.country }} a omezte kontroly souhlasu podle kódu země.