BidRequest Migration

This page catalogs every field and message used in the Google RTB Protocol's BidRequest message, lists the closest supported equivalent fields in OpenRTB, and provides instructions to help you migrate from the Google RTB protocol to OpenRTB.

BidRequest

Google RTB
OpenRTB
Notes
id
BidRequest.id
The Google RTB id has type bytes , while the OpenRTB id is a base64-encoded string .
ip
BidRequest.device.ip
BidRequest.device.ipv6
Nearly equivalent.

The Google RTB ip is represented as a bytes binary in network byte order, while OpenRTB's ip and ipv6 are a string representation of the IP address.

For example, in Google protocol ip could be set to \x7f\x00\x00 , and the equivalent value of ip for OpenRTB would be "127.0.0.0" .

The mapped field is dependent on whether the IP is an IPv4 or IPv6 address.

google_user_id
BidRequest.user.id
Equivalent.
cookie_version
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

cookie_age_seconds
BidRequest.user.ext.idage
Equivalent.
hosted_match_data
BidRequest.user.buyeruid
Nearly equivalent.

The Google RTB hosted_match_data is represented as bytes , while OpenRTB's buyeruid is a string .

OpenRTB represents this value in websafe base64 encoding without padding.

session_id
BidRequest.device.ext.session_id
Equivalent.
publisher_provided_id
BidRequest.user.eids.uids.id
Nearly equivalent.

The meaning of OpenRTB's field depends on the value of the BidRequest.user.eids.uid.ext.stype extension. When set to ppuid , it refers to a publisher provided ID.

publisher_first_party_id
Message field. See Notes.
user_agent
BidRequest.device.ua
Equivalent.

Note that this data is subject to generalization in both protocols.

privacy_treatments
Message field. See Notes.
segment_data
Message field. See Notes.
user_agent_data
Message field. See Notes.
See UserAgent .
publisher_country
BidRequest.site.publisher.ext.country
BidRequest.app.publisher.ext.country
Equivalent.

Mapping depends on whether the bid request originates from an app or website.

host_publisher_id
BidRequest.site.publisher.ext.host_publisher_id
BidRequest.app.publisher.ext.host_publisher_id
Equivalent.

Mapping depends on whether the bid request originates from an app or website.

inventory_partner_domain
BidRequest.site.ext.inventorypartnerdomain
BidRequest.app.ext.inventorypartnerdomain
Equivalent.

Mapping depends on whether the bid request originates from an app or website.

geo_criteria_id
BidRequest.device.geo.ext.geo_criteria_id
Equivalent.
geo
Message field. See Notes.
See Geo .
postal_code
BidRequest.device.geo.zip
Equivalent.
postal_code_prefix
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation. Use Geo instead.

encrypted_hyperlocal_set
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation. Use Geo instead.

We recommend using BidRequest.device.geo.{lat/lon} for approximate device location.

hyperlocal_set
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation. Use Geo instead.

We recommend using BidRequest.device.geo.{lat/lon} for approximate device location.

timezone_offset
BidRequest.device.geo.utcoffset
Equivalent.
user_list
N/A
Unsupported.

This field isn't populated in the Google RTB protocol, and won't be provided in Google's OpenRTB implementation.

publisher_id
BidRequest.app.publisher.id
BidRequest.site.publisher.id
Equivalent.

Mapping depends on whether the bid request originates from an app or website.

seller_network_id
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

partner_id
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

url
BidRequest.app.content.url
BidRequest.site.page
Equivalent.

Mapping depends on whether the bid request originates from an app or website.

is_semi_transparent_request
BidRequest.site.ext.is_semi_transparent_request
Equivalent.
detected_language
BidRequest.app.content.language
BidRequest.site.content.language
Equivalent.

Mapping depends on whether the bid request originates from an app or website.

detected_vertical
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

detected_content_label
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

production_quality
BidRequest.app.content.prodq
BidRequest.site.content.prodq
Equivalent.

Mapping depends on whether the bid request originates from an app or website.

content_rating
BidRequest.app.content.contentrating
BidRequest.site.content.contentrating
Nearly equivalent.

Represented as a string rather than enum. Here is the mapping of possible values:

  • GENERAL_AUDIENCES = DV-G
  • PARENTAL_GUIDANCE = DV-PG
  • TEEN = DV-T
  • MATURE_AUDIENCES = DV-MA
google_query_id
BidRequest.ext.google_query_id
Equivalent.
auction_type
BidRequest.at
Equivalent.

Our OpenRTB implementation adds an unused FIXED_PRICE value (integer value of 3 for JSON format) that doesn't exist in the OpenRTB spec. This will always be set to FIRST_PRICE .

device
Message field. See Notes.
See Device .
key_value
N/A
Unsupported.

This field is deprecated and isn't supported in Google's OpenRTB implementation.

mobile
Message field. See Notes.
See Mobile .
video
Message field. See Notes.
See Video .
publisher_settings_list_id
BidRequest.imp.ext.publisher_settings_list_id
Nearly equivalent.

In OpenRTB, this single field contains the IDs found in both of Google RTB protocol's BidRequest.publisher_settings_list_id and BidRequest.adslot.publisher_settings_list_id fields.

publisher_type
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

page_visibility
BidRequest.site.ext.page_visibility
Equivalent.
user_activation
Message field. See Notes.
navigation_type
BidRequest.site.ext.ntype
Equivalent.
adslot
Message field. See Notes.
See Adslot .
bid_response_feedback
Message field. See Notes.
response_deadline_ms
BidRequest.tmax
Equivalent.
is_test
BidRequest.test
Equivalent.
is_ping
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

is_predicted_to_be_ignored
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

supply_chain
Message field. See Notes.
frequency_capping_scope
BidRequest.ext.fcap_scope
Equivalent.
dsa
Message field. See Notes.
See Dsa .
session_duration_seconds
BidRequest.user.ext.session.duration
Equivalent.
experiment_ids
BidRequest.ext.expids
Equivalent.

PublisherFirstPartyId

Parent: BidRequest

Google RTB OpenRTB Notes
id_type
BidRequest.user.eids.uid.ext.stype Nearly equivalent.

The Google RTB protocol's id_type field only has a SITE_SCOPED_COOKIE value. OpenRTB's stype field is equivalent when set to "fpc" .

id
BidRequest.user.eids.uids.id Nearly equivalent.

The meaning of OpenRTB's field depends on the value of the stype extension. When set to "fpc" , it refers to a publisher first-party (site-scoped) cookie.

PrivacyTreatments

Parent: BidRequest

Google RTB OpenRTB Notes
ip
BidRequest.ext.privacy_treatments.ip Equivalent.
user_agent
BidRequest.ext.privacy_treatments.user_agent Equivalent.
user_agent_data
BidRequest.ext.privacy_treatments.user_agent_data Equivalent.
non_personalized_ads_reason
BidRequest.ext.privacy_treatments.non_personalized_ads_reason Equivalent.
allow_user_data_collection
BidRequest.ext.privacy_treatments.allow_user_data_collection Equivalent.

SegmentData

Parent: BidRequest

Google RTB OpenRTB Notes
name
N/A Unsupported.

This field isn't supported in Google's OpenRTB implementation.

id

BidRequest.user.data.id
BidRequest.site.content.data.id
BidRequest.app.content.data.id

Nearly equivalent.
segment
Message field. See Notes. See Segment .
type

BidRequest.user.data.ext.segtax
BidRequest.site.content.data.ext.segtax
BidRequest.app.content.data.ext.segtax

Equivalent.

Segment

Parent: SegmentData

Google RTB OpenRTB Notes
id

BidRequest.user.data.segment.id
BidRequest.site.content.data.segment.id
BidRequest.app.content.data.segment.id

Equivalent

UserAgent

Parent: BidRequest

Google RTB OpenRTB Notes
browsers
Message field. See Notes. See BrandVersion .
platform
Message field. See Notes. See BrandVersion .
mobile
BidRequest.device.sua.mobile Equivalent.
architecture
BidRequest.device.sua.architecture Equivalent.
bitness
BidRequest.device.sua.bitness Equivalent.
model
BidRequest.device.sua.model Equivalent.
source
BidRequest.device.sua.source Equivalent.

BrandVersion

Parent: UserAgent

Google RTB OpenRTB Notes
brand
BidRequest.device.sua.browsers.brand
BidRequest.device.sua.platform.brand
Equivalent.
version
BidRequest.device.sua.browsers.version
BidRequest.device.sua.platform.version
Equivalent.

Geo

Parent: BidRequest

Google RTB OpenRTB Notes
lat
BidRequest.device.geo.lat Equivalent.
lon
BidRequest.device.geo.lon Equivalent.
country
BidRequest.device.geo.country Equivalent.
region
BidRequest.device.geo.region Equivalent.
metro
BidRequest.device.geo.metro Equivalent.
city
BidRequest.device.geo.city Equivalent.
zip
BidRequest.device.geo.zip Equivalent.
accuracy
BidRequest.device.geo.accuracy Equivalent.
utcoffset
BidRequest.device.geo.utcoffset Equivalent.

Device

Parent: BidRequest

Google RTB
OpenRTB
Notes
device_type
BidRequest.device.devicetype
Nearly equivalent.

The DeviceType enum differs between the protocols, but uses identical enum names to convey the same meaning in all but one case: Google RTB protocol's GAME_CONSOLE is mapped to OpenRTB's CONNECTED_DEVICE .

  • HIGHEND_PHONE = 1 → HIGHEND_PHONE = 4
  • TABLET = 2 → TABLET = 5
  • PERSONAL_COMPUTER = 3 → PERSONAL_COMPUTER = 2
  • CONNECTED_TV = 4 → CONNECTED_TV = 3
  • GAME_CONSOLE = 5 → CONNECTED_DEVICE = 6
  • SET_TOP_BOX = 6 → SET_TOP_BOX = 7
platform
BidRequest.device.os
Nearly equivalent.

Devices that were set to " iphone " or " ipad " in Google RTB protocol will instead be set to " iOS " in OpenRTB. Otherwise, all other naming is identical.

brand
BidRequest.device.make
Equivalent.
model
BidRequest.device.model
Equivalent.
os_version
Message field. See Notes.
See OsVersion .
carrier_id
BidRequest.device.carrier
Nearly equivalent.

OpenRTB uses a string for the carrier ID, while the Google RTB protocol uses an integer.

screen_width
BidRequest.device.w
Equivalent.
screen_height
BidRequest.device.h
Equivalent.
screen_pixel_ratio_millis
BidRequest.device.pxratio
Nearly equivalent.

pxratio = screen_pixel_ratio_millis / 1,000

screen_orientation
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

You may use OpenRTB's BidRequest.device.w and BidRequest.device.h fields to determine orientation.

hardware_version
BidRequest.device.hwv
Equivalent
limit_ad_tracking
BidRequest.device.lmt
Equivalent.
app_tracking_authorization_status
BidRequest.device.ext.atts
Nearly equivalent.

The Google RTB field is an enum whereas the OpenRTB field is an integer. The integer specified in OpenRTB maps directly to Google RTB protocol's enum value.

  • NOT_DETERMINED = 0
  • RESTRICTED = 1
  • DENIED = 2
  • AUTHORIZED = 3
connection_type
BidRequest.device.connectiontype
Equivalent.

OsVersion

Parent: Device

Google RTB OpenRTB Notes
major
BidRequest.device.osv Nearly equivalent.

OpenRTB concatenates the major , minor , and micro version numbers into a single string. For example, if the string were " 1.0.2 ", major would be set to 1 .

minor
BidRequest.device.osv Nearly equivalent.

OpenRTB concatenates the major , minor , and micro version numbers into a single string. For example, if the string were " 1.0.2 ", minor would be set to 0 .

micro
BidRequest.device.osv Nearly equivalent.

OpenRTB concatenates the major , minor , and micro version numbers into a single string. For example, if the string were " 1.0.2 ", micro would be set to 2 .

Mobile

Parent: BidRequest

Google RTB OpenRTB Notes
is_app
BidRequest.app Nearly equivalent.

OpenRTB's BidRequest.app field is an object providing information about the publisher's app. Its presence is equivalent to is_app being set to True .

app_id
BidRequest.app.bundle Equivalent.
is_interstitial_request
BidRequest.imp.instl Equivalent.
app_category_ids
N/A Unsupported.

This field isn't supported in Google's OpenRTB implementation.

is_mobile_web_optimized
BidRequest.site.mobile Equivalent.
is_app_open_ad
BidRequest.imp.ext.is_app_open_ad Equivalent.
encrypted_advertising_id
N/A Unsupported.

This field isn't supported in Google's OpenRTB implementation.

Use BidRequest.device.ifa instead.

advertising_id
BidRequest.device.ifa Nearly equivalent.

The Google RTB protocol represents this as bytes, while for OpenRTB this is represented as a string containing either a 16 byte UUID, or a 32 byte alphanumeric ID (for Samsung IDs).

encrypted_hashed_idfa
N/A Unsupported.

This field isn't supported in Google's OpenRTB implementation.

Use BidRequest.device.dpimd5 instead.

hashed_idfa
BidRequest.device.dpimd5 Nearly equivalent.

The Google RTB protocol represents this as bytes, whereas OpenRTB represents this as a string containing a hexadecimal value.

app_name
BidRequest.app.name Equivalent.
app_rating
BidRequest.app.content.userrating Nearly equivalent.

The Google RTB protocol represents this as a float, whereas OpenRTB represents this as a string containing a decimal value.

installed_sdk
Message field. See Notes. See InstalledSdk .
skadn
Message field. See Notes. See SKAdNetworkRequest .

InstalledSdk

Parent: Mobile

Google RTB OpenRTB Notes
id
BidRequest.app.ext.installed_sdk.id Equivalent.
sdk_version
Message field. See Notes. See Version .
adapter_version
Message field. See Notes. See Version .

Version

Parent: InstalledSdk

Google RTB OpenRTB Notes
major
BidRequest.app.ext.installed_sdk.sdk_version.major
BidRequest.app.ext.installed_sdk.adapter_version.major
Equivalent.
minor
BidRequest.app.ext.installed_sdk.sdk_version.minor
BidRequest.app.ext.installed_sdk.adapter_version.minor
Equivalent.
micro
BidRequest.app.ext.installed_sdk.sdk_version.micro
BidRequest.app.ext.installed_sdk.adapter_version.micro
Equivalent.

SKAdNetworkRequest

Parent: Mobile

Google RTB OpenRTB Notes
versions
BidRequest.imp.ext.skadn.versions Equivalent.
sourceapp
BidRequest.imp.ext.skadn.sourceapp Equivalent.
skadnetids
BidRequest.imp.ext.skadn.skadnetids Equivalent.
supported_fidelity_types
BidRequest.imp.ext.skadn.fidelities Equivalent.
skoverlay
BidRequest.imp.ext.skadn.skoverlay Equivalent.

Video

Parent: BidRequest

Google RTB
OpenRTB
Notes
placement
BidRequest.imp.video.placement
Nearly equivalent.

The Google RTB protocol and OpenRTB use different enum values, which have the following mapping:

  • INSTREAM = 1 → IN_STREAM_PLACEMENT = 1
  • INTERSTITIAL = 2 → FLOATING_PLACEMENT = 5
  • IN_FEED = 3 → IN_FEED_PLACEMENT = 4
  • IN_ARTICLE = 5 → IN_ARTICLE_PLACEMENT = 3

In cases where Google RTB protocol doesn't populate placement , OpenRTB will set it to IN_BANNER_PLACEMENT .

This is deprecated. We recommend that you use BidRequest.imp.video.plcmt instead.

plcmt
BidRequest.imp.video.plcmt
Equivalent.
inferred_plcmt
BidRequest.imp.video.ext.inferredplcmt
Equivalent.
description_url
BidRequest.site.content.producer.domain
BidRequest.app.content.producer.domain
Nearly equivalent.

OpenRTB only includes the domain, not the full URL.

is_embedded_offsite
BidRequest.imp.video.ext.embeddedoffsite
Equivalent.
playback_method
BidRequest.imp.video.playbackmethod
Nearly Equivalent.

The OpenRTB PlaybackMethod enum contains an additional (currently) unused CONTINUOUS enum name. Otherwise, the enum names and values are identical.

is_clickable
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

Google RTB protocol field indicates whether a device supports user clicks, which can be inferred based on BidRequest.device.devicetype.

videoad_start_delay
BidRequest.imp.{video/audio}.startdelay
Nearly equivalent.

The Google RTB protocol represents this in milliseconds, whereas OpenRTB uses seconds.

max_ad_duration
Non-native video:
BidRequest.imp.{video/audio}.maxduration

Native video:
BidRequest.imp.native.{request/request_native}.assets.video.maxduration

See native ad migration notes for more details on differences between JSON and Protobuf formats.

Nearly equivalent.

The Google RTB protocol uses a single field for both native and non-native video, and represents this in milliseconds, whereas OpenRTB differentiates between native and non-native video by using different field paths, and uses seconds.

min_ad_duration
Non-native video:
BidRequest.imp.{video/audio}.minduration

Native video:
BidRequest.imp.native.{request/request_native}.assets.video.minduration

See native ad migration notes for more details on differences between JSON and Protobuf formats.

Nearly equivalent.

The Google RTB protocol uses a single field for both native and non-native video, and represents this in milliseconds, whereas OpenRTB differentiates between native and non-native video, and uses seconds.

max_ads_in_pod
BidRequest.imp.video.maxseq
Equivalent.
max_pod_duration_seconds
BidRequest.imp.video.poddur
Equivalent.
video_ad_skippable
BidRequest.imp.video.skip
Nearly equivalent.

OpenRTB's field is less granular because it is represented as a boolean. Both of Google RTB protocol's ALLOW_SKIPPABLE and REQUIRE_SKIPPABLE enum names would result in the OpenRTB field being set to True .

We recommend contacting your TAM to enable skip correction.

skippable_max_ad_duration
BidRequest.imp.{video/audio}.maxduration
Non-trivial updates required.

The Google RTB protocol represents this in milliseconds, whereas the OpenRTB protocol uses seconds.

OpenRTB doesn't support display of both maximum duration for skippable and non-skippable ads simultaneously. Google uses bid flattening to represent both cases. For more details, see our documentation on maximum skippable video duration .

protocols
Non-native video:
BidRequest.imp.{video/audio}.protocols

Native video:
BidRequest.imp.native.{request/request_native}.assets.video.protocols

See native ad migration notes for more details on differences between JSON and Protobuf formats.

Nearly equivalent.

The Google RTB protocol uses a single field for both native and non-native video, whereas OpenRTB differentiates between native and non-native video.

Google RTB protocol enum names and values are equivalent in OpenRTB, but additional (currently unused) enum names exist in OpenRTB.

allowed_video_formats
Non-native video:
BidRequest.imp.{video/audio}.mimes

Native video:
BidRequest.imp.native.{request/request_native}.assets.video.mimes

See native ad migration notes for more details on differences between JSON and Protobuf formats.

Nearly equivalent.

The Google RTB protocol represents these with an enum, whereas OpenRTB uses a string.

companion_slot
Message field. See Notes.
end_cap_support
BidRequest.imp.{video/audio}.companionad.vcm
Nearly equivalent.

The Google RTB protocol represents this with an enum, whereas OpenRTB uses a boolean. However, only two values are in use for the Google RTB protocol, which map to OpenRTB as follows:

  • END_CAP_NOT_ENABLED False
  • END_CAP_OPTIONAL True
content_attributes.duration_seconds
BidRequest.{site/app}.content.len
Equivalent.
is_livestream
BidRequest.{site/app}.content.livestream
Equivalent.
playback_cessation_mode
BidRequest.imp.video.playbackend
Equivalent.

CompanionSlot

Parent: Video

Google RTB
OpenRTB
Notes
height
BidRequest.imp.{video/audio}.companionad.h
BidRequest.imp.{video/audio}.companionad.format.h
Nearly equivalent.

The Google RTB protocol uses separate repeated integer fields to represent width and height, where a given index in both describes a supported size.

We recommend using OpenRTB's companionad.format , which is a repeated field of type Format that can represent multiple sizes. Note that companionad.{h/w} can only represent one size.

width
BidRequest.imp.{video/audio}.companionad.w
BidRequest.imp.{video/audio}.companionad.format.w
Nearly equivalent.

The Google RTB protocol uses separate repeated integer fields to represent width and height, where a given index in both describes a supported size.

We recommend using OpenRTB's companionad.format , which is a repeated field of type Format that can represent multiple sizes. Note that companionad.{h/w} can only represent one size.

creative_format
BidRequest.imp.{video/audio}.companiontype
BidRequest.imp.{video/audio}.companionad.mimes
Nearly equivalent.

Google RTB protocol uses different enum names and values than OpenRTB.

  • IMAGE_CREATIVE = 0 → STATIC = 1
  • FLASH_CREATIVE = 1 → N/A (Flash is no longer supported.)
  • HTML_CREATIVE = 2 → HTML = 2

These are also reflected in OpenRTB's mimes field for the companion ad.

Unlike Google RTB protocol, OpenRTB supports an additional type: COMPANION_IFRAME.

UserActivation

Parent: BidRequest

Google RTB OpenRTB Notes
has_been_active
BidRequest.site.ext.uact.wasact Equivalent.
is_active
BidRequest.site.ext.uact.isact Equivalent.

Adslot

Parent: BidRequest

Contains information about the ad slot. Roughly corresponds to the Imp message in OpenRTB.

Google RTB
OpenRTB
Notes
id
BidRequest.imp.id
Nearly equivalent.

The Google RTB protocol represents this as an integer, whereas OpenRTB uses string.

ad_block_key
BidRequest.imp.tagid
Equivalent.
width
BidRequest.imp.banner.w
BidRequest.imp.banner.format.w
BidRequest.imp.native.{request/request_native}.assets.video.w
BidRequest.imp.video.w
Nearly equivalent.

The representation across the Google RTB protocol and OpenRTB are identical, however the OpenRTB field used differs based on the ad format.

When there are multiple eligible banner sizes, Google RTB protocol represents dimensions with width / height pairs at the same index, whereas OpenRTB uses the repeated format field.

Unlike the banner format, when there are multiple eligible video sizes, only the width of the first will be provided in BidRequest.imp.video.w .

height
BidRequest.imp.banner.h
BidRequest.imp.banner.format.h
BidRequest.imp.native.{request/request_native}.assets.video.h
BidRequest.imp.video.h
Nearly equivalent.

The representation across the Google RTB protocol and OpenRTB are identical, however the OpenRTB field used differs based on the ad format.

When there are multiple eligible banner sizes, Google RTB protocol represents dimensions with width / height pairs at the same index, whereas OpenRTB uses the repeated format field.

Unlike the banner format, when there are multiple eligible video sizes, only the height of the first will be provided in BidRequest.imp.video.h .

flexible_adslot_settings
Message field. See Notes.
excluded_attribute
BidRequest.imp.secure
BidRequest.imp.audio.battr
BidRequest.imp.video.battr
BidRequest.imp.banner.battr
BidRequest.imp.native.battr
BidRequest.imp.banner
BidRequest.imp.video
BidRequest.imp.native
Non-trivial updates required.

See Excluded Attributes for more details.

allowed_vendor_type
BidRequest.imp.ext.allowed_vendor_type
Equivalent.
consented_providers_settings
Message field. See Notes.
regs_gdpr
BidRequest.regs.ext.gdpr
Equivalent.
regs_lgpd
BidRequest.regs.ext.lgpd
Equivalent.
gpp_consent_string
BidRequest.regs.gpp
Equivalent.
gpp_section_ids
BidRequest.regs.gpp_sid
Nearly equivalent.

The Google RTB protocol field is a repeated set of integer IDs defined here , whereas the OpenRTB field is a repeated set of GppSectionId enum.

The integer values in GppSectionId directly correspond to the IDs sent in the Google RTB protocol field.

excluded_sensitive_category
BidRequest.bcat
Non-trivial updates required.

See Ad Categories for more details.

allowed_restricted_category
BidRequest.imp.ext.allowed_restricted_category
Equivalent.
allowed_restricted_category_for_deals
BidRequest.imp.ext.allowed_restricted_category
Equivalent.

Note that allowed restricted categories for deals and the open auction are identical.

allowed_languages
BidRequest.wlang
Nearly equivalent.

Google RTB Protocol refers to languages differently than OpenRTB, which uses ISO 639-1.

excluded_product_category
BidRequest.bcat
Non-trivial updates required.

See Ad Categories for more details.

excluded_app_ids
BidRequest.bapp
Equivalent.
excluded_creatives
Message field. See Notes.
only_deal_bids_accepted
BidRequest.imp.pmp.private_auction
Equivalent.
matching_ad_data
Message field. See Notes.
blocked_seat_ids
BidRequest.bseat
Equivalent.
allowed_seat_ids
BidRequest.wseat
Equivalent.
publisher_settings_list_id
BidRequest.imp.ext.publisher_settings_list_id
Nearly equivalent.

In OpenRTB, this is the concatenation of Google protocol's BidRequest.publisher_settings_list_id and BidRequest.adslot.publisher_settings_list_id .

exchange_bidding
Message field. See Notes.

Unsupported.

The ExchangeBidding message and its contents have no equivalents in OpenRTB.

open_bidding
Message field. See Notes.
ad_unit_mapping
Message field. See Notes.
creative_enforcement_settings
Message field. See Notes.
dfp_ad_unit_code
BidRequest.imp.ext.dfp_ad_unit_code
Equivalent.

This field will only be populated for Open Bidding partners.

slot_visibility
BidRequest.imp.banner.pos
BidRequest.imp.video.pos
Nearly equivalent for banner and video ads.

