Regen all docs. (#700)

* Stop recursing if discovery == {}

* Generate docs with 'make docs'.
diff --git a/docs/dyn/adexchangebuyer2_v2beta1.accounts.finalizedProposals.html b/docs/dyn/adexchangebuyer2_v2beta1.accounts.finalizedProposals.html
new file mode 100644
index 0000000..420b4ba
--- /dev/null
+++ b/docs/dyn/adexchangebuyer2_v2beta1.accounts.finalizedProposals.html
@@ -0,0 +1,738 @@
+<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.finalizedProposals.html">finalizedProposals</a></h1>
+<h2>Instance Methods</h2>
+<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 finalized proposals, regardless if a proposal is being renegotiated.</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>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(accountId, pageSize=None, pageToken=None, x__xgafv=None, filterSyntax=None, filter=None)</code>
+  <pre>List finalized proposals, regardless if a proposal is being renegotiated.
+A filter expression (PQL query) may be specified to filter the results.
+The notes will not be returned.
+
+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>
+
+</body></html>
\ No newline at end of file