Consent Handling

The Tickaroo Embed Version 3 is deprecated for all use cases, except for sports. If you are not using sports, we strongly encourage using V4. V3 will not receive any new features of the News Editor V2!

Rational

Why is consent handling becoming even more important? The short and the long answer is GDPR. When third-party content is included in a liveblog, if consent handling has not been enabled, the reader’s data is being unknowingly or unwillingly transmitted to the social media platform. That’s why it’s a topic that every platform or news site has to think about. Luckily our liveblog product provides several consent handling options to our partners so that they can choose which solution best fits their needs. While the first option is not recommended for most cases, the other points allow for flexibility with regard to compliancy.

With the Embed JS there are five main options when it comes to third-party content that is being embedded into the liveblog.

  1. All embedded contents enabled
  2. All embedded contents disabled
  3. Integrated consent handling
  4. Constrained integrated consent handling
  5. Custom consent handling

Choosing the right option
There are definite drawbacks to the first two options: one is not GDPR compliant and the other could have a negative impact on the storytelling since not all content is being included that is necessary for the narrative. However, the last three points are not only compliant, but also accommodate our clients’ needs the most. In fact, the integrated consent handling 2-click switch is not only the easiest but also the fastest solution for keeping liveblogs reader-friendly and GDPR compliant.

<div id="liveblog_consent_on"></div>
<script>
  _tik('embedLiveblog', {
    "id": "5f47bdba2a03d3abfab3c607",
    "clientId": "5c99e3358dce8c729e697547",
    "showWebEmbeds": "on",
    "container": "#liveblog_consent_on"
  });
</script>
<div id="liveblog_consent_ooff"></div>
<script>
  _tik('embedLiveblog', {
    "id": "5f47bdba2a03d3abfab3c607",
    "clientId": "5c99e3358dce8c729e697547",
    "showWebEmbeds": "off",
    "container": "#liveblog_consent_off"
  });
</script>

This enables a small switch to be shown that allows readers to select which platforms may display content in the liveblog. Unless actively enabled, we will only show a GDPR-compliant preview of the tweet, post, or video.

<div id="liveblog_consent_handling"></div>
<script>
  _tik('embedLiveblog', {
    "id": "5f47bdba2a03d3abfab3c607",
    "clientId": "5c99e3358dce8c729e697547",
    "showWebEmbeds": "consent_handling",
    "container": "#liveblog_consent_handling"
  });
</script>

Use the webEmbedConsentConstraints object to set individualized consent handling for any of the supported web embeds. For example, you can disable third-party embedded content from YouTube but enable content from Facebook. Third-party embedded content that is not defined in webEmbedConsentConstraints will be handled in the same way as described under integrated consent handling above (user controls consent handling with a small switch).

<div id="liveblog_constrained_consent_handling"></div>
<script>
  _tik('embedLiveblog', {
    "id": "60ddafe60b36226448950c89",
    "clientId": "5c99e3358dce8c729e697547",
    "showWebEmbeds": "consent_handling",
    "webEmbedConsentConstraints": {"YouTube": false, "Facebook": true},
    "container": "#liveblog_constrained_consent_handling"
  });
</script>

If the webpage, into which the liveblog is integrated, already has consent handling, then the developers can write code to interact with the consent handling API of the liveblog’s Embed JS. The latter will “ask” the website for consent for each social media platform. When we have e.g. a Twitter post, and it has already been disabled, the Embed JS will automatically display its 2-click consent switch. When the user clicks this, the third-party embedded content will be visible, and the Embed JS will notify the website so that the consent handling can also be updated.

<div id="liveblog_custom_consent_handling"></div>
<script>
  var Consent = {"Twitter": false}

  _tik('embedLiveblog', {
    "id": "5f47bdba2a03d3abfab3c607",
    "clientId": "5c99e3358dce8c729e697547",
    "showWebEmbeds": "custom_consent_handling",
    "container": "#liveblog_custom_consent_handling",
    "webEmbedConsentCallback": function(platform) { 
      return Consent[platform];
    },
    "webEmbedConsentUpdateCallback": function(platform, consent) {
      Consent[platform] = consent;
      alert("Consent for platform " + platform + " changed to " + consent);
    }
  });
</script>