Cookiebot™ programmieren

Nachfolgend finden Sie weiterführende technische Informationen, hauptsächlich für Entwickler. Wenn Sie nach unserem Standardimplementierungsleitfaden für den Einstieg bei Cookiebot™ suchen, finden Sie diesen hier.

Auf dieser Seite finden Sie unsere SDK-Dokumentation, um benutzerdefinierte Implementierungen von Bannern und Cookie-Kontrollen zu erstellen. Sowie die Optionen für die manuellen Änderungen der automatisierten Mechanismen unseres Cookie-Einwilligungsbanners.

Damit das untenstehende SDK funktioniert, muss das Cookiebot-Skript auf Ihrer Website implementiert sein.

Laden Sie das Cookie-Einwilligungsskript über:

https://consent.cookiebot.com/uc.js?cbid=00000000-0000-0000-0000-000000000000

Oder als:

https://consent.cookiebot.com/uc.js

(mit dem Attribut data-cbid=’00000000-0000-0000-0000-000000000000′)

Denken Sie daran, 000000000000-0000-0000-0000-0000-000000000000000000 durch Ihre eigene Domaingruppen-ID zu ersetzen, die Sie unter “Ihre Skripte” in Ihrem Cookiebot-Konto finden. 

Das Cookiebot-Skript lädt und erstellt ein clientseitiges JavaScript-Objekt namens ‘Cookiebot’, das die folgenden öffentlichen Eigenschaften, Methoden, Ereignisse und Callback-Funktionen enthält.

Eigenschaften

NameTypStandardBeschreibung
consent.necessarybooltrueWahr, wenn der aktuelle Benutzer notwendige Cookies akzeptiert hat. Die Eigenschaft ist schreibgeschützt.
consent.preferencesboolfalseWahr, wenn der aktuelle Benutzer Cookies mit Präferenzfunktion akzeptiert hat. Die Eigenschaft ist schreibgeschützt.
consent.statisticsboolfalseWahr, wenn der aktuelle Benutzer Cookies mit Statistikfunktion akzeptiert hat. Die Eigenschaft ist schreibgeschützt.
consent.marketingboolfalseWahr, wenn der aktuelle Benutzer Cookies mit Marketingfunktion akzeptiert hat. Die Eigenschaft ist schreibgeschützt.
consent.methodstringnullDie Art und Weise, wie die Einwilligung erteilt wurde. Entweder „indirekt”, wenn die Einwilligung automatisch erteilt wird, oder „ausdrücklich”, wenn sie vom Nutzer erteilt wird. Liegt keine Einwilligung vor, ist der Wert null. Wenn die Methode zur Einwilligung unbekannt ist (alte Einwilligungen), wird sie als „indirekt” betrachtet. Die Eigenschaft ist schreibgeschützt.
consentedboolfalseWahr, wenn der Benutzer Cookies akzeptiert hat. Die Eigenschaft ist schreibgeschützt.
declinedboolfalseWahr, wenn der Benutzer die Verwendung von Cookies abgelehnt hat. Die Eigenschaft ist schreibgeschützt.
hasResponseboolfalseWahr, wenn der Benutzer auf den Dialog mit ‘annehmen’ oder ‘ablehnen’ reagiert hat. Die Eigenschaft ist schreibgeschützt.
doNotTrackboolfalseWahr, wenn der Benutzer ‘Nicht verfolgen’ (DNT) im Webbrowser aktiviert hat. Wenn DNT aktiviert ist, wird Cookiebot kein Drittanbieter-Cookie CookieConsentBulkTicket setzen, das für Masseneinwilligung verwendet wird. Die Eigenschaft ist schreibgeschützt.
regulations.gdprAppliesboolfalseErmöglicht Ihnen zu bestimmen, ob die DSGVO, auf Grundlage des geografischen Standort des Benutzers, gilt. Die Eigenschaft ist schreibgeschützt.
regulations.ccpaAppliesboolfalseErmöglicht Ihnen zu bestimmen, ob der CCPA, auf Grundlage des geografischen Standort des Benutzers, gilt. Die Eigenschaft ist schreibgeschützt.
regulations.lgpdAppliesboolfalseErmöglicht Ihnen zu bestimmen, ob das LGPD, auf Grundlage des geografischen Standort des Benutzers, gilt. Die Eigenschaft ist schreibgeschützt.

Methoden

