デバイスのアトリビューション確認方法

デバイスのアトリビューション確認

連携テストおよびトラッキングリンク検証のために、Singular Device Assist アプリとAttributionDetails APIエンドポイントを使用してデバイスのアトリビューションを 検証するための総合ガイド。

Singularはデバイスのアトリビューションを確認する2つの方法を提供します: モバイルテスト用のDevice AssistアプリとプログラムによるVerification用の AttributionDetails APIエンドポイント。

アトリビューション検証は、新しいSDK/S2S連携のテストとキャンペーン デプロイ前のSingular Linksの検証に不可欠なステップです。

対象読者 UAマネージャー、開発者、QAエンジニア
前提条件
  • テスト用モバイル端末(Device Assistアプリ方式)
  • Singular APIキー(APIエンドポイント方式)
  • 端末の広告識別子(IDFA、IDFV、GAIDなど)

アトリビューション検証のユースケース

アトリビューションを確認するタイミング

デバイスのアトリビューション検証は、連携とキャンペーンデプロイの ライフサイクルの複数の段階で重要です。

ユースケース 目的
SDK/S2S連携テスト

連携開発中にSDKがインストールを正しくトラッキングし、 正しいソースにアトリビューションしているかを検証します。

テスティングコンソール完全ガイド

トラッキングリンクの検証

適切なアトリビューションとパラメータの受け渡しを確保するために、 キャンペーンデプロイ前に新しいSingular Linksをテストします。

トラッキングリンクのテスト方法

キャンペーンのトラブルシューティング テスト端末のアトリビューション状態を確認することで、ライブキャンペーンの アトリビューションの問題を診断します。
パートナー連携の検証 広告パートナーからSingularプラットフォームへアトリビューションデータが 正しく流れていることを確認します。

方法の比較

検証方法の選択

テストの要件と技術的な能力に基づいて適切な検証方法を選択してください。

方法 最適な用途 要件 制限事項
Device Assistアプリ
  • クイックマニュアルテスト
  • 非技術系ユーザー
  • ビジュアル検証
  • モバイル端末
  • アプリのインストール
手動プロセス、自動化に制限あり
Attribution Details API
  • 自動化テスト
  • プログラムによる検証
  • CI/CD連携
  • APIキー
  • 端末識別子
  • HTTPクライアント
テスト専用(ベータ)、技術知識が必要

方法1:Device Assistアプリ

テスト端末でデバイスのアトリビューション状態、インストールの詳細、 イベントトラッキングのサマリーを直接視覚的にすばやく確認できる モバイルアプリ。

Device Assistアプリの概要

アプリの機能

Device Assistアプリは、特定の端末についてSingularに記録された 包括的なアトリビューション情報を表示します。

表示されるアトリビューションデータ:

  • インストールアトリビューション: インストールのタイムスタンプ、アトリビュートされた メディア、キャンペーン名
  • リエンゲージメントアトリビューション: リエンゲージメントのタイムスタンプ、 アトリビュートされたメディア、キャンペーンの詳細
  • イベントサマリー: Singularがその端末に対してトラッキングしたセッションと アプリ内イベント
  • 端末識別子: トラッキングに使用されたIDFA、IDFV、GAIDまたはその他の識別子

Device Assistアプリの使い方

ステップバイステップの手順

1

Device Assistアプリのダウンロード

テスト端末にSingular Device Assistアプリをインストールしてください:

2

アトリビューション確認の開始

Device Assistアプリを開き、メインメニューから 実装確認 を選択してください。

Device Assist Main Menu

追加機能: Device Assistアプリは、メインメニューからアクセスできる 端末識別子の検索やSDK実装確認ツールも提供しています。

3

端末識別子の選択

アプリがプラットフォームに適した端末識別子を自動的に選択します。 選択を確認し、 実装確認 を再度タップして進めてください。

Select Device Identifier

識別子の選択:

  • iOS: IDFA(ATT承認済みの場合)またはIDFV(ATT未承認または未実装の場合)
  • Android: GAID(Google Advertising ID)またはGAID未利用可能の場合は代替識別子
4

アトリビューション詳細の確認

アプリがSingularプラットフォームに記録された端末の完全な アトリビューション情報を表示します。

Attribution Details Display

表示されるアトリビューション情報
インストールアトリビューションの詳細

インストールタイムスタンプ: 最初のアプリ起動(インストールイベント)の日時

アトリビュートされたメディア: インストールのクレジットを受けた広告メディアまたはソース (例:Facebook、Google Ads、オーガニック)

キャンペーン名: インストールにアトリビュートされたマーケティングキャンペーン

追加パラメータ: トラッキングリンクを通じて渡されたキャンペーン固有のパラメータ


インストールアトリビューションの解釈
  • 「Organic」: アトリビューションウィンドウ内に一致するタッチポイントなし — インストールが有料キャンペーンにアトリビュートされていない
  • 「Unattributed」: 端末はトラッキングされているが、アトリビューション決定が 保留中または未完了
  • メディア名: インストールが特定の広告パートナーに正常にアトリビュートされた
リエンゲージメントアトリビューションの詳細

リエンゲージメントタイムスタンプ: 最新のリエンゲージメントセッションの日時

アトリビュートされたメディア: ユーザーをアプリに呼び戻したソース

キャンペーン名: セッションにアトリビュートされたリエンゲージメントキャンペーン

自己アトリビューションネットワーク: 自己アトリビューションネットワーク(Twitter、Facebook、 Google Ads、Snapchatなど)からのリエンゲージメントアトリビューションは、 プライバシー上の理由から「Unattributed」として表示される場合があります。


リエンゲージメントアトリビューションの要件

リエンゲージメントアトリビューションが発生するには:

  • ユーザーに既存のインストールがある必要があります(新しい端末ではない)
  • リエンゲージメントキャンペーンのクリックが設定されたアトリビューションウィンドウ内で 発生する必要があります
  • リエンゲージメントのクリック後にセッションが発生する必要があります

詳細: リエンゲージメントアトリビューションFAQ

イベントトラッキングサマリー

Device AssistアプリはSingularがその端末に対してトラッキングした すべてのアプリ内イベントのサマリーを表示します。

表示されるイベント情報:

  • イベント名: トラッキングされたイベントの名前(session、purchase、 level_completeなど)
  • 最初のイベント時刻: 最初の発生のタイムスタンプ
  • 最後のイベント時刻: 最新の発生のタイムスタンプ
  • イベント回数: イベントが発生した総回数
  • 収益: 収益イベントの合計収益

イベントトラッキングの検証

イベントサマリーを使用して以下を確認してください:

  • セッションが正しくトラッキングされているか
  • カスタムイベントが正しい名前で表示されているか
  • 収益イベントが金額を正しくキャプチャしているか
  • イベントのタイムスタンプが実際のユーザーアクションと一致しているか

Device Assistのトラブルシューティング

よくある問題

アトリビューションデータが表示されない

考えられる原因

  • アプリ未インストール: 端末にテストアプリがインストールされていないか、 まだ起動していない
  • 識別子の不一致: Device AssistがアプリSDKで使用されていない識別子を 確認している
  • SDK未初期化: アプリでSingular SDKが正しく初期化されていない
  • アトリビューション処理中: アトリビューション決定がまだ確定していない (通常1〜5分かかる)

解決手順

  1. テストアプリが端末にインストールされ、少なくとも1回起動されていることを確認
  2. 端末識別子がSDKで使用している識別子タイプと一致していることを確認 (iOSの場合IDFA vs IDFV)
  3. アプリ起動後5〜10分待ってから再度アトリビューションを確認
  4. テスティングコンソール を使用してSDK連携を確認
誤ったソースにアトリビュートされている

考えられる原因

  • 以前の端末使用: キャッシュされたアトリビューションがある端末で以前テストした
  • 複数のタッチポイント: アトリビューションウィンドウ内で複数のキャンペーンクリックが発生
  • フィンガープリントのマッチング: 確率的アトリビューションが誤ったクリックにマッチした

解決手順

  1. 端末をリセットしてアトリビューションをクリアしてください:
  2. テスト前に新しい端末を使用するか識別子をリセット
  3. テストにはフィンガープリントの代わりに決定論的アトリビューション (トラッキングリンクに端末IDを含める)を使用
  4. パートナー設定でアトリビューションウィンドウの設定を確認
キャンペーンではなくオーガニックとしてインストールがアトリビュートされている

考えられる原因

  • アトリビューションウィンドウ超過: 設定されたアトリビューションウィンドウ後にインストールが発生
  • 一致するタッチポイントなし: 端末に一致するクリックが見つからない
  • フィンガープリントの不一致: クリックとインストールの間に端末のフィンガープリントが変更された
  • リンク未クリック: トラッキングリンクをクリックせずにストアから直接アプリをインストール

解決手順

  1. アプリをインストールする前にトラッキングリンクをクリックしたか確認
  2. アトリビューションウィンドウの設定がインストールに十分な時間を許可しているか確認
  3. 安定したテストのためにトラッキングリンクに端末IDを使用(決定論的アトリビューション)
  4. クリックとインストール中に安定したネットワーク接続があることを確認
  5. 別の端末でテストするか識別子をリセットして再試行

方法2:Attribution Details API

連携テストとCI/CDパイプラインのための自動化されたアトリビューション検証を 可能にするプログラム型APIエンドポイント。

ベータ機能のお知らせ: Attribution Details APIエンドポイントはベータ機能です。 テスト目的のみに使用してください — 本番アプリや大量リクエスト環境では 呼び出さないでください。


APIエンドポイントの仕様

リクエスト形式

エンドポイントURL:

https://api.singular.net/api/attribution/attribution_details

リクエストメソッド: GET

完全なリクエスト例:

https://api.singular.net/api/attribution/attribution_details?keyspace=idfa&device_id=12345678-1234-1234-1234-123456789012&api_key=your_api_key_here

クエリパラメータ

必須パラメータ

パラメータ タイプ 説明
api_key 文字列

プラットフォームのSingularレポーティングAPIキー。

場所: ダッシュボード → 開発者ツール → APIキー → レポーティングAPIキー

重要: SDKキーではなくレポーティングAPIキーを使用してください。 それぞれのキーは異なる目的で使用されます。

device_id 文字列

端末の広告識別子の値。

keyspace パラメータで指定された識別子タイプと一致する必要があります。

keyspace 文字列(列挙型)

device_id で提供された広告識別子のタイプ:

  • idfa — iOSの広告識別子(ATT承認が必要)
  • idfv — iOSのベンダー識別子(IDFAが利用できない場合の代替)
  • aifa — Androidの広告識別子(GAIDとも呼ばれる)
  • sdid — ウェブトラッキング用のSingular端末ID(SDK初期化後に singularSdk.getSingularDeviceId()で取得)

APIレスポンス

レスポンス形式

APIはリクエストされた端末のアトリビューション詳細を含むJSON配列を返します。

レスポンスのサンプル

[
  {
    "app_long_name": "com.example.myapp",
    "app_name": "My App",

    "install_info": {
      "install_time": "2020-06-10 11:58:46",
      "network": "Network 1",
      "additional_parameters": {
        "kw": "my keyword",
        "pcid": "1234"
      },
      "campaign_name": "Campaign Name",
      "view_through_attribution": false
    },

    "re_engagement_info": {
      "notes": "Attributions from Self-Attributing networks including: Twitter, Facebook, Google Ads, Snapchat, etc are redacted and always show as 'Unattributed'",
      "install_time": "2020-06-15 15:27:12",
      "network": "Unattributed"
    },

    "uninstall_pre_requisites": {
      "gcm_token": "enE8iQR10RI:APA91bERgfA_xm8T7zgqH9OW_1s05SFFmKnle1zIm0cMrDfuaSxEmC_3j72dj4qN36vh5V8TAEnrXa3Pq3SmLW-XNOHP7daMwcBrBTibdkv_pKMJbN9SbefV6_9nuEfIeI5Zhtz0nlLY"
    },

    "events": [
      {
        "event_name": "Session",
        "first_event_time": "2020-04-02 00:09:55",
        "last_event_time": "2020-04-07 20:59:55",
        "event_count": 2
      },
      {
        "event_name": "Save New Transaction",
        "first_event_time": "2020-04-02 00:11:51",
        "last_event_time": "2020-04-02 00:11:51",
        "event_count": 1
      }
    ]
  }
]

レスポンスパラメータ

JSONレスポンスフィールド

フィールド 説明
app_long_name

アプリのバンドル識別子(例:com.example.myapp)

app_name

Singularプラットフォームで設定されたアプリの表示名

install_info

インストールアトリビューションの詳細と決定情報を含むオブジェクト:

re_engagement_info

リエンゲージメントアトリビューションについて install_info と同じ構造のオブジェクト。

詳細: リエンゲージメントアトリビューションFAQ

プライバシーに関する注意: 自己アトリビューションネットワーク(Facebook、Google Ads、 Twitter、Snapchat)からのリエンゲージメントアトリビューションは、 プライバシーコンプライアンスのため「Unattributed」として表示されます。

events

SDKがトラッキングしたアプリ内イベントのサマリーを含むオブジェクトの配列:

  • event_name — トラッキングされたイベントの名前
  • first_event_time — 最初の発生のタイムスタンプ
  • last_event_time — 最新の発生のタイムスタンプ
  • event_count — イベントの総発生回数
  • revenue — 収益イベントの合計収益(該当する場合)
uninstall_pre_requisites

アンインストールトラッキングの設定を含むオブジェクト:


APIの使用例

実装例

CURL PYTHON JAVASCRIPT

iOSデバイス(IDFA)

curl -X GET "https://api.singular.net/api/attribution/attribution_details?keyspace=idfa&device_id=12345678-1234-1234-1234-123456789012&api_key=your_api_key_here"

Androidデバイス(GAID)

curl -X GET "https://api.singular.net/api/attribution/attribution_details?keyspace=aifa&device_id=12345678-1234-1234-1234-123456789012&api_key=your_api_key_here"

ウェブトラッキング(SDID)

curl -X GET "https://api.singular.net/api/attribution/attribution_details?keyspace=sdid&device_id=singular_device_id_value&api_key=your_api_key_here"

APIのトラブルシューティング

よくあるAPIの問題

空の配列レスポンス

問題

APIがアトリビューションデータの代わりに空の配列 [] を返します。


考えられる原因

  • アトリビューションデータなし: 端末にアプリがインストールされたことがないか、 セッションがトラッキングされていない
  • 識別子の誤り: 端末IDまたはkeyspaceが正しくない
  • タイミングの問題: アトリビューションデータがまだ処理されていない (インストール後通常1〜5分かかる)

解決手順

  1. 端末IDが余分なスペースなく正しくコピーされていることを確認
  2. keyspaceが識別子タイプと一致していることを確認(iOSの場合idfa vs idfv)
  3. アプリインストール後5〜10分待ってからクエリを再試行
  4. Device Assistアプリを使用してアプリがインストールされトラッキングされていることを確認
認証エラー

問題

APIが認証エラーまたは401 Unauthorizedレスポンスを返します。


考えられる原因

  • 無効なAPIキー: APIキーが正しくないか提供されていない
  • キータイプの誤り: レポーティングAPIキーの代わりにSDKキーを使用している
  • キーの期限切れ: APIキーが失効または再生成された

解決手順

  1. ダッシュボード → 開発者ツール → APIキー → レポーティングAPIキーに移動
  2. レポーティングAPIキーをコピー(SDKキーではない)
  3. APIキーがリクエストに正しく貼り付けられていることを確認
  4. キーが最近再生成された場合は新しいキーの値を使用していることを確認

セキュリティ警告: APIキーをバージョン管理にコミットしたり、クライアント側の コードに公開したりしないでください。環境変数または安全な設定管理を 使用してください。

レート制限エラー

問題

APIが429 Too Many RequestsまたはRate Limitエラーを返します。


考えられる原因

  • 過剰なリクエスト: 短時間に多すぎるAPIコール
  • 本番環境での使用: 本番環境でAPIを使用(意図された使用ケースではない)

解決手順

  1. コードに指数バックオフとリトライロジックを実装
  2. APIリクエストの間隔を空ける(最低1秒の間隔を推奨)
  3. APIコールを減らすために可能な場合はアトリビューションデータをキャッシュ
  4. 正当なテストでより高いレート制限が必要な場合はSingularサポートに連絡

ベータの制限: Attribution Details APIはテスト専用として設計されています。 大量リクエストが発生する本番アプリでは使用しないでください。


ベストプラクティス

連携テストとキャンペーン検証における効果的なアトリビューション検証の ための推奨事項。

テストワークフロー

推奨テストプロセス

  1. 新しい端末を使用: キャッシュされたアトリビューションを避けるために、 クリーンな端末を使用するか、テスト前に広告識別子をリセットしてください
  2. すぐに確認: テスト中の素早いフィードバックのために、インストール後 5〜10分以内にアトリビューションを確認してください
  3. 複数のシナリオをテスト: 異なるソース(オーガニック、有料キャンペーン、 リエンゲージメント)のアトリビューションを検証してください
  4. 結果を記録: 連携検証のドキュメント化のためにアトリビューション検証の 結果を記録してください
  5. 可能な限り自動化: 継続的な検証のために、自動化テストスイートで Attribution Details APIを使用してください

方法選択ガイド

各方法を使用するタイミング

シナリオ 推奨方法
クイックマニュアルテスト Device Assistアプリ — 開発中の最も速いビジュアル検証
自動化テスト Attribution Details API — CI/CDパイプラインのプログラムによる検証
非技術系テスト Device Assistアプリ — コーディングやAPIの知識不要
複数端末の一括検証 Attribution Details API — 複数端末の確認をスクリプト化
イベントトラッキングの検証 両方の方法 — Device Assistでクイックチェック、APIで詳細なイベント分析

連携検証チェックリスト

アトリビューション検証チェックリスト

完全なアトリビューション検証:

  • インストールが正しいメディア/ソースにアトリビュートされている
  • キャンペーン名が期待されるキャンペーンと一致している
  • アトリビューションのタイムスタンプが妥当である(期待される時間枠内)
  • アトリビューション方法が適切である(クリック vs インプレッション)
  • カスタムパラメータがトラッキングリンクを通じて正しく渡されている
  • セッションイベントが正しくトラッキングされている
  • カスタムイベントが正しい名前で表示されている
  • 収益イベントが金額と通貨をキャプチャしている
  • リエンゲージメントアトリビューションが機能している(該当する場合)
  • アンインストールトラッキングが設定されている(実装されている場合)

追加リソース

アトリビューションテスト、SDK連携、トラッキングリンク設定に関する 完全なドキュメント。

関連ドキュメント