どのようにお手伝いできますか?

SKAN連携ガイド:アドネットワーク向け

  • 更新

概要:このページでは、SKAdNetwork (SKAN) におけるアドネットワークとAppsFlyerの連携方法、キャンペーンの最適化の方法や各アドネットワークが生み出したトラフィックに成果を紐付ける方法などを記載しています。

AppsFlyerが提供するもの

Learn more about the AppsFlyer SKAN solution for advertisers:

SKANソリューションガイド|SKANダッシュボード 

  • キャンペーンの成果紐付け:
    • Integration with AppsFlyer ensures that the ad network is attributed for all installs, in-app events, and revenue resulting from campaigns run on advertisers' behalf.
    • Without integration in place, installs, in-app events, and revenue are attributed as organic and not to the ad network. 
  • キャンペーンの最適化の手助け:
    • ポストバックに含まれているコンバージョン値はエンコードされています。
    • AppsFlyerと連携することで各ポストバックに含まれているコンバージョン値を解読することができるので、アプリ毎に解読されたコンバージョン値の情報に基づいて、アドネットワーク側でキャンペーンの最適化に活用できるようになります。
  • SKANのポストバックはアドネットワークにのみ送信され、広告主は以下のいずれかの方法でデータを取得できます:
    • 各アドネットワークとの個別連携。
      (アドネットワークと広告主、双方にとって拡張性のないソリューション) 
    • AppsFlyerとの単一連携。
      (アドネットワークと広告主、双方にとって容易で拡張性のあるソリューション)
  • Increase your prominence in AppsFlyer: 
    • SKAdNetworkの連携が完了したアドネットワークは、AppsFlyerの管理画面上でもその認証が付与されます。 
    • This assures advertisers that they are working with ad networks that can be measured deterministically via this attribution model.

SKAdNetworkのデータフロー

5754_Postback_flow_for_SKAD__1_.png

SKANのポストバックの全体像は以下のような流れになっています:

  1. iOSから成果を獲得したアドネットワークに対して、SKANのポストバックが送信されます。
  2. アドネットワークは以下のいずれかの作業を行います:
    • データの追加と転送:受け取ったSKANのポストバックに、アドネットワークのcampaign ID / ソース識別子、キャンペーン名、iOS端末のIPアドレスを追加して、AppsFlyerへ転送。 
    • リダイレクト:アドネットワークからiOS端末に対して、SKAdNetworkのポストバックを直接AppsFlyerに対してリダイレクトするようリクエスト。 (この場合、キャンペーン情報の追加はAppsFlyerとアドネットワーク間での別のAPIを介して行われます。
  3. AppsFlyerは受け取ったSKAdNetworkのポストバックを検証・解読し、再度、その解読し情報を追加したポストバックをアドネットワークへ送信します。 Then, it sends the decoded and enriched postback to the ad network (in parallel to sharing it with the advertiser).

Main integration parts

この記事でも記載しているように、AppsFlyerとアドネットワークのSKAdNetworkの連携は、以下の2つのパートから構成されています。

  • アドネットワークが、SKAdNetworkのデータをAppsFlyerへ送信する。
  • アドネットワークが、解読され情報が追加されたSKAdNetworkのデータをAppsFlyerからポストバックで受け取る。

AppsFlyerへのデータ送信

合意形成した広告主において、指定期間中に送信したSKAdNetworkのポストバックの数をAppsFlyerに共有してください。

  • Enrich and forward (POST)
  • B:リダイレクト (HTTP 307でのリダイレクト)

そのSKANのポストバックを受信すると、AppsFlyerは以下の処理を実行します。

  • ポストバックの検証:重複せずユニークであることを確認します。
  • コンバージョン値の解読:媒体に紐付くインストールとアプリ内イベントの記録を生成します。
  • 解読されたポストバックを受け取り、デコードする。
  • Make attribution data available to advertisers via dashboards and reports.

Enrich and forward

この方法を使用する場合、アドネットワークがiOS端末から受け取ったSKAdの各ポストバックをAppsFlyerへ転送することになります。

アドネットワークは:

  • iOS端末からSKAdのポストバックを受信します
  • [Mandatory] Enriches the postback with:
    • アドネットワークのキャンペーンIDとキャンペーン名
    • iOS端末から送信されたポストバックのタイムスタンプ 
  • [任意]ポストバックへの以下内容の追加は任意です:
    • iOS端末から受信したIPアドレス(主に地理的情報の目的で必要)
    • Adset Name と Adset ID
    • Ad Name と Ad ID
    • アドネットワーク名
    • 国コード
    • ソースアプリID
    • クリエイティブ
    • Channel
  • ポストバックをAppsFlyerへ送信
  • 注意!ポストバックをAppsFlyerに送信する前に、送信するポストバックの内容を使ってAppleのAttribution Signatureを検証し、データを誤って改変してしまっていないか確認してください。

SKAdNetworkのデータ追加ポストバックのプロトコル

エンドポイント https://skadpostbacks.appsflyer.com/api/postbacks
HTTP メソッド POST
受け入れ可能なcontent types application/json
返されるコード

200 OK:受信したポストバックは有効なフォーマットです。 

400:不正なリクエスト:不正な形式のJSON、空のJSONデータ、必須な値の欠損など

SKAdNetworkのデータ追加ポストバックのJSONパラメータ一覧

パラメータ名 形式 説明 データソース
version String

SKAdNetworkのversion

例: "version":"2.0"

SKAN postback
ad-network-id String

Ad network ID

例:"ad-network-id":" abc123defg.SKAdnetwork"

SKAN postback
ad-network-name String
  • アドネットワーク名
  • 例:ad_network_name=your_network
アドネットワーク
ad-network-country-code String
  • アドネットワークによって判別されたユーザーの位置情報
  • ISO  3166 (alpha-2) の国コードを使用してください。
  • 例:JP, CN, ZA
  • アドネットワークではキャンペーンのターゲットとなっている配信地域に応じて、地域情報を導き出すことが多いです。  
  • AppsFlyerではレポートや管理画面上の地域情報に関する項目を埋めるために、この国コードを利用しています。
アドネットワーク
campaign-id Integer
  • SKAN 3以下のみ
  • SKAdNetwork campaign ID
  • 例: "campaign-id":23
SKAN postback
transaction-id String SKAdNetworkポストバックのtransaction ID SKAN postback
app-id Integer
  • AppsFlyer上に表示されている対象となるアプリIDで、常に冒頭に"id"がつきます。 Always has the prefix id.
  • 例:app_id=id123456789
SKAN postback
attribution-signature String Attribution signature SKAN postback 
redownload Boolean redownload = trueの場合、そのユーザーはストアからそのアプリを再ダウンロードしたことを意味します。 SKAN postback
source-app-id Integer SKAN postback
conversion-value Integer

AppsFlyer SDKが、広告主が事前に設定した内容に応じて設定したコンバージョン値です。

注意!

  • Appleのプライバシー保護のしきい値の仕様のため、iOSでポストバック時にパラメータが入力されず、コンバージョン値の値がnullになる場合があります。
  • Null と 0 は意味が異なります。
    • Null:Appleがコンバージョン値をマスクした状態。
    • 0: The user installed the app but didn't perform any measured actions.  
SKAN postback 
ad-network-campaign-id String アドネットワーク、広告主、AppsFlyerの3社間で共通言語を持つために、アドネットワークのCampaign IDを提供する必要があります。 アドネットワーク
ad-network-campaign-name String アドネットワークのCampaign IDに関連付けられた、アドネットワークのキャンペーン名です。 This name displays in dashboards and reports.  アドネットワーク
ad-network-adset-id String アドネットワークのアドセット単位のID アドネットワーク
ad-network-adset-name String アドネットワークのアドセット名 アドネットワーク
ad-network-ad-name String アドネットワークの広告名 アドネットワーク
ad-network-ad-id String アドネットワークの広告単位のID アドネットワーク
ip String
  • ポストバックを送信するユーザー端末の IP アドレスです。
  • IPv4とIPv6のIPアドレスをサポートしています。
  • 例:"ip":"198.51.100.1"
アドネットワーク
timestamp String
  • アドネットワークがSKAdNetworkのポストバックを受信した時刻です。 10桁のエポックUNIXタイムスタンプです。 / 13 桁のエポックタイムスタンプも受け取り可能です。
  • 例:2020年8月4日 07:25 UTC は "timestamp": "1596525944" と変換されます。
アドネットワーク
fidelity-type Integer
  • アトリビューションに影響する、広告表示方法の違いを区別します。 0 / 1の値を使用して以下のように指定されます: 
    • ビュースルー広告 (0)
    • ストアキットレンダリング広告 (1)
  • SKAdNetworkのV2.2以降では必須のフィールドになります。
SKAN postback
(V2.2以上)
did-win Boolean SKAN postback
(V3.0以上)
ad-network-source-app-id String 広告を掲載しているアプリに関連付けられているパブリッシャーIDを入力します。これは通常、Appleが生成したIDではなく、媒体社がパブリッシャーに割り当てたIDです。  アドネットワーク
postback-sequence-index Integer
  • SKAN 4以降にのみ
  • 値はシーケンス番号 (SKAN期間) を示し、0、1、2のいずれかになります。
SKAN 4.0 ポストバック (iOS 16.2)
coarse-conversion-value String
  • SKAN 4以降にのみ
  • 値は、low,medium, またはhigh
  • 最初のポストバックでは、tier 1でのみ利用できます。 2回目、3回目のポストバックでは、tier 1-3で利用できます。 Appleのドキュメンテーションを参照
SKAN 4.0 ポストバック (iOS 16.2)
source-identifier String
  • SKAN 4以降にのみ
  • campaign-idを置き換えます
  • 値は最大4桁です
  • 最初のポストバックでは、tier 2-3では最大4桁、tier 0-1 では2桁を使用できます。 2番目と3番目のポストバックでは、tiers 1-3 では2桁を使用できます。 tier 0 ではポストバックはありません。 Apple のドキュメンテーションを参照

SKAN 4.0 ポストバック (iOS 16.2)
source-domain String SKAN 4.0 ポストバック (iOS 16.2)
クリエイティブ String
  • SKAN 4以降のみ
  • キャンペーンの粒度を高めるために source_identifier で追加の数字を使用する場合に使用できます
アドネットワーク
channel String
  • SKAN 4以降のみ
  • キャンペーンの粒度を高めるために source_identifier で追加の数字を使用する場合に使用できます
アドネットワーク

Curlの例—データを追加したSKAN 3のポストバック

curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
  --header 'Content-type: application/json' \
  --data-raw '{
      "version":"3.0",
      "app-id": 888707086,
      "ip": "192.0.2.0",
      "ad-network-campaign-name": "skadnetwork_abc_campaign",
      "source-app-id": 888707074,
      "ad-network-id": "abcabcabc.skadnetwork",
      "transaction-id": "68eb3d91-15f5-44ee-9267-25c7655c20b6",
      "redownload": false,
      "attribution-signature": "MDYCGQCsQ4y8d4BlYU9b8Qb9BPWPi+ixk/OiRysCGQDZZ8fpJnuqs9my8iSQVbJO/oU1AXUROYU=",
      "timestamp": "1596525944",
      "ad-network-campaign-id": "222222",
      "conversion-value": 63,
      "campaign-id": 99
  }'

Curlの例—細かいコンバージョン値でデータを追加したSKAN 4のポストバック

curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
  --header 'Content-type: application/json' \
  --data-raw '{
      "version": "4.0"
      "ad-network-id": "example123.skadnetwork",
      "ad-network-campaign-name": "skadnetwork_abc_campaign",
      "ad-network-campaign-id": "222222",
      "source-identifer": "5239",
      "app-id": 525463029,
      "transaction-id": "6aafb7a5-0170-41b5-bbe4-fe71dedf1e30",
      "redownload": false,
      "source-app-id": 1234567891,
      "fidelity-type": 1, 
      "did-win": true,
      "conversion-value": 63
      "postback-sequence-index": 0
      "attribution-signature": "MEUCIGRmSMrqedNu6uaHyhVcifs118R5z/AB6cvRaKrRRHWRAiEAv96ne3dKQ5kJpbsfk4eYiePmrZUU6sQmo+7zfP/1Bxo="
  }'

Curlの例—粗いコンバージョン値でデータを追加したSKAN 4のポストバック

curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
  --header 'Content-type: application/json' \
  --data-raw '{
      "version": "4.0"
      "ad-network-id": "example123.skadnetwork",
      "ad-network-campaign-name": "skadnetwork_abc_campaign",
      "ad-network-campaign-id": "222222",
      "source-identifer": "39",
      "app-id": 525463029,
      "transaction-id": "6aafb7a5-0170-41b5-bbe4-fe71dedf1e31",
      "redownload": false,
      "source-app-id": 1234567891,
      "fidelity-type": 1, 
      "did-win": true,
      "coarse-conversion-value": "high"
      "postback-sequence-index": 0
      "attribution-signature": "MEUCIQD4rX6eh38qEhuUKHdap345UbmlzA7KEZ1bhWZuYM8MJwIgMnyiiZe6heabDkGwOaKBYrUXQhKtF3P/ERHqkR/XpuA="
  }'

Redirect

Redirect_us-en__2_.png

この方法を使用する場合、アドネットワークはHTTPのリダイレクトコマンド(307)でiOS端末からのポストバックに応答し、AppsFlyerに対して直接ポストバックを送信するようにiOS端末に要求することになります: 

このリダイレクトの方法には以下の利点があります:

  • 広告主からの信頼向上: MMPは広告主の代理として行動しています。 AppsFlyerに対してSKAdのポストバックへのアクセスを直接提供することで、広告主はSKAdのポストバックが転送中に操作されていないことを確信できます。
     
  • アドネットワーク側での処理が不要: アドネットワークはリダイレクトコマンドで(iOS端末に)応答するため、SKAdのポストバックを処理する必要がなくなります。 In comparison, the enrich and forward method requires that ad networks consume the postback, enrich it with additional parameters, and finally forward it to AppsFlyer.

仕組み

  1. HTTP 307 のレスポンスで応答するようにサーバーを設定し、ポストバックを https://skadredirect.appsflyer.com/api/redirects へリダイレクトさせてください。
  2. 以下の表に記載されているクエリパラメータを使って、キャンペーンの詳細な情報を追加してください。 Regard the sending of your campaign details as mandatory. キャンペーン詳細を送信してもらうことで、SKAdNetworkの情報をより充実させ、広告主はキャンペーンをより効果的に最適化することが可能になります。

リダイレクトURLの例

https://skadredirect.appsflyer.com/api/redirects?
  &ad-network-campaign-id=243232&ad-network-campaign-name=yarg_campaign_name
  &ad-network-adset-name=dsdsa&creative=examplecreative&channel=channelexample

キャンペーン詳細のクエリパラメータ(必須ではないです)

クエリパラメータ 説明
ad-network-name
  • アドネットワーク名
  • 例:ad_network_name=your_network
ad-network-campaign-id Campaign ID
ad-network-campaign-name キャンペーン名
ad-network-adset-id Adset ID
ad-network-adset-name 広告セット名
ad-network-ad-id Ad ID
ad-network-ad-name 広告名
ad-network-country-code
  • アドネットワークによって判別されたユーザーの位置情報
  • ISO  3166 (alpha-2) の国コードを使用してください。
  • 例:JP, CN, ZA
  • アドネットワークではキャンペーンのターゲットとなっている配信地域に応じて、地域情報を導き出すことが多いです。  
  • AppsFlyerではレポートや管理画面上の地域情報に関する項目を埋めるために、この国コードを利用しています。
ad-network-source-app-id 広告を掲載しているアプリに関連付けられているパブリッシャーIDを入力します。これは通常、Appleが生成したIDではなく、媒体社がパブリッシャーに割り当てたIDです。 
ip
  • ポストバックを送信するユーザー端末の IP アドレスです。
  • IPv4とIPv6のIPアドレスをサポートしています。
  • 例:"ip":"198.51.100.1"
timestamp
  • アドネットワークがSKAdNetworkのポストバックを受信した時刻です。 10桁のエポックUNIXタイムスタンプです。 / 13 桁のエポックタイムスタンプも受け取り可能です。
  • 例:2020年8月4日07:25 UTCは、"timestamp": "1596525944" と変換されます。
クリエイティブ
  • SKAdNetworkによって提供されるAttribution signature
  • キャンペーンの粒度を高めるために source_identifier で追加の数字を使用する場合に使用できます
channel
  • SKAdNetworkのペイロードとデータ追加したポストバックを送信するだけで大丈夫です。
  • キャンペーンの粒度を高めるために source_identifier で追加の数字を使用する場合に使用できます

AppsFlyerからのデータ受け取り

AppsFlyerから最初のデータを受け取る前に、以下の点を確認してください: 

  • アドネットワークは、予めAppsFlyerからデータを受け取るエンドポイントとそのテンプレートを定義する必要があります(詳細は担当PDM、もしくパートナーアシスタントウィジェットを使用してご連絡ください)。
  • AppsFlyerは、既存のポストバックと同じメカニズムを使って、SKAdNetworkのポストバックをアドネットワークへ送信します。

Principles

  • アドネットワークからAppsFlyerへ送信されたSKAdNetworkの各ポストバックについて、AppsFlyerは以下を送信します:
    • One install postback. Redownloads are signaled by the redownload parameter. 
    • ゼロ件もしくは複数件のアプリ内イベントのポストバック。正確な件数は、コンバージョン値の変換によって変動します。詳細は模擬ポストバックを参照してください。
  • When you consume postbacks, the same install or event can be attributed by more than one AppsFlyer attribution solution. attribution_source のパラメーターを使用して、ポストバックタイプを区別してください。 

アドネットワークパートナーが利用できるポストバックマクロ

ポストバックマクロ名 説明 フォーマットとサンプル アプリ内イベント専用
site_id 広告を掲載しているアプリ (Source app ID) String: 876534  
install_time Estimated by AppsFlyer based on the updateConversion window. Provided as a 10-digit UNIX epoch timestamp or as a human-readable timestamp
  • String: 1596119460 
  • July 30, 2020, 14:31 UTC へ変換されます。
 
skadnetwork_ad_network_time Time the postback was received by the ad network from the iOS device. Reported by the ad network. Provided as a 10-digit UNIX epoch timestamp or as a human-readable timestamp
  • String: 1596119460 
  • July 30, 2020, 14:31 UTC へ変換されます。



 

 

skadnetwork_received_time
アドネットワークがiOS端末からポストバックを受信した時刻です。アドネットワークによって報告されたもので、10桁のUNIXタイムスタンプ、もしくは通常の時刻表示の形式で提供します。

 

  • String: 1596119460 
  • July 30, 2020, 14:31 UTC へ変換されます。
 
event_name

イベント名 

  • af_skadnetwork_revenue
  • af_login
  • af_skadnetwork_revenue
  • または広告主が設定したもの 

String: af_skadnetwork_revenue, abc123

 

はい
revenue 指定された通貨コードを使用した収益金額です。 Number: 5, 20, 0.4 はい
currency 広告主によって設定された、アプリ固有の通貨コード。 String: EUR, USD, ZAR はい
attribution_source

計測データのソース:

SKAdNetwork: SKAdNetwork

String: SKAdNetwork  
app_id App ID (広告主アプリ) String: ID123456790  
country アドネットワークによって決定されてたインストール時に位置(国)情報 String: US, UK, ZA   
campaign アドネットワークからのポストバック時に送信された、ad-network-campaign-nameのパラメータで設定されたキャンペーン名です。 String: UA_US_23+  
campaign_id アドネットワークからのポストバック時に送信される、ad-network-campaign-idのパラメータで設定された、アドネットワークのキャンペーンIDです。
注意:SKAN4の場合、この値は常にnullになります。
String: 3456745  
redownload

入る値: true もしくは false

redownload = trueの場合、そのユーザーはストアからそのアプリを再ダウンロードしたことを意味します。

Boolean: true, false  

skadnetwork_ambiguous_event

SKAN 4以降のみ

広告主が管理画面上でSKANの設定を変更してから最初の72時間以内に受信したイベントです。 SKANで採用されている様々なタイマーの仕様により、AppsFlyerではこのイベントを正確にマッピングすることはできません。

  • SKAN 4以降のみ
Boolean: true, false  
skadnetwork_campaign_id 元々のSKANのポストバックで提供された、SKANのキャンペーンIDです。 56, 23  
af_skadnetwork_nonce 重複したポストバックを識別できるようにする、ユニークな識別子です。    
event_id アドネットワークのプラットフォーム上で発生した イベント と照合するための名称またはIDです   はい
transaction_id

SKAdNetworkポストバックのtransaction ID

注: 広告主は、AppsFlyerがパートナーに対してtransaction_idを共有することを明示的に許可する必要があります。広告主に 連携 タブ内で設定を行うように依頼してください。

   
ad_network_adset_id アドネットワークによって、iOSのポストバックに追加 String  
ad_network_adset_name アドネットワークによって、iOSのポストバックに追加 String  
ad_network_ad_name アドネットワークによって、iOSのポストバックに追加 String  
ad_network_ad_id アドネットワークによって、iOSのポストバックに追加 String  
SKAN_min_event_counter 注(1)を参照してください。 Integer はい
SKAN_max_event_counter 注(1)を参照してください。 Integer はい
SKAN_min_time_post-install 注(2)を参照してください。 Integer はい
SKAN_max_time_post-install 注(2)を参照してください。 Integer はい
SKAN_min_event_revenue 注 (3) を参照してください 実数 はい
SKAN_max_event_revenue 注 (3) を参照してください 実数  はい
fidelity-type

アトリビューションに影響する、広告表示方法の違いを区別します。 0 / 1の値を使用して以下のように指定されます: 

  • ビュースルー広告 (0)
  • ストアキットレンダリング広告 (1)
Integer  
skad_af_attribution_flag SSOT (Single Source of Truth)のメカニズム( )を使用して、ユーザーがAppsFlyerによって成果を紐づけられたかどうかを示すために使用されます。  Boolean  
skad_postback_sequence_index
  • 値はSKAN期間を示します (0,1, または2)
  • SKAN 3の場合、値は0です
Integer  
skad_coarse_conversion_value
  • 値は、low,medium, またはhigh
  • SKANバージョン3の場合、値は nullとなります。
String  
skad_source_identifier
  • 値は最大4桁です
  • SKANバージョン3の場合、値は nullとなります。 
String  
skad_source_domain
  • 値は成果が紐づくWeb広告です。
  • SKANバージョン3の場合、値は nullとなります。
String  
ad_network_creative
  • 値は、アドネットワークから受信したデータエンリッチメントに基づきます。
  • SKANバージョン3の場合、値は nullとなります。
String  
ad_network_channel
  • SKAN 4以降にのみ
  • キャンペーンの粒度を高めるために source_identifier で追加の数字を使用する場合に使用できます
String  

注意:

  1. イベント発生回数:イベントの発生回数は以下の計算式を使って算出されます:
    [ (SKAN_min_event_counter + SKAN_max_event_counter) ÷ 2 の値の小数点切り上げ]

    注意!値は最も近い整数の値に切り上げられます。
  • 例:
    • A. 例1) min=0、max=1の場合、イベント発生数は1として記録されます。
    • B. 例2) min=0、max=10の場合、イベント発生数は5として記録されます。
  • install_timeの決定に仕様: カスタムコンバージョン値を利用している広告主の場合、AppsFlyerでは
    ポストバック到着時間 - 48h - ("min_time_post_install" + "max_time_post_install")の平均値
    をインストール時間(install_time)として計算しています。原則、アドネットワーク側ではこのマクロを利用する必要はありません。  
  • 収益金額の決定:AppsFlyerはこれらの値を使い、min と maxの合計した平均値を計算してイベントの収益を決定します。 Ad networks don't need to make use of these macros. 

SKANのポストバックの例

AppsFlyerから送信される、SKANのインストールのポストバック例:

http://YourCompanyDomain.com/event?site_id=(publisher-id)&install_time=(timestamp)
  &skan_ad_network_time=(timestamp)
  &skan_af_received_time=(timestamp)
  &attribution_source=skadnetwork
  &app_id=(id123456789)&country=(ZA)&campaign=(campaign-name)
  &campaign_id=(campaign-id)&SKAN_ambiguous_event=(boolean)
&redownload=(boolean)
&af_SKAN_nonce=(uuid)

AppsFlyerから送信される、SKANのアプリ内イベントのポストバック例:

http://YourCompanyDomain.com/event?site_id=(publisher-id)&install_time=(timestamp)
  &skan_ad_network_time=(timestamp)
  &skan_af_received_time=(timestamp)&revenue=(value)
  &currency=(code)&event_name=(event-name)&attribution_source=skadnetwork
  &app_id=(id123456789)&country=(ZA)&campaign=(campaign-name)
  &campaign_id=(campaign-id)&SKAN_ambiguous_event=(boolean)
&redownload=(boolean)
&af_SKAN_nonce=(uuid)

連携テスト

AppsFlyerとの連携を検証するには、以下方法のいずれか、もしくは両方を使用してください。 

  • 実際のSKANのポストバックでテスト:アドネットワークが受け取った実際のSKANのデータを利用
  • ポストバックの模擬テスト:AppsFlyerのテストアプリを利用

実際のSKAdNetworkのポストバックをiOS端末から受け取るには、アドネットワークは以下作業を完了する必要があります:

ポストバックの模擬テストを受け取るには:

Real environment

この方法を使用する場合、アドネットワークは広告主のアプリで実際のSKANのポストバックをAppsFlyerへ送信することになります。 

