Knowledge base

Advertising Statistics API

Overview

Note: The following documentation applies to the current API version; aspects of the domain and functionality are subject to change for general release.

The Statistics API is an HTTP interface that allows advertisers to retrieve acquisition statistics data in CSV format.

Authentication

Using the Unity Ads Statistics API requires an API key token. You can generate an API key token from dashboard by selecting Settings from the left navigation bar.

Note: The API key is generated for an specific username. If that username is removed from the organisation, that API key will be automatically revoked. Please be aware of this if you use the API key as part of an integration with a 3rd party or any other business intelligence solution.

You can use the key token in two ways:

  1. Place the key token in the GET request URL apikey parameter. For example:
https://stats.unityads.unity3d.com/organizations/:organization_id/reports/acquisiti
ons?apikey=<token>
  1. Place the key token in the Authorization header of the GET request, prefixed with Bearer. For example:
curl
https://stats.unityads.unity3d.com/organizations/:organization_id/reports/acquisiti
ons -H "Authorization: Bearer <token>"

GET request

Make a GET request to the following example URL:

https://stats.unityads.unity3d.com/organizations/:organizationId/reports/acquisition
s?splitBy=campaignSet,country&fields=timestamp,campaignSet,country,clicks,install
s,spend&apikey=<token>

Parameters

The following parameters define the period and scope of requested data:

Parameter Description Example
Start Start time of the data; required start={ISO 8601 timestamp}
End End time of the data; required end={ISO 8601 timestamp}
Scale Time resolution of the data (default is all) scale={all}
scale={hour}
scale={day}
scale={week}
scale={month}
scale={quarter}
scale={year}

Example time format: 2017-06-01T00:00:00.000Z

Filters

You can apply the following list of filters to your request:

Filter Description Example
Campaign set A comma-separated list of campaign set IDs to filter campaignSets=[:campaign_set_id]
Campaign A comma-separated list of campaign IDs to filter campaigns=[:campaign_id]
Target game A comma-separated list of target game IDs to filter targets=[:target_id]
Source game A comma-separated list of source game IDs to filter sources=[:source_id]
Ad type A comma-separated list of ad type IDs to filter. adTypes=[(video)]
adTypes=[(playable)]
adTypes=[(graphic)]
Country A comma-separated list of country IDs to filter (ex: US, FI, RU) countries=[:country_code]
Store A comma-separated list of stores to filter stores=[(apple)]
stores=[(google)]
stores=[(xiaomi)]
Platform A comma-separated list of platforms to filter platforms=[(ios)]
platforms=[(android)]
OS version A comma-separated list of operating system versions to filter (for example 1.0.0, 2.1.0) osVersions=[:os_version]
Creative pack A comma-separated list of creative packs to filter creativePack=[:creativePack_id]

In addition, you can specify a comma-separated list of dimensions by which to split data:

splitBy=[(campaignSet|creativePack|adType|campaign|target|source|store|country|
platform|osVersion)]

The following allows you to specify comma-separated fields to display in your report:

fields=[(timestamp|campaignSet|creativePack|adType|campaign|target|source|store
|country|platform|osVersion|starts|views|clicks|installs|spend)] (default:all)

Note: Omitting the fields parameter results in outputting all fields.

Response

The data returns in CSV format, with the following delimiters:

  • Commas (,) separate fields
  • Periods (.) indicate decimals
  • Double quotes (" ") indicate text fields
  • The newline character separates lines within a field

Split data

Split campaignSet data results in two fields:

  • campaign set id
  • campaign set name

Split campaign data results in two fields:

  • campaign id
  • campaign name

Split creativePack data results in two fields:

  • creative pack id
  • creative pack name

Split target data results in three fields:

  • target id
  • target store id
  • target name

Note: Splitting data by too many dimensions may impact response times for querying the API. To avoid lagging or timeouts, we recommend querying 1 day of data at a time when splitting by source and country.

Example response

$ curl -L
"https://stats.unityads.unity3d.com/organizations/:organizationId/reports/acquisitions?split
By=campaignSet,country&fields=timestamp,campaignSet,country,clicks,installs,spend&apik
ey=<token>"
timestamp,campaign set id,campaign set name,country,clicks,installs,spend
2013-03-01T00:00:00.000Z,50ed569d57fe1f324a15fbf7,"Campaign set #5",AU,71,30,45
2013-03-01T00:00:00.000Z,50ed569d57fe1f324a15fbf7,"Campaign set #5",CA,129,88,132
CONFIDENTIAL, Unity Technologies 2017
Advertiser Stats API
2013-03-01T00:00:00.000Z,50ed569d57fe1f324a15fbf7,"Campaign set
#5",US,1745,855,1282.5
2013-03-01T00:00:00.000Z,50eeb7339e10c9d21c0225cb,"Campaign set
#6",AT,39,19,28.5
2013-03-01T00:00:00.000Z,50eeb7339e10c9d21c0225cb,"Campaign set #6",AU,16,10,15
2013-03-01T00:00:00.000Z,50eeb7339e10c9d21c0225cb,"Campaign set
#6",BE,209,120,180
Still need help? Get in touch!
Last updated on 23rd Jun 2018