Skip to content
PubAdHub

Brand List by Traffic Type

Publisher API

GET /api/brands-list-by-traffic-type returns the same merchant/brand record as Brand List, limited to brands that allow the requested traffic_type. Authentication is the AccessKey header. traffic_type is required and is matched to the traffic type name, case-insensitive, with leading and trailing spaces ignored. traffic_type=All returns the same brand set as GET /api/brands-list. A specific type returns brands mapped to that type plus brands mapped to All. A brand with no include-traffic-type mapping is omitted when a specific type is requested. Publisher access rules from Brand List still apply.

Base URL https://statsapi.pubadhub.com
GET /api/brands-list-by-traffic-type
warning

Cashback traffic

If restricated_traffic contains "Incentivized Traffic", exclude the brand from cashback traffic. If it is not listed, the brand may be used for cashback traffic, subject to other restrictions in restricated_traffic and to the traffic_type filter on this request.
lock

Authentication

The request must include the AccessKey HTTP request header with your assigned key value. There is no request body.

AccessKey: {AccessKey}

Headers

AccessKey REQUIRED

{AccessKey}

Your assigned AccessKey. Required on every request.

Query Parameters

One required query parameter. traffic_type is matched to the traffic type name, case-insensitive, with leading and trailing spaces ignored. cashback, Cashback, and CASHBACK are the same value.

traffic_type
string REQUIRED

Location: query

Allowed values: All, BNPL, Cashback, Content, Coupon, Deal sites, DSP, Email, Incentive, Influencers, Media buying, Search, Shopping, Title. All returns the same brand set as GET /api/brands-list. A specific type returns brands mapped to that type, plus brands mapped to All. A brand with no include-traffic-type mapping is omitted for a specific type.

Example: Cashback

API format

API Format
https://statsapi.pubadhub.com/api/brands-list-by-traffic-type?traffic_type={TrafficType}

Request example

GET /api/brands-list-by-traffic-type?traffic_type=Cashback HTTP/1.1
Host: statsapi.pubadhub.com
AccessKey: {AccessKey}

Response

Brand records allowed for the requested traffic type. Either click URL may be absent for a brand. HTTP status is not stated for the success sample; an empty match is documented as HTTP 200.

JSON
{
    "success": true,
    "data": [
        {
            "merchant_id": 102,
            "offer_id": "ec8956637a99787bd197eacd77acce5e",
            "campaign_id": 502,
            "domain": "xyz.com",
            "brand_name": "XYZ",
            "merchant_category": "Electronics",
            "verification_status": "verified",
            "click_url_homepage": "https://offers.choicedeals.com/track?encyp={encrypted}&clickid={PublisherClickID}&subi={SubId}&psorc={PUBLISHERSOURCE}&pcat={SOURCECATEGORY}&subid1={SubId1}&subid2={SubId2}&subid3={SubId3}&subid4={SubId4}&subid5={SubId5}&cc=US",
            "click_url_deeplink": "https://offers.choicedeals.com/track?encyp={encrypted}&clickid={PublisherClickID}&dl={DeepLink}&subi={SubId}&psorc={PUBLISHERSOURCE}&pcat={SOURCECATEGORY}&subid1={SubId1}&subid2={SubId2}&subid3={SubId3}&subid4={SubId4}&subid5={SubId5}&cc=US",
            "country_code": "US",
            "restricated_traffic": [],
            "new_deal": 0,
            "last_updated_date": "2026-02-11",
            "commission_rate": "10% CPA",
            "rate_type": "CPA",
            "rate_basis": "Percentage",
            "max_rate": "10"
        }
    ]
}

HTTP 200. AccessKey is valid and no brands match. success is false and message is No active brands found.

JSON
{
    "success": false,
    "message": "No active brands found."
}

HTTP 400. traffic_type is missing or blank.

JSON
{
    "success": false,
    "message": "The traffic_type parameter is required."
}

HTTP 400. traffic_type is not an allowed name.

JSON
{
    "success": false,
    "message": "Invalid traffic_type."
}

HTTP 401. AccessKey is missing or unknown.

JSON
{
    "error": "Unauthorized"
}

Response fields

success boolean

true when brand records are returned. false with message No active brands found when the key is valid and the filter returns no brands.

Example: true

message string

Present on empty and error bodies. Empty match: No active brands found.

Example: No active brands found.

data array