連携のテスト

Responsibility アクション
アドネットワーク Appleから提供されたSKAN Network IDを、担当PDMへ(もしくはパートナーアシスタントウィジェットを使用して)共有してください。
アドネットワークとAppsFlyer Agree on a mutual customer (having integrated the most recent AppsFlyer SDK) to use for postback integration verification.
アドネットワーク このページに記載されているいずれかの方法を使って、SKANのポストバックをAppsFlyerに送信してください。
AppsFlyer 広告主が設定したコンバージョン値の計測設定に従って、解読したポストバックをアドネットワークへ送信します。

テストの判定基準

Responsibility アクション
アドネットワーク Notify AppsFlyer as to the quantity of SKAN postbacks sent during a specified period for the agreed mutual customer.
AppsFlyer 受信したポストバックの数と、アドネットワークからの送信数を確認します。
AppsFlyer

そのアプリについてアドネットワークに送信されたポストバックの数を、タイプ別に分けてアドネットワークへ共有します。

  • インストール / 再インストールのポストバック
  • アプリ内イベントのポストバック

注意:確率論的モデリングなどの計測でも同じエンドポイントを使用する場合には、 attribution_source=skadnetwork のパラメータを使ってデータをフィルタリングし 、SKANのポストバックを他のポストバックと区別するようにしてください。

ポストバックの模擬テスト

  • この方法を使用する場合、次の表に記載されているように、アドネットワークは事前準備されたポストバックの内容をAppsFlyerのテストアプリに送信することになります。そして、AppsFlyerはコンバージョン値を解読したポストバックをアドネットワークへ返信します。
  • 表に記載されているように、テストアプリ毎に異なるコンバージョン値のマッピングが用意されています。
App ID Conversion mode 手順:
id888707085

[収益]を選択し、単位は$1

想定の結果: 

  1. [連携 ] タブにて、[アプリ内イベントのポストバック]を有効にしてください。 
  2. Select event name af_SKAN_revenue and map to your event identifier.
  3. 設定を保存してください。
  4. ポストバックにて、conversion value = 7 を送信してください。
  5. AppsFlyerは以下の内容で応答します:
    • Installのポストバックを1つ送信
    • af_skad_revenueのポストバックを1つ送信し、値は$7
id888707086

[コンバージョン]を選択し、アプリ内イベントは以下を選択:
 

  • af_level_complete
  • af_login
  • af_SKAN_revenue
  • af_register
  • af_subscription
  • af_custom_event
  1. [連携 ] タブにて、[アプリ内イベントのポストバック]を有効にしてください。 
  2. 予めリストアップした各アプリ内イベントをマッピングし、御社側のイベント識別子も選択してください。 
  3. 設定を保存してください。
  4. ポストバックにて、conversion value = 63 を送信してください。
  5. AppsFlyerは以下の内容で応答します:
    • Installのポストバックを1つ送信
    • af_level_completeのポストバックを1つ送信
    • af_loginのポストバックを1つ送信
    • af_SKAN_revenueのポストバックを1つ送信
    • af_registerのポストバックを1つ送信
    • af_subscriptionのポストバックを1つ送信
    • af_custom_eventのポストバックを1つ送信
id888707087 [エンゲージメント]を選択し、af_SKAN_revenueのイベントで計測
  1. [連携 ] タブにて、[アプリ内イベントのポストバック]を有効にしてください。 
  2. af_SKAN_revenueのイベント を選択して、御社側のイベント識別子も設定してください。 (御社側の識別名を設定しない場合もございます)
  3. 設定を保存してください。
  4. ポストバックにて、conversion value = 3 を送信してください。
  5. AppsFlyerは以下の内容で応答します:
    • Installのポストバックを1つ送信
    • af_SKAN_revenueのイベントのポストバックを3つ送信

連携手順

Responsibility アクション
アドネットワーク ポストバック管理の画面上で、SKAN Network ID (Appleから提供)とSKANのポストバックテンプレートを設定してください。 不明点があれば、パートナーアシスタントウィジェットを使用して担当PDMまでお問い合わせください。
アドネットワーク
  1. Activate the test apps.
  2. 各アプリにて、前の表の[作業(instructions)]の内容を完了してください。 
  3. 前述の表に記載されているテストアプリを使用して、ポストバック送信の模擬テストを実施してください。ポストバックの模擬テストを送信するときの注意点:
    • app_idとconversion valueは、前述の表に記載されているものを設定してください。 
    • アドネットワークではAppleのCompatible Signatureを生成できないため、ポストバックの模擬テストにはSignatureフィールドを含める必要はありません。
      (AppsFlyerでは、ポストバックの模擬テストでは検証を行いません。
    • POSTもしくはREDIRECTのどちらかを使用して、ポストバックを送信してください。
AppsFlyer Responds with the decoded postbacks to the endpoint designated by the ad network during integration

テストの判定基準

Responsibility アクション
AppsFlyer ポストバックを処理し、ポストバックをアドネットワークへ送信する。
アドネットワーク
  • Ad network receives and decodes the translated postbacks.
  • AppsFlyerから送信されたアプリ内イベントのポストバックが、想定されたデータフローと合致する。例:ID888707087のアプリでコンバージョン値が3の場合、アドネットワークはaf_SKAN_revenueのイベントのポストバックを3つ受信 

Clarifications

Clarifications relating to mandatory fields, enrichment, certification, and more.

よくある質問

ポストバックに関するQ&A

Are the enrichment fields mandatory? 

現時点では、以下の各追加パラメータが1つ以上不足していた場合でも、そのポストバックをAppsFlyerは処理します。ただし、以下のような理由からもこれらの情報が必要であることを考慮してください。 

  • アドネットワークのキャンペーンID:AppsFlyerとコスト連携を行っている場合には、このキャンペーン IDを使用してコストも記録されます。 
  • アドネットワークのキャンペーン名:多くの広告主が、キャンペーンIDではなくキャンペーン名を活用しています。 
  • IPアドレス:地理的情報の分析に必要です。 
  • タイムスタンプ:インストールを正しい日付に紐付けるのに活用します。 

両方ではなく、キャンペーンIDまたはキャンペーン名のいずれかのみを送信することは可能ですか?

前の回答を参照してください。キャンペーンIDとキャンペーン名の両方に同じ値を設定することも検討してください。 

私たちは、[データ追加と転送]の手法を使用しています。 AppsFlyerの仕様にないKeyと値のペアを追加することは可能ですか?  

はい、可能です。アトリビューション署名が有効なのであれば、追加された情報は無視しつつポストバックは処理します。

SKAdNetworkのポストバックテンプレートは、既存のポストバックテンプレートとは異なるものですか?

はい。データの流れと構造が異なります。

Will we receive a SKAN postback and a probabilistic/deterministic modeling postback related to the same install, meaning duplicate reporting of the same install?

はい。それぞれの場合において、AppsFlyerはあなたのアドネットワークに起因したインストールを記録し、その計測方法に関係なく、アドネットワークにそれぞれのポストバックを送信します。

SKAdNetworkのポストバックを区別するには、attribution_sourceのパラメータを活用してください。

私たちもAppsFlyerからのポストバックを処理する必要がありますか?
 

その必要はありません。ただし、ポストバックを通じて報告されたユーザーの質に応じて、キャンペーンの最適化を行えることが理想的です。 

AppsFlyerの計測リンクを呼び出す必要がありますか? それともSKAdNetworkのペイロードとデータ追加したポストバックを送信するだけで十分ですか?
 

It is sufficient to send us the SKAN payload and enriched data.

SKAdNetworkの連携パートナーとしてAppsFlyerの管理画面上で認証をもらうには、何が必要ですか?

  • Complete integration using one of the methods listed in this article
  • Send us postbacks of apps using AppsFlyer as their attribution partner

SKAdNetworkが持つ、キャンペーンIDの上限数が100という制限はどのような影響を与えますか?  

1〜100の制限は、Apple側でのキャンペーンへのサインとナンバリングの方法に関連しており、常に100個までのユニークなキャンペーンを同時に設定することができることを意味しています。 It means that at any time, you can have 100 simultaneous unique campaigns. We allow you to enrich the postback with your actual campaign name and ID. 一方、AppsFlyerに対しては実際のキャンペーン名とキャンペーンIDの情報を追加してポストバックの送信することが可能なので、ポストバックをAppleから受け取った際に、SKAdNetworkのキャンペーンIDを実際に使用中のキャンペーンIDにマップすることが可能です。これは100のID制限によってAppsFlyer側で計測するキャンペーンの数は制限されないことを意味します。 もちろん、特定アプリに対して同時に配信しているキャンペーン数が100を超えないという条件の下の仕様になります。