Skip to main content

Ad Generation (SSP) - DSP RTB Specification

General​

Protocol​

  • Ad Generation sends OpenRTB 2.x bid requests to DSPs as JSON over HTTP POST. It is based on OpenRTB 2.5 and also supports OpenRTB 2.6 fields such as user.eids.
  • Native ad requests are sent as OpenRTB Native Ads 1.2 or 1.0.0.2.

Request paths​

Inventory comes through Ad Generation tags and SDKs, and also through the header bidding paths Prebid, Google Open Bidding (formerly EBDA) and Amazon TAM. The header bidding path is indicated by source.ext.stype or source.ext.schain.

Integration steps​

Before connecting, the DSP and Ad Generation agree on the following items. Once the DSP is ready, we check bid requests and responses in our staging environment. If ads are displayed without problems, we move to production. In production we start with 1% of traffic and increase it while confirming that the number of impressions and the spend measured by both sides match.

DSP endpoint​

The DSP prepares a URL that receives bid requests. Our servers are located in Tokyo, so we recommend that the DSP's data center is also in Japan to reduce latency.

The timeout is given in milliseconds by tmax in the bid request. It is around 150 ms for most inventory, and longer for inventory through Google Open Bidding.

Ad formats​

We support banner, native and video for both web and app. We send bid requests only for the formats the DSP can bid on.

Trading unit and currency​

Bid prices and winning prices are CPM. JPY and USD are supported. The DSP and Ad Generation agree on which one to use beforehand. The default is JPY.

Auction​

We run first price auctions (at is 1). For DSPs that do not support first price auctions, we send at as 2 and lower the bid price to a price estimated from past market prices (bid shading).

Winning price notification​

The DSP receives the winning price through a macro in adm. ${AUCTION_PRICE} is replaced with the encrypted winning price. DSPs that connected earlier may use ${SSP_WINNING_PRICE} instead. Notification through nurl is not supported.

The encryption scheme is agreed beforehand. Commonly used schemes are:

  • No encryption
  • Google's encryption scheme
  • AES/CBC/PKCS5Padding + UTF-8 + URL Safe Base64
  • Blowfish + UTF-8 + URL Safe Base64
  • TripleDES + UTF-8 + URL Safe Base64
  • DESede/CFB8/NoPadding + UTF-8 + URL Safe Base64

Macros​

The following macros can be used in adm of the bid response.

MacroReplaced with
${AUCTION_PRICE} (formerly ${SSP_WINNING_PRICE})The encrypted winning price, or AUDIT during creative scans
${AUCTION_CURRENCY}The agreed currency (JPY or USD)
${SSP_REDIRECT_ENCURL}The URL-encoded URL of Ad Generation's click redirector
${SSP_REDIRECT_URL}The URL of Ad Generation's click redirector
${SSP_AUDIT}AUDIT during creative scans, otherwise an arbitrary string other than AUDIT

Click tracking​

To track clicks on our side, banner ads must route clicks through Ad Generation's click redirector. For native and video, we insert it on our side, so this is not needed.

  • ${SSP_REDIRECT_ENCURL}: the click goes DSP → Ad Generation → LP
    • Example: <a href="https://dsp1.example/click?rd=${SSP_REDIRECT_ENCURL}">
  • ${SSP_REDIRECT_URL}: the click goes Ad Generation → DSP → LP
    • Example: <a href="${SSP_REDIRECT_URL}https%3A%2F%2Fdsp1.example%2Fclick">

Creative scan​

We periodically scan bid creatives to detect malware and other harmful problems. During a scan, the price macro is replaced with AUDIT; in that case, do not count it as an impression and do not charge the advertiser.

Some header bidding paths we connect to also scan creatives for the same purpose (the first time and every 2,000 impressions). These scans cannot be told apart by the price macro, so use ${SSP_AUDIT} instead. We do not count these scans as impressions and do not charge DSPs for them, so you do not need this macro if you can ignore them.

ads.txt​

In ads.txt, our domain is ad-generation.jp and the publisher's account ID is publisher.id in the bid request.

ad-generation.jp, 8258, DIRECT

ID sync (cookie sync)​

To buy web inventory, user IDs in cookies need to be mapped. This is not needed if you buy only app inventory. The mapping can be stored either by Ad Generation or by the DSP.

Ad Generation stores the mapping​

  1. A browser is made to access the DSP's ID sync URL.
    • <img src="https://dsp1.example/sync?ssp=1">
  2. The DSP redirects the browser to Ad Generation's ID sync URL with the DSP's user ID.
    • 302 redirect to https://ssp1.example/sync?uid=dspuid123
  3. The browser accesses Ad Generation's ID sync URL. Ad Generation stores the mapping and returns a 1x1 image.

The DSP's user ID is set in user.buyeruid of the bid request.

The DSP stores the mapping​

  1. A browser is made to access Ad Generation's ID sync URL.
    • <img src="https://ssp1.example/sync?dsp=1">
  2. Ad Generation redirects the browser to the DSP's ID sync URL with Ad Generation's user ID.
    • 302 redirect to https://dsp1.example/sync?uid=sspuid123
  3. The browser accesses the DSP's ID sync URL. The DSP stores the mapping and returns a 1x1 image.

Ad Generation's user ID is set in user.id of the bid request.

Categories​

Blocked categories (bcat) and ad slot categories (site.cat / app.cat) are converted from Ad Generation's own category codes with any mapping the DSP specifies, such as IAB category codes, the DSP's own category codes, or Ad Generation's codes as they are. The mapping can be changed at any time.

Bid blocking by advertiser domain​

Bids are filtered by advertiser domain according to the publisher's settings.

  1. The DSP sets the advertiser's domain in adomain of the bid response.
  2. Ad Generation compares adomain with the blocked domains of the ad slot and filters the bid.
  • The domain is the advertiser's corporate site, not the landing page.
  • The DSP cannot directly tell whether a bid was filtered by advertiser domain.

Non-standard fields are marked. ADG extension is specific to Ad Generation, IAB extension is defined by IAB Tech Lab community extensions and the like, and Third-party extension is defined by other companies.

Bid Request​

The OpenRTB 2.x bid request that Ad Generation sends to DSPs.

BidRequest​

Location: (root) / OpenRTB 2.6 BidRequest object

The OpenRTB 2.x bid request Ad Generation sends to DSPs. Either site or app is set.

FieldTypeRequiredDescription
idstring✓Unique ID of the bid request.
Example: "7749a0cb204eea02d50e7c98d790ae25c6f74318"
imparray of Imp✓Array of Imp objects. There may be more than one.
siteSiteSite information for web inventory.
appAppApp information for app inventory.
deviceDevice✓Device information.
userUser✓User information.
atinteger✓Auction type. We run first price auctions (1).
For DSPs that do not support first price auctions we send 2 and lower the bid price to a price estimated from past market prices (bid shading).
Values:
1: first price
2: second price
Example: 2
tmaxintegerTimeout in milliseconds. It varies by inventory; around 150 ms for most, and longer for inventory through Google Open Bidding.
Example: 120
wseatarray of stringWhitelist of buyer seats allowed to bid on this impression.
This field is used only for specific DSPs.
curarray of stringCurrency code (ISO-4217). JPY or USD, as agreed beforehand.
Example: ["JPY"]
wlangarray of stringAllowlist of languages for creatives (ISO-639-1-alpha-2).
If absent there is no restriction, but please also consider device.language if present.
Example: ["ja"]
bcatarray of stringBlocked categories. Category codes converted with the mapping the DSP specifies. See categories.
Example: ["ADG_11001", "ADG_14002"]
sourceSourceSource of the request (header bidding path and supply chain).
regsRegsRegulatory information.

Imp​

Location: imp[] / OpenRTB 2.6 Imp object

FieldTypeRequiredDescription
idstring✓A unique identifier for this impression within the context of the bid request
Example: "4974d82c61b283497cc4e220e8f748854018a086"
tagidstring✓Identifier for specific ad placement or ad tag that was used to initiate the auction.
There are multiple ad placement in the same media. This id is unique across media.
Example: "12345"
metricarray of MetricMetrics of the impression (past winning prices, etc.).
bannerBannerBanner information for banner inventory.
videoVideoVideo information for video inventory.
nativeNativeNative information for native inventory.
displaymanagerstringName of ad mediation partner, SDK technology, or player responsible for rendering ad.
Values:
adg_ios_sdk: AdGeneration iOS SDK
adg_android_sdk: AdGeneration Android SDK
adg_web_sdk: AdGeneration Web SDK
adg_rewarded_video_ios_sdk: AdGeneration iOS Rewarded Video SDK
adg_rewarded_video_android_sdk: AdGeneration Android Rewarded Video SDK
prebidjs_web_sdk: AdGeneration Prebid.js SDK
tam_web_sdk: Amazon TAM Web SDK
tam_ios_sdk: Amazon TAM iOS SDK
tam_android_sdk: Amazon TAM Android SDK
ebda_web_sdk: Google Open Bidding (formerly EBDA) Web SDK
ebda_ios_sdk: Google Open Bidding (formerly EBDA) iOS SDK
ebda_android_sdk: Google Open Bidding (formerly EBDA) Android SDK
Example: "adg_ios_sdk"
displaymanagerverstringVersion of ad mediation partner, SDK technology, or player responsible for rendering ad.
instlinteger✓A flag to indicate whether the ad slot is interstitial or not.
Values:
0: not interstitial
1: interstitial or full screen
Example: 0
bidfloornumberMinimum bid for this impression expressed in CPM.
Example: 0
bidfloorcurstringCurrency specified using ISO-4217 alpha codes. This may be
different from bid currency returned by bidder if this is
allowed by the exchange.
secureintegerWhether HTTPS creative assets and markup are required.
Values:
0: non-secure
1: secure
Example: 1
pmpPmpPrivate marketplace deals.
expintegerMaximum number of seconds that may elapse between the auction and the impression. Set for rewarded video. Please extend the impression expiry to this value.
Example: 10800
extImp ExtPlaceholder for exchange-specific extensions to OpenRTB.

Imp Ext​

Location: imp[].ext

FieldTypeRequiredDescription
skadnSKAdNetworkApple SKAdNetwork parameters since iOS14 IAB extension
spidstringSource placement ID: the ID of the ad slot managed by the upstream header bidding solution. The tag ID for Amazon TAM and the ad unit code for Google Open Bidding. ADG extension
Example: "my_upstream_placementid123"
gpidstringGlobal Placement ID.
imp[].ext.gpid for Amazon TAM, dfp_ad_unit_code for Google Open Bidding, imp[].tagid for ADG JS / SDK. IAB extension
Example: "/1111/homepage#div-leftnav"
vcpmintegerA flag indicating whether or not the impression (billing timing) definition is dependent on viewability.
If this value is 1 or 2, an impression is counted only when the ad are viewable on screen.
Currently there is no 1, only 0 or 2 value. ADG extension
Values:
0: If the ad is loaded, it counts as an impression,
regardless of whether the ad is displayed on the screen or not.
1: If the ad is on the screen for more than 10% and 1 seconds, it counts as impression.
2: If the ad is on the screen for more than 1% and 0.1 seconds, it counts as an impression.
Example: 1
Example: 2

Site​

Location: site / OpenRTB 2.6 Site object

Details about publisher's website.
This object is included if the media is a website not an app.

FieldTypeRequiredDescription
idstring✓Site ID numbered by Ad Generation
Example: "9336"
namestringSite name
Example: "本番環境用テスト広告"
domainstringSite domain
Example: "example.com"
catarray of string✓Site categories. Category codes converted with the mapping the DSP specifies. See categories.
Example: ["CATEGORY_CODE_SAMPLE"]
pagestringPage URL
Example: "http://example.com/hoge"
refstringReferrer
Example: "http://example.com/hoge/ref"
mobileintegerWhether the page is optimized for mobile.
Values:
0
1
Example: 0
publisherPublisher✓Publisher information.
contentContentContent information.
keywordsstringComma separated list of keywords about the site

App​

Location: app / OpenRTB 2.6 App object

Details about publisher's app.
This object is included if the media is an app not a website.

FieldTypeRequiredDescription
idstring✓App ID generated by Ad Generation.
Example: "9336"
namestringApp name
Example: "本番環境用テスト広告"
bundlestringA platform-specific application identifier intended to be unique to the app and independent of the exchange.
On Android, it is a package name, such as com.example.myapp.
On iOS, it is a bundle identifier, such as com.example.myapp. We can also set a numeric ID on App Store such as 590384791 if DSP ask.
Example: "com.example.myapp"
storeurlstringStore URL
Example: "https://itunes.apple.com/us/app/example/idXXXXXXXXXX?l=ja&ls=1&mt=8"
catarray of string✓App categories. Category codes converted with the mapping the DSP specifies. See categories.
Example: ["ADG_01000"]
verstringApp version
In some cases this value is unavailable.
Example: "1.0.0"
publisherPublisher✓Publisher information.
contentContentContent information.

Device​

Location: device / OpenRTB 2.6 Device object

FieldTypeRequiredDescription
uastringValue of the User-Agent header.
Example: "Mozilla/5.0 (iPhone; CPU iPhone OS 8_1_1 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12B435"
suaUserAgentStructured user agent information defined by a UserAgent object.
If both ‘ua’ and ‘sua’ are present in the bid request, ‘sua’ should be considered the more accurate representation of the device attributes.
This is because the ‘ua’may contain a frozen or reduced user agent string.
geoGeoLocation information.
dntintegerStandard “Do Not Track” flag as set in the header by the browser.
Values:
0: tracking is unrestricted
1: do not track
lmtintegerLimited Ad Tracking signal. Set to 1 when no user-identifying data is included in the bid request.
Values:
0: tracking is unrestricted
1: tracking must be limited
ipstringIP v4 address.
In case of Google Open Bidding (formerly EBDA), only the first 3 bytes of the IP address is available
and the 4th octet is always filled with 0 e.g. 122.103.233.0.
Example: "163.49.202.118"
ipv6stringIPv6 address.
For Google Open Bidding only the first 6 bytes are received, so the rest is sent as zeros (e.g. 2001:db8:1001::).
devicetypeintegerDevice type. Android devices cannot be identified from the User-Agent, so all are set to 4 (Phone).
Values:
1: Mobile/Tablet Version 2.0
2: Personal Computer Version 2.0
3: Connected TV Version 2.0
4: Phone New for Version 2.2
5: Tablet New for Version 2.2
6: Connected Device New for Version 2.2
7: Set Top Box New for Version 2.2
modelstringModel
osstringOperating system.
osvstringOperating system version.
jsintegerSupporting javascript or not
1 Fixed.
Values:
0: no
1: yes
Example: 1
languagestringLanguage code of browser
ISO-639-1-alpha-2
Example: "ja"
mccmncstringMCC-MNC.
Example: "440-50"
carrierstringCarrier name
connectiontypeintegerNetwork connection type.
Values:
0: Unknown
1: Ethernet
2: WIFI
3: Cellular Network – Unknown Generation
4: Cellular Network – 2G
5: Cellular Network – 3G
6: Cellular Network – 4G
Example: 0
ifastringadvertising ID
idfa or google advertising id
Example: "99999999-9999-9999-9999-999999999999"
extDevice ExtPlaceholder for exchange-specific extensions to Device object.

Device Ext​

Location: device.ext

FieldTypeRequiredDescription
attsinteger(iOS Only) An integer passed to represent the app's app tracking authorization status. IAB extension
Values:
0: not determined
1: restricted
2: denied
3: authorized
Example: 3
ifahstringA hashed ifa.
DSPs can frequency-control with this in the placements where device.ifa is disabled. ADG extension
Example: "f70543455ab035ef44711a1f7c45e7f2691a91d7"
cdepstringChrome cookie deprecation testing label. IAB extension
Example: "example_label_1"

User​

Location: user / OpenRTB 2.6 User object

FieldTypeRequiredDescription
idstringSSP UID
Example: "TESTocCo4ccAAH2awC4AAAAA"
buyeruidstringThe DSP's user ID, set when Ad Generation stores the ID sync mapping.
Example: "mydspuid123"
Example: "TESTocCo4ccAAH2awC4AAAAA"
geoGeoLocation information.
dataarray of DataAdditional user data.
eidsarray of EIDExtended identifiers for multiple third party identity providers
extUser ExtPlaceholder for exchange-specific extensions to User object.

User Ext​

Location: user.ext

FieldTypeRequiredDescription
unifiedidstringUnified ID provided by The Trade Desk(TTD).
Using Unified ID eliminates the need for the DSP to synchronize cookies with each SSP, which can increase the user match rate.
Please contact TDD for Unified ID Solution.
https://www.thetradedesk.com/industry-initiatives/unified-id-solution ADG extension
Example: "0525fe22-5ea4-4b8e-a81c-7eef017154af"
mediauidstringUser identifier managed by the media, unique within the same app or site.
Available only when explicitly sent by the media. ADG extension
Example: "myuid123"
uidhstringA hashed cookie uid.
DSP can frequency-control with this in the placements where user.id/buyeruid is disabled. ADG extension
Example: "f70543455ab035ef44711a1f7c45e7f2691a91d7"
eidsarray of EIDDeprecated; moved to user.eids. IDs from third-party ID providers. IAB extension

Source​

Location: source / OpenRTB 2.6 Source object

FieldTypeRequiredDescription
fdinteger✓Whether Ad Generation or an upstream auction makes the final decision. 1 for header bidding.
Values:
0: exchange
1: upstream source
Example: 0
tidstringTransaction ID that must be common across all participants in this bid request (e.g., potentially multiple exchanges).
DSP can recognize duplicated requests from different SSPs by checking this value.
In the case of prebid, this ID (transactionId) is opt-in in publishers setting for prebid8 or later.
Example: "fa7f737be3245606617b18eabf1e41bfaedc4e3a"
extSource ExtPlaceholder for exchange-specific extensions to OpenRTB.

Source Ext​

Location: source.ext

FieldTypeRequiredDescription
stypestringType of Upstream Header Bidding Solution ADG extension
Values:
tam: Amazon TAM(Transparent Ad Marketplace)
ebda: Google Open Bidding (formerly EBDA)
prebid: Prebid.js
Example: "tam"
schainSupplyChainOpenRTB SupplyChain object. IAB extension
omidpnstringIdentifier of the OM SDK integration partner. Same as the OMID Partner name. IAB extension
Example: "Supershipjp"
omidpvstringVersion of the SDK that integrates OM SDK (not the OM SDK version). Same as the OMID Partner version. IAB extension
Example: "2.18.1"

Regs​

Location: regs / OpenRTB 2.6 Regs object

FieldTypeRequiredDescription
extRegs ExtPlaceholder for exchange-specific extensions to OpenRTB.

Regs Ext​

Location: regs.ext

FieldTypeRequiredDescription
gdprintegerWhether or not we believes that GDPR is in effect for a given auction.
Currently the value is always 0 because we don't send GDPR requests. IAB extension
Values:
0: No
1: Yes
Example: 0

Metric​

Location: imp[].metric[] / OpenRTB 2.6 Metric object

FieldTypeRequiredDescription
typestring✓Type of metric being presented using exchange curated string names.
Values:
avgwin: Average price of winning bid for a placement expressed in CPM.
Currency is the same value in bid_request.cur, which is pre-configured for a DSP.
medwin: Median price of winning bid for a placement expressed in CPM.
Currency is the same value in bid_request.cur, which is pre-configured for a DSP.
Example: "avgwin"
valuenumber✓Number representing the value of the metric.
Probabilities must be in the range 0.0 – 1.0.
Example: 12.0
vendorstring✓Source of the value. If source of value is AdGeneration, EXCHANGE is used.
Values:
EXCHANGE: Source of value is AdGeneration.
Example: "EXCHANGE"

Banner​

Location: imp[].banner / OpenRTB 2.6 Banner object

