- Resource: Deal
- JSON representation
- ProgrammaticGuaranteedTerms
- Price
- Type
- ReservationType
- PreferredDealTerms
- PrivateAuctionTerms
- MarketplaceTargeting
- CriteriaTargeting
- InventorySizeTargeting
- AdSize
- Type
- TechnologyTargeting
- OperatingSystemTargeting
- PlacementTargeting
- UriTargeting
- MobileApplicationTargeting
- FirstPartyMobileApplicationTargeting
- VideoTargeting
- PositionType
- DayPartTargeting
- TimeZoneType
- DayPart
- InventoryTypeTargeting
- InventoryType
- CreativeRequirements
- CreativePreApprovalPolicy
- CreativeSafeFrameCompatibility
- ProgrammaticCreativeSource
- CreativeFormat
- SkippableAdType
- DeliveryControl
- DeliveryRateType
- FrequencyCap
- TimeUnitType
- RoadblockingType
- CompanionDeliveryType
- CreativeRotationType
- Methods
Resource: Deal
A deal represents a segment of inventory for displaying ads that contains the terms and targeting information that is used for serving as well as the deal stats and status. Note: A proposal may contain multiple deals.
JSON representation |
---|
{ "name": string, "createTime": string, "updateTime": string, "proposalRevision": string, "displayName": string, "billedBuyer": string, "publisherProfile": string, "dealType": enum ( |
Fields | |
---|---|
name |
Immutable. The unique identifier of the deal. Auto-generated by the server when a deal is created. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId} |
createTime |
Output only. The time of the deal creation. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
updateTime |
Output only. The time when the deal was last updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
proposalRevision |
Output only. The revision number for the proposal and is the same value as proposal.proposal_revision. Each update to deal causes the proposal revision number to auto-increment. The buyer keeps track of the last revision number they know of and pass it in when making an update. If the head revision number on the server has since incremented, then an ABORTED error is returned during the update operation to let the buyer know that a subsequent update was made. |
displayName |
Output only. The name of the deal. Maximum length of 255 unicode characters is allowed. Control characters are not allowed. Buyers cannot update this field. Note: Not to be confused with name, which is a unique identifier of the deal. |
billedBuyer |
Output only. When the |
publisherProfile |
Immutable. Reference to the seller on the deal. Format: |
dealType |
Output only. Type of deal. |
estimatedGrossSpend |
Specified by buyers in request for proposal (RFP) to notify publisher the total estimated spend for the proposal. Publishers will receive this information and send back proposed deals accordingly. |
sellerTimeZone |
Output only. Time zone of the seller used to mark the boundaries of a day for daypart targeting and CPD billing. |
description |
Output only. Free text description for the deal terms. |
flightStartTime |
Proposed flight start time of the deal. This will generally be stored in the granularity of one second since deal serving starts at seconds boundary. Any time specified with more granularity (for example, in milliseconds) will be truncated towards the start of time in seconds. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
flightEndTime |
Proposed flight end time of the deal. This will generally be stored in a granularity of a second. A value is not necessary for Private Auction deals. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
targeting |
Specifies the subset of inventory targeted by the deal. Can be updated by the buyer before the deal is finalized. |
creativeRequirements |
Output only. Metadata about the creatives of this deal. |
deliveryControl |
Output only. Specifies the pacing set by the publisher. |
eligibleSeatIds[] |
Output only. If set, this field contains the list of DSP specific seat ids set by media planners that are eligible to transact on this deal. The seat ID is in the calling DSP's namespace. |
Union field negotiating_buyer . The buyer who negotiates this deal with publishers. Can be a buyer, a client or a media planner. negotiating_buyer can be only one of the following: |
|
buyer |
Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. Format: |
client |
Output only. Refers to a |
mediaPlanner |
Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. This field represents a media planner (For example, agency or big advertiser). |
Union field pricing_terms . The pricing terms for the deal. pricing_terms can be only one of the following: |
|
programmaticGuaranteedTerms |
The terms for programmatic guaranteed deals. |
preferredDealTerms |
The terms for preferred deals. |
privateAuctionTerms |
The terms for private auction deals. |
ProgrammaticGuaranteedTerms
Pricing terms for Programmatic Guaranteed Deals.
JSON representation |
---|
{ "guaranteedLooks": string, "fixedPrice": { object ( |
Fields | |
---|---|
guaranteedLooks |
Count of guaranteed looks. For CPD deals, buyer changes to guaranteedLooks will be ignored. |
fixedPrice |
Fixed price for the deal. |
minimumDailyLooks |
Daily minimum looks for CPD deal types. For CPD deals, buyer should negotiate on this field instead of guaranteedLooks. |
reservationType |
The reservation type for a Programmatic Guaranteed deal. This indicates whether the number of impressions is fixed, or a percent of available impressions. If not specified, the default reservation type is STANDARD. |
impressionCap |
The lifetime impression cap for CPM Sponsorship deals. Deal will stop serving when cap is reached. |
percentShareOfVoice |
For sponsorship deals, this is the percentage of the seller's eligible impressions that the deal will serve until the cap is reached. Valid value is within range 0~100. |
Price
Represents a price and a pricing type for a deal.
JSON representation |
---|
{ "type": enum ( |
Fields | |
---|---|
type |
The pricing type for the deal. |
amount |
The actual price with currency specified. |
Type
Specifies the pricing type for a deal.
Enums | |
---|---|
TYPE_UNSPECIFIED |
A placeholder for an undefined pricing type. If the pricing type is unspecified, CPM will be used instead. |
CPM |
Cost per thousand impressions. |
CPD |
Cost per day. |
ReservationType
The reservation type for a Programmatic Guaranteed deal.
Enums | |
---|---|
RESERVATION_TYPE_UNSPECIFIED |
An unspecified reservation type. |
STANDARD |
Non-sponsorship deal. |
SPONSORSHIP |
Sponsorship deals don't have impression goal (guaranteedLooks) and they are served based on the flight dates. For CPM Sponsorship deals, impressionCap is the lifetime impression limit. |
PreferredDealTerms
Pricing terms for Preferred Deals.
JSON representation |
---|
{
"fixedPrice": {
object ( |
Fields | |
---|---|
fixedPrice |
Fixed price for the deal. |
PrivateAuctionTerms
Pricing terms for Private Auctions.
JSON representation |
---|
{
"floorPrice": {
object ( |
Fields | |
---|---|
floorPrice |
The minimum price buyer has to bid to compete in the private auction. |
openAuctionAllowed |
Output only. True if open auction buyers are allowed to compete with invited buyers in this private auction. |
MarketplaceTargeting
Targeting represents different criteria that can be used to target deals or auction packages. For example, they can choose to target inventory only if the user is in the US. Multiple types of targeting are always applied as a logical AND, unless noted otherwise.
JSON representation |
---|
{ "geoTargeting": { object ( |
Fields | |
---|---|
geoTargeting |
Output only. Geo criteria IDs to be included/excluded. |
inventorySizeTargeting |
Output only. Inventory sizes to be included/excluded. |
technologyTargeting |
Output only. Technology targeting information, for example, operating system, device category. |
placementTargeting |
Output only. Placement targeting information, for example, URL, mobile applications. |
videoTargeting |
Output only. Video targeting information. |
userListTargeting |
Buyer user list targeting information. User lists can be uploaded using https://developers.google.com/authorized-buyers/rtb/bulk-uploader. |
daypartTargeting |
Daypart targeting information. |
inventoryTypeTargeting |
Output only. Inventory type targeting information. |
verticalTargeting |
Output only. The verticals included or excluded as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals |
excludedSensitiveCategoryIds[] |
Output only. The sensitive content category label IDs excluded. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs. |
CriteriaTargeting
Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax.
JSON representation |
---|
{ "targetedCriteriaIds": [ string ], "excludedCriteriaIds": [ string ] } |
Fields | |
---|---|
targetedCriteriaIds[] |
A list of numeric IDs to be included. |
excludedCriteriaIds[] |
A list of numeric IDs to be excluded. |
InventorySizeTargeting
Represents the size of an ad unit that can be targeted on a bid request.
JSON representation |
---|
{ "targetedInventorySizes": [ { object ( |
Fields | |
---|---|
targetedInventorySizes[] |
A list of inventory sizes to be included. |
excludedInventorySizes[] |
A list of inventory sizes to be excluded. |
AdSize
Represents size of a single ad slot, or a creative.
JSON representation |
---|
{
"width": string,
"height": string,
"type": enum ( |
Fields | |
---|---|
width |
The width of the ad slot in pixels. This field will be present only when size type is |
height |
The height of the ad slot in pixels. This field will be present only when size type is |
type |
The type of the ad slot size. |
Type
Represents different types of ad slot/creative sizing.
Enums | |
---|---|
TYPE_UNSPECIFIED |
A placeholder for an undefined size type. |
PIXEL |
Ad slot with size specified by height and width in pixels. |
INTERSTITIAL |
Special size to describe an interstitial ad slot. |
NATIVE |
Native (mobile) ads rendered by the publisher. |
FLUID |
Fluid size (responsive size) can be resized automatically with the change of outside environment. |
TechnologyTargeting
Represents targeting about various types of technology.
JSON representation |
---|
{ "deviceCategoryTargeting": { object ( |
Fields | |
---|---|
deviceCategoryTargeting |
IDs of device categories to be included/excluded. |
deviceCapabilityTargeting |
IDs of device capabilities to be included/excluded. |
operatingSystemTargeting |
Operating system related targeting information. |
OperatingSystemTargeting
Represents targeting information for operating systems.
JSON representation |
---|
{ "operatingSystemCriteria": { object ( |
Fields | |
---|---|
operatingSystemCriteria |
IDs of operating systems to be included/excluded. |
operatingSystemVersionCriteria |
IDs of operating system versions to be included/excluded. |
PlacementTargeting
Represents targeting about where the ads can appear, for example, certain sites or mobile applications. Different placement targeting types will be logically OR'ed.
JSON representation |
---|
{ "uriTargeting": { object ( |
Fields | |
---|---|
uriTargeting |
URLs to be included/excluded. |
mobileApplicationTargeting |
Mobile application targeting information in a deal. This doesn't apply to Auction Packages. |
UriTargeting
Represents a list of targeted and excluded URLs (for example, google.com). For Private Auction Deals, URLs are either included or excluded. For Programmatic Guaranteed and Preferred Deals, this doesn't apply.
JSON representation |
---|
{ "targetedUris": [ string ], "excludedUris": [ string ] } |
Fields | |
---|---|
targetedUris[] |
A list of URLs to be included. |
excludedUris[] |
A list of URLs to be excluded. |
MobileApplicationTargeting
Mobile application targeting settings.
JSON representation |
---|
{
"firstPartyTargeting": {
object ( |
Fields | |
---|---|
firstPartyTargeting |
Publisher owned apps to be targeted or excluded by the publisher to display the ads in. |
FirstPartyMobileApplicationTargeting
Represents a list of targeted and excluded mobile application IDs that publishers own. Android App ID, for example, com.google.android.apps.maps, can be found in Google Play Store URL. iOS App ID (which is a number) can be found at the end of iTunes store URL. First party mobile applications is either included or excluded.
JSON representation |
---|
{ "targetedAppIds": [ string ], "excludedAppIds": [ string ] } |
Fields | |
---|---|
targetedAppIds[] |
A list of application IDs to be included. |
excludedAppIds[] |
A list of application IDs to be excluded. |
VideoTargeting
Represents targeting information about video.
JSON representation |
---|
{ "targetedPositionTypes": [ enum ( |
Fields | |
---|---|
targetedPositionTypes[] |
A list of video positions to be included. When this field is populated, the excludedPositionTypes field must be empty. |
excludedPositionTypes[] |
A list of video positions to be excluded. When this field is populated, the targetedPositionTypes field must be empty. |
PositionType
Represents a targetable position within a video.
Enums | |
---|---|
POSITION_TYPE_UNSPECIFIED |
A placeholder for an undefined video position. |
PREROLL |
Ad is played before the video. |
MIDROLL |
Ad is played during the video. |
POSTROLL |
Ad is played after the video. |
DayPartTargeting
Represents Daypart targeting.
JSON representation |
---|
{ "dayParts": [ { object ( |
Fields | |
---|---|
dayParts[] |
The targeted weekdays and times |
timeZoneType |
The time zone type of the day parts |
TimeZoneType
Represents the time zone the dayparts are scheduled in.
Enums | |
---|---|
TIME_ZONE_TYPE_UNSPECIFIED |
Default value. This field is unused. |
SELLER |
The publisher's time zone |
USER |
The user's time zone |
DayPart
Defines targeting for a period of time on a specific week day.
JSON representation |
---|
{ "dayOfWeek": enum ( |
Fields | |
---|---|
dayOfWeek |
Day of week for the period. |
startTime |
Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored. |
endTime |
Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored. |
InventoryTypeTargeting
Targeting of the inventory types a bid request can originate from.
JSON representation |
---|
{
"inventoryTypes": [
enum ( |
Fields | |
---|---|
inventoryTypes[] |
The list of targeted inventory types for the bid request. |
InventoryType
The inventory type from which the bid request can be made.
Enums | |
---|---|
INVENTORY_TYPE_UNSPECIFIED |
Unspecified inventory type |
BROWSER |
Desktop or mobile web browser excluding ads inside a video player |
MOBILE_APP |
Mobile apps other than video players and web browsers |
VIDEO_PLAYER |
Instream video and audio |
CreativeRequirements
Message captures data about the creatives in the deal.
JSON representation |
---|
{ "creativePreApprovalPolicy": enum ( |
Fields | |
---|---|
creativePreApprovalPolicy |
Output only. Specifies the creative pre-approval policy. |
creativeSafeFrameCompatibility |
Output only. Specifies whether the creative is safeFrame compatible. |
programmaticCreativeSource |
Output only. Specifies the creative source for programmatic deals. PUBLISHER means creative is provided by seller and ADVERTISER means creative is provided by the buyer. |
creativeFormat |
Output only. The format of the creative, only applicable for programmatic guaranteed and preferred deals. |
skippableAdType |
Output only. Skippable video ads allow viewers to skip ads after 5 seconds. Only applicable for deals with video creatives. |
maxAdDurationMs |
Output only. The max duration of the video creative in milliseconds. only applicable for deals with video creatives. |
CreativePreApprovalPolicy
Specifies the creative pre-approval policy requirements.
Enums | |
---|---|
CREATIVE_PRE_APPROVAL_POLICY_UNSPECIFIED |
A placeholder for an undefined creative pre-approval policy. |
SELLER_PRE_APPROVAL_REQUIRED |
The seller needs to approve each creative before it can serve. |
SELLER_PRE_APPROVAL_NOT_REQUIRED |
The seller does not need to approve each creative before it can serve. |
CreativeSafeFrameCompatibility
Specifies whether the creative needs to be safe-frame compatible or not.
Enums | |
---|---|
CREATIVE_SAFE_FRAME_COMPATIBILITY_UNSPECIFIED |
A placeholder for an undefined creative safe-frame compatibility. |
COMPATIBLE |
The creatives need to be compatible with the safe frame option. |
INCOMPATIBLE |
The creatives can be incompatible with the safe frame option. |
ProgrammaticCreativeSource
Specifies the creative source for the programmatic deal.
Enums | |
---|---|
PROGRAMMATIC_CREATIVE_SOURCE_UNSPECIFIED |
A placeholder for an undefined programmatic creative source. |
ADVERTISER |
The advertiser provides the creatives. |
PUBLISHER |
The publisher provides the creatives to be served. |
CreativeFormat
Specifies the format of the creative.
Enums | |
---|---|
CREATIVE_FORMAT_UNSPECIFIED |
A placeholder for an unspecified creative format. |
DISPLAY |
Banner creatives such as image or HTML5 assets. |
VIDEO |
Video creatives that can be played in a video player. |
AUDIO |
Audio creatives that can play during audio content or point to a third party ad server. |
SkippableAdType
The type of skippable ad for video creatives.
Enums | |
---|---|
SKIPPABLE_AD_TYPE_UNSPECIFIED |
A placeholder for an unspecified skippable ad type. |
SKIPPABLE |
Video ad that can be skipped after 5 seconds. This value will appear in RTB bid requests as SkippableBidRequestType::REQUIRE_SKIPPABLE. |
INSTREAM_SELECT |
Video ad that can be skipped after 5 seconds, and is counted as engaged view after 30 seconds. The creative is hosted on YouTube only, and viewcount of the YouTube video increments after the engaged view. This value will appear in RTB bid requests as SkippableBidRequestType::REQUIRE_SKIPPABLE. |
NOT_SKIPPABLE |
This video ad is not skippable. This value will appear in RTB bid requests as SkippableBidRequestType::BLOCK_SKIPPABLE. |
ANY |
This video ad can be skipped after 5 seconds or not-skippable. This value will appear in RTB bid requests as SkippableBidRequestType::ALLOW_SKIPPABLE. |
DeliveryControl
Message contains details about how the deal will be paced.
JSON representation |
---|
{ "deliveryRateType": enum ( |
Fields | |
---|---|
deliveryRateType |
Output only. Specifies how the impression delivery will be paced. |
frequencyCap[] |
Output only. Specifies any frequency caps. Cannot be filtered within ListDealsRequest. |
roadblockingType |
Output only. Specifies the roadblocking type in display creatives. |
companionDeliveryType |
Output only. Specifies roadblocking in a main companion lineitem. |
creativeRotationType |
Output only. Specifies strategy to use for selecting a creative when multiple creatives of the same size are available. |
DeliveryRateType
Specifies how the impression delivery will be paced.
Enums | |
---|---|
DELIVERY_RATE_TYPE_UNSPECIFIED |
A placeholder for an undefined delivery rate type. |
EVENLY |
Impressions are served uniformly over the life of the deal. |
FRONT_LOADED |
Impressions are served front-loaded. |
AS_FAST_AS_POSSIBLE |
Impressions are served as fast as possible. |
FrequencyCap
Message contains details about publisher-set frequency caps of the delivery.
JSON representation |
---|
{
"maxImpressions": integer,
"timeUnitsCount": integer,
"timeUnitType": enum ( |
Fields | |
---|---|
maxImpressions |
The maximum number of impressions that can be served to a user within the specified time period. |
timeUnitsCount |
The amount of time, in the units specified by timeUnitType. Defines the amount of time over which impressions per user are counted and capped. |
timeUnitType |
The time unit. Along with num_time_units defines the amount of time over which impressions per user are counted and capped. |
TimeUnitType
Specifies the time-unit type for delivery control.
Enums | |
---|---|
TIME_UNIT_TYPE_UNSPECIFIED |
A placeholder for an undefined time unit type. This just indicates the variable with this value hasn't been initialized. |
MINUTE |
Minute unit. |
HOUR |
Hour unit. |
DAY |
Day unit. |
WEEK |
Week unit. |
MONTH |
Month unit. |
LIFETIME |
Lifecycle/Lifetime unit. |
POD |
Pod unit. |
STREAM |
Stream unit. |
RoadblockingType
Describes the roadblocking types.
Enums | |
---|---|
ROADBLOCKING_TYPE_UNSPECIFIED |
A placeholder for an unspecified roadblocking type. |
ONLY_ONE |
Only one creative from a deal can serve per ad request. https://support.google.com/admanager/answer/177277. |
ONE_OR_MORE |
Any number of creatives from a deal can serve together per ad request. |
AS_MANY_AS_POSSIBLE |
As many creatives from a deal as can fit on a page will serve. This could mean anywhere from one to all of a deal's creatives given the size constraints of ad slots on a page. |
ALL_ROADBLOCK |
All or none of the creatives from a deal will serve. |
CREATIVE_SET |
A main/companion creative set roadblocking type. |
CompanionDeliveryType
Specifies Main/Companion delivery options.
Enums | |
---|---|
COMPANION_DELIVERY_TYPE_UNSPECIFIED |
A placeholder for an unspecified companion delivery type. |
DELIVERY_OPTIONAL |
Companions are not required to serve a creative set. The creative set can serve an inventory that has zero or more matching companions. |
DELIVERY_AT_LEAST_ONE |
At least one companion must be served in order for the creative set to be used. |
DELIVERY_ALL |
All companions in the set must be served in order for the creative set to be used. This can still serve to inventory that has more companions than can be filled. |
CreativeRotationType
The strategy to use for selecting a creative when multiple creatives of the same size is available.
Enums | |
---|---|
CREATIVE_ROTATION_TYPE_UNSPECIFIED |
Creatives are displayed roughly the same number of times over the duration of the deal. |
ROTATION_EVEN |
Creatives are displayed roughly the same number of times over the duration of the deal. |
ROTATION_OPTIMIZED |
Creatives are served roughly proportionally to their performance. |
ROTATION_MANUAL |
Creatives are served roughly proportionally to their weights. |
ROTATION_SEQUENTIAL |
Creatives are served exactly in sequential order, also known as Storyboarding. |
Methods |
|
---|---|
|
Batch updates multiple deals in the same proposal. |
|
Gets a deal given its name. |
|
Lists all deals in a proposal. |
|
Updates the given deal at the buyer known revision number. |