API Access

1. API overview

  • The Reporting API uses HTTP API, which tries to follow a RESTful design pattern.
  • The results you get back will be in the JSON format.
  • All numbers are reported in timezone UTC (+00:00).
  • The rate limit of reporting API is 5 requests per second.

2. Account Wide Reporting API

You can query for the data of all apps under a single account.

2-1. Endpoint

curl https://dashboard.pubnative.net/api/reports?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}
curl https://dashboard.pubnative.net/api/reports?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=country_code
curl https://dashboard.pubnative.net/api/reports?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by[]=zone_id&group_by[]=country_code
curl https://dashboard.pubnative.net/api/reports?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=zone_id
curl https://dashboard.pubnative.net/api/reports?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=zone_name
curl https://dashboard.pubnative.net/api/reports?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=store_app_id

2-2. Request Parameters

👍

NEW

New optional parameters added:

  • group_by=date
  • date_format
  • timezone
ParameterRequired?DescriptionExample
account_auth_tokenRequiredReporting API access token (unique per account)

Available in dashboard account menu (click Reporting API Key)
1001a00a1234ab1111ab12a1abc
12312311a10000a1a123412345678abc1234
start_dateRequiredStart date of the data (dd/mm/yyyy)25/01/2021
end_dateRequiredEnd date of the data (dd/mm/yyyy)30/01/2021
group_byOptionalAdd in case you wish to breakdown by specific dimension(s). Please note that the report is broken down by pub_app by default.country_code
date (when added, pub_app breakdown is hidden)
store_app_id
zone_id
zone_name

(static value)
group_by[]OptionalUse in case you want to add multiple group_by&group_by[]=zone_id&group_by[]=country_code
date_formatOptionalChange date_format to match your system’s date format‘dd/mm/yyyy’ (default), ‘yyyy-mm-dd’
timezoneOptionalIn case timezone is not added, then the default timezone will be used (UTC)+01:00, +09:00, -08:00, etc.

2-3. Example Response

{
  "reports": [
    {
      "ctr": 0.24,
      "app_name": "APP NAME1",
      "ad_server_fill_rate": 0.24,
      "ad_server_requests": 862700,
      "ad_server_filled_requests": 2050,
      "clicks": 4,
      "impressions": 1682,
      "ecpm": 0.86,
      "date": "25/01/2021",
      "revenues": 1.44
    },
    {
      "ctr": 0.0,
      "app_name": "APP NAME2",
      "ad_server_fill_rate": 1.35,
      "ad_server_requests": 81700,
      "ad_server_filled_requests": 1100,
      "clicks": 0,
      "impressions": 915,
      "ecpm": 1.24,
      "date": "25/01/2021",
      "revenues": 1.13
    },
{
  "reports": [
    {
      "ctr": 0.24,
      "app_name": "APP NAME1",
      "zone_id": "1",
      "ad_server_fill_rate": 0.24,
      "ad_server_requests": 862700,
      "ad_server_filled_requests": 2050,
      "clicks": 4,
      "impressions": 1682,
      "ecpm": 0.86,
      "date": "25/01/2021",
      "revenues": 1.44
    },
    {
      "ctr": 0.0,
      "app_name": "APP NAME2",
      "zone_id": "1",
      "ad_server_fill_rate": 1.35,
      "ad_server_requests": 81700,
      "ad_server_filled_requests": 1100,
      "clicks": 0,
      "impressions": 915,
      "ecpm": 1.24,
      "date": "25/01/2021",
      "revenues": 1.13
    },
{
  "reports": [
    {
      "ctr": 0.24,
      "app_name": "APP NAME1",
      "country_code": "US",
      "ad_server_fill_rate": 0.24,
      "ad_server_requests": 862700,
      "ad_server_filled_requests": 2050,
      "clicks": 4,
      "impressions": 1682,
      "ecpm": 0.86,
      "date": "25/01/2021",
      "revenues": 1.44
    },
    {
      "ctr": 0.0,
      "app_name": "APP NAME2",
      "country_code": "KR",
      "ad_server_fill_rate": 1.35,
      "ad_server_requests": 81700,
      "ad_server_filled_requests": 1100,
      "clicks": 0,
      "impressions": 915,
      "ecpm": 1.24,
      "date": "25/01/2021",
      "revenues": 1.13
    },
{
  "reports": [
    {
      "ctr": 0.24,
      "app_name": "APP NAME3",
      "country_code": "US",
      "zone_id": "1",
      "ad_server_fill_rate": 0.24,
      "ad_server_requests": 862700,
      "ad_server_filled_requests": 2050,
      "clicks": 4,
      "impressions": 1682,
      "ecpm": 0.86,
      "date": "25/01/2021",
      "revenues": 1.44
    },
    {
      "ctr": 0.0,
      "app_name": "APP NAME2",
      "country_code": "KR",
      "zone_id": "1",
      "ad_server_fill_rate": 1.35,
      "ad_server_requests": 81700,
      "ad_server_filled_requests": 1100,
      "clicks": 0,
      "impressions": 915,
      "ecpm": 1.24,
      "date": "25/01/2021",
      "revenues": 1.13
    },
{
  "reports": [
    {
      "ctr": 0.24,
      "app_name": "APP NAME1",
      "zone_name": "default",
      "ad_server_fill_rate": 0.24,
      "ad_server_requests": 862700,
      "ad_server_filled_requests": 2050,
      "clicks": 4,
      "impressions": 1682,
      "ecpm": 0.86,
      "date": "25/01/2021",
      "revenues": 1.44
    },
    {
      "ctr": 0.0,
      "app_name": "APP NAME2",
      "zone_name": "default",
      "ad_server_fill_rate": 1.35,
      "ad_server_requests": 81700,
      "ad_server_filled_requests": 1100,
      "clicks": 0,
      "impressions": 915,
      "ecpm": 1.24,
      "date": "25/01/2021",
      "revenues": 1.13
    },
{
  "reports": [
    {
      "ctr": 0.24,
      "app_name": "APP NAME1",
      "store_app_id": "com.reporting.api",
      "ad_server_fill_rate": 0.24,
      "ad_server_requests": 862700,
      "ad_server_filled_requests": 2050,
      "clicks": 4,
      "impressions": 1682,
      "ecpm": 0.86,
      "date": "25/01/2021",
      "revenues": 1.44
    },
    {
      "ctr": 0.0,
      "app_name": "APP NAME2",
      "store_app_id": "com.test",
      "ad_server_fill_rate": 1.35,
      "ad_server_requests": 81700,
      "ad_server_filled_requests": 1100,
      "clicks": 0,
      "impressions": 915,
      "ecpm": 1.24,
      "date": "25/01/2021",
      "revenues": 1.13
    },

3. App Specific Reporting API

You can query for the data of specific App ID under your account.

3-1. Endpoint

You can request for data with or without country breakdown included.
(add by_country in endpoint if you want with country breakdown)

https://dashboard.pubnative.net/api/v1/apps/{APP_ID}/reports?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}
https://dashboard.pubnative.net/api/v1/apps/{APP_ID}/reports/by_country?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}

3-2. Request Parameters

ParameterRequired?DescriptionExample
app_idRequiredUnique ID of your app. Check partner dashboard.1023001
account_auth_tokenRequiredReporting API access token (unique per account).

Available in dashboard account menu (click Reporting API Key)
1001a00a1234ab1111abc12a1abc
12312311a10000a1a123412345678abc1234
start_dateRequiredStart date of the data (dd/mm/yyyy)25/01/2021
end_dateRequiredEnd date of the data (dd/mm/yyyy)31/01/2021

3-3. Example Response

{
  "reports": [
    {
      "ctr": 0.0,
      "ad_server_fill_rate": 0.62,
      "ecpm": 3.25,
      "ad_server_requests": 154050,
      "ad_server_filled_requests": 950,
      "clicks": 0,
      "impressions": 422,
      "date": "25/01/2021",
      "revenues": 1.37
    },
    {
      "ctr": 0.62,
      "ad_server_fill_rate": 0.22,
      "ecpm": 3.13,
      "ad_server_requests": 134750,
      "ad_server_filled_requests": 300,
      "clicks": 2,
      "impressions": 322,
      "date": "26/01/2021",
      "revenues": 1.01
    },
{
  "reports": [
    {
      "ctr": 0.0,
      "country_code": "US",
      "ad_server_fill_rate": 0.0,
      "ecpm": 0.0,
      "ad_server_requests": 50,
      "ad_server_filled_requests": 0,
      "clicks": 0,
      "impressions": 0,
      "date": "25/01/2021",
      "revenues": 0.0
    },
    {
      "ctr": 0.0,
      "country_code": "CA",
      "ad_server_fill_rate": 66.67,
      "ecpm": 0.51,
      "ad_server_requests": 150,
      "ad_server_filled_requests": 100,
      "clicks": 0,
      "impressions": 69,
      "date": "25/01/2021",
      "revenues": 0.03
    },