NameParameterBeschreibung
showKeineFührt dazu, dass der Cookie-Einwilligungsdialog angezeigt wird.
hideKeineBringt den Cookie-Einwilligungsdialog dazu, ausgeblendet zu werden.
renewKeineZeigt dem Nutzer der Webseite den Cookie-Einwilligungsdialog zur Erneuerung oder Änderung des Einwilligungsstatus des Benutzers an.
getScriptstring URL,
bool async,
func callback
Lädt eine JavaScript-Datei. URL: Absoluter Pfad zur JavaScript-Datei.
async (Optional): Stellt fest, ob das Skript asynchron geladen werden sollte.
callback (Optional): JavaScript-Funktion zur Ausführung, wenn das Skript fertig geladen ist.
runScriptsKeineBewertet alle geladenen Script-Tags des Typs “text/plain” mit dem Attribut “data-cookieconsent” und führt die Scripts entsprechend dem Einwilligungsstatus des Nutzers aus. Für die Verwendung durch Webseiten, die Inhalte dynamisch laden, z. B. bei Single-Page-Anwendungen. Scripts werden nur einmal ausgeführt, daher ist die Funktion sicher, um mehrmalige Aufrufe durchzuführen, z. B. jedes Mal, wenn neuer Inhalt geladen wird.
withdrawKeineWiderrufen Sie Ihre Einwilligung
submitCustomConsentbool optinPreferences,
bool optinStatistics,
bool optinMarketing
Verwenden Sie dies außerhalb des Kontexts des Cookie-Banners, wie z.B. eine Schaltfläche in der Kopf-/Fußzeile Ihrer Website, um ein Opt-in oder Opt-out zu ermöglichen – oder um eine Schaltfläche zu Ihrem Banner hinzuzufügen, die eine teilweise Zustimmung ermöglicht, z.B. “Einstellungen & Statistiken akzeptieren”.
<a href="javascript: Cookiebot.renew()">Erneuern oder ändern Sie Ihre Cookie-Einwilligung</a>

Ereignisbehandlung

NameBeschreibung
CookiebotOnConsentReadyDas Ereignis wird ausgelöst, wenn der Zustimmungsstatus des Benutzers bereit ist, entweder durch die Übermittlung oder durch das Laden aus einem vorhandenen Cookie. Achten Sie auf dieses Ereignis, wenn Sie die Zustimmung des Benutzers einholen und so bald wie möglich zusätzliche Skripte auf der Grundlage der Zustimmungswerte ausführen müssen.
CookiebotOnLoadDas Ereignis wird gleichzeitig mit dem window.onload-Ereignis ausgelöst, wenn die Zustimmung des Benutzers geladen wurde – entweder wenn der Benutzer seine Zustimmung abgibt oder wenn der Benutzer zu einer Seite navigiert, auf der die Zustimmung bereits abgegeben wurde.
CookiebotOnAcceptDas Ereignis wird ausgelöst, wenn der Benutzer die Verwendung von Cookies akzeptiert. Das Ereignis wird auch ausgelöst, wenn der Benutzer bei einem früheren Besuch der Website zugestimmt hat.
CookiebotOnDeclineDas Ereignis wird ausgelöst, wenn der Benutzer die Verwendung von Cookies, durch Klicken auf den Ablehnungs-Button im Cookie-Zustimmungs-Dialog, ablehnt. Das Ereignis wird auch ausgelöst, wenn der Benutzer bereits bei einem früheren Besuch der Website abgelehnt hat.
CookiebotOnDialogInitWird ausgelöst, wenn das Cookie-Einwilligungs-Banner initialisiert wird, bevor der Inhalt des Banners kompiliert wird.
CookiebotOnDialogDisplayWird ausgelöst, wenn das Cookie-Einwilligungs-Banner den Endnutzer angezeigt wird.
CookiebotOnTagsExecutedWird ausgelöst, wenn zur vorherigen Einwilligung markierte Tags (z. B. das Attribut “data-cookieconsent”) ausgelöst wurden.

Beispiel: Marketing Cookies laden, wenn der Benutzer akzeptiert hat

<script type="text/javascript">

      window.addEventListener('CookiebotOnAccept', function (e) {
      if (Cookiebot.consent.marketing)
          {
          //Execute code that sets marketing cookies
          }
      }, false);

</script>

Rückrufe

NameBeschreibung
CookiebotCallback_OnLoadDer asynchrone Callback wird ausgelöst, wenn das Cookie-Banner geladen wurde, um die Einwilligung des Benutzers zu erhalten.
CookiebotCallback_OnAcceptEin asynchroner Rückruf wird ausgelöst, wenn der Benutzer den Bestätigungs-Button des Cookie-Einwilligungsdialogs anklickt und wenn ein Benutzer, der eingewilligt hat, eine Seite lädt.
CookiebotCallback_OnDeclineDer asynchrone Rückruf wird ausgelöst, wenn der Benutzer im Cookie-Einwilligungsdialog durch Klicken auf den Ablehnungs-Button die Verwendung von Cookies ablehnt. Der Rückruf wird auch ausgelöst, wenn ein Benutzer, der die Verwendung von Cookies abgelehnt hat, eine Seite lädt.
CookiebotCallback_OnDialogInitWird ausgelöst, wenn das Cookie-Einwilligungs-Banner initialisiert wird, bevor der Inhalt des Banners kompiliert wird.
CookiebotCallback_OnDialogDisplayWird ausgelöst, wenn das Cookie-Einwilligungs-Banner den Endnutzer angezeigt wird.
CookiebotCallback_OnTagsExecutedWird ausgelöst, wenn zur vorherigen Einwilligung markierte Tags (z. B. das Attribut “data-cookieconsent”) ausgelöst wurden.

