blob: aff4cb1f9c6b80df49bca61f22ff8f2643a96d00 [file] [log] [blame]
<html><body>
<style>
body, h1, h2, h3, div, span, p, pre, a {
margin: 0;
padding: 0;
border: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
font-size: 13px;
padding: 1em;
}
h1 {
font-size: 26px;
margin-bottom: 1em;
}
h2 {
font-size: 24px;
margin-bottom: 1em;
}
h3 {
font-size: 20px;
margin-bottom: 1em;
margin-top: 1em;
}
pre, code {
line-height: 1.5;
font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}
pre {
margin-top: 0.5em;
}
h1, h2, h3, p {
font-family: Arial, sans serif;
}
h1, h2, h3 {
border-bottom: solid #CCC 1px;
}
.toc_element {
margin-top: 0.5em;
}
.firstline {
margin-left: 2 em;
}
.method {
margin-top: 1em;
border: solid 1px #CCC;
padding: 1em;
background: #EEE;
}
.details {
font-weight: bold;
font-size: 14px;
}
</style>
<h1><a href="adexchangebuyer2_v2beta1.html">Ad Exchange Buyer API II</a> . <a href="adexchangebuyer2_v2beta1.accounts.html">accounts</a> . <a href="adexchangebuyer2_v2beta1.accounts.proposals.html">proposals</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="#accept">accept(accountId, proposalId, body, x__xgafv=None)</a></code></p>
<p class="firstline">Mark the proposal as accepted at the given revision number. If the number</p>
<p class="toc_element">
<code><a href="#addNote">addNote(accountId, proposalId, body, x__xgafv=None)</a></code></p>
<p class="firstline">Create a new note and attach it to the proposal. The note is assigned</p>
<p class="toc_element">
<code><a href="#cancelNegotiation">cancelNegotiation(accountId, proposalId, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Cancel an ongoing negotiation on a proposal. This does not cancel or end</p>
<p class="toc_element">
<code><a href="#completeSetup">completeSetup(accountId, proposalId, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Update the given proposal to indicate that setup has been completed.</p>
<p class="toc_element">
<code><a href="#create">create(accountId, body, x__xgafv=None)</a></code></p>
<p class="firstline">Create the given proposal. Each created proposal and any deals it contains</p>
<p class="toc_element">
<code><a href="#get">get(accountId, proposalId, x__xgafv=None)</a></code></p>
<p class="firstline">Gets a proposal given its ID. The proposal is returned at its head</p>
<p class="toc_element">
<code><a href="#list">list(accountId, pageSize=None, pageToken=None, x__xgafv=None, filterSyntax=None, filter=None)</a></code></p>
<p class="firstline">List proposals. A filter expression (PQL query) may be specified to</p>
<p class="toc_element">
<code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
<code><a href="#pause">pause(accountId, proposalId, body, x__xgafv=None)</a></code></p>
<p class="firstline">Update the given proposal to pause serving.</p>
<p class="toc_element">
<code><a href="#resume">resume(accountId, proposalId, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Update the given proposal to resume serving.</p>
<p class="toc_element">
<code><a href="#update">update(accountId, proposalId, body, x__xgafv=None)</a></code></p>
<p class="firstline">Update the given proposal at the client known revision number. If the</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="accept">accept(accountId, proposalId, body, x__xgafv=None)</code>
<pre>Mark the proposal as accepted at the given revision number. If the number
does not match the server's revision number an `ABORTED` error message will
be returned. This call updates the proposal_state from `PROPOSED` to
`BUYER_ACCEPTED`, or from `SELLER_ACCEPTED` to `FINALIZED`.
Args:
accountId: string, Account ID of the buyer. (required)
proposalId: string, The ID of the proposal to accept. (required)
body: object, The request body. (required)
The object takes the form of:
{ # Request to accept a proposal.
"proposalRevision": "A String", # The last known client revision number of the proposal.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="addNote">addNote(accountId, proposalId, body, x__xgafv=None)</code>
<pre>Create a new note and attach it to the proposal. The note is assigned
a unique ID by the server.
The proposal revision number will not increase when associated with a
new note.
Args:
accountId: string, Account ID of the buyer. (required)
proposalId: string, The ID of the proposal to attach the note to. (required)
body: object, The request body. (required)
The object takes the form of:
{ # Request message for adding a note to a given proposal.
"note": { # A proposal may be associated to several notes. # Details of the note to add.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
}</pre>
</div>
<div class="method">
<code class="details" id="cancelNegotiation">cancelNegotiation(accountId, proposalId, body=None, x__xgafv=None)</code>
<pre>Cancel an ongoing negotiation on a proposal. This does not cancel or end
serving for the deals if the proposal has been finalized, but only cancels
a negotiation unilaterally.
Args:
accountId: string, Account ID of the buyer. (required)
proposalId: string, The ID of the proposal to cancel negotiation for. (required)
body: object, The request body.
The object takes the form of:
{ # Request to cancel an ongoing negotiation.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="completeSetup">completeSetup(accountId, proposalId, body=None, x__xgafv=None)</code>
<pre>Update the given proposal to indicate that setup has been completed.
This method is called by the buyer when the line items have been created
on their end for a finalized proposal and all the required creatives
have been uploaded using the creatives API. This call updates the
`is_setup_completed` bit on the proposal and also notifies the seller.
The server will advance the revision number of the most recent proposal.
Args:
accountId: string, Account ID of the buyer. (required)
proposalId: string, The ID of the proposal to mark as setup completed. (required)
body: object, The request body.
The object takes the form of:
{ # Request message for indicating that the proposal's setup step is complete.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="create">create(accountId, body, x__xgafv=None)</code>
<pre>Create the given proposal. Each created proposal and any deals it contains
are assigned a unique ID by the server.
Args:
accountId: string, Account ID of the buyer. (required)
body: object, The request body. (required)
The object takes the form of:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="get">get(accountId, proposalId, x__xgafv=None)</code>
<pre>Gets a proposal given its ID. The proposal is returned at its head
revision.
Args:
accountId: string, Account ID of the buyer. (required)
proposalId: string, The unique ID of the proposal (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="list">list(accountId, pageSize=None, pageToken=None, x__xgafv=None, filterSyntax=None, filter=None)</code>
<pre>List proposals. A filter expression (PQL query) may be specified to
filter the results. To retrieve all finalized proposals, regardless if a
proposal is being renegotiated, see the FinalizedProposals resource.
Note that Bidder/ChildSeat relationships differ from the usual behavior.
A Bidder account can only see its child seats' proposals by specifying
the ChildSeat's accountId in the request path.
Args:
accountId: string, Account ID of the buyer. (required)
pageSize: integer, Requested page size. The server may return fewer results than requested.
If unspecified, the server will pick an appropriate default.
pageToken: string, The page token as returned from ListProposalsResponse.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
filterSyntax: string, Syntax the filter is written in. Current implementation defaults to PQL
but in the future it will be LIST_FILTER.
filter: string, An optional PQL filter query used to query for proposals.
Nested repeated fields, such as proposal.deals.targetingCriterion,
cannot be filtered.
Returns:
An object of the form:
{ # Response message for listing proposals.
"nextPageToken": "A String", # Continuation token for fetching the next page of results.
"proposals": [ # The list of proposals.
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="list_next">list_next(previous_request, previous_response)</code>
<pre>Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call 'execute()' on to request the next
page. Returns None if there are no more items in the collection.
</pre>
</div>
<div class="method">
<code class="details" id="pause">pause(accountId, proposalId, body, x__xgafv=None)</code>
<pre>Update the given proposal to pause serving.
This method will set the
`DealServingMetadata.DealPauseStatus.has_buyer_paused` bit to true for all
deals in the proposal.
It is a no-op to pause an already-paused proposal.
It is an error to call PauseProposal for a proposal that is not
finalized or renegotiating.
Args:
accountId: string, Account ID of the buyer. (required)
proposalId: string, The ID of the proposal to pause. (required)
body: object, The request body. (required)
The object takes the form of:
{ # Request message to pause serving for an already-finalized proposal.
"reason": "A String", # The reason why the proposal is being paused.
# This human readable message will be displayed in the seller's UI.
# (Max length: 1000 unicode code units.)
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="resume">resume(accountId, proposalId, body=None, x__xgafv=None)</code>
<pre>Update the given proposal to resume serving.
This method will set the
`DealServingMetadata.DealPauseStatus.has_buyer_paused` bit to false for all
deals in the proposal.
Note that if the `has_seller_paused` bit is also set, serving will not
resume until the seller also resumes.
It is a no-op to resume an already-running proposal.
It is an error to call ResumeProposal for a proposal that is not
finalized or renegotiating.
Args:
accountId: string, Account ID of the buyer. (required)
proposalId: string, The ID of the proposal to resume. (required)
body: object, The request body.
The object takes the form of:
{ # Request message to resume (unpause) serving for an already-finalized
# proposal.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="update">update(accountId, proposalId, body, x__xgafv=None)</code>
<pre>Update the given proposal at the client known revision number. If the
server revision has advanced since the passed-in
`proposal.proposal_revision`, an `ABORTED` error message will be returned.
Only the buyer-modifiable fields of the proposal will be updated.
Note that the deals in the proposal will be updated to match the passed-in
copy.
If a passed-in deal does not have a `deal_id`, the server will assign a new
unique ID and create the deal.
If passed-in deal has a `deal_id`, it will be updated to match the
passed-in copy.
Any existing deals not present in the passed-in proposal will be deleted.
It is an error to pass in a deal with a `deal_id` not present at head.
Args:
accountId: string, Account ID of the buyer. (required)
proposalId: string, The unique ID of the proposal. (required)
body: object, The request body. (required)
The object takes the form of:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Note: this resource requires whitelisting for access. Please contact your
# account manager for access to Marketplace resources.
#
# Represents a proposal in the Marketplace. A proposal is the unit of
# negotiation between a seller and a buyer and contains deals which
# are served.
#
# Note: you can not update, create, or otherwise modify Private
# Auction or Preferred Deals deals through the API.
#
# Fields are updatable unless noted otherwise.
"sellerContacts": [ # Output only. Contact information for the seller.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"updateTime": "A String", # Output only. The time when the proposal was last revised.
"proposalState": "A String", # Output only. The current state of the proposal.
"proposalRevision": "A String", # Output only. The revision number for the proposal.
# Each update to the proposal or the 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.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Private data for buyer. (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"privateAuctionId": "A String", # Output only. Private auction ID if this proposal is a private auction
# proposal.
"billedBuyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Output only. Reference to the buyer that will get billed for this proposal.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"originatorRole": "A String", # Output only. Indicates whether the buyer/seller created the proposal.
"seller": { # Represents a seller of inventory. Each seller is identified by a unique # Reference to the seller on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Ad Manager account ID.
"subAccountId": "A String", # Optional sub-account ID for the seller.
"accountId": "A String", # The unique ID for the seller. The seller fills in this field.
# The seller account ID is then available to buyer in the product.
},
"deals": [ # The deals associated with this proposal. For Private Auction proposals
# (whose deals have NonGuaranteedAuctionTerms), there will only be one deal.
{ # A deal represents a segment of inventory for displaying ads on.
# A proposal can contain multiple deals. A deal contains the terms and
# targeting information that is used for serving.
"updateTime": "A String", # Output only. The time when the deal was last updated.
"createProductRevision": "A String", # Optional revision number of the product that the deal was created from.
# If present on create, and the server `product_revision` has advanced sinced
# the passed-in `create_product_revision`, an `ABORTED` error will be
# returned.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"sellerContacts": [ # Output only. Seller contact information for the deal.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
"availableStartTime": "A String", # Optional 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 (e.g., in milliseconds) will be truncated towards the start of
# time in seconds.
"availableEndTime": "A String", # Proposed flight end time of the deal.
# This will generally be stored in a granularity of a second.
# A value is not required for Private Auction deals or Preferred Deals.
"creativeRestrictions": { # Represents creative restrictions associated to Programmatic Guaranteed/ # Output only. Restricitions about the creatives associated with the deal
# (i.e., size) This is available for Programmatic Guaranteed/Preferred Deals
# in Ad Manager.
# Preferred Deal in Ad Manager.
# This doesn't apply to Private Auction and AdX Preferred Deals.
"creativeFormat": "A String", # The format of the environment that the creatives will be displayed in.
"skippableAdType": "A String", # Skippable video ads allow viewers to skip ads after 5 seconds.
"creativeSpecifications": [
{ # Represents information for a creative that is associated with a Programmatic
# Guaranteed/Preferred Deal in Ad Manager.
"creativeSize": { # Represents size of a single ad slot, or a creative. # The size of the creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
"creativeCompanionSizes": [ # Companion sizes may be filled in only when this is a video creative.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
],
},
"targeting": { # Targeting represents different criteria that can be used by advertisers to # Output only. Specifies the subset of inventory targeted by the deal.
# target ad inventory. For example, they can choose to target ad requests only
# if the user is in the US.
# Multiple types of targeting are always applied as a logical AND, unless noted
# otherwise.
"videoTargeting": { # Represents targeting information about video. # Video targeting information.
"excludedPositionTypes": [ # A list of video positions to be excluded.
# Position types can either be included or excluded (XOR).
"A String",
],
"targetedPositionTypes": [ # A list of video positions to be included.
# When the included list is present, the excluded list must be empty.
# When the excluded list is present, the included list must be empty.
"A String",
],
},
"technologyTargeting": { # Represents targeting about various types of technology. # Technology targeting information, e.g., operating system, device category.
"deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device categories to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemTargeting": { # Represents targeting information for operating systems. # Operating system related targeting information.
"operatingSystemCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating systems to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of # IDs of operating system versions to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of # IDs of device capabilities to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
},
"geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of # Geo criteria IDs to be included/excluded.
# included and excluded numeric IDs.
"targetedCriteriaIds": [ # A list of numeric IDs to be included.
"A String",
],
"excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
"A String",
],
},
"placementTargeting": { # Represents targeting about where the ads can appear, e.g., certain sites or # Placement targeting information, e.g., URL, mobile applications.
# mobile applications.
# Different placement targeting types will be logically OR'ed.
"urlTargeting": { # Represents a list of targeted and excluded URLs (e.g., google.com). # URLs to be included/excluded.
# For Private Auction and AdX Preferred Deals, URLs are either included or
# excluded.
# For Programmatic Guaranteed and Preferred Deals, this doesn't
# apply.
"excludedUrls": [ # A list of URLs to be excluded.
"A String",
],
"targetedUrls": [ # A list of URLs to be included.
"A String",
],
},
"mobileApplicationTargeting": { # Mobile application targeting settings. # Mobile application targeting information in a deal.
# This doesn't apply to Auction Packages.
"firstPartyTargeting": { # Represents a list of targeted and excluded mobile application IDs that # Publisher owned apps to be targeted or excluded by the publisher to
# display the ads in.
# publishers own.
# Mobile application IDs are from App Store and Google Play Store.
# 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.
"excludedAppIds": [ # A list of application IDs to be excluded.
"A String",
],
"targetedAppIds": [ # A list of application IDs to be included.
"A String",
],
},
},
},
"inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on an ad # Inventory sizes to be included/excluded.
# request. It only applies to Private Auction, AdX Preferred Deals and
# Auction Packages. This targeting does not apply to Programmatic Guaranteed
# and Preferred Deals in Ad Manager.
"targetedInventorySizes": [ # A list of inventory sizes to be included.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
"excludedInventorySizes": [ # A list of inventory sizes to be excluded.
{ # Represents size of a single ad slot, or a creative.
"width": "A String", # The width of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
"sizeType": "A String", # The size type of the ad slot.
"height": "A String", # The height of the ad slot in pixels.
# This field will be present only when size type is `PIXEL`.
},
],
},
},
"createProductId": "A String", # The product ID from which this deal was created.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"webPropertyCode": "A String", # The web property code for the seller copied over from the product.
"proposalId": "A String", # Output only. ID of the proposal that this deal is part of.
"deliveryControl": { # Message contains details about how the deals will be paced. # The set of fields around delivery control that are interesting for a buyer
# to see but are non-negotiable. These are set by the publisher.
"frequencyCaps": [ # Output only. Specifies any frequency caps.
{ # Frequency cap.
"numTimeUnits": 42, # The amount of time, in the units specified by time_unit_type. Defines the
# amount of time over which impressions per user are counted and capped.
"timeUnitType": "A String", # The time unit. Along with num_time_units defines the amount of time over
# which impressions per user are counted and capped.
"maxImpressions": 42, # The maximum number of impressions that can be served to a user within the
# specified time period.
},
],
"creativeBlockingLevel": "A String", # Output only. Specified the creative blocking levels to be applied.
"deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
},
"description": "A String", # Description for the deal terms.
"dealId": "A String", # Output only. A unique deal ID for the deal (server-assigned).
"creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
"creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
"externalDealId": "A String", # Output only. The external deal ID assigned to this deal once the deal is
# finalized. This is the deal ID that shows up in serving/reporting etc.
"createTime": "A String", # Output only. The time of the deal creation.
"dealTerms": { # The deal terms specify the details of a Product/deal. They specify things # The negotiable terms of the deal.
# like price per buyer, the type of pricing model (e.g., fixed price, auction)
# and expected impressions from the publisher.
"description": "A String", # Publisher provided description for the terms.
"guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
"guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage
# of guaranteed looks that the buyer is guaranteeing to buy.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
"guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
},
"sellerTimeZone": "A String", # The time zone name. For deals with Cost Per Day billing, defines the
# time zone used to mark the boundaries of a day. It should be an
# IANA TZ name, such as "America/Los_Angeles". For more information,
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
"estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day.
# Can be set by buyer or seller.
"nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. Note that Preferred Deals cannot be created via # The terms for non-guaranteed fixed price deals.
# the API at this time, but can be returned in a get or list request.
"fixedPrices": [ # Fixed price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
},
"estimatedGrossSpend": { # Represents a price and a pricing type for a product / deal. # Non-binding estimate of the estimated gross spend for this deal.
# Can be set by buyer or seller.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
"nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only # The terms for non-guaranteed auction deals.
# by the seller, but they can be returned in a get or list request.
"reservePricesPerBuyer": [ # Reserve price for the specified buyer.
{ # Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in
# a product can become 0 or 1 deals. To check if there is a PricePerBuyer for
# a particular buyer or buyer/advertiser pair, we look for the most specific
# matching rule - we first look for a rule matching the buyer and advertiser,
# next a rule with the buyer but an empty advertiser list, and otherwise look
# for a matching rule where no buyer is set.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # The buyer who will pay this price. If unset, all buyers can pay this price
# (if the
# advertisers match, and there's no more specific rule matching the buyer).
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"advertiserIds": [ # The list of advertisers for this price when associated with this buyer.
# If empty, all advertisers with this buyer pay this price.
"A String",
],
"price": { # Represents a price and a pricing type for a product / deal. # The specified price.
"pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
"amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
"nanos": 42, # Number of nano (10^-9) units of the amount.
# The value must be between -999,999,999 and +999,999,999 inclusive.
# If `units` is positive, `nanos` must be positive or zero.
# If `units` is zero, `nanos` can be positive, zero, or negative.
# If `units` is negative, `nanos` must be negative or zero.
# For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount.
# For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
"currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
},
},
},
],
"autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers
# in this private auction.
},
"brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
},
"programmaticCreativeSource": "A String", # Output only. Specifies the creative source for programmatic deals.
# PUBLISHER means creative is provided by seller and ADVERTISER means
# creative is provided by buyer.
"displayName": "A String", # The name of the deal.
"buyerPrivateData": { # Buyers are allowed to store certain types of private data in a proposal/deal. # Buyer private data (hidden from seller).
"referenceId": "A String", # A buyer or seller specified reference ID. This can be queried in the list
# operations (max-length: 1024 unicode code units).
},
"syndicationProduct": "A String", # The syndication product associated with the deal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"targetingCriterion": [ # The shared targeting visible to buyers and sellers. Each shared
# targeting entity is AND'd together.
{ # Advertisers can target different attributes of an ad slot. For example,
# they can choose to show ads only if the user is in the U.S. Such
# targeting criteria can be specified as part of Shared Targeting.
"inclusions": [ # The list of value to include as part of the targeting. Each value is OR'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"exclusions": [ # The list of values to exclude from targeting. Each value is AND'd
# together.
{ # A polymorphic targeting value used as part of Shared Targeting.
"stringValue": "A String", # The string value to include/exclude.
"longValue": "A String", # The long value to include/exclude.
"creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude.
# Filled in when key = GOOG_CREATIVE_SIZE
"companionSizes": [ # For video creatives specifies the sizes of companion ads (if present).
# Companion sizes may be filled in only when creative_size_type = VIDEO
{ # Message depicting the size of the creative. The units of width and
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
],
"nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value
# only if creative_size_type = CreativeSizeType.NATIVE.
"allowedFormats": [ # What formats are allowed by the publisher.
# If this repeated field is empty then all formats are allowed.
# For example, if this field contains AllowedFormatType.AUDIO then the
# publisher only allows an audio ad (without any video).
"A String",
],
"skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if
# creative_size_type = CreativeSizeType.VIDEO.
"creativeSizeType": "A String", # The creative size type.
"size": { # Message depicting the size of the creative. The units of width and # For regular or video creative size type, specifies the size
# of the creative
# height depend on the type of the targeting.
"width": 42, # The width of the creative
"height": 42, # The height of the creative.
},
},
"dayPartTargetingValue": { # Specifies the day part targeting criteria. # The daypart targeting to include / exclude.
# Filled in when the key is GOOG_DAYPART_TARGETING.
# The definition of this targeting is derived from the structure
# used by Ad Manager.
"dayParts": [ # A list of day part targeting criterion.
{ # Daypart targeting message that specifies if the ad can be shown
# only during certain parts of a day/week.
"dayOfWeek": "A String", # The day of the week to target. If unspecified, applicable to all days.
"endTime": { # Represents a time of day. The date and time zone are either not significant # The ending time of the day for the ad to show (minute level
# granularity). The end time is exclusive. This field is not available
# for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
"startTime": { # Represents a time of day. The date and time zone are either not significant # The starting time of day for the ad to show (minute level granularity).
# The start time is inclusive.
# This field is not available for filtering in PQL queries.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
},
},
],
"timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
},
},
],
"key": "A String", # The key representing the shared targeting criterion.
# Targeting criteria defined by Google ad servers will begin with GOOG_.
# Third parties may define their own keys.
# A list of permissible keys along with the acceptable values will be
# provided as part of the external documentation.
},
],
"dealServingMetadata": { # Message captures metadata about the serving status of a deal. # Output only. Metadata about the serving status of this deal.
"dealPauseStatus": { # Tracks which parties (if any) have paused a deal. # Output only. Tracks which parties (if any) have paused a deal.
# The deal is considered paused if either hasBuyerPaused or
# hasSellPaused is true.
"hasSellerPaused": True or False, # True, if the seller has paused the deal unilaterally.
"buyerPauseReason": "A String", # The buyer's reason for pausing, if the buyer paused the deal.
"sellerPauseReason": "A String", # The seller's reason for pausing, if the seller paused the deal.
"hasBuyerPaused": True or False, # True, if the buyer has paused the deal unilaterally.
"firstPausedBy": "A String", # The role of the person who first paused this deal.
},
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# deal.
},
],
"proposalId": "A String", # Output only. The unique ID of the proposal.
"displayName": "A String", # The name for the proposal.
"isRenegotiating": True or False, # Output only. True if the proposal is being renegotiated.
"buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique # Reference to the buyer on the proposal.
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
# Authorized Buyers account ID.
"accountId": "A String", # Authorized Buyers account ID of the buyer.
},
"isSetupComplete": True or False, # Output only. True, if the buyside inventory setup is complete for this
# proposal.
"notes": [ # Output only. The notes associated with this proposal.
{ # A proposal may be associated to several notes.
"note": "A String", # The actual note to attach.
# (max-length: 1024 unicode code units)
#
# Note: This field may be set only when creating the resource. Modifying
# this field while updating the resource will result in an error.
"creatorRole": "A String", # Output only. The role of the person (buyer/seller) creating the note.
"proposalRevision": "A String", # Output only. The revision number of the proposal when the note is created.
"createTime": "A String", # Output only. The timestamp for when this note was created.
"noteId": "A String", # Output only. The unique ID for the note.
},
],
"lastUpdaterOrCommentorRole": "A String", # Output only. The role of the last user that either updated the proposal or
# left a comment.
"buyerContacts": [ # Contact information for the buyer.
{ # Contains information on how a buyer or seller can be reached.
"email": "A String", # Email address for the contact.
"name": "A String", # The name of the contact.
},
],
}</pre>
</div>
</body></html>