Mobile App Instance List サービス
Mobile App Instance List Service は、キャンペーンでターゲットにできる モバイル アプリ インスタンス の一覧を定義するために使用されます。 これは、ドメイン リスト サービスのモバイル アプリ バージョンと考えてください。
モバイル アプリ インスタンスは、"モバイル アプリ" 抽象化の具体的な表現であることを忘れないでください。 たとえば、Android や iOS など、対象となるプラットフォームごとにアプリケーションの "インスタンス" が複数存在します。 この違いについて詳しくは、「モバイル App Service」をご覧ください。
このサービスは、まだ存在しない場合は、システムにモバイル アプリを作成する副作用もあります。 これらのアプリは、モバイル App Serviceを使用して表示できます。
REST API
HTTP メソッド | エンドポイント | 説明 |
---|---|---|
GET |
https://api.appnexus.com/mobile-app-instance-list?id=4 |
1 つのモバイル アプリ インスタンスの一覧を表示します。 |
POST |
https://api.appnexus.com/mobile-app-instance-list (モバイル アプリ インスタンスリスト JSON) |
モバイル アプリ インスタンスの一覧をシステムに追加します。 |
GET |
https://api.appnexus.com/mobile-app-instance-list |
すべてのモバイル アプリ インスタンスの一覧を表示します。 |
GET |
https://api.appnexus.com/mobile-app-instance-list?search=SEARCH_TERM |
特定の文字を含む名前または説明を含むモバイル アプリ インスタンスを検索します。 |
JSON フィールド
名前 | 型 | 説明 |
---|---|---|
apps |
オブジェクトの配列 | この特定のアプリ ID に関連付けられているアプリ インスタンスの一覧。 |
id |
int | このインスタンス リストの ID。 |
name |
string | このインスタンス リストの名前。 必須: POST |
description |
string | このインスタンス リストの説明 (省略可能)。 |
member_id |
int | このアプリ インスタンスの一覧に関連付けられているメンバー ID。 |
last_modified |
date | このアプリ インスタンスの一覧が最後に更新されたとき。 |
created_on |
date | このアプリ インスタンスの一覧が作成されたとき。 |
アプリ
名前 | 型 | 説明 |
---|---|---|
instance_id |
int | このアプリ インスタンスに関連付けられているインスタンス ID。 |
bundle_id |
string | このアプリ インスタンスに関連付けられているバンドル ID。 必須: POST |
os_family_id |
int | このアプリ インスタンスに関連付けられている OS ファミリ ID。 OS ファミリ ID の完全な一覧については、 オペレーティング システム ファミリ サービスに関するページを参照してください。 |
last_modified |
date | このアプリ インスタンスが最後に更新されたとき。 |
例
モバイル アプリ インスタンスの一覧をシステムに追加する
この例では、呼び出しで小さなモバイル アプリ インスタンスの一覧をシステムに POST
追加します。
$ cat the-list.json
{
"mobile-app-instance-list": {
"name": "A Series of Unfortunate Apps",
"description": "Mobile games which we'd like to exclude from our campaigns due to their complete lack of smurfiness.",
"apps": [
{
"bundle_id": "com.unfortunate.screamfest",
"os_family_id": 2
},
{
"bundle_id": "com.unfortunate.eggsmash",
"os_family_id": 2
}
]
}
}
$ curl -b cookies -c cookies -X POST -d @the-list.json https://api.appnexus.com/mobile-app-instance-list?member_id=1309
{
"response": {
"status": "OK",
"count": 1,
"id": 77,
"start_element": 0,
"num_elements": 100,
"mobile-app-instance-list": {
"id": 77,
"name": "A Series of Unfortunate Apps",
"description": "Mobile games which we'd like to exclude from our campaigns due to their complete lack of smurfiness.",
"member_id": 1309,
"last_modified": "2014-02-04 20:39:03",
"created_on": "2014-02-04 20:39:03",
"apps": [
{
"instance_id": 220,
"last_modified": "2014-02-04 20:39:03",
"bundle_id": "com.unfortunate.screamfest",
"os_family_id": 2
},
{
"instance_id": 221,
"last_modified": "2014-02-04 20:39:03",
"bundle_id": "com.unfortunate.eggsmash",
"os_family_id": 2
}
]
},
...
}
}
既存のモバイル アプリ インスタンスの一覧を表示する
クエリ文字列内のオブジェクト ID を持つ単純な GET
要求は、オブジェクトをフェッチします。
$ curl -b cookies https://api.appnexus.com/mobile-app-instance-list?id=77
{
"response": {
"status": "OK",
"count": 1,
"start_element": 0,
"num_elements": 100,
"mobile-app-instance-list": {
"id": 77,
"name": "A Series of Unfortunate Apps",
"description": "Mobile games which we'd like to exclude from our campaigns due to their complete lack of smurfiness.",
"member_id": 1309,
"last_modified": "2014-02-04 20:39:03",
"created_on": "2014-02-04 20:39:03",
"apps": [
{
"instance_id": 220,
"last_modified": "2014-02-04 20:39:03",
"bundle_id": "com.unfortunate.screamfest",
"os_family_id": 2
},
{
"instance_id": 221,
"last_modified": "2014-02-04 20:39:03",
"bundle_id": "com.unfortunate.eggsmash",
"os_family_id": 2
}
]
},
...
}
}
モバイル アプリ インスタンスの一覧をターゲット プロファイルに追加する
この例では、架空のモバイル アプリ インスタンスの一覧を、キャンペーンで使用するターゲティング プロファイルに追加します。 返されるプロファイル オブジェクトには、更新プログラムが反映されている必要があります。 プロファイルの詳細については、 プロファイル サービスに関するページを参照してください。
$ cat update.json
{
"profile": {
"mobile_app_instance_list_targets": [
{
"id": 2
}
],
"mobile_app_instance_list_action_include": true
}
}
$ curl -b cookies -X PUT -d @update.json 'https://api.appnexus.com/profile?id=140537'
{
"response": {
"status": "OK",
"count": 1,
"id": "140537",
"start_element": 0,
"num_elements": 100,
"profile": {
"mobile_app_instance_targets": "",
"mobile_app_instance_list_targets": [
{
"id": 2,
"name": "Angry List",
"description": "List of games that will be played by everyone",
"deleted": false
}
],
...SNIP...
}
}
}
名前または説明が含まれるモバイル アプリ インスタンス リストの検索 "test"
$ curl -b cookies -c cookies 'https://api.appnexus.com/mobile-app-instance-list?search=test'
{
"response": {
"status": "OK",
"start_element": 0,
"num_elements": 100,
"mobile-app-instance-lists": [{
"id": 31,
"name": "Sample Test IPHONE list",
"description": "",
"member_id": 927,
"last_modified": "2014-02-24 18:55:57",
"created_on": "2014-02-24 18:45:57",
"apps": [{
"instance_id": 2,
"last_modified": "2014-02-24 18:55:57",
"bundle_id": "it.studios.fish",
"os_family_id": 3
},
{
"instance_id": 14576,
"last_modified": "2014-02-24 18:55:57",
"bundle_id": "587033035",
"os_family_id": 3
},
{
"instance_id": 14576,
"last_modified": "2014-02-24 18:55:57",
"bundle_id": "com.cshomegrown.LX-Player",
"os_family_id": 3
},
{
"instance_id": 14576,
"last_modified": "2014-02-24 18:55:57",
"bundle_id": "561921433",
"os_family_id": 3
}
],
"num_apps": 4
},
{
"id": 61,
"name": "test",
"description": "test APP 428312806",
"member_id": 2350,
"last_modified": "2014-03-13 13:13:55",
"created_on": "2014-03-13 13:13:55",
"apps": [{
"instance_id": 225,
"last_modified": "2014-03-13 13:13:55",
"bundle_id": "com.wordfeud.free",
"os_family_id": 3
},
{
"instance_id": 225,
"last_modified": "2014-03-13 13:13:55",
"bundle_id": "428312806",
"os_family_id": 3
}
],
"num_apps": 2
}
]
}
}