Beispiel: Statistik-Cookies laden, wenn der Benutzer den Statistik-Cookies zugestimmt hat

Bitte beachten Sie, dass dieses Beispiel nur relevant ist, wenn Sie den data-blockingmode nicht auf “auto” gesetzt haben und wenn Sie Ihr Skript nicht zur Kontrolle mit data-cookieconsent versehen haben.

<script type="text/javascript">
    function CookiebotCallback_OnAccept() {
          if (Cookiebot.consent.statistics)            
{      
enableStatisticsCookies();              
}
}
function enableStatisticsCookies() {  
         //Code ausführen, der Statistik-Cookies setzt
       }  
</script>

Skript-Tag-Daten-Attribute

NameTypObligatorischBeschreibung
data-cbidstringJaDie eindeutige ID für Ihre Cookiebot-Domaingruppe.
data-typestringNeinÜberschreibt den Standard-Dialog-Typ mit einem der folgenden Werte:
“optin”, “Optout”, “Optinout”, “Leveloptin”, “Inlineoptin”, “Optionaloptin”
data-levelstringNeinÜberschreibt die Standardmethode für die Einwilligung mit einer der folgenden Werte: “konkludent”, “strikt”
data-culturestringNeinUm eine spezifische Sprache für den Benutzerdialog der Einverständniserklärung einzustellen, berücksichtigen Sie hierbei den ISO 639-1-Sprachencode (z.B. “EN” – Englisch). Dies überschreibt die automatische Spracherkennung, die im Cookiebot-Manager voreingestellt ist.
data-frameworkstringNeinErmöglicht Cookiebot, die Einwilligung zu anderen auf einer Website implementierten Einwilligungs-Frameworks zu signalisieren – zusätzlich zu dem in Cookiebot enthaltenen Standard-Einwilligungs-Framework. Der Wert des Attributs muss mit der Abkürzung für das externe Framework übereinstimmen. Derzeit werden die folgenden Einverständnisrahmen von Drittanbietern unterstützt: Abkürzung “IAB”: IAB Europe Transparency & Consent Framework
data-blockingmodestringneinLegt fest, ob Cookiebot alle Cookies automatisch blockieren soll, bis ein Benutzer zugestimmt hat, Wert: “auto”. Wenn nicht, (Wert: “none”) sollten Cookie-Setzskripte manuell angepasst werden, wie in unserem Leitfaden zur manuellen Implementierung beschrieben. Wenn Sie dieses Attribut weglassen, ist das Verhalten gleichwertig dem Wert: “none”.
data-consentmodestringNeinErmöglicht es Ihnen, den Google Consent Mode zu deaktivieren, indem Sie den Wert “disabled” angeben.

Beispiel: Den Einwilligungs-Dialog dazu bringen, in Englisch angezeigt zu werden

<script id="Cookiebot" data-culture="EN" src="https://consent.cookiebot.com/uc.js" data-cbid="00000000-0000-0000-0000-000000000000" type="text/javascript"></script>

Serverseitige Auslastung

Wenn Ihre Webseite serverseitig Cookies einstellt, können Sie durch Prüfen des aktuellen Anwender-Einwilligungsstatus für die Standard-Handhabung von Cookies bestimmen, welche Art von Cookies Sie festlegen dürfen.

  • C#
  • PHP
  • VB
using System.Web.Script.Serialization;
 ...