FieldTypeRequiredDescription
formatarray of FormatArray of format objects representing the banner sizes permitted.
Multiple sizes can be represented within single imp object.
If DSP support this parameter, we don't divide multiple sizes into multiple imp object.
In that case, DSP must return seatbid.bid.w/h in bid response.
wintegerExact width in device independent pixels (DIPS).
If DSP support banner.format, w and h field is blank by default,
but It is possible to fill both format and w/h if needed.
Example: 320
hintegerExact height in device independent pixels (DIPS).
If DSP support banner.format, w and h field is blank by default,
but It is possible to fill both format and w/h if needed.
Example: 50
idstringUnique ID within the Imp object. Sequential, starting from 0.
Example: "12345"
battrarray of integerBlocked creative attributes.
Values:
1: Audio Ad (Auto-Play)
2: Audio Ad (User Initiated)
3: Expandable (Automatic)
4: Expandable (User Initiated - Click)
5: Expandable (User Initiated - Rollover)
6: In-Banner Video Ad (Auto-Play)
7: In-Banner Video Ad (User Initiated)
8: Pop (e.g., Over, Under, or Upon Exit)
9: Provocative or Suggestive Imagery
10: Shaky, Flashing, Flickering, Extreme Animation, Smileys
11: Surveys
12: Text Only
13: User Interactive (e.g., Embedded Games)
14: Windows Dialog or Alert Style
15: Has Audio On/Off Button
16: Ad Can be Skipped (e.g., Skip Button on Pre-Roll Video)
posinteger✓Ad position on screen.
Values:
0: Unknown
1: Above the Fold
2: DEPRECATED - May or may not be initially visible depending on screen size/resolution.
3: Below the Fold
4: Header
5: Footer
6: Sidebar
7: Full Screen
9: overlay
Example: 9
apiarray of integerList of supported API frameworks for this impression. If an API is not listed, it is assumed not to be supported.
Values:
1: VPAID 1.0
2: VPAID 2.0
3: MRAID-1
4: ORMMA
5: MRAID-2
6: MRAID-3
7: OMID-1
Example: [3]

Video​

Location: imp[].video / OpenRTB 2.6 Video object

FieldTypeRequiredDescription
mimesarray of string✓Supported MIME types.
Example: ["video/mp4"]
mindurationintegerMinimum video ad duration in seconds.
Example: 0
maxdurationintegerMaximum video ad duration in seconds.
Example: 3600
protocolsarray of integerArray of supported video bid response protocols.
Values:
1: VAST 1.0
2: VAST 2.0
3: VAST 3.0
4: VAST 1.0 Wrapper
5: VAST 2.0 Wrapper
6: VAST 3.0 Wrapper
7: VAST 4.0
8: VAST 4.0 Wrapper
Example: [2, 3, 5, 6]
wintegerWidth of the video player in pixels.
Example: 320
hintegerHeight of the video player in pixels.
Example: 180
startdelayintegerIndicates the start delay in seconds for pre-roll, mid-roll, or post-roll ad placements.
The value is set only when Instream and is not set when OutStream.
Values:
> 0: Mid-Roll (value indicates start delay in second)
0: Pre-Roll
-1: Generic Mid-Roll
-2: Generic Post-Roll
Example: -1
skipintegerIndicates if the player will allow the video to be skipped, where 0 = no, 1 = yes.
Values:
0: no
1: yes
Example: 0
skipminintegerVideos of total duration greater than this number of seconds can be skippable;
only applicable if the ad is skippable.
Example: 5
skipafterintegerNumber of seconds a video must play before skipping is enabled;
only applicable if the ad is skippable.
Example: 5
placementintegerDeprecated as of OpenRTB 2.6-202303. Placement type for the impression.
Values:
1: In-Stream
2: In-Banner
3: In-Article
4: In-Feed
5: Interstitial/Slider/Floating
Example: 0
plcmtintegerVideo placement type for the impression. OpenRTB 2.6-202303 and later.
Values:
1: Instream: Pre-roll, mid-roll, and post-roll ads that are played before, during or after the streaming video content that the consumer has requested.
Instream video must be set to “sound on” by default at player start, or have explicitly clear user intent to watch the video content.
While there may be other content surrounding the player, the video content must be the focus of the user’s visit.
It should remain the primary content on the page and the only video player in-view capable of audio when playing.
If the player converts to floating/sticky subsequent ad calls should accurately convey the updated player size.
2: Accompanying Content: Pre-roll, mid-roll, and post-roll ads that are played before, during, or after streaming video content.
The video player loads and plays before, between, or after paragraphs of text or graphical content, and starts playing only when it enters the viewport.
Accompanying content should only start playback upon entering the viewport.
It may convert to a floating/sticky player as it scrolls off the page.
3: Interstitial:Video ads that are played without video content.
During playback, it must be the primary focus of the page and take up the majority of the viewport and cannot be scrolled out of view.
This can be in placements like in-app video or slideshows.
4: No Content/Standalone: Video ads that are played without streaming video content.
This can be in placements like slideshows, native feeds, in-content or sticky/floating.
Example: 1
linearityintegerIndicates if the impression must be linear, nonlinear, etc.
If none specified, assume all are allowed.
1(Linear) fixed.
Values:
1: Linear / In-Stream
2: Non-Linear / Overlay
Example: 1
battrarray of integerBlocked creative attributes.
Values:
1: Audio Ad (Auto-Play)
2: Audio Ad (User Initiated)
3: Expandable (Automatic)
4: Expandable (User Initiated - Click)
5: Expandable (User Initiated - Rollover)
6: In-Banner Video Ad (Auto-Play)
7: In-Banner Video Ad (User Initiated)
8: Pop (e.g., Over, Under, or Upon Exit)
9: Provocative or Suggestive Imagery
10: Shaky, Flashing, Flickering, Extreme Animation, Smileys
11: Surveys
12: Text Only
13: User Interactive (e.g., Embedded Games)
14: Windows Dialog or Alert Style
15: Has Audio On/Off Button
16: Ad Can be Skipped (e.g., Skip Button on Pre-Roll Video)
minbitrateintegerMinimum bit rate in Kbps. Exchange may set this dynamically or universally across their set of publishers.
Example: 300
maxbitrateintegerMaximum bit rate in Kbps. Exchange may set this dynamically or universally across their set of publishers.
Example: 1500
boxingallowedintegerIndicates if letter-boxing of 4:3 content into a 16:9 window is allowed, where 0 = no, 1 = yes.
1 Fixed.
Values:
0: no
1: yes
Example: 1
deliveryarray of integerSupported delivery methods (e.g., streaming, progressive).
If none specified, assume all are supported.
2 Fixed
Values:
1: Streaming
2: Progressive
Example: [2]
posintegerAd position on screen.
Values:
0: Unknown
1: Above the Fold
2: DEPRECATED - May or may not be initially visible depending on screen size/resolution.
3: Below the Fold
4: Header
5: Footer
6: Sidebar
7: Full Screen
9: overlay
Example: 0
apiarray of integerList of supported API frameworks for this impression. If an API is not listed, it is assumed not to be supported.
Values:
1: VPAID 1.0
2: VPAID 2.0
3: MRAID-1
4: ORMMA
5: MRAID-2
6: MRAID-3
7: OMID-1
extVideo ExtPlaceholder for exchange-specific extensions to OpenRTB.

Video Ext​

Location: imp[].video.ext

FieldTypeRequiredDescription
video_ad_skippableintegerA flag that indicate whether ad is skippable or not. ADG extension
Values:
0: not skippable
1: skippable
Example: 0
outstreamintegerA flag that indicate ad format is INSTREAM(embedded in video contents) or
OUTSTREAM(not embedded in video contents). ADG extension
Values:
0: INSTREAM
1: OUTSTREAM
Example: 1
rewarded_videointegerA flag that indicate whether ad placement is rewarded video or not. ADG extension
Values:
0: not rewarded video
1: rewarded video
Example: 0
inreadintegerA flag that indicate whether ad placement is inread or not. ADG extension
Values:
0: not inread
1: inread
Example: 0
orientationintegerSignal indicating whether the video is vertical. ADG extension
Values:
0: ORIENTATION_UNKNOWN
1: HORIZONTAL (width > height)
2: VERTICAL (height > width)

Native​

Location: imp[].native / OpenRTB 2.6 Native object

FieldTypeRequiredDescription
requeststringThe Native Ads 1.2 or 1.0.0.2 request as a JSON string.
See Native 1.2 Request and Native 1.0.0.2 Request.
Example: "{\"native\":{\"ver\":\"1.0.0.2\",\"layout\":3,\"plcmtcnt\":1,\"assets\":[{\"id\":1,\"title\":{\"len\":30}},{\"id\":2,\"img\":{\"type\":1,\"w\":64,\"h\":64,\"mimes\":[\"image/jpeg\"]}},{\"id\":3,\"data\":{\"type\":1,\"len\":10}},{\"id\":4,\"data\":{\"type\":2,\"len\":10}},{\"id\":5,\"data\":{\"type\":12,\"len\":10}}]}}"
verstringVersion of the Native Ad Specification to which request complies.
Example: "1.0.0.2"
apiarray of integerList of supported API frameworks for this impression. If an API is not listed, it is assumed not to be supported.
Values:
1: VPAID 1.0
2: VPAID 2.0
3: MRAID-1
4: ORMMA
5: MRAID-2
6: MRAID-3
7: OMID-1
battrarray of integerBlocked creative attributes.
Values:
1: Audio Ad (Auto-Play)
2: Audio Ad (User Initiated)
3: Expandable (Automatic)
4: Expandable (User Initiated - Click)
5: Expandable (User Initiated - Rollover)
6: In-Banner Video Ad (Auto-Play)
7: In-Banner Video Ad (User Initiated)
8: Pop (e.g., Over, Under, or Upon Exit)
9: Provocative or Suggestive Imagery
10: Shaky, Flashing, Flickering, Extreme Animation, Smileys
11: Surveys
12: Text Only
13: User Interactive (e.g., Embedded Games)
14: Windows Dialog or Alert Style
15: Has Audio On/Off Button
16: Ad Can be Skipped (e.g., Skip Button on Pre-Roll Video)
extNative ExtPlaceholder for exchange-specific extensions.

Native Ext​

Location: imp[].native.ext

