リアルタイムコールバック

コールバック(ポストバックとも呼ばれる)は、1台のサーバーともう1台のサーバーエンドポイントとの間で送信されるpingです。Adjustはリアルタイムコールバックを使用して、広告IDやアトリビューションの詳細、さらにはアプリ内データをサーバーに転送します。Adjustは、Adjustが計測する以下のイベントに対して、コールバックを送信することができます。 

  • impressions
  • clicks
  • installs
  • sessions
  • カスタムアプリ内イベント
  • リアトリビューション
  • アンインストール*
  • 再インストール*
  • リアトリビューション再インストール*
  • 更新されたアトリビューション
  • 広告費用**

*Adjustのアンインストールおよび再インストール計測パッケージをご契約のお客様のみご利用いただけます。詳細については sales@adjust.com までお問い合わせください。
**Business Pro以上の料金プランでのみご利用いただけます。

Adjustでは、イベント毎にコールバックを設定することができます。このため、イベント毎に異なるデータセットを定義することが可能です。基本設定の手順を利用すると、Adjustが計測する特定の数のイベントのコールバックを設定したり、Adjustが計測する各イベントの同じデータセットを受信できます。完了したら、詳細設定に移動して、カスタムデータの受信とコールバックのフィルターを行います。

事前準備

設定を行う前に、以下のご利用の条件をご覧ください。

  • GET syntaxリクエストを受信できるお客様保有のサーバー環境が必要です(もしくは、AdjustとAmazon S3との統合を検討することをお勧めします)。
  • AdjustのサーバーIPをホワイトリストに登録し、Adjustのデータのみがサーバーに届くようにしてください。
参考
  • 以下は、管理画面でのコールバックの設定手順です。コールバックURLの作成については、コールバックの効果的な使用方法を参照してください。
  • Adjust cannot forward callbacks larger than 1MB

基本設定

単一イベントのコールバックを設定

Adjust管理画面にて
  1. アプリに移動して、アプリオプションの (▲) ボタンをクリックします。
  2. その他の設定 (All Settings)>ローデータエクスポート (Raw Data Export) > リアルタイムコールバック (Real-Time Callbacks) を選択します。
  3. ここでは、Adjustで計測されているすべてのイベントのリストが表示されます。このリストには、自動的に計測されているイベントとカスタムイベントが含まれます。
  4. コールしたいイベントを特定し、右端にある編集(鉛筆)アイコンを選択します。
  5. コールバックURLをCALLBACK URLフィールドに入力します(コールバックURLのテンプレートおよび推奨のプレースホルダーを参照) 
  6. 問題がなければアップデート(UPDATE) を選択してください。
編集が完了すると、Adjustはローデータをサーバーエンドポイントにリアルタイム送信します。

グローバルコールバックを設定

グローバルコールバックは、Adjustで計測された全てのイベントに設定することができるマスターコールバックです。グローバルコールバックを使用すると、Adjustが計測する全てのイベントの同じ正確なデータポイントを確実に受け取ることができます。グローバルコールバックは、個々のイベントレベルで指定した他のコールバックとともに実行されます。従って、イベントレベルでコールバックに加えてグローバルコールバックを設定すると、グローバルコールバックで要求されたデータと、イベントレベルで要求されたデータを含む二つのコールバックが起動されます。
Adjust管理画面にて
  1. アプリに移動して、アプリオプションの (▲) ボタンをクリックします。
  2. その他の設定 (All Settings)>ローデータエクスポート (Raw Data Export) > リアルタイムコールバック (Real-Time Callbacks) を選択します。
  3. ここでは、Adjustで計測されているすべてのイベントのリストが表示されます。このリストには、自動的に計測されているイベントとカスタムイベントが含まれます。
  4. グローバルコールバック(GLOBAL CALLBACK)を選択する。
  5. コールバックURLをCALLBACK URLフィールドに入力します(コールバックURLのテンプレートおよび推奨のプレースホルダーを参照) 
  6. 問題がなければアップデート(UPDATE) を選択してください。
グローバルコールバックを使用する場合は、コールバック文字列に次のAdjustプレースホルダを追加することをお勧めします。
  • {activity_kind} - イベントタイプを判別します:インプレッション、クリック、インストール、拒否されたインストール(アドフラウド防止機能においてのみ)、セッション、リアトリビューション、アンインストール、再インストール、リアトリビューションの再インストール、アップデートされたアトリビューション、アプリ内イベント、広告費用(cost_updated
  • {event} - イベントトークンレベルで各種アプリ内イベントを識別できます。
  • {event_name} - Adjust管理画面に記載されたイベント名により、各種アプリ内イベントを識別できます。*
*イベント名はAdjust管理画面でいつでも変更できるため、{event_name}プレースホルダーは読み取り可能なラベルにのみ使用してください。それに対してイベントトークンは永続的なため、定数としてレポートでいつでも参照できます。

詳細設定

インストール、セッション、リアトリビューションのカスタムデータを受信


またコールバックを通じて転送されるデータは、カスタマイズすることが可能です。
セッションコールバックパラメータを使うと、アプリ独自で取得もしくは付与しているユーザーのカスタムデータをインストール時(初回起動時)、セッション(アプリ起動時)、リアトリビューション時に指定のサーバーへ送信できます。アプリ独自のカスタムデータとは、ユーザーID、商品IDなどのサービス独自の情報を指し、セッションコールバックパラメータを使うとこの様な情報をアプリから取得して指定サーバーへ転送することができます。セッションコールバックパラメータを送信するには、そのすべてのセッションコールバックパラメータをAdjust SDKに実装する必要があります(開発者向け手順を参照)。

セッションコールバックパラメータがAdjust SDKに実装されると、Adjustはインストール時(初回起動時)、セッション(アプリ起動時)、リアトリビューション時に指定のサーバーへ自動的に送信することができます。

セッションコールバックとイベントコールバックを設定している場合、イベントとセッションに同じパラメータ名(キー名)を使用していると、イベント値が常にセッション値より優先されます。下記例:
  • セッション時:foo=10
  • イベント時:foo=25
イベントコールバックにはfoo=25が含まれます。

アプリ内イベントのカスタムデータポイントを受信

Adjustでは、SDKまたはサーバー間(S2S)にてアプリ内イベントを計測することができます。以下に実装方法を説明します。
Adjust SDKによるアプリ内イベントの計測

Adjust SDKを使用してアプリ内イベントを計測する場合、 すべてのイベントコールバックパラメータをAdjust SDKに実装する必要があります(開発者向け手順を参照)。イベントコールバックパラメータがAdjust SDKに実装されると、イベントの計測時に、バックエンドではこれらのカスタム値をコールバックURLに自動的に書き込みます。Adjust管理画面では、コールバックURL文字列にイベントコールバックパラメータを追加する必要はありません。

アプリ独自のユーザーカスタムデータ(ユーザーID、商品IDやトランズアクションID)はイベントコールバックを使用してサーバーへ転送しない限り、喪失してしまいます。弊社ではデータの保存は致しませんのでご注意ください。

サーバー間(S2S)でのアプリ内イベントの計測

サーバー間(S2S)でイベントを計測する場合も、アプリ内イベントとしてAdjust管理画面のレポートに表示することができます。 Adjustがイベント情報を受信すると、イベントの計測時に、バックエンドではこれらのカスタム値をコールバックURLに自動的に書き込みます。Adjust管理画面では、コールバックURL文字列にイベントコールバックパラメータを追加する必要はありません。

アプリ独自のユーザーカスタムデータ(ユーザーID、商品IDやトランズアクションID)はイベントコールバックを使用してサーバーへ転送しない限り、喪失してしまいます。弊社ではデータの保存は致しませんのでご注意ください。

同じアプリ内イベントに複数のコールバックを設定する方法

1つのイベントに対してご希望の数のコールバックを設定できます。手順は各URLをスペースで区切るだけです。設定手順は次の通りです。

  1. アプリに移動して、アプリオプションの (▲) ボタンをクリックします。
  2. その他の設定 (All Settings)>ローデータエクスポート (Raw Data Export) > リアルタイムコールバック (Real-Time Callbacks) を選択します。
  3. Adjustで計測されているすべてのイベントのリストが表示されます。このリストには、自動的に計測されているイベントとカスタムイベントが含まれます。
  4. コールしたいイベントを特定し、右端にある編集(鉛筆)アイコンを選択します。
  5. コールバックURLをCALLBACK URLフィールドに入力します(コールバックURLのテンプレートおよび推奨のプレースホルダーを参照) 
  6. キーボードのスペースバーを使用してスペースを作成します。
  7. コールバックURL(CALLBACK URL)フィールドに、2番目のコールバックURLを挿入します。
  8. 必要に応じてこの手順を繰り返します。
  9. 設定が完了したら、更新(UPDATE)を選択します。

条件付きコールバックを使用したデータエクスポートのフィルタリング

条件付きコールバックとは、指定された条件の下で送信されるコールバックを意味します。つまりこの場合のコールバックは、一定の基準を満たす場合にのみ実行されます。コールバックは、Adjust SDKの環境設定や端末タイプなどに基づいてフィルタリングすることが可能です。

まず、条件を定義する際に使用するプレフィックスを指定してください。
  • equalは、設定した条件下でのみにおいてコールバックを実行します。
  • notequalは、指定した条件を除く、すべてのイベントに対してコールバックを実行します。
  • containedは、1つ以上の条件を満たす場合にコールバックを実行します。
  • notcontainedは、指定した条件を除く、すべての値に対してコールバックを実行します。
prefix, {placeholder}*, value, callback URLの形式を使用して条件を構築します。

*すべてのAdjustプレースホルダのリストを参照してください。

  • notequalは、1つの値でのみ使用できます。複数の値を除外する場合は、notcontainedを使用してください。
  • 複数の単語で構成される値は+でエスケープする必要があるため、my campaignmy+campaignになります。

equalの例
​equal,{environment},sandbox,http://test.your-server.com?source={tracker_name}
この条件付きコールバック設定では、サンドボックス環境で計測されているアクティビティをテストサーバーに送信します。

条件として、任意の数のプレースホルダを設定できます。

文字列の値を持つequalの例
equal,{environment}{device_type},sandboxtablet,http://test.your-server.com?source={tracker_name}
この条件付きコールバック設定では、サンドボックス環境のタブレットで計測されているアクティビティをテストサーバーに送信します。

containedを使用すると、複数の特定のトラッカーに関連するイベントをカバーできます。

containedの例:
contained,{event},abc123;xyz456,http://production.your-server.com?source={tracker_name}
この条件付きコールバック設定では、abc123またはxyz456のトークンを使用して計測されているイベントを本番サーバーに送信します。

反対にnotcontainedは複数のソースによるアクティビティを除外します。

notcontainedの例
notcontained,{network_name},Organic;Facebook+Installs,http://production.your-server.com?source={tracker_name}

この条件付きコールバック設定では、ネットワーク名がFacebook Installs、またはOrganic以外のイベントを本番サーバーに送信します。

コールバックのよくある質問

コールバック文字列とは何ですか。

コールバック文字列は、サーバーエンドポイント(ドメインとパス)、追加パラメーター(キー)、およびAdjustプレースホルダー(値)で構成されるURLです。

Adjustプレースホルダーは、Adjustが計測しているユーザーまたはエンゲージメントのデータを、Adjustがコールバック文字列で動的に提供できるようにするマクロです。コールバック文字列には、Adjustプレースホルダーのリストから、任意のプレースホルダーを使用できます。コールバック文字列に配置されたパラメーターは完全にカスタマイズが可能で、指定したサーバーエンドポイントの仕様に合わせることができます。各セットをアンパサンド(&)で区切れば、必要な数のキーと値のペアを追加できます。​

https://mydatawarehouse.com/adjust/info?client_name={app_name}&iOS_device={idfa}&source={network}&campaign={campaign_name}

ヒント:任意のテキストエディターでコールバックURLの構造を定義し、最終のURLをAdjust管理画面に挿入します。

Adjust SDKでコールバックパラメータを設定すれば、Adjustコールバックにカスタムアプリデータを含めることも可能です。すべてのコールバックパラメータはコールバックに自動的に追加されるので、管理画面のコールバックURLに追加する必要はありません。iOSおよびAndroidのSDKの手順)

Adjustのコールバックに条件付けを行って、コールバックするタイミングを正確に設定することができます。条件付きのプレフィックス(prefixes)をAdjustプレースホルダー(パラメータ)や値と組み合わせることで、たとえば、デバイスがタブレットの場合のみ、またはイベントが特定のトラッカーで生じた場合のみなどに対して、コールバックの発生条件を設定することができます。

「リアルタイム」とはどのような意味ですか。

リアルタイムとは、Adjustのシステムでイベントが計測されると、そのイベントのデータのコールバックを送信するエンドポイントを即時に確認することを意味します。コールバックのリクエストを確認後、指定されたエンドポイントにデータを瞬時に送信します。

更新されたアトリビューションまたはリアトリビューションコールバックとは何ですか。

更新されたアトリビューションまたは更新されたリアトリビューションコールバックは、インストールまたはリアトリビューションコールバック後、ユーザーのアトリビューションデータが変更された場合に発生します。

Adjustがアトリビューションまたはリアトリビューションを決定したで、連携ネットワークからアトリビューション情報を受信する場合もあります。こうした稀なケースでは、ユーザーのアトリビューションデータが変更されているため、AdjustがAdjust管理画面のユーザーのアトリビューション情報を更新します。この場合、Adjustは、更新されたアトリビューションに対して、更新されたアトリビューション情報を含むコールバックを送信することができます。

更新されたアトリビューション情報の受信を希望する場合は、コールバック文字列に次のAdjustプレースホルダを追加することをお勧めします。
  • {outdated_tracker}:ユーザーの初回アトリビューションにおけるトラッカートークン
  • {outdated_tracker_name}:ユーザーの初回アトリビューションにおけるトラッカー名
  • {attribution_updated_at}:修正されたアトリビューションにおけるタイムスタンプ
  • {activity_kind}install_updateまたはreattribution_update
注:
  • アトリビューションおよびリアトリビューションに関するご案内は、2017年3月に更新されました。
  • 更新されたアトリビューションおよびリアトリビューションコールバックには、アトリビューション情報とAdjustプレースホルダーのデータのみが含まれます。

Adjustコールバックが失敗した場合はどうなりますか。

  • 送信先サーバーのエンドポイントが使用できない場合、または500のhttpレスポンスを検知した場合、Adjustは、10秒/1分/10分/1時間/5時間/24時間の頻度でコールバックを再試行します。
  • Adjustが400のレスポンスを受信した場合、コールバックは再試行しませんが、即座に警告が発生します。
Adjustのコールバックサーバーは、データセキュリティを維持するためにエンドポイントのHTTPレスポンスを記録し、リダイレクトには従いません。もしサーバーが停止してユーザーの履歴データが必要となった場合、Adjustはこれらのデータを遡って呼び出せるよう最善を尽くします。

コールバックとポストバックの違いは

コールバック:特定のイベントがトリガーされたときに、Adjustサーバーがクライアントのサーバーに事前定義済みのリクエストを送信します。

ポストバック:特定のイベントがトリガーされたときに、Adjustサーバーがサードパーティに事前定義済みのリクエストを送信します。

結局は、コールバックとポストバックは同じ意味であり、いずれもHTTP GETで、指定されたサーバーエンドポイントに送信されます。ただし、Adjustではこれらの用語を使用して、お客様が送信したGETリクエストをサードパーティ(すなわち、媒体または分析ツール)からのリクエストと区別しています。

Adjustのコールバックデータを格納するのに必要なサーバー容量を見積もる方法はありますか。

必要なサーバー速度と送信されるデータ量を見積もる際は、事前にアプリ内のユーザー数を把握しておくことをお勧めします。登録など1回限りのイベントを計測している場合、コールバックの件数は、マーケティング活動と関連して増加します(ユーザーがコンバージョンに至るたびに1件のコールバック)。通常は、コンバージョンイベントのコールバックがサーバー帯域幅に大きく影響することはありません。

インストールコールバックと拒否されたインストールコールバックの違いとは

インストールコールバックは、ユーザーの初回のセッション時に送信されます。インストールは、Adjust SDKによって自動的に計測されます。

拒否されたインストールコールバックは、Adjustアドフラウド防止機能によって不正と判断されたすべてのインストールに対して送信されます。インストールは、匿名IPアドレス、クリックスパム、およびディストリビューションモデルのいずれかの理由で拒否される可能性があります。

このトピックについて

このトピックについて