TopOnデバイスレベルデータレポート
サードパーティデータ統合によって生成されたデータは、クラスターの消費データ量に含まれますのでご注意ください
概要
インターフェースの概要
| インターフェース名 | タイプ | 粒度 | アトリビューション | コスト | 収益 | 表示 | クリック | コンバージョン |
|---|---|---|---|---|---|---|---|---|
| デバイスレベルデータレポート | API | ユーザーレベル | ✅ | ✅ | ✅ |
デバイスレベルデータレポートでは、ユーザーディメンションのデータを取得できます。一定期間内のユーザーの総表示、クリック、収益のデータが含まれます。そのため、AEシステムは各ユーザーの1日ごとのデータ、つまり1人のユーザーの1日ごとの広告表示数、クリック数、収益状況を個別に取得します。
TopOnデータの統合を始める前に、AEシステムのユーザー識別ルールを読み、AEが#distinct_idと#account_idによってユーザーを識別する仕組みを理解しておいてください
統合の流れ
- TopOnクライアントSDKとAE SDKを統合し、TopOn SDKでAEのユーザー識別IDを設定します
- TopOnの管理画面にログインし、Publisher KeyとAPP IDを取得します
- AE管理画面にログインし、サードパーティ統合モジュールでTopOn統合を追加して、統合プランを作成します
- AEシステムがデータを正常に受信しているかを確認し、レポートを作成します
1. クライアントSDKの設定
TopOnデータを統合する最初のステップは、クライアント側でAE SDKとTopOn SDKを連携させ、TopOn SDKでAEシステムのユーザー識別IDを設定することです
1.1 方法1(自動統合)
-
統合しているAndroid、iOS SDKについて
- SDKのバージョンが2.8.0~2.8.1の場合は、この方法をそのまま使用できます
- SDKのバージョンが2.8.2以上の場合は、サードパーティデータプラグインもインストールする必要があります。詳しくはAndroid SDKのサードパーティデータとiOS SDKのサードパーティデータを参照してください
-
統合しているUnity SDKのバージョンが2.4.0以上、Unreal SDKのバージョンが1.5.0以上の場合は、この方法をそのまま使用できます
AEのSDKの初期化と自動統合コードの有効化は、TopOnのSDKの初期化より前に完了する必要があります。次の手順に従って操作してください:
1. AE SDKを初期化します。
2. `enableThirdPartySharing`を呼び出して、ゲストIDを自動設定します。
3. TopOn SDKを初期化します。
- Android
- iOS
- Unity
- Unreal
// 1. Android SDKを初期化
TDConfig config = TDConfig.getInstance(this, APPID, TE_SERVER_URL);
TDAnalytics.init(config);
// 2. enableThirdPartySharingインターフェースを呼び出し、ta_distinct_idをTopOnイベントに設定
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.TOP_ON);
// 3. TopOn SDKを初期化
// 。。。
// 1. iOS SDKを初期化
TDConfig *config = [[TDConfig alloc] init];
config.appid = appid;
config.serverUrl = url;
config.mode = TDModeDebug;
[TDAnalytics startAnalyticsWithConfig:config];
// 2. enableThirdPartySharingインターフェースを呼び出し、ta_distinct_idをTopOnイベントに設定
[TDAnalytics enableThirdPartySharing:TDThirdPartyTypeTopOn];
// 3. TopOn SDKを初期化
// 。。。
// 1. Unity SDKを初期化
TDConfig config = new TDConfig("APPID","SERVER");
TDAnalytics.Init(config);
// 2. enableThirdPartySharingを呼び出し、ta_distinct_idをTopOnイベントに設定
TDAnalytics.EnableThirdPartySharing(TDThirdPartyType.TOPON);
// 3. TopOn SDKを初期化
// 。。。
// 1. Unreal SDKを初期化
UTDAnalytics::Initialize();
// 2. enableThirdPartySharingを呼び出し、ta_distinct_idをTopOnイベントに設定
TArray<FString> EventTypeList;
EventTypeList.Emplace(TEXT("TAThirdPartyShareTypeTOPON"));
UTDAnalytics::EnableThirdPartySharing(EventTypeList, AppID);
// 3. TopOn SDKを初期化
// 。。。
ゲストIDを変更した後は、再度enableThirdPartySharing()を呼び出してデータを同期する必要があります。
このプランの仕組みは、内部でATSDKのinitCustomMapメソッドを自動的に呼び出し、ATCustomRuleKeys.USER_IDを渡すというものです。渡す値はTAプロジェクトのゲストIDです。
1.2 方法2(手動統合)
TopOnのApp全体のカスタムルール設定を使用して、AEのdistinct_idをTopOn SDKのcustom_rule内のuser_idに渡します。呼び出し方法とコード例については、こちらのドキュメントを参照してください。
AEのSDKの初期化とinitCustomMapインターフェースの呼び出しは、TopOnのSDKの初期化より前に完了する必要があります。次の手順に従って操作してください:
1. AE SDKを初期化します。
2. `initCustomMap`を呼び出してゲストIDを設定します。
3. TopOn SDKを初期化します。
各SDKの手動統合のコードサンプルは次のとおりです:
- Android
- iOS
- Unity
// 1. Android SDKを初期化
TDConfig config = TDConfig.getInstance(this, APPID, TE_SERVER_URL);
TDAnalytics.init(config);
// 2. AEのゲストIDを取得(AEの#distinct_idに対応)
String distinctId = TDAnalytics.getDistinctId();
// 3. ゲストIDをTopOnの収集イベントに設定
Map<String, String> customMap = new HashMap<>();
customMap.put(ATCustomRuleKeys.USER_ID,distinctId);
ATSDK.initCustomMap(customMap);
// 4. TopOn SDKを初期化
// 。。。
// 1. iOS SDKを初期化
TDConfig *config = [[TDConfig alloc] init];
config.appid = appid;
config.serverUrl = url;
config.mode = TDModeDebug;
[TDAnalytics startAnalyticsWithConfig:config];
// 2. AEのゲストIDを取得(AEの#distinct_idに対応)
NSString *distinctId = [TDAnalytics getDistinctId];
// 3. ゲストIDをTopOnの収集イベントに設定
[[ATAPI sharedInstance] setCustomData:@{kATCustomDataUserIDKey:distinctId}];
// 4. TopOn SDKを初期化
// 。。。
// 1. Unity SDKを初期化
TDConfig config = new TDConfig("APPID","SERVER");
TDAnalytics.Init(config);
// 2. AEのゲストIDを取得(AEの#distinct_idに対応)
var distinctId = TDAnalytics.GetDistinctId();
// 3. ゲストIDをTopOnの収集イベントに設定
ATSDKAPI.initCustomMap(new Dictionary<string, string> { { "user_id", distinctId } });
// 4. TopOn SDKを初期化
// 。。。
2. TopOn管理画面での情報取得
SDKの設定が完了したら、TopOnの管理画面にログインして、データ取得に必要な認証情報を取得する必要があります。
認証情報を取得するには、まずTopOnの担当者にデバイスレベルデータレポートAPIの権限の開通を申請する必要があります。開通後、開発者管理画面のアカウント管理ページでPublisher Keyを取得できます。
次に、TopOn管理画面のアプリページで、データを統合するアプリのアプリIDを取得してください
3. プランの設定
SDKの設定が完了し、Publisher KeyとApp IDを取得したら、AEシステムにログインし、「サードパーティ統合」モジュールで新しいプランの設定を完了できます。下図はTopOnデバイスレベルデータレポートの設定画面です。この章の内容に従ってプランを作成してください:
3.1 認証情報の設定
「認証情報」の下にある「認証情報設定」ボタンをクリックし、ポップアップに認証作業で取得した情報を入力します
補足:
-
APP ID:先ほど取得したアプリID
-
Publisher Key:先ほど取得したPublisher Key
-
Brand:旧TopOnは傘下の事業を分割しています(詳しくはこちらの記事を参照)。使用している具体的な事業ブランドを入力する必要があります
- Takuを使用している場合(公式サイトのアドレスはtakuad.com)は、
takuを入力します(入力しない場合もtakuとみなされます) - TopOnを使用している場合(公式サイトのアドレスはwww.toponad.com)は、
toponを入力します
- Takuを使用している場合(公式サイトのアドレスはtakuad.com)は、
3.2 定期取得
「定期取得」モジュールで、AEシステムがTopOnデバイスレベルデータレポートを定期的に取得する方針を設定できます。毎日の特定の時刻、または1時間ごとに、一定期間のデータを取得するよう選択できます。取得したデータもデータ量に計上されるため、定期取得で長すぎる期間のデータを取得しないことをお勧めします
3.3 取得タイムゾーン
取得するデータのタイムゾーンも設定できます。デフォルトはUTC+8です
3.4 ユーザー識別フィールド
TopOnデバイスレベルデータレポートはユーザーレベルのデータであるため、ユーザー識別ルール、つまりTopOn SDKで設定したAEシステムのユーザー識別IDを設定する必要があります。AEシステムはこの設定に基づき、コールバックデータを変換する際に、これらのフィールドをデータ内のユーザー識別フィールドとして設定します。
本ドキュメントの前のステップに従ってクライアントSDKを設定した場合は、次の設定を使用してください:
- アカウントID関連フィールド:なし
- ゲストID関連フィールド:user_id
3.5 イベントデータの格納設定
「イベントデータの格納設定」スイッチをオンにすると、コールバックされたデータはすべてイベントテーブルに書き込まれます。イベントデータの格納を有効にすることをお勧めします。
3.6 ユーザープロパティの格納設定
デフォルトでは、AEシステムはTopOnデバイスレベルデータレポートのデータをユーザープロパティに書き込みません。一部のフィールドをユーザーテーブルに書き込みたい場合は、まずルールをオンにして実行状態にしてから、プロパティのマッピング機能でユーザーテーブルに書き込むフィールドを追加してください。ソースプロパティ名にはフィールドの格納名を入力する必要があります:
3.7 統合構成
統合構成モジュールでは、データ取得の詳細な設定を制御できます。たとえば、格納後のイベント名などです
統合構成の内容はJSONです。次の内容に従ってカスタム設定できます:
| モジュール | 名前 | 意味 |
|---|---|---|
| sink_event | event_name | 格納後のイベント名。カスタマイズ可能 |
| transfer | double_columns | 指標フィールドです。変更しないでください |
3.8 イベントの格納ルール
- AEシステムは毎日の0時をイベントの#event_timeとして使用します
- デフォルトで使用されるイベント名は -- ta_ad_revenue_topon です
- その他のフィールドはすべて格納されます。格納されるすべてのイベントプロパティは以下のとおりです
| フィールド | 備考 |
|---|---|
| placement_id | 広告枠ID |
| placement_name | 広告枠名 |
| placement_format | 広告タイプ: 0:native;1:rewarded_video;2:banner;3:interstitial; 4:splash |
| android_id | デバイスID、androidid |
| gaid | Googleの広告デバイスID |
| idfa | iOSのデバイスID |
| area | 国 |
| impression | 表示数 |
| click | クリック数 |
| revenue | 収益。サードパーティ広告プラットフォームの収益をデバイスレベルで分割したもので、通貨単位は開発者管理画面の設定と同じです |
ecpm | TopOnが収益APIに基づいてデバイスの表示ごとに分割した収益と、TopOnが集計したデバイスの表示からeCPMを算出します。計算式:(デバイス収益/TopOnが集計したデバイスの表示)* 1000。注:eCPMは2日遅れで提供されます |
| is_abtest | コントロールグループまたはテストグループ: 0:コントロールグループ、またはA/Bテストが未開通であることを表します;1:テストグループを表します |
| traffic_group_id | コントロールグループまたはテストグループのid |
| segment_id | トラフィックグループID |
| segment_name | トラフィックグループ名 |
| idfv | iOSのデバイスID |
| oaid | AndroidのデバイスID |
| user_id | 開発者のカスタムユーザーID |
| network_firm_id | 広告プラットフォームID |
| network_firm | 広告プラットフォーム名 |
| currency | 開発者アカウントの通貨。USDは米ドル、CNYは人民元を表します |
| os_version | iOSデバイスのOSバージョン |
| att_status | iOSデバイスのATT許可ステータス: 0:Not determined(許可するかどうか未決定) ;1:Restricted (制限あり);2:Denied(拒否済み);3:Authorize(許可済み) |
| imei | Androidのデバイス識別コード |
| device_type | IOSデバイスタイプ。列挙値の説明: 0:IOS以外のデバイス;1:iphone;2:ipad |
| brand | デバイスブランド名 |
| model | デバイスモデル |
| app_vn | アプリのバージョン名 |
| app_vc | アプリのバージョン番号 |
| new_user_type | 新規ユーザータイプ。列挙値の説明: 1: 新規ユーザーである;2: 新規ユーザーではない |
| channel | チャネル。開発者がTopOn SDKで渡したチャネル |
| estimate_revenue | 推定収益。入札広告ソースはリアルタイムの広告表示価格を集計して推定収益を算出し、非入札広告ソースは手動入力したeCPM価格 * TopOnが集計した表示数を集計して推定収益を算出します |
3.9 標準化フィールド
TopOnデバイスレベルデータレポートの一部のフィールドについて、AEシステムは標準化処理を行います
| 元フィールド | 標準化フィールド | 意味 |
|---|---|---|
| network_firm | te_ads_object.media_source | マネタイズチャンネル |
| placement_name | te_ads_object.placement | 広告の配置 |
| area | te_ads_object.country | 国・地域コード |
| currency | te_ads_object.currency | コストまたは収益の通貨 |
| impression | te_ads_object.impressions | 露出数 |
| click | te_ads_object.clicks | クリック数 |
| revenue | te_ads_object.revenue | マネタイズ収益 |

