Reporting API

1. API Overview

The Reporting API provides secure, scalable, and programmatic access to daily aggregated reporting metrics for both Demand and Supply across Brand+ (B+) marketplace.
Its key features are:

  • RESTful HTTP endpoints
  • Provide pre-defined reports (Demand and Supply by default)
  • Apply Custom queries with filters on dimensions
  • Data available for up to current + L4 months at daily granularity
  • Rate limits enforced at 100 requests/hour per account (Demand and Supply)
  • Export report in JSON and CSV format
  • Rolling 4-month retention

2. Account Wide Reporting

2.1 Demand

2.1.1 Demand Endpoint

curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=ad_format"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=app_bundle"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=country_code"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=interstitial"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=platform"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=rewarded"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date {END_DATE}&filters=app_bundle:1560965657"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date {END_DATE}&group_by=app_bundle,ad_format,country_code,interstitial,platform"
curl "https://api-reporting.verve.com/brand/demand?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&format=csv"

2.1.2 Request Parameter

ParameterRequired?DescriptionExample
account_auth_tokenRequiredReporting API access token (unique per account)

1001a00a1234ab1111ab12a1abc

12312311a10000a1a123412345678abc1234

start_dateRequiredStart date of the range (YYYY-MM-DD)2025-10-09
end_dateRequiredStart date of the range (YYYY-MM-DD)2025-10-10
formatOptionalData format in which the API returns the reportAllowed Values: json, csv
json by default

group_byOptionalYou can use a single dimension or a combination of multiple dimensions, separated by comma

date,
ad_format,
app_bundle,
app_site_domain,
country_code,
interstitial,
platform,
rewarded,
For descriptions of the above Dimension parameters, see table below

2.1.3 Available Dimension

DimensionTypeDescriptionExample
datedateReport data in YYYY-MM-DD2025-10-25
ad_ formatstringDemand ad typebanner, video, native
app_bundlestringDemand app bundle identifiercom.app.name
app_site_domainstringBundle app or site domainsite.com
country_codestring

Country code in ISO 3166-1 alpha-3 format

USA

interstitialintegerWhether the ad is interstitial0/1
platformstringPlacement platformiOS, Android, Web
rewardedbooleanWhether placement is rewardedtrue, false

2.1.4 Response Example

{
  "status": "success",
  "data": [
    {
      "date": "2025-10-20",
      "gross_revenue": 34917.81,
      "impressions": 109068916,
      "bids": 1219382746,
      "clicks": 290310,
      "dsp_requests": 41194680402,
      "wins": 766472694
    },
    {
      "date": "2025-10-19",
      "gross_revenue": 37153.63,
      "impressions": 123576875,
      "bids": 1527633303,
      "clicks": 305097,
      "dsp_requests": 48486533390,
      "wins": 897476730
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "ad_format": "video",
      "gross_revenue": 7398.540000000003,
      "impressions": 3053802,
      "bids": 154171659,
      "clicks": 159738,
      "dsp_requests": 7078824889,
      "wins": 102345821
    },
    {
      "ad_format": "banner",
      "gross_revenue": 59847.009999999944,
      "impressions": 217488293,
      "bids": 2427155781,
      "clicks": 280802,
      "dsp_requests": 59587126712,
      "wins": 1449152786
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "app_bundle": "1340929016",
      "gross_revenue": 0,
      "impressions": 0,
      "bids": 72,
      "clicks": 0,
      "dsp_requests": 15364,
      "wins": 69
    },
    {
      "app_bundle": "com.changdu.portugalreader",
      "gross_revenue": 0.01,
      "impressions": 10,
      "bids": 1276,
      "clicks": 0,
      "dsp_requests": 51676,
      "wins": 1083
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "country_code": "COL",
      "gross_revenue": 975.3900000000002,
      "impressions": 3076696,
      "bids": 33296219,
      "clicks": 29027,
      "dsp_requests": 1276294300,
      "wins": 24105888
    },
    {
      "country_code": "DOM",
      "gross_revenue": 19.689999999999984,
      "impressions": 89455,
      "bids": 958441,
      "clicks": 1431,
      "dsp_requests": 74110892,
      "wins": 802546
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "interstitial": 0,
      "gross_revenue": 52412.57999999995,
      "impressions": 224079801,
      "bids": 2238973787,
      "clicks": 282411,
      "dsp_requests": 73726818295,
      "wins": 1328186390
    },
    {
      "interstitial": 1,
      "gross_revenue": 19658.850000000002,
      "impressions": 8565990,
      "bids": 508042262,
      "clicks": 312996,
      "dsp_requests": 15954395497,
      "wins": 335763034
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "platform": "Android",
      "gross_revenue": 44654.30999999996,
      "impressions": 121095782,
      "bids": 1749677268,
      "clicks": 520798,
      "dsp_requests": 49712435545,
      "wins": 1210391322
    },
    {
      "platform": "iOS",
      "gross_revenue": 820.6799999999995,
      "impressions": 105544,
      "bids": 791971,
      "clicks": 0,
      "dsp_requests": 3338931041,
      "wins": 708217
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "rewarded": false,
      "gross_revenue": 69748.43999999987,
      "impressions": 231387939,
      "bids": 2687525812,
      "clicks": 551728,
      "dsp_requests": 87477390660,
      "wins": 1618917241
    },
    {
      "rewarded": true,
      "gross_revenue": 2323.0099999999998,
      "impressions": 1257852,
      "bids": 59490237,
      "clicks": 43679,
      "dsp_requests": 2203823132,
      "wins": 45032183
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "date": "2025-10-29",
      "gross_revenue": 0,
      "impressions": 1,
      "bids": 58,
      "clicks": 0,
      "dsp_requests": 46018,
      "wins": 39
    },
    {
      "date": "2025-10-28",
      "gross_revenue": 0,
      "impressions": 0,
      "bids": 65,
      "clicks": 0,
      "dsp_requests": 19783,
      "wins": 57
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "app_bundle": "com.vizorinteractive.zombiesettlersv2",
      "ad_format": "video",
      "country_code": "USA",
      "interstitial": 1,
      "platform": "Android",
      "app_site_domain": null,
      "rewarded": true,
      "gross_revenue": 0,
      "impressions": 0,
      "bids": 4,
      "clicks": 0,
      "dsp_requests": 3015,
      "wins": 4
    },
    {
      "app_bundle": "1525770311",
      "ad_format": "native",
      "country_code": "AUS",
      "interstitial": 0,
      "platform": "iOS",
      "app_site_domain": null,
      "rewarded": false,
      "gross_revenue": 0,
      "impressions": 0,
      "bids": 1,
      "clicks": 0,
      "dsp_requests": 2150,
      "wins": 0
    }
  ],
  "result_count": 2
}
country_code,gross_revenue,impressions,bids,clicks,dsp_requests,wins THA,600.99,1733711,23467904,3712,786840719,16756358 MLI,0.53,12588,70426,372,14913578,68997 GIB,0.00,2,6,0,375628,2 MSR,0,0,20,0,61940,19

2.2 Supply

2.2.1 Supply Endpoint

curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=b_publisher_id"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_Date}&group_by=app_bundle"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=ad_format"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=country_code"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=interstitial"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=os"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=platform
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=placement_id"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=rewarded"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&level=group"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&group_by=date,ad_format,country_code"
curl "https://api-reporting.verve.com/brand/supply?account_auth_token={ACCOUNT_AUTH_TOKEN}&start_date={START_DATE}&end_date={END_DATE}&format=csv"
curl "https://api-reporting.verve.com/brand/supply?start_date={START_DATE}&end_date={END_DATE}&account_auth_token={ACCOUNT_AUTH_TOKEN}&group_by=app_site_domain,rewarded&filters=os:iOS,placement_id:1&format=csv"

📘

Note:

Group-Level Reporting (Publisher Group Account): By default, reports return aggregated data for all accounts under the same Publisher Group level=group. The auth_token used determines which Publisher Group the data is pulled from. If you need to analyze performance per account, you can:

  • Split results using group_by=b_publisher_id to view metrics by individual publisher.
  • Filter results using filters=b_publisher_id:{PUBLISHER_ID} to retrieve data for a specific publisher.

Both options - grouped or per - publisher - are supported, depending on your reporting needs.

Both options - grouped or per - publisher - are supported, depending on your reporting needs.

2.2.2 Request Parameter

DimensionTypeDescriptionExample
datedateReport date in YYYY-MM-DD2025-10-21
b_publisher_idintegerPublisher ID123456789
ad_formatstring

Supply ad type

banner, video, native
app_bundlestringApp bundle identifiercom.app.name
app_site_ domainstringDomain of app or sitesite.com
country_codestring3-letter format (e.g., USA), (it's ISO 3166-1)USA
interstitialint64Whether ad is interstitial0/1
platformstringPlatform (ios, android, web)in-app, mobile web, CTV
osstringOperating systemAndroid, iOS
placement_idstringInventory or placement ID123456789
rewardedbooleanWhether the ad is rewardedTrue, false

2.2.3 Available Dimension

DimensionTypeDescriptionExample
datedateReport data in YYYY-MM-DD2025-10-25
ad_ formatstringDemand ad typebanner, video, native
app_bundlestringDemand app bundle identifiercom.app.name
app_site_domainstringBundle app or site domainsite.com
country_codestring

Country code in ISO 3166-1 alpha-3 format

USA

interstitialintegerWhether the ad is interstitial0/1
platformstringPlacement platformiOS, Android, Web
rewardedbooleanWhether placement is rewardedtrue, false

2.2.4 Response Example

{
  "status": "success",
  "data": [
    {
      "date": "2025-10-20",
      "impressions": 15794995,
      "payout": 5887.942341819769,
      "clicks": 71218,
      "filled_requests": 85688200,
      "requests": 514558600,
      "supply_wins": 17775725
    },
    {
      "date": "2025-10-19",
      "impressions": 16433745,
      "payout": 4860.173476566033,
      "clicks": 61770,
      "filled_requests": 104821600,
      "requests": 561662400,
      "supply_wins": 19004547
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "b_publisher_id": 1100000000,
      "impressions": 1297756,
      "payout": 1383.6833560557122,
      "clicks": 54793
    }
  ],
  "result_count": 1
}
{
  "status": "success",
  "data": [
    {
      "app_bundle": "com.peoplefun.blockscapes",
      "impressions": 187113,
      "payout": 17.334279740911995,
      "clicks": 29
    },
    {
      "app_bundle": "6459582322",
      "impressions": 784,
      "payout": 0.079213342,
      "clicks": 0
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "ad_format": "video",
      "impressions": 461968,
      "payout": 2500.828379437391,
      "clicks": 93641
    },
    {
      "ad_format": "native",
      "impressions": 0,
      "payout": 0,
      "clicks": 0
    }
  ],
  "result_count": 2
}

  "status": "success",
  "data": [
    {
      "country_code": "TZA",
      "impressions": 49,
      "payout": 0.022388687000000004,
      "clicks": 1
    },
    {
      "country_code": "BIH",
      "impressions": 15,
      "payout": 0.00215708,
      "clicks": 0
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "interstitial": 0,
      "impressions": 30998038,
      "payout": 3883.881341515259,
      "clicks": 8674
    },
    {
      "interstitial": 1,
      "impressions": 1230702,
      "payout": 6864.234476870555,
      "clicks": 124314
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "os": "Android",
      "impressions": 5285542,
      "payout": 6175.952165653822,
      "clicks": 81355
    },
    {
      "os": "iOS",
      "impressions": 26943198,
      "payout": 4572.163652731982,
      "clicks": 51633
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "platform": "Android",
      "impressions": 5286326,
      "payout": 6176.031378995818,
      "clicks": 81355
    },
    {
      "platform": "iOS",
      "impressions": 26942414,
      "payout": 4572.084439389987,
      "clicks": 51633
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "placement_id": 100090103,
      "impressions": 8,
      "payout": 0.017404099,
      "clicks": 5
    },
    {
      "placement_id": 100280902,
      "impressions": 187106,
      "payout": 17.326856343531006,
      "clicks": 28
    }
  ],
  "result_count": 2
}

  "status": "success",
  "data": [
    {
      "rewarded": true,
      "impressions": 24497,
      "payout": 151.5486560585091,
      "clicks": 4882
    },
    {
      "rewarded": false,
      "impressions": 32204243,
      "payout": 10596.56716232729,
      "clicks": 128106
    }
  ],
  "result_count": 2
}
"status": "success",
  "data": [
    {
      "date": "2025-10-20",
      "impressions": 48291556,
      "payout": 9251.581178819762,
      "clicks": 75359,
      "filled_requests": 301326400,
      "requests": 1182780528,
      "supply_wins": 17775725
    },
    {
      "date": "2025-10-19",
      "impressions": 64656223,
      "payout": 10389.56768323902,
      "clicks": 66645,
      "filled_requests": 432764600,
      "requests": 1432834463,
      "supply_wins": 19004547
    }
  ],
  "result_count": 2
}
{
  "status": "success",
  "data": [
    {
      "date": "2025-10-20",
      "impressions": 15794995,
      "payout": 5887.942341819774,
      "clicks": 71218,
      "filled_requests": 85688200,
      "requests": 514558600,
      "supply_wins": 17775725
    },
    {
      "date": "2025-10-19",
      "impressions": 16433745,
      "payout": 4860.173476566032,
      "clicks": 61770,
      "filled_requests": 104821600,
      "requests": 561662400,
      "supply_wins": 19004547
    }
  ],
  "result_count": 2
}
country_code,impressions,payout,clicks
LVA,101,0.02,0
CRI,327,0.13,20
DJI,7,0.00,0
JOR,75,0.01,2
SMR,0,0,0
app_site_domain,rewarded,impressions,payout,clicks
,true,3,0.01,0
,false,0,0,0
,true,0,0,0