OpenRTB's pos field also maps to Google RTB protocol's StickySettings . Enum names relevant to slot_visibility are ABOVE_THE_FOLD and BELOW_THE_FOLD , which have different integer values in OpenRTB (1 and 3 respectively).

Note that visibility is not a factor for audio ads, which are represented separately from video ads in OpenRTB.

Unsupported for native ads.

viewability
BidRequest.imp.metric.value
Nearly equivalent.

The Google RTB protocol represents this as an integer percentage ranging from 0-100, whereas OpenRTB represents this as a double ranging from 0.0-1.0.

Note that this OpenRTB field has multiple mappings, and will only refer to viewability when OpenRTB's BidRequest.imp.metric.type is set to "viewability" and BidRequest.imp.metric.vendor is set to "EXCHANGE" .

click_through_rate
BidRequest.imp.metric.value
Nearly equivalent.

The Google RTB protocol represents this as a float percentage, whereas OpenRTB represents this as a double.

Note that this OpenRTB field has multiple mappings, and will only refer to click through rate when OpenRTB's BidRequest.imp.metric.type is set to "click_through_rate" and BidRequest.imp.metric.vendor is set to "EXCHANGE" .

video_completion_rate
BidRequest.imp.metric.value
Nearly equivalent.

The Google RTB protocol represents this as a float percentage, whereas OpenRTB represents this as a double ranging from 0.0-1.0.

Note that this OpenRTB field has multiple mappings, and will only refer to video completion rate when OpenRTB's BidRequest.imp.metric.type is set to "completion_rate" and BidRequest.imp.metric.vendor is set to "EXCHANGE" .

iframing_state
BidRequest.imp.banner.topframe
Nearly equivalent.

The Google RTB protocol represents this as an enum, whereas OpenRTB represents this less-granularly as a bool.

Google renders all banners in a cross-domain iframe. In OpenRTB, topframe will always be set to False .

iframing_depth
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

native_ad_template
Message field. See Notes.
native_placement_type
BidRequest.imp.native.{request/request_native}.plcmttype
Nearly equivalent.

The Google RTB Protocol and OpenRTB use identical integer values, however the Protobuf OpenRTB format uses shortened enum names.

mediation_status
N/A
Unsupported.

This field has been deprecated and is no longer populated. It won't be supported in Google's OpenRTB implementation.

auto_refresh
Message field. See Notes.
sticky_settings
Message field. See Notes.
non_browser_slot_source
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

renderer
BidRequest.imp.displaymanager
Nearly equivalent.

The Google RTB Protocol field is an enum that supports the following values:

  • GOOGLE = 1
  • PUBLISHER = 2

The OpenRTB field is a string with a more granular set of values.

amp_ad_request_type
N/A
Unsupported.

This field isn't supported in Google's OpenRTB implementation.

is_amp_page
BidRequest.site.ext.amp
Nearly equivalent.

OpenRTB uses a similar enum with identical enum names, but the integer values are different.

  • DIALECT_HTML = 1 → DIALECT_HTML = 0
  • DIALECT_HTML_AMP = 2 → DIALECT_HTML_AMP = 1
amp_ad_requirement_type
BidRequest.imp.ext.ampad
Nearly Equivalent.

OpenRTB uses a similar enum with identical enum names, but the integer values are different.

  • AMP_AD_NOT_ALLOWED = 1 → AMP_AD_NOT_ALLOWED = 2
  • AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED = 2 → AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED = 3
  • AMP_AD_ALLOWED_AND_EARLY_RENDERED = 3 → AMP_AD_ALLOWED_AND_EARLY_RENDERED = 4
  • AMP_AD_REQUIRED = 4 → AMP_AD_REQUIRED = 5
is_rewarded
BidRequest.imp.rwdd
Equivalent.
allowed_ad_types
N/A
Unsupported.

In OpenRTB, there isn't a dedicated field to list allowed ad types. However, they can be determined based on the presence of relevant ad format fields in the bid request such as:

  • BidRequest.imp.banner
  • BidRequest.imp.video
  • BidRequest.imp.audio
  • BidRequest.imp.native
session_depth
BidRequest.imp.metric.value
Nearly equivalent.

The Google RTB protocol represents this with an integer data type, whereas OpenRTB uses double.

Note that the OpenRTB field can represent multiple metrics, and only represents session depth when Metric.type is set to "session_depth" .

secure_signals
Message field. See Notes.
api
BidRequest.imp.{banner/video/audio/native}.api
Nearly equivalent.

OpenRTB uses a similar enum, but it includes additional frameworks such as VPAID.

  • MRAID_1 = 3 → MRAID_1 = 3
  • MRAID_2 = 5 → MRAID_2 = 5
  • MRAID_3 = 6 → MRAID_3 = 6
  • OMID_1 = 7 → OMID_1 = 7

This is specified separately for each of the included ad formats in OpenRTB.

billable_event_rate_adjustment
BidRequest.imp.ext.billable_event_rate_adjustment
Equivalent.

Both the Google RTB protocol and OpenRTB fields are deprecated in favor of repeated fields. Use BidRequest.imp.ext.billable_event_rate_bid_adjustment.bid_adjustment instead.

billable_event_rate_bid_adjustment
Message field. See Notes.
omidpn
BidRequest.source.ext.omidpn
Equivalent.
omidpv
BidRequest.source.ext.omidpv
Equivalent.
auction_environment
BidRequest.imp.ext.auction_environment
Equivalent.

Both the Google RTB protocol and OpenRTB fields are deprecated. Use BidRequest.imp.ext.ae instead.

supported_auction_environment
BidRequest.imp.ext.ae
Equivalent.
impression_expiration_seconds
BidRequest.imp.exp
Equivalent.
display_manager
BidRequest.imp.displaymanager
Equivalent.
display_manager_version
BidRequest.imp.displaymanagerver
Equivalent.

Excluded Attributes

The Google RTB protocol uses BidRequest.adslot.excluded_attribute to indicate which attributes you should exclude from the creative returned with your bid, which are defined in publisher-excludable-creative-attributes.txt . OpenRTB represents most of these using several fields described here:

Google RTB Attribute ID
Meaning
OpenRTB equivalent / notes
7
Tagging: IsTagged
Not supported.
8
Remarketing: IsRemarketing
Not supported.
9
UserInterestTargeting: IsUserInterestTargeted
Not supported.
13 - 20
ExpandingDirection :
ExpandingUp ,
ExpandingDown ,
ExpandingLeft ,
ExpandingRight .
ExpandingUpLeft ,
ExpandingUpRight ,
ExpandingDownLeft ,
ExpandingDownRight
Not supported.
21
CreativeType: Html
In cases where Google RTB protocol sets excluded_attribute to 21, OpenRTB wouldn't populate BidRequest.imp.banner .
22
CreativeType: VastVideo
In cases where Google RTB protocol sets excluded_attribute to 22, OpenRTB wouldn't populate BidRequest.imp.video .
25 - 27
ExpandingDirection :
ExpandingUpOrDown ,
ExpandingLeftOrRight ,
ExpandingAnyDiagonal
Not supported.
28
ExpandingAction: RolloverToExpand
Not supported.
30
InstreamVastVideoType: Vpaid

In cases where Google RTB protocol sets excluded_attribute to 30, OpenRTB wouldn't populate BidRequest.imp.video.api or BidRequest.imp.native.{request/request_native}.assets.video.api with VPAID_1 or VPAID_2

.
32
MraidType: MRAID

In cases where Google RTB protocol sets excluded_attribute to 32, OpenRTB wouldn't populate any of the following fields with MRAID_1 :

  • BidRequest.imp.banner.api
  • BidRequest.imp.native.api
  • BidRequest.imp.video.api
34
RichMediaCapabilityType: RichMediaCapabilityFlash
Not supported.

Flash is not a supported creative format.

39
RichMediaCapabilityType: RichMediaCapabilityHTML5
Not supported.
48
RichMediaCapabilityType: RichMediaCapabilityNonSSL

In cases where Google RTB protocol sets excluded_attribute to 48, OpenRTB would populate BidRequest.imp.secure with True .

In practice, BidRequest.imp.secure will always be set to True because SSL support is required for all creatives.

70
NativeEligibility: Native Eligible
In cases where Google RTB protocol sets excluded_attribute to 70, OpenRTB wouldn't populate BidRequest.imp.native .
72
NativeEligibility: Native Not Eligible
In cases where Google RTB protocol sets excluded_attribute to 72, OpenRTB would populate BidRequest.imp.native . Additionally, OpenRTB wouldn't populate BidRequest.imp.audio , BidRequest.imp.banner , and BidRequest.imp.video .
95
VideoType: In-Banner Video (Publisher Blockable)

In cases where Google RTB protocol sets excluded_attribute to 95, OpenRTB would populate BidRequest.imp.banner.battr with VIDEO_IN_BANNER_AUTO_PLAY and VIDEO_IN_BANNER_USER_INITIATED .

114
OmsdkType: OMSDK 1.0

In cases where Google RTB protocol sets excluded_attribute to 114, OpenRTB wouldn't populate the following fields with OMID_1 :

  • BidRequest.imp.banner.api
  • BidRequest.imp.video.api
  • BidRequest.imp.native.api

FlexibleAdSlotSettings

Parent: Adslot

Google RTB OpenRTB Notes
max_height
BidRequest.imp.banner.ext.flexslot.hmax BidRequest.imp.banner.hmax Equivalent.

BidRequest.imp.banner.hmax is supported, but is considered deprecated by the OpenRTB standard. We recommend using BidRequest.imp.banner.ext.flexslot.hmax instead.

max_width
BidRequest.imp.banner.ext.flexslot.wmax BidRequest.imp.banner.wmax Equivalent.

BidRequest.imp.banner.wmax is supported, but is considered deprecated by the OpenRTB standard. We recommend using BidRequest.imp.banner.ext.flexslot.wmax instead.

min_height
BidRequest.imp.banner.ext.flexslot.hmin BidRequest.imp.banner.hmin Equivalent.

BidRequest.imp.banner.hmin is supported, but is considered deprecated by the OpenRTB standard. We recommend using BidRequest.imp.banner.ext.flexslot.hmin instead.

min_width
BidRequest.imp.banner.ext.flexslot.wmin BidRequest.imp.banner.wmin Equivalent.

BidRequest.imp.banner.wmin is supported, but is considered deprecated by the OpenRTB standard. We recommend using BidRequest.imp.banner.ext.flexslot.wmin instead.

ConsentedProvidersSettings

Parent: Adslot

Google RTB OpenRTB Notes
consented_providers
BidRequest.user.ext.consented_providers_settings.consented_providers Equivalent.
tcf_consent_string
BidRequest.user.ext.consent Equivalent.
additional_consent_string
BidRequest.user.ext.consented_providers_settings.additional_consent Equivalent.

ExcludedCreative

Parent: Adslot

Google RTB OpenRTB Notes
excluded_creatives.buyer_creative_id
BidRequest.imp.ext.excluded_creatives.buyer_creative_id Equivalent.

MatchingAdData

Parent: Adslot

Google RTB OpenRTB Notes
billing_id
BidRequest.imp.ext.billing_id BidRequest.imp.pmp.deals.ext.billing_id Nearly equivalent.

In OpenRTB, billing IDs are stored in a flat list that has no particular grouping or ordering. See Eligible Buyers and Deals for more information.

For deals, the eligible billing IDs for each deal can be found in BidRequest.imp.pmp.deals.ext.billing_id .

minimum_cpm_micros
BidRequest.imp.bidfloor Nearly equivalent.

The Google RTB protocol uses an integer to represent the floor of the auction in micros of the buyer's configured currency. If there are multiple buyers with differing currencies, this value might differ across buyers while having the same monetary value. See Eligible Buyers and Deals for more details.

OpenRTB uses a single double to represent the floor of the auction in the bidder's configured currency that is provided in BidRequest.imp.bidfloorcur , which is applied to all buyers.

bidfloor = minimum_cpm_micros / 1,000,000

direct_deal
Message field. See Notes. See DirectDeal .

DirectDeal

Parent: MatchingAdData

Google RTB OpenRTB Notes
direct_deal_id
BidRequest.imp.pmp.deals.id Nearly equivalent.

The Google RTB protocol represents this as an integer, whereas OpenRTB uses string.

fixed_cpm_micros

BidRequest.imp.pmp.deals.bidfloor and BidRequest.imp.pmp.deals.bidfloorcur

Nearly equivalent.

The Google RTB protocol represents this in micros of the given currency as an integer, whereas OpenRTB represents the value in CPM currency units, as a double.

bidfloor = fixed_cpm_micros / 1,000,000

Note that the value sent in OpenRTB bid request may differ because Google RTB protocol uses the deal buyer's currency, whereas OpenRTB uses the bidder's currency. The bidfloorcur field indicates the currency of bidfloor using ISO-4217 currency codes such as USD or EUR.

deal_type
BidRequest.imp.pmp.deals.ext.deal_type Equivalent.
publisher_blocks_overridden
BidRequest.imp.pmp.deals.ext.publisher_blocks_overridden Equivalent.
creative_source
BidRequest.imp.pmp.deals.ext.creative_source Nearly equivalent.

The Google RTB protocol and OpenRTB fields are represented with an identical enum.

must_bid
BidRequest.imp.pmp.deals.ext.must_bid Equivalent.
creative_constraints
Message field. See Notes. See CreativeConstraints .
allowed_seat_ids
BidRequest.imp.pmp.deals.wseat Equivalent.

CreativeConstraints

Parent: DirectDeal

Google RTB
OpenRTB
Notes
allowed_ad_types
BidRequest.imp.pmp.deals.ext.creative_constraints.mtypes
Nearly equivalent.

The Google RTB protocol and OpenRTB use different enums. They represent the same set of ad formats, but use different names and integer values.

  • ALLOWED_AD_TYPE_BANNER = 0 → CREATIVE_MARKUP_BANNER = 1
  • ALLOWED_AD_TYPE_NATIVE = 1 → CREATIVE_MARKUP_NATIVE = 4
  • ALLOWED_AD_TYPE_VIDEO = 2 → CREATIVE_MARKUP_VIDEO = 2
  • ALLOWED_AD_TYPE_AUDIO = 3 → CREATIVE_MARKUP_AUDIO = 3
video_ad_skippable
BidRequest.imp.pmp.deals.ext.creative_constraints.skippability
Equivalent.
max_ad_duration_ms
BidRequest.imp.pmp.deals.ext.creative_constraints.maxduration
Nearly equivalent.

The Google RTB protocol represents the duration in milliseconds, whereas OpenRTB uses seconds.

OpenBidding

Parent: Adslot

Contains parameters relevant to Open Bidding. This will only be populated for Open Bidding partners.

Google RTB OpenRTB Notes
is_open_bidding
BidRequest.imp.ext.is_open_bidding Equivalent.

AdUnitMapping

Parent: Adslot

Google RTB OpenRTB Notes
keyvals
Message field. See Notes. See Keyval .
format
BidRequest.imp.ext.ad_unit_mapping.format Equivalent.

Keyval

Parent: AdUnitMapping

Google RTB OpenRTB Notes
key
BidRequest.imp.ext.ad_unit_mapping.keyvals.key Equivalent.
value
BidRequest.imp.ext.ad_unit_mapping.keyvals.value Equivalent.

CreativeEnforcementSettings

Parent: Adslot

Google RTB OpenRTB Notes
policy_enforcement
BidRequest.imp.ext.creative_enforcement_settings.policy_enforcement Equivalent.
publisher_blocks_enforcement
BidRequest.imp.ext.creative_enforcement_settings.publisher_blocks_enforcement Equivalent.

NativeAdTemplate

Parent: Adslot

Contains information about a native ad template. Roughly corresponds to the NativeRequest message in OpenRTB. We recommend that you review the migration notes for native ads .

Google RTB OpenRTB Notes
required_fields
BidRequest.imp.native.{request/request_native}.assets.required Non-trivial updates required.

Google protocol uses a single bitfield to determine whether several components of the native ad are required, whereas OpenRTB defines all components as a list of assets , which are required if its required field is set to True .

recommended_fields
BidRequest.imp.native.{request/request_native}.assets.required Non-trivial updates required.

Google protocol uses a single bitfield to determine whether several components of the native ad are recommended, whereas OpenRTB defines all components in a list of assets , which are recommended if its required field is set to False .

headline_max_safe_length
BidRequest.imp.native.{request/request_native}.assets.title.len Equivalent.

The Google RTB protocol's HEADLINE component is equivalent to OpenRTB's Title asset.

body_max_safe_length
BidRequest.imp.native.{request/request_native}.assets.data.len Equivalent.

The Google RTB protocol's BODY component is equivalent to OpenRTB's Data asset with its type set to DESC .

call_to_action_max_safe_length
BidRequest.imp.native.{request/request_native}.assets.data.len Equivalent.

The Google RTB protocol's CALL_TO_ACTION component is equivalent to OpenRTB's Data asset with its type set to CTATEXT .

advertiser_max_safe_length
BidRequest.imp.native.{request/request_native}.assets.data.len Equivalent.

The Google RTB protocol's ADVERTISER component is equivalent to OpenRTB's Data asset with its type set to SPONSORED .

price_max_safe_length
BidRequest.imp.native.{request/request_native}.assets.data.len Equivalent.

The Google RTB protocol's PRICE component is equivalent to OpenRTB's Data asset with its type set to PRICE .

image_width
BidRequest.imp.native.{request/request_native}.assets.img.wmin Equivalent.

The Google RTB protocol's IMAGE component is equivalent to OpenRTB's Image asset with its type set to MAIN .

image_height
BidRequest.imp.native.{request/request_native}.assets.img.hmin Equivalent.

The Google RTB protocol's IMAGE component is equivalent to OpenRTB's Image asset with its type set to MAIN .

logo_width
BidRequest.imp.native.{request/request_native}.assets.img.wmin Equivalent.

The Google RTB protocol's LOGO component is equivalent to OpenRTB's Image asset with its type set to LOGO .

logo_height
BidRequest.imp.native.{request/request_native}.assets.img.hmin Equivalent.

The Google RTB protocol's LOGO component is equivalent to OpenRTB's Image asset with its type set to LOGO .

app_icon_width
BidRequest.imp.native.{request/request_native}.assets.img.wmin Equivalent.

The Google RTB protocol's APP_ICON component is equivalent to OpenRTB's Image asset with its type set to APP_ICON .

app_icon_height
BidRequest.imp.native.{request/request_native}.assets.img.hmin Equivalent.

The Google RTB protocol's APP_ICON component is equivalent to OpenRTB's Image asset with its type set to APP_ICON .

style_id
BidRequest.imp.native.{request/request_native}.ext.style_id Equivalent.
style_layout_type
BidRequest.imp.native.{request/request_native}.ext.style_layout_type Equivalent.
slot_visibility
BidRequest.imp.native.{request/request_native}.ext.pos Equivalent.
style_height
BidRequest.imp.native.{request/request_native}.ext.style_height Equivalent.
style_width
BidRequest.imp.native.{request/request_native}.ext.style_width Equivalent.

AutoRefresh

Parent: Adslot

Google RTB OpenRTB Notes
refresh_settings
Message field. See Notes. See AutoRefreshSettings .
refresh_count
BidRequest.imp.refresh.count Equivalent.

AutoRefreshSettings

Parent: AutoRefresh

Google RTB
OpenRTB
Notes
refresh_type
BidRequest.imp.refresh.refsettings.reftype
Nearly equivalent.

The Google RTB field is an enum whereas the OpenRTB field is an integer. The integer specified in OpenRTB maps directly to Google RTB protocol's enum value.

  • UNKNOWN_AUTO_REFRESH_TYPE = 0
  • USER_ACTION = 1
  • EVENT = 2
  • TIME = 3
min_refresh_interval_seconds
BidRequest.imp.refresh.refsettings.minint
Equivalent.

StickySettings

Parent: Adslot

Google RTB OpenRTB Notes
vertical_stickiness
BidRequest.imp.banner.pos Nearly equivalent.

The OpenRTB field is an enum that represents several possible ad positions. When set to SIDEBAR it is equivalent to when vertical_stickiness is True .

OpenRTB's pos field also maps to Google RTB protocol's BidRequest.adslot.slot_visibility.

top_horizontal_stickiness
BidRequest.imp.banner.pos Nearly equivalent.

The OpenRTB field is an enum that represents several possible ad positions. When set to HEADER it is equivalent to when top_horizontal_stickiness is True .

OpenRTB's pos field also maps to Google RTB protocol's BidRequest.adslot.slot_visibility.

bottom_horizontal_stickiness
BidRequest.imp.banner.pos Nearly equivalent.

The OpenRTB field is an enum that represents several possible ad positions. When set to FOOTER it is equivalent to when bottom_horizontal_stickiness is True .

OpenRTB's pos field also maps to Google RTB protocol's BidRequest.adslot.slot_visibility.

SecureSignal

Parent: Adslot

Google RTB OpenRTB Notes
source
For both web and app:
BidRequest.user.ext.eids.source

For app only:
BidRequest.imp.ext.buyer_generated_request_data.source_app.id
Equivalent.
data
For web:
BidRequest.user.ext.eids.uids.id

For app:
BidRequest.imp.ext.buyer_generated_request_data.data
Equivalent.

BillableEventRateBidAdjustment

Parent: Adslot

Google RTB OpenRTB Notes
billable_event_rate_bid_adjustment.bid_adjustment
BidRequest.imp.ext.billable_event_rate_bid_adjustment.bid_adjustment Equivalent.
billable_event_rate_bid_adjustment.creative_type
BidRequest.imp.ext.billable_event_rate_bid_adjustment.creative_type Equivalent.
billable_event_rate_bid_adjustment.sdk.id
BidRequest.imp.ext.billable_event_rate_bid_adjustment.sdk.id Equivalent.

BidResponseFeedback

Parent: BidRequest

Google RTB OpenRTB Notes
request_id
BidRequest.ext.bid_feedback.request_id Nearly equivalent.

The Google RTB protocol represents this with bytes, whereas OpenRTB uses a base64-escaped string.

creative_status_code
BidRequest.ext.bid_feedback.creative_status_code Equivalent.
cpm_micros
BidRequest.ext.bid_feedback.price Nearly equivalent.

These fields are deprecated and are not populated in the bid request.

minimum_bid_to_win
BidRequest.ext.bid_feedback.minimum_bid_to_win Nearly equivalent.

The Google RTB protocol uses an integer to represent the price in micros using the bidder's configured currency. OpenRTB uses a double to represent the price in the bidder's currency units.

OpenRTB value = Google RTB value / 1,000,000

server_side_component_minimum_bid_to_win
BidRequest.ext.bid_feedback.sscminbidtowin Nearly equivalent.

The Google RTB protocol uses an integer to represent the price in micros using the bidder's configured currency. OpenRTB uses a double to represent the price in the bidder's currency units.

OpenRTB value = Google RTB value / 1,000,000

billable_event_rate_bid_adjustment
BidRequest.ext.bid_feedback.billable_event_rate_bid_adjustment Equivalent.
sampled_mediation_cpm_ahead_of_auction_winner
BidRequest.ext.bid_feedback.sampled_mediation_cpm_ahead_of_auction_winner Nearly equivalent.

The Google RTB protocol uses an integer to represent the price in micros using the bidder's configured currency. OpenRTB uses a double to represent the price in the bidder's currency units.

OpenRTB value = Google RTB value / 1,000,000

event_notification_token
BidRequest.ext.bid_feedback.event_notification_token.payload Nearly equivalent.

The Google RTB protocol represents this as bytes, whereas OpenRTB uses string.

buyer_creative_id
BidRequest.ext.bid_feedback.buyer_creative_id Equivalent.
feedback_type
BidRequest.ext.bid_feedback.feedbacktype Equivalent.
creative_index
N/A Unsupported.

This field isn't supported in Google's OpenRTB implementation. Bidders can use the buyer_creative_id to differentiate multiple bids instead.

buyer_origin
BidRequest.ext.bid_feedback.buyerorigin Equivalent.
interest_group_buyer_status_code
BidRequest.ext.bid_feedback.igbuyerstatus Equivalent.

SupplyChain

Parent: BidRequest

Google RTB OpenRTB Notes
complete
BidRequest.source.schain.complete Equivalent.
advertising_system_identifier
BidRequest.source.schain.nodes.asi Equivalent.
seller_identifier
BidRequest.source.schain.nodes.sid Equivalent.
handles_payment
BidRequest.source.schain.nodes.hp Equivalent.
version
BidRequest.source.schain.ver Equivalent.

Dsa

Parent: BidRequest

Google RTB OpenRTB Notes
dsa_support
BidRequest.regs.ext.dsa.dsarequired Nearly equivalent.

The OpenRTB dsa extension more closely matches the IAB spec, so it doesn't include the DSA_SUPPORT_UNKNOWN enum value. As a result, integer mappings for the remaining enum names are different.

publisher_rendering_support
BidRequest.regs.ext.dsa.pubrender Nearly equivalent.

The OpenRTB dsa extension more closely matches the IAB spec, so it doesn't include the PUBLISHER_RENDERING_SUPPORT_UNKNOWN enum value. As a result, integer mappings for the remaining enum names are different.

data_to_publisher
BidRequest.regs.ext.dsa.datatopub Nearly equivalent.

The OpenRTB dsa extension more closely matches the IAB spec, so it doesn't include the DATA_TO_PUBLISHER_UNKNOWN enum value. As a result, integer mappings for the remaining enum names are different.

Create a Mobile Website
View Site in Mobile | Classic
Share by: