Release Notes

June 16, 2017
June 15, 2017
June 8, 2017
June 7, 2017
June 6, 2017
June, 5, 2017
June 4, 2017
May 25, 2017
May 11, 2017
May 10, 2017
May 4, 2017
May 2, 2017
Apr 21, 2017
Apr 12, 2017
Mar 27, 2017
Mar 22, 2017
Mar 17, 2017
Mar 10, 2017
Mar 9, 2017
Mar 3, 2017
Mar 1, 2017
Feb 28, 2017
Feb 24, 2017
Feb 23, 2017
Feb 22, 2017
Feb 17, 2017
Feb 16, 2017
Feb 9, 2017
Feb 8, 2017
Feb 3, 2017
Jan 26, 2017
Jan 25, 2017
Jan 18, 2017
Jan 13, 2017
Jan 12, 2016
Jan 9, 2017
Jan 9, 2017
Jan 6, 2017
Jan 5, 2017
Jan 4, 2017
Dec 16, 2016
Dec 16, 2016
Dec 14, 2016
Dec 13, 2016
Dec 5, 2016
Dec 2, 2016
Nov 29, 2016
Nov 18, 2016
Nov 14, 2016
Nov 11, 2016
Nov 9, 2016
Nov 4, 2016
Nov 3, 2016
Nov 2, 2016
Oct 31, 2016
Oct 27, 2016
Oct 24, 2016
Oct 21, 2016
Oct 20, 2016
Oct 14, 2016
Oct 13, 2016
Oct 11, 2016
Oct 6, 2016
Oct 5, 2016
Sep 30, 2016
Sep 29, 2016
Sep 20, 2016
Sep 19, 2016
Sep 15, 2016
Sep 13, 2016
Sep 8, 2016
Sep 7, 2016
Sep 6, 2016
Sep 2, 2016
Aug 31, 2016
Aug 22, 2016
Aug 22, 2016
Aug 18, 2016
Aug 8, 2016
Aug 1, 2016
Jul 26, 2016
Jul 18, 2016
Jul 14, 2016
Jul 13, 2016
Jul 11, 2016
Jul 8, 2016
Jun 29, 2016
Jun 22, 2016
Jun 22, 2016
Jun 3, 2016
Jun 2, 2016
May 30, 2016
May 26, 2016
May 26, 2016
May 25, 2016
May 19, 2016
May 13, 2016
Apr 29, 2016
Apr 28, 2016
Apr 27, 2016
Apr 12, 2016
Apr 11, 2016
Apr 1, 2016
Mar 30, 2016
Mar 29, 2016
Mar 4, 2016
Feb 26, 2016
Feb 19, 2016
Feb 8, 2016
Jan 29, 2016
May 18, 2015
Jul 11, 2014
Jul 16, 2013
May 20, 2013
Apr 15, 2013
Mar 11, 2013
Oct 15, 2012
Jul 2, 2012
Jun 5, 2012
May 11, 2012
Nov 30, 2010 - May 11, 2012
Nov 30, 2010
Sep 14, 2010
Jun 17, 2010
Apr 14, 2010
Mar 10, 2010
Feb 24, 2010
Jan 27, 2010

June 16, 2017

What's New in RTB dictionaries

The mobile-os.csv dictionary file has changed.
Added line 630335,"iOS",10,4,-1.
Added line 630337,"iOS",11,0,-1.
Added line 630339,"Android",8,0,-1.
Added line 630341,"WindowsPhone",10,0,-1.
The creative-status-codes.txt dictionary file has changed.
Added 175 Creative filtered because it has an empty VAST XML document. Creative filtered because it has an empty VAST XML document.
Added 176 Creative filtered because the VAST document can't be parsed. Creative filtered because the VAST document can't be parsed.

June 15, 2017

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.21
Added the is_rewarded_inventory field. This field is populated with the same data as the BidRequest.AdSlot.is_rewarded field of the in the AdX protocol.

June 08, 2017

What's New in RTB dictionaries

The creative-status-codes.txt dictionary file has changed.
Added 174 Creative filtered because it lacks an MP4A file in the VAST.

June 7, 2017

What's New in RTB Proto version 127

Unspecified values were added to enums that lacked a default value.
This guards against a pitfall where new enum values are included in the BidRequest but the bidder is still using an older version of the RTB proto which lacks those enum value definitions. In such a case, the proto library will make the getter return the first-declared value (if no default). Making the first value unspecified ensures clients know to ignore such values.

June 6, 2017

What's New in RTB dictionaries

The creative-status-codes.txt dictionary file has changed.
Added 170 Creative filtered because it lacks a MOV file in the VAST.
Added 171 Creative filtered because it lacks a 3GPP file in the VAST.
Added 172 Creative filtered because it lacks a DASH file in the VAST.
Added 173 Creative filtered because it lacks an HLS file in the VAST.

June 5, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.5.0
Added support for vcm for video end cards. OpenRTB 2.5 allows the exchange to set vcm=1 when an end card is supported after the video. See the Banner object documentation in the OpenRTB guide for more information.
We now fill in cat in the App object for mobile apps, mapping mobile app categories to corresponding IAB values. See the App object documentation in the OpenRTB guide for more information.
We now fill in three metrics for the metric field in the imp object: click_through_rate, viewability, and completion_rate. See the Imp object in the OpenRTB guide for more information.

June 4, 2017

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.20
Added the attribute field. This field is populated with the same data as the attribute field of the Ad object in the AdX protocol, including the sizeless AdX attribute.
Added PublisherExt object to support sending the publisher country from the AdX proto.

May 25, 2017

What's New in RTB dictionaries

The creative-status-codes.txt dictionary file has changed.
Added 166 Creative filtered beacuse the publisher didn't whitelist the deal ID it targeted, and didn't enable unknown deal IDs from the exchange.
Added 167 Publisher requires premium (high-quality) snippets only, but this snippet does not match.
Added 168 Creative filtered because it lacks a MP3 (audio) file in the VAST.
Added 169 Creative filtered because it lacks a AUDIO (audio) file in the VAST.

May 11, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.5.0
We now honor the BidResponse.burl field.

May 10, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.5.0
We now set the BidRequest.wlang field.
For video ads, we now set the BidRequest.imp.video.placement field.

May 4, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.5.0
For video ads, we now set the BidRequest.{site|app}.content.producer.domain field.

May 02, 2017

What's New in RTB dictionaries

The geo-table.csv dictionary file has changed.
New locations have been added, mainly in the United States. See the full diff for details.

April 21, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.5.0
Updated to the OpenRTB 2.5 specification. Actual support for new fields in OpenRTB 2.5 will follow in future releases.

April 12, 2017

What's New in RTB dictionaries

The publisher-verticals.txt dictionary file has changed.
Lines were added and deleted to update the file.
The mobile-carriers.csv dictionary file has changed.
Lines were added and deleted to update the file.

March 27, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
Added comment to indicate that the ${AUCTION_PRICE} macro is now supported for impression_tracking_url.

March 22, 2017

What's New in RTB Proto version 126

The comments for the click_through_url field were changed to clarify its use.
Comments were added to indicate the field is functional as a destination URL declaration that won't be used in a live environment.

March 17, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
Updated the comment above the protocols field to reflect that the field is now set dynamically for each request, and is no longer hardcoded to a specific set of values.

March 10, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
Added comments to clarify that strings exceeding max_safe_length may be truncated by Ad Exchange or the publisher upon rendering.

March 9, 2016

What's New in RTB Proto version 125

Updated description for max_safe_length fields.
Added comments to clarify that strings exceeding max_safe_length may be truncated by Ad Exchange or the publisher upon rendering.

March 3, 2017

What's New in RTB dictionaries

The vendors.txt dictionary file has changed.
Added 889 Netscore.
See the list of certified vendors for more details.

