# Ad Exchange Buyer API II . accounts . products

## Instance Methods

Close httplib2 connections.

Gets the requested product by ID.

List all products visible to the buyer (optionally filtered by the specified PQL query).

Retrieves the next page of results.

### Method Details

`close()`

    Close httplib2 connections.

`get(accountId, productId, x__xgafv=None)`

    Gets the requested product by ID.

    Args:
      accountId: string, Account ID of the buyer. (required)
      productId: string, The ID for the product to get the head revision for. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A product is a segment of inventory that a seller wishes to sell. It is associated with certain terms and targeting information which helps the buyer know more about the inventory.
      "availableEndTime": "A String", # The proposed end time for the deal. The field will be truncated to the order of seconds during serving.
      "availableStartTime": "A String", # Inventory availability dates. The start time will be truncated to seconds during serving. Thus, a field specified as 3:23:34.456 (HH:mm:ss.SSS) will be truncated to 3:23:34 when serving.
      "createTime": "A String", # Creation time.
      "creatorContacts": [ # Optional contact information for the creator of this product.
        { # 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.
        },
      ],
      "displayName": "A String", # The display name for this product as set by the seller.
      "hasCreatorSignedOff": True or False, # If the creator has already signed off on the product, then the buyer can finalize the deal by accepting the product as is. When copying to a proposal, if any of the terms are changed, then auto_finalize is automatically set to false.
      "productId": "A String", # The unique ID for the product.
      "productRevision": "A String", # The revision number of the product (auto-assigned by Marketplace).
      "publisherProfileId": "A String", # An ID which can be used by the Publisher Profile API to get more information about the seller that created this product.
      "seller": { # Represents a seller of inventory. Each seller is identified by a unique Ad Manager account ID. # Information about the seller that created this product.
        "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.
        "subAccountId": "A String", # Optional sub-account ID for the seller.
      },
      "syndicationProduct": "A String", # The syndication product associated with the deal.
      "targetingCriterion": [ # Targeting that is shared between the buyer and the seller. Each targeting criterion has a specified key and for each key there is a list of inclusion value or exclusion values.
        { # 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.
          "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.
              "creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude. Filled in when key = GOOG_CREATIVE_SIZE
                "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",
                ],
                "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.
                    "height": 42, # The height of the creative.
                    "width": 42, # The width of the creative
                  },
                ],
                "creativeSizeType": "A String", # The creative size type.
                "nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value only if creative_size_type = CreativeSizeType.NATIVE.
                "size": { # Message depicting the size of the creative. The units of width and height depend on the type of the targeting. # For regular or video creative size type, specifies the size of the creative
                  "height": 42, # The height of the creative.
                  "width": 42, # The width of the creative
                },
                "skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if creative_size_type = CreativeSizeType.VIDEO.
              },
              "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 or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # 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.
                      "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.
                      "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.
                    },
                    "startTime": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # 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.
                      "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.
                      "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.
                    },
                  },
                ],
                "timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
              },
              "longValue": "A String", # The long value to include/exclude.
              "stringValue": "A String", # The string value to include/exclude.
            },
          ],
          "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.
              "creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude. Filled in when key = GOOG_CREATIVE_SIZE
                "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",
                ],
                "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.
                    "height": 42, # The height of the creative.
                    "width": 42, # The width of the creative
                  },
                ],
                "creativeSizeType": "A String", # The creative size type.
                "nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value only if creative_size_type = CreativeSizeType.NATIVE.
                "size": { # Message depicting the size of the creative. The units of width and height depend on the type of the targeting. # For regular or video creative size type, specifies the size of the creative
                  "height": 42, # The height of the creative.
                  "width": 42, # The width of the creative
                },
                "skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if creative_size_type = CreativeSizeType.VIDEO.
              },
              "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 or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # 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.
                      "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.
                      "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.
                    },
                    "startTime": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # 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.
                      "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.
                      "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.
                    },
                  },
                ],
                "timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
              },
              "longValue": "A String", # The long value to include/exclude.
              "stringValue": "A String", # The string value to include/exclude.
            },
          ],
          "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.
        },
      ],
      "terms": { # The deal terms specify the details of a Product/deal. They specify things like price per buyer, the type of pricing model (e.g., fixed price, auction) and expected impressions from the publisher. # The negotiable terms of the deal.
        "brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
        "description": "A String", # Publisher provided description for the terms.
        "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.
          "amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
            "currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
            "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.
          },
          "pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
        },
        "estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day. Can be set by buyer or seller.
        "guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
          "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.
              "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",
              ],
              "buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID. # 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).
                "accountId": "A String", # Authorized Buyers account ID of the buyer.
              },
              "price": { # Represents a price and a pricing type for a product / deal. # The specified price.
                "amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
                  "currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
                  "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.
                },
                "pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
              },
            },
          ],
          "guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage of guaranteed looks that the buyer is guaranteeing to buy.
          "guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
          "impressionCap": "A String", # The lifetime impression cap for CPM sponsorship deals. The deal will stop serving when the cap is reached.
          "minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
          "percentShareOfVoice": "A String", # For sponsorship deals, this is the percentage of the seller's eligible impressions that the deal will serve until the cap is reached.
          "reservationType": "A String", # The reservation type for a Programmatic Guaranteed deal. This indicates whether the number of impressions is fixed, or a percent of available impressions. If not specified, the default reservation type is STANDARD.
        },
        "nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only by the seller, but they can be returned in a get or list request. # The terms for non-guaranteed auction deals.
          "autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers in this private auction.
          "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.
              "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",
              ],
              "buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID. # 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).
                "accountId": "A String", # Authorized Buyers account ID of the buyer.
              },
              "price": { # Represents a price and a pricing type for a product / deal. # The specified price.
                "amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
                  "currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
                  "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.
                },
                "pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
              },
            },
          ],
        },
        "nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. # The terms for non-guaranteed fixed price deals.
          "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.
              "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",
              ],
              "buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID. # 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).
                "accountId": "A String", # Authorized Buyers account ID of the buyer.
              },
              "price": { # Represents a price and a pricing type for a product / deal. # The specified price.
                "amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
                  "currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
                  "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.
                },
                "pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
              },
            },
          ],
        },
        "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.
      },
      "updateTime": "A String", # Time of last update.
      "webPropertyCode": "A String", # The web-property code for the seller. This needs to be copied as is when adding a new deal to a proposal.
    }

`list(accountId, filter=None, pageSize=None, pageToken=None, x__xgafv=None)`

    List all products visible to the buyer (optionally filtered by the specified PQL query).

    Args:
      accountId: string, Account ID of the buyer. (required)
      filter: string, An optional PQL query used to query for products. See https://developers.google.com/ad-manager/docs/pqlreference for documentation about PQL and examples. Nested repeated fields, such as product.targetingCriterion.inclusions, cannot be filtered.
      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 ListProductsResponse.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response message for listing products visible to the buyer.
      "nextPageToken": "A String", # List pagination support.
      "products": [ # The list of matching products at their head revision number.
        { # A product is a segment of inventory that a seller wishes to sell. It is associated with certain terms and targeting information which helps the buyer know more about the inventory.
          "availableEndTime": "A String", # The proposed end time for the deal. The field will be truncated to the order of seconds during serving.
          "availableStartTime": "A String", # Inventory availability dates. The start time will be truncated to seconds during serving. Thus, a field specified as 3:23:34.456 (HH:mm:ss.SSS) will be truncated to 3:23:34 when serving.
          "createTime": "A String", # Creation time.
          "creatorContacts": [ # Optional contact information for the creator of this product.
            { # 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.
            },
          ],
          "displayName": "A String", # The display name for this product as set by the seller.
          "hasCreatorSignedOff": True or False, # If the creator has already signed off on the product, then the buyer can finalize the deal by accepting the product as is. When copying to a proposal, if any of the terms are changed, then auto_finalize is automatically set to false.
          "productId": "A String", # The unique ID for the product.
          "productRevision": "A String", # The revision number of the product (auto-assigned by Marketplace).
          "publisherProfileId": "A String", # An ID which can be used by the Publisher Profile API to get more information about the seller that created this product.
          "seller": { # Represents a seller of inventory. Each seller is identified by a unique Ad Manager account ID. # Information about the seller that created this product.
            "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.
            "subAccountId": "A String", # Optional sub-account ID for the seller.
          },
          "syndicationProduct": "A String", # The syndication product associated with the deal.
          "targetingCriterion": [ # Targeting that is shared between the buyer and the seller. Each targeting criterion has a specified key and for each key there is a list of inclusion value or exclusion values.
            { # 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.
              "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.
                  "creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude. Filled in when key = GOOG_CREATIVE_SIZE
                    "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",
                    ],
                    "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.
                        "height": 42, # The height of the creative.
                        "width": 42, # The width of the creative
                      },
                    ],
                    "creativeSizeType": "A String", # The creative size type.
                    "nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value only if creative_size_type = CreativeSizeType.NATIVE.
                    "size": { # Message depicting the size of the creative. The units of width and height depend on the type of the targeting. # For regular or video creative size type, specifies the size of the creative
                      "height": 42, # The height of the creative.
                      "width": 42, # The width of the creative
                    },
                    "skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if creative_size_type = CreativeSizeType.VIDEO.
                  },
                  "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 or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # 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.
                          "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.
                          "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.
                        },
                        "startTime": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # 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.
                          "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.
                          "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.
                        },
                      },
                    ],
                    "timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
                  },
                  "longValue": "A String", # The long value to include/exclude.
                  "stringValue": "A String", # The string value to include/exclude.
                },
              ],
              "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.
                  "creativeSizeValue": { # Specifies the size of the creative. # The creative size value to include/exclude. Filled in when key = GOOG_CREATIVE_SIZE
                    "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",
                    ],
                    "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.
                        "height": 42, # The height of the creative.
                        "width": 42, # The width of the creative
                      },
                    ],
                    "creativeSizeType": "A String", # The creative size type.
                    "nativeTemplate": "A String", # Output only. The native template for this creative. It will have a value only if creative_size_type = CreativeSizeType.NATIVE.
                    "size": { # Message depicting the size of the creative. The units of width and height depend on the type of the targeting. # For regular or video creative size type, specifies the size of the creative
                      "height": 42, # The height of the creative.
                      "width": 42, # The width of the creative
                    },
                    "skippableAdType": "A String", # The type of skippable ad for this creative. It will have a value only if creative_size_type = CreativeSizeType.VIDEO.
                  },
                  "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 or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # 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.
                          "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.
                          "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.
                        },
                        "startTime": { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # 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.
                          "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.
                          "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.
                        },
                      },
                    ],
                    "timeZoneType": "A String", # The timezone to use for interpreting the day part targeting.
                  },
                  "longValue": "A String", # The long value to include/exclude.
                  "stringValue": "A String", # The string value to include/exclude.
                },
              ],
              "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.
            },
          ],
          "terms": { # The deal terms specify the details of a Product/deal. They specify things like price per buyer, the type of pricing model (e.g., fixed price, auction) and expected impressions from the publisher. # The negotiable terms of the deal.
            "brandingType": "A String", # Visibility of the URL in bid requests. (default: BRANDED)
            "description": "A String", # Publisher provided description for the terms.
            "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.
              "amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
                "currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
                "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.
              },
              "pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
            },
            "estimatedImpressionsPerDay": "A String", # Non-binding estimate of the impressions served per day. Can be set by buyer or seller.
            "guaranteedFixedPriceTerms": { # Terms for Programmatic Guaranteed Deals. # The terms for guaranteed fixed price deals.
              "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.
                  "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",
                  ],
                  "buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID. # 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).
                    "accountId": "A String", # Authorized Buyers account ID of the buyer.
                  },
                  "price": { # Represents a price and a pricing type for a product / deal. # The specified price.
                    "amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
                      "currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
                      "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.
                    },
                    "pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
                  },
                },
              ],
              "guaranteedImpressions": "A String", # Guaranteed impressions as a percentage. This is the percentage of guaranteed looks that the buyer is guaranteeing to buy.
              "guaranteedLooks": "A String", # Count of guaranteed looks. Required for deal, optional for product.
              "impressionCap": "A String", # The lifetime impression cap for CPM sponsorship deals. The deal will stop serving when the cap is reached.
              "minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types.
              "percentShareOfVoice": "A String", # For sponsorship deals, this is the percentage of the seller's eligible impressions that the deal will serve until the cap is reached.
              "reservationType": "A String", # The reservation type for a Programmatic Guaranteed deal. This indicates whether the number of impressions is fixed, or a percent of available impressions. If not specified, the default reservation type is STANDARD.
            },
            "nonGuaranteedAuctionTerms": { # Terms for Private Auctions. Note that Private Auctions can be created only by the seller, but they can be returned in a get or list request. # The terms for non-guaranteed auction deals.
              "autoOptimizePrivateAuction": True or False, # True if open auction buyers are allowed to compete with invited buyers in this private auction.
              "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.
                  "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",
                  ],
                  "buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID. # 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).
                    "accountId": "A String", # Authorized Buyers account ID of the buyer.
                  },
                  "price": { # Represents a price and a pricing type for a product / deal. # The specified price.
                    "amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
                      "currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
                      "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.
                    },
                    "pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
                  },
                },
              ],
            },
            "nonGuaranteedFixedPriceTerms": { # Terms for Preferred Deals. # The terms for non-guaranteed fixed price deals.
              "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.
                  "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",
                  ],
                  "buyer": { # Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID. # 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).
                    "accountId": "A String", # Authorized Buyers account ID of the buyer.
                  },
                  "price": { # Represents a price and a pricing type for a product / deal. # The specified price.
                    "amount": { # Represents an amount of money with its currency type. # The actual price with currency specified.
                      "currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
                      "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.
                    },
                    "pricingType": "A String", # The pricing type for the deal/product. (default: CPM)
                  },
                },
              ],
            },
            "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.
          },
          "updateTime": "A String", # Time of last update.
          "webPropertyCode": "A String", # The web-property code for the seller. This needs to be copied as is when adding a new deal to a proposal.
        },
      ],
    }

`list_next(previous_request, previous_response)`

    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.