SESSIONエンドポイントAPIリファレンス
サーバー間の使用例
Singular REST APIはSDKの代わりにサーバー間の直接統合を可能にします。LAUNCHまたはSession Endpointはアプリケーションのセッショントラッキングを可能にします。お客様のアプリがデバイス固有のデータをお客様のサーバーに転送し、サーバーがそのデータをSingularのサーバーに送信すると、Singularプラットフォームがその情報を処理します:インストール属性、再エンゲージメント属性、リテンションメトリクスのためにこの情報を処理します。この処理されたデータは、お客様のレポート、エクスポートログ、設定されたポストバックに自動的に入力され、お客様のマーケティングキャンペーンに包括的な分析を提供します。
SDKは自動的にデバイスとアプリのデータを収集しますが、S2Sアプローチでは、以下の作業が必要です:
- アプリから必要なデータポイントを収集する
- このデータをサーバーに転送
- データをREST API経由でSingularに送信
- Singularのレスポンスをアプリに戻す
キーポイント
- 柔軟性:データの収集と送信を完全にコントロール
- 機能の同等性:適切なデータが提供されれば、すべてのSDK機能をサポート
- 統合パス:クライアント → お客様のサーバー → Singular API
- リアルタイム処理:一度に1つのリクエスト、バッチ処理なし
- シーケンシャルなデータフロー:イベントは時系列に処理される
- データの重複排除: Singularは受信データを重複排除しない。成功したリクエストを1つ送信し、リクエストが再生される場合に備えてログを保存しておくことを推奨する。
- データの検証: デバイスレベルのデータは永続的であり、一度取り込まれると削除できません。データをSingularに送信する前に、正確性を確保するために徹底的なデータ検証を実施してください。
セッション管理
LAUNCHエンドポイントは、新しいユーザーセッションのアプリオープンイベントをSingularに通知するために使用されます。
-
セッションの初期化(起動リクエスト)は以下の場合に必要です:
- 新しいアプリのインストール
- 終了状態からのアプリの起動
- アプリがバックグラウンドからフォアグラウンドに戻る
- イベントトラッキングの前にセッションを確立する必要があります。
- セッションの順序が無効な場合、データに矛盾が生じます。
- セッションタイムアウトを実装し、アプリが過去1分以内に使用されなかった場合にのみ、SESSION通知をSingularに送信することを推奨します。ユーザーがアプリをバックグラウンドにした後、1分以内にアプリをフォアグラウンドにした場合、Singular SESSIONはトリガーされませんが、1分以上フォアグラウンドにした場合はSESSIONがトリガーされます。
- ディープリンクをサポートするためには、'open_uri'パラメータにopenURLを指定したアプリのオープンに対して、常にSessionを送信する必要がある。
はじめに
Sessionエンドポイントのドキュメントを参照する:
SingularのS2S(Server-to-Server)統合の高度なオプションについては、セッション通知エンドポイントに追加のパラメータを含める必要がありますので、必ずご確認ください。詳細オプションについてはこちらをご覧ください。
セッションのレポート
Singularとの最も基本的な統合は、ユーザーセッションが発生するとSingularに通知し、Singularがいくつかの内部プロセスをトリガーできるようにすることです:
- 特定のデバイスでのアプリの最初のセッションであれば、Singularは新規インストールを認識し、インストールアトリビューションプロセスをトリガーします。
- セッションがリエンゲージメントセッションとして適格であれば、Singularはリエンゲージメントアトリビューションプロセスをトリガーします(詳しくはリエンゲージメントFAQをご覧ください)。
- そうでない場合、Singularはそのセッションをセッションとしてマークし、ユーザーのアクティビティとリテンションメトリクスのトラッキングに使用します。
Singularサーバーへのセッションリクエストとその後のイベントリクエストのタイミングは非常に重要です:
-
セッションはイベントの前に受け取らなければなりません。
例えば、ユーザーがアプリを使い始めると、Singular SDKはアプリオープンでセッションをトリガーします。ユーザーがアプリを長時間(1分以上)バックグラウンドに置くと、セッションはタイムアウトします。アプリをフォアグラウンドに戻すと、別のセッションが送信されます。アプリのライフサイクルイベントとタイマーを使ってセッションを管理し、Singularへのセッションリクエストを調整することをお勧めします。 - アプリで発生したイベントはリアルタイムで、それぞれのセッションの後に送信する必要があります。
セッションAPIエンドポイント
HTTPメソッドとセッションエンドポイント
GET https://s2s.singular.net/api/v1/launch
必須パラメータ
次の表は、このエンドポイントがサポートする必須パラメータの一覧です。記載されているパラメータはすべてクエリ・パラメータです。
GET /api/v1/launch?param1=value1¶m2=value2
- すべての必須パラメータは、SESSION API リクエストに含める必要があります。
- パラメータは、指定された形式とデータ型に従う必要があります。
必須パラメータ | |
---|---|
API キー | |
パラメータ | 説明 |
|
aパラメータはSingular SDK Keyを指定する。 SDKキーはSingular UIのメインメニューのDeveloper Toolsから取得してください。 注意:データが拒否されるため、レポートAPIキーは使用しないでください。 値の例
|
デバイス識別子パラメータ | |
パラメータ | 説明 |
サポートされているプラットフォーム
|
idfaパラメータはIDFA(Identifier for Advertisers)を指定します。IDFAは広告主がユーザーのアクション(広告のクリックやアプリのインストールなど)を追跡し、特定のキャンペーンに関連付けるのに役立ち、正確な広告ターゲティングとキャンペーンの最適化を可能にします。 iOS 14.5以降、アプリがIDFAにアクセスする前に、ユーザーはApp Tracking Transparency(ATT)フレームワークを介してオプトインする必要があります。ユーザーがIDFAにオプトインしない場合、IDFAは利用できなくなり、トラッキング機能が制限されます。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
idfvパラメータはIdentifier for Vendors (IDFV)を指定します。IDFVはAppleがデバイスに割り当てる一意の識別子で、特定のベンダーまたはデベロッパーに固有のものです。これは、特定のベンダーまたはデベロッパーに固有のもので、特定のデバイス上の同じベンダーのすべてのアプリ間で一貫性を保ち、ベンダーがユーザーを個人的に特定することなく、そのアプリのエコシステム全体でユーザーの行動やインタラクションを追跡できるようにします。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
aifaパラメータはGoogle Advertising Identifier (GAID)を指定し、AIFA in SingularまたはAndroid Advertising ID (AAID)とも呼ばれる。この識別子は、Android端末に割り当てられた一意のユーザーリセット可能な識別子です。これにより、広告主やアプリ開発者は、アプリ全体のユーザーアクション(広告のクリックやアプリのインストールなど)を追跡し、特定のキャンペーンに関連付けることができるため、ユーザーのプライバシーを維持しながら、正確な広告ターゲティングとキャンペーンの最適化が可能になります。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
asidパラメータは、AndroidアプリセットIDを指定します。ASIDは、開発者がプライバシーに配慮した方法で自社のアプリ全体のユーザーを追跡する方法を提供します。特に分析や不正防止に役立ちますが、パーソナライズ広告や計測などの広告目的には使用できません。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
amidパラメータは、Advertising IDがユーザーのプライバシー保護に役立つユーザーリセット可能な一意の識別子であることを指定します。インタレストベースの広告を表示するため、または分析を生成するためにユーザーの行動に関する情報を収集する場合は、Advertising IDを使用する必要があります。ユーザーは、Advertising IDをリセットしたり、インタレストベース広告をオプトアウトすることができます。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
oaidパラメータは、Open Advertising Identifier(OAID)を指定します。OAIDは、特に中国で製造されたAndroidデバイスの広告目的で使用される一意の匿名識別子です。中国市場など、Google Playサービスが利用できない、またはサポートされていない端末のために、Googleの広告ID(GAID)の代替としてMobile Security Alliance(MSA)によって導入されました。 OAIDは主に、Google Playサービスが制限されている環境における広告のアトリビューションやユーザー追跡のために使用され、広告主や開発者は匿名性を維持しながらユーザーの行動を追跡することができます。 OAIDは、ファーウェイやシャオミなどのブランドを含む、ほとんどの中国製アンドロイド端末で利用できる。MSA SDKまたはHuawei Mobile Services(HMS)を使用してアクセスできる。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
andiパラメータは、Android IDを指定します。Android IDは、デバイスが最初にセットアップされたときにAndroidオペレーティングシステムによって生成される一意の64ビット識別子です。これは、デバイスのライフタイムを通じて永続的であるように設計されていますが、工場出荷時のリセットなどの特定の条件下でリセットすることができます。 Android IDは各デバイスに固有で、Android 8.0(Oreo)からはアプリごと、ユーザーごとにスコープされるようになった。つまり、同じデバイス上の異なるアプリは、同じ署名キーを共有しない限り、異なるAndroid IDを受け取ることになります。 Android IDは、デバイスがファクトリーリセットされない限り、またはOTA(無線)アップデート後にアプリがアンインストールされ再インストールされない限り、一定に保たれます。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
sdidパラメータはSingular Device IDを指定する。この値はクライアント側で生成されたUUIDv4で、一意のアプリインストールを表します。これは、PCおよびコンソール・アプリケーションで使用される唯一のデバイス識別子です。 値の例
|
パラメータ | 説明 |
サポートされるプラットフォーム:
|
singパラメータは、Enterprise カスタマに限定され、クライアント定義の識別子を指定します。他のすべての識別子が使用できない特別な用途でのみ使用されます。この識別子はSingular Solution Engineerがアプリごとに有効にする必要があります。 値の例
|
デバイスパラメータ | |
パラメータ | 説明 |
|
pパラメータはアプリのプラットフォームを指定する。 以下のリストには、大文字と小文字を区別する パラメータ値が含まれています:
値の例
|
パラメータ | 説明 |
|
ipパラメータは、デバイスのパブリック (IPV4) IP アドレスを指定する。IPV6 はサポートされていません。 値の例
|
パラメータ | 説明 |
|
veパラメータは、セッション時のデバイスのOSバージョンを指定する。 値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
maパラメータは、デバイスハードウェアのMakeを指定する。このパラメータはmodelパラメータと一緒に使用する必要があります。 例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
moパラメータは、デバイスハードウェアのモデルを指定します。このパラメータはmakeパラメータと一緒に使用する必要があります。 例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
lcパラメータは、アンダースコアで区切られた2文字の言語と国コードを使用して、デバイスのIETFロケールタグを指定します。 値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
bdパラメータは、URLエンコードされたデバイスのBuildを指定します。 値の例
|
アプリケーション・パラメータ | |
パラメータ | 説明 |
|
iパラメータはアプリケーション識別子を指定する。 大文字と小文字を区別します :
値の例
|
パラメータ | 説明 |
|
app_vパラメータはアプリケーション・バージョンを指定する。 例
|
パラメータ | 説明 |
|
installパラメータは、このセッションがインストール後または再インストール後の最初の セッションであるかどうかを指定する。アプリインストール後の最初のセッションである場合は「true」を、アプリがインストール済みで後続のセッションまたはアプリを開いている場合は「false」を渡します。このパラメータは、再インストールのトラッキング機能に必要です。 例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
install_timeパラメータは、アプリを最初にインストールした時刻をUNIX時間で指定します。この値を取得するには、プラットフォーム上のリンクを使用します。 値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
update_timeパラメータは、アプリの最終更新時刻をUNIX時間で指定します。この値を取得するには、プラットフォームのリンクを使用してください。 値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
att_authorization_statusパラメータは、App Tracking Transparency(ATT)ステータスコードを指定します。iOS 14.5以降、IDFA識別子にアクセスするにはApp Tracking Transparency (ATT)プロンプトが必要です。 注:ATTプロンプトを実装しない場合でも、ATT認可ステータスに「未定」を示す値「0」を渡す必要があります。 サポートされる値は以下のとおり:
例
|
不正パラメータ | |
パラメータ | 説明 |
サポートされているプラットフォーム
|
install_sourceパラメータは、Androidのインストールソースパッケージ名を指定します。PCのインストールソースとして推奨される値は、インストールストアです。 PCでサポートされているインストールストア名には以下が含まれます:
Android(GooglePlayストア)の例:
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
install_receiptパラメータは、インストール時に受け取ったレシートを指定します。取得方法は iOS Install Receipt を参照してください。 iOSのレシートをbase64エンコードした例:
|
ディープリンクパラメータ | |
パラメータ | 説明 |
サポートされているプラットフォーム
|
openuriパラメータは、アプリが任意のディープリンク、iOSユニバーサルリンク、またはAndroidアプリリンクを介して開いたかどうかを指定し、URLエンコードされたオープンURLの値を提供する必要があります。 オープンURL:
値の例:
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
ddl_enabledパラメータは、アプリがディファードディープリンクをサポートするかどうかを指定します。サーバーがディファードディープリンクURLが返されることを期待する場合は'true'を、そうでない場合は'false'を渡します。 値の例
レスポンスの例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
singular_link_resolve_requiredパラメータは、Singularショートリンクを解決するために使用します。openuri'に Singular short link の値を指定して送信する必要があります。展開されたショートリンク (ロングリンク) が返されることをサーバが期待している場合は'true' を、そうでない場合は'false' を渡します。ショートリンクの処理を参照。 値の例:
レスポンスの例:
|
高度な属性パラメータ | |
パラメータ | 説明 |
サポートされているプラットフォーム
|
install_refパラメータは、Google Install Referrer Informationを指定します。インストールリファラーには、ユーザを Google Play ストアに送り込んだ人についての情報が含まれます。インストールリファラを Singular で利用できるようにすると、 インストールの属性付けを最も正確に行うことができます。この値を取得し、最初のセッション通知コールで Singular に渡します。
User-Level Exports で Facebook のデータを受け取ったり、Data Destinations と共有したり、ポストバックを送信したりといった、Singular の重要な機能にはこの値が必要です。 Google Playは、ユーザーがストアに到着したときにリファラー情報を収集します。Google Playは、ユーザーがストアにアクセスした際にリファラー情報を収集します。ユーザーがアクセス先のアプリをインストールした場合、Google Playはその情報をアプリに提供します。詳細については、Googleの開発者向けドキュメントを参照してください。 値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
meta_refパラメータは、広告主がAndroidアプリのインストールに関する詳細なユーザーレベルのアトリビューションデータにアクセスできるようにするためにFacebookが導入したAndroid固有の測定ソリューションである「Meta Referrer」を指定します(Facebookのデータポリシーを参照)。Google Play Install Referrer」(「Passing Google Install Referrer」を参照)と「Meta Install Referrer」の両方のテクノロジーをアプリインストール計測のために実装することで構成されています。Meta Referrerの詳細については、このトピックに関するFAQをご覧ください。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
attribution_tokenパラメータは、AdServicesフレームワークを介してiOS 14.3+で取得されたApple Search Adsのアトリビューショントークンを指定します。 インストールまたは再インストール後にアプリが初めて初期化されると同時に、attributionToken() を使用してアトリビューショントークンを取得します。 値の例
|
リクエスト・ボディ
このメソッドを呼び出すときは、リクエスト・ボディを指定しないでください。リクエストはクエリパラメータ付きのGETメソッドを使用して送信する必要があります。
リクエストの例
以下のコードサンプルは、サポートされているすべてのパラメータを表しているわけではありません。リクエストを実装する際には、上記のように必要なパラメータをすべて含めるようにし、本番インスタンスからデータを送信する前に正しい値が渡されていることを確認してください。開発とテストのために、一意な `i` パラメータ(アプリケーション識別子)を使用することを推奨します。
PYTHON
import requests
params = {
'a': 'sdk_key_here',
'p': 'Android',
'i': 'com.singular.app',
'ip': '10.1.2.3',
've': '9.2',
'ma': 'samsung',
'mo': 'SM-G935F',
'lc': 'en_US',
'aifa': '8ecd7512-2864-440c-93f3-a3cabe62525b',
'asid': 'edee92a2-7b2f-45f4-a509-840f170fc6d9',
'install': 'true',
'n': 'MyCoolAppName',
'bd': 'Build/13D15',
'app_v': '1.2.3',
'openuri': 'myapp://home/page?queryparam1=value1',
'ddl_enabled': 'true',
'install_source': 'com.android.vending',
'install_time': 1510040127,
'update_time': 1510090877
}
response = requests.get('https://s2s.singular.net/api/v1/launch', params=params)
print(response.json())
CURL
curl -G "https://s2s.singular.net/api/v1/launch" \
--data-urlencode "a=sdk_key_here" \
--data-urlencode "p=Android" \
--data-urlencode "i=com.singular.app" \
--data-urlencode "ip=10.1.2.3" \
--data-urlencode "ve=9.2" \
--data-urlencode "ma=samsung" \
--data-urlencode "mo=SM-G935F" \
--data-urlencode "lc=en_US" \
--data-urlencode "aifa=8ecd7512-2864-440c-93f3-a3cabe62525b" \
--data-urlencode "asid=edee92a2-7b2f-45f4-a509-840f170fc6d9" \
--data-urlencode "install=true" \
--data-urlencode "n=MyCoolAppName" \
--data-urlencode "bd=Build/13D15" \
--data-urlencode "app_v=1.2.3" \
--data-urlencode "openuri=myapp://home/page?queryparam1=value1" \
--data-urlencode "ddl_enabled=true" \
--data-urlencode "install_source=com.android.vending" \
--data-urlencode "install_time=1510040127" \
--data-urlencode "update_time=1510090877"
HTTP
GET /api/v1/launch
?a=sdk_key_here
&p=Android
&i=com.singular.app
&ip=10.1.2.3
&ve=9.2
&ma=samsung
&mo=SM-G935F
&lc=en_US
&aifa=8ecd7512-2864-440c-93f3-a3cabe62525b
&asid=edee92a2-7b2f-45f4-a509-840f170fc6d9
&install=true
&n=MyCoolAppName
&bd=Build%2F13D15
&app_v=1.2.3
&openuri=myapp%3A%2F%2Fhome%2Fpage%3Fqueryparam1%3Dvalue1
&ddl_enabled=true
&install_source=com.android.vending
&install_time=1510040127
&update_time=1510090877 HTTP/1.1
Host: s2s.singular.net
Accept: application/json
JAVA 例
// Base URL
String baseUrl = "https://s2s.singular.net/api/v1/launch";
// Parameters
Map < String, String > params = new HashMap < > ();
params.put("a", "sdk_key_here");
params.put("p", "Android");
params.put("i", "com.singular.app");
params.put("ip", "10.1.2.3");
params.put("ve", "9.2");
params.put("ma", "samsung");
params.put("mo", "SM-G935F");
params.put("lc", "en_US");
params.put("aifa", "8ecd7512-2864-440c-93f3-a3cabe62525b");
params.put("asid", "edee92a2-7b2f-45f4-a509-840f170fc6d9");
params.put("install", "true");
params.put("n", "MyCoolAppName");
params.put("bd", "Build/13D15");
params.put("app_v", "1.2.3");
params.put("openuri", "myapp://home/page?queryparam1=value1");
params.put("ddl_enabled", "true");
params.put("install_source", "com.android.vending");
params.put("install_time", "1510040127");
params.put("update_time", "1510090877");
// Build URL with encoded parameters
StringBuilder urlBuilder = new StringBuilder(baseUrl);
urlBuilder.append('?');
for (Map.Entry < String, String > entry: params.entrySet()) {
if (urlBuilder.length() > baseUrl.length() + 1) {
urlBuilder.append('&');
}
urlBuilder.append(URLEncoder.encode(entry.getKey(), StandardCharsets.UTF_8))
.append('=')
.append(URLEncoder.encode(entry.getValue(), StandardCharsets.UTF_8));
}
// Create connection
URL url = new URL(urlBuilder.toString());
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept", "application/json");
// Get response
int responseCode = conn.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(conn.getInputStream())
);
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in .readLine()) != null) {
response.append(inputLine);
} in .close();
// Check application-level status
System.out.println("HTTP Status Code: " + responseCode);
System.out.println("Response: " + response.toString());
// Disconnect
conn.disconnect();
オプションのパラメータ
次の表は、このエンドポイントがサポートするオプション・パラメーターの一覧です。リストされているパラメータはすべてクエリ・パラメータです。
オプション・パラメータ | |
---|---|
タイムスタンプ・パラメータ | |
パラメータ | 説明 |
|
utimeパラメータは、セッションの時間を10桁のUNIX時間で指定します。
値の例:
|
パラメータ | 説明 |
|
umilisecパラメータは、セッションの時間をミリ秒 13 桁の UNIX 時間で指定する。
値の例
|
デバイスとネットワークパラメータ | |
パラメータ | 説明 |
|
global_propertiesパラメータは、最大5つのキーと値のペアを含むURLエンコードされたJSONオブジェクトを受け付ける。各キーと値の長さは最大200文字です。
JSONオブジェクトは次のようにする必要があります:
値の例
|
パラメータ | 説明 |
|
use_ipパラメータは、'ip' パラメータの代わりに HTTP リクエストから IP アドレスを抽出するように Singular に指示します。この機能を使うには'true' を渡します。
値の例
|
パラメータ | 説明 |
|
countryパラメータは、セッション実行時のユーザーのISO 3166-1 alpha-2二文字の国コードを含むべきである。このパラメータは以下の場合にのみ必要とされる:
値の例
|
パラメータ | 説明 |
|
uaパラメータはデバイスのUser Agentを指定する。
値はURLエンコードされていなければならない。
値の例
|
パラメータ | 説明 |
対応プラットフォーム
|
cパラメータは、ネットワーク接続タイプ「wifi」または「carrier」を指定します。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
cnパラメータは、インターネットプロバイダのキャリア名を指定します。
値の例
|
トラッキングサポートのアンインストール | |
パラメータ | 説明 |
サポートされているプラットフォーム
|
apns_tokenパラメータは、Apple Push Notification Service (APNS) Device Token を指定します。
値の例
|
パラメータ | 説明 |
対応プラットフォーム
|
fcmパラメータは Firebase Cloud Messaging Device Token を指定します。
値の例
|
データプライバシー | |
パラメータ | 説明 |
|
data_sharing_optionsパラメータは、情報共有に対するエンドユーザーの同意を指定します。設定された場合、この値は永続化され、そのユーザのその後の 'SESSION' および 'EVENT' リクエストごとに渡される必要があります。
値はURLエンコードされたJSON文字列でなければならない。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
dntパラメータはDo Not Trackのステータスを指定する。Do Not Trackが有効な場合は1を、無効な場合は0を渡す。 値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
dntoffパラメータは、Do Not Trackがオフかどうかを指定する。追跡しない」が有効な場合は0を、「追跡しない」が無効な場合は1を渡す。 値の例
|
クロスデバイスサポート | |
パラメータ | 説明 |
|
custom_user_idパラメータは、内部ユーザIDを指定する。
値の例
|
iOSのSkAdNetworkサポート | |
パラメータ | 説明 |
対応プラットフォーム
|
skan_conversion_valueパラメータは、このセッション通知の時点での最新のSKAdNetwork変換値を指定します(SKAdNetworkの実装についての詳細はこちら)。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
skan_first_call_timestampパラメータは、基礎となるSkAdNetwork APIへの最初のコールのUnixタイムスタンプを指定します(SKAdNetworkの実装についての詳細はこちら)。
値の例
|
パラメータ | 説明 |
サポートされているプラットフォーム
|
skan_last_call_timestampパラメータは、このセッション通知時に基礎となるSkAdNetwork APIへの最新のコールのUnixタイムスタンプを指定します(SKAdNetworkの実装についての詳細はこちら)。
値の例
|
セッションテスト
サーバー間の統合を行った後、製品インスタンスを本番稼動させる前に、Singularがデータを受信していることを確認することが不可欠です。詳細はテストガイドを参照してください。高レベルでは以下のステップに従う必要があります:
- テストデバイスの Advertising ID を取得し、Singular SDK コンソールに ID を追加します。
- Singular SDK コンソールを開き、デバイス識別子を追加してデータのキャプチャを開始します。
- アプリ識別子を開発用アプリ識別子(com.singular.app.dev)でオーバーライドし、テストデータとイベントを本番データと分離します。
- 終了状態からアプリをビルドまたはオープンする
- App Openが必要なすべてのSingularデータポイントとともにサーバーに送信されることを検証します。
- サーバーが、必要なすべてのデータポイントとともに、Singular の'launch' エンドポイントに Session Notification をトリガーすることを検証します。
- 数秒後、Singular SDKコンソールにSessionイベントが表示されます。
- このテストを繰り返し、すべてのアプリのエントリまたは「フォアグラウンド」操作から、アプリのオープンがセッションをトリガーすることを検証します。
セッションイベントがアプリのオープンまたはフォアグラウンドで発生し、イベントを受信する前に発生することを確認します。
SDKコンソールにセッションが表示されれば、SESSION処理のエンドツーエンドのテストは完了です!