adjust-icon

Reports endpoint

The reports endpoint enables you to combine data from many services in a single report. Request installs, revenue, ad spend, and SKAdNetwork data divided by day, app, and ad network.

Fetch JSON report

Endpoint
GET https://automate.adjust.com/reports-service/report

Returns filtered data from the report service in JSON format.

Filters

FilterTypeDescriptionExample
dimensions*StringComma-separated values used to group parameters. See the dimensions table below for more information.dimensions=app,os_name,week,campaign_id_network
metrics*StringComma-separated KPIs. See the metrics table below for more information.metrics=cost,installs,ecpi_network
date_period*StringStart and end dates for the report with 3 supported formats:
  • Logical dates
  • Absolute dates
  • Relative dates
  • Logical dates:
    • this_month_until_yesterday
    • today
    • yesterday
    • this_week
    • last_week
    • this_month
    • last_month
  • Absolute dates:
    • 2020-12-31:2021-01-01
  • Relative dates:
    • -10d:-3d (from 10 days ago to 3 days ago)
cohort_maturityString
  • immature: displays current values of cumulative metrics for all cohorts, including immature cohorts.
  • mature: displays the values of cumulative metrics only for mature cohorts and zeros for immature cohorts.
cohort_maturity=immature
utc_offsetStringThe timezone used in the report.utc_offset=+01:00
attribution_typeStringThe type of engagement the attribution awards.
  • click (default)
  • impression
  • all
attribution_type=click
attribution_sourceStringWhether in-app activity is assigned to the user’s install source (first) or divided among the install source and subsequent sources of reattribution (dynamic). Defaults to dynamic.attribution_source=first
reattributedStringFilter for reattributed users only. Reattribution is when a user who has already installed your app returns to it through a new Adjust-measured source.
  • all (default)
  • false
  • true
reattributed=false
iap_revenue_modeStringThe percentage of gross ad revenue returned by the endpoint. Available options are:
  • GROSS_100
  • GROSS_85
  • GROSS_70
  • GROSS_60
iap_revenue_mode=GROSS_70
ad_revenue_sourcesStringComma-separated list of ad revenue sources.ad_revenue_sources=unknown
os_namesStringComma-separated list of operating system names.os_names=ios,android
ad_spend_modeStringDetermines the ad spend source applied in calculations. See How ad spend source affects your data for more information.
  • adjust
  • network
  • mixed
ad_spend_mode=network
sandboxBooleanWhether to use sandbox data or production data. Defaults to false.sandbox=true
sortStringComma-separated list of metrics/dimensions to sort the report by. Use - to order descending.sort=-clicks,installs
indexStringComma-separated list of dimensions used to index the report.index=network,campaign,adgroup
format_datesBooleanIf set to false, all date dimensions are returned in ISO format.format_dates=false
period_over_periodStringThe period for comparing report data.period_over_period=previous_week
currencyStringCurrency used for conversion of money related metrics.currency=USD
[dimension]__inStringComma-separated list of values to filter dimension’s values (exact match) for any dimension.campaign__in=abc,def
[dimension]__not_inStringComma-separated list of values to filter dimension’s values (exclude exact match) for any dimensioncampaign__not_in=abc,def
[dimension]__containsStringSubstring search in dimension’s values (case insensitive) for any dimension.campaign__contains=ios
[dimension]__excludeStringExcluding substring search in dimension’s values (case insensitive) for any dimension.campaign__exclude=ios
[dimension]__starts_withStringSubstring search matching dimensions starting with specified prefix (case insensitive).campaign__starts_with=ios
[dimension]__not_starts_withStringSubstring search matching dimensions not starting with specified prefix (case insensitive).campaign__not_starts_with=ios
[dimension]__ends_withStringSubstring search matching dimensions ending with specified suffix (case insensitive).campaign__ends_with=ios
[dimension]__not_ends_withStringSubstring search matching dimensions not ending with specified suffix (case insensitive).campaign__not_ends_with=ios
[metric]__ltString”Less than” filter for metric’s values any metric.skad_installs__lt=100
[metric]__lteString”Less than or equal” filter for metric’s values for any metric.skad_installs__lte=100
[metric]__gtString”Greater than” filter for metric’s values for any metric.skad_installs__gt=100
[metric]__gteString”Greater than or equal” filter for metric’s values for any metric.skad_installs__gte=100
[metric]__eqString”Equal” filter for metric’s values for any metric.skad_installs__eq=100
[metric]__neString”Not equal” filter for values relating to any metric.skad_installs__ne=100

Dimensions

Dimensions allow a user to break down metrics into groups using one or several parameters. For example, the number of installs by date, country and network.

DimensionData typeDescriptionExample
hourDateUse format_dates=false to return the value in ISO format.
YYYY-MM-DDTHH:MM:SS
2021-05-11T17:00:45
dayDateUse format_dates=false to return the value in ISO format.
YYYY-MM-DD
2021-05-11
weekDateUse format_dates=false to return the value in ISO format.
YYYY-MM-DD - YYYY-MM-DD
2021-05-09 - 2021-05-15
monthDateUse format_dates=false to return the value in ISO format.
YYYY-MM
2021-05
yearDateUse format_dates=false to return the value in ISO format.
YYYY
2021
quarterStringUse format_dates=false to return the value in ISO format.
Q<quarter_number> YYYY
Q2 2021
os_nameStringPossible values:
  • android
  • bada
  • blackberry
  • ios
  • linux
  • macos
  • server
  • symbian
  • unknown
  • webos
  • windows
  • windows-phone
device_typeStringPossible values:
  • bot
  • console
  • ipod
  • mac
  • pc
  • phone
  • server
  • simulator
  • tablet
  • tv
  • unknown
appStringName of the app.
app_tokenStringApp ID in the Adjust system.
store_idStringStore App ID.com.random.app
store_typeStringStore from where the app was installed.google_play
currencyStringCurrency name.Euro
currency_codeString3-character value ISO 4217.EUR
networkStringThe name of the advertising network.Organic, AppLovin, Facebook Installs, Instagram Installs.
campaignStringLink sub-level 1.
String value usually contains campaign name and id.
campaign_networkStringCampaign name from the network.
campaign_id_networkStringCampaign ID from the network.
adgroupStringLink sub-level 2.
String value usually contains adgroup name and id.
adgroup_networkStringAdgroup name from the network.
adgroup_id_networkStringAdgroup ID from the network.
source_networkStringName of the source network. Optional value dependent on the network.
source_id_networkStringID of the source network.
creativeStringLink sub-level 3.
String value usually contains creative name and id.
creative_networkStringCreative name from the network.
creative_id_networkStringCreative ID from the network.
countryStringCountry name.United States of America
country_codeString2-character value ISO 3166.US
regionStringBusiness region.APAC
partner_nameStringPartner’s name in the Adjust system.AppLovin
partner_idStringPartner’s id in the Adjust system.34
partnerStringThe unique slug of the partner.applovin
channelStringA combination of partner_name and network.
platformStringThe device operating system/platform. See list of supported platforms below.android
Platforms
  • android
  • android-tv
  • bada
  • blackberry
  • facebook
  • fire-tv
  • ios
  • linux
  • macos
  • server
  • symbian
  • webos
  • windows
  • windows-phone

Metrics

Metrics are used to assess and compare the performance of campaigns you run and measure with Adjust.

At least 1 metric is required in each request. The most common metrics are:

  • installs
  • clicks
  • impressions

A full list of metrics is available in the Datascape metrics glossary. You can also use the Filters Data endpoint to search for metrics.

Response format

Response format
{
"rows": [
{
"attr_dependency": {},
"app": "App Name",
"partner_name": "AppLovin",
"campaign": "Campaign Name (Campaign ID)",
"campaign_id_network": "Campaign ID",
"campaign_network": "Campaign Name",
"installs": "64",
"cost": "1000"
}
],
"totals": {
"installs": 64,
"cost": 1000
},
"warnings": []
}

Response codes

This endpoint returns the following responses:

ResponseDescriptionNotes
200SuccessReturns report information
204No contentReturned if the response object is empty
400Bad requestReturned if your request is malformed or contains unsupported parameters
401UnauthorizedReturned if your credentials are incorrect or absent
403ForbiddenReturned if you try to access information you don’t have permission to view
429Too many requestsReturned if you exceed 50 simultaneous requests
503Service unavailableReturned if the server can’t be reached
504Gateway timeoutReturned if the query takes too long to return a response

Example

cURL
$ curl \
--header 'Authorization: Bearer <adjust_api_token>' \
--location --request GET 'https://automate.adjust.com/reports-service/report?ad_spend_mode=network&app_token__in={app_token1},{app_token2}&date_period=2021-05-01:2021-05-02&dimensions=app,partner_name,campaign,campaign_id_network,campaign_network&metrics=installs,network_installs,network_cost,network_ecpi'
Success response
{
"rows": [
{
"attr_dependency": {
"campaign_id_network": "unknown",
"partner_id": "-300",
"partner": "Organic"
},
"app": "Test app",
"partner_name": "Organic",
"campaign": "unknown",
"campaign_id_network": "unknown",
"campaign_network": "unknown",
"installs": "10",
"network_installs": "0",
"network_cost": "0.0",
"network_ecpi": "0.0"
}
],
"totals": {
"installs": 10.0,
"network_installs": 0.0,
"network_cost": 0.0,
"network_ecpi": 0.0
},
"warnings": [],
"pagination": null
}