FieldTypeRequiredDescription
request_jsonNative 1.0.0.2 Request / Native 1.2 Requestnative.request as a JSON object instead of a string. Sent instead of native.request to DSPs that request it. ADG extension
wintegerWidth when the fixed size of the native ad display area is known ADG extension
Example: 300
hintegerHeight when the fixed size of the native ad display area is known ADG extension
Example: 250

Pmp​

Location: imp[].pmp / OpenRTB 2.6 Pmp object

Pmp object. Please contact us before using it.

FieldTypeRequiredDescription
private_auctioninteger✓Indicator of auction eligibility to seats named in the Deal objects: 0 = all bids are accepted, 1 = bids are restricted to the deals specified and their terms.
Values:
0: all bids are accepted
1: bids are restricted to the deals specified and the terms thereof.
dealsarray of Deal✓Array of Deal objects.
extanyPlaceholder for exchange-specific extensions.

SKAdNetwork​

Location: imp[].ext.skadn

FieldTypeRequiredDescription
versionstringSupported SKAdNetwork version (2.0 or higher). Deprecated; see versions.
Example: "2.1"
versionsarray of stringList of supported SKAdNetwork versions (2.0 or higher). Depends on the OS and SDK versions.
Example: ["2.0", "2.1", "2.2"]
sourceappstringApp Store ID of the publisher's app.
Example: "880047117"
skadnetidsarray of stringA subset of SKAdNetworkItem entries in the publisher app’s info.plist that are relevant to the DSP.
Example: ["cDkw7geQsH.skadnetwork", "qyJfv329m4.skadnetwork"]
skoverlayintegerSKOverlay support. If set, SKOverlay is supported.
Example: 1

Publisher​

Location: site.publisher, app.publisher / OpenRTB 2.6 Publisher object

FieldTypeRequiredDescription
idstring✓Publisher ID numbered by Ad Generation
Example: "9999"
namestring✓Publisher name
Example: "Scaleout .Inc"

Content​

Location: site.content, app.content / OpenRTB 2.6 Content object

FieldTypeRequiredDescription
idstringUnique ID of the content.
Example: "6316725204112"

UserAgent​

Location: device.sua / OpenRTB 2.6 UserAgent object

Structured user agent information, which can be used when a client supports User-Agent Client Hints. If
both device.ua and device.sua are present in the bid request, device.sua should be considered the more
accurate representation of the device attributes. This is because the device.ua may contain a frozen or
reduced user agent string due to deprecation of user agent strings by browsers.

FieldTypeRequiredDescription
browsersarray of BrandVersionBrowser information, based on the Sec-CH-UA-Full-Version-List header.
platformBrandVersionPlatform information, based on the Sec-CH-UA-Platform header.
mobileinteger1 if mobile content is preferred, 0 if desktop (full) content is preferred. Value of the Sec-CH-UA-Mobile header.
Example: 1
architecturestringDevice architecture. Value of the Sec-CH-UA-Arch header.
Example: "x86"
bitnessstringDevice bitness (64 for a 64-bit architecture). Value of the Sec-CH-UA-Bitness header.
Example: "64"
modelstringDevice model. Value of the Sec-CH-UA-Model header.
Example: "Pixel 3"
sourceintegerThe source of data used to create this object, List: User-Agent Source in AdCOM 1.0
Values:
0: Unspecified/unknown
1: User-Agent Client Hints (only low-entropy headers were available)
2: User-Agent Client Hints (with high-entropy headers available)
3: Parsed from User-Agent header (the same string carried by the ua field)

Geo​

Location: device.geo, user.geo / OpenRTB 2.6 Geo object

FieldTypeRequiredDescription
latnumberLatitude
lonnumberLongitude
typeintegerSource of the location data.
Values:
1: GPS/Location Services
2: IP Address
3: User provided (e.g., registration data)
countrystringCountry code
ISO-3166-1-alpha-3
Example: "JPN"

Data​

Location: user.data[] / OpenRTB 2.6 Data object

FieldTypeRequiredDescription
idstringExchange-specific ID for the data provider.
namestringExchange-specific name for the data provider.
segmentarray of SegmentArray of Segment objects that contain the actual data values.
extData ExtPlaceholder for exchange-specific extensions to OpenRTB

Data Ext​

Location: user.data[].ext

FieldTypeRequiredDescription
segtaxintegerTaxonomy code defined by Segment Taxonomies. IAB extension
Example: 601
segclassstringVersion of the classifier used to assign the segments. IAB extension
Example: "classifier_v1"

EID​

Location: user.eids[], user.ext.eids[] / OpenRTB 2.6 EID object

FieldTypeRequiredDescription
sourcestring✓Source or technology provider responsible for the set of included IDs.
Expressed as a top-level domain.
Values:
id5-sync.com: ID5
uidapi.com: Unified ID 2.0
intimatemerger.com: IM-UID
intentiq.com: Intent IQ
criteo.com: Criteo
Example: "id5-sync.com"
inserterstringThe canonical domain name of the entity (publisher, SSP, exchange, header wrapper, etc.) that caused the ID array element to be added.
Example: "ad-generation.jp"
matcherstringTechnology providing the match method as defined in mm.
In some cases, this may be the same value as inserter.
When blank, it is assumed that the matcher is equal to the source. May be omitted when mm=0, 1, or 2.
Example: "intentiq.com"
mmintegerMatch method used by the matcher.
Values:
0: Unknown
1: No Match. No matching has occurred. The associated ID came directly from a 3rd-party cookie or OS-provided resettable device ID for advertising (IFA).
2: Browser Cookie Sync. Real time cookie sync as described in Appendix: Cookie Based ID Syncing of OpenRTB 2.x
3: Authenticated. ID match was based on user authentication such as an email login or hashed PII
4: Observed. ID match was based on a 1st party observation, but without user authentication (e.g. GUID, SharedID, Session IDs, CHIPS or other 1st party cookies contained in localStorage)
5: Inference. ID match was inferred from linkage based on non-authenticated features across multiple browsers or devices (e.g. IP address and/or UserAgent))
Example: 5
uidsarray of UID✓Array of extended ID UID objects from the given source.
extanyPlaceholder for exchange-specific extensions.

SupplyChain​

Location: source.ext.schain / OpenRTB 2.6 SupplyChain object

FieldTypeRequiredDescription
verstring✓Version of the supply chain specification in use, in the format of “major.minor”.
The current value is 1.0, fixed.
Example: "1.0"
completeinteger✓Flag indicating whether the chain contains all nodes involved in the transaction
leading back to the owner of the site, app or other medium of the inventory, where 0 = no, 1 = yes.
Values:
0: incomplete
1: complete
Example: 1
nodesarray of SupplyChainNode✓Array of SupplyChainNode objects in the order of the chain.
In a complete supply chain, the first node represents the initial advertising system and seller ID involved in the transaction, i.e. the owner of the site, app, or other medium.
In an incomplete supply chain, it represents the first known node. The last node represents the entity sending this bid request.

Format​

Location: imp[].banner.format[] / OpenRTB 2.6 Format object

This object represents an allowed size for a banner impression.

FieldTypeRequiredDescription
wintegerWidth in device independent pixels (DIPS).
Example: 320
hintegerHeight in device independent pixels (DIPS).
Example: 50

Deal​

Location: imp[].pmp.deals[] / OpenRTB 2.6 Deal object

FieldTypeRequiredDescription
idstring✓A unique identifier for the direct deal.
Example: "mydealid"
bidfloornumberFloor price of the deal (CPM). When at is 3, it is the fixed price that becomes the winning price.
Example: 12.345
bidfloorcurstringCurrency specified using ISO-4217 alpha codes. Currently DSP can choose JPY or USD.
Example: "JPY"
atinteger✓Auction type of this deal, where 1 = First Price(DSP specify price in bid response), 3 = the value passed in bidfloor(SSP specify price in bid request).
Values:
1: First Price
3: bidfloor
Example: 3
wseatarray of stringWhitelist of buyer seats allowed to bid on this deal.
Example: ["200", "abc"]
extDeal ExtPlaceholder for exchange-specific extensions to OpenRTB.

Deal Ext​

Location: imp[].pmp.deals[].ext

FieldTypeRequiredDescription
ignore_bcatbooleanA flag that indicate whether DSP should ignore block category specified in BidRequest.bcat when bid is deal.
true: DSP should ignore bcat for deal bid.
false or missing: DSP should not ignore bcat. ADG extension
Example: true

BrandVersion​

Location: device.sua.browsers[], device.sua.platform / OpenRTB 2.6 BrandVersion object

Further identification based on User-Agent Client Hints, the BrandVersion object is used to identify a
device’s browser or similar software component, and the user agent’s execution platform or operating system.

FieldTypeRequiredDescription
brandstringA brand identifier, for example, “Chrome” or “Windows”. The value may be
sourced from the User-Agent Client Hints headers, representing either the
user agent brand (from the Sec-CH-UA-Full-Version header) or the platform
brand (from the Sec-CH-UA-Platform header).
Example: "Google Chrome"
versionarray of stringVersion number (major, minor, micro, ...).
Example: ["10", "5", "1"]

Segment​

Location: user.data[].segment[] / OpenRTB 2.6 Segment object

FieldTypeRequiredDescription
idstringSegment ID. For the Topics API, the topic ID.
Example: "351"
namestringSegment name.
valuestringSegment value.

UID​

Location: user.eids[].uids[] / OpenRTB 2.6 UID object

FieldTypeRequiredDescription
idstring✓The identifier for the user.
atypeintegerType of user agent the ID is from.
Values:
1: An ID which is tied to a specific web browser or device (cookie-based, probabilistic, or other).
2: In-app impressions, which will typically contain a type of device ID (or rather, the privacy-compliant versions of device IDs).
3: A person-based ID, i.e., that is the same across devices.
Example: 1
extUID ExtPlaceholder for vendor specific extensions to this object

UID Ext​

Location: user.eids[].uids[].ext

FieldTypeRequiredDescription
linkTypeintegerLink Type for id5. In case of unknown linkType such as Google Open Bidding, this field is absent. Third-party extension
Values:
0: unlinked
1: probabilistic
2: deterministic
Example: 2

