概要:アドネットワークは、自社の連携パートナーアカウントに紐づくアプリのメタデータ(アプリに関する情報)を取得できます。
アプリ一覧取得API
以下では、このAPIを使用するために必要な情報を説明します。
アプリ一覧取得APIの基本仕様
| 区分 | 項目 | 説明 |
|---|---|---|
| リクエスト | HTTPメソッド | GET |
| パス | https://hq1.appsflyer.com/api/mng/apps | |
| Authorizationヘッダー |
|
|
| レスポンス | 取得結果 | JSON形式で返されます。 |
| リクエスト数の上限 |
|
|
| 取得レコード数の上限 | 1リクエストあたり1,000件。取得対象が1,000件を超える場合は、本記事で説明するページネーションを使用して、後続のページを取得してください。 |
APIリクエスト
APIリクエストには、メソッド、パス、必須のcapabilitiesパラメータ、および任意のページネーション用パラメータを指定します。トークンはAuthorizationヘッダーに指定します。
メソッド
GET https://hq1.appsflyer.com/api/mng/apps?capabilities={capabilities}
アプリ一覧の取得に必要なパラメータ
| クエリパラメータ | 説明 | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| capabilities |
対象の権限または連携設定が有効なアプリの一覧と件数を取得するには、capabilitiesパラメータに以下のいずれかの値を指定します。
例:Protect360レポートAPIのアクセス権限があるアプリの一覧を取得する場合は、 |
ページネーションの仕組み
このAPIでは、データを複数のページに分けて取得するページネーションが常に適用されます。
ページネーションの基本仕様:
- 1回のリクエスト(1ページ)で、最大1,000件のレコードが返されます。
- JSONレスポンスには、ページネーションに関する以下のキーが含まれます。
- meta.total_items:すべてのページを合わせた、取得対象のレコード数です。指定したcapabilitiesに該当する権限または連携設定が有効なアプリの数を表します。
- ページネーション用のリンクには、以下のキーが含まれます。後述のJSON例も参照してください。
- links.prev:前のページがある場合に、そのページの取得に使用したリクエストを示します。
- links.self:現在のJSON(ページ)の取得に使用したリクエストを示します。
- links.next:次のページを取得するためのリクエストを示します。 nextキーがない場合は、最後のページです。
ページネーションは、以下のいずれかの方法で制御します。
- [推奨]JSON内のリンクを使用する:links.nextキーがある場合は、その値を使用して次のページを取得するリクエストを作成します。 links.nextキーを含まないJSONが返されるまで、この処理を繰り返します。
- limitパラメータとoffsetパラメータをtotal_itemsキーと組み合わせて使用し、プログラム側でページネーションを制御します。
ページネーション用リンクのJSON例
- 以下の例は、最初のリクエストの結果を示したものです。2回目のリクエストに対応し、dataセクションには2件のレコードが含まれています(dataセクションの表示は省略)。
- 取得対象のレコード数は、全部で6件です。
- links.nextキーには、次のページの5件目と6件目のレコードを取得するためのリクエストが含まれています。
{
"data": {[...]},
"meta": {
"total_items": 6
},
"links": {
"prev": "https://hq1.appsflyer.com/api/mng/apps?capabilities=protect_360&offset=0&limit=2",
"self": "https://hq1.appsflyer.com/api/mng/apps?capabilities=protect_360&offset=2&limit=2",
"next": "https://hq1.appsflyer.com/api/mng/apps?capabilities=protect_360&offset=4&limit=2"
}
}
ページネーション用のパラメータ(任意)
| クエリパラメータ | 説明 |
|---|---|
| limit |
1回の呼び出しで返されるレコード数。
|
| offset |
取得を開始するレコードの位置。レコードの位置は0から数えます。
|
JSONレスポンス
| キー | 説明 |
|---|---|
| id | アプリID。例:id123456789、com.myapp.com
|
| type | 常にappが返されます。 |
| name | アプリ名 |
| platform | iOSまたはAndroid |
| currency | 広告主が設定したアプリごとの通貨コード。 |
| time_zone | 広告主が設定したアプリごとのタイムゾーン。 |
| total_items | 指定したcapabilitiesに該当する、アドネットワークが利用可能なアプリの数。 |
| links |
ページネーション用の情報(パラメータのセクションで説明)。
|
アプリ一覧取得のcurlリクエスト例とレスポンス
curlリクエスト
以下は、任意のページネーション用パラメータも含めた、リクエスト全体の例です。
curl --location --request GET 'https://hq1.appsflyer.com/api/mng/apps?capabilities=protect_360&limit=1000&offset=0' \
-H 'Authorization: Bearer {API V2.0 token available to the admin in the dashboard.}' \
JSONレスポンス
{
"data": [
{
"id": "com.appsflyer.xpend_qa1",
"type": "app",
"attributes": {
"name": "com.appsflyer.xpend_qa1",
"platform": "android",
"currency": "USD",
"time_zone": "UTC"
}
},
{
"id": "com.abc.app",
"type": "app",
"attributes": {
"name": "com.abc.app",
"platform": "android",
"currency": "USD",
"time_zone": "UTC",
"enable_retargetting": true
}
},
{
"id": "com.xyz.app",
"type": "app",
"attributes": {
"name": "com.xyz.app",
"platform": "android",
"currency": "JPY",
"time_zone": "UTC"
}
}
],
"meta": {
"total_items": 3
},
"links": {
"self": "https://hq1.appsflyer.com/api/mng/apps?capabilities=protect_360&offset=0&limit=1000"
}
}
HTTPレスポンスコード
| コード | メッセージ | 説明とトラブルシューティング |
|---|---|---|
| 200 | OK | 正常なデータが返されました。 |
| 200 | OK |
症状:データが返されない。 対処方法:認証トークンがBearer認証のヘッダーに含まれていることを確認してください。 |
| 400 | Bad request |
|
| 401 | Unauthorized |
メッセージ:認証トークンの形式が正しくありません。 正しいトークンを使用していることを確認してください。トークンは700文字以上である必要があります。 |
| 404 | Not found |
|
| 429 | Too many requests | リクエスト数の上限を超えています。 |