HttpCookie CurrentUserConsent = Request.Cookies["CookieConsent"];

 if (CurrentUserConsent != null) 
{
       switch (CurrentUserConsent.Value) 
       {
              case "-1":
                    //The user is not within a region that requires consent - all cookies are accepted 
                    break; 

              default: //The user has given their consent

                     //Read current user consent in encoded JavaScript format 
                     JavaScriptSerializer CookieConsentSerializer = new JavaScriptSerializer();
                     dynamic CookieConsent = CookieConsentSerializer.Deserialize<object>(HttpUtility.UrlDecode(CurrentUserConsent.Value));


if (!CookieConsent["preferences"] && !CookieConsent["statistics"] && !CookieConsent["marketing"])
                     {
                         //The user has opted out of cookies, set strictly necessary cookies only
                     }
                     else
                     {

                     if (CookieConsent["preferences"]) 
                     {
                            //Current user accepts preference cookies
                     }
                     else 
                     {
                           //Current user does NOT accept preference cookies
                     }

                     if (CookieConsent["statistics"]) 
                     {
                           //Current user accepts statistics cookies
                     }
                     else
                     { 
                          //Current user does NOT accept statistics cookies
                     } 

                     if (CookieConsent["marketing"])
                     { 
                          //Current user accepts marketing cookies 
                     } 
                     else
                     { 
                          //Current user does NOT accept marketing cookies
                     } 
              }
       } 
}
 else 
{ 
      //The user has not accepted cookies - set strictly necessary cookies only 
}
if (isset($_COOKIE["CookieConsent"])) 
{ 
      switch ($_COOKIE["CookieConsent"])
      {
            case "-1":
                  //The user is not within a region that requires consent - all cookies are accepted
                  break; 

            default: //The user has given their consent 

                  //Read current user consent in encoded JavaScript format 
                  $valid_php_json = preg_replace('/\s*:\s*([a-zA-Z0-9_]+?)([}\[,])/', ':"$1"$2', preg_replace('/([{\[,])\s*([a-zA-Z0-9_]+?):/', '$1"$2":', str_replace("'", '"',stripslashes($_COOKIE["CookieConsent"])))); 
                  $CookieConsent = json_decode($valid_php_json); 



if (!filter_var($CookieConsent->preferences, FILTER_VALIDATE_BOOLEAN) 
&& !filter_var($CookieConsent->statistics, FILTER_VALIDATE_BOOLEAN) && !
filter_var($CookieConsent->marketing, FILTER_VALIDATE_BOOLEAN))
                  {
                         //The user has opted out of cookies, set strictly necessary cookies only
                  }
                  else
                  {

                  if (filter_var($CookieConsent->preferences, FILTER_VALIDATE_BOOLEAN)) 
                  { 
                        //Current user accepts preference cookies 
                  } 
                  else 
                  { 
                        //Current user does NOT accept preference cookies
                  } 

                  if (filter_var($CookieConsent->statistics, FILTER_VALIDATE_BOOLEAN))
                  { 
                        //Current user accepts statistics cookies 
                  } 
                  else 
                  { 
                        //Current user does NOT accept statistics cookies
                  }

                  if (filter_var($CookieConsent->marketing, FILTER_VALIDATE_BOOLEAN))
                  { 
                        //Current user accepts marketing cookies
                  }
                  else 
                  { 
                        //Current user does NOT accept marketing cookies
                  }
             }
       }
 } 
else 
{
      //The user has not accepted cookies - set strictly necessary cookies only 
}
Imports System.Web.Script.Serialization
 ... 

Dim CurrentUserConsent As HttpCookie = Request.Cookies("CookieConsent")

 If CurrentUserConsent IsNot Nothing Then 
      Select Case CurrentUserConsent.Value 
            
            Case "-1" 
                  REM The user is not within a region that requires consent - all cookies are accepted 
                  Exit Select 

            Case Else REM The user has given their consent 

                  REM Read current user consent in encoded JavaScript format 
                  Dim CookieConsentSerializer As New JavaScriptSerializer() 
                  Dim CookieConsent As dynamic = CookieConsentSerializer.Deserialize(Of Object)(HttpUtility.UrlDecode(CurrentUserConsent.Value)) 

                  If Not CookieConsent("preferences") And Not 
CookieConsent("statistics") And Not CookieConsent("marketing") Then
                  REM The user has opted out of cookies, set strictly necessary cookies only
                  Else

                  If CookieConsent("preferences") Then 
                       REM Current user accepts preference cookies 
                  Else 
                       REM Current user does NOT accept preference cookies 
                  End If 

                  If CookieConsent("statistics") Then 
                       REM Current user accepts statistics cookies 
                  Else 
                       REM Current user does NOT accept statistics cookies
                  End If

                  If CookieConsent("marketing") Then
                       REM Current user accepts marketing cookies 
                  Else 
                       REM Current user does NOT accept marketing cookies
                  End If 
            End If
      End Select 
Else 
      REM The user has not accepted cookies - set strictly necessary cookies only 
End If

    Bleiben Sie auf dem Laufenden

    Werden Sie jetzt Teil unserer wachsenden Community von Datenschutz-Befürwortern. Abonnieren Sie den Cookiebot™-Newsletter und erhalten Sie die neuesten Updates und spannende Informationen direkt in Ihren Posteingang.

    Mit einem Klick auf „Abonnieren“ bestätige ich, dass ich den Cookiebot™-Newsletter abonnieren möchte. Ich kann das Abonnement des Cookiebot™-Newsletters und die Einwilligung in die Verwendung meiner Daten ganz einfach widerrufen, indem ich auf den Abmeldelink klicke. Oder ich kann mich schriftlich an [email protected] wenden, um eine Anfrage zu stellen. Datenschutz­richtlinie.