March 1, 2017

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.9
Removed dfp_network_code. The value of this field is always the same as the first part of dfp_ad_unit_code so dfp_network_code field is no longer needed.

February 28, 2017

What's New in RTB Proto version 124

Added a new field under BidRequest.adslot.matching_ad_data.direct_deal: remaining_impressions_to_buy
See the RTB documentation for programmatic guaranteed deals for more details.

February 24, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
Comments were added to clarify use of the adm and adm_native fields.

February 23, 2017

What's New in RTB dictionaries

The creative-status-codes.txt dictionary file has changed.
Creative status codes 147,148,149,150, 151 are deprecated and no longer used.

February 22, 2017

What's New in RTB Proto version 123

The comments for the EndCapSupport enum were changed to make it clear that some values are unused.
Values END_CAP_FORBIDDEN and END_CAP_REQUIRED have never been set in the BidRequest.
The comments for click_through_url field were changed to clarify its use.
Comments were added to indicate the field is functional as a destination URL declaration that won't be used in a live environment.

February 17, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
Comments were removed to clarify that demographic fields are no longer mapped to AdX UserDemographic fields, which were deprecated.
A comment was added to describe the mapping back to the AdX proto for the BidRequest.Imp.secure field.

February 16, 2017

What's New in RTB dictionaries

The gdn-vendors.txt dictionary file has changed.
Added 888 ViewersLogic.
See the list of certified vendors for more details.
The vendors.txt dictionary file has changed.
Added 888 ViewersLogic.
See the list of certified vendors for more details.

February 9, 2017

What's New in RTB Proto version 122

The realtime-bidding.proto.txt dictionary file has changed.
Modified the description for IN_FEED.

February 8, 2017

What's New in RTB Proto version 121

Added new value for BidRequest.adslot.matching_ad_data.direct_deal.deal_type: PROGRAMMATIC_GUARANTEED.
See the RTB documentation for programmatic guaranteed deals for more details.

February 03, 2017

What's New in RTB dictionaries

The geo-table.csv dictionary file has changed.
Minor corrections to administrative hierarchies, mainly in France. See the full diff for details.

January 26, 2017

What's New in RTB dictionaries

The creative-status-codes.txt dictionary file has changed.
Added 165 Creative filtered by publisher's restrictions on which brands can be shown together. This code is used if the creative was filtered by competitive advertiser exclusions set up by the publisher.

January 25, 2017

What's New in RTB Proto version 120

Added BidRequest.AdSlot.is_rewarded.
This field indicates whether the user receives a reward for viewing the ad.

January 18, 2017

What's New in RTB dictionaries

The geo-table.csv dictionary file has changed.
Minor hierarchy fixes in geo-table.csv. See the differences list for details.
The publisher-verticals.txt dictionary file has changed.
Minor naming fixes added in publisher-verticals.txt. See the differences list for details.
The creative-status-codes.txt dictionary file has changed.
Added new status codes 163 Native ad image asset width not in permitted range and 164 Native ad image asset aspect ratio not in permitted range to creative-status-codes.txt. See the Creative and Snippet Status Codes page.

January 13, 2017

What's New in RTB dictionaries

The vendors.txt dictionary file has changed.
Added 885 Cloud Technologies.
Added 886 Research and Analysis of Media.
See the list of certified vendors for more details.
The gdn-vendors.txt dictionary file has changed.
Added 886 Research and Analysis of Media.
See the list of certified vendors for more details.

January 12, 2016

What's New in RTB Proto version 119

Updated the app_id description.
In the RTB proto, updated the comment for app_id to include a sample for Windows devices.

January 9, 2017

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
Comments were added to describe a new behavior: for the browser user agent string, certain data may be redacted or replaced.

January 9, 2017

What's New in RTB dictionaries

The vendors.txt dictionary file has changed.
Added 884 Nugg.ad.
See the list of certified vendors for more details.

Jan 6, 2017

What's New in RTB Proto version 118

Add IN_FEED Video Placement.
Add a new IN_FEED video placement in BidRequest's Video message. IN_FEED placement corresponds to an in-feed video format, for which the video creative shows when the user is scrolling through a feed of content, typically a social app feed, a news article, etc. The video renders in the main feed and in the user’s vision and reading flow, not to the side as e.g., for in-banner video.

January 5, 2017

What's New in RTB protos

RTB Proto version 117 and Cookie Bulk Upload proto version 4
Minor comment fix in cookie-bulk-upload.proto
Incremented the copyright notice year to 2017

January 4, 2017

What's New in Snippet Status Report Proto version 22

Added new disapproval reason 93 Unsupported Flash Content

December 16, 2016

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
Comments were updated to clarify that the native ad implementation may reject an image with an aspect ratio that's too far from the desired ratio, and that it will truncate strings that are too long.

December 16, 2016

What's New in RTB Proto version 116

Added comments.
Comments were updated to clarify that the native ad implementation may reject an image with an aspect ratio that's too far from the desired ratio, and that it will truncate strings that are too long.

December 14, 2016

What's New in RTB dictionaries

The creative-status-codes.txt dictionary file has changed.
The description for status code 99 was changed to 99 Creative filtered because it lacks a required video MIME type in the VAST file (the specific missing type is not available).
Minor typo fixes in descriptions of status codes 115,120, 131,147,148.

December 13, 2016

What's New in RTB Proto version 115

Added publisher_country
The billing address country of the publisher. This may be different from the detected country of the user in geo_criteria_id or the hosting country of the website.
Clarify comments of geo_criteria_id and postal_code

December 5, 2016

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
This release simply updates the comment for the OpenRTB BidRequest.imp.video.protocols field to reflect a change in the way the field is being filled. Instead of always containing the protocol numbers corresponding to VAST 3, this field will properly contain the protocol numbers for VAST 2, VAST 3, or VAST 4, depending on what is supported (see the RTB proto version 114 release notes).

December 2, 2016

What's New in RTB Proto version 114

Added BidRequest.Video.protocols
This field contains an array of supported video ad protocols, matching the OpenRTB 2.4 behavior. Currently, only VAST_2_0, VAST_3_0, VAST_2_0_WRAPPER, VAST_3_0_WRAPPER, VAST_4_0, and VAST_4_0_WRAPPER are possible.

November 29, 2016

What's New in RTB Proto version 113

Added support for new video playback method
Added a new enum value MOUSE_OVER to BidRequest.Video.VideoPlaybackMethod to comply with OpenRTB 2.0.

November 18, 2016

What's New in RTB Proto version 112

Removed old deprecated fields.
Fields that were previously deprecated and are no longer being set are now completely removed to remove clutter.

November 14, 2016

What's New in RTB Proto version 111

Deprecated BidRequest.AdSlot.ExchangeBidding.dfp_network_code.
The value of this field is always the same as the first part of BidRequest.AdSlot.dfp_ad_unit_code, so dfp_network_code field is no longer needed.

November 4, 2016

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.8
Added signals to the Native Extension in the OpenRTB Native 1.1 request.
Added the following fields: style_id, style_width, style_height, and style_layout_type.

November 9, 2016

What's New in RTB Proto version 110

Added BidResponse.Ad.NativeAd.click_link_url
The URL that the browser/SDK loads when the user clicks the ad. Can change between bids. For backward compatibility, when not set, the browser/SDK loads the first click_through_url. However, the click_through_url is expected to stay identical between bids for the same buyer_creative_id, while click_link_url may change.

November 4, 2016

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.7
Added BidResponse.SeatBid.Bid.exchange_deal_type
This is only used for exchange bidding (third party exchanges using real-time bidding on DFP). It represents information about the type of a deal that applies to an exchange bid.

November 4, 2016

What's New in RTB Proto version 109

Added BidResponse.Ad.AdSlot.exchange_deal_id and BidResponse.Ad.AdSlot.exchange_deal_type.
These are only used for exchange bidding (third party exchanges using real-time bidding on DFP). They represent information about deals that apply to an exchange bid.

November 3, 2016

What's New in RTB Proto version 108

Added BidRequest.AdSlot.allowed_ad_types.
This contains a repeated enum representing the ad types that are allowed in the bid response. Possible values are ALLOWED_AD_TYPE_BANNER, ALLOWED_AD_TYPE_NATIVE, and ALLOWED_AD_TYPE_VIDEO. This field should make it easier for bidders to identify what types of ads they can return.

November 2, 2016

What's New in RTB Dictionaries - new version of the geo-table.csv file

Highlights of the new geo targets:
About 100 USA/Canada National Parks. National Parks are available for targeting for the first time.
About 1200 Australia/Germany/Netherlands/France cities and postal codes.
78 Municipalities in Puerto Rico.
71 Provinces/Districts in Bangladesh.
21 Provinces/Cities in Costa Rica.
2 new country-level targets: Guernsey (GG) and Jersey (JE).
A few hundred province-level targets in South America, Africa and Middle East.

October 31, 2016

What's New in RTB Proto version 107

Update to the BidRequest.AdSlot.NativeAdTemplate.
Added the following fields: style_id, style_width, style_height, and style_layout_type.

What's New in RTB dictionaries

The ad-product-categories.txt dictionary file has changed.
Added over 200 new general categories which publishers can use to block ads. These categories are generally more fine-grained, allowing publishers to block narrower categories, e.g., Used Motor Vehicle creatives instead of all Automotive creatives. As before, this dictionary file is useful in mapping the category IDs found in the excluded_product_category field in bid requests to human-readable categories.
For more detail, see the full list of differences.

October 27, 2016

What's New in RTB Proto version 106

Added BidRequest.AdSlot.sticky_settings.
This contains the different types of stickiness settings that a publisher can declare on their inventory. Three types of stickiness settings are supported - vertical stickiness, bottom horizontal stickiness, and top horizontal stickiness.
BidRequest.AdSlot.stickiness is now deprecated.
This field is deprecated in favor of BidRequest.AdSlot.sticky_settings.vertical_stickiness.

What's New in RTB dictionaries

The publisher-verticals.txt dictionary file has changed.
Fixed typos in some category names; download the list of differences for details.

October 24, 2016

What's New in RTB Proto version 105

Deprecated field BidRequest.user_demographics.
The BidRequest.user_demographics field has been deprecated.

October 21, 2016

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.6
Added BidRequest.imp.dfp_ad_unit_code.
This is only used for exchange bidding (third party exchanges using real-time bidding on DFP).

What's New in RTB Proto version 104

Added BidRequest.AdSlot.non_browser_slot_source.
This will be set when a publisher declares that the ad slot is served on a non-browser inventory, and will specify the kind of non-browser inventory.
Added BidRequest.AdSlot.is_interstitial_slot.
This will be set when a publisher declares that the ad slot is an interstitial, covering the content for a period of time.

October 20, 2016

What's New in RTB Proto version 103

Added BidRequest.AdSlot.dfp_ad_unit_code.
This is only used for exchange bidding (third party exchanges using real-time bidding on DFP).

October 14, 2016

What's New in RTB dictionaries

The geo-table.csv dictionary file has changed.
Corrected minor spelling and geo hierarchy errors. See the differences list for details.

What's New in OpenRTB

Google OpenRTB protocol 2.4.1
This release doesn't make any change to the protos, but updates mapping with initial support for OpenRTB 2.4:
Banner impression sizes are now mapped to Banner.format. The wmin, wmax, hmin and hmax fields are deprecated and won't be populated for 2.4+. The w and h fields are still populated (with the first dimension like before).
Video.skip is now populated.
Bid.api is now supported.
HTTP headerx-openrtb-version is "2.4".
Bidders using OpenRTB/JSON can opt into the new version 2.4 via RTB API; bidders using OpenRTB/Protobuf can only use version 2.3 and future upgrade will be announced separately.

October 13, 2016

What's New in RTB Proto version 102

Updated the "Connected_TV = 4" description.
In the RTB proto, updated the comment for "Connected_TV = 4" to more completely describe the devices included.

October 11, 2016

What's New in Snippet Status Report Proto version 21

Added new disapproval reason 92 Personal Loans

October 6, 2016

What's New in RTB Proto version 101

Updated the native ads template comment.
In the RTB proto, modified the native ads template comment to note that under some circumstances the html_snippet or video_url field can be set instead of the native_ad field.

October 5, 2016

What's New in RTB Proto version 100

Updated the comment for mobile advertising identifier.
In the RTB proto, updated the comment on the BidRequest.Mobile.encrypted_advertising_id field to clarify on which platforms it is available (in addition to iOS and Android devices).

September 30, 2016

What's New in RTB Proto version 99

Added video completion rate signal to Real Time Bidding.
In the RTB proto, added a new field video_completion_rate to BidRequest.AdSlot. This field indicates an estimate of the likelihood that a video ad served in this slot will be viewed to completion.

September 29, 2016

What's New in RTB dictionaries

The vendors.txt dictionary file has changed.
Added 880 Navegg.
See the list of certified vendors for more details.

September 20, 2016

What's New in Snippet Status Report Proto version 20

Added new disapproval reasons.
90 Maximum number of HTTP calls exceeded
91 Maximum number of cookies exceeded
Renamed disapproval reason 36 from Invalid ad download size to Maximum download size exceeded

September 19, 2016

What's New in RTB dictionaries

The buyer-declarable-creative-attributes.txt dictionary file has changed.
Added 105 Rendering: Sizeless AdX. Used to declare whether an HTML creative can dynamically resize to fill a variety of slot sizes. Refer to the interstitial ads documentation for further information.

September 15, 2016

What's New in RTB Proto version 98

Added support for native video in Real Time Bidding.
In the RTB proto, added a new enum value VIDEO to BidRequest.NativeAdTemplate and a new field video_url to BidResponse.NativeAd. This allows bidders to send back a video response in native_ad field when VIDEO is present in BidRequest.native_ad_template.required_fields or BidRequest.native_ad_template.recommended_fields.

September 13, 2016

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.1
This releases contains minor fixes for OpenRTB 2.4, specifically: deprecation status of several fields; extension support for Audio and Format; correct enum type of the new field Bid.qagmediarating.

September 8, 2016

What's New in RTB dictionaries

The creative-status-codes.txt dictionary file has changed.
Changed description of status 107 to Required elements specified in bid_request.adslot.native_ad_template.required_fields are missing or empty, to reflect the logic change that adds filtering on required native ad elements with explicit empty values.

September 7, 2016

What's New in RTB Proto version 97

Updated comments to clarify that for iOS apps, the app_name is provided by AppAnnie.

September 6, 2016

What's New in Snippet Status Report Proto version 19

Added new disapproval reasons.
81 Video too long
82 Violates Japanese pharmacy law
83 Unaccredited pet pharmacy
84 Unacceptable content: abortion
85 Unacceptable content: birth control
86 Violates Chinese serving requirements
87 Creative promotes a Korean pharmacy without proper certification
88 Non-family safe or adult content
89 Unacceptable content: clinical trial recruitment

September 2, 2016

What's New in OpenRTB Protos

Google OpenRTB protocol 2.4.0
This is a major new release that updates the protocol schema for the latest specification versions: OpenRTB 2.4 and OpenRTB Native 1.1. The change is backward-compatible at the wire level, but incorporating the new schema into the bidder may require trivial code changes. Specifically, there are two changes:
New fields are added according to the latest spec. They are not set yet, and support for them will be announced separately.
All enums are now top-level instead of nested. This does not change the wire representation, but requires fixing imports or using differently qualified enum names in some languages.

August 31, 2016

What's New in RTB dictionaries

The gdn-vendors.txt dictionary file has changed.
Added 284 Research Now.
See the list of certified vendors for more details.
The vendors.txt dictionary file has changed.
Added 284 Research Now.
Added 876 Exponential Expandable.
See the list of certified vendors for more details.

August 22, 2016

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.5
Added BidRequest.imp.dfp_network_code.
This is only used for exchange bidding (third party exchanges using real-time bidding on DFP).

August 22, 2016

What's New in RTB Proto version 96

Added dfp_network_code to BidRequest.AdSlot.ExchangeBidding.
This is only used for exchange bidding (third party exchanges using real-time bidding on DFP).

August 18, 2016

What's New in RTB Proto version 95

Changed the semantics of mediation_status field.
The field is set to DIRECT_REQUEST or UNKNOWN based on whether the ad request has been determined to come directly from the publisher or not.

August 8, 2016

What's New in RTB Proto version 94

Added amp_ad_request_type to BidRequest.AdSlot.
This field indicates whether the page is an Accelerated Mobile Page (AMP).

August 1, 2016

What's New in RTB Proto version 92

Noted that responses to bid requests are filtered out of the auction whether the is_test field of the bid request is set to true or false during initial testing with Google traffic.

July 26, 2016

What's New in RTB dictionaries

The gdn-vendors.txt dictionary file has changed.
Added 874 Cint.
See the list of certified vendors for more details.
The vendors.txt dictionary file has changed.
Changed 332 Audience Manger (DemDex/Omniture) to 332 Audience Manger (DemDex).
Changed 832 The AdExchange to 832 The ADEX.
Added 874 Cint.
See the list of certified vendors for more details.

July 18, 2016

What's New in RTB Proto version 92

Updated comments to clarify that for native ads the click_through_url provides the URL of the landing page to which the user is delivered while the click_tracking_url specifies a URL on which a background thread can ping for tracking purposes.

July 14, 2016

What's New in RTB dictionaries

The vendors.txt dictionary file has changed.
Added 838 Revjet Expandable.
Added 863 Bonzai Expandable.
Added 864 INCUBIQ Solutions.
The vendors.txt and gdn-vendors.txt dictionary files have changed.
Cleaned up all VAST video vendors, which have been deprecated since April 2016: they are always allowed (no declaration needed) and do not appear in the allowed_vendors field in bid requests.
See the list of certified vendors for more details.

July 13, 2016

What's New in Snippet Status Report Proto version 18

Added a new detected_domain field that exposes the domains detected during verification scans.

July 11, 2016

What's New in RTB Proto version 91

Updated comments to indicate that parts of the user agent string might be redacted or replaced.

July 8, 2016

What's New in RTB Proto version 90

Updated comments to clarify that only the first value of click_through_url is used as the click URL for native ads.

June 29, 2016

What's New in RTB Proto version 89

Updated comments to clarify that url always contains a protocol.

June 22, 2016

What's New in RTB Proto version 88

Updated comments to clarify that click_through_rate does not include data aggregated from AdWords.

June 22, 2016

What's New in RTB Proto version 87

Clarified in the BidResponse comment that the BidRequest can have only one AdSlot.
Made some minor wording changes in other comments.

June 3, 2016

What's New in RTB Dictionaries - new version of the geo-table.csv file

It adds almost 6000 new geo targets. These targets are already live and present in bid requests (with the exception of Myanmar, which is not live yet). Notable additions:
2214 sub-localities and postal codes in the Netherlands.
1423 cities, neighborhoods and postal codes in Malaysia.
722 cities, neighborhoods and postal codes in major eastern European countries (Poland, Hungary, Czech Republic) and in Greece.
639 provinces, cities and neighborhoods in the Philippines.
155 cities and sub-localities in Sweden.
104 cities and postal codes in Germany.
Some highlights from the long tail:
2 important sub-localities in New York City - Manhattan and Queens.
44 targets in Myanmar, include the country itself (note: not live yet).
Capitals / large cities in many countries, for example Nairobi in Kenya and Guatemala City in Guatemala.

June 2, 2016

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.4
Added BidRequest.processing_time_ms.

May 30, 2016

What's New in Snippet Status Report Proto version 17

Added the VIDEO_IN_SNIPPET_ATTRIBUTE_ADDED declaration correction.
This correction is applied when an HTML snippet is playing video content, and therefore should be blocked on inventory that forbids video.
Added the detected_language field.
This field reports the languages that AdX detected for the creative.
These languages are used for applying publisher language blocks. See also the allowed_languages field in the RTB proto.
Added the context field to the Correction message.
This field describes the context(s) in which the correction is applied.
Correction and serving contexts now separate mobile web from mobile app.
Added new values to the Platform enum: ANDROID_IN_APP and IOS_IN_APP. Preexisting ANDROID and IOS values have been renamed to ANDROID_WEB and IOS_WEB.

May 26, 2016

What's New in OpenRTB Protos

Google OpenRTB extensions protocol v.3
Added BidRequest.imp.publisher_parameter and BidResponse.SeatBid.Bid.bidder_name.
Both fields are only used for exchange bidding (third party exchanges using real-time bidding on DFP).

May 26, 2016

What's New in RTB Proto version 86

Added allowed_languages to BidResponse.AdSlot.
This field contains the creative languages allowed by the publisher.
When not set, all languages are allowed.

May 25, 2016

What's New in RTB Proto version 85

Added exchange_bidding to BidRequest.AdSlot and bidder_name to BidResponse.Ad.
Both fields are only used for exchange bidding (third party exchanges using real-time bidding on DFP).

May 19, 2016

What's New in OpenRTB Protos

Google OpenRTB protocol 2.3.3
Fixed Native response's Video.vasttag to be a scalar, not array.
Updated comments to reflect changes in the encoding of fields: BidRequest.id, User.customdata, Device.ifa.
Google OpenRTB extensions protocol v.2
Added BidRequest.imp.allowed_vendor_type and BidResponse.SeatBid.Bid.ad_choices_destination_url.

May 13, 2016

What's New in RTB Proto version 84

Added ad_choices_destination_url to BidResponse.Ad.
This field can be used to provide a link to your ad preferences page.
This is only supported for native ads.
If provided, a standard AdChoices icon is added to the native creative and linked to this URL.

April 29, 2016

What's New in RTB dictionaries

Removed VAST (in-stream video) vendors from the declarable lists.
These vendors are now allowed without declaration. Since publishers do not have the ability to opt into or block them, we also no longer send them in the allowed_vendors field in bid requests.
See the list of certified vendors for more details.

April 28, 2016

What's New in RTB Proto version 83

Updated comments to clarify that viewability may be estimated based on historical or environment data.

April 27, 2016

What's New in RTB dictionaries

Removed vendor 113 "Image & Flash" from the declarable lists.
This vendor is deprecated. It should not be declared in bid responses, since it does not stand for any 3PAS technology (but if it is declared, the bid will not be filtered because of it). Bidders should ignore the presence or absence of this vendor in the allowed_vendors field in bid requests, since it is not a meaningful signal.

April 12, 2016

What's New in BidResponse

Updated comments to clarify that XML responses fetched via video_url can conform to either VAST 2.0 or 3.0.

April 11, 2016

What's New in RTB dictionaries

Removed the obsolete site-lists.txt dictionary file
AdX stopped populating the site_list_id field in bid requests in October 2015, eliminating the need for the site-lists.txt dictionary. Removed it to reduce confusion.

April 1, 2016

What's New in RTB Proto version 81

Updated comments
Updated comment on the creative_index field of BidResponseFeedback to say that it always refers to the index of the ad in the response.

March 30, 2016

What's New in the Snippet Status Report - Deals Policy Update

Fine-grained status is provided for both Open Auction and Deals.
In general, open_auction_status and deals_status are a replacement for status, which is now deprecated.
The new serving_restriction field provides detailed, contextual status.
This replaces the now deprecated disapproval_reason. It allows us to communicate the status of an ad in a specific context. E.g. the ad is disapproved on mobile because it contains Flash or the ad cannot serve in Russia because it has not yet been reviewed there.
Added a new Status enum value: CONDITIONALLY_APPROVED
It is used when the ad is approved in general, but with restrictions in some contexts. Most ads will be CONDITIONALLY_APPROVED for the open auction.

March 29, 2016

What's New in OpenRTB Proto version 2.3.2

Improved documentation for several fields:
id in the BidRequest and BidResponse; ip, ipv6, carrier, dpidm5 and advertising_id in Device; Geo message; customdata in User; clicktrackers in Link.

March 4, 2016

What's New in OpenRTB Protos

Google OpenRTB protocol 2.3.1 (available now)
Contains the latest version of Google Ad Exchange's OpenRTB protocol. Field mappings to Ad Exchange's RTB protocol can be found in the comments.
Google OpenRTB extensions protocol v.1 (available now)
Contains Google Ad Exchange's extensions used in the OpenRTB protocol.

February 26, 2016

What's New in RTB Proto version 80

Updated comments on the fixed_cpm_micros field of direct deals.
Renamed enum values of the VideoFormat field to better match functionality: VIDEO_FLASH to VIDEO_FLV and VIDEO_HTML5 to VIDEO_MP4.
Added new supported values to the VideoFormat field: VPAID_FLASH (SWF) and VPAID_JS (Javascript).

February 19, 2016

What's New in RTB Proto version 79

Updated comments on the placement field.

February 8, 2016

What's New in RTB Proto version 78

Added a new video placement field to replace inventory_type field.
The video sub-message in the RTB Proto now has a placement field to differentiate between INSTREAM and INTERSTITIAL. The inventory_type field is deprecated, this field duplicates information found elsewhere in the RTB proto.
Added a new renderer field to the ad slot submessage.
The renderer field defines who controls the environment (either Google or the publisher) that made the ad request and will render the ad. This field is only set for requests that allow VAST video ads.

January 29, 2016

What's New

Updated snippet-status-report-proto.txt to v.15
Added two CorrectionType enum values: IN_BANNER_VIDEO_ATTRIBUTE_ADDED and MRAID_ATTRIBUTE_ADDED. Refer to the comments on the new values for more details.

May 18, 2015

What's New

Ad Exchange starts enforcing an upper sanity limit on bids
To protect itself and its partners from bugs and misconfigurations, Ad Exchange starts enforcing an upper sanity limit of $5000 CPM on bids. See Bid Response Filtering for details.

July 11, 2014

What's New

Flash-Less Declaration in Bid Response is No Longer Necessary
Ad Exchange buyers no longer need to declare use of flash-less creative when bidding on flash-less inventory as Ad Exchange will automatically detect the presence of flash-less creative. Buyers still need to include flash-less creative when bidding on flash-less inventory. If a buyer responds to a flash-less bid request with a flash creative, Ad Exchange will detect the presence of flash creative and filter out the Bid Response. Please note that Ad Exchange will not detect if a flash-less backup creative is included with a flash creative in a Bid Response and Ad Exchange will filter out that Bid Response for including a flash creative.
The Name of the "encrypted_idfa" Field Has Been Changed to "encrypted_advertising_id"
Ad Exchange has changed the name of the "encrypted_idfa" field to "encrypted_advertising_id" so that the field name reflects that we are able to pass buyers either the IDFA or advertising ID in the BidRequest based on which is available. Ad Exchange buyers can continue referring to the original "encrypted_idfa" field name until they download and start using the latest version of the RTB proto. Once a buyer starts using the latest version of the RTB proto, they need to update their bidder to refer to "encrypted_advertising_id" as the new name for that field. See Targeting mobile app inventory with IDFA for details.
New Field to Identify if Video Player is Embedded
Ad Exchange has added a new field to the RTB proto to specify if the video player is embedded or not embedded. The new field is called "is_embedded_offsite" and if true, the video is embedded on pages out of the publisher's domain. See Ad Exchange Video Integration Guide for details.

July 16, 2013

What's New

[IMPORTANT] BidResponses must include ad size for multi-size requests

For all bid requests that specify multiple ad sizes, your BidResponse must include the BidResponse.Ad.width and BidResponse.Ad.height fields. Bid responses to multi-size requests that do not include these fields will be dropped from the auction. We expect that about 5% of ad requests will contain multiple ad sizes starting September 24, 2013 as we turn on multi-size dynamic allocation in DFP. We expect this percentage to grow over time.

Although bid responses to single-size bid requests are not required to include the Ad.width and Ad.height fields, we suggest always including them, as a best practice.

[REMINDER] Per-region CSV reports to be deprecated on July 9, 2013
After July 9, the per-region CSV performance reports will no longer be available for download.
[REMINDER] Download size increased to 150 kilobytes
We have increased the maximum allowable download size from 50 kb to 150 kb. In addition we are activating automated enforcement for this policy so that ads that exceed 150 kb will be disapproved. See our Help Center documentation for details.
[REMINDER] Flashless Creative Declaration for Mobile In-App Inventory
All mobile in-app RTB certified buyers MUST indicate that an ad is flash-less in their bid response if they are responding to a mobile app callout. If the correct creative declarations are not present, the ad can be disapproved. See the Help Center documentation for more details.
[REMINDER] carrier_name and carrier_country to be removed from bid requests
On June 4, 2013, we have ended official support of the carrier_name and carrier_country fields in the BidRequest. Buyers should adopt the new carrier_id field. Find out more by referring to the March newsletter.

May 20, 2013

What's New

Google Hosted Match Tables (available now)

Google is now able to host a buyer’s match table between the buyer’s IDs and Google’s cookie IDs. This reduces the infrastructure requirements for our buyers and lays the groundwork for further cookie matching enhancements. Buyers are now able to, in one call, add the user to one or more user lists and set the DoubleClick cookie if it’s missing.

We strongly recommend that you embrace Google hosted cookie match tables. In addition to efficiency and cost savings from switching, you will also be eligible to join our pixel matching beta which on average improves cookie match rates by 20-30%. To be eligible, you must be using Google hosted match tables, so we encourage all AdX RTB buyers to do so as soon as possible.

Change to Cookie Matching behavior
Starting on May 7, AdX will be changing how the doubleclick.net cookie is set. By default, AdX will set a doubleclick cookie during all cookie match calls. If you do not want AdX to set the doubleclick cookie, please modify your bidder to include the new google_no_sc parameter during cookie matching. To learn more, read about this change in our documentation.
[IMPORTANT REMINDER] Cookie Matching v1 to be deprecated on June 4, 2013
Read more about this change in our Cookie Matching documentation or in the previous newsletter.
[REMINDER] Change to Pixel Match requirements
Starting July 9, Pixel Match responses which do not include the specified google_push value will be dropped. This change will help us improve our latency troubleshooting efforts and improve our pixel match efficiency. Check out the full details in our previous newsletter.
[REMINDER] RTB Protocol UPDATE - New Agency Field in BidResponse
To enable buyers and sellers to create Preferred Deals and Private Auctions for a specific agency, a new field, agency_id, has been added to the BidResponse. We have created a new dictionary file with accepted agencies to implement this new field. To find out more, see our Help Center documentation or reach out to your Technical Account Manager.
[REMINDER] Geo fields replaced by geo_criteria_id
Starting soon, the {country, region, city, metro} fields in the RTB Protocol will no longer be passed in BidRequests. These fields have been replaced with the new geo_criteria_id field. Read more about this important change in our March newsletter or on our developer site.

April 15, 2013

What's New

[IMPORTANT] seller_network field has been deprecated.
The seller_network field has been replaced with the new seller_network_id field, which contains an integer corresponding to a network found in the seller-network-ids.txt dictionary file. We stopped setting the seller_network field as of April 2, 2013. Please update your bidder to use the new field, particularly to identify inventory from the Google Display Network, which now has a seller_network_id value of 1.
[IMPORTANT] Change to Pixel Match requirements
Starting in mid-April, we will begin assigning a URL-safe string value to the google_push parameter in our pixel match requests and we will expect that same URL-safe string to be returned in the google_push parameter you set. This change will help us with our latency troubleshooting efforts and improve our pixel match efficiency.
RTB Protocol update - New Agency Field in BidResponse

To enable buyers and sellers to create Preferred Deals and Private Auctions for a specific agency, a new field, agency_id, has been added to the BidResponse. To implement this new field we have created a new dictionary file, agencies.txt, with accepted agencies.

Supporting this field will give buyers more flexibility in their programmatic offerings and help you negotiate more Preferred Deals with publishers looking for buyers with this capability. To find out more, see our Help Center documentation or reach out to your Technical Account Manager.

Google-hosted creatives can no longer be used for RTB
In the past, buyers were able to use Google-hosted creative files for both RTB and UI campaigns. Now RTB buyers can no longer respond with Google-hosted creatives and all Google-hosted creatives sent in the creative_id field via RTB will be discarded. Hosted creatives are still available to UI buyers.
RTB Real-time Feedback BETA
To facilitate more dynamic bidder strategies, we can provide near real-time auction feedback on why your bid did not win, for example: publisher blocks, creative not approved, or a higher bid. The actual reason will be passed in the BidResponseFeedback sub-message in a subsequent BidRequest and there is a complete list of possible reasons on the downloads page in creative-status-codes.txt. For losing bids that exceeded the specified price floor and used creatives that were not filtered pre-auction, we will pass back the price needed to win the auction. Only buyers that opt-in to disclosing their winning bid data may participate in this limited beta. If you are interested in participating, please contact your Technical Account Manager.

March 11, 2013

What's New

[IMPORTANT] Cookie Matching v1 to be deprecated
Starting June 4, 2013, we will no longer support Cookie Matching V1. To better serve our buyers, we built more advanced features, such as Hosted Match Tables, into our Cookie Matching v2 API. If you have not done so already, we strongly recommend that all buyers upgrade to the new version of Cookie Matching as soon as possible.
[IMPORTANT] Update seller_network_id change
If you buy inventory by targeting using the seller_network_id field, please note that we have made changes to some of the IDs in the seller-network-ids.txt file. These changes were the result of a one time re-indexing of the IDs and the existing mappings will be persistent and subsequent publisher additions will be appended to the end of the file. Please note that the Google Display Network (GDN) seller_network_id has changed from 0 to 1.
Please download the most recent dictionary file of seller network IDs to ensure that you are properly targeting GDN and other publisher networks on AdX. If you have any questions, please contact your Account Manager.
[IMPORTANT] Impressions eligible for multiple ad sizes must include Ad Width and Height in the BidResponse
Publishers are increasingly accepting multiple ad sizes for individual ad slots. These impressions include multiple sizes in the BidRequest.AdSlot field and require the BidResponse.Ad.width and BidResponse.Ad.height fields to be returned in corresponding BidResponses. Bid Responses made in response to requests containing multiple Ad sizes must include these fields or else they will be automatically filtered from the auction.
Currently multiple ad size bid requests are only available to buyers passing the BidResponse.Ad.width and BidResponse.Ad.height fields in their BidResponse. This accounts for 3% of available impressions and will increase in Q2 as more inventory becomes available from our DoubleClick for Publishers clients. We will soon be creating a whitelist to make this inventory available only to buyers who set the ad size in response to multiple ad size bid requests. If your bidder is not currently returning BidResponse.Ad.width and BidResponse.Ad.height fields in your BidResponses, you are encouraged to start doing so to be eligible for such inventory. Please contact your Account Manager for more details on how to join the white list.
[IMPORTANT REMINDER] SSL - Upcoming Change for 3rd Party Ad Serving
We are excited to start support for Secure Socket Layer (SSL) encrypted traffic, which will allow DoubleClick Ad Exchange (AdX) to start offering additional inventory types to our clients, including webmail and other inventory from logged-in users. SSL inventory is unique in that all subsequent calls to 3rd parties after the initial ad request must also be SSL-based or the browser will display a warning to the user. In order to ensure a seamless consumer experience across AdX, we are introducing a new SSL certification to confirm all buyer technologies are SSL compliant.
As we mentioned at the end of October last year, the first source of SSL inventory on AdX will come from signed-in users of Google owned and operated properties such as YouTube. Currently, only a small percentage of YouTube inventory is SSL-enabled, but in May 2013 this volume will ramp up to all signed-in YouTube users, totalling about 40% of YouTube traffic. The supply of SSL inventory on AdX will continue to grow this year as we add new inventory from webmail and other secure environments.
SSL inventory will only be available to buyers certified as SSL compliant by the Google certification team. Don’t miss out on this opportunity--start implementing SSL on your RTB and 3rd party ad serving platform as soon as possible.
RTB buyers do not need to use separate buyer_creative_id for the SSL and non-SSL snippets. See our help center documentation for additional details.
[REMINDER] New Formatting for Publisher Settings Files
We recently made a change to the format of our Publisher Settings Files (PSFs) to make processing them easier. The new format splits the PSF into two 9MB files and reduces the overall file size by 60%.
In addition, we will be transitioning from an id field of type bytes to an id field of type fixed64. Currently both fields are being provided but as of April 2, 2013 only the fixed64 id field will be filled.
PSFs provide buyers with information about individual publisher inventory requirements to help their bidders make better decisions. The PSFs include data such as: allowed ad technologies, excluded categories, and blocked landing pages. Please contact your Technical Account Manager with questions or refer to the Real-Time Bidding documentation.
[RTB Protocol] ROADMAP PLANNING - New Agency Field in BidResponse coming in March
With the growth of programmatic buying, publishers are increasingly looking to sign programmatic deals directly with agencies. To enable buyers and sellers to create Preferred Deals segmented by specific buyer/agency/advertiser, a new Agency field will be added to the BidResponse. The ability to create Agency specific deals gives buyers more flexibility with programmatic buying on AdX by reducing spending conflicts with other advertisers and agencies on their account.
We believe that this is an important change and one that requires some development work so we’re making this announcement to give you sufficient time to plan for the necessary modifications to your bidders. We will begin accepting this field at the end of March and it will be available in Preferred Deals later in Q2. Supporting this field will give buyers more flexibility in their programmatic offerings and help you negotiate more Preferred Deals with publishers looking for buyers with this capability.
Once available, you’ll be able to fill in the Agency field at the time of creative submission or in the BidResponse. Stay tuned for more details on how to implement the new Agency field and reach out to your Account Manager if you have any questions.
Cookie matching macros now available
Now you have the option to configure your cookie matching URLs with one or more macros to determine the order and location in which cookie matching parameters are added to the URL. By using these macros you have more flexibility and control for cookie matching. Please read our Cookie Matching Guide to learn more about the new macros and how to use them.

October 15, 2012 Release

What's New

New geo_criteria_id
Starting on April 2, 2013, the {country, region, city, metro} fields in the RTB Protocol will no longer be passed in BidRequests. These fields will replaced with the new geo_criteria_id field, which is an ID representing geographic locations that can be found in the Targets Table at our developers site here. If you have any questions, please contact your Technical Account Manager.
[ACTION REQUIRED] Migration from seller_network to seller_network_id
The seller_network field will be replaced with the new seller_network_id field, which contains an integer corresponding to a network found in the seller-network-id.txt dictionary file on the Downloads page. We will stop setting the seller_network field on April 2, 2013.
Please update your bidder to use the new field, particularly to identify inventory from the Google Display Network.
[IMPORTANT] Ad Width and Height must be included for multiple ad size bid requests
For all bid requests that contain multiple ad sizes, your BidResponse must include the BidResponse.Ad.width and BidResponse.Ad.height fields. Bid responses to requests with multiple Ad sizes that do not include these fields will be dropped from the auction.
Although bid requests with a single ad size in the BidRequest.AdSlot need not include the Ad.width and Ad.height fields, we suggest always declaring the Ad Size as a best practice.

Back to top

July 2, 2012 Release

What's New

New RTB Protocol Field
The BidRequest.AdSlot.ad_block_key field in the RTB protocol contains a 64-bit integer that provides a stable identifier for the (web_property, slot, page) combinations. This new field allows you to track the performance of specific adslot-ad combinations to make better bidding decisions.
If you have any questions about the new BidRequest.AdSlot.ad_block_key field, contact your Technical Account Manager or refer to the RTB protocol developer documentation.
AdGroup ID required when a BidRequest has multiple ad groups
The BidResponse must include the adgroup_id field when responding to any bid request that has multiple ad groups. A bid request that has multiple matching_ad_data fields (sub-messages) has multiple ad groups, because each matching_ad_data field contains exactly one ad group.
Prior to July 2, 2012, the bid response needed to include the adgroup_id field only when the bidder used hosted creatives or merged streams. This requirement is now obsolete.
Bulk location targeting in the UI
The bulk upload tool for locations, which can make location targeting strategies more powerful, is now part of the Ad Exchange UI.

Back to top

June 5, 2012 Release

What's New

GDN has replaced GCN as the permitted value in the seller_network field
The BidRequest now sends a value of GDN in the seller_network field, replacing the value of GCN that was sent prior to June 1, 2012. Wherever your bidder uses the seller_network field, be sure that you have reviewed and if necessary adapted your code so that the value change does not cause problems.
Interactive in-stream video ads beta based on VPAID v1.0 standard
VPAID stands for "Video Player-Ad Interface Definition" and is an IAB-published industry standard for interactive in-stream video ads. Ad Exchange has begun limited beta support for VPAID ads through the RTB Protocol and the UI. To learn more, contact your account representative.
New mobile_device_type field in BidRequest
Bid requests for mobile inventory now include the mobile_device_type field. The field's value specifies the type of mobile device on which the ad is to be shown: either TABLET or HIGHEND_PHONE.
New nomenclature: Preferred Deals, formerly known as Direct Deals
The term "Direct Deal" has been replaced by "Preferred Deal" in the UI and Help. Look for the new nomenclature in the relevant section of the Buyer REST API documentation in the near future.
New UserList message in BidRequest
Bid requests may include one or more UserList messages. Each UserList message specifies an audience-targeting list to which the user has been added, along with the time elapsed since the user was added. See the Buyer UI Help topics on remarketing, where the audience-targeting list is called a remarketing list. To arrange for your bidder to use this feature, contact your account representative.
Transition of the excluded_sensitive_category field from string to int32
Your bidder may use excluded_sensitive_category field in the publisher-settings protobuf to see what content categories are disallowed by publishers. If so, be aware that this field is now being sent in two forms: the repeated int32 excluded_sensitive_category, and the repeated string DEPRECATED_excluded_sensitive_category. We recommend that when it is convenient, you modify your bidder to handle the int32 form of this field to prepare for the eventual sunset of the string.
When sending bid requests that lack URL and anonymous ID, Ad Exchange can skip your bidder
If you prefer that bid requests which contain neither a page URL nor an anonymous ID are never sent to your bidder, contact your account representative about this new option.

Coming Soon

Bulk location targeting in the UI
The bulk upload tool for locations, which can make location targeting strategies more powerful, continues its gradual rollout as part of the Ad Exchange UI.
AdGroup ID to be required when a BidRequest has multiple ad groups
Beginning July 2, 2012, the BidResponse must include the adgroup_id field when responding to any bid request that has multiple ad groups. Here's how you can tell when a bid request has multiple ad groups: look for multiple matching_ad_data fields (sub-messages). Because each matching_ad_data field contains exactly one ad group, the presence of multiple matching_ad_data fields always means that there are multiple ad groups.
When this change takes effect, the current requirement (which is that the bid response must include the adgroup_id field whenever the bidder uses hosted creatives or merged streams) will be obsolete.

Resolved Issues

Snippet Status Report now shows expected categories
The content categories that the Snippet Status Report is intended to show are those in the ad-product-categories.txt dictionary file. In some cases, a Snippet Status Report was showing categories not documented in the dictionary file. This problem has been fixed.

Back to top

May 11, 2012 Release

What's New

Ads now appear only on sites that match both topic and placement targeting
Previously, ads appeared on sites that matched either topic or placement targeting. Now, ads only appear on sites that match both topic and placement targeting.
Multi-directional expandable creatives beta
Ad Exchange offers support for multi-directional expandable creatives as a beta feature. Multi-directional expandable creatives can expand up to the maximum expanded size as specified in the updated Program Guidelines.
In-game video inventory is now available in Ad Exchange
The video ad inventory that campaigns buy on Ad Exchange now includes in-game video inventory offered by Google In-Game Advertising publishers.
Any campaign that buys video ads now automatically buys these in-game placements unless the "in-game" category exclusion is added to the campaign. You can add this exclusion through the Buyer SOAP API, by using the CampaignCriterionService to add a NegativeCampaignCriterion of type ContentLabel, with contentLabelType set to GAMES. This update to the Ad Exchange Video beta took effect on May 1, 2012.
Program Guidelines updated
The Google DoubleClick Ad Exchange Buyer Program Guidelines have been updated to clarify the scope of the prohibition on passing personally identifiable information, improve consistency in terminology used, remove topics covered by the Ad Exchange APIs and Protocol Terms of Service, explain beta support for multi-directional expandable creatives, and, to clarify the process of third-party ad serving, including by providing links to the list of approved technology vendors and to the requirements for declaring technology vendors.
Targeting video impressions by player size
For video inventory, the width and height fields in the BidRequest.AdSlot now describe the video player. This update to Ad Exchange Video beta enables you to target video impressions by player size.

Coming Soon

Bulk location targeting in the UI
A new bulk upload tool for locations, which can make location targeting strategies more powerful, is gradually being rolled out as part of the Ad Exchange UI.
GDN to replace GCN as the permitted value in the seller_network field
Beginning June 1, 2012, the BidRequest will send a value of GDN in the seller_network field, replacing the value of GCN that is sent today. Wherever your bidder uses the seller_network field, review and if necessary adapt your code to ensure that the value change does not cause problems.
AdGroup ID to be required when a BidRequest has multiple ad groups
Beginning July 2, 2012, the BidResponse must include the adgroup_id field when responding to any bid request that has multiple ad groups. Here's how you can tell when a bid request has multiple ad groups: look for multiple matching_ad_data fields (sub-messages). Because each matching_ad_data field contains exactly one ad group, the presence of multiple matching_ad_data fields always means that there are multiple ad groups.
When this change takes effect, the current requirement (which is that the bid response must include the adgroup_id field whenever the bidder uses hosted creatives or merged streams) will be obsolete.

Back to top

November 30, 2010 Release

  • There is a new field in the BidRequest called cookie_age_seconds. When set, this indicates how long ago the cookie used in the google_user_id was created.
  • There is a new field in the BidRequest.AdSlot.MatchingAdData called per_buyer_minimum_cpm. When set to true, this field indicates that the publisher has set a minimum CPM specific to the pretargeting adgroup's account.
  • You can now optionally serve hosted creatives rather than returning an ad in the form of an HTML snippet. Please refer to Building the Response for more details.
  • New support for separate and consolidated streams facilitates buying through one or more DSPs from a separate Ad Exchange account. Please refer to the Bidding on Behalf of Multiple Accounts for more details.

Back to top

September 14, 2010 Release

  • There is now a campaign setting in the UI that is used instead of the adxrtb.com URL to mark a campaign and all of its adgroups for pretargeting. The adxrtb.com URL will continue to work for now until we have migrated all existing campaigns to use the new setting. Placeholder ads are still required in pretargeting adgroups that use the new setting, and these still require that a destination URL be specified. However, you can now optionally use a real URL that corresponds to the placeholder ad in the HTML snippet. The other option is to continue to use the adxrtb.com URL for the placeholder ad, but realize that the campaign setting is also needed. Note that pretargeting and non-pretargeting adgroups cannot exist in the same campaign when using the campaign setting.
  • There is a new field in the BidRequest called detected_content_labels. This gives more detected information about the page content. It is similar to the detected_verticals field, but does not use weights. The dictionary file listing the codes that can appear in the detected_content_labels field is available from the Downloads page as content-labels.txt.
  • Automated reports are now available that contain information to help you understand the performance of your bidder. These reports are emailed to an address that you provide approximately every hour on the hour. Talk to your technical account manager if you want to enable these reports.

Back to top

June 17, 2010 Release

  • HTTPS support has been added to the cookie matching service. You can now make a request to cm.g.doubleclick.net using HTTPS rather than HTTP. In this case, the redirect will go to the same configured URL, but also use HTTPS rather than HTTP.
  • There is a new field timezone_offset in the BidRequest that indicates detected timezone of the user's browser when available. Please download the newest version of realtime-bidding.proto from the Downloads page, read the comments on the new field, and make any required updates to your application.
  • We are adding more review and verification steps for ads served through RTB. To ensure that your ads get approved for serving in a timely manner, please make sure that they are able to render properly for an extended time after the original impression. Anomalies or inconsistencies may sometimes lead to long delays or disapprovals.

Back to top

April 14, 2010 Release

  • Above the fold information is now available in the new slot_visibility field. The new protocol buffer definition is available on the Downloads page.
  • We will be transitioning gradually to a new vertical taxonomy over the coming months. The new taxonomy file is available on the Downloads page and a new field, vertical_dictionary_version, has been added to the BidRequest that will indicate when the new taxonomy is used.
  • There is now support for inserting the value of the google_user_id field from the BidRequest into the bid URL. This can be done using the GOOGLE_USER_ID macro, see Bid URL Macros for information.
  • As a reminder, you should always return a valid BidResponse with at protocol_version and processing_time_ms set for requests that have the is_ping field set in the BidRequest. This will help us track locations that can reach your bidder and make ongoing configuration adjustments.

Back to top

March 10, 2010 Release

DoubleClick Ad Exchange is pleased to announce a new enhancement that will significantly increase the amount of inventory available to Real-time bidder buyers. Publisher inventory which restricts ads belonging to one or more “sensitive categories” (e.g. politics, dating, religion, weight loss) is now available via RTB. In order to comply with publisher restrictions, Google will classify buyer’s ads based on the content of the landing page. This classification will be done every time a new ad landing page is detected, at 10 minute intervals. As a result, new ads may not be eligible for delivery for a short duration while the ad is classified.

In conjunction with the Google Content Network, DoubleClick Ad Exchange is announcing a new feature that allows buyers to now filter out "below the fold" inventory on GCN sites. The new filter gives you the ability to show ads only in places that appear on the user's screen when the page loads, without requiring them to scroll down. Google has implemented a statistically driven solution to determine which ads are above and below the fold. The statistically driven model only considers ads "above the fold" if they are completely on-screen when the browser window loads. Our goal with this release is to give advertisers greater control over where their ads appear, and make the Google Content Network an even more powerful, controlled environment for running high performing brand campaigns.

Buyers using the RTB solution can exclude below the fold inventory in the user interface. In addition to this filtering functionality, each bid request will include an indication of the ad unit location – above the fold, below the fold, or unknown. You may use this data to assist calculating your bid. The information is in the new slot_visibility field in the BidRequest. You can find the updated protocol buffer definition on the Downloads page.

In addition, we've made the following changes:

  • Frequency capping settings on pretargeting campaigns are now respected in deciding whether to send bid requests. Previously, any such settings made in the UI were ignored.
  • We are now able to send requests to bidders located in Europe. This is available to new customers with the usual testing process. No further testing is needed if you are already doing bidding from other locations and also have servers in Europe. In that case, ask your technical account manager about configuring quota.
  • Inventory from Ad Exchange publishers that use category exclusions is now eligible for real-time bidding. You need to declare categories in a BidResponse when you bid on this inventory. Otherwise the bids will be dropped.
  • The system now sends a small number of BidRequests with the is_ping field set to true
  • The requester script has been updated in several ways to:
    • Keep HTTP connections open
    • Populate all new fields introduced over the last few releases
    • Optionally allow you to specify the set of google_user_ids to send in BidRequests
    • Send 1% of requests with is_ping true
  • There is an updated version of vendors.txt available on the Downloads page.
  • At this time, you still need to ask your technical account manager to make quota adjustments. If you want to increase traffic, contact your technical account manager to request an increase.

Back to top

February 24, 2010 Release

There are two publisher_settings_list_id fields added to the BidRequest. One is at the page level and one is at the slot level. Both pass values that can be used as keys to look up entries in publisher restrictions lists. For more information, contact your Technical Account Manager.

There is a new seller_network field in the BidRequest. For non-anonymous inventory (i.e. inventory for which the url field is set), this is filled in with the name of the network selling the impression. For example, all inventory from the Google Content Network will have this field filled in with the value "GCN".

The account-level setting mentioned in the January 27, 2010 release notes is now active. Please review the description in the previous notes and contact your account manager if you wish to change the setting.

A new vendor.txt file is available on the Downloads page. It lists more vendors than the previous version. All IDs from the previous version are still valid.

There is a new category field in the BidResponse. Please read the comments on that field and the excluded_category field in the BidResponse for instructions on how to use this new feature. There is also a new ad-categories.txt file on the Downloads page with updated category codes.

Please make sure to use the latest version of the requester tool from the Downloads page for testing before releasing any changes to your bidder.

As a reminder, please make sure you declare all URLs for ads correctly in the click_through_url field of the BidResponse, as described in the Declare click-through URLs in ads help center article. Note that you must include the full protocol of the URL (e.g. http://www.example.com rather than www.example.com).

Back to top

January 27, 2010 Release

The realtime-bidding.proto has several new fields, and some fields have been deprecated. Please download the newest version, read the comments on any fields that have changed, and make any required updates to your application.

We encourage you to obtain the latest version of the requester.tar.gz program and use it for testing every time you make a change to your bidding program.

Per-region bid URLs are now supported. Please contact us if you wish to configure a different URL in each region (e.g. one on the West coast and one on the East coast).

In the next release, we'll be adding an account-level setting to specify a preference for impressions to be sent either anonymous or branded in cases where there is a choice. Anonymous impressions will often have lower minimum CPM thresholds set by the seller, but will have an anonymous ID rather than a site URL; branded impressions will have a site URL, but may have a higher minimum CPM threshold. The default setting for the preference will be branded. Please contact us if you want this setting to differ from the default.

Back to top

Send feedback about...

Real-Time Bidding Protocol
Real-Time Bidding Protocol