Cognio System Integration Guide for External DSP Systems
This document provides instructions for integrating external Demand-Side Platform (DSP) systems with the Cognio system. It outlines the requirements and steps necessary to establish an interface connection based on the OpenRTB protocol.
1. Overview
This document provides instructions for integrating external Demand-Side Platform (DSP) systems with the Cognio system. It outlines the requirements and steps necessary to establish an interface connection based on the OpenRTB protocol.
2. Integration Steps
To enable a DSP to connect to our system, the following steps are required:
Sign contract: Mutual agreement contract between cognio and DSP.
Register DSP account: Contact cognio Operations PIC to register DSP account in our system in order to receive the token. Note: Currently our system doesn’t support auto-registration, and it is necessary to contact cognio and provide relevant information in order to complete the account registration.
Proceed to system integration set-up: DSP needs to follow this document to build interface and set up integration. If there is any issue encountered during the process, our system will provide Product and Tech PIC to support and solve the issue accordingly.
Test: After integration is set up, DSP and our system need to arrange testing for the integration and make adjustments when necessary.
Live: After test completes, cognio PIC from business team will follow up with official launch of integrated online traffic and start to record cost.
3. Real-Time Bidding (RTB)3.1 Data Transmission
The connection between the DSP and our system follows the HTTP communication protocol. Bid Requests are sent via the POST method as the content of the HTTP request, using data in JSON format.
3.2 HTTP Request
The HTTP POST method is used to send Bid Requests, instead of HTTP GET, as it allows for more content to be attached and provides better support for binary data.
Request Header:
Name
Value
Remarks
x-openrtb-version
2.5
OpenRTB version
3.3 HTTP Response
If our system is participating in the bid/auction, the HTTP response status code should be 200, allowing it to respond to the Bid Request. Otherwise, the HTTP response status code should be 204.
3.4 Impression Volume and Cost Calculation
Billing is based on the number of impressions reported in the win notice (default win notice is in the nurl, if the DSP does not support the nurl, it’s in the burl) link statistics when a bid is won. Therefore, you need to replace the {AUCTION_PRICE}macro in the win notice URL when a bid is won.
The DSP must ensure that at most one ad is reported for an impression at a time and that the reported impression is within the validity of the impression delay required by Cognio.
Cognio limits the impression delay using the bidresponse.seatbid.bid.exp field.
3.5 Precautions
If the following fields in the request body are empty, the Cognio platform will consider the request invalid and will not process it.
bid.device.geo.country: The country of the user’s current network, using ISO-3166-1-alpha-3 standard bid.imp[].tagid: DSP’s ad space identifier bid.app.bundle: Package name information of the traffic source bid.device.ifa: Unique identifier allowed for advertisers, explicitly stated; Android passes gaid, iOS passes idfa bid.device.ua: User-Agent field in the HTTP request header of the user’s device bid.device.ip: IP address of the user’s current network
4. Real-Time Bidding (RTB) Interface Parameters
4.1 Bid Request
Parameter name
Type
Required?
Description
id
string
Yes
The only identification for Bid Request
imp
object array
Yes
1 request can include only 1 impression object at a time, which represents a specific ad display placement/position. Details can be found in imp object parameter definition below
app
object
Yes
App object info of DSP, recommended to use only on app instead of website. Details can be found in app object parameter definition below
device
object
Yes
Device info. Details can be found in device object parameter definition below
user
object
No
Device user / Ad audience. Details can be found in user object parameter definition below
at
integer
Yes
Bid settlement auction type. Value of 1 means it follows First-price auction, while value of 2 means it follows Second-price plus auction.
badv
string array
No
Domain name in blacklist
bapp
string array
No
App name in blacklist.On Android, these should be bundle or package names (e.g., com.foo.mygame). On iOS, these are numeric IDs.
regs
object
No
Any industry, legal, or governmental regulations in force
4.1.1 imp object
Parameter name
Type
Required?
Description
id
string
Yes
The only identification in a Bid Request for the specific display traffic sold. 1 request can include only 1 display traffic at a time
tagid
string
Yes
Fixed identification of each specific ad display placement/position
native
object
Yes for Native traffic
Refer to native object (Supports only Native ad placement)
banner
object
Yes for Banner traffic
Refer to banner object
video
object
Yes for Video traffic
Refer to video object
audio
object
Yes for Audio traffic
Refer to audio object
exp
integer
No
Duration that may elapse between the auction and the actual display / impression.Unit is in seconds
secure
integer
No
Parameter to indicate if Bid Request needs HTTPS encrypted info and markup to ensure data privacy.Value of 0 means it doesn’t need. Value of 1 means it needs. If left blank, means unknown, i.e. it doesn’t need encryption
bid floor
float
No
Minimum CPM bid price for this display traffic
bidfloorcur
string
Yes
Bid price currency, currently it only supports USD
4.1.2 banner object
Parameter name
Type
Required?
Description
id
string
No
Unique identifier for this banner object. Recommended when Banner objects are used with a Video object to represent an array of companion ads. Values usually start at 1 and increase with each object; should be unique within an impression.
w
integer
Yes
Exact width in device independent pixels (DIPS); If not specified wmin and wmax , this value refers to the required display width, otherwise refers to the desired width
h
integer
Yes
Exact height in device independent pixels (DIPS); If not specified hmin and hmax , this value refers to the required display height, otherwise refers to the desired height
pos
integer
No
Ad position on screen. Section 5.5 Ad Placement/Position Attribute is the reference of its enumerated values
mimes
string array
Yes
Content MIME types supported. Popular MIME types may include “application/x-shockwave-flash”, “image/jpg”, and “image/gif”。SHAREit support “image/jpg”,”image/png”, and “image/gif”
ext
object
No
Placeholder for exchange-specific extensions to OpenRTB
4.1.3 native object
Parameter name
Type
Required?
Description
request
string
Yes
Request must follow Native ad specification. Refer to native request object for details
ver
string
Yes
Use Dynamic Native Ads API version, default version is 1.2
api
integer array
No
Supported API frame of the display. Section 5.4 API frame is the reference of its enumerated values. Default setting of this parameter is that it doesn’t support any enumerated value, unless specified
battr
integer array
No
Restrictions of material attributes. Section 5.3 Creative attribute list is the reference of its enumerated values
4.1.4 native request object
Parameter name
Type
Required?
Description
assets
object array
Yes
Use asset request object to show the requirement of Native ad for assets and other elements. All assets and other elements should follow this request object
ver
string
Yes
Native Markup version, default version is 1.2
context
integer
No
Ad context. Section 5.10 Context Type IDs is the reference of its enumerated values
contextsubtype
integer
No
Ad context in more details. Section 5.11 Context Sub Type IDs is the reference of its enumerated values
4.1.5 asset request object
Parameter name
Type
Required?
Description
id
integer
Yes
The only identification ID of the object
required
integer
Yes
Indicate if the asset object is a must-have for client (bidder) in order to get a bid accepted. Value of 1 means yes. Value of 0 means it is not necessary
title
object
No
Title object for title assets. Refer to title object
img
object
No
Image object for image assets. Refer to img object
video
object
No
Video object for video assets. Refer to video object
data
object
No
Data object for data assets, eg. brand, description, rating, pricing etc.Refer to data object
4.1.6 title object
Parameter name
Type
Required?
Description
len
integer
Yes
Maximum title text length. Recommended text length is 25, 90, 140 characters
4.1.7 img object
Parameter name
Type
Required?
Description
type
integer
Yes
Indicate the specific type of image. Icon image: Value = 1 Large image: Value = 3
w
integer
No
Image width
wmin
integer
Yes
Minimum image width. Unit is in pixels
h
integer
No
Image height / length
hmin
integer
Yes
Minimum image height / length. Unit is in pixels
mimes
string array
No
Supported image mime-type, including but not limited to ‘image/jpg’and ‘image/gif’
4.1.8 video object
Parameter name
Type
Required?
Description
mimes
string array
Yes
Supported content mime-type. Currently it only supports ‘video/mp4’
minduration
integer
Yes
Minimum video ad length. Unit is in seconds
maxduration
integer
Yes
Maximum video ad length. Unit is in seconds
protocols
integer array
Yes
Applicable video protocol for DSP in Bid Response. Currently it only supports type 3, i.e. vast 3.0 protocol
4.1.9 data object
Parameter name
Type
Required?
Description
type
string array
Yes
Indicate data object type ID. Each data object has a specific type. Section 5.12 Data Asset Type is the reference of its enumerated values
len
integer
Yes
Maximum number of characters allowed
4.1.10 app object
Parameter name
Type
Required?
Description
id
string
No
Internal definition of app ID
name
string
No
Internal definition of app name
bundle
string
Yes
App package name info
domain
string
No
App domain name, eg. mygame.foo.com
cat
string array
No
App IAB category.Section 5.1 IAB category is the reference of its enumerated values
ver
string
No
App version
DSP
object
Yes
DSP info.Refer to DSP object
4.1.11 DSP object
Parameter name
Type
Required?
Description
id
string
Yes
DSP ID, to apply for token info
name
string
No
DSP name
domain
string
No
DSP’s highest domain name, eg. ‘DSP.com’
cat
string array
No
App IAB category. Section 5.1 IAB category is the reference of its enumerated values
4.1.12 device object
Parameter name
Type
Required?
Description
ua
string
Yes
User-Agent field in HTTP request thread of user device
ip
string
Yes
ipv4 address of user’s current network
geo
object
Yes
Current geographic info of user. Refer to geo object
didsha1
string
No
Hardware device ID (eg. IMEI), via SHA1 hash
didmd5
string
No
Hardware device ID (eg. IMEI), via MD5 hash
dpidsha1
string
No
Platform device ID (eg. Android ID), via SHA1 hash
dpidmd5
string
No
Platform device ID (eg. Android ID), via MD5 hash
macsha1
string
No
Device MAC address, via SHA1 hash
macmd5
string
No
Device MAC address, via MD5 hash
make
string
No
Device manufacturer (eg. ‘Apple’)
model
string
No
Device model (eg. ‘iPhone’)
os
string
Yes
Operation system (eg. Android, iOS)
osv
string
No
Operation system version
language
string
No
Device language, following ISO-639-1-alpha-2. If unknown, put ‘unknown’
connectiontype
integer
No
Network connection mode. Section 5.8 Network Connection Mode is the reference of its enumerated values
devicetype
integer
No
Device type. Section 5.7 Device type is the reference of its enumerated values
h
integer
No
Screen physical height / length.Unit is in pixels
w
integer
No
Screen physical width.Unit is in pixels
js
integer
No
Indicate if js is supported. Value of 0 means not supported. Value of 1 means supported.
ppi
integer
No
Screen size.Unit is in pixel per inch
dnt
integer
No
‘Do Not Track’ identification set by browser in HTTP thread. Value of 0 means tracking is not restricted. Value of 1 means tracking is restricted / not allowed.
lmt
integer
No
Indicate user’s authorization for ad tracking. Value of 0 means tracking is not restricted. Value of 1 means tracking is restricted / not allowed.
ifa
string
Yes
Identification used by client.Andorid: gaid, iOS: idfa
mccmnc
string
No
Mobile network carrier
4.1.13 geo object
Parameter name
Type
Required?
Description
lat
float
No
Latitude info, data range is (-90.0,+90.0). Negative value means South
lon
float
No
Longitude info, data range is (-180.0,+180.0). Negative value means West.
type
integer
No
Source type of geo info. Value of 1 means by GPS/Location service. Value of 2 means by IP address. Value of 3 means provided by user.Section 5.13 Location Typeis the reference of its enumerated values
accuracy
integer
No
Accuracy in meters. When latitude/longitude info is obtained by GPS/Location service, this field is reported.
ipservice
integer
No
IP address provider, applicable for type = 2.Section **5.14 IP Location Type **is the reference of its enumerated values
country
string
Yes
Country code following ISO-3166-1-alpha-3
region
string
No
Region code following ISO-3166-2.If country is USA, 2-letter state code is used
city
string
No
City code following UN/LOCODE
zip
string
No
Postal code
utcoffset
integer
No
Local time difference from UTC time, +/- in minutes
4.1.14 user object
Parameter name
Type
Required?
Description
id
string
No
User ID
buyeruid
string
No
User ID defined by buyer
gender
string
No
Gender. Value of M means male, F means female, 0 means other gender.
geo
object
No
User geo info
yob
integer
No
Year of birth, 4-digit number.
keywords
string
No
Keywords list of user’s interests / intentions list, separated by comma (,)
customdata
string
No
Customized data
data
object array
No
Extra user data. Each data object represents a different data source
4.1.15 data object
Parameter name
Type
Required?
Description
id
string
No
ID of data provider
name
string
No
Name of data provider
segment
object array
No
Data segment that includes the actual data info.Refer to segment object
4.1.16 segment object
Parameter name
Type
Required?
Description
id
string
No
Segment ID defined by data provider
name
string
No
Segment name defined by data provider
value
string
No
Segment value
4.2 Bid Response
Parameter name
Type
Required?
Description
id
string
Yes
Identification for Bid Request, i.e. request id included in Bid Request section above
seatbid
object array
Yes
One set of SeatBid object. If a bid is offered, at least one SeatBid is filled in
bidid
string
No
Response ID generated for each bidder, assisting with logs or tracking transaction
cur
string
No
Unit of bid currency used, code following ISO-4217. If left blank, USD is used by default
ext
object
No
Placeholder for bidder-specific extensions to OpenRTB
4.2.1 seatbid object
Parameter name
Type
Required?
Description
bid
object array
Yes
Array that includes at least 1 bid object. Each object is related to 1 display / impression
seat
string
No
Seat identification that represents the client (bidder, eg. advertiser, agency) on whose behalf this bid is made
group
interger
No
Indicate if all bids can win or fail at the same time. Default value is 0, meaning independent bid is allowed. Value of 1 means a group of bids win or fail at the same time.
ext
object
No
Placeholder for bidder-specific extensions to OpenRTB
4.2.2 bid object
Parameter name
Type
Required?
Description
id
string
Yes
Bid ID generated for each bidder, used for recording logs or tracking acitivity
impid
string
Yes
ID of imp object related to a Bid request
price
float
Yes
CPM price for each display
adid
string
No
Preloaded ad ID that can be used when a bid offer wins
nurl
string
No
Nurl link for notification when a bid wins, and will then be used by transaction platform
burl
string
Yes
Billing notice URL called by the exchange when a winning bid becomes billable based on exchange-specific business policy (e.g.,typically delivered, viewed, etc.).Substitution macros ${AUCTION_PRICE} may be included
adm
string
Yes
Convey ad content.Native ad uses adm field to return ad content. Refer to native ad response below for more detailsVideo ad uses adm field to return ad content in vast format. Refer to vast video response below for more details
Image link to indicate ad campaign content, used for quality or security tracking
cid
string
No
Campaign ID, to assist with ad QC. Each cid has one set of creatives, which is the creatives represented by iurl
crid
string
No
ID of a set of creatives, to assist with ad QC
cat
string array
Yes
IAB category of creative.Section 5.1 IAB category is the reference of its enumerated values
attr
integer array
No
Attribute array to describe creative.Section 5.3 Creative attribute list is the reference of its enumerated values
api
integer
No
Supported API frame of the display. Section 5.4 API frame is the reference of its enumerated values
protocol
integer
No
Supported video Bid Response protocol. Section 5.6 Video bid response protocol is the reference of its enumerated values
qagmediarating
integer
Yes
Indicate rating of creative content following IQG standard.Section 5.9 IQG media rating is the reference of its enumerated values
dealid
string
No
Refer to deal.id****from the bid request if this bid pertains to a private marketplace direct deal
w
integer
No
Creative width. Unit is in pixels
h
integer
No
Creative height. Unit is in pixels
exp
integer
No
Duration that the bidder is willing to wait between the auction and the actual display / impression.Unit is in seconds, with default value of 3600
ext
object
No
Placeholder for bidder-specific extensions to OpenRTB
4.2.3 native ad response
Native ad response content is saved in adm field, with the content including 1 native object. Native format supports native version 1.2 protocol.
Native object has following attributes:
Parameter name
Type
Required?
Description
ver
string
No
Native Markup version in use
assets
array of objects
Yes
List of native ad’s assets.Refer to asset response object
link
object
Yes
Destination link if the ad is clicked.Refer to link object
imptrackers
array of string
Yes
Array of impression tracking URLs.When a display / impression happens, tracking URLs are reported and used as the reference for cost calculation
ext
Object
No
Placeholder that may contain custom JSON
4.2.4 asset response object
Asset response object must strictly follow asset object in the Bid Request. Each object corresponds to an ID, which matches with the asset request object ID.
Parameter name
Type
Required?
Description
id
int
Yes
Asset ID that matches with ID in Bid Request
required
int
No
Set to 1 if asset is required (bidder requires it to be displayed)
title
object
No
Title object for title assets. Refer to title object
img
object
No
Image object for image assets. Refer to img object
video
object
No
Video object for video assets. Refer to video object
data
object
No
Data object for data assets, eg. rating, pricing.Refer to data object
ext
object
No
Placeholder that may contain custom JSON
4.2.5 title object
Parameter name
Type
Required?
Description
text
string
Yes
Title text
len
integer
No
Length of title text
ext
object
No
Placeholder that may contain custom JSON
4.2.6 Img object
Parameter name
Type
Required?
Description
type
integer
No
Required for assetsurl or dcourl responses, not required for embedded asset responsesIcon image: Value = 1 Large image: Value = 3
url
string
Yes
URL of the image asset
w
integer
Yes
Image width in pixels
h
integer
Yes
Image height in pixels
ext
object
No
Placeholder that may contain custom JSON
4.2.7 data object
Parameter name
Type
Required?
Description
type
integer
No
Type ID of data element, must follow 5.12 Data Asset Typeif to be submitted
label
string
No
Name of data element, must follow 5.12 Data Asset Typeif to be submitted
value
string
Yes
Formatted string of data, based on the requirement of each data type
ext
object
No
Placeholder that may contain custom JSON
4.2.8 video object
Video response object uses vasttag parameter for video content in vast format.
Note: Video in native ad response is just one type of assets. Therefore, it doesn’t support impression and click tracking that aims only at video. Instead, it can support tracking of the rate of progress when a video is being played.
Parameter name
Type
Required?
Description
vasttag
string
Yes
Indicate video content in vast format
4.2.9 link object
Parameter name
Type
Required?
Description
url
string
Yes
Landing URL of the clickable link
clicktrackers
array of strings
No
List of third-party tracker URLs tobe fired on click of the URL
ext
object
No
Placeholder that may contain custom JSON
5. RTB Interface Enumerated Value List5.1 IAB Category Enumerated Value
Value
Description
IAB1
Arts & Entertainment
IAB1-1
Books & Literature
IAB1-2
Celebrity Fan/Gossip
IAB1-3
Fine Art
IAB1-4
Humor
IAB1-5
Movies
IAB1-6
Music
IAB1-7
Television
IAB2
Automotive
IAB2-1
Auto Parts
IAB2-2
Auto Repair
IAB2-3
Buying/Selling Cars
IAB2-4
Car Culture
IAB2-5
Certified Pre-Owned
IAB2-6
Convertible
IAB2-7
Coupe
IAB2-8
Crossover
IAB2-9
Diesel
IAB2-10
Electric Vehicle
IAB2-11
Hatchback
IAB2-12
Hybrid
IAB2-13
Luxury
IAB2-14
Minivan
IAB2-15
Motorcycles
IAB2-16
Off-Road Vehicles
IAB2-17
Performance Vehicles
IAB2-18
Pickup
IAB2-19
Road-Side Assistance
IAB2-20
Sedan
IAB2-21
Trucks & Accessories
IAB2-22
Vintage Cars
IAB2-23
Wagon
IAB3
Business
IAB3-1
Advertising
IAB3-2
Agriculture
IAB3-3
Biotech/Biomedical
IAB3-4
Business Software
IAB3-5
Construction
IAB3-6
Forestry
IAB3-7
Government
IAB3-8
Green Solutions
IAB3-9
Human Resources
IAB3-10
Logistics
IAB3-11
Marketing
IAB3-12
Metals
IAB4
Careers
IAB4-1
Career Planning
IAB4-2
College
IAB4-3
Financial Aid
IAB4-4
Job Fairs
IAB4-5
Job Search
IAB4-6
Resume Writing/Advice
IAB4-7
Nursing
IAB4-8
Scholarships
IAB4-9
Telecommuting
IAB4-10
U.S. Military
IAB4-11
Career Advice
IAB5
Education
IAB5-1
7-12 Education
IAB5-2
Adult Education
IAB5-3
Art History
IAB5-4
College Administration
IAB5-5
College Life
IAB5-6
Distance Learning
IAB5-7
English as a 2nd Language
IAB5-8
Language Learning
IAB5-9
Graduate School
IAB5-10
Homeschooling
IAB5-11
Homework/Study Tips
IAB5-12
K-6 Educators
IAB5-13
Private School
IAB5-14
Special Education
IAB5-15
Studying Business
IAB6
Family & Parenting
IAB6-1
Adoption
IAB6-2
Babies & Toddlers
IAB6-3
Daycare/Pre School
IAB6-4
Family Internet
IAB6-5
Parenting – K-6 Kids
IAB6-6
Parenting teens
IAB6-7
Pregnancy
IAB6-8
Special Needs Kids
IAB6-9
Eldercare
IAB7
Health & Fitness
IAB7-1
Exercise
IAB7-2
ADD
IAB7-3
AIDS/HIV
IAB7-4
Allergies
IAB7-5
Alternative Medicine
IAB7-6
Arthritis
IAB7-7
Asthma
IAB7-8
Autism/PDD
IAB7-9
Bipolar Disorder
IAB7-10
Brain Tumor
IAB7-11
Cancer
IAB7-12
Cholesterol
IAB7-13
Chronic Fatigue Syndrome
IAB7-14
Chronic Pain
IAB7-15
Cold & Flu
IAB7-16
Deafness
IAB7-17
Dental Care
IAB7-18
Depression
IAB7-19
Dermatology
IAB7-20
Diabetes
IAB7-21
Epilepsy
IAB7-22
GERD/Acid Reflux
IAB7-23
Headaches/Migraines
IAB7-24
Heart Disease
IAB7-25
Herbs for Health
IAB7-26
Holistic Healing
IAB7-27
IBS/Crohn’s Disease
IAB7-28
Incest/Abuse Support
IAB7-29
Incontinence
IAB7-30
Infertility
IAB7-31
Men’s Health
IAB7-32
Nutrition
IAB7-33
Orthopedics
IAB7-34
Panic/Anxiety Disorders
IAB7-35
Pediatrics
IAB7-36
Physical Therapy
IAB7-37
Psychology/Psychiatry
IAB7-38
Senior Health
IAB7-39
Sexuality
IAB7-40
Sleep Disorders
IAB7-41
Smoking Cessation
IAB7-42
Substance Abuse
IAB7-43
Thyroid Disease
IAB7-44
Weight Loss
IAB7-45
Women’s Health
IAB8
Food & Drink
IAB8-1
American Cuisine
IAB8-2
Barbecues & Grilling
IAB8-3
Cajun/Creole
IAB8-4
Chinese Cuisine
IAB8-5
Cocktails/Beer
IAB8-6
Coffee/Tea
IAB8-7
Cuisine-Specific
IAB8-8
Desserts & Baking
IAB8-9
Dining Out
IAB8-10
Food Allergies
IAB8-11
French Cuisine
IAB8-12
Health/Low-Fat Cooking
IAB8-13
Italian Cuisine
IAB8-14
Japanese Cuisine
IAB8-15
Mexican Cuisine
IAB8-16
Vegan
IAB8-17
Vegetarian
IAB8-18
Wine
IAB9
Hobbies & Interests
IAB9-1
Art/Technology
IAB9-2
Arts & Crafts
IAB9-3
Beadwork
IAB9-4
Bird-Watching
IAB9-5
Board Games/Puzzles
IAB9-6
Candle & Soap Making
IAB9-7
Card Games
IAB9-8
Chess
IAB9-9
Cigars
IAB9-10
Collecting
IAB9-11
Comic Books
IAB9-12
Drawing/Sketching
IAB9-13
Freelance Writing
IAB9-14
Genealogy
IAB9-15
Getting Published
IAB9-16
Guitar
IAB9-17
Home Recording
IAB9-18
Investors & Patents
IAB9-19
Jewelry Making
IAB9-20
Magic & Illusion
IAB9-21
Needlework
IAB9-22
Painting
IAB9-23
Photography
IAB9-24
Radio
IAB9-25
Roleplaying Games
IAB9-26
Sci-Fi & Fantasy
IAB9-27
Scrapbooking
IAB9-28
Screenwriting
IAB9-29
Stamps & Coins
IAB9-30
Video & Computer Games
IAB9-31
Woodworking
IAB10
Home & Garden
IAB10-1
Appliances
IAB10-2
Entertaining
IAB10-3
Environmental Safety
IAB10-4
Gardening
IAB10-5
Home Repair
IAB10-6
Home Theater
IAB10-7
Interior Decorating
IAB10-8
Landscaping
IAB10-9
Remodeling & Construction
IAB11
Law, Government, & Politics
IAB11-1
Immigration
IAB11-2
Legal Issues
IAB11-3
U.S. Government Resources
IAB11-4
Politics
IAB11-5
Commentary
IAB12
News
IAB12-1
International News
IAB12-2
National News
IAB12-3
Local News
IAB13
Personal Finance
IAB13-1
Beginning Investing
IAB13-2
Credit/Debt & Loans
IAB13-3
Financial News
IAB13-4
Financial Planning
IAB13-5
Hedge Fund
IAB13-6
Insurance
IAB13-7
Investing
IAB13-8
Mutual Funds
IAB13-9
Options
IAB13-10
Retirement Planning
IAB13-11
Stocks
IAB13-12
Tax Planning
IAB14
Society
IAB14-1
Dating
IAB14-2
Divorce Support
IAB14-3
Gay Life
IAB14-4
Marriage
IAB14-5
Senior Living
IAB14-6
Teens
IAB14-7
Weddings
IAB14-8
Ethnic Specific
IAB15
Science
IAB15-1
Astrology
IAB15-2
Biology
IAB15-3
Chemistry
IAB15-4
Geology
IAB15-5
Paranormal Phenomena
IAB15-6
Physics
IAB15-7
Space/Astronomy
IAB15-8
Geography
IAB15-9
Botany
IAB15-10
Weather
IAB16
Pets
IAB16-1
Aquariums
IAB16-2
Birds
IAB16-3
Cats
IAB16-4
Dogs
IAB16-5
Large Animals
IAB16-6
Reptiles
IAB16-7
Veterinary Medicine
IAB17
Sports
IAB17-1
Auto Racing
IAB17-2
Baseball
IAB17-3
Bicycling
IAB17-4
Bodybuilding
IAB17-5
Boxing
IAB17-6
Canoeing/Kayaking
IAB17-7
Cheerleading
IAB17-8
Climbing
IAB17-9
Cricket
IAB17-10
Figure Skating
IAB17-11
Fly Fishing
IAB17-12
Football
IAB17-13
Freshwater Fishing
IAB17-14
Game & Fish
IAB17-15
Golf
IAB17-16
Horse Racing
IAB17-17
Horses
IAB17-18
Hunting/Shooting
IAB17-19
Inline Skating
IAB17-20
Martial Arts
IAB17-21
Mountain Biking
IAB17-22
NASCAR Racing
IAB17-23
Olympics
IAB17-24
Paintball
IAB17-25
Power & Motorcycles
IAB17-26
Pro Basketball
IAB17-27
Pro Ice Hockey
IAB17-28
Rodeo
IAB17-29
Rugby
IAB17-30
Running/Jogging
IAB17-31
Sailing
IAB17-32
Saltwater Fishing
IAB17-33
Scuba Diving
IAB17-34
Skateboarding
IAB17-35
Skiing
IAB17-36
Snowboarding
IAB17-37
Surfing/Body-Boarding
IAB17-38
Swimming
IAB17-39
Table Tennis/Ping-Pong
IAB17-40
Tennis
IAB17-41
Volleyball
IAB17-42
Walking
IAB17-43
Waterski/Wakeboard
IAB17-44
World Soccer
IAB18
Style & Fashion
IAB18-1
Beauty
IAB18-2
Body Art
IAB18-3
Fashion
IAB18-4
Jewelry
IAB18-5
Clothing
IAB18-6
Accessories
IAB19
Technology & Computing
IAB19-1
3-D Graphics
IAB19-2
Animation
IAB19-3
Antivirus Software
IAB19-4
C/C++
IAB19-5
Cameras & Camcorders
IAB19-6
Cell Phones
IAB19-7
Computer Certification
IAB19-8
Computer Networking
IAB19-9
Computer Peripherals
IAB19-10
Computer Reviews
IAB19-11
Data Centers
IAB19-12
Databases
IAB19-13
Desktop Publishing
IAB19-14
Desktop Video
IAB19-15
Email
IAB19-16
Graphics Software
IAB19-17
Home Video/DVD
IAB19-18
Internet Technology
IAB19-19
Java
IAB19-20
JavaScript
IAB19-21
Mac Support
IAB19-22
MP3/MIDI
IAB19-23
Net Conferencing
IAB19-24
Net for Beginners
IAB19-25
Network Security
IAB19-26
Palmtops/PDAs
IAB19-27
PC Support
IAB19-28
Portable
IAB19-29
Entertainment
IAB19-30
Shareware/Freeware
IAB19-31
Unix
IAB19-32
Visual Basic
IAB19-33
Web Clip Art
IAB19-34
Web Design/HTML
IAB19-35
Web Search
IAB19-36
Windows
IAB20
Travel
IAB20-1
Adventure Travel
IAB20-2
Africa
IAB20-3
Air Travel
IAB20-4
Australia & New Zealand
IAB20-5
Bed & Breakfasts
IAB20-6
Budget Travel
IAB20-7
Business Travel
IAB20-8
By US Locale
IAB20-9
Camping
IAB20-10
Canada
IAB20-11
Caribbean
IAB20-12
Cruises
IAB20-13
Eastern Europe
IAB20-14
Europe
IAB20-15
France
IAB20-16
Greece
IAB20-17
Honeymoons/Getaways
IAB20-18
Hotels
IAB20-19
Italy
IAB20-20
Japan
IAB20-21
Mexico & Central America
IAB20-22
National Parks
IAB20-23
South America
IAB20-24
Spas
IAB20-25
Theme Parks
IAB20-26
Traveling with Kids
IAB20-27
United Kingdom
IAB21
Real Estate
IAB21-1
Apartments
IAB21-2
Architects
IAB21-3
Buying/Selling Homes
IAB22
Shopping
IAB22-1
Contests & Freebies
IAB22-2
Couponing
IAB22-3
Comparison
IAB22-4
Engines
IAB23
Religion & Spirituality
IAB23-1
Alternative Religions
IAB23-2
Atheism/Agnosticism
IAB23-3
Buddhism
IAB23-4
Catholicism
IAB23-5
Christianity
IAB23-6
Hinduism
IAB23-7
Islam
IAB23-8
Judaism
IAB23-9
Latter-Day Saints
IAB23-10
Pagan/Wiccan
IAB24****IAB25
Uncategorized****Non-Standard Content
IAB25-1
Unmoderated UGC
IAB25-2
Extreme Graphic/Explicit Violence
IAB25-3
Pornography
IAB25-4
Profane Content
IAB25-5
Hate Content
IAB25-6
Under Construction
IAB25-7
Incentivized
IAB26
Illegal Content
IAB26-1
Illegal Content
IAB26-2
Warez
IAB26-3
Spyware/Malware
IAB26-4
Copyright Infringement
5.2 Banner Ad Type Enumerated Value
Value
Description
1
XHTML Text Ad (usually mobile)
2
XHTML Banner Ad. (usually mobile)
3
JavaScript Ad; must be valid XHTML (i.e., Script Tags Included)
Ad Provides Skip Button (e.g. VPAID-rendered skip button on pre-roll video)
17
Adobe Flash
5.4 API Frame Enumerated Value
Value
Description
1
VPAID 1.0
2
VPAID 2.0
3
MRAID-1
4
ORMMA
5
MRAID-2
6
MRAID-3
5.5 Ad Placement / Position Attribute Enumerated Value
Value
Description
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
5.6 Video Bid Response Protocol Enumerated Value
Value
Description
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
DAAST 1.0
5.7 Device Type Enumerated Value
Value
Description
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
5.8 Network Connection Mode Enumerated Value
Value
Description
0
Unknown
1
Ethernet
2
WIFI
3
Cellular Network – Unknown Generation
4
Cellular Network – 2G
5
Cellular Network – 3G
6
Cellular Network – 4G
7
Cellular Network – 5G
5.9 IQG Media Rating Enumerated Value
Value
Description
1
All Audiences
2
Everyone Over 12
3
Mature Audiences
5.10 Context Type IDs
Value
Description
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.
5.11 Context Sub Type IDs
Value
Description
10
General or mixed content.
11
Primarily article content (which of course could include images, etc as part of the article)
12
Primarily video content
13
Primarily audio content
14
Primarily image content
15
User-generated content – forums, comments, etc
20
General social content such as a general social network
21
Primarily email content
22
Primarily chat/IM content
30
Content focused on selling products, whether digital or physical
31
Application store/marketplace
32
Product reviews site primarily (which may sell product secondarily)
5.12 Data Asset Type
Type ID
Name
Description
1
sponsored
Sponsored By message where response should contain the brand name of the sponsor.
2
desc
Descriptive text associated with the product or service being advertised. Longer length of text in response may be truncated or ellipsed by the exchange.
3
rating
Rating of the product being offered to the user. For example an app’s rating in an app store from 0-5.
4
likes
Number of social ratings or “likes” of the product being offered to the user.
5
downloads
Number downloads/installs of this product
6
price
Price for product / app / in-app purchase. Value should include currency symbol in localised format.
7
saleprice
Sale price that can be used together with price to indicate a discounted price compared to a regular price. Value should include currency symbol in localised format.
8
phone
Phone number
9
address
Address
10
desc2
Additional descriptive text associated with the product or service being advertised
11
displayurl
Display URL for the text ad. To be used when sponsoring entity doesn’t own the content. IE sponsored by BRAND on SITE (where SITE is transmitted in this field).
12
ctatext
CTA description – descriptive text describing a ‘call to action’ button for the destination URL.
5.13 Location Type
Value
Description
1
GPS/Location Services
2
IP Address
3
User provided (e.g., registration data)
5.14 IP Location Services
Value
Description
1
ip2location
2
Neustar (Quova)
3
MaxMind
4
NetAcuity (Digital Element)
Cognio System Integration Guide for External SSP Systems
This document provides instructions for integrating external Supply-Side Platform (SSP) systems with the Cognio system. It outlines the requirements and steps necessary to establish an interface connection based on the OpenRTB protocol.
1. Overview
This document provides instructions for integrating external Supply-Side Platform (SSP) systems with the Cognio system. It outlines the requirements and steps necessary to establish an interface connection based on the OpenRTB protocol.
2. Integration Steps
To enable a Publisher to connect to our system, the following steps are required:
Live Launch: After testing is complete, the Cognio PIC from the business team will follow up with the official launch of integrated online traffic and begin recording costs.
Contract Signing: A mutual agreement contract must be established between Cognio and the Publisher.
Publisher Account Registration: Contact the Cognio Operations Point of Contact (PIC) to register a Publisher account in our system to receive a token. Please note that our system currently does not support automatic registration. It is necessary to contact Cognio and provide relevant information to complete account registration.
System Integration Setup: The Publisher must follow this document to build the interface and set up the integration. If any issues are encountered during the process, our system will provide a Product and Technical PIC to support and resolve them accordingly.
Testing: Once integration is set up, the Publisher and our system need to arrange testing for the integration and make adjustments as necessary.
3. Real-Time Bidding (RTB)3.1 Data Transmission
The connection between the Publisher and our system follows the HTTP communication protocol. Bid Requests are sent via the POST method as the content of the HTTP request, using data in JSON format.
3.2 HTTP Request
The HTTP POST method is used to send Bid Requests, instead of HTTP GET, as it allows for more content to be attached and provides better support for binary data.
Request Header:
Name
Value
Remarks
x-openrtb-version
2.5
OpenRTB version
3.3 HTTP Response
If our system is participating in the bid/auction, the HTTP response status code should be 200, allowing it to respond to the Bid Request. Otherwise, the HTTP response status code should be 204.
3.4 Impression Volume and Cost Calculation
Billing is based on the number of impressions reported in the win notice (default win notice is in the nurl, if the Publisher does not support the nurl, it’s in the burl) link statistics when a bid is won. Therefore, you need to replace the {AUCTION_PRICE}macro in the win notice URL when a bid is won.
The Publisher must ensure that at most one ad is reported for an impression at a time and that the reported impression is within the validity of the impression delay required by Cognio.
Cognio limits the impression delay using the bidresponse.seatbid.bid.exp field.
3.5 Precautions
If the following fields in the request body are empty, the Cognio platform will consider the request invalid and will not process it.
bid.device.geo.country: The country of the user’s current network, using ISO-3166-1-alpha-3 standard bid.imp[].tagid: Publisher’s ad space identifier bid.app.bundle: Package name information of the traffic source bid.device.ifa: Unique identifier allowed for advertisers, explicitly stated; Android passes gaid, iOS passes idfa bid.device.ua: User-Agent field in the HTTP request header of the user’s device bid.device.ip: IP address of the user’s current network
4. Real-Time Bidding (RTB) Interface Parameters
4.1 Bid Request
Parameter name
Type
Required?
Description
id
string
Yes
The only identification for Bid Request
imp
object array
Yes
1 request can include only 1 impression object at a time, which represents a specific ad display placement/position. Details can be found in imp object parameter definition below
app
object
Yes
App object info of Publisher, recommended to use only on app instead of website. Details can be found in app object parameter definition below
device
object
Yes
Device info. Details can be found in device object parameter definition below
user
object
No
Device user / Ad audience. Details can be found in user object parameter definition below
at
integer
Yes
Bid settlement auction type. Value of 1 means it follows First-price auction, while value of 2 means it follows Second-price plus auction.
badv
string array
No
Domain name in blacklist
bapp
string array
No
App name in blacklist.On Android, these should be bundle or package names (e.g., com.foo.mygame). On iOS, these are numeric IDs.
regs
object
No
Any industry, legal, or governmental regulations in force
4.1.1 imp object
Parameter name
Type
Required?
Description
id
string
Yes
The only identification in a Bid Request for the specific display traffic sold. 1 request can include only 1 display traffic at a time
tagid
string
Yes
Fixed identification of each specific ad display placement/position
native
object
Yes for Native traffic
Refer to native object (Supports only Native ad placement)
banner
object
Yes for Banner traffic
Refer to banner object
video
object
Yes for Video traffic
Refer to video object
audio
object
Yes for Audio traffic
Refer to audio object
exp
integer
No
Duration that may elapse between the auction and the actual display / impression.Unit is in seconds
secure
integer
No
Parameter to indicate if Bid Request needs HTTPS encrypted info and markup to ensure data privacy.Value of 0 means it doesn’t need. Value of 1 means it needs. If left blank, means unknown, i.e. it doesn’t need encryption
bid floor
float
No
Minimum CPM bid price for this display traffic
bidfloorcur
string
Yes
Bid price currency, currently it only supports USD
4.1.2 banner object
Parameter name
Type
Required?
Description
id
string
No
Unique identifier for this banner object. Recommended when Banner objects are used with a Video object to represent an array of companion ads. Values usually start at 1 and increase with each object; should be unique within an impression.
w
integer
Yes
Exact width in device independent pixels (DIPS); If not specified wmin and wmax , this value refers to the required display width, otherwise refers to the desired width
h
integer
Yes
Exact height in device independent pixels (DIPS); If not specified hmin and hmax , this value refers to the required display height, otherwise refers to the desired height
pos
integer
No
Ad position on screen. Section 5.5 Ad Placement/Position Attribute is the reference of its enumerated values
mimes
string array
Yes
Content MIME types supported. Popular MIME types may include “application/x-shockwave-flash”, “image/jpg”, and “image/gif”。SHAREit support “image/jpg”,”image/png”, and “image/gif”
ext
object
No
Placeholder for exchange-specific extensions to OpenRTB
4.1.3 native object
Parameter name
Type
Required?
Description
request
string
Yes
Request must follow Native ad specification. Refer to native request object for details
ver
string
Yes
Use Dynamic Native Ads API version, default version is 1.2
api
integer array
No
Supported API frame of the display. Section 5.4 API frame is the reference of its enumerated values. Default setting of this parameter is that it doesn’t support any enumerated value, unless specified
battr
integer array
No
Restrictions of material attributes. Section 5.3 Creative attribute list is the reference of its enumerated values
4.1.4 native request object
Parameter name
Type
Required?
Description
assets
object array
Yes
Use asset request object to show the requirement of Native ad for assets and other elements. All assets and other elements should follow this request object
ver
string
Yes
Native Markup version, default version is 1.2
context
integer
No
Ad context. Section 5.10 Context Type IDs is the reference of its enumerated values
contextsubtype
integer
No
Ad context in more details. Section 5.11 Context Sub Type IDs is the reference of its enumerated values
4.1.5 asset request object
Parameter name
Type
Required?
Description
id
integer
Yes
The only identification ID of the object
required
integer
Yes
Indicate if the asset object is a must-have for client (bidder) in order to get a bid accepted. Value of 1 means yes. Value of 0 means it is not necessary
title
object
No
Title object for title assets. Refer to title object
img
object
No
Image object for image assets. Refer to img object
video
object
No
Video object for video assets. Refer to video object
data
object
No
Data object for data assets, eg. brand, description, rating, pricing etc.Refer to data object
4.1.6 title object
Parameter name
Type
Required?
Description
len
integer
Yes
Maximum title text length. Recommended text length is 25, 90, 140 characters
4.1.7 img object
Parameter name
Type
Required?
Description
type
integer
Yes
Indicate the specific type of image. Icon image: Value = 1 Large image: Value = 3
w
integer
No
Image width
wmin
integer
Yes
Minimum image width. Unit is in pixels
h
integer
No
Image height / length
hmin
integer
Yes
Minimum image height / length. Unit is in pixels
mimes
string array
No
Supported image mime-type, including but not limited to ‘image/jpg’and ‘image/gif’
4.1.8 video object
Parameter name
Type
Required?
Description
mimes
string array
Yes
Supported content mime-type. Currently it only supports ‘video/mp4’
minduration
integer
Yes
Minimum video ad length. Unit is in seconds
maxduration
integer
Yes
Maximum video ad length. Unit is in seconds
protocols
integer array
Yes
Applicable video protocol for Publisher in Bid Response. Currently it only supports type 3, i.e. vast 3.0 protocol
4.1.9 data object
Parameter name
Type
Required?
Description
type
string array
Yes
Indicate data object type ID. Each data object has a specific type. Section 5.12 Data Asset Type is the reference of its enumerated values
len
integer
Yes
Maximum number of characters allowed
4.1.10 app object
Parameter name
Type
Required?
Description
id
string
No
Internal definition of app ID
name
string
No
Internal definition of app name
bundle
string
Yes
App package name info
domain
string
No
App domain name, eg. mygame.foo.com
cat
string array
No
App IAB category.Section 5.1 IAB category is the reference of its enumerated values
App IAB category. Section 5.1 IAB category is the reference of its enumerated values
4.1.12 device object
Parameter name
Type
Required?
Description
ua
string
Yes
User-Agent field in HTTP request thread of user device
ip
string
Yes
ipv4 address of user’s current network
geo
object
Yes
Current geographic info of user. Refer to geo object
didsha1
string
No
Hardware device ID (eg. IMEI), via SHA1 hash
didmd5
string
No
Hardware device ID (eg. IMEI), via MD5 hash
dpidsha1
string
No
Platform device ID (eg. Android ID), via SHA1 hash
dpidmd5
string
No
Platform device ID (eg. Android ID), via MD5 hash
macsha1
string
No
Device MAC address, via SHA1 hash
macmd5
string
No
Device MAC address, via MD5 hash
make
string
No
Device manufacturer (eg. ‘Apple’)
model
string
No
Device model (eg. ‘iPhone’)
os
string
Yes
Operation system (eg. Android, iOS)
osv
string
No
Operation system version
language
string
No
Device language, following ISO-639-1-alpha-2. If unknown, put ‘unknown’
connectiontype
integer
No
Network connection mode. Section 5.8 Network Connection Mode is the reference of its enumerated values
devicetype
integer
No
Device type. Section 5.7 Device type is the reference of its enumerated values
h
integer
No
Screen physical height / length.Unit is in pixels
w
integer
No
Screen physical width.Unit is in pixels
js
integer
No
Indicate if js is supported. Value of 0 means not supported. Value of 1 means supported.
ppi
integer
No
Screen size.Unit is in pixel per inch
dnt
integer
No
‘Do Not Track’ identification set by browser in HTTP thread. Value of 0 means tracking is not restricted. Value of 1 means tracking is restricted / not allowed.
lmt
integer
No
Indicate user’s authorization for ad tracking. Value of 0 means tracking is not restricted. Value of 1 means tracking is restricted / not allowed.
ifa
string
Yes
Identification used by client.Andorid: gaid, iOS: idfa
mccmnc
string
No
Mobile network carrier
4.1.13 geo object
Parameter name
Type
Required?
Description
lat
float
No
Latitude info, data range is (-90.0,+90.0). Negative value means South
lon
float
No
Longitude info, data range is (-180.0,+180.0). Negative value means West.
type
integer
No
Source type of geo info. Value of 1 means by GPS/Location service. Value of 2 means by IP address. Value of 3 means provided by user.Section 5.13 Location Typeis the reference of its enumerated values
accuracy
integer
No
Accuracy in meters. When latitude/longitude info is obtained by GPS/Location service, this field is reported.
ipservice
integer
No
IP address provider, applicable for type = 2.Section **5.14 IP Location Type **is the reference of its enumerated values
country
string
Yes
Country code following ISO-3166-1-alpha-3
region
string
No
Region code following ISO-3166-2.If country is USA, 2-letter state code is used
city
string
No
City code following UN/LOCODE
zip
string
No
Postal code
utcoffset
integer
No
Local time difference from UTC time, +/- in minutes
4.1.14 user object
Parameter name
Type
Required?
Description
id
string
No
User ID
buyeruid
string
No
User ID defined by buyer
gender
string
No
Gender. Value of M means male, F means female, 0 means other gender.
geo
object
No
User geo info
yob
integer
No
Year of birth, 4-digit number.
keywords
string
No
Keywords list of user’s interests / intentions list, separated by comma (,)
customdata
string
No
Customized data
data
object array
No
Extra user data. Each data object represents a different data source
4.1.15 data object
Parameter name
Type
Required?
Description
id
string
No
ID of data provider
name
string
No
Name of data provider
segment
object array
No
Data segment that includes the actual data info.Refer to segment object
4.1.16 segment object
Parameter name
Type
Required?
Description
id
string
No
Segment ID defined by data provider
name
string
No
Segment name defined by data provider
value
string
No
Segment value
4.2 Bid Response
Parameter name
Type
Required?
Description
id
string
Yes
Identification for Bid Request, i.e. request id included in Bid Request section above
seatbid
object array
Yes
One set of SeatBid object. If a bid is offered, at least one SeatBid is filled in
bidid
string
No
Response ID generated for each bidder, assisting with logs or tracking transaction
cur
string
No
Unit of bid currency used, code following ISO-4217. If left blank, USD is used by default
ext
object
No
Placeholder for bidder-specific extensions to OpenRTB
4.2.1 seatbid object
our system only supports 1 seatbid object to be responded at a time, and 1 seatbid only supports 1 bid to be responded.
Parameter name
Type
Required?
Description
bid
object array
Yes
Array that includes at least 1 bid object. Each object is related to 1 display / impression
seat
string
No
Seat identification that represents the client (bidder, eg. advertiser, agency) on whose behalf this bid is made
group
interger
No
Indicate if all bids can win or fail at the same time. Default value is 0, meaning independent bid is allowed. Value of 1 means a group of bids win or fail at the same time.
ext
object
No
Placeholder for bidder-specific extensions to OpenRTB
4.2.2 bid object
Parameter name
Type
Required?
Description
id
string
Yes
Bid ID generated for each bidder, used for recording logs or tracking acitivity
impid
string
Yes
ID of imp object related to a Bid request
price
float
Yes
CPM price for each display
adid
string
No
Preloaded ad ID that can be used when a bid offer wins
nurl
string
No
Nurl link for notification when a bid wins, and will then be used by transaction platform
burl
string
Yes
Billing notice URL called by the exchange when a winning bid becomes billable based on exchange-specific business policy (e.g.,typically delivered, viewed, etc.).Substitution macros ${AUCTION_PRICE} may be included
adm
string
Yes
Convey ad content.Native ad uses adm field to return ad content. Refer to native ad response below for more detailsVideo ad uses adm field to return ad content in vast format. Refer to vast video response below for more details
Image link to indicate ad campaign content, used for quality or security tracking
cid
string
No
Campaign ID, to assist with ad QC. Each cid has one set of creatives, which is the creatives represented by iurl
crid
string
No
ID of a set of creatives, to assist with ad QC
cat
string array
Yes
IAB category of creative.Section 5.1 IAB category is the reference of its enumerated values
attr
integer array
No
Attribute array to describe creative.Section 5.3 Creative attribute list is the reference of its enumerated values
api
integer
No
Supported API frame of the display. Section 5.4 API frame is the reference of its enumerated values
protocol
integer
No
Supported video Bid Response protocol. Section 5.6 Video bid response protocol is the reference of its enumerated values
qagmediarating
integer
Yes
Indicate rating of creative content following IQG standard.Section 5.9 IQG media rating is the reference of its enumerated values
dealid
string
No
Refer to deal.id****from the bid request if this bid pertains to a private marketplace direct deal
w
integer
No
Creative width. Unit is in pixels
h
integer
No
Creative height. Unit is in pixels
exp
integer
No
Duration that the bidder is willing to wait between the auction and the actual display / impression.Unit is in seconds, with default value of 3600
ext
object
No
Placeholder for bidder-specific extensions to OpenRTB
4.2.3 native ad response
Native ad response content is saved in adm field, with the content including 1 native object. Native format supports native version 1.2 protocol.
Native object has following attributes:
Parameter name
Type
Required?
Description
ver
string
No
Native Markup version in use
assets
array of objects
Yes
List of native ad’s assets.Refer to asset response object
link
object
Yes
Destination link if the ad is clicked.Refer to link object
imptrackers
array of string
Yes
Array of impression tracking URLs.When a display / impression happens, tracking URLs are reported and used as the reference for cost calculation
ext
Object
No
Placeholder that may contain custom JSON
4.2.4 asset response object
Asset response object must strictly follow asset object in the Bid Request. Each object corresponds to an ID, which matches with the asset request object ID.
Parameter name
Type
Required?
Description
id
int
Yes
Asset ID that matches with ID in Bid Request
required
int
No
Set to 1 if asset is required (bidder requires it to be displayed)
title
object
No
Title object for title assets. Refer to title object
img
object
No
Image object for image assets. Refer to img object
video
object
No
Video object for video assets. Refer to video object
data
object
No
Data object for data assets, eg. rating, pricing.Refer to data object
ext
object
No
Placeholder that may contain custom JSON
4.2.5 title object
Parameter name
Type
Required?
Description
text
string
Yes
Title text
len
integer
No
Length of title text
ext
object
No
Placeholder that may contain custom JSON
4.2.6 Img object
Parameter name
Type
Required?
Description
type
integer
No
Required for assetsurl or dcourl responses, not required for embedded asset responsesIcon image: Value = 1 Large image: Value = 3
url
string
Yes
URL of the image asset
w
integer
Yes
Image width in pixels
h
integer
Yes
Image height in pixels
ext
object
No
Placeholder that may contain custom JSON
4.2.7 data object
Parameter name
Type
Required?
Description
type
integer
No
Type ID of data element, must follow 5.12 Data Asset Typeif to be submitted
label
string
No
Name of data element, must follow 5.12 Data Asset Typeif to be submitted
value
string
Yes
Formatted string of data, based on the requirement of each data type
ext
object
No
Placeholder that may contain custom JSON
4.2.8 video object
Video response object uses vasttag parameter for video content in vast format.
Note: Video in native ad response is just one type of assets. Therefore, it doesn’t support impression and click tracking that aims only at video. Instead, it can support tracking of the rate of progress when a video is being played.
Parameter name
Type
Required?
Description
vasttag
string
Yes
Indicate video content in vast format
4.2.9 link object
Parameter name
Type
Required?
Description
url
string
Yes
Landing URL of the clickable link
clicktrackers
array of strings
No
List of third-party tracker URLs tobe fired on click of the URL
ext
object
No
Placeholder that may contain custom JSON
Video response object uses vasttag parameter for video content in vast format.
5. RTB Interface Enumerated Value List5.1 IAB Category Enumerated Value
Value
Description
IAB1
Arts & Entertainment
IAB1-1
Books & Literature
IAB1-2
Celebrity Fan/Gossip
IAB1-3
Fine Art
IAB1-4
Humor
IAB1-5
Movies
IAB1-6
Music
IAB1-7
Television
IAB2
Automotive
IAB2-1
Auto Parts
IAB2-2
Auto Repair
IAB2-3
Buying/Selling Cars
IAB2-4
Car Culture
IAB2-5
Certified Pre-Owned
IAB2-6
Convertible
IAB2-7
Coupe
IAB2-8
Crossover
IAB2-9
Diesel
IAB2-10
Electric Vehicle
IAB2-11
Hatchback
IAB2-12
Hybrid
IAB2-13
Luxury
IAB2-14
Minivan
IAB2-15
Motorcycles
IAB2-16
Off-Road Vehicles
IAB2-17
Performance Vehicles
IAB2-18
Pickup
IAB2-19
Road-Side Assistance
IAB2-20
Sedan
IAB2-21
Trucks & Accessories
IAB2-22
Vintage Cars
IAB2-23
Wagon
IAB3
Business
IAB3-1
Advertising
IAB3-2
Agriculture
IAB3-3
Biotech/Biomedical
IAB3-4
Business Software
IAB3-5
Construction
IAB3-6
Forestry
IAB3-7
Government
IAB3-8
Green Solutions
IAB3-9
Human Resources
IAB3-10
Logistics
IAB3-11
Marketing
IAB3-12
Metals
IAB4
Careers
IAB4-1
Career Planning
IAB4-2
College
IAB4-3
Financial Aid
IAB4-4
Job Fairs
IAB4-5
Job Search
IAB4-6
Resume Writing/Advice
IAB4-7
Nursing
IAB4-8
Scholarships
IAB4-9
Telecommuting
IAB4-10
U.S. Military
IAB4-11
Career Advice
IAB5
Education
IAB5-1
7-12 Education
IAB5-2
Adult Education
IAB5-3
Art History
IAB5-4
College Administration
IAB5-5
College Life
IAB5-6
Distance Learning
IAB5-7
English as a 2nd Language
IAB5-8
Language Learning
IAB5-9
Graduate School
IAB5-10
Homeschooling
IAB5-11
Homework/Study Tips
IAB5-12
K-6 Educators
IAB5-13
Private School
IAB5-14
Special Education
IAB5-15
Studying Business
IAB6
Family & Parenting
IAB6-1
Adoption
IAB6-2
Babies & Toddlers
IAB6-3
Daycare/Pre School
IAB6-4
Family Internet
IAB6-5
Parenting – K-6 Kids
IAB6-6
Parenting teens
IAB6-7
Pregnancy
IAB6-8
Special Needs Kids
IAB6-9
Eldercare
IAB7
Health & Fitness
IAB7-1
Exercise
IAB7-2
ADD
IAB7-3
AIDS/HIV
IAB7-4
Allergies
IAB7-5
Alternative Medicine
IAB7-6
Arthritis
IAB7-7
Asthma
IAB7-8
Autism/PDD
IAB7-9
Bipolar Disorder
IAB7-10
Brain Tumor
IAB7-11
Cancer
IAB7-12
Cholesterol
IAB7-13
Chronic Fatigue Syndrome
IAB7-14
Chronic Pain
IAB7-15
Cold & Flu
IAB7-16
Deafness
IAB7-17
Dental Care
IAB7-18
Depression
IAB7-19
Dermatology
IAB7-20
Diabetes
IAB7-21
Epilepsy
IAB7-22
GERD/Acid Reflux
IAB7-23
Headaches/Migraines
IAB7-24
Heart Disease
IAB7-25
Herbs for Health
IAB7-26
Holistic Healing
IAB7-27
IBS/Crohn’s Disease
IAB7-28
Incest/Abuse Support
IAB7-29
Incontinence
IAB7-30
Infertility
IAB7-31
Men’s Health
IAB7-32
Nutrition
IAB7-33
Orthopedics
IAB7-34
Panic/Anxiety Disorders
IAB7-35
Pediatrics
IAB7-36
Physical Therapy
IAB7-37
Psychology/Psychiatry
IAB7-38
Senior Health
IAB7-39
Sexuality
IAB7-40
Sleep Disorders
IAB7-41
Smoking Cessation
IAB7-42
Substance Abuse
IAB7-43
Thyroid Disease
IAB7-44
Weight Loss
IAB7-45
Women’s Health
IAB8
Food & Drink
IAB8-1
American Cuisine
IAB8-2
Barbecues & Grilling
IAB8-3
Cajun/Creole
IAB8-4
Chinese Cuisine
IAB8-5
Cocktails/Beer
IAB8-6
Coffee/Tea
IAB8-7
Cuisine-Specific
IAB8-8
Desserts & Baking
IAB8-9
Dining Out
IAB8-10
Food Allergies
IAB8-11
French Cuisine
IAB8-12
Health/Low-Fat Cooking
IAB8-13
Italian Cuisine
IAB8-14
Japanese Cuisine
IAB8-15
Mexican Cuisine
IAB8-16
Vegan
IAB8-17
Vegetarian
IAB8-18
Wine
IAB9
Hobbies & Interests
IAB9-1
Art/Technology
IAB9-2
Arts & Crafts
IAB9-3
Beadwork
IAB9-4
Bird-Watching
IAB9-5
Board Games/Puzzles
IAB9-6
Candle & Soap Making
IAB9-7
Card Games
IAB9-8
Chess
IAB9-9
Cigars
IAB9-10
Collecting
IAB9-11
Comic Books
IAB9-12
Drawing/Sketching
IAB9-13
Freelance Writing
IAB9-14
Genealogy
IAB9-15
Getting Published
IAB9-16
Guitar
IAB9-17
Home Recording
IAB9-18
Investors & Patents
IAB9-19
Jewelry Making
IAB9-20
Magic & Illusion
IAB9-21
Needlework
IAB9-22
Painting
IAB9-23
Photography
IAB9-24
Radio
IAB9-25
Roleplaying Games
IAB9-26
Sci-Fi & Fantasy
IAB9-27
Scrapbooking
IAB9-28
Screenwriting
IAB9-29
Stamps & Coins
IAB9-30
Video & Computer Games
IAB9-31
Woodworking
IAB10
Home & Garden
IAB10-1
Appliances
IAB10-2
Entertaining
IAB10-3
Environmental Safety
IAB10-4
Gardening
IAB10-5
Home Repair
IAB10-6
Home Theater
IAB10-7
Interior Decorating
IAB10-8
Landscaping
IAB10-9
Remodeling & Construction
IAB11
Law, Government, & Politics
IAB11-1
Immigration
IAB11-2
Legal Issues
IAB11-3
U.S. Government Resources
IAB11-4
Politics
IAB11-5
Commentary
IAB12
News
IAB12-1
International News
IAB12-2
National News
IAB12-3
Local News
IAB13
Personal Finance
IAB13-1
Beginning Investing
IAB13-2
Credit/Debt & Loans
IAB13-3
Financial News
IAB13-4
Financial Planning
IAB13-5
Hedge Fund
IAB13-6
Insurance
IAB13-7
Investing
IAB13-8
Mutual Funds
IAB13-9
Options
IAB13-10
Retirement Planning
IAB13-11
Stocks
IAB13-12
Tax Planning
IAB14
Society
IAB14-1
Dating
IAB14-2
Divorce Support
IAB14-3
Gay Life
IAB14-4
Marriage
IAB14-5
Senior Living
IAB14-6
Teens
IAB14-7
Weddings
IAB14-8
Ethnic Specific
IAB15
Science
IAB15-1
Astrology
IAB15-2
Biology
IAB15-3
Chemistry
IAB15-4
Geology
IAB15-5
Paranormal Phenomena
IAB15-6
Physics
IAB15-7
Space/Astronomy
IAB15-8
Geography
IAB15-9
Botany
IAB15-10
Weather
IAB16
Pets
IAB16-1
Aquariums
IAB16-2
Birds
IAB16-3
Cats
IAB16-4
Dogs
IAB16-5
Large Animals
IAB16-6
Reptiles
IAB16-7
Veterinary Medicine
IAB17
Sports
IAB17-1
Auto Racing
IAB17-2
Baseball
IAB17-3
Bicycling
IAB17-4
Bodybuilding
IAB17-5
Boxing
IAB17-6
Canoeing/Kayaking
IAB17-7
Cheerleading
IAB17-8
Climbing
IAB17-9
Cricket
IAB17-10
Figure Skating
IAB17-11
Fly Fishing
IAB17-12
Football
IAB17-13
Freshwater Fishing
IAB17-14
Game & Fish
IAB17-15
Golf
IAB17-16
Horse Racing
IAB17-17
Horses
IAB17-18
Hunting/Shooting
IAB17-19
Inline Skating
IAB17-20
Martial Arts
IAB17-21
Mountain Biking
IAB17-22
NASCAR Racing
IAB17-23
Olympics
IAB17-24
Paintball
IAB17-25
Power & Motorcycles
IAB17-26
Pro Basketball
IAB17-27
Pro Ice Hockey
IAB17-28
Rodeo
IAB17-29
Rugby
IAB17-30
Running/Jogging
IAB17-31
Sailing
IAB17-32
Saltwater Fishing
IAB17-33
Scuba Diving
IAB17-34
Skateboarding
IAB17-35
Skiing
IAB17-36
Snowboarding
IAB17-37
Surfing/Body-Boarding
IAB17-38
Swimming
IAB17-39
Table Tennis/Ping-Pong
IAB17-40
Tennis
IAB17-41
Volleyball
IAB17-42
Walking
IAB17-43
Waterski/Wakeboard
IAB17-44
World Soccer
IAB18
Style & Fashion
IAB18-1
Beauty
IAB18-2
Body Art
IAB18-3
Fashion
IAB18-4
Jewelry
IAB18-5
Clothing
IAB18-6
Accessories
IAB19
Technology & Computing
IAB19-1
3-D Graphics
IAB19-2
Animation
IAB19-3
Antivirus Software
IAB19-4
C/C++
IAB19-5
Cameras & Camcorders
IAB19-6
Cell Phones
IAB19-7
Computer Certification
IAB19-8
Computer Networking
IAB19-9
Computer Peripherals
IAB19-10
Computer Reviews
IAB19-11
Data Centers
IAB19-12
Databases
IAB19-13
Desktop Publishing
IAB19-14
Desktop Video
IAB19-15
Email
IAB19-16
Graphics Software
IAB19-17
Home Video/DVD
IAB19-18
Internet Technology
IAB19-19
Java
IAB19-20
JavaScript
IAB19-21
Mac Support
IAB19-22
MP3/MIDI
IAB19-23
Net Conferencing
IAB19-24
Net for Beginners
IAB19-25
Network Security
IAB19-26
Palmtops/PDAs
IAB19-27
PC Support
IAB19-28
Portable
IAB19-29
Entertainment
IAB19-30
Shareware/Freeware
IAB19-31
Unix
IAB19-32
Visual Basic
IAB19-33
Web Clip Art
IAB19-34
Web Design/HTML
IAB19-35
Web Search
IAB19-36
Windows
IAB20
Travel
IAB20-1
Adventure Travel
IAB20-2
Africa
IAB20-3
Air Travel
IAB20-4
Australia & New Zealand
IAB20-5
Bed & Breakfasts
IAB20-6
Budget Travel
IAB20-7
Business Travel
IAB20-8
By US Locale
IAB20-9
Camping
IAB20-10
Canada
IAB20-11
Caribbean
IAB20-12
Cruises
IAB20-13
Eastern Europe
IAB20-14
Europe
IAB20-15
France
IAB20-16
Greece
IAB20-17
Honeymoons/Getaways
IAB20-18
Hotels
IAB20-19
Italy
IAB20-20
Japan
IAB20-21
Mexico & Central America
IAB20-22
National Parks
IAB20-23
South America
IAB20-24
Spas
IAB20-25
Theme Parks
IAB20-26
Traveling with Kids
IAB20-27
United Kingdom
IAB21
Real Estate
IAB21-1
Apartments
IAB21-2
Architects
IAB21-3
Buying/Selling Homes
IAB22
Shopping
IAB22-1
Contests & Freebies
IAB22-2
Couponing
IAB22-3
Comparison
IAB22-4
Engines
IAB23
Religion & Spirituality
IAB23-1
Alternative Religions
IAB23-2
Atheism/Agnosticism
IAB23-3
Buddhism
IAB23-4
Catholicism
IAB23-5
Christianity
IAB23-6
Hinduism
IAB23-7
Islam
IAB23-8
Judaism
IAB23-9
Latter-Day Saints
IAB23-10
Pagan/Wiccan
IAB24****IAB25
Uncategorized****Non-Standard Content
IAB25-1
Unmoderated UGC
IAB25-2
Extreme Graphic/Explicit Violence
IAB25-3
Pornography
IAB25-4
Profane Content
IAB25-5
Hate Content
IAB25-6
Under Construction
IAB25-7
Incentivized
IAB26
Illegal Content
IAB26-1
Illegal Content
IAB26-2
Warez
IAB26-3
Spyware/Malware
IAB26-4
Copyright Infringement
5.2 Banner Ad Type Enumerated Value
Value
Description
1
XHTML Text Ad (usually mobile)
2
XHTML Banner Ad. (usually mobile)
3
JavaScript Ad; must be valid XHTML (i.e., Script Tags Included)
Ad Provides Skip Button (e.g. VPAID-rendered skip button on pre-roll video)
17
Adobe Flash
5.4 API Frame Enumerated Value
Value
Description
1
VPAID 1.0
2
VPAID 2.0
3
MRAID-1
4
ORMMA
5
MRAID-2
6
MRAID-3
5.5 Ad Placement / Position Attribute Enumerated Value
Value
Description
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
5.6 Video Bid Response Protocol Enumerated Value
Value
Description
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
DAAST 1.0
5.7 Device Type Enumerated Value
Value
Description
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
5.8 Network Connection Mode Enumerated Value
Value
Description
0
Unknown
1
Ethernet
2
WIFI
3
Cellular Network – Unknown Generation
4
Cellular Network – 2G
5
Cellular Network – 3G
6
Cellular Network – 4G
7
Cellular Network – 5G
5.9 IQG Media Rating Enumerated Value
Value
Description
1
All Audiences
2
Everyone Over 12
3
Mature Audiences
5.10 Context Type IDs
Value
Description
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.
5.11 Context Sub Type IDs
Value
Description
10
General or mixed content.
11
Primarily article content (which of course could include images, etc as part of the article)
12
Primarily video content
13
Primarily audio content
14
Primarily image content
15
User-generated content – forums, comments, etc
20
General social content such as a general social network
21
Primarily email content
22
Primarily chat/IM content
30
Content focused on selling products, whether digital or physical
31
Application store/marketplace
32
Product reviews site primarily (which may sell product secondarily)
5.12 Data Asset Type
Type ID
Name
Description
1
sponsored
Sponsored By message where response should contain the brand name of the sponsor.
2
desc
Descriptive text associated with the product or service being advertised. Longer length of text in response may be truncated or ellipsed by the exchange.
3
rating
Rating of the product being offered to the user. For example an app’s rating in an app store from 0-5.
4
likes
Number of social ratings or “likes” of the product being offered to the user.
5
downloads
Number downloads/installs of this product
6
price
Price for product / app / in-app purchase. Value should include currency symbol in localised format.
7
saleprice
Sale price that can be used together with price to indicate a discounted price compared to a regular price. Value should include currency symbol in localised format.
8
phone
Phone number
9
address
Address
10
desc2
Additional descriptive text associated with the product or service being advertised
11
displayurl
Display URL for the text ad. To be used when sponsoring entity doesn’t own the content. IE sponsored by BRAND on SITE (where SITE is transmitted in this field).
12
ctatext
CTA description – descriptive text describing a ‘call to action’ button for the destination URL.