This guide provides an overview of real-time bidding (RTB) concepts that are needed to write bidder applications that can participate in Authorized Buyers Real-time Bidding.
Basics
A bidder application can communicate with Authorized Buyers using one of the supported RTB protocols. A bid request sent to an application provides context about at least one ad opportunity so that the bidder can determine the optimal creative and bid amount (if any) for each impression. A bidder can respond with a bid response to place at least one bid and specify the creative to be placed for ad opportunities sent in the request.
The following scenario is one possible interaction between a bidder application and Authorized Buyers:
- Google sends the bidder application a bid request that describes an
impression being auctioned. The bidder's account is configured to use the
PROTOCOL_ADX
RTB protocol (hereafter referred to as the "Google protocol"), so the request arrives as a serializedBidRequest
as seen in realtime-bidding.proto. To learn how your application should interpret the bid request, see Processing the Request. -
The bidder application parses the request and applies its bidding logic to construct a
BidResponse
that includes a bid and creative for the ad opportunity. The application then serializes the bid response and sends it to Google. To learn how your application should create and return a bid response, see Building the Response. -
The bid response is received and its bid enters the open auction, where it wins the impression because it is the highest bid. As a result, the creative specified in the response is placed.
Select a protocol
The real-time bidding protocol specifies the signals your application can use to evaluate and bid on each impression sent in a request, as well as how to construct a response. There are two ways to modify the protocol associated with your bidder application:
- Contact your Technical Account Manager to manually change it.
- Use the Authorized Buyers REST API to programmatically change it..
Supported protocols
Authorized Buyers currently supports three RTB protocols:
- OpenRTB (Protobuf)
An implementation of the OpenRTB specification using Protobuf.
- OpenRTB (JSON)
An implementation of the OpenRTB specification using JSON.
- Google protocol
- This protocol is now deprecated. Use the OpenRTB Protobuf or JSON protocols instead.
About Protocol Buffers
Both the OpenRTB and the deprecated Google RTB protocol have a Protocol Buffer implementation. Protobuf is an open-source format for representing and serializing structured information.
To use either protocol, you must install the protocol compiler and
Protobuf runtime for your chosen language. You can then
download the proto files you
intend to use and run the compiler to generate a library that can serialize or
deserialize messages defined in the proto, such as BidRequest
or
BidResponse
. This
Protobuf reference
demonstrates how to do this for several languages.
Protocol updates
The RTB protocols will be modified as Google adds new features and deprecates others. Changes will be announced well before they take effect, which should give you sufficient time to remove any dependencies your application may have on fields that are scheduled for deprecation. For more information on handling deprecated fields, see Adapting as BidRequest Fields are Deprecated.
Next steps
The following content provides more specifics about real-time bidding concepts:
- Process the Request: How to parse and interpret signals found in most bid requests.
- Build the Response: How to build a bid response, and fields commonly specified in the response.
- OpenRTB Guide: Reference for the Authorized Buyers implementation of the OpenRTB specification, in addition to Authorized Buyers-specific extensions. Details edge-cases and limitations specific to this implementation, and identifies equivalent fields in the Google protocol.
- Google Protocol Guide (Deprecated): Reference for the Google protocol that describes all of the messages defined in the protocol and their attributes, along with implementation details on their intended usage.
- Requirements for Third-party Ad Serving: Defines policies bidders must comply with to use various ad formats, as well as technical specifications of those formats.
- Pretargeting: How to configure your bidder application to receive only impressions matching your targeting criteria.
- Cookie Matching: Reference for the Cookie Matching Service, and other related services, used for remarketing.
- Latency Restrictions and Peering: Details on trading locations and how to lower latency, such as by peering.
- Testing and Releasing Your Application: Details on how to start testing your bidder application with traffic sent by Google at scale.