Banner
Guide for SSP Banner Inventory Integration with CJ MezzoMedia DSP
1. REQUEST
Construct the content below in JSON format according to the OpenRTB 2.5 specification, then call the above URL using the POST method.
Currently, only the information for fixed-price transactions is defined in the OpenRTB 2.5 specification. Information for RTB (Real-Time Bidding) will be added in a future update.
Request object
ssp_id
string
Y
SSP ID (issued by TARGETPICK)
id
string
Y
Unique request ID
cur
string array
N
Currency for auction (ISO-4217-alpha), e.g., “KRW”
at
integer
Y
0: fixed price
1: first price
2: second price
tmax
integer
Y
Maximum timeout (ms)
bcat
string array
N
Block advertiser categories based on IAB categories
badv
string array
N
Block advertiser domains
bapp
string array
N
Block app bundle or package names
Imp
id
string
Y
Unique impression ID
bidfloor
float
Y
Minimum bid price (e.g., 4.12)
bidfloorcur
string
Y
Currency (e.g., KRW)
secure
integer
Y
0: http
1: https
instl
integer
Y
Indicates interstitial (default : 0)
1: the ad is interstitial or full screen
0: not interstitial
displaymanager
string
Y
SSP platform or SDK name
displaymanagerver
string
Y
SSP platform or SDK version
Banner
imp / banner
w
integer
Y
Banner width
h
integer
Y
Banner height
Site
id
string
Y
Unique site ID managed by SSP
name
string
N
Site name
domain
string
Y
Site domain
page
string
N
Page URL
ref
string
N
Referrer URL
cat
string array
N
Categories
App
id
string
Y
Unique app ID managed by SSP
name
string
N
Application name
bundle
string
Y
Bundle or package name
storeurl
string
N
App store URL
cat
string array
N
Categories
Publisher
id
string
Y
Publisher ID
Device
ua
string
Y
User Agent
ip
string
Y
IPv4 address
model
string
N
Device model
os
string
Y
iOS , Android, mobile_web, pc_web
osv
string
Y
OS version (e.g., 8.1, 9.2)
ifa
string
Y
Apple IFA or Google ADID
geo
object
N
Country code (ISO 3166-1 Alpha-3)
User Agent (UA) is required for ad exchange transactions.
IP must be a public IP. Using private IP (e.g., from internal networks or routers) may limit ad delivery.
User
buyeruid
string
Y
Cookie matching ID received from Mezzo
Example
2. RESPONSE
Respond by composing the ad information in JSON format according to the OpenRTB 2.5 specification.
Currently, only information for fixed-price transactions is included, and RTB (Real-Time Bidding) details will be added later.
id
string
Y
Bid Request ID
bidid
string
Y
Bid response ID
cur
string
N
Bid currency in ISO-4217 code
seatbid
object array
Y
Seat Bid object
seat
string
Y
Bidder qualification code (not used)
bid
object array
Y
Array of Bid objects
id
string
Y
Bid object ID
impid
string
Y
Impression object ID
price
float
N
Bid price
adm
string
Y
Ad markup
iurl
string
Y
Image URL
nurl
string
Y
Impression URL
clickurl
string
Y
Click URL
Macro Applied on Tracking URL Call
In the response, if the values of the nurl, clickurl, or adm fields contain the macros below, replace them before responding.
${AUCTION_ID}
Replaced with the Bid Request ID so the tracking URL is called from the SSP
${AUCTION_PRICE}
Replaced with the WIN price on the SSP side. Converted to an encrypted integer value of 0 or greater. (The encryption method will be provided later.)
${SSP_CLICK_URL}
URI-encoded and replaced with a URL that allows the SSP to verify the click event by calling the SSP URL when a click event occurs
${SSP_CLICK_URL:2}
URI-encoded twice and replaced macro. When a click event occurs, the SSP URL is called so the click event can be verified
Example
3. Cookie Matching
The web performs ad audience matching through a separate process.
1
SSP provides a URL for cookie matching to the DSP:
http://ssphost/match?dsp_user_id={dsp_uid}
2
DSP installs the above URL in advance as a beacon on advertiser or service pages where cookie matching is possible. (At least 2–3 weeks before integration.)
3
When an audience visits the installed page, the browser requests the SSP URL with dsp_uid, and the SSP issues a cookie for the received dsp_uid value to ssphost.
4
Going forward, the SSP includes the issued dsp_uid value in Bid Requests sent to the DSP.
Ad Server Error Codes
3
Invalid parameter information delivered (invalid bid request)
4
No TARGETPICK inventory (invalid bid request)
5
No ad creative to serve
98
Invalid tracking information
99
Ad server error
HTTP Response Status Codes
200
Successful bid
Refer to 2.3.2
204
No bid / give up bidding
Empty body
400
Invalid bid request
Refer to 2.3.3
4. SKAdNetwork Support (iOS 14+)
This section describes support for campaigns where SKAdNetwork is enabled on iOS 14 or later.
1
The DSP must be registered as an Ad Network in Apple’s SKAdNetwork API. (https://developer.apple.com/documentation/storekit/skadnetwork/registering_an_ad_network)
2
A public key must be issued by Apple and a postback URL must be configured.
3
The SKAdNetwork ID issued by Apple must be shared with CJ MezzoMedia, which will request registration in the publisher’s info.plist.
4
When returning a response for SKAdNetwork-enabled campaigns, the DSP must include the SKAdNetwork ID and all related fields.
5
The advertiser app must register via registerAppForAdNetworkAttribution().
6
The DSP can receive install data via SKAdNetwork.
Additional Fields in Ad Request (SKAdNetwork)
BidRequest / imp / banner / ext / skadn
Prerequisites:
1
The DSP’s SKAdNetwork ID must be registered in the publisher’s info.plist.
2
The user device must run iOS 14 or higher.
3
A version of the SDK that supports SKAdNetwork must be installed.
4
The DSP must comply with CJ MezzoMedia Bid Request specifications.
version
string
Y
SKAdNetwork version (2.0 or higher)
“version”:”2.0”
sourceapp
string
Y
Publisher app ID registered in Apple App Store. Matches BidRequest.app.bundle
“sourceapp”:”000000000”
skadnetids
string
Y
SKAdNetwork IDs registered in publisher’s info.plist
“skadnetids”:[“feyaarzu9v.skadnetwork”]
Additional Fields in Ad Response (SKAdNetwork)
BidResponse / imp / banner / ext / skadn
version
string
Y
SKAdNetwork version (2.0 or higher)
“version”:”2.0”
network
string
Y
Ad network identifier. Must match at least one skadnetid in the request
“network”:[“feyaarzu9v.skadnetwork”]
campaign
string
Y
Campaign ID (integer between 1 and 100 per Apple spec)
“campaign”:”45”
itunesitem
string
Y
Advertiser app ID in App Store. Matches BidResponse.bid.bundle
“itunesitem”:”123456789”
nonce
string
Y
Unique ID for each ad response
“nonce”:”123b1a78-b5ef-98ad-1234-ab-c4effa00b8”
sourceapp
string
Y
Publisher app ID. Matches BidRequest.imp.ext.skad.sourceapp
“sourceapp”:”000000000”
timestamp
string
Y
Unix time as a string
“timestamp”:”1234567890”
signature
string
Y
SKAdNetwork signature provided by Apple
“signature”:”ABCDEFGHijkl-lmb…”
Example
Last updated