The /reports/usage resource provides comprehensive access to usage reports for your apps. Reports can be generated in a variety of formats.
The main resource gives you a single combined result across the filter parameters you select. The result can be limited by dates, products, countries and some other parameters.
Using the group_by parameter, you can get a report broken down by products, countries, dates, networks, or any combination thereof.
Scope: All of the resources in this route require read access in the private scope (private:read).
Available Metrics
Unlike other routes in the API, the response object in this route will contain different metrics for different networks.
See the table below for details:
| Apple | Flurry | Google Analytics | |
|---|---|---|---|
| active_users | ● | ||
| avg_optin_rate | ● | ||
| crashes | ● | ● | ● |
| daily_active_devices | ● | ● | |
| daily_new_devices | ● | ||
| median_session_length | ● | ||
| monthly_active_devices | ● | ||
| paying_users | ● | ||
| app_store_views | ● | ||
| unique_app_store_views | ● | ||
| impressions | ● | ||
| unique_impressions | ● | ||
| screen_views | ● | ||
| screen_views_per_user | ● | ||
| sessions | ● | ● | ● |
| session_duration | ● | ● | |
| sessions_per_device | ● | ● | |
| sessions_per_user | ● | ||
| unique_screen_views | ● |
Getting Totals
Request
GET /reports/usage/?group_by=network&start_date={start_date}&end_date=(end_date)&products={product_ids}&countries={countries}&format={format}&networks={networks}
Arguments
| Argument | Type | Description |
|---|---|---|
| start_date | Date | Date (yyyy-mm-dd), inclusive, to start reporting from. Default: the beginning of time. |
| end_date | Date | Date (yyyy-mm-dd), inclusive, to stop reporting. Default: today. |
| group_by | List | One or more pivots separated by a comma (,). Available pivots: network, product, country, and date. |
| products | List | One or more products to include in the response separated by a comma (,). Default: all active products in account. |
| countries | List | One or more countries to limit the report to separated by a comma (,). See /data/countries for all available countries. Default: include all countries. |
| format | String | Output format: JSON or CSV. Defaults to JSON. |
Response
The response will depend on whether you requested data for multiple networks or a single one. See metrics by network table above, or examples below.
Example
// GET /reports/usage?group_by=network
{
"apple:analytics": {
"sessions": 3589097152,
"avg_optin_rate": "0.43",
...
"storefront": "apple:analytics",
"store": "apple"
},
"flurry_analytics": {
"sessions": 1540311105,
...
"storefront": "flurry_analytics",
"store": "flurry_analytics"
},
"google_analytics": {
"sessions": 1251311105,
...
"storefront": "google_analytics",
"store": "google_analytics"
}
}
Generating a Report By Product, Country, or Date
Request
GET /reports/usage/?group_by={group_by}&start_date={start_date}&end_date={end_date}&products={product_ids}&countries={countries}&format={format}
Arguments
| Argument | Type | Description |
|---|---|---|
| start_date | Date | Date (yyyy-mm-dd), inclusive, to start reporting from. Default: the beginning of time. |
| end_date | Date | Date (yyyy-mm-dd), inclusive, to stop reporting. Default: today. |
| group_by | List | One or more pivots separated by a comma (,). Available pivots: network, product, country, and date. |
| products | List | One or more products to include in the response separated by a comma (,). Default: all active products in account. |
| countries | List | One or more countries to limit the report to separated by a comma (,). See /data/countries for all available countries. Default: include all countries. |
| format | String | Output format: JSON or CSV. Defaults to JSON. |
group_by=networkis required. Additional group_by options can also be specified, but network is required. Omitting networks will result in a 400 response.
Response
The response depends on the specified group_by given. No matter which group_by, the deepest part of the representation is a leaf containing a representation with the metrics detailed in the table above.
Example For Usage By Country from Google Analytics
// GET /reports/usage/?group_by=countries&networks=google_analytics
{
"AU": {
"crashes": 5,
"sessions": 1121,
"session_duration": "53911.00",
"active_users": 192,
"screen_views": 2443,
"unique_screen_views": 1311,
"sessions_per_user": "1.32",
"screen_views_per_user": "4.82",
"iso": "AU",
"country": "Australia"
},
"US": {
"crashes": 110,
"sessions": 1345394,
"session_duration": "1272666.00",
"active_users": 96912,
"screen_views": 5122347,
"unique_screen_views": 361239,
"sessions_per_user": "1.44",
"screen_views_per_user": "5.29",
"storefront": "google_analytics",
"store": "google_analytics",
"iso": "US",
"country": "United States"
},
...
}
Example For Usage By network, Date, and Product
// GET /reports/usage/?group_by=networks,dates,products
{
"apple:analytics": {
"2017-10-01": {
"100000000000001": {
"sessions": 109275,
"avg_optin_rate": "0.32",
...
"storefront": "apple:analytics",
"store": "apple",
"date": "2017-10-02",
"product_id": 100000000000001
},
"100000000000002": {
...
}
}
"2017-10-02": {
...
},
},
"google_analytics": {
"2017-10-01": {
...
}
},
...
}