Brand/merchant records for the requested traffic type. Same record shape as Brand List, plus rate_type, rate_basis, and max_rate.

merchant_id Integer

Merchant identifier associated with the brand. Not permanent; may change when campaign or merchant configuration is updated.

Example: 102

offer_id MD5 hash (32-character string)

Same offer_id as Revenue Share and Brand List. Use it to match records across those APIs.

Example: ec8956637a99787bd197eacd77acce5e

campaign_id Integer

Campaign identifier for the brand's current tracking campaign. Not permanent; may change when the campaign is updated.

Example: 502

domain string

Official primary website domain. Stable brand identifier. The same domain can appear more than once when the brand is offered in more than one country.

Example: xyz.com

brand_name string

The PubAdHub brand name for the merchant.

Example: XYZ

merchant_category string

The brand/merchant category. May be null if no category is assigned.

Example: Electronics

verification_status string

Brand status. Returned as verified for active brands and unverified for inactive brands. Responses currently include active brands only, so this value is verified.

Example: verified

click_url_homepage URL

Affiliate tracking URL to the brand homepage. May be absent for a brand.

click_url_deeplink URL (optional)

Affiliate tracking URL to a specific page (product, category, offer). May be absent for a brand.

country_code string

One ISO country code per record, such as US or CA. A brand offered in more than one country is returned as separate records.

Example: US

restricated_traffic array of strings

Traffic sources or promotional methods that are not allowed. Empty array when none apply. Possible values: Coupons, Promo Codes, Incentivized Traffic, Paid Search, Email Spam, Gift Cards, Injected Traffic, Fraudulent Traffic, Coupon Extension, Extension Traffic, Voucher Code, TM Bidding. Field name spelling is from the PDF.

Example: []

new_deal 0 or 1

1 = newly added deal, 0 = existing deal.

last_updated_date Null or YYYY-MM-DD

Most recent update date. Can be null if not updated.

Example: 2026-02-11

commission_rate Commission in Percentage or Currency

Commission rate or descriptive text such as "10% CPA". Null when a flat_fee applies.

Example: 10% CPA

flat_fee Currency amount (optional)

Fixed commission for a qualifying transaction. Returned only for publishers enabled for cashback and flat-fee offers, and only when the brand uses a flat-fee model. When present, commission_rate is null.

rate_type String (optional)

Type of rate, such as CPA, CPC, or CPL. May be null if not set.

Example: CPA

rate_basis String (optional)

Whether the rate is a flat dollar amount or percentage based. May be null if not set.

Example: Percentage

max_rate String (optional)

Maximum rate for the brand. Interpret using rate_basis (dollar amount vs percentage). May be null if not set.

Example: 10

Tracking URLs

Use click_url_homepage for homepage traffic. Use click_url_deeplink to send users to a specific page. Either URL may be absent for a brand. Replace placeholders before sending traffic. These values are not request parameters.

click_url_homepage

click_url_homepage
https://offers.choicedeals.com/track?encyp={encrypted}&clickid={PublisherClickID}&subi={SubId}&psorc={PUBLISHERSOURCE}&pcat={SOURCECATEGORY}&subid1={SubId1}&subid2={SubId2}&subid3={SubId3}&subid4={SubId4}&subid5={SubId5}&cc=US

click_url_deeplink

click_url_deeplink
https://offers.choicedeals.com/track?encyp={encrypted}&clickid={PublisherClickID}&dl={DeepLink}&subi={SubId}&psorc={PUBLISHERSOURCE}&pcat={SOURCECATEGORY}&subid1={SubId1}&subid2={SubId2}&subid3={SubId3}&subid4={SubId4}&subid5={SubId5}&cc=US

Redirect URL parameters

Redirect URL parameters. clickid is required. dl is used with the deeplink URL. subi, psorc, pcat, and subid1–subid5 are optional. clickid, subi, and subid1–subid5 are returned in the Revenue API.

clickid
string REQUIRED

The publisher can pass their unique click ID in this parameter. This click ID is used to identify the click and will be returned in the Revenue API.

Example: &clickid={PublisherClickID}

dl
URL Optional / For Deeplink URL

Used with the Deeplink URL when the publisher wants to redirect the user to a specific page of the advertiser, such as a product, category, or offer page.

Example: &dl={DeepLink}

subi
string OPTIONAL

The publisher can pass their Sub ID in this parameter. The value will be available in the Revenue API for tracking and reporting purposes.

Example: &subi={SubId}

psorc
string OPTIONAL

Allows the publisher to pass their traffic/source information, if applicable.

Example: &psorc={PUBLISHERSOURCE}

subid1
string OPTIONAL

An optional publisher-defined alphanumeric tracking value. The value will be returned in the Revenue API.

Example: &subid1={SUBID1}

subid2
string OPTIONAL

An optional publisher-defined alphanumeric tracking value. The value will be returned in the Revenue API.

Example: &subid2={SUBID2}

subid3
string OPTIONAL

An optional publisher-defined alphanumeric tracking value. The value will be returned in the Revenue API.

Example: &subid3={SUBID3}

subid4
string OPTIONAL

An optional publisher-defined alphanumeric tracking value. The value will be returned in the Revenue API.

Example: &subid4={SUBID4}

subid5
string OPTIONAL

An optional publisher-defined alphanumeric tracking value. The value will be returned in the Revenue API.

Example: &subid5={SUBID5}

pcat
string OPTIONAL

An optional publisher-defined source category tracking parameter. The value is used to capture the publisher's source category.

Example: &pcat={SOURCECATEGORY}

Errors

Unauthorized

AccessKey missing or unknown.

JSON
{
    "error": "Unauthorized"
}

traffic_type required

The traffic_type parameter is required.

JSON
{
    "success": false,
    "message": "The traffic_type parameter is required."
}

Invalid traffic_type

Invalid traffic_type.

JSON
{
    "success": false,
    "message": "Invalid traffic_type."
}

No active brands

No active brands found.

JSON
{
    "success": false,
    "message": "No active brands found."
}

Notes

info
Call GET https://statsapi.pubadhub.com/api/brands-list-by-traffic-type with the AccessKey header and the traffic_type query parameter. There is no request body.
info
Allowed traffic_type values: All, BNPL, Cashback, Content, Coupon, Deal sites, DSP, Email, Incentive, Influencers, Media buying, Search, Shopping, Title. Matching is case-insensitive and ignores leading and trailing spaces.
info
traffic_type=All returns the same set as /api/brands-list. A specific type returns brands included for that type, plus brands included for All. A brand with no include-traffic-type mapping is omitted for a specific type.
info
Publisher access rules from Brand List still apply: platform and brand allow/block lists, killed brands and platforms, cashback and CPC publisher rules, and the publisher’s own excluded traffic types.
info
HTTP 401 means the AccessKey is missing or unknown. HTTP 400 means traffic_type is missing, blank, or not an allowed name. HTTP 200 with success false and message No active brands found means the key is valid and the filter returned no brands. Handle HTTP 400 and HTTP 401 separately from an empty brand list.
info
Use click_url_homepage for homepage traffic and click_url_deeplink for deeplink traffic when present. Either URL may be absent. Replace {PublisherClickID} (required). Optional: {SubId}, {PUBLISHERSOURCE}, {SOURCECATEGORY}, {SubId1}–{SubId5}. Use {DeepLink} only on the deeplink URL.
info
The redirect domain in tracking URLs may change when a campaign is updated. URLs that use a previous redirect domain continue to work.
info
domain is the stable brand identifier and can appear more than once when the brand is offered in more than one country. country_code is one ISO code per record. merchant_id and campaign_id can change. Use offer_id to match this response with Brand List and Revenue Share.
info
If restricated_traffic contains "Incentivized Traffic", exclude the brand from cashback traffic. When flat_fee is present, commission_rate is null. Also map optional rate_type, rate_basis, and max_rate. Interpret max_rate using rate_basis.
info
Set appropriate timeout values, enable redirect handling, use a stable HTTP version, and implement proper error and timeout handling.
info
Integration checklist: configure GET /api/brands-list-by-traffic-type on https://statsapi.pubadhub.com; send AccessKey; send traffic_type including All; handle allowed names; handle HTTP 400 and HTTP 401 separately from an empty list; map offer_id, brand_name, merchant_category, and verification_status; use homepage and deeplink URLs; handle commission_rate, flat_fee, rate_type, rate_basis, and max_rate; review restricated_traffic and country_code; test one specific traffic type and All.

Original PDF

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

PubAdHub Brand List By Traffic Type API.pdf

Related documentation

play_circle

Try it out

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

GET https://statsapi.pubadhub.com/api/brands-list-by-traffic-type
cURL

        
Response Status: