# Authorized Buyers Marketplace API . buyers . proposals . deals

## Instance Methods

Batch updates multiple deals in the same proposal.

Close httplib2 connections.

Gets a deal given its name. The deal is returned at its head revision.

Lists all deals in a proposal. To retrieve only the finalized revision deals regardless if a deal is being renegotiated, see the FinalizedDeals resource.

Retrieves the next page of results.

Updates the given deal at the buyer known revision number. If the server revision has advanced since the passed-in proposal.proposal_revision an ABORTED error message will be returned. The revision number is incremented by the server whenever the proposal or its constituent deals are updated. Note: The revision number is kept at a proposal level. The buyer of the API is expected to keep track of the revision number after the last update operation and send it in as part of the next update request. This way, if there are further changes on the server (for example, seller making new updates), then the server can detect conflicts and reject the proposed changes.

### Method Details

`batchUpdate(parent, body=None, x__xgafv=None)`

    Batch updates multiple deals in the same proposal.

    Args:
      parent: string, Required. The name of the proposal containing the deals to batch update. Format: buyers/{accountId}/proposals/{proposalId} (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for batch updating deals.
      "requests": [ # Required. List of request messages to update deals.
        { # Request message for updating the deal at the given revision number.
          "deal": { # A deal represents a segment of inventory for displaying ads that contains the terms and targeting information that is used for serving as well as the deal stats and status. Note: A proposal may contain multiple deals. # Required. The deal to update. The deal's `name` field is used to identify the deal to be updated. Note: proposal_revision will have to be provided within the resource or else an error will be thrown. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId}
            "billedBuyer": "A String", # Output only. When the client field is populated, this field refers to the buyer who creates and manages the client buyer and gets billed on behalf of the client buyer; when the buyer field is populated, this field is the same value as buyer; when the deal belongs to a media planner account, this field will be empty. Format : `buyers/{buyerAccountId}`
            "buyer": "A String", # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. Format: `buyers/{buyerAccountId}`
            "buyerPermissionType": "A String", # Output only. The buyer permission type of the deal.
            "client": "A String", # Output only. Refers to a Client. Format: `buyers/{buyerAccountId}/clients/{clientAccountid}`
            "createTime": "A String", # Output only. The time of the deal creation.
            "creativeRequirements": { # Message captures data about the creatives in the deal. # Output only. Metadata about the creatives of this deal.
              "creativeFormat": "A String", # Output only. The format of the creative, only applicable for programmatic guaranteed and preferred deals.
              "creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
              "creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
              "maxAdDurationMs": "A String", # Output only. The max duration of the video creative in milliseconds. only applicable for deals with video creatives.
              "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 the buyer.
              "skippableAdType": "A String", # Output only. Skippable video ads allow viewers to skip ads after 5 seconds. Only applicable for deals with video creatives.
            },
            "dealType": "A String", # Output only. Type of deal.
            "deliveryControl": { # Message contains details about how the deal will be paced. # Output only. Specifies the pacing set by the publisher.
              "companionDeliveryType": "A String", # Output only. Specifies roadblocking in a main companion lineitem.
              "creativeRotationType": "A String", # Output only. Specifies strategy to use for selecting a creative when multiple creatives of the same size are available.
              "deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
              "frequencyCap": [ # Output only. Specifies any frequency caps. Cannot be filtered within ListDealsRequest.
                { # Message contains details about publisher-set frequency caps of the delivery.
                  "maxImpressions": 42, # The maximum number of impressions that can be served to a user within the specified time period.
                  "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.
                  "timeUnitsCount": 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.
                },
              ],
              "roadblockingType": "A String", # Output only. Specifies the roadblocking type in display creatives.
            },
            "description": "A String", # Output only. Free text description for the deal terms.
            "displayName": "A String", # Output only. The name of the deal. Maximum length of 255 unicode characters is allowed. Control characters are not allowed. Buyers cannot update this field. Note: Not to be confused with name, which is a unique identifier of the deal.
            "eligibleSeatIds": [ # Output only. If set, this field contains the list of DSP specific seat ids set by media planners that are eligible to transact on this deal. The seat ID is in the calling DSP's namespace.
              "A String",
            ],
            "estimatedGrossSpend": { # Represents an amount of money with its currency type. # Specified by buyers in request for proposal (RFP) to notify publisher the total estimated spend for the proposal. Publishers will receive this information and send back proposed deals accordingly.
              "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.
            },
            "flightEndTime": "A String", # Proposed flight end time of the deal. This will generally be stored in a granularity of a second. A value is not necessary for Private Auction deals.
            "flightStartTime": "A String", # Proposed flight start time of the deal. This will generally be stored in the granularity of one second since deal serving starts at seconds boundary. Any time specified with more granularity (for example, in milliseconds) will be truncated towards the start of time in seconds.
            "mediaPlanner": { # Describes a single Media Planner account. # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. This field represents a media planner (For example, agency or big advertiser).
              "accountId": "A String", # Output only. Account ID of the media planner.
            },
            "name": "A String", # Immutable. The unique identifier of the deal. Auto-generated by the server when a deal is created. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId}
            "preferredDealTerms": { # Pricing terms for Preferred Deals. # The terms for preferred deals.
              "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
                "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.
                },
                "type": "A String", # The pricing type for the deal.
              },
            },
            "privateAuctionTerms": { # Pricing terms for Private Auctions. # The terms for private auction deals.
              "floorPrice": { # Represents a price and a pricing type for a deal. # The minimum price buyer has to bid to compete in the private auction.
                "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.
                },
                "type": "A String", # The pricing type for the deal.
              },
              "openAuctionAllowed": True or False, # Output only. True if open auction buyers are allowed to compete with invited buyers in this private auction.
            },
            "programmaticGuaranteedTerms": { # Pricing terms for Programmatic Guaranteed Deals. # The terms for programmatic guaranteed deals.
              "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
                "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.
                },
                "type": "A String", # The pricing type for the deal.
              },
              "guaranteedLooks": "A String", # Count of guaranteed looks. For CPD deals, buyer changes to guaranteed_looks will be ignored.
              "impressionCap": "A String", # The lifetime impression cap for CPM Sponsorship deals. Deal will stop serving when cap is reached.
              "minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.
              "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. Valid value is within range 0~100.
              "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.
            },
            "proposalRevision": "A String", # Output only. The revision number for the proposal and is the same value as proposal.proposal_revision. Each update to deal causes the proposal revision number to auto-increment. The buyer keeps track of the last revision number they know of and pass it in when making an update. If the head revision number on the server has since incremented, then an ABORTED error is returned during the update operation to let the buyer know that a subsequent update was made.
            "publisherProfile": "A String", # Immutable. Reference to the seller on the deal. Format: `buyers/{buyerAccountId}/publisherProfiles/{publisherProfileId}`
            "sellerTimeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Output only. Time zone of the seller used to mark the boundaries of a day for daypart targeting and CPD billing.
              "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
              "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
            },
            "targeting": { # Targeting represents different criteria that can be used to target deals or auction packages. For example, they can choose to target inventory only if the user is in the US. Multiple types of targeting are always applied as a logical AND, unless noted otherwise. # Specifies the subset of inventory targeted by the deal. Can be updated by the buyer before the deal is finalized.
              "daypartTargeting": { # Represents Daypart targeting. # Daypart targeting information.
                "dayParts": [ # The targeted weekdays and times
                  { # Defines targeting for a period of time on a specific week day.
                    "dayOfWeek": "A String", # Day of week for the period.
                    "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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                      "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                      "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                      "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                      "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal 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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                      "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                      "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                      "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                      "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
                    },
                  },
                ],
                "timeZoneType": "A String", # The time zone type of the day parts
              },
              "excludedSensitiveCategoryIds": [ # Output only. The sensitive content category label IDs excluded. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs.
                "A String",
              ],
              "geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. Geo criteria IDs to be included/excluded.
                "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                  "A String",
                ],
                "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                  "A String",
                ],
              },
              "inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on a bid request. # Output only. Inventory sizes to be included/excluded.
                "excludedInventorySizes": [ # A list of inventory sizes to be excluded.
                  { # Represents size of a single ad slot, or a creative.
                    "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                    "type": "A String", # The type of the ad slot size.
                    "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                  },
                ],
                "targetedInventorySizes": [ # A list of inventory sizes to be included.
                  { # Represents size of a single ad slot, or a creative.
                    "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                    "type": "A String", # The type of the ad slot size.
                    "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                  },
                ],
              },
              "inventoryTypeTargeting": { # Targeting of the inventory types a bid request can originate from. # Output only. Inventory type targeting information.
                "inventoryTypes": [ # The list of targeted inventory types for the bid request.
                  "A String",
                ],
              },
              "placementTargeting": { # Represents targeting about where the ads can appear, for example, certain sites or mobile applications. Different placement targeting types will be logically OR'ed. # Output only. Placement targeting information, for example, URL, mobile applications.
                "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 publishers own. Android App ID, for example, com.google.android.apps.maps, can be found in Google Play Store URL. iOS App ID (which is a number) can be found at the end of iTunes store URL. First party mobile applications is either included or excluded. # Publisher owned apps to be targeted or excluded by the publisher to display the ads in.
                    "excludedAppIds": [ # A list of application IDs to be excluded.
                      "A String",
                    ],
                    "targetedAppIds": [ # A list of application IDs to be included.
                      "A String",
                    ],
                  },
                },
                "uriTargeting": { # Represents a list of targeted and excluded URLs (for example, google.com). For Private Auction Deals, URLs are either included or excluded. For Programmatic Guaranteed and Preferred Deals, this doesn't apply. # URLs to be included/excluded.
                  "excludedUris": [ # A list of URLs to be excluded.
                    "A String",
                  ],
                  "targetedUris": [ # A list of URLs to be included.
                    "A String",
                  ],
                },
              },
              "technologyTargeting": { # Represents targeting about various types of technology. # Output only. Technology targeting information, for example, operating system, device category.
                "deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device capabilities to be included/excluded.
                  "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                    "A String",
                  ],
                  "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                    "A String",
                  ],
                },
                "deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device categories to be included/excluded.
                  "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                    "A String",
                  ],
                  "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                    "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 included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating systems to be included/excluded.
                    "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                      "A String",
                    ],
                    "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                      "A String",
                    ],
                  },
                  "operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating system versions to be included/excluded.
                    "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                      "A String",
                    ],
                    "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                      "A String",
                    ],
                  },
                },
              },
              "userListTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Buyer user list targeting information. User lists can be uploaded using https://developers.google.com/authorized-buyers/rtb/bulk-uploader.
                "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                  "A String",
                ],
                "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                  "A String",
                ],
              },
              "verticalTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. The verticals included or excluded as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals
                "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                  "A String",
                ],
                "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                  "A String",
                ],
              },
              "videoTargeting": { # Represents targeting information about video. # Output only. Video targeting information.
                "excludedPositionTypes": [ # A list of video positions to be excluded. When this field is populated, the targeted_position_types field must be empty.
                  "A String",
                ],
                "targetedPositionTypes": [ # A list of video positions to be included. When this field is populated, the excluded_position_types field must be empty.
                  "A String",
                ],
              },
            },
            "updateTime": "A String", # Output only. The time when the deal was last updated.
          },
          "updateMask": "A String", # List of fields to be updated. If empty or unspecified, the service will update all fields populated in the update request excluding the output only fields and primitive fields with default value. Note that explicit field mask is required in order to reset a primitive field back to its default value, for example, false for boolean fields, 0 for integer fields. A special field mask consisting of a single path "*" can be used to indicate full replacement(the equivalent of PUT method), updatable fields unset or unspecified in the input will be cleared or set to default value. Output only fields will be ignored regardless of the value of updateMask.
        },
      ],
    }

      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 batch updating deals.
      "deals": [ # Deals updated.
        { # A deal represents a segment of inventory for displaying ads that contains the terms and targeting information that is used for serving as well as the deal stats and status. Note: A proposal may contain multiple deals.
          "billedBuyer": "A String", # Output only. When the client field is populated, this field refers to the buyer who creates and manages the client buyer and gets billed on behalf of the client buyer; when the buyer field is populated, this field is the same value as buyer; when the deal belongs to a media planner account, this field will be empty. Format : `buyers/{buyerAccountId}`
          "buyer": "A String", # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. Format: `buyers/{buyerAccountId}`
          "buyerPermissionType": "A String", # Output only. The buyer permission type of the deal.
          "client": "A String", # Output only. Refers to a Client. Format: `buyers/{buyerAccountId}/clients/{clientAccountid}`
          "createTime": "A String", # Output only. The time of the deal creation.
          "creativeRequirements": { # Message captures data about the creatives in the deal. # Output only. Metadata about the creatives of this deal.
            "creativeFormat": "A String", # Output only. The format of the creative, only applicable for programmatic guaranteed and preferred deals.
            "creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
            "creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
            "maxAdDurationMs": "A String", # Output only. The max duration of the video creative in milliseconds. only applicable for deals with video creatives.
            "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 the buyer.
            "skippableAdType": "A String", # Output only. Skippable video ads allow viewers to skip ads after 5 seconds. Only applicable for deals with video creatives.
          },
          "dealType": "A String", # Output only. Type of deal.
          "deliveryControl": { # Message contains details about how the deal will be paced. # Output only. Specifies the pacing set by the publisher.
            "companionDeliveryType": "A String", # Output only. Specifies roadblocking in a main companion lineitem.
            "creativeRotationType": "A String", # Output only. Specifies strategy to use for selecting a creative when multiple creatives of the same size are available.
            "deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
            "frequencyCap": [ # Output only. Specifies any frequency caps. Cannot be filtered within ListDealsRequest.
              { # Message contains details about publisher-set frequency caps of the delivery.
                "maxImpressions": 42, # The maximum number of impressions that can be served to a user within the specified time period.
                "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.
                "timeUnitsCount": 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.
              },
            ],
            "roadblockingType": "A String", # Output only. Specifies the roadblocking type in display creatives.
          },
          "description": "A String", # Output only. Free text description for the deal terms.
          "displayName": "A String", # Output only. The name of the deal. Maximum length of 255 unicode characters is allowed. Control characters are not allowed. Buyers cannot update this field. Note: Not to be confused with name, which is a unique identifier of the deal.
          "eligibleSeatIds": [ # Output only. If set, this field contains the list of DSP specific seat ids set by media planners that are eligible to transact on this deal. The seat ID is in the calling DSP's namespace.
            "A String",
          ],
          "estimatedGrossSpend": { # Represents an amount of money with its currency type. # Specified by buyers in request for proposal (RFP) to notify publisher the total estimated spend for the proposal. Publishers will receive this information and send back proposed deals accordingly.
            "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.
          },
          "flightEndTime": "A String", # Proposed flight end time of the deal. This will generally be stored in a granularity of a second. A value is not necessary for Private Auction deals.
          "flightStartTime": "A String", # Proposed flight start time of the deal. This will generally be stored in the granularity of one second since deal serving starts at seconds boundary. Any time specified with more granularity (for example, in milliseconds) will be truncated towards the start of time in seconds.
          "mediaPlanner": { # Describes a single Media Planner account. # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. This field represents a media planner (For example, agency or big advertiser).
            "accountId": "A String", # Output only. Account ID of the media planner.
          },
          "name": "A String", # Immutable. The unique identifier of the deal. Auto-generated by the server when a deal is created. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId}
          "preferredDealTerms": { # Pricing terms for Preferred Deals. # The terms for preferred deals.
            "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
              "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.
              },
              "type": "A String", # The pricing type for the deal.
            },
          },
          "privateAuctionTerms": { # Pricing terms for Private Auctions. # The terms for private auction deals.
            "floorPrice": { # Represents a price and a pricing type for a deal. # The minimum price buyer has to bid to compete in the private auction.
              "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.
              },
              "type": "A String", # The pricing type for the deal.
            },
            "openAuctionAllowed": True or False, # Output only. True if open auction buyers are allowed to compete with invited buyers in this private auction.
          },
          "programmaticGuaranteedTerms": { # Pricing terms for Programmatic Guaranteed Deals. # The terms for programmatic guaranteed deals.
            "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
              "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.
              },
              "type": "A String", # The pricing type for the deal.
            },
            "guaranteedLooks": "A String", # Count of guaranteed looks. For CPD deals, buyer changes to guaranteed_looks will be ignored.
            "impressionCap": "A String", # The lifetime impression cap for CPM Sponsorship deals. Deal will stop serving when cap is reached.
            "minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.
            "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. Valid value is within range 0~100.
            "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.
          },
          "proposalRevision": "A String", # Output only. The revision number for the proposal and is the same value as proposal.proposal_revision. Each update to deal causes the proposal revision number to auto-increment. The buyer keeps track of the last revision number they know of and pass it in when making an update. If the head revision number on the server has since incremented, then an ABORTED error is returned during the update operation to let the buyer know that a subsequent update was made.
          "publisherProfile": "A String", # Immutable. Reference to the seller on the deal. Format: `buyers/{buyerAccountId}/publisherProfiles/{publisherProfileId}`
          "sellerTimeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Output only. Time zone of the seller used to mark the boundaries of a day for daypart targeting and CPD billing.
            "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
            "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
          },
          "targeting": { # Targeting represents different criteria that can be used to target deals or auction packages. For example, they can choose to target inventory only if the user is in the US. Multiple types of targeting are always applied as a logical AND, unless noted otherwise. # Specifies the subset of inventory targeted by the deal. Can be updated by the buyer before the deal is finalized.
            "daypartTargeting": { # Represents Daypart targeting. # Daypart targeting information.
              "dayParts": [ # The targeted weekdays and times
                { # Defines targeting for a period of time on a specific week day.
                  "dayOfWeek": "A String", # Day of week for the period.
                  "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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                    "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                    "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                    "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                    "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal 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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                    "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                    "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                    "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                    "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
                  },
                },
              ],
              "timeZoneType": "A String", # The time zone type of the day parts
            },
            "excludedSensitiveCategoryIds": [ # Output only. The sensitive content category label IDs excluded. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs.
              "A String",
            ],
            "geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. Geo criteria IDs to be included/excluded.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on a bid request. # Output only. Inventory sizes to be included/excluded.
              "excludedInventorySizes": [ # A list of inventory sizes to be excluded.
                { # Represents size of a single ad slot, or a creative.
                  "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                  "type": "A String", # The type of the ad slot size.
                  "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                },
              ],
              "targetedInventorySizes": [ # A list of inventory sizes to be included.
                { # Represents size of a single ad slot, or a creative.
                  "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                  "type": "A String", # The type of the ad slot size.
                  "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                },
              ],
            },
            "inventoryTypeTargeting": { # Targeting of the inventory types a bid request can originate from. # Output only. Inventory type targeting information.
              "inventoryTypes": [ # The list of targeted inventory types for the bid request.
                "A String",
              ],
            },
            "placementTargeting": { # Represents targeting about where the ads can appear, for example, certain sites or mobile applications. Different placement targeting types will be logically OR'ed. # Output only. Placement targeting information, for example, URL, mobile applications.
              "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 publishers own. Android App ID, for example, com.google.android.apps.maps, can be found in Google Play Store URL. iOS App ID (which is a number) can be found at the end of iTunes store URL. First party mobile applications is either included or excluded. # Publisher owned apps to be targeted or excluded by the publisher to display the ads in.
                  "excludedAppIds": [ # A list of application IDs to be excluded.
                    "A String",
                  ],
                  "targetedAppIds": [ # A list of application IDs to be included.
                    "A String",
                  ],
                },
              },
              "uriTargeting": { # Represents a list of targeted and excluded URLs (for example, google.com). For Private Auction Deals, URLs are either included or excluded. For Programmatic Guaranteed and Preferred Deals, this doesn't apply. # URLs to be included/excluded.
                "excludedUris": [ # A list of URLs to be excluded.
                  "A String",
                ],
                "targetedUris": [ # A list of URLs to be included.
                  "A String",
                ],
              },
            },
            "technologyTargeting": { # Represents targeting about various types of technology. # Output only. Technology targeting information, for example, operating system, device category.
              "deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device capabilities to be included/excluded.
                "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                  "A String",
                ],
                "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                  "A String",
                ],
              },
              "deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device categories to be included/excluded.
                "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                  "A String",
                ],
                "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                  "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 included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating systems to be included/excluded.
                  "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                    "A String",
                  ],
                  "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                    "A String",
                  ],
                },
                "operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating system versions to be included/excluded.
                  "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                    "A String",
                  ],
                  "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                    "A String",
                  ],
                },
              },
            },
            "userListTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Buyer user list targeting information. User lists can be uploaded using https://developers.google.com/authorized-buyers/rtb/bulk-uploader.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "verticalTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. The verticals included or excluded as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "videoTargeting": { # Represents targeting information about video. # Output only. Video targeting information.
              "excludedPositionTypes": [ # A list of video positions to be excluded. When this field is populated, the targeted_position_types field must be empty.
                "A String",
              ],
              "targetedPositionTypes": [ # A list of video positions to be included. When this field is populated, the excluded_position_types field must be empty.
                "A String",
              ],
            },
          },
          "updateTime": "A String", # Output only. The time when the deal was last updated.
        },
      ],
    }

`close()`

    Close httplib2 connections.

`get(name, x__xgafv=None)`

    Gets a deal given its name. The deal is returned at its head revision.

    Args:
      name: string, Required. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId} (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A deal represents a segment of inventory for displaying ads that contains the terms and targeting information that is used for serving as well as the deal stats and status. Note: A proposal may contain multiple deals.
      "billedBuyer": "A String", # Output only. When the client field is populated, this field refers to the buyer who creates and manages the client buyer and gets billed on behalf of the client buyer; when the buyer field is populated, this field is the same value as buyer; when the deal belongs to a media planner account, this field will be empty. Format : `buyers/{buyerAccountId}`
      "buyer": "A String", # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. Format: `buyers/{buyerAccountId}`
      "buyerPermissionType": "A String", # Output only. The buyer permission type of the deal.
      "client": "A String", # Output only. Refers to a Client. Format: `buyers/{buyerAccountId}/clients/{clientAccountid}`
      "createTime": "A String", # Output only. The time of the deal creation.
      "creativeRequirements": { # Message captures data about the creatives in the deal. # Output only. Metadata about the creatives of this deal.
        "creativeFormat": "A String", # Output only. The format of the creative, only applicable for programmatic guaranteed and preferred deals.
        "creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
        "creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
        "maxAdDurationMs": "A String", # Output only. The max duration of the video creative in milliseconds. only applicable for deals with video creatives.
        "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 the buyer.
        "skippableAdType": "A String", # Output only. Skippable video ads allow viewers to skip ads after 5 seconds. Only applicable for deals with video creatives.
      },
      "dealType": "A String", # Output only. Type of deal.
      "deliveryControl": { # Message contains details about how the deal will be paced. # Output only. Specifies the pacing set by the publisher.
        "companionDeliveryType": "A String", # Output only. Specifies roadblocking in a main companion lineitem.
        "creativeRotationType": "A String", # Output only. Specifies strategy to use for selecting a creative when multiple creatives of the same size are available.
        "deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
        "frequencyCap": [ # Output only. Specifies any frequency caps. Cannot be filtered within ListDealsRequest.
          { # Message contains details about publisher-set frequency caps of the delivery.
            "maxImpressions": 42, # The maximum number of impressions that can be served to a user within the specified time period.
            "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.
            "timeUnitsCount": 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.
          },
        ],
        "roadblockingType": "A String", # Output only. Specifies the roadblocking type in display creatives.
      },
      "description": "A String", # Output only. Free text description for the deal terms.
      "displayName": "A String", # Output only. The name of the deal. Maximum length of 255 unicode characters is allowed. Control characters are not allowed. Buyers cannot update this field. Note: Not to be confused with name, which is a unique identifier of the deal.
      "eligibleSeatIds": [ # Output only. If set, this field contains the list of DSP specific seat ids set by media planners that are eligible to transact on this deal. The seat ID is in the calling DSP's namespace.
        "A String",
      ],
      "estimatedGrossSpend": { # Represents an amount of money with its currency type. # Specified by buyers in request for proposal (RFP) to notify publisher the total estimated spend for the proposal. Publishers will receive this information and send back proposed deals accordingly.
        "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.
      },
      "flightEndTime": "A String", # Proposed flight end time of the deal. This will generally be stored in a granularity of a second. A value is not necessary for Private Auction deals.
      "flightStartTime": "A String", # Proposed flight start time of the deal. This will generally be stored in the granularity of one second since deal serving starts at seconds boundary. Any time specified with more granularity (for example, in milliseconds) will be truncated towards the start of time in seconds.
      "mediaPlanner": { # Describes a single Media Planner account. # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. This field represents a media planner (For example, agency or big advertiser).
        "accountId": "A String", # Output only. Account ID of the media planner.
      },
      "name": "A String", # Immutable. The unique identifier of the deal. Auto-generated by the server when a deal is created. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId}
      "preferredDealTerms": { # Pricing terms for Preferred Deals. # The terms for preferred deals.
        "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
      },
      "privateAuctionTerms": { # Pricing terms for Private Auctions. # The terms for private auction deals.
        "floorPrice": { # Represents a price and a pricing type for a deal. # The minimum price buyer has to bid to compete in the private auction.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
        "openAuctionAllowed": True or False, # Output only. True if open auction buyers are allowed to compete with invited buyers in this private auction.
      },
      "programmaticGuaranteedTerms": { # Pricing terms for Programmatic Guaranteed Deals. # The terms for programmatic guaranteed deals.
        "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
        "guaranteedLooks": "A String", # Count of guaranteed looks. For CPD deals, buyer changes to guaranteed_looks will be ignored.
        "impressionCap": "A String", # The lifetime impression cap for CPM Sponsorship deals. Deal will stop serving when cap is reached.
        "minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.
        "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. Valid value is within range 0~100.
        "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.
      },
      "proposalRevision": "A String", # Output only. The revision number for the proposal and is the same value as proposal.proposal_revision. Each update to deal causes the proposal revision number to auto-increment. The buyer keeps track of the last revision number they know of and pass it in when making an update. If the head revision number on the server has since incremented, then an ABORTED error is returned during the update operation to let the buyer know that a subsequent update was made.
      "publisherProfile": "A String", # Immutable. Reference to the seller on the deal. Format: `buyers/{buyerAccountId}/publisherProfiles/{publisherProfileId}`
      "sellerTimeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Output only. Time zone of the seller used to mark the boundaries of a day for daypart targeting and CPD billing.
        "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
        "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
      },
      "targeting": { # Targeting represents different criteria that can be used to target deals or auction packages. For example, they can choose to target inventory only if the user is in the US. Multiple types of targeting are always applied as a logical AND, unless noted otherwise. # Specifies the subset of inventory targeted by the deal. Can be updated by the buyer before the deal is finalized.
        "daypartTargeting": { # Represents Daypart targeting. # Daypart targeting information.
          "dayParts": [ # The targeted weekdays and times
            { # Defines targeting for a period of time on a specific week day.
              "dayOfWeek": "A String", # Day of week for the period.
              "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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal 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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
              },
            },
          ],
          "timeZoneType": "A String", # The time zone type of the day parts
        },
        "excludedSensitiveCategoryIds": [ # Output only. The sensitive content category label IDs excluded. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs.
          "A String",
        ],
        "geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. Geo criteria IDs to be included/excluded.
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on a bid request. # Output only. Inventory sizes to be included/excluded.
          "excludedInventorySizes": [ # A list of inventory sizes to be excluded.
            { # Represents size of a single ad slot, or a creative.
              "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
              "type": "A String", # The type of the ad slot size.
              "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
            },
          ],
          "targetedInventorySizes": [ # A list of inventory sizes to be included.
            { # Represents size of a single ad slot, or a creative.
              "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
              "type": "A String", # The type of the ad slot size.
              "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
            },
          ],
        },
        "inventoryTypeTargeting": { # Targeting of the inventory types a bid request can originate from. # Output only. Inventory type targeting information.
          "inventoryTypes": [ # The list of targeted inventory types for the bid request.
            "A String",
          ],
        },
        "placementTargeting": { # Represents targeting about where the ads can appear, for example, certain sites or mobile applications. Different placement targeting types will be logically OR'ed. # Output only. Placement targeting information, for example, URL, mobile applications.
          "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 publishers own. Android App ID, for example, com.google.android.apps.maps, can be found in Google Play Store URL. iOS App ID (which is a number) can be found at the end of iTunes store URL. First party mobile applications is either included or excluded. # Publisher owned apps to be targeted or excluded by the publisher to display the ads in.
              "excludedAppIds": [ # A list of application IDs to be excluded.
                "A String",
              ],
              "targetedAppIds": [ # A list of application IDs to be included.
                "A String",
              ],
            },
          },
          "uriTargeting": { # Represents a list of targeted and excluded URLs (for example, google.com). For Private Auction Deals, URLs are either included or excluded. For Programmatic Guaranteed and Preferred Deals, this doesn't apply. # URLs to be included/excluded.
            "excludedUris": [ # A list of URLs to be excluded.
              "A String",
            ],
            "targetedUris": [ # A list of URLs to be included.
              "A String",
            ],
          },
        },
        "technologyTargeting": { # Represents targeting about various types of technology. # Output only. Technology targeting information, for example, operating system, device category.
          "deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device capabilities to be included/excluded.
            "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
              "A String",
            ],
            "targetedCriteriaIds": [ # A list of numeric IDs to be included.
              "A String",
            ],
          },
          "deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device categories to be included/excluded.
            "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
              "A String",
            ],
            "targetedCriteriaIds": [ # A list of numeric IDs to be included.
              "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 included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating systems to be included/excluded.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating system versions to be included/excluded.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
          },
        },
        "userListTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Buyer user list targeting information. User lists can be uploaded using https://developers.google.com/authorized-buyers/rtb/bulk-uploader.
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "verticalTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. The verticals included or excluded as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "videoTargeting": { # Represents targeting information about video. # Output only. Video targeting information.
          "excludedPositionTypes": [ # A list of video positions to be excluded. When this field is populated, the targeted_position_types field must be empty.
            "A String",
          ],
          "targetedPositionTypes": [ # A list of video positions to be included. When this field is populated, the excluded_position_types field must be empty.
            "A String",
          ],
        },
      },
      "updateTime": "A String", # Output only. The time when the deal was last updated.
    }

`list(parent, pageSize=None, pageToken=None, x__xgafv=None)`

    Lists all deals in a proposal. To retrieve only the finalized revision deals regardless if a deal is being renegotiated, see the FinalizedDeals resource.

    Args:
      parent: string, Required. The name of the proposal containing the deals to retrieve. Format: buyers/{accountId}/proposals/{proposalId} (required)
      pageSize: integer, Requested page size. The server may return fewer results than requested. If requested more than 500, the server will return 500 results per page. If unspecified, the server will pick a default page size of 100.
      pageToken: string, The page token as returned from ListDealsResponse.
      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 deals in a proposal.
      "deals": [ # The list of deals.
        { # A deal represents a segment of inventory for displaying ads that contains the terms and targeting information that is used for serving as well as the deal stats and status. Note: A proposal may contain multiple deals.
          "billedBuyer": "A String", # Output only. When the client field is populated, this field refers to the buyer who creates and manages the client buyer and gets billed on behalf of the client buyer; when the buyer field is populated, this field is the same value as buyer; when the deal belongs to a media planner account, this field will be empty. Format : `buyers/{buyerAccountId}`
          "buyer": "A String", # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. Format: `buyers/{buyerAccountId}`
          "buyerPermissionType": "A String", # Output only. The buyer permission type of the deal.
          "client": "A String", # Output only. Refers to a Client. Format: `buyers/{buyerAccountId}/clients/{clientAccountid}`
          "createTime": "A String", # Output only. The time of the deal creation.
          "creativeRequirements": { # Message captures data about the creatives in the deal. # Output only. Metadata about the creatives of this deal.
            "creativeFormat": "A String", # Output only. The format of the creative, only applicable for programmatic guaranteed and preferred deals.
            "creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
            "creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
            "maxAdDurationMs": "A String", # Output only. The max duration of the video creative in milliseconds. only applicable for deals with video creatives.
            "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 the buyer.
            "skippableAdType": "A String", # Output only. Skippable video ads allow viewers to skip ads after 5 seconds. Only applicable for deals with video creatives.
          },
          "dealType": "A String", # Output only. Type of deal.
          "deliveryControl": { # Message contains details about how the deal will be paced. # Output only. Specifies the pacing set by the publisher.
            "companionDeliveryType": "A String", # Output only. Specifies roadblocking in a main companion lineitem.
            "creativeRotationType": "A String", # Output only. Specifies strategy to use for selecting a creative when multiple creatives of the same size are available.
            "deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
            "frequencyCap": [ # Output only. Specifies any frequency caps. Cannot be filtered within ListDealsRequest.
              { # Message contains details about publisher-set frequency caps of the delivery.
                "maxImpressions": 42, # The maximum number of impressions that can be served to a user within the specified time period.
                "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.
                "timeUnitsCount": 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.
              },
            ],
            "roadblockingType": "A String", # Output only. Specifies the roadblocking type in display creatives.
          },
          "description": "A String", # Output only. Free text description for the deal terms.
          "displayName": "A String", # Output only. The name of the deal. Maximum length of 255 unicode characters is allowed. Control characters are not allowed. Buyers cannot update this field. Note: Not to be confused with name, which is a unique identifier of the deal.
          "eligibleSeatIds": [ # Output only. If set, this field contains the list of DSP specific seat ids set by media planners that are eligible to transact on this deal. The seat ID is in the calling DSP's namespace.
            "A String",
          ],
          "estimatedGrossSpend": { # Represents an amount of money with its currency type. # Specified by buyers in request for proposal (RFP) to notify publisher the total estimated spend for the proposal. Publishers will receive this information and send back proposed deals accordingly.
            "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.
          },
          "flightEndTime": "A String", # Proposed flight end time of the deal. This will generally be stored in a granularity of a second. A value is not necessary for Private Auction deals.
          "flightStartTime": "A String", # Proposed flight start time of the deal. This will generally be stored in the granularity of one second since deal serving starts at seconds boundary. Any time specified with more granularity (for example, in milliseconds) will be truncated towards the start of time in seconds.
          "mediaPlanner": { # Describes a single Media Planner account. # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. This field represents a media planner (For example, agency or big advertiser).
            "accountId": "A String", # Output only. Account ID of the media planner.
          },
          "name": "A String", # Immutable. The unique identifier of the deal. Auto-generated by the server when a deal is created. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId}
          "preferredDealTerms": { # Pricing terms for Preferred Deals. # The terms for preferred deals.
            "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
              "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.
              },
              "type": "A String", # The pricing type for the deal.
            },
          },
          "privateAuctionTerms": { # Pricing terms for Private Auctions. # The terms for private auction deals.
            "floorPrice": { # Represents a price and a pricing type for a deal. # The minimum price buyer has to bid to compete in the private auction.
              "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.
              },
              "type": "A String", # The pricing type for the deal.
            },
            "openAuctionAllowed": True or False, # Output only. True if open auction buyers are allowed to compete with invited buyers in this private auction.
          },
          "programmaticGuaranteedTerms": { # Pricing terms for Programmatic Guaranteed Deals. # The terms for programmatic guaranteed deals.
            "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
              "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.
              },
              "type": "A String", # The pricing type for the deal.
            },
            "guaranteedLooks": "A String", # Count of guaranteed looks. For CPD deals, buyer changes to guaranteed_looks will be ignored.
            "impressionCap": "A String", # The lifetime impression cap for CPM Sponsorship deals. Deal will stop serving when cap is reached.
            "minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.
            "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. Valid value is within range 0~100.
            "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.
          },
          "proposalRevision": "A String", # Output only. The revision number for the proposal and is the same value as proposal.proposal_revision. Each update to deal causes the proposal revision number to auto-increment. The buyer keeps track of the last revision number they know of and pass it in when making an update. If the head revision number on the server has since incremented, then an ABORTED error is returned during the update operation to let the buyer know that a subsequent update was made.
          "publisherProfile": "A String", # Immutable. Reference to the seller on the deal. Format: `buyers/{buyerAccountId}/publisherProfiles/{publisherProfileId}`
          "sellerTimeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Output only. Time zone of the seller used to mark the boundaries of a day for daypart targeting and CPD billing.
            "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
            "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
          },
          "targeting": { # Targeting represents different criteria that can be used to target deals or auction packages. For example, they can choose to target inventory only if the user is in the US. Multiple types of targeting are always applied as a logical AND, unless noted otherwise. # Specifies the subset of inventory targeted by the deal. Can be updated by the buyer before the deal is finalized.
            "daypartTargeting": { # Represents Daypart targeting. # Daypart targeting information.
              "dayParts": [ # The targeted weekdays and times
                { # Defines targeting for a period of time on a specific week day.
                  "dayOfWeek": "A String", # Day of week for the period.
                  "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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                    "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                    "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                    "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                    "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal 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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                    "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                    "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                    "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                    "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
                  },
                },
              ],
              "timeZoneType": "A String", # The time zone type of the day parts
            },
            "excludedSensitiveCategoryIds": [ # Output only. The sensitive content category label IDs excluded. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs.
              "A String",
            ],
            "geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. Geo criteria IDs to be included/excluded.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on a bid request. # Output only. Inventory sizes to be included/excluded.
              "excludedInventorySizes": [ # A list of inventory sizes to be excluded.
                { # Represents size of a single ad slot, or a creative.
                  "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                  "type": "A String", # The type of the ad slot size.
                  "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                },
              ],
              "targetedInventorySizes": [ # A list of inventory sizes to be included.
                { # Represents size of a single ad slot, or a creative.
                  "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                  "type": "A String", # The type of the ad slot size.
                  "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
                },
              ],
            },
            "inventoryTypeTargeting": { # Targeting of the inventory types a bid request can originate from. # Output only. Inventory type targeting information.
              "inventoryTypes": [ # The list of targeted inventory types for the bid request.
                "A String",
              ],
            },
            "placementTargeting": { # Represents targeting about where the ads can appear, for example, certain sites or mobile applications. Different placement targeting types will be logically OR'ed. # Output only. Placement targeting information, for example, URL, mobile applications.
              "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 publishers own. Android App ID, for example, com.google.android.apps.maps, can be found in Google Play Store URL. iOS App ID (which is a number) can be found at the end of iTunes store URL. First party mobile applications is either included or excluded. # Publisher owned apps to be targeted or excluded by the publisher to display the ads in.
                  "excludedAppIds": [ # A list of application IDs to be excluded.
                    "A String",
                  ],
                  "targetedAppIds": [ # A list of application IDs to be included.
                    "A String",
                  ],
                },
              },
              "uriTargeting": { # Represents a list of targeted and excluded URLs (for example, google.com). For Private Auction Deals, URLs are either included or excluded. For Programmatic Guaranteed and Preferred Deals, this doesn't apply. # URLs to be included/excluded.
                "excludedUris": [ # A list of URLs to be excluded.
                  "A String",
                ],
                "targetedUris": [ # A list of URLs to be included.
                  "A String",
                ],
              },
            },
            "technologyTargeting": { # Represents targeting about various types of technology. # Output only. Technology targeting information, for example, operating system, device category.
              "deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device capabilities to be included/excluded.
                "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                  "A String",
                ],
                "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                  "A String",
                ],
              },
              "deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device categories to be included/excluded.
                "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                  "A String",
                ],
                "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                  "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 included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating systems to be included/excluded.
                  "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                    "A String",
                  ],
                  "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                    "A String",
                  ],
                },
                "operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating system versions to be included/excluded.
                  "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                    "A String",
                  ],
                  "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                    "A String",
                  ],
                },
              },
            },
            "userListTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Buyer user list targeting information. User lists can be uploaded using https://developers.google.com/authorized-buyers/rtb/bulk-uploader.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "verticalTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. The verticals included or excluded as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "videoTargeting": { # Represents targeting information about video. # Output only. Video targeting information.
              "excludedPositionTypes": [ # A list of video positions to be excluded. When this field is populated, the targeted_position_types field must be empty.
                "A String",
              ],
              "targetedPositionTypes": [ # A list of video positions to be included. When this field is populated, the excluded_position_types field must be empty.
                "A String",
              ],
            },
          },
          "updateTime": "A String", # Output only. The time when the deal was last updated.
        },
      ],
      "nextPageToken": "A String", # Token to fetch the next page of results.
    }

`list_next()`

    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.

`patch(name, body=None, updateMask=None, x__xgafv=None)`

    Updates the given deal at the buyer known revision number. If the server revision has advanced since the passed-in proposal.proposal_revision an ABORTED error message will be returned. The revision number is incremented by the server whenever the proposal or its constituent deals are updated. Note: The revision number is kept at a proposal level. The buyer of the API is expected to keep track of the revision number after the last update operation and send it in as part of the next update request. This way, if there are further changes on the server (for example, seller making new updates), then the server can detect conflicts and reject the proposed changes.

    Args:
      name: string, Immutable. The unique identifier of the deal. Auto-generated by the server when a deal is created. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId} (required)
      body: object, The request body.
        The object takes the form of:

    { # A deal represents a segment of inventory for displaying ads that contains the terms and targeting information that is used for serving as well as the deal stats and status. Note: A proposal may contain multiple deals.
      "billedBuyer": "A String", # Output only. When the client field is populated, this field refers to the buyer who creates and manages the client buyer and gets billed on behalf of the client buyer; when the buyer field is populated, this field is the same value as buyer; when the deal belongs to a media planner account, this field will be empty. Format : `buyers/{buyerAccountId}`
      "buyer": "A String", # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. Format: `buyers/{buyerAccountId}`
      "buyerPermissionType": "A String", # Output only. The buyer permission type of the deal.
      "client": "A String", # Output only. Refers to a Client. Format: `buyers/{buyerAccountId}/clients/{clientAccountid}`
      "createTime": "A String", # Output only. The time of the deal creation.
      "creativeRequirements": { # Message captures data about the creatives in the deal. # Output only. Metadata about the creatives of this deal.
        "creativeFormat": "A String", # Output only. The format of the creative, only applicable for programmatic guaranteed and preferred deals.
        "creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
        "creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
        "maxAdDurationMs": "A String", # Output only. The max duration of the video creative in milliseconds. only applicable for deals with video creatives.
        "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 the buyer.
        "skippableAdType": "A String", # Output only. Skippable video ads allow viewers to skip ads after 5 seconds. Only applicable for deals with video creatives.
      },
      "dealType": "A String", # Output only. Type of deal.
      "deliveryControl": { # Message contains details about how the deal will be paced. # Output only. Specifies the pacing set by the publisher.
        "companionDeliveryType": "A String", # Output only. Specifies roadblocking in a main companion lineitem.
        "creativeRotationType": "A String", # Output only. Specifies strategy to use for selecting a creative when multiple creatives of the same size are available.
        "deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
        "frequencyCap": [ # Output only. Specifies any frequency caps. Cannot be filtered within ListDealsRequest.
          { # Message contains details about publisher-set frequency caps of the delivery.
            "maxImpressions": 42, # The maximum number of impressions that can be served to a user within the specified time period.
            "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.
            "timeUnitsCount": 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.
          },
        ],
        "roadblockingType": "A String", # Output only. Specifies the roadblocking type in display creatives.
      },
      "description": "A String", # Output only. Free text description for the deal terms.
      "displayName": "A String", # Output only. The name of the deal. Maximum length of 255 unicode characters is allowed. Control characters are not allowed. Buyers cannot update this field. Note: Not to be confused with name, which is a unique identifier of the deal.
      "eligibleSeatIds": [ # Output only. If set, this field contains the list of DSP specific seat ids set by media planners that are eligible to transact on this deal. The seat ID is in the calling DSP's namespace.
        "A String",
      ],
      "estimatedGrossSpend": { # Represents an amount of money with its currency type. # Specified by buyers in request for proposal (RFP) to notify publisher the total estimated spend for the proposal. Publishers will receive this information and send back proposed deals accordingly.
        "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.
      },
      "flightEndTime": "A String", # Proposed flight end time of the deal. This will generally be stored in a granularity of a second. A value is not necessary for Private Auction deals.
      "flightStartTime": "A String", # Proposed flight start time of the deal. This will generally be stored in the granularity of one second since deal serving starts at seconds boundary. Any time specified with more granularity (for example, in milliseconds) will be truncated towards the start of time in seconds.
      "mediaPlanner": { # Describes a single Media Planner account. # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. This field represents a media planner (For example, agency or big advertiser).
        "accountId": "A String", # Output only. Account ID of the media planner.
      },
      "name": "A String", # Immutable. The unique identifier of the deal. Auto-generated by the server when a deal is created. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId}
      "preferredDealTerms": { # Pricing terms for Preferred Deals. # The terms for preferred deals.
        "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
      },
      "privateAuctionTerms": { # Pricing terms for Private Auctions. # The terms for private auction deals.
        "floorPrice": { # Represents a price and a pricing type for a deal. # The minimum price buyer has to bid to compete in the private auction.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
        "openAuctionAllowed": True or False, # Output only. True if open auction buyers are allowed to compete with invited buyers in this private auction.
      },
      "programmaticGuaranteedTerms": { # Pricing terms for Programmatic Guaranteed Deals. # The terms for programmatic guaranteed deals.
        "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
        "guaranteedLooks": "A String", # Count of guaranteed looks. For CPD deals, buyer changes to guaranteed_looks will be ignored.
        "impressionCap": "A String", # The lifetime impression cap for CPM Sponsorship deals. Deal will stop serving when cap is reached.
        "minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.
        "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. Valid value is within range 0~100.
        "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.
      },
      "proposalRevision": "A String", # Output only. The revision number for the proposal and is the same value as proposal.proposal_revision. Each update to deal causes the proposal revision number to auto-increment. The buyer keeps track of the last revision number they know of and pass it in when making an update. If the head revision number on the server has since incremented, then an ABORTED error is returned during the update operation to let the buyer know that a subsequent update was made.
      "publisherProfile": "A String", # Immutable. Reference to the seller on the deal. Format: `buyers/{buyerAccountId}/publisherProfiles/{publisherProfileId}`
      "sellerTimeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Output only. Time zone of the seller used to mark the boundaries of a day for daypart targeting and CPD billing.
        "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
        "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
      },
      "targeting": { # Targeting represents different criteria that can be used to target deals or auction packages. For example, they can choose to target inventory only if the user is in the US. Multiple types of targeting are always applied as a logical AND, unless noted otherwise. # Specifies the subset of inventory targeted by the deal. Can be updated by the buyer before the deal is finalized.
        "daypartTargeting": { # Represents Daypart targeting. # Daypart targeting information.
          "dayParts": [ # The targeted weekdays and times
            { # Defines targeting for a period of time on a specific week day.
              "dayOfWeek": "A String", # Day of week for the period.
              "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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal 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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
              },
            },
          ],
          "timeZoneType": "A String", # The time zone type of the day parts
        },
        "excludedSensitiveCategoryIds": [ # Output only. The sensitive content category label IDs excluded. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs.
          "A String",
        ],
        "geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. Geo criteria IDs to be included/excluded.
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on a bid request. # Output only. Inventory sizes to be included/excluded.
          "excludedInventorySizes": [ # A list of inventory sizes to be excluded.
            { # Represents size of a single ad slot, or a creative.
              "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
              "type": "A String", # The type of the ad slot size.
              "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
            },
          ],
          "targetedInventorySizes": [ # A list of inventory sizes to be included.
            { # Represents size of a single ad slot, or a creative.
              "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
              "type": "A String", # The type of the ad slot size.
              "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
            },
          ],
        },
        "inventoryTypeTargeting": { # Targeting of the inventory types a bid request can originate from. # Output only. Inventory type targeting information.
          "inventoryTypes": [ # The list of targeted inventory types for the bid request.
            "A String",
          ],
        },
        "placementTargeting": { # Represents targeting about where the ads can appear, for example, certain sites or mobile applications. Different placement targeting types will be logically OR'ed. # Output only. Placement targeting information, for example, URL, mobile applications.
          "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 publishers own. Android App ID, for example, com.google.android.apps.maps, can be found in Google Play Store URL. iOS App ID (which is a number) can be found at the end of iTunes store URL. First party mobile applications is either included or excluded. # Publisher owned apps to be targeted or excluded by the publisher to display the ads in.
              "excludedAppIds": [ # A list of application IDs to be excluded.
                "A String",
              ],
              "targetedAppIds": [ # A list of application IDs to be included.
                "A String",
              ],
            },
          },
          "uriTargeting": { # Represents a list of targeted and excluded URLs (for example, google.com). For Private Auction Deals, URLs are either included or excluded. For Programmatic Guaranteed and Preferred Deals, this doesn't apply. # URLs to be included/excluded.
            "excludedUris": [ # A list of URLs to be excluded.
              "A String",
            ],
            "targetedUris": [ # A list of URLs to be included.
              "A String",
            ],
          },
        },
        "technologyTargeting": { # Represents targeting about various types of technology. # Output only. Technology targeting information, for example, operating system, device category.
          "deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device capabilities to be included/excluded.
            "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
              "A String",
            ],
            "targetedCriteriaIds": [ # A list of numeric IDs to be included.
              "A String",
            ],
          },
          "deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device categories to be included/excluded.
            "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
              "A String",
            ],
            "targetedCriteriaIds": [ # A list of numeric IDs to be included.
              "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 included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating systems to be included/excluded.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating system versions to be included/excluded.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
          },
        },
        "userListTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Buyer user list targeting information. User lists can be uploaded using https://developers.google.com/authorized-buyers/rtb/bulk-uploader.
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "verticalTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. The verticals included or excluded as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "videoTargeting": { # Represents targeting information about video. # Output only. Video targeting information.
          "excludedPositionTypes": [ # A list of video positions to be excluded. When this field is populated, the targeted_position_types field must be empty.
            "A String",
          ],
          "targetedPositionTypes": [ # A list of video positions to be included. When this field is populated, the excluded_position_types field must be empty.
            "A String",
          ],
        },
      },
      "updateTime": "A String", # Output only. The time when the deal was last updated.
    }

      updateMask: string, List of fields to be updated. If empty or unspecified, the service will update all fields populated in the update request excluding the output only fields and primitive fields with default value. Note that explicit field mask is required in order to reset a primitive field back to its default value, for example, false for boolean fields, 0 for integer fields. A special field mask consisting of a single path "*" can be used to indicate full replacement(the equivalent of PUT method), updatable fields unset or unspecified in the input will be cleared or set to default value. Output only fields will be ignored regardless of the value of updateMask.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A deal represents a segment of inventory for displaying ads that contains the terms and targeting information that is used for serving as well as the deal stats and status. Note: A proposal may contain multiple deals.
      "billedBuyer": "A String", # Output only. When the client field is populated, this field refers to the buyer who creates and manages the client buyer and gets billed on behalf of the client buyer; when the buyer field is populated, this field is the same value as buyer; when the deal belongs to a media planner account, this field will be empty. Format : `buyers/{buyerAccountId}`
      "buyer": "A String", # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. Format: `buyers/{buyerAccountId}`
      "buyerPermissionType": "A String", # Output only. The buyer permission type of the deal.
      "client": "A String", # Output only. Refers to a Client. Format: `buyers/{buyerAccountId}/clients/{clientAccountid}`
      "createTime": "A String", # Output only. The time of the deal creation.
      "creativeRequirements": { # Message captures data about the creatives in the deal. # Output only. Metadata about the creatives of this deal.
        "creativeFormat": "A String", # Output only. The format of the creative, only applicable for programmatic guaranteed and preferred deals.
        "creativePreApprovalPolicy": "A String", # Output only. Specifies the creative pre-approval policy.
        "creativeSafeFrameCompatibility": "A String", # Output only. Specifies whether the creative is safeFrame compatible.
        "maxAdDurationMs": "A String", # Output only. The max duration of the video creative in milliseconds. only applicable for deals with video creatives.
        "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 the buyer.
        "skippableAdType": "A String", # Output only. Skippable video ads allow viewers to skip ads after 5 seconds. Only applicable for deals with video creatives.
      },
      "dealType": "A String", # Output only. Type of deal.
      "deliveryControl": { # Message contains details about how the deal will be paced. # Output only. Specifies the pacing set by the publisher.
        "companionDeliveryType": "A String", # Output only. Specifies roadblocking in a main companion lineitem.
        "creativeRotationType": "A String", # Output only. Specifies strategy to use for selecting a creative when multiple creatives of the same size are available.
        "deliveryRateType": "A String", # Output only. Specifies how the impression delivery will be paced.
        "frequencyCap": [ # Output only. Specifies any frequency caps. Cannot be filtered within ListDealsRequest.
          { # Message contains details about publisher-set frequency caps of the delivery.
            "maxImpressions": 42, # The maximum number of impressions that can be served to a user within the specified time period.
            "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.
            "timeUnitsCount": 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.
          },
        ],
        "roadblockingType": "A String", # Output only. Specifies the roadblocking type in display creatives.
      },
      "description": "A String", # Output only. Free text description for the deal terms.
      "displayName": "A String", # Output only. The name of the deal. Maximum length of 255 unicode characters is allowed. Control characters are not allowed. Buyers cannot update this field. Note: Not to be confused with name, which is a unique identifier of the deal.
      "eligibleSeatIds": [ # Output only. If set, this field contains the list of DSP specific seat ids set by media planners that are eligible to transact on this deal. The seat ID is in the calling DSP's namespace.
        "A String",
      ],
      "estimatedGrossSpend": { # Represents an amount of money with its currency type. # Specified by buyers in request for proposal (RFP) to notify publisher the total estimated spend for the proposal. Publishers will receive this information and send back proposed deals accordingly.
        "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.
      },
      "flightEndTime": "A String", # Proposed flight end time of the deal. This will generally be stored in a granularity of a second. A value is not necessary for Private Auction deals.
      "flightStartTime": "A String", # Proposed flight start time of the deal. This will generally be stored in the granularity of one second since deal serving starts at seconds boundary. Any time specified with more granularity (for example, in milliseconds) will be truncated towards the start of time in seconds.
      "mediaPlanner": { # Describes a single Media Planner account. # Output only. Refers to a buyer in Real-time Bidding API's Buyer resource. This field represents a media planner (For example, agency or big advertiser).
        "accountId": "A String", # Output only. Account ID of the media planner.
      },
      "name": "A String", # Immutable. The unique identifier of the deal. Auto-generated by the server when a deal is created. Format: buyers/{accountId}/proposals/{proposalId}/deals/{dealId}
      "preferredDealTerms": { # Pricing terms for Preferred Deals. # The terms for preferred deals.
        "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
      },
      "privateAuctionTerms": { # Pricing terms for Private Auctions. # The terms for private auction deals.
        "floorPrice": { # Represents a price and a pricing type for a deal. # The minimum price buyer has to bid to compete in the private auction.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
        "openAuctionAllowed": True or False, # Output only. True if open auction buyers are allowed to compete with invited buyers in this private auction.
      },
      "programmaticGuaranteedTerms": { # Pricing terms for Programmatic Guaranteed Deals. # The terms for programmatic guaranteed deals.
        "fixedPrice": { # Represents a price and a pricing type for a deal. # Fixed price for the deal.
          "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.
          },
          "type": "A String", # The pricing type for the deal.
        },
        "guaranteedLooks": "A String", # Count of guaranteed looks. For CPD deals, buyer changes to guaranteed_looks will be ignored.
        "impressionCap": "A String", # The lifetime impression cap for CPM Sponsorship deals. Deal will stop serving when cap is reached.
        "minimumDailyLooks": "A String", # Daily minimum looks for CPD deal types. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.
        "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. Valid value is within range 0~100.
        "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.
      },
      "proposalRevision": "A String", # Output only. The revision number for the proposal and is the same value as proposal.proposal_revision. Each update to deal causes the proposal revision number to auto-increment. The buyer keeps track of the last revision number they know of and pass it in when making an update. If the head revision number on the server has since incremented, then an ABORTED error is returned during the update operation to let the buyer know that a subsequent update was made.
      "publisherProfile": "A String", # Immutable. Reference to the seller on the deal. Format: `buyers/{buyerAccountId}/publisherProfiles/{publisherProfileId}`
      "sellerTimeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Output only. Time zone of the seller used to mark the boundaries of a day for daypart targeting and CPD billing.
        "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
        "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
      },
      "targeting": { # Targeting represents different criteria that can be used to target deals or auction packages. For example, they can choose to target inventory only if the user is in the US. Multiple types of targeting are always applied as a logical AND, unless noted otherwise. # Specifies the subset of inventory targeted by the deal. Can be updated by the buyer before the deal is finalized.
        "daypartTargeting": { # Represents Daypart targeting. # Daypart targeting information.
          "dayParts": [ # The targeted weekdays and times
            { # Defines targeting for a period of time on a specific week day.
              "dayOfWeek": "A String", # Day of week for the period.
              "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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal 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`. # Hours in 24 hour time between 0 and 24, inclusive. Note: 24 is logically equivalent to 0, but is supported since in some cases there may need to be differentiation made between midnight on one day and midnight on the next day. Accepted values for minutes are [0, 15, 30, 45]. 0 is the only acceptable minute value for hour 24. Seconds and nanos are ignored.
                "hours": 42, # Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
                "minutes": 42, # Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
                "nanos": 42, # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
                "seconds": 42, # Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
              },
            },
          ],
          "timeZoneType": "A String", # The time zone type of the day parts
        },
        "excludedSensitiveCategoryIds": [ # Output only. The sensitive content category label IDs excluded. Refer to this file https://storage.googleapis.com/adx-rtb-dictionaries/content-labels.txt for category IDs.
          "A String",
        ],
        "geoTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. Geo criteria IDs to be included/excluded.
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "inventorySizeTargeting": { # Represents the size of an ad unit that can be targeted on a bid request. # Output only. Inventory sizes to be included/excluded.
          "excludedInventorySizes": [ # A list of inventory sizes to be excluded.
            { # Represents size of a single ad slot, or a creative.
              "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
              "type": "A String", # The type of the ad slot size.
              "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
            },
          ],
          "targetedInventorySizes": [ # A list of inventory sizes to be included.
            { # Represents size of a single ad slot, or a creative.
              "height": "A String", # The height of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
              "type": "A String", # The type of the ad slot size.
              "width": "A String", # The width of the ad slot in pixels. This field will be present only when size type is `PIXEL`.
            },
          ],
        },
        "inventoryTypeTargeting": { # Targeting of the inventory types a bid request can originate from. # Output only. Inventory type targeting information.
          "inventoryTypes": [ # The list of targeted inventory types for the bid request.
            "A String",
          ],
        },
        "placementTargeting": { # Represents targeting about where the ads can appear, for example, certain sites or mobile applications. Different placement targeting types will be logically OR'ed. # Output only. Placement targeting information, for example, URL, mobile applications.
          "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 publishers own. Android App ID, for example, com.google.android.apps.maps, can be found in Google Play Store URL. iOS App ID (which is a number) can be found at the end of iTunes store URL. First party mobile applications is either included or excluded. # Publisher owned apps to be targeted or excluded by the publisher to display the ads in.
              "excludedAppIds": [ # A list of application IDs to be excluded.
                "A String",
              ],
              "targetedAppIds": [ # A list of application IDs to be included.
                "A String",
              ],
            },
          },
          "uriTargeting": { # Represents a list of targeted and excluded URLs (for example, google.com). For Private Auction Deals, URLs are either included or excluded. For Programmatic Guaranteed and Preferred Deals, this doesn't apply. # URLs to be included/excluded.
            "excludedUris": [ # A list of URLs to be excluded.
              "A String",
            ],
            "targetedUris": [ # A list of URLs to be included.
              "A String",
            ],
          },
        },
        "technologyTargeting": { # Represents targeting about various types of technology. # Output only. Technology targeting information, for example, operating system, device category.
          "deviceCapabilityTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device capabilities to be included/excluded.
            "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
              "A String",
            ],
            "targetedCriteriaIds": [ # A list of numeric IDs to be included.
              "A String",
            ],
          },
          "deviceCategoryTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of device categories to be included/excluded.
            "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
              "A String",
            ],
            "targetedCriteriaIds": [ # A list of numeric IDs to be included.
              "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 included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating systems to be included/excluded.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
            "operatingSystemVersionCriteria": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # IDs of operating system versions to be included/excluded.
              "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
                "A String",
              ],
              "targetedCriteriaIds": [ # A list of numeric IDs to be included.
                "A String",
              ],
            },
          },
        },
        "userListTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Buyer user list targeting information. User lists can be uploaded using https://developers.google.com/authorized-buyers/rtb/bulk-uploader.
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "verticalTargeting": { # Generic targeting used for targeting dimensions that contains a list of included and excluded numeric IDs. This cannot be filtered using list filter syntax. # Output only. The verticals included or excluded as defined in https://developers.google.com/authorized-buyers/rtb/downloads/publisher-verticals
          "excludedCriteriaIds": [ # A list of numeric IDs to be excluded.
            "A String",
          ],
          "targetedCriteriaIds": [ # A list of numeric IDs to be included.
            "A String",
          ],
        },
        "videoTargeting": { # Represents targeting information about video. # Output only. Video targeting information.
          "excludedPositionTypes": [ # A list of video positions to be excluded. When this field is populated, the targeted_position_types field must be empty.
            "A String",
          ],
          "targetedPositionTypes": [ # A list of video positions to be included. When this field is populated, the excluded_position_types field must be empty.
            "A String",
          ],
        },
      },
      "updateTime": "A String", # Output only. The time when the deal was last updated.
    }