IAB TCF 2.0のサポートとPlatform Web SDKの統合

このガイドでは、タグを使用せずに、Interactive Advertising Bureau Transparency & Consent Frameworkバージョン2.0(IAB TCF 2.0)をAdobe Experience Platform Web SDKに統合する方法を説明します。 IAB TCF 2.0との統合の概要については、概要を参照してください。 タグとの統合方法に関するガイドについては、タグ🔗のIAB TCF 2.0ガイドを参照してください。

はじめに

このガイドでは、__tcfapiインターフェイスを使用して同意情報にアクセスします。 クラウド管理プロバイダー(CMP)と直接統合する方が簡単な場合があります。 ただし、CMPは通常、TCF APIと同様の機能を提供するので、このガイドの情報は引き続き役立つ場合があります。

メモ

以下の例では、コードが実行されるまでに、window.__tcfapiがページ上で定義されることを前提としています。 CMPには、__tcfapiオブジェクトの準備が整ったら、これらの関数を実行できるフックが用意されています。

IAB TCF 2.0をタグとAdobe Experience Platform Web SDK拡張機能と共に使用するには、XDMスキーマを使用可能にする必要があります。 これらのいずれも設定していない場合は、先に進む前にこのページを表示して開始します。

また、このガイドでは、Adobe Experience Platform Web SDKを実際に使用するうえで理解している必要があります。 簡単なリフレッシャーについては、Adobe Experience Platform Web SDKの概要およびよくある質問のドキュメントを参照してください。

デフォルトの同意の有効化

すべての不明なユーザーを同じように扱う場合は、デフォルトの同意をpendingまたはoutに設定できます。 この設定は、同意の環境設定を受け取るまで、エクスペリエンスイベントをキューに追加または破棄します。

デフォルトの同意について詳しくは、Platform Web SDK設定ドキュメントのデフォルトの同意に関する節を参照してください。

gdprAppliesに基づくデフォルトの同意の設定

一部のCMPは、EU一般データ保護規則(GDPR)がお客様に適用されるかどうかを判断する機能を提供します。 GDPRが適用されない顧客の同意を前提とする場合は、TCF API呼び出しでgdprAppliesフラグを使用できます。

次の例は、これをおこなう方法の1つを示しています。

var alloyConfiguration = { ... };
window.__tcfapi('getTCData', 2, function (tcData, success) {
  if (success) {
    alloyConfiguration.defaultConsent = tcData.gdprApplies ? "pending" : "in";
    window.alloy("configure", alloyConfiguration);
  }
});

この例では、configureコマンドは、TCF APIからtcDataを取得した後に呼び出されます。 gdprAppliesがtrueの場合、デフォルトの同意はpendingに設定されます。 gdprAppliesがfalseの場合、デフォルトの同意はinに設定されます。 必ずalloyConfiguration変数に設定を入力してください。

メモ

デフォルトの同意がinに設定されている場合でも、 setConsentコマンドを使用して、顧客の同意設定を記録できます。

setConsentイベントの使用

IAB TCF 2.0 APIは、お客様が同意を更新した場合にイベントを提供します。 これは、顧客が最初に環境設定を設定したときと、顧客が環境設定を更新したときに発生します。

次の例は、これをおこなう方法の1つを示しています。

const identityMap = { ... };
window.__tcfapi('addEventListener', 2, function (tcData, success) {
  if (success && tcData.eventStatus === 'useractioncomplete') {
    window.alloy("setConsent", {
      identityMap,
      consent: [
        {
          standard: "IAB TCF",
          version: "2.0",
          value: tcData.tcString,
          gdprApplies: tcData.gdprApplies
        }
      ]
    });
  }
});

このコードブロックは、useractioncompleteイベントをリッスンし、同意文字列とgdprAppliesフラグを渡して設定します。 顧客のカスタムIDがある場合は、必ずidentityMap変数を入力してください。 setConsentの呼び出しについて詳しくは、同意のサポートに関するガイドを参照してください。

sendEventに同意情報を含める

XDMスキーマ内で、エクスペリエンスイベントから同意設定情報を保存できます。 この情報を各イベントに追加する方法は2つあります。

まず、sendEvent呼び出しのたびに関連するXDMスキーマを指定できます。 次の例は、これをおこなう方法の1つを示しています。

var sendEventOptions = { ... };
window.__tcfapi('getTCData', 2, function (tcData, success) {
  if (success) {
    sendEventOptions.xdm.consentStrings = [{
      consentStandard: "IAB TCF"
      consentStandardVersion: "2.0"
      consentStringValue: tcData.tcString,
      gdprApplies: tcData.gdprApplies
    }];
    window.alloy("sendEvent", sendEventOptions);
  }
});

この例では、TCF APIの同意情報を取得し、XDMスキーマに同意情報が追加されたイベントを送信します。 sendEventコマンドオプションの内容については、トラッキングイベントのガイドを参照してください。

すべての要求に同意情報を追加するもう1つの方法は、onBeforeEventSendコールバックを使用することです。 この方法の詳細については、トラッキングイベントのドキュメント内のイベントのグローバルな変更に関する節を参照してください。

次の手順

これで、IAB TCF 2.0とPlatform Web SDK拡張機能の使用方法が学びました。Adobe Analyticsやリアルタイム顧客データプラットフォームなど、他のAdobeソリューションとの統合も選択できます。 詳しくは、 IAB Transparency & Consent Framework 2.0の概要を参照してください。

このページ