Reporting

Publisher API Reporting


Initial Setup

We offer an API that your system can call daily to retrieve revenue statistics.

In order to access the API, you must have already created and setup your offerwall in our portal.  Once you have done so, you will have the option to retrieve the API key for your account on this page.  Please ensure you are using your account API Key and not the individual offerwall API key.

Summary API

1. Endpoint

Here is the template link your server should call:

https://api.revenueuniverse.com/publisher/v1/summary?key=APIKEYHERE&action=summary&grouping=total&start_date=YYYY-MM-DD&end_date=YYYY-MM-DD&groupBy=day&include=deu

2. Parameters

Variable

Requirement

Description

key

Required

This should be the API Key available in your account

startDate

Required

This should be the start date of the period of time you are retrieving data for in the format of YYYY-MM-DD.

endDate

Required

This should be the end date of the period of time you are retrieving data for in the format of YYYY-MM-DD.

timeZone

Optional

This parameter sets the time zone for the summary period. You can pass an IANA timezone, or an offset (e.g., -02:00 or America/Los_Angeles). If not provided, the default timezone is America/Chicago.

groupBy

Optional

This parameter will group the summary by the provided values. Possible values are country, wall, platform, and day. For example, if set to groupBy=wall,day, the results would contain a separate summary for each wall and day. As you add groupBy values, the API may take longer to process your request. If you find it takes longer than expected, please try to reduce the amount of grouping, or reduce the date range and try again.

include

Optional

This parameter will include additional fields in the summary response. The possible values are deu, awardedCurrency.

filter[wall]

Optional

This parameter will filter the walls returned. This can be a single wall ID, or a comma separated list of wall IDs, e.g. filter[wall]=300,301

filter[country]

Optional

This parameter will filter the data by country. This can be a single country code, or a comma separated list of country codes, e.g. filter[country]=US,AU

filter[platform]

Optional

This parameter will filter the data by platform. This can be a single platform, or a comma separated list of platforms. The possible values are ios, android, and web, e.g. filter[platform]=ios,web

Results

Your call will return the following response.

{
  "publisherId": 123,
  "results": [
    {
      "impressions": 1000,
      "clicks": 200,
      "conversions": 50,
      "revenue": 75.50,
      "awardedCurrency": 100,
      "actualCurrencyRatio": 0.75,
      "platform": "IOS",
      "day": "2025-09-01",
      "country": "US",
      "wallId": 3,
      "wallName": "Offer Wall A",
      "bundleId": "com.example.app",
      "appName": "Example App",
      "deu": 10,
      "duc": 20,
      "epc": 0.15,
      "cvr": 0.25,
      "ecpm": 5.0,
      "arpdeu": 7.55,
      "arpduc": 3.78
    }
  ]
}
{
  "publisherId": 123,
  "results": [
    {
      "impressions": 1000,
      "clicks": 200,
      "conversions": 50,
      "revenue": 75.50,
      "awardedCurrency": 100,
      "actualCurrencyRatio": 0.75,
      "platform": "IOS",
      "day": "2025-09-01",
      "country": "US",
      "wallId": 3,
      "wallName": "Offer Wall A",
      "bundleId": "com.example.app",
      "appName": "Example App",
      "deu": 10,
      "duc": 20,
      "epc": 0.15,
      "cvr": 0.25,
      "ecpm": 5.0,
      "arpdeu": 7.55,
      "arpduc": 3.78
    }
  ]
}
{
  "publisherId": 123,
  "results": [
    {
      "impressions": 1000,
      "clicks": 200,
      "conversions": 50,
      "revenue": 75.50,
      "awardedCurrency": 100,
      "actualCurrencyRatio": 0.75,
      "platform": "IOS",
      "day": "2025-09-01",
      "country": "US",
      "wallId": 3,
      "wallName": "Offer Wall A",
      "bundleId": "com.example.app",
      "appName": "Example App",
      "deu": 10,
      "duc": 20,
      "epc": 0.15,
      "cvr": 0.25,
      "ecpm": 5.0,
      "arpdeu": 7.55,
      "arpduc": 3.78
    }
  ]
}

Variable

Description

publisherId

ID number of the publisher

impressions

Number of impressions for specified time period

clicks

Number of clicks for specified time period

conversions

Number of conversions for specified time period

revenue

Revenue for specified time period

awardedCurrency

Awarded currency for the specified time period. This will only exist when include=awardedCurrency is passed.

actualCurrencyRatio

Actual currency ratio for the specified time period. This will only exist when include=awardedCurrency is passed.

platform

Platform for the specified time period. This will only exist when groupBy includes platform

day

Day for the specified time period. This will only exist when groupBy includes day

country

Country for the specified time period. This will only exist when groupBy includes country

wallId

Wall ID for the specified time period. This will only exist when groupBy includes wall

wallName

Wall name for the specified time period. This will only exist when groupBy includes wall

bundleId

Bundle id for the specified time period. This will only exist when groupBy includes wall

appName

App name for the specified time period. This will only exist when groupBy includes wall

deu

Daily engaged users in specified time period. This will only exist when include=deu is passed.

duc

Daily unique converters in specified time period

cvr

Conversion ratio specified time period

ecpm

Average eCPM for specified time period

arpdeu

Average revenue per daily engaged user for specified time period. This will only exist when include=deu is passed.

arpduc

Average revenue per daily unique converter for specified time period

Limits

  • The API will return click data for the last 90 days.

  • When retrieving larger time periods of data and grouping by multiple parameters, you may see the API timeout. If this happens, try to retrieve a smaller set of data over multiple requests. We recommend a time period of 30 days when not using the groupBy parameter, but this will depend on the amount of traffic you receive.