SupplyChainNode​

Location: source.ext.schain.nodes[] / OpenRTB 2.6 SupplyChainNode object

FieldTypeRequiredDescription
asistring✓The canonical domain name of the SSP, Exchange, Header Wrapper, etc system that bidders connect to.
This should be the same value as used to identify sellers in an ads.txt file if one exists.
Example: "ad-generation.jp"
sidstring✓The identifier associated with the seller or reseller account within the advertising system.
Example: "4321"
hpinteger✓Whether this node is involved in the flow of payment. 1 means the advertising system in asi pays the seller in sid, who in turn pays the previous node. Ad Generation's node is 1.
Values:
0: This node is not involved in the flow of payment for the inventory.
1: This node is involved in the flow of payment for the inventory.
Example: 1
ridstringThe OpenRTB RequestId of the request as issued by this seller.
Example: "abc12345678"

Example request​

An example for a web banner (300x250) on a smartphone through Ad Generation tags. The actual content depends on the inventory and on the settings for each DSP (the category mapping, the fields to send, and so on). In this example, categories are sent as Ad Generation's codes.

{
"id" : "example-auction-id",
"imp" : [ {
"id" : "1",
"tagid" : "736714",
"banner" : {
"format" : [ {
"w" : 300,
"h" : 250
} ],
"w" : 300,
"h" : 250,
"id" : "0",
"pos" : 1,
"api" : [ ]
},
"displaymanager" : "adg_web_sdk",
"displaymanagerver" : "2.27.1",
"instl" : 0,
"bidfloor" : 25.0,
"bidfloorcur" : "JPY",
"secure" : 1,
"ext" : {
"gpid" : "736714",
"vcpm" : 0
}
} ],
"site" : {
"id" : "736714",
"name" : "マンガサイト_SP",
"domain" : "manga.example.com",
"cat" : [ "ADG_01000", "ADG_ent" ],
"page" : "https://manga.example.com/",
"ref" : "",
"mobile" : 1,
"publisher" : {
"id" : "8954",
"name" : "サンプルマンガ株式会社"
}
},
"device" : {
"ua" : "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.6.1 Mobile/15E148 Safari/604.1",
"geo" : {
"country" : "JPN"
},
"dnt" : 0,
"ip" : "203.0.113.130",
"devicetype" : 4,
"model" : "iPhone",
"os" : "iOS",
"js" : 1,
"language" : "ja",
"connectiontype" : 0,
"ext" : { }
},
"user" : {
"id" : "ddYXE9Ti6NUUDZeUkyXYXDPB",
"geo" : {
"country" : "JPN"
},
"ext" : { }
},
"at" : 1,
"tmax" : 150,
"cur" : [ "JPY" ],
"bcat" : [ "ADG_bridal", "ADG_25003", "ADG_medical", "ADG_compladies", "ADG_marriage", "ADG_dating", "ADG_pachi", "ADG_ebookxs", "ADG_adult", "ADG_14003", "ADG_comphair", "ADG_healcomp", "ADG_religion", "ADG_clitrial", "ADG_vcurrency", "ADG_gamexs", "ADG_25004", "ADG_23001", "ADG_datingxs", "ADG_25005", "ADG_healnomal", "ADG_fortune", "ADG_ebookx", "ADG_ciga", "ADG_07002", "ADG_rei", "ADG_gamble", "ADG_08002", "ADG_gambleo", "ADG_ebook", "ADG_23002", "ADG_political", "ADG_others", "ADG_compmens", "ADG_24000", "ADG_25001", "ADG_hincome", "ADG_11001", "ADG_07003", "ADG_surger", "ADG_alcohol", "ADG_loan", "ADG_14004", "ADG_03006", "ADG_19003", "ADG_eleciga", "ADG_affiliate", "ADG_25002", "ADG_13006", "ADG_dentistry", "ADG_14002" ],
"source" : {
"fd" : 0,
"tid" : "example-auction-id",
"ext" : {
"schain" : {
"ver" : "1.0",
"complete" : 1,
"nodes" : [ {
"asi" : "ad-generation.jp",
"sid" : "8954",
"hp" : 1,
"rid" : "example-auction-id"
} ]
}
}
},
"regs" : {
"ext" : {
"gdpr" : 0
}
}
}

Bid Response​

The OpenRTB 2.x bid response that DSPs return to Ad Generation. Only the fields Ad Generation reads are listed.

BidResponse​

Location: (root) / OpenRTB 2.6 BidResponse object

The OpenRTB 2.x bid response returned by DSPs. When not bidding, the DSP may return HTTP status code 204 instead.

FieldTypeRequiredDescription
idstring✓Bid Request ID to correspond.
Example: "7749a0cb204eea02d50e7c98d790ae25c6f74318"
seatbidarray of SeatBidArray including at least one Seatbid object when to bid.
bididstringID numbered by DSP.
curstringCurrency code for the bid price (ISO-4217).
Example: "JPY"
nbrintegerReason for not bidding.
Values:
0: Unknown Error
1: Technical Error
2: Invalid Request
3: Known Web Spider
4: Suspected Non-Human Traffic
5: Cloud, Data center, or Proxy IP
6: Unsupported Device
7: Blocked Publisher or Site
8: Unmatched User

SeatBid​

Location: seatbid[] / OpenRTB 2.6 SeatBid object

FieldTypeRequiredDescription
bidarray of Bid✓Array of bid object
Correspond to imp object of Bid Request
seatstringID of the bidder seat on whose behalf this bid is made.
Example: "seat-id-001"

Bid​

Location: seatbid[].bid[] / OpenRTB 2.6 Bid object

FieldTypeRequiredDescription
idstring✓ID numbered by DSP
Example: "1"
impidstring✓Corresponding Imp ID for object.
Example: "4974d82c61b283497cc4e220e8f748854018a086"
pricenumber✓Bid price
Example: 10.5
adidstringID of a preloaded ad to be served if the bid wins.
admstringAd markup: HTML for banner, the Native Ads response as a JSON string for native (Native 1.2 Response, Native 1.0.0.2 Response), and VAST for video.
Example: "<div style=\"margin:0px;padding:0px;overflow:hidden\">\\n<iframe src=\"https://s3-ap-northeast-1.amazonaws.com/adg-dummy-dsp/banner1/320x50fix.html?prc=${AUCTION_PRICE}&rd=${SSP_REDIRECT_ENCURL}\" style=\"overflow:hidden;height:50px;width:320px\" frameborder=\"0\" scrolling=\"no\"></iframe>\\n</div>"
adomainarray of string✓Advertiser's corporate site (not landing page) domain for block list checking.
This can be multiple domains for the case of rotating creatives.
Refer to Bid blocking by advertiser's domain
Example: ["ford.com"]
bundlestringBundle or package name (e.g. com.foo.mygame) of the app being advertised.
iurlstringURL without cache-busting to an image representative of the campaign content, for ad quality and safety checks. Please set it if possible.
cidstringCampaign ID to assist with ad quality checking; the collection of creatives that iurl represents.
cridstring✓Creative ID. Required for ad review.
catarray of stringCreative categories, as codes in the agreed taxonomy such as IAB categories.
attrarray of integerCreative attribute for ads
Values:
1: Audio Ad (Auto-Play)
2: Audio Ad (User Initiated)
3: Expandable (Automatic)
4: Expandable (User Initiated - Click)
5: Expandable (User Initiated - Rollover)
6: In-Banner Video Ad (Auto-Play)
7: In-Banner Video Ad (User Initiated)
8: Pop (e.g., Over, Under, or Upon Exit)
9: Provocative or Suggestive Imagery
10: Shaky, Flashing, Flickering, Extreme Animation, Smileys
11: Surveys
12: Text Only
13: User Interactive (e.g., Embedded Games)
14: Windows Dialog or Alert Style
15: Has Audio On/Off Button
16: Ad Can be Skipped (e.g., Skip Button on Pre-Roll Video)
dealidstringThe deal.id from the bid request if this bid is for a private marketplace deal.
hintegerCreative height in DIPS. Required when imp[].banner.format in the bid request has more than one size.
Example: 250
wintegerCreative width in DIPS. Required when imp[].banner.format in the bid request has more than one size.
Example: 300
burlstringImpression notification URL. Required for banner bids.
On inview-charged placements, banner creatives may be prefetched but never displayed, so the impression is notified with this URL separately from loading the creative. On other placements it is appended to adm as an img tag, so you can always return burl for banner bids.
Macros in burl are also replaced. If you cannot return burl, we can stop sending header bidding inventory that may be prefetched. Multiple URLs can be returned in ext.burls.
Not needed for native (imptrackers) or video (Impression in VAST). If returned, it is merged with them, and the same URL is not called twice.
Example: "https://mydsp1.com/imp?id=123456"
lurlstringLoss notification URL.
Example: "https://example.com/loss_notice?reason=${AUCTION_LOSS}"
extBid ExtPlaceholder for extensions.

Bid Ext​

Location: seatbid[].bid[].ext

FieldTypeRequiredDescription
atypeintegerValue that indicate type of adm content.
Since SSP cannot know which type of ad is returned if DSP can provide both banners and native ads,
SSP determine the type of ad based on this value.
When this value is not set, it is regarded as 1:banner. ADG extension
Values:
1: banner
2: native
3: video
Example: 2
advertiserstringAdvertiser's name ADG extension
Example: "株式会社Example"
Example: "Example Inc."
agencystringAgency's name ADG extension
Example: "株式会社Example"
Example: "Example Inc."
lpstringURL of landing page.
This URL should be final landing page, not intermediate measure tool. ADG extension
Example: "https://example.com/landingpage.html"
bidshadingintegerWhen 1st price auction(at:1), this option enables to use bid shading, which lower bid price to estimated market price based on past auction.
This flag is ignored when 2nd price auction(at:2).
DSP can test both 1st price bidding and bid shading results. ADG extension
Values:
0: The bid price is treated as 1st price. This is default.
1: The bid price is lowered to estimated market price(bid shading).
Example: 1
skadnSKAdNetworkSKAdNetwork information. IAB extension
burlsarray of stringMultiple version of burl. ADG extension
Example: ["https://example.com/imp1", "https://example.com/imp2"]

SKAdNetwork​

Location: seatbid[].bid[].ext.skadn

FieldTypeRequiredDescription
versionstringSKAdNetwork version (2.0 or higher).
Example: "2.0"
networkstringAd network identifier used in signature. Should match one of the items in the skadnetids array in the request.
Example: "cDkw7geQsH.skadnetwork"
sourceidentifierstringFour-digit number defined by the ad network for the campaign. For SKAdNetwork 4.0 and later, use it to generate the signature.
Example: "4321"
campaignstringCampaign ID compatible with Apple’s spec. As of 2.0, should be an integer between 1 and 100, expressed as a string
Example: "45"
itunesitemstringID of advertiser’s app in Apple’s app store. Should match BidResponse.bid.bundle
Example: "880047117"
fidelitiesarray of SKAdNetwork FidelitySupports multiple fidelity types introduced in SKAdNetwork v2.2
noncestringAn id unique to each ad response.
Note: With the release of SKAdNetwork v2.2, this field is deprecated in favor of the BidResponse.seatbid.bid.ext.skadn.fidelities.nonce to support multiple fidelity-types.
Example: "473b1a16-b4ef-43ad-9591-fcf3aefa82a7"
sourceappstringApp Store ID of the publisher's app. Same as imp.ext.skadn.sourceapp in the bid request.
Example: "123456789"
timestampstringUnix time in millis string used at the time of signature
Note: With the release of SKAdNetwork 2.2, this field is deprecated in favor of the BidResponse.seatbid.bid.ext.skadn.fidelities.timestamp to support multiple fidelity-types.
Example: "1594406341"
signaturestringSKAdNetwork signature as specified by Apple
Note: With the release of SKAdNetwork 2.2, this field is deprecated in favor of the BidResponse.seatbid.bid.ext.skadn.fidelities.signature to support multiple fidelity-types.
Example: "MEQCIEQlmZRNfYzK…"
skoverlaySKAdNetwork SKOverlaySKOverlay settings.

SKAdNetwork Fidelity​

Location: seatbid[].bid[].ext.skadn.fidelities[]

Fields that should have different values for the different fidelity types (e.g. fidelity, nonce, signature) are wrapped into an array of objects.

FieldTypeRequiredDescription
fidelityintegerThe fidelity-type of the attribution to track
Example: 0
noncestringAn id unique to each ad response.
Refer to Apple’s documentation for the proper UUID format requirements
Example: "473b1a16-b4ef-43ad-9591-fcf3aefa82a7"
timestampstringUnix time in milliseconds of the signature, as a string.
Example: "1594406341"
signaturestringSKAdNetwork signature as specified by Apple
Example: "MEQCIEQlmZRNfYzK…"

SKAdNetwork SKOverlay​

Location: seatbid[].bid[].ext.skadn.skoverlay

FieldTypeRequiredDescription
delayintegerDelay before presenting the SKOverlay in seconds.
If set to 0, the overlay will be shown immediately.
If this field is not set, the overlay will not be shown.
Example: 0
endcarddelayintegerDelay before presenting the SKOverlay on an endcard in seconds.
If set to 0, the overlay will be shown immediately.
If this field is not set, the overlay will not be shown.
Example: 0
dismissibleintegerWhether the overlay can be dismissed by the user, where 0 = no, 1 = yes
Example: 0
posintegerPosition of the Overlay. 0 = bottom, 1 = bottomRaised
Example: 1

Native 1.2 Request​

The Native Ads 1.2 request, sent as a string in imp.native.request.

Native Markup Request​

Location: (root), native / Native Ads 1.2 Native Markup Request object

The Native Ads 1.2 request, set as a JSON string in imp.native.request.

FieldTypeRequiredDescription
verstringVersion of the Native Markup version in use.
Example: "1.2"
contextinteger✓The context in which the ad appears.
Values:
1: Content-centric context such as newsfeed, article, image gallery, video gallery, or similar.
2: Social-centric context such as social network feed, email, chat, or similar
3: Product context such as product listings, details, recommendations, reviews, or similar.
Example: 3
plcmtcntinteger✓Number of ads in the placement. Up to this many ads can be included in the bid response.
Example: 1
assetsarray of Asset Request✓Array of assets. Bids must follow the conditions of each asset.
aurlsupportintegerWhether the supply source / impression supports returning an assetsurl instead of an asset object.
0 or the absence of the field indicates no such support.
Not supported.
durlsupportintegerWhether the supply source / impression supports returning a dco url instead of an asset object.
0 or the absence of the field indicates no such support.
Not supported.
eventtrackersarray of Event Trackers RequestArray of event trackers.
privacyintegerSet to 1 when the native ad supports buyer-specific privacy notice.
Set to 0 (or field absent) when the native ad doesn’t support custom privacy links or if support is unknown.
extanyPlaceholder for extensions.

Native Wrapper​

Location: (root)

FieldTypeRequiredDescription
nativeNative Markup Request✓The Native 1.2 request wrapped as {"native": {...}}. Sent in this form only to DSPs that require it. IAB extension

Asset Request​

Location: assets[] / Native Ads 1.2 Asset Request object

Asset Object
Set to Bid Request.

FieldTypeRequiredDescription
idinteger✓Unique ID of the asset. Not necessarily sequential.
Example: 1
requiredintegerWhether this asset is required.
Values:
0: Not required
1: Required
Example: 0
titleTitle RequestTitle asset.
imgImage RequestImage asset.
videoVideo RequestVideo asset.
dataData RequestData asset (description, sponsor name, etc.).
extanyPlaceholder for extensions.

Event Trackers Request​

Location: eventtrackers[] / Native Ads 1.2 Event Trackers Request object

The Data Object is to be used for all non-core elements of the native unit such as Brand Name,
Ratings, Review Count, Stars, Download count, descriptions etc.
Set to Bid Request.

FieldTypeRequiredDescription
eventinteger✓Type of event available for tracking.
Values:
1: Impression
2: Visible impression using MRC definition at 50% in view for 1 second.
3: 100% in view for 1 second (ie GroupM standard)
4: Visible impression for video using MRC definition at 50% in view for 2 seconds
Example: 1
methodsarray of integer✓Array of tracking types available for the event.
Values:
1: Image-pixel tracking - URL provided will be inserted as a 1x1 pixel at the time of the event.
2: Javascript-based tracking - URL provided will be inserted as a js tag at the time of the event.
Example: [1]
extEvent Trackers Request ExtExtension object

Event Trackers Request Ext​

Location: eventtrackers[].ext, assets[].data.ext

The Data Extension Object.

FieldTypeRequiredDescription
default_valuestringA default value, which is used when the value is not in bid response. ADG extension
Example: "my-default-value123"

Title Request​

Location: assets[].title / Native Ads 1.2 Title Request object

The Title object is to be used for title element of the Native ad.
Set to Bid Request

FieldTypeRequiredDescription
leninteger✓Maximum length of the text in the title element
Example: 10
extanyExtension object

Image Request​

Location: assets[].img / Native Ads 1.2 Image Request object

The Image object to be used for all image elements of the Native ad such as Icons, Main Image.
Set to Bid Request.

FieldTypeRequiredDescription
typeintegerImage asset type (Image Asset Types in Native Ads 1.2).
Values:
1: Icon: Icon image
3: Main: Large image preview for the ad
Example: 3
wminintegerThe minimum requested width of the image in pixels.
Example: 32
hminintegerThe minimum requested height of the image in pixels.
Example: 32
mimesarray of stringWhitelist of content MIME types supported.
Any type ca be accepted when this value is empty or undefined
Example: ["image/jpeg"]
extanyExtension object

Video Request​

Location: assets[].video / Native Ads 1.2 Video Request object

Video object
Set to Bid Request

FieldTypeRequiredDescription
mimesarray of stringWhitelist of content MIME types supported.
Example: ["video/mp4"]
mindurationinteger✓Minimum video ad duration in seconds.
Example: 30
maxdurationinteger✓Maximum video ad duration in
seconds.
Example: 60
protocolsarray of integer✓An array of video protocols supported in the bid response(Refer to OpenRtb Video Bid Response Protocols)
Values:
1: VAST 1.0
2: VAST 2.0
3: VAST 3.0
4: VAST 1.0 Wrapper
5: VAST 2.0 Wrapper
6: VAST 3.0 Wrapper
extanyExtension object

Data Request​

Location: assets[].data / Native Ads 1.2 Data Request object

The Data Object is to be used for all non-core elements of the native unit such as Brand Name,
Ratings, Review Count, Stars, Download count, descriptions etc.
Set to Bid Request.

FieldTypeRequiredDescription
typeinteger✓Data asset type. For Ad Generation specific types 501-503, see information icon.
Values:
1: sponsored : text
2: desc : text
3: rating : number formatted as string
4: likes : number formatted as string
5: downloads : number formatted as string
6: price : number formatted as string
7: saleprice : number formatted as string
8: phone : formatted string
9: address : text
10: desc2 : text
11: displayurl : text
12: ctatext : text
501: accompanying_text : text
502: optout_url : text
503: information_icon_url : text
Example: 1
lenintegerMaximum length of the text in
the element’s response.
Example: 30
extEvent Trackers Request ExtExtension object

Native 1.2 Response​

The Native Ads 1.2 response that DSPs return as a string in bid.adm.

Native Markup Response​

Location: (root), native / Native Ads 1.2 Native Markup Response object

The Native Ads 1.2 response, set as a JSON string in seatbid.bid.adm.

FieldTypeRequiredDescription
verstringVersion of the Native Markup version in use.
Example: "1.2"
assetsarray of Asset Response✓Array of assets.
linkLink Response✓Destination link for clicks.
imptrackersarray of stringArray of impression tracking URLs, expected to return a 1x1 image or 204 response.
Example: ["http://example.jp/imptrackers/v1/hoge?foo=bar"]
jstrackerstringOptional JavaScript impression tracker. This is a valid HTML,
Javascript is already wrapped in <script> tags.
It should be executed at impression time where it can be supported.
eventtrackersarray of Event Tracker ResponseArray of event trackers.
privacystringURL of a page informing the user about targeting. Used as the opt-out page of the information icon. See information icon.

Native Wrapper​

Location: (root)

FieldTypeRequiredDescription
nativeNative Markup Response✓The Native 1.2 response wrapped as {"native": {...}}. The unwrapped form is also accepted. IAB extension

Asset Response​

Location: assets[] / Native Ads 1.2 Asset Response object

Asset object for Bid Response.
Corresponds to the Asset Object in the request.

FieldTypeRequiredDescription
idinteger✓Unique asset ID, assigned by exchange,
must match one of the asset IDs in request
Example: 1
requiredintegerWhether asset is required or not. (bidder requires it to be displayed).
Values:
0: Not required
1: Required
titleTitle ResponseTitle asset.
imgImage ResponseImage asset.
videoVideo ResponseVideo asset.
dataData ResponseData asset (description, sponsor name, etc.).
linkLink ResponseNot supported. Only the root link is supported.
extanyPlaceholder for exchange-specific extensions.

Location: link, assets[].link / Native Ads 1.2 Link Response object

Video object
Set to Bid Response.
When ad is clicked the action should take the user to the location of the link

FieldTypeRequiredDescription
urlstring✓Landing URL of the clickable link.
Example: "http://example.com/ad-generation/"
clicktrackersarray of stringList of third-party tracker URLs to be fired on click of the URL.
fallbackstringFallback URL for deeplink. To be used if the URL given in url is not supported by the device.
extanyExtension object

Event Tracker Response​

Location: eventtrackers[] / Native Ads 1.2 Event Tracker Response object

Event tracker.

FieldTypeRequiredDescription
eventinteger✓Type of event to track.
Values:
1: Impression
2: Visible impression using MRC definition at 50% in view for 1 second.
3: 100% in view for 1 second (ie GroupM standard)
4: Visible impression for video using MRC definition at 50% in view for 2 seconds
Example: 1
methodinteger✓Type of tracking.
Values:
1: Image-pixel tracking - URL provided will be inserted as a 1x1 pixel at the time of the event.
2: Javascript-based tracking - URL provided will be inserted as a js tag at the time of the event.
Example: 1
urlstringURL of the image or JavaScript.
customdatamap of stringCustom data passed to the tracker.
extEvent Tracker Response ExtExtension object

Event Tracker Response Ext​

Location: eventtrackers[].ext

FieldTypeRequiredDescription
vendorKeystringVendor key of the company providing the OMID verification (e.g. company.com-omid). IAB extension
verification_parametersstringAdditional verification parameters passed to OM SDK. IAB extension

Title Response​

Location: assets[].title / Native Ads 1.2 Title Response object

Title object
Set to Bid Response.
Corresponds to the Title Object in the request, with the value filled in.

FieldTypeRequiredDescription
textstring✓The text associated with the text element.
Example: "スマホ広告収益最大化SSPツール - Ad Generation(アドジェネ)"
Example: "Ad Generation automatically maximize the revenue."
extanyExtension object

Image Response​

Location: assets[].img / Native Ads 1.2 Image Response object

Image object
Set to Bid Response.
Corresponds to the Image Object in the request.

FieldTypeRequiredDescription
urlstring✓URL of the image asset.
Example: "https://example.com/wp-content/themes/scaleout/images/ad_logo.png"
winteger✓Width of the image in pixels.
Example: 230
hinteger✓Width of the image in pixels.
Example: 45
extanyExtension object

Video Response​

Location: assets[].video / Native Ads 1.2 Video Response object

Video object
Set to Bid Response.
Corresponds to the Video Object in the request, yet containing a value of a conforming VAST tag as a value

FieldTypeRequiredDescription
vasttagstring✓VAST XML.
Example: "<VAST version=\"3.0\">...</VAST>"

Data Response​

Location: assets[].data / Native Ads 1.2 Data Response object

Data object
Set to Bid Response.
Corresponds to the Data Object in the request, with the value filled in.

FieldTypeRequiredDescription
labelstringName of the data asset type. IAB extension
valuestring✓The formatted string of data to be displayed.
Example: "詳細はこちら"
Example: "more info"
extanyExtension object

Native 1.0.0.2 Request​

The Native Ads 1.0.0.2 request, sent as a string in imp.native.request.

Native Ad Markup Request​

Location: (root)

The Native Ads 1.0.0.2 request, set as a JSON string in imp.native.request, wrapped as {"native": {...}}.

FieldTypeRequiredDescription
nativeNative Markup Request✓Native object.

Native Markup Request​

Location: (root), native / Native Ads 1.0.0.2 Native Markup Request object

Native Object defines the native advertising opportunity available for bid via this bid request.

FieldTypeRequiredDescription
verstringVersion of the Native Markup version in use.
Example: "1.0.0.2"
layoutinteger✓Native layout ID (Native Layout IDs in Native Ads 1.0).
Values:
1: Content Wall
2: App Wall
3: News Feed
4: Chat List
5: Carousel
6: Content Stream
7: Grid adjoining the content
Example: 3
plcmtcntinteger✓Number of ads in the placement. Up to this many ads can be included in the bid response.
Example: 1
assetsarray of Asset Request✓Array of assets. Bids must follow the conditions of each asset.
extanyPlaceholder for extensions.

Asset Request​

Location: assets[] / Native Ads 1.0.0.2 Asset Request object

Asset Object
Set to Bid Request.

FieldTypeRequiredDescription
idinteger✓Unique ID of the asset. Not necessarily sequential.
Example: 1
requiredintegerWhether this asset is required.
Values:
0: Not required
1: Required
Example: 0
titleTitle RequestTitle asset.
imgImage RequestImage asset.
videoVideo RequestVideo asset.
dataData RequestData asset (description, sponsor name, etc.).
extanyPlaceholder for extensions.

Title Request​

Location: assets[].title / Native Ads 1.0.0.2 Title Request object

The Title object is to be used for title element of the Native ad.
Set to Bid Request

FieldTypeRequiredDescription
leninteger✓Maximum length of the text in the title element
Example: 10
extanyExtension object

Image Request​

Location: assets[].img / Native Ads 1.0.0.2 Image Request object

The Image object to be used for all image elements of the Native ad such as Icons, Main Image.
Set to Bid Request.

FieldTypeRequiredDescription
typeintegerImage asset type (Image Asset Types in Native Ads 1.0).
Values:
1: Icon: Icon image
3: Main: Large image preview for the ad
Example: 3
wminintegerThe minimum requested width of the image in pixels.
Example: 32
hminintegerThe minimum requested height of the image in pixels.
Example: 32
mimesarray of stringWhitelist of content MIME types supported.
Any type ca be accepted when this value is empty or undefined
Example: ["image/jpeg"]
extanyExtension object

Video Request​

Location: assets[].video / Native Ads 1.0.0.2 Video Request object

Video object
Set to Bid Request

FieldTypeRequiredDescription
mimesarray of stringWhitelist of content MIME types supported.
Example: ["video/mp4"]
mindurationinteger✓Minimum video ad duration in seconds.
Example: 30
maxdurationinteger✓Maximum video ad duration in
seconds.
Example: 60
protocolsarray of integer✓An array of video protocols supported in the bid response(Refer to OpenRtb Video Bid Response Protocols)
Values:
1: VAST 1.0
2: VAST 2.0
3: VAST 3.0
4: VAST 1.0 Wrapper
5: VAST 2.0 Wrapper
6: VAST 3.0 Wrapper
extanyExtension object

Data Request​

Location: assets[].data / Native Ads 1.0.0.2 Data Request object

The Data Object is to be used for all non-core elements of the native unit such as Brand Name,
Ratings, Review Count, Stars, Download count, descriptions etc.
Set to Bid Request.

FieldTypeRequiredDescription
typeinteger✓Data asset type. For Ad Generation specific types 501-503, see information icon.
Values:
1: sponsored : text
2: desc : text
3: rating : number formatted as string
4: likes : number formatted as string
5: downloads : number formatted as string
6: price : number formatted as string
7: saleprice : number formatted as string
8: phone : formatted string
9: address : text
10: desc2 : text
11: displayurl : text
12: ctatext : text
501: accompanying_text : text
502: optout_url : text
503: information_icon_url : text
Example: 1
lenintegerMaximum length of the text in
the element’s response.
Example: 30
extData Request ExtExtension object

Data Request Ext​

Location: assets[].data.ext

The Data Extension Object.

FieldTypeRequiredDescription
default_valuestringA default value, which is used when the value is not in bid response. ADG extension
Example: "my-default-value123"

Native 1.0.0.2 Response​

The Native Ads 1.0.0.2 response that DSPs return as a string in bid.adm.

Native Ad Markup Response​

Location: (root)

The Native Ads 1.0.0.2 response, set as a JSON string in seatbid.bid.adm, wrapped as {"native": {...}}.

FieldTypeRequiredDescription
nativeNative Markup Response✓Native object.

Native Markup Response​

Location: native / Native Ads 1.0.0.2 Native Markup Response object

Native Object.
Set in the bid response.

FieldTypeRequiredDescription
verstringVersion of the Native Markup version in use.
Example: "1.0.0.2"
assetsarray of Asset Response✓Array of assets.
linkLink Response✓Destination link for clicks.
imptrackersarray of stringArray of impression tracking URLs, expected to return a 1x1 image or 204 response.
Example: ["http://example.jp/imptrackers/v1/hoge?foo=bar"]
jstrackerstringOptional JavaScript impression tracker. This is a valid HTML,
Javascript is already wrapped in <script> tags.
It should be executed at impression time where it can be supported.
eventtrackersarray of Event Tracker ResponseArray of event trackers. IAB extension

Asset Response​

Location: native.assets[] / Native Ads 1.0.0.2 Asset Response object

Asset object for Bid Response.
Corresponds to the Asset Object in the request.

FieldTypeRequiredDescription
idinteger✓Unique asset ID, assigned by exchange,
must match one of the asset IDs in request
Example: 1
requiredintegerWhether asset is required or not. (bidder requires it to be displayed).
Values:
0: Not required
1: Required
titleTitle ResponseTitle asset.
imgImage ResponseImage asset.
videoVideo ResponseVideo asset.
dataData ResponseData asset (description, sponsor name, etc.).
extanyPlaceholder for exchange-specific extensions.

