Skip to content
PubAdHub

Revenue Share Report

Publisher API

The Revenue Share Report API is an HTTP POST endpoint on statsapi.pubadhub.com. Partners pass report filters as form data or JSON and authenticate using an AccessKey header. PubAdHub returns a JSON object with report data in the data array, shaped by report_type (daywise, clickid_level, or source_level). clickid_level responses include publisher-defined tracking values (subid1–subid5) passed through the Brand List redirect URL. Use offer_id on clickid_level rows to match Brand List records. The selected date range must not exceed 30 days.

Base URL https://statsapi.pubadhub.com
POST /api/reporting/revenue-share
lock

Authentication

Authenticate each request by including an AccessKey in the HTTP request headers. Replace {AccessKey} with a valid access key provided by your Account Manager.

AccessKey: {AccessKey}

Headers

AccessKey REQUIRED

{AccessKey}

Replace {AccessKey} with a valid access key provided by your Account Manager.

Request Body

Body parameters (form-data or JSON). Required: start_date, end_date, report_type. Date format: YYYY-MM-DD. Maximum date range: 30 days for all report types.

start_date
string REQUIRED

Location: form

Start date for the report (format: YYYY-MM-DD). The selected date range between start_date and end_date must not exceed 30 days.

Example: YYYY-MM-DD

end_date
string REQUIRED

Location: form

End date for the report (format: YYYY-MM-DD). The API supports a maximum date range of 30 days per request.

Example: YYYY-MM-DD

report_type
string REQUIRED

Location: form

Defines the level of data aggregation returned in the report. daywise — revenue aggregated daily; clickid_level — revenue grouped by publisher click IDs; source_level — revenue grouped by traffic source or publisher source.

Allowed: daywise, clickid_level, source_level

Example: clickid_level

API format

API Format
https://statsapi.pubadhub.com/api/reporting/revenue-share

Response

Click-level revenue records. HTTP status code: NEEDS_REVIEW (not specified in the PDF).

JSON
{
    "data": [
        {
            "transaction_id": "2827037_62AE01KDWEFW1214S22",
            "click_id": "109964836039817855",
            "publisher_revenue": "16",
            "gross_revenue": "20",
            "user_id": null,
            "date": "2026-01-01",
            "brand_name": "book.com",
            "source_id": "1111111",
            "sub_id": "1111111",
            "subid1": "111",
            "subid2": "222",
            "subid3": "333",
            "subid4": "444",
            "subid5": "ABCD",
            "offer_id": "c4ca4238a0b923820dcc509a6f75849b",
            "atag": "merchantcart01-20",
            "rev_type": "CPA",
            "conversion_count": 1
        },
        {
            "transaction_id": "283400_66875633 F6JF6JF ",
            "click_id": "6114970998613105871",
            "publisher_revenue": "13",
            "gross_revenue": "17",
            "user_id": null,
            "date": "2026-01-01",
            "brand_name": "country.com",
            "source_id": "222000",
            "sub_id": "222000",
            "subid1": "1112",
            "subid2": "2222",
            "subid3": "3332",
            "subid4": "4442",
            "subid5": "ABCD2",
            "offer_id": "c81e728d9d4c2f636f067f89cc14862c",
            "rev_type": "CPC",
            "conversion_count": 0
        }
    ]
}

Daily aggregated revenue. HTTP status code: NEEDS_REVIEW (not specified in the PDF).

JSON
{
    "data": [
        {
            "publisher_revenue": "16",
            "gross_revenue": "20",
            "date": "2026-01-01",
            "click_count": 147
        }
    ]
}

Revenue grouped by traffic source. HTTP status code: NEEDS_REVIEW (not specified in the PDF).

JSON
{
    "data": [
        {
            "publisher_revenue": "63",
            "gross_revenue": "79",
            "source_id": "1111111",
            "click_count": 15
        },
        {
            "publisher_revenue": "14",
            "gross_revenue": "17",
            "source_id": "1122222",
            "click_count": 86
        }
    ]
}

Response fields

transaction_id String

Unique transaction or conversion identifier. Returned for clickid_level only.

Example: 2827037_62AE01KDWEFW1214S22

click_id String

Unique clickid provided by publisher. Returned for clickid_level only.

Example: 109964836039817855

publisher_revenue Decimal

Revenue earned by the publisher per click or per day (USD).

Example: 16

gross_revenue Decimal

Total revenue generated per click, per day, or per source (USD). Omitted for CPC publishers.

Example: 20

user_id String

User identification value for RTB publishers. Returned only when provided by an RTB publisher.

Example: null

date Date

Revenue date (format: YYYY-MM-DD).

Example: 2026-01-01

brand_name String

Brand / king domain. Returned for clickid_level only.

Example: book.com

source_id String

Identifier of the traffic source or publisher source.

Example: 1111111

sub_id String

Same value as source_id provided by publisher. Returned for clickid_level only.

Example: 1111111

offer_id String

Hashed brand identifier. Returned for clickid_level only. Same offer_id as Brand List; use it to match Brand List records with Revenue Share.

atag String

Amazon tag when available. Returned for clickid_level only.

Example: merchantcart01-20

rev_type String

CPC or CPA. Returned for clickid_level only.

Example: CPA

conversion_count Number

0 for CPC, 1 for CPA. Returned for clickid_level only.

Example: 1

sales_amount Decimal

Returned when sales data is enabled for the publisher.

campaign_id String

Returned for clickid_level for certain publishers.

click_count Decimal

Number of clicks recorded.

Example: 147

subid1 String

Publisher-defined tracking value passed through the redirect URL. Example: 111. The value is returned in the Revenue API. Shown in the clickid_level sample.

Example: 111

subid2 String

Publisher-defined tracking value passed through the redirect URL. Example: 222. The value is returned in the Revenue API. Shown in the clickid_level sample.

Example: 222

subid3 String

Publisher-defined tracking value passed through the redirect URL. Example: 333. The value is returned in the Revenue API. Shown in the clickid_level sample.

Example: 333

subid4 String

Publisher-defined tracking value passed through the redirect URL. Example: 444. The value is returned in the Revenue API. Shown in the clickid_level sample.

Example: 444

subid5 String

Publisher-defined tracking value passed through the redirect URL. Example: ABCD. The value is returned in the Revenue API. Shown in the clickid_level sample.

Example: ABCD

Notes

info
Call POST https://statsapi.pubadhub.com/api/reporting/revenue-share with form-data or JSON body parameters and AccessKey header.
info
Required body parameters: start_date, end_date, report_type. Dates use YYYY-MM-DD. The date range must not exceed 30 days; longer ranges will not be processed. Older historical data can still be requested within that 30-day window.
info
Supported report_type values: daywise, clickid_level, source_level.
info
daywise returns publisher_revenue, gross_revenue, date, click_count. source_level returns publisher_revenue, gross_revenue, source_id, click_count. clickid_level returns transaction/click-level fields including brand_name, offer_id, rev_type, conversion_count, subid1–subid5, and related identifiers.
info
subid1–subid5 are publisher-defined tracking values passed through the Brand List redirect URL. They appear in the clickid_level sample (for example 111, 222, 333, 444, ABCD).
info
Use offer_id on clickid_level rows to match Brand List records. Brand List and Revenue Share return the same offer_id, and that identifier remains consistent across both APIs.
info
gross_revenue is not returned for CPC publishers. sales_amount is included only when sales data visibility is enabled for the publisher and sales data is available.
info
clickid_level revenue is available on a T-1 basis (approximately 24 hours after the click). A click in the report may still be subject to later cancellation or revenue adjustments.
info
Partial cancellation updates the existing revenue amount for that click. Full cancellation removes the click from the clickid_level response. No separate negative revenue row is generated.
info
Recommended import strategy for clickid_level: do not append. Overwrite/replace the existing click-level dataset for the requested period with the latest API response so updated amounts and cancellations stay in sync.

Original PDF

This page is sourced from the official API PDF. The original file remains available.

Revenue Share Report.pdf

Related documentation

play_circle

Try it out

Fill the fields below, copy the generated cURL, or send a live request.

POST https://statsapi.pubadhub.com/api/reporting/revenue-share
cURL

        
Response Status: