この連携は、すでにAppsFlyerをご利用のお客様が対象になります。

AppsFlyer連携のプレスリリースはこちら
https://press.plaid.co.jp/data/20180710/

連携をご希望の際は、プレイドまでお問い合わせください。

連携概要

KARTEとAppsFlyerを連携させることにより、KARTEとAppsFlyerで相互にデータ連携をすることが可能です。
AppsFlyer → KARTEへのデータ連携により、アプリへの流入元データに応じて、アプリ起動後の接客をパーソナライズしたり、KARTE → AppsFlyerへのデータ連携により、プッシュ通知やアプリ内メッセージへの反応を含む、より細かなアプリ内の行動データをAppsFlyerの管理画面でレポートとしてみることができるほか、広告配信リスト作成の条件としてご利用いただくことも可能です。

AppsFlyer → KARTEへの連携

できること

  • AppsFlyerで発生したイベント(以降、AppsFlyerイベント)には、インストール/アプリ起動時の流入元の情報が付与されています。これらの情報を使ってセグメントを定義することで、起動前と起動後のコミュニケーションの両方を顧客軸で最適化することができます。
  • KARTE上のユーザー(メンバー / ビジター両方)に対して、 AppsFlyerイベントを紐付けることができます。
  • AppsFlyerイベントを使ったセグメントの作成、接客サービスの配信トリガーの設定が可能になります。

想定される利用シナリオ

  • アプリインストール / アプリの起動のきっかけとなった流入元(Webサイト内の導線や広告キャンペーン等)に応じて、アプリ起動時に表示するアプリ内メッセージを出し分ける
  • アプリインストール / アプリの起動のきっかけとなった流入元(Webサイト内の導線や広告キャンペーン等)に応じて、それ以降に送信するプッシュ通知の内容をパーソナライズする

【注意】
現在(2022年3月1日時点)、AppsFlyer提供のAPIの仕様により、iOS 14.5以降を利用のユーザーについては、ATT同意ユーザーに限り、アトリビューションが取得可能となります。ご注意下さい。

KARTE → AppsFlyerへの連携

できること

  • KARTEで計測しているウェブまたはアプリでのユーザー行動を、Webhookテンプレートを使ってリアルタイムにAppsFlyerに連携します。
  • 連携されたデータは、AppsFlyerのダッシュボード上でレポートとして見ることができ、また広告配信リストの条件として指定することも可能です。
  • 連携には、KARTEのカスタムイベント(任意名称で構いません)を通じて、appsflyer_device_idをKARTEにお送り頂く必要がございます。appsflyer_device_id の取得方法については、サーバー間 (S2S) イベントAPI for モバイルを参照してアプリに実装ください
  • 「KARTE to AppsFlyerイベント連携」のWebhookテンプレートをご利用いただき、#{appsflyer_device_id} というユーザー情報変数に、appsflyer_device_id を保持しているカスタムイベントを設定ください

想定される利用シナリオ

  • KARTEで計測している、ウェブ/アプリの行動データをリアルタイムにAppsflyerに連携し、広告配信リスト作成の条件として利用する

連携に必要な準備、実装

すでに、KARTE for App および AppsFlyer のセットアップは完了していることを前提とします。

AppsFlyer ダッシュボードでの事前準備

  1. 設定>連携済みパートナー>「KARTE」で検索
  2. インテグレーション設定で、KARTEのプロジェクトの「api_key」を入力
  3. Default Postbacks>オプション送信を「Off」にします。(「All media sources, including organic」に設定した場合でもKARTEへのデフォルトポストバックは発生しません。)
  4. In-App Events Settingで、KARTEのプロジェクトの「api_key」を入力
  5. In-App Events PostbackをONにする
  6. KARTEに連携するイベントを指定する

nullIn-App Events Postback で、KARTEに連携するイベントを指定可能です。やりたいシナリオで必要なイベントのみをホワイトリストで指定してください。(KARTEにIn-Appイベントを連携するには、Appsflyer側での指定とあわせ、後述するKARTE側でも受信するIn-Appイベントの指定が必要となります。)

KARTE 管理画面での事前準備

AppsFlyer連携の有効化設定をプレイド側で行います。

KARTE プラグイン設定画面にて 連携するIn-App Eventの指定

Appsflyer側のIn-Appイベントの連携が必要な場合に限り、本手順で KARTEに連携するIn-App Eventの指定を行います。

  • KARTEログイン後、左カラムメニューの「インサイト > ストア > アプリ設定 > Appsflyer」を選択します
  • Appsflyerに関する詳細設定を開きます
  • プロジェクト別設定にて、連携するIn-Appイベントをカンマで指定し設定下さい

null

ネイティブアプリでの実装

AppsFlyer SDKで取得可能な、流入経路情報をKARTE SDKを使って送信する必要があります。

以下にサンプルコードを記載します。

iOSの場合
• インストールイベント

extension AppDelegate: AppsFlyerLibDelegate {
  func onConversionDataSuccess(_ data: [AnyHashable: Any]) {
    if (data["is_first_launch"] as! Bool) {
        Tracker.track("_appsflyer_install", values: data)
    }
  }
}

• In-App イベント

AppsFlyerLib.shared().logEvent("EVENT_NAME", withValues: ["visitor_id": KarteApp.visitorId])

Androidの場合
• インストールイベント

AppsFlyerConversionListener conversionDataListener = new AppsFlyerConversionListener() {
@Override
  public void onConversionDataSuccess(Map<String, String> conversionDataMap) {
    if (conversionDataMap.get("is_first_launch").equals("true")) {
      Tracker.getInstance(context, APP_KEY).track("_appsflyer_install", new JSONObject(map));
    }
  }
  @Override
  public void onConversionDataFail(String errorMessage) {
  }
  @Override
  public void onAppOpenAttribution(Map<String, String> attributionData) {
  }
  @Override
  public void onAttributionFailure(String errorMessage) {
  }
};
AppsFlyerLib.getInstance().init("APPSFLYER_DEV_KEY", conversionDataListener, getApplicationContext());
AppsFlyerLib.getInstance().start(this);

• In-App イベント

Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put("visitor_id",Tracker.getInstance(context, APP_KEY).visitorId);
AppsFlyerLib.getInstance().logEvent(context,"EVENT_NAME",eventValue);

以上で、初期に必要な設定は完了です。

AppsFlyerイベント KARTEイベントの対応

イベント名とパラメータの対応表

AppsFlyerプラグインによって KARTE に連携される AppsFlyer イベントと、KARTEで発生するイベント名 および パラメータの対応表を以下に記載します。

AppsFlyerイベント KARTEイベント 備考
install _appsflyer_install iOS 14.5以降ではATT同意ユーザーに限り、アトリビューション情報が取得可能です。(パラメータ詳細は※別紙を参照)また、onConversionDataSuccessなどをフックしてSDKからインストールイベントを送る方式のみのご提供となり、AppsFlyerからKARTEへのデフォルトのinstallポストバックは行われません。
In-app event _appsflyer_{event_name} ※別紙記載のパラメータ + AppsFlyer SDK でイベント送信時に設定した Event Value
・{event_name} には AppsFlyer ダッシュボードで設定したKARTEに送信するイベント名が入ります
・In-app Event の種類に応じて異なる {event_name} が入ります。

※ 別紙: KARTE に送信される AppsFlyer イベントのパラメータ一覧

パラメータについての補足

AppsFlyer イベントで定義されている一部のパラメータは、 KARTE イベントでは異なる名前で連携されます。(KARTE 上で日付型のパラメータとして利用できるようにするため)

AppsFlyer イベント KARTEイベント
click_ts click_date
install_unix_ts install_unix_date
timestamp timestamp_date

注意点

広告ID(IDFA/AAID)の連携について

Appsfyer連携で、広告ID(IDFA/AAID)はKARTEに連携されません。広告IDをKARTEに連携したい場合には、広告ID(IDFA/AAID)の送信について をご確認ください。

iOS 14.5以降のユーザーのデータについて

AppsFlyerとKARTEの連携に際しては、IDFAを用いておりませんが、AppsFlyerでのインストール経路判定の際、iOS 14の端末ではIDFAが収集できないケースが増え、probabilistic(確率的)計測による経路判定のデータの増加が見込まれます。その場合、IDFAによる手法と比較すると精度が落ちるため、その精度低下を踏まえた施策のご検討をお願い致します。
また、IDFAの取得に同意した場合、しなかった場合で付与される情報が異なります。詳細は、iOS14 advanced privacy postback guide for ad networksをご参考ください。

AppsFlyerの高プライバシー一括設定のフレームワーク

AppsFlyerには、エンドユーザーのトラッキングへの同意状況に基づき、データをサードパーティに共有するかどうかをコントロールする「高プライバシー一括設定のフレームワーク」が存在します。デフォルトでは、『高プライバシー一括設定(AAP)』がONとなっており、ユーザーのATT同意に限り、該当データがKARTEに連携される仕様です。
ATTに同意しないユーザーに関するデータをKARTEに連携する際には、以下の2つの手順をご確認下さいませ

(1)AppsFlyer管理画面の設定>アプリ設定ページの高プライバシー一括設定(AAPセントラルスイッチ)をオフに切替え、保存します
(2)設定>連携済みパートナーでKARTEを選択ののち、連携タブにて高プライバシーポストバックをオフにします

なお、ATT非同意ユーザーについては、IDFAを収集する設定にした際も、KARTEへの送信データには含まれませんのでご留意下さい。

※ 最新の仕様については、AppsFlyerのドキュメントをご参照下さい。

Googleのキャンペーンタイプの名称変更に伴う注意

  • 2021年2月16日(予定)より、Google広告のキャンペーンに関するAppsFlyerの仕様変更に伴い、関連するフィールドについて、パラメータ値が変更される見込みです。
  • 変更されるのは、フィールド名 af_channel となります。変更内容の詳細は、AppsFlyerのGoogle広告のパラメーターマッピングを参照下さい
  • イベント画面などにて、上記フィールドのパラメータのご確認を頂いたのち、適時 セグメント設定などの変更をお願い致します。