Location: native.link / Native Ads 1.0.0.2 Link Response object

Video object
Set to Bid Response.
When ad is clicked the action should take the user to the location of the link

FieldTypeRequiredDescription
urlstring✓Landing URL of the clickable link.
Example: "http://example.com/ad-generation/"
clicktrackersarray of stringList of third-party tracker URLs to be fired on click of the URL.
fallbackstringFallback URL for deeplink. To be used if the URL given in url is not supported by the device.
extanyExtension object

Event Tracker Response​

Location: native.eventtrackers[] / Native Ads 1.0.0.2 Event Tracker Response object

FieldTypeRequiredDescription
eventinteger✓Type of event.
methodinteger✓Type of tracking.
urlstringURL of the tracker.
customdatamap of stringCustom data passed to the tracker.
extEvent Tracker Response ExtPlaceholder for extensions.

Event Tracker Response Ext​

Location: native.eventtrackers[].ext

FieldTypeRequiredDescription
vendorKeystringVendor key of the company providing the OMID verification (e.g. company.com-omid). IAB extension
verification_parametersstringAdditional verification parameters passed to OM SDK. IAB extension

Title Response​

Location: native.assets[].title / Native Ads 1.0.0.2 Title Response object

Title object
Set to Bid Response.
Corresponds to the Title Object in the request, with the value filled in.

FieldTypeRequiredDescription
textstring✓The text associated with the text element.
Example: "スマホ広告収益最大化SSPツール - Ad Generation(アドジェネ)"
Example: "Ad Generation automatically maximize the revenue."
extanyExtension object

Image Response​

Location: native.assets[].img / Native Ads 1.0.0.2 Image Response object

Image object
Set to Bid Response.
Corresponds to the Image Object in the request.

FieldTypeRequiredDescription
urlstring✓URL of the image asset.
Example: "https://example.com/wp-content/themes/scaleout/images/ad_logo.png"
winteger✓Width of the image in pixels.
Example: 230
hinteger✓Width of the image in pixels.
Example: 45
extanyExtension object

Video Response​

Location: native.assets[].video / Native Ads 1.0.0.2 Video Response object

Video object
Set to Bid Response.
Corresponds to the Video Object in the request, yet containing a value of a conforming VAST tag as a value

FieldTypeRequiredDescription
vasttagstring✓VAST XML.
Example: "<VAST version=\"3.0\">...</VAST>"

Data Response​

Location: native.assets[].data / Native Ads 1.0.0.2 Data Response object

Data object
Set to Bid Response.
Corresponds to the Data Object in the request, with the value filled in.

FieldTypeRequiredDescription
labelstringName of the data asset type.
valuestring✓The formatted string of data to be displayed.
Example: "詳細はこちら"
Example: "more info"
extanyExtension object

Appendix​

Categories​

Ad Generation's own categories used for ad slot categories (site.cat / app.cat) and blocked categories (bcat). They can also be converted with a mapping the DSP specifies. The rightmost column is an example mapping to IAB categories.

CategoryNoteAd Generation codeIAB category (example)
EnteretaimentADG_entIAB1
Car/Vehiclesmaker, parts, shopADG_carIAB2
DetectiveADG_detectiveIAB11
Affiliate/Profit Contents/Internet Business ContentsADG_affiliateIAB3-11
Communication/Provider/PhoneADG_comIAB19-6
Job / Careercareer, part-timer, temporary staffingADG_jobIAB4
Education/Qualificationstudy abroad, language, correspondence educationADG_eduIAB5
Birth/Child careADG_birthIAB6-7
Care/welfareADG_careIAB6-9
Sports/FitnessADG_sportIAB17
HospitalADG_hospitalIAB7
Beauty SurgerCosmetic surgery and general beauty services given by doctor.ADG_surgerIAB18-1
Cosmetic Dentistry/LASIKCosmetic dentistry / Lasik given by doctor.ADG_dentistryIAB7-17
Clinical TrialADG_clitrialIAB7
Medical equipment/medicine/Oriental medicineADG_medicalIAB7
Complex(Diet, Breast augmentation, Hair removal, ladiesdiet, hair, body odorADG_compladiesIAB7-45
Complex(Nourishing tonic,body odor)Merchandise expecting effects from outside the body such as nourishment tonic and body odorADG_compmensIAB7-31
Complex(Hair, scalp, hair growth, hair transplantation)Merchandise expecting effects from outside the body, such as hair restoration and flocking.ADG_comphairIAB7
AlcoholADG_alcoholIAB8-5
Food/DrinkADG_foodIAB8
HobbiesADG_hobbieIAB9
GameADG_gameIAB9-30
Game(soft sexy)Game with sexual contents such as characters wearing swimwear, bust-up, excessive skin exposure, etc.There is no plan to sort on the DSP side Please respond.ADG_gamexsIAB25-3
Consumer Electronics / AV EquipmentADG_elecIAB10-1
Political groups / electionsADG_politicalIAB11-4
Government Authority/Municipality/Public OrganizationADG_orgIAB3-7
Legal IssuesADG_legalIAB11-2
Living Infrasturcture(Electric/Gas/Water Supply)ADG_infraIAB10
NewsADG_newsIAB12
TV/RadioADG_tvIAB1-7
Finance(Bank)ADG_bankIAB13-2
Finance(Insurance)ADG_insurIAB13-6
Finance(Securities)ADG_securIAB13-8
Finance(Investment)foreign exchange, futures, investment productsADG_investIAB13-11
Finance(Loan/Credit)consumer financeADG_loanIAB13-2
SNS/VideoSNS,Video serviceADG_snsIAB14
Dating app/siteDating appADG_datingIAB14-1
Dating app/site(casual, non-serious)Dating service that is not premised on marriage.ADG_datingxsIAB14-1
Marriage AgencyMajor marriage serviceADG_marriageIAB14-4
BridalWedding hall, bridal related serviceADG_bridalIAB14-4
SeniorADG_seniorIAB14-5
Ceremonial occasionADG_ceremonialIAB14-7
PetsADG_petsIAB16
Fashion/ApparelADG_fashionIAB18-3
Beauty care(Product)cosmeticsADG_cosmeIAB18-1
Beauty care(Service)hair/nail salon, store appealADG_beautyIAB18-1
health food(complex)supplement, drink(collagen, diet, liver, vision recovery etc)ADG_healcompIAB8-12
health food(nomal)Health foods and supplements that encourage constitution improvement by eating and drinkingADG_healnomalIAB8-12
softwareSoftware, virus software, e-mail service, etc.ADG_softwareIAB19
E-Book(normal)ADG_ebookIAB1-1
E-Book(Soft Porno)Swimwear, bust-up, excessive skin exposure, etc.ADG_ebookxsIAB1-1
E-Book(Porno)Something with sexual expression such as showing underwear, exposure, hugs etcADG_ebookxIAB25-3
TourismADG_tourismIAB20
Real Estatecondominium, rental apartment, newly-built house, renovationADG_estateIAB21
Real Estate InvestmentADG_reiIAB21-3
General mail orderADG_geneorderIAB22
CouponADG_couponIAB22-2
Store/shopADG_shopIAB22
Comparison ServiceADG_compareIAB22-3
Point/SweepstakesADG_pointIAB22-2
ReligionADG_religionIAB23
Fortune-tellingADG_fortuneIAB23-1
othersADG_othersIAB24
Public Gambling(lottery, TOTO, play)Public Gambling(lottery, TOTO, play)ADG_gambleIAB9-7
Gambling(Pachinko / Slot)Gambling(Pachinko / Slot)ADG_pachiIAB9-7
Other gambling(Casino etc)Public Gambling(lottery, TOTO, play)ADG_gambleoIAB9-7
CigaretteADG_cigaIAB9-9
Electronic CigaretteADG_elecigaIAB9-9
adultADG_adultIAB25-3
High income/Night jobscabaret club, sexy jobsADG_hincomeIAB25-3
Virtual currencyexchange, sales storeADG_vcurrencyIAB13-7

Information icon for native ads​

Native ads on Ad Generation can show an information icon that leads to the DSP's opt-out page. Provide the following three items either as Ad Generation specific data assets in the bid response or by telling Ad Generation beforehand. Values in the bid response take priority over the values given beforehand, so they can be switched per campaign. In Native 1.2, the opt-out page URL can also be returned in the standard privacy field. If both privacy and data asset 502 are given, 502 is used.

Data asset typeContent
501Text displayed next to the icon
502URL of the opt-out page opened when the icon is clicked
503URL of the icon image

In the bid request, these are included as optional data assets ("required": 0). For ad slots that must show the information icon and have no default opt-out page, 502 is marked as required ("required": 1).

501: Text next to the icon​

Bid request:

{"id": 501, "required": 0, "data": {"type": 501, "len": 22}}

The text should basically be just the company or service name. For example, if the company is MyDspA, use MyDspA rather than Ads by MyDspA. If it is not in the bid response, the value given beforehand is used; if there is none, AD is displayed.

{"id": 501, "data": {"value": "MyDspA"}}

502: Opt-out page URL​

Bid request:

{"id": 502, "required": 0, "data": {"type": 502, "len": 2000}}

If it is not in the bid response, privacy (Native 1.2) and then the URL given beforehand are used. If there is none, the information icon is not displayed.

{"id": 502, "data": {"value": "https://dsp1.example/optout.html"}}

503: Icon image URL​

Bid request:

{"id": 503, "required": 0, "data": {"type": 503, "len": 2000}}

The icon image must be 26x26 pixels. Publishers can choose a white or black background for the icon (white by default). If the background is black and data.ext.black_back is given, that image is used; otherwise the image in data.value is used. If it is not in the bid response, the image given beforehand is used; if there is none, the following images prepared by Ad Generation are used.

{"id": 503, "data": {"value": "https://dsp1.example/icon_white_back.png", "ext": {"black_back": "https://dsp1.example/icon_black_back.png"}}}