# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

require 'date'
require 'google/apis/core/base_service'
require 'google/apis/core/json_representation'
require 'google/apis/core/hashable'
require 'google/apis/errors'

module Google
  module Apis
    module DisplayvideoV1
      
      class ActivateManualTriggerRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ActiveViewVideoViewabilityMetricConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Adloox
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Advertiser
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AdvertiserAdServerConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AdvertiserCreativeConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AdvertiserDataAccessConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AdvertiserGeneralConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AdvertiserSdfConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AdvertiserTargetingConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AgeRangeAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AgeRangeTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AppAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AppCategoryAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AppCategoryTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Asset
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AssetAssociation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AssignedInventorySource
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AssignedLocation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AssignedTargetingOption
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AssignedUserRole
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AudienceGroupAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AudioContentTypeAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AudioContentTypeTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AudioVideoOffset
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AuditAdvertiserResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AuthorizedSellerStatusAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class AuthorizedSellerStatusTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BiddingStrategy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BrowserAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BrowserTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BudgetSummary
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditAdvertiserAssignedTargetingOptionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditAdvertiserAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditAssignedInventorySourcesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditAssignedInventorySourcesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditAssignedLocationsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditAssignedLocationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditAssignedUserRolesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditAssignedUserRolesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditLineItemAssignedTargetingOptionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditLineItemAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditNegativeKeywordsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditNegativeKeywordsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditPartnerAssignedTargetingOptionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditPartnerAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditSitesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkEditSitesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkListAdvertiserAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkListCampaignAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkListInsertionOrderAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BulkListLineItemAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BusinessChainAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BusinessChainSearchTerms
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class BusinessChainTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Campaign
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CampaignBudget
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CampaignFlight
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CampaignGoal
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CarrierAndIspAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CarrierAndIspTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CategoryAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CategoryTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Channel
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ChannelAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CmHybridConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CmTrackingAd
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CombinedAudience
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CombinedAudienceGroup
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CombinedAudienceTargetingSetting
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ContactInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ContactInfoList
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ContentInstreamPositionAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ContentInstreamPositionTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ContentOutstreamPositionAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ContentOutstreamPositionTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ConversionCountingConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CounterEvent
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CreateAssetRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CreateAssetResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CreateAssignedTargetingOptionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CreateSdfDownloadTaskRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Creative
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CreativeConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CustomBiddingAlgorithm
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CustomBiddingScript
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CustomBiddingScriptRef
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CustomList
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CustomListGroup
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class CustomListTargetingSetting
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Date
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DateRange
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DayAndTimeAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DeactivateManualTriggerRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DeleteAssignedTargetingOptionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DeviceMakeModelAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DeviceMakeModelTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DeviceTypeAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DeviceTypeTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DigitalContentLabelAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DigitalContentLabelTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Dimensions
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DoubleVerify
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DoubleVerifyAppStarRating
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DoubleVerifyBrandSafetyCategories
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DoubleVerifyDisplayViewability
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DoubleVerifyFraudInvalidTraffic
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class DoubleVerifyVideoViewability
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class EditCustomerMatchMembersRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class EditCustomerMatchMembersResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Empty
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class EnvironmentAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class EnvironmentTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExchangeAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExchangeConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExchangeConfigEnabledExchange
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExchangeReviewStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExchangeTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ExitEvent
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class FirstAndThirdPartyAudience
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class FirstAndThirdPartyAudienceGroup
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class FirstAndThirdPartyAudienceTargetingSetting
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class FixedBidStrategy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class FloodlightGroup
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class FrequencyCap
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GenderAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GenderTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GenerateDefaultLineItemRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GeoRegionAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GeoRegionSearchTerms
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GeoRegionTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAudience
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAudienceGroup
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleAudienceTargetingSetting
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class GoogleBytestreamMedia
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class HouseholdIncomeAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class HouseholdIncomeTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class IdFilter
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InsertionOrder
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InsertionOrderBudget
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InsertionOrderBudgetSegment
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class IntegralAdScience
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class IntegrationDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InventorySource
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InventorySourceAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InventorySourceDisplayCreativeConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InventorySourceFilter
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InventorySourceGroup
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InventorySourceGroupAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InventorySourceStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class InventorySourceVideoCreativeConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Invoice
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class KeywordAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LanguageAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LanguageTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LineItem
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LineItemBudget
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LineItemFlight
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListAdvertiserAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListAdvertisersResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListAssignedInventorySourcesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListAssignedLocationsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListCampaignAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListCampaignsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListChannelsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListCombinedAudiencesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListCreativesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListCustomBiddingAlgorithmsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListCustomBiddingScriptsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListCustomListsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListFirstAndThirdPartyAudiencesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListGoogleAudiencesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListInsertionOrderAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListInsertionOrdersResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListInventorySourceGroupsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListInventorySourcesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListInvoicesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListLineItemAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListLineItemsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListLocationListsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListManualTriggersResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListNegativeKeywordListsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListNegativeKeywordsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListPartnerAssignedTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListPartnersResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListSitesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ListUsersResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LocationList
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LookbackWindow
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class LookupInvoiceCurrencyResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ManualTrigger
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class MaximizeSpendBidStrategy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class MeasurementConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class MobileApp
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class MobileDeviceIdList
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Money
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NativeContentPositionAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NativeContentPositionTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NegativeKeyword
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NegativeKeywordList
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class NegativeKeywordListAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ObaIcon
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OmidAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OmidTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OnScreenPositionAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OnScreenPositionTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OperatingSystemAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class OperatingSystemTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Operation
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Pacing
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ParentEntityFilter
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ParentalStatusAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ParentalStatusTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Partner
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PartnerAdServerConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PartnerCost
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PartnerDataAccessConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PartnerGeneralConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PartnerRevenueModel
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PerformanceGoal
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PerformanceGoalBidStrategy
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PoiAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PoiSearchTerms
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PoiTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PrismaConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PrismaCpeCode
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ProximityLocationListAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class PublisherReviewStatus
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RateDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class RegionalLocationListAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ReplaceNegativeKeywordsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ReplaceNegativeKeywordsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ReplaceSitesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ReplaceSitesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ReviewStatusInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ScriptError
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SdfConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SdfDownloadTask
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SdfDownloadTaskMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchTargetingOptionsRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SearchTargetingOptionsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SensitiveCategoryAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SensitiveCategoryTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Site
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Status
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SubExchangeAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class SubExchangeTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TargetingExpansionConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TargetingOption
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ThirdPartyOnlyConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ThirdPartyUrl
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ThirdPartyVerifierAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TimeRange
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TimerEvent
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class TrackingFloodlightActivityConfig
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class Transcode
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class UniversalAdId
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class UrlAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class User
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class UserRewardedContentAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class UserRewardedContentTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class VideoPlayerSizeAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class VideoPlayerSizeTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ViewabilityAssignedTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ViewabilityTargetingOptionDetails
        class Representation < Google::Apis::Core::JsonRepresentation; end
      
        include Google::Apis::Core::JsonObjectSupport
      end
      
      class ActivateManualTriggerRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class ActiveViewVideoViewabilityMetricConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :minimum_duration, as: 'minimumDuration'
          property :minimum_quartile, as: 'minimumQuartile'
          property :minimum_viewability, as: 'minimumViewability'
          property :minimum_volume, as: 'minimumVolume'
        end
      end
      
      class Adloox
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :excluded_adloox_categories, as: 'excludedAdlooxCategories'
        end
      end
      
      class Advertiser
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :ad_server_config, as: 'adServerConfig', class: Google::Apis::DisplayvideoV1::AdvertiserAdServerConfig, decorator: Google::Apis::DisplayvideoV1::AdvertiserAdServerConfig::Representation
      
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :creative_config, as: 'creativeConfig', class: Google::Apis::DisplayvideoV1::AdvertiserCreativeConfig, decorator: Google::Apis::DisplayvideoV1::AdvertiserCreativeConfig::Representation
      
          property :data_access_config, as: 'dataAccessConfig', class: Google::Apis::DisplayvideoV1::AdvertiserDataAccessConfig, decorator: Google::Apis::DisplayvideoV1::AdvertiserDataAccessConfig::Representation
      
          property :display_name, as: 'displayName'
          property :entity_status, as: 'entityStatus'
          property :general_config, as: 'generalConfig', class: Google::Apis::DisplayvideoV1::AdvertiserGeneralConfig, decorator: Google::Apis::DisplayvideoV1::AdvertiserGeneralConfig::Representation
      
          property :integration_details, as: 'integrationDetails', class: Google::Apis::DisplayvideoV1::IntegrationDetails, decorator: Google::Apis::DisplayvideoV1::IntegrationDetails::Representation
      
          property :name, as: 'name'
          property :partner_id, :numeric_string => true, as: 'partnerId'
          property :prisma_enabled, as: 'prismaEnabled'
          property :serving_config, as: 'servingConfig', class: Google::Apis::DisplayvideoV1::AdvertiserTargetingConfig, decorator: Google::Apis::DisplayvideoV1::AdvertiserTargetingConfig::Representation
      
          property :update_time, as: 'updateTime'
        end
      end
      
      class AdvertiserAdServerConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cm_hybrid_config, as: 'cmHybridConfig', class: Google::Apis::DisplayvideoV1::CmHybridConfig, decorator: Google::Apis::DisplayvideoV1::CmHybridConfig::Representation
      
          property :third_party_only_config, as: 'thirdPartyOnlyConfig', class: Google::Apis::DisplayvideoV1::ThirdPartyOnlyConfig, decorator: Google::Apis::DisplayvideoV1::ThirdPartyOnlyConfig::Representation
      
        end
      end
      
      class AdvertiserCreativeConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :dynamic_creative_enabled, as: 'dynamicCreativeEnabled'
          property :ias_client_id, :numeric_string => true, as: 'iasClientId'
          property :oba_compliance_disabled, as: 'obaComplianceDisabled'
          property :video_creative_data_sharing_authorized, as: 'videoCreativeDataSharingAuthorized'
        end
      end
      
      class AdvertiserDataAccessConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :sdf_config, as: 'sdfConfig', class: Google::Apis::DisplayvideoV1::AdvertiserSdfConfig, decorator: Google::Apis::DisplayvideoV1::AdvertiserSdfConfig::Representation
      
        end
      end
      
      class AdvertiserGeneralConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :currency_code, as: 'currencyCode'
          property :domain_url, as: 'domainUrl'
          property :time_zone, as: 'timeZone'
        end
      end
      
      class AdvertiserSdfConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :override_partner_sdf_config, as: 'overridePartnerSdfConfig'
          property :sdf_config, as: 'sdfConfig', class: Google::Apis::DisplayvideoV1::SdfConfig, decorator: Google::Apis::DisplayvideoV1::SdfConfig::Representation
      
        end
      end
      
      class AdvertiserTargetingConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :exempt_tv_from_viewability_targeting, as: 'exemptTvFromViewabilityTargeting'
        end
      end
      
      class AgeRangeAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :age_range, as: 'ageRange'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class AgeRangeTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :age_range, as: 'ageRange'
        end
      end
      
      class AppAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :app_id, as: 'appId'
          property :app_platform, as: 'appPlatform'
          property :display_name, as: 'displayName'
          property :negative, as: 'negative'
        end
      end
      
      class AppCategoryAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :negative, as: 'negative'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class AppCategoryTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
        end
      end
      
      class Asset
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :content, as: 'content'
          property :media_id, :numeric_string => true, as: 'mediaId'
        end
      end
      
      class AssetAssociation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :asset, as: 'asset', class: Google::Apis::DisplayvideoV1::Asset, decorator: Google::Apis::DisplayvideoV1::Asset::Representation
      
          property :role, as: 'role'
        end
      end
      
      class AssignedInventorySource
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :assigned_inventory_source_id, :numeric_string => true, as: 'assignedInventorySourceId'
          property :inventory_source_id, as: 'inventorySourceId'
          property :name, as: 'name'
        end
      end
      
      class AssignedLocation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :assigned_location_id, :numeric_string => true, as: 'assignedLocationId'
          property :name, as: 'name'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class AssignedTargetingOption
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :age_range_details, as: 'ageRangeDetails', class: Google::Apis::DisplayvideoV1::AgeRangeAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AgeRangeAssignedTargetingOptionDetails::Representation
      
          property :app_category_details, as: 'appCategoryDetails', class: Google::Apis::DisplayvideoV1::AppCategoryAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AppCategoryAssignedTargetingOptionDetails::Representation
      
          property :app_details, as: 'appDetails', class: Google::Apis::DisplayvideoV1::AppAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AppAssignedTargetingOptionDetails::Representation
      
          property :assigned_targeting_option_id, as: 'assignedTargetingOptionId'
          property :audience_group_details, as: 'audienceGroupDetails', class: Google::Apis::DisplayvideoV1::AudienceGroupAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AudienceGroupAssignedTargetingOptionDetails::Representation
      
          property :audio_content_type_details, as: 'audioContentTypeDetails', class: Google::Apis::DisplayvideoV1::AudioContentTypeAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AudioContentTypeAssignedTargetingOptionDetails::Representation
      
          property :authorized_seller_status_details, as: 'authorizedSellerStatusDetails', class: Google::Apis::DisplayvideoV1::AuthorizedSellerStatusAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AuthorizedSellerStatusAssignedTargetingOptionDetails::Representation
      
          property :browser_details, as: 'browserDetails', class: Google::Apis::DisplayvideoV1::BrowserAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::BrowserAssignedTargetingOptionDetails::Representation
      
          property :business_chain_details, as: 'businessChainDetails', class: Google::Apis::DisplayvideoV1::BusinessChainAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::BusinessChainAssignedTargetingOptionDetails::Representation
      
          property :carrier_and_isp_details, as: 'carrierAndIspDetails', class: Google::Apis::DisplayvideoV1::CarrierAndIspAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::CarrierAndIspAssignedTargetingOptionDetails::Representation
      
          property :category_details, as: 'categoryDetails', class: Google::Apis::DisplayvideoV1::CategoryAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::CategoryAssignedTargetingOptionDetails::Representation
      
          property :channel_details, as: 'channelDetails', class: Google::Apis::DisplayvideoV1::ChannelAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ChannelAssignedTargetingOptionDetails::Representation
      
          property :content_instream_position_details, as: 'contentInstreamPositionDetails', class: Google::Apis::DisplayvideoV1::ContentInstreamPositionAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ContentInstreamPositionAssignedTargetingOptionDetails::Representation
      
          property :content_outstream_position_details, as: 'contentOutstreamPositionDetails', class: Google::Apis::DisplayvideoV1::ContentOutstreamPositionAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ContentOutstreamPositionAssignedTargetingOptionDetails::Representation
      
          property :day_and_time_details, as: 'dayAndTimeDetails', class: Google::Apis::DisplayvideoV1::DayAndTimeAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::DayAndTimeAssignedTargetingOptionDetails::Representation
      
          property :device_make_model_details, as: 'deviceMakeModelDetails', class: Google::Apis::DisplayvideoV1::DeviceMakeModelAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::DeviceMakeModelAssignedTargetingOptionDetails::Representation
      
          property :device_type_details, as: 'deviceTypeDetails', class: Google::Apis::DisplayvideoV1::DeviceTypeAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::DeviceTypeAssignedTargetingOptionDetails::Representation
      
          property :digital_content_label_exclusion_details, as: 'digitalContentLabelExclusionDetails', class: Google::Apis::DisplayvideoV1::DigitalContentLabelAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::DigitalContentLabelAssignedTargetingOptionDetails::Representation
      
          property :environment_details, as: 'environmentDetails', class: Google::Apis::DisplayvideoV1::EnvironmentAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::EnvironmentAssignedTargetingOptionDetails::Representation
      
          property :exchange_details, as: 'exchangeDetails', class: Google::Apis::DisplayvideoV1::ExchangeAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ExchangeAssignedTargetingOptionDetails::Representation
      
          property :gender_details, as: 'genderDetails', class: Google::Apis::DisplayvideoV1::GenderAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::GenderAssignedTargetingOptionDetails::Representation
      
          property :geo_region_details, as: 'geoRegionDetails', class: Google::Apis::DisplayvideoV1::GeoRegionAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::GeoRegionAssignedTargetingOptionDetails::Representation
      
          property :household_income_details, as: 'householdIncomeDetails', class: Google::Apis::DisplayvideoV1::HouseholdIncomeAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::HouseholdIncomeAssignedTargetingOptionDetails::Representation
      
          property :inheritance, as: 'inheritance'
          property :inventory_source_details, as: 'inventorySourceDetails', class: Google::Apis::DisplayvideoV1::InventorySourceAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::InventorySourceAssignedTargetingOptionDetails::Representation
      
          property :inventory_source_group_details, as: 'inventorySourceGroupDetails', class: Google::Apis::DisplayvideoV1::InventorySourceGroupAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::InventorySourceGroupAssignedTargetingOptionDetails::Representation
      
          property :keyword_details, as: 'keywordDetails', class: Google::Apis::DisplayvideoV1::KeywordAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::KeywordAssignedTargetingOptionDetails::Representation
      
          property :language_details, as: 'languageDetails', class: Google::Apis::DisplayvideoV1::LanguageAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::LanguageAssignedTargetingOptionDetails::Representation
      
          property :name, as: 'name'
          property :native_content_position_details, as: 'nativeContentPositionDetails', class: Google::Apis::DisplayvideoV1::NativeContentPositionAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::NativeContentPositionAssignedTargetingOptionDetails::Representation
      
          property :negative_keyword_list_details, as: 'negativeKeywordListDetails', class: Google::Apis::DisplayvideoV1::NegativeKeywordListAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::NegativeKeywordListAssignedTargetingOptionDetails::Representation
      
          property :omid_details, as: 'omidDetails', class: Google::Apis::DisplayvideoV1::OmidAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::OmidAssignedTargetingOptionDetails::Representation
      
          property :on_screen_position_details, as: 'onScreenPositionDetails', class: Google::Apis::DisplayvideoV1::OnScreenPositionAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::OnScreenPositionAssignedTargetingOptionDetails::Representation
      
          property :operating_system_details, as: 'operatingSystemDetails', class: Google::Apis::DisplayvideoV1::OperatingSystemAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::OperatingSystemAssignedTargetingOptionDetails::Representation
      
          property :parental_status_details, as: 'parentalStatusDetails', class: Google::Apis::DisplayvideoV1::ParentalStatusAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ParentalStatusAssignedTargetingOptionDetails::Representation
      
          property :poi_details, as: 'poiDetails', class: Google::Apis::DisplayvideoV1::PoiAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::PoiAssignedTargetingOptionDetails::Representation
      
          property :proximity_location_list_details, as: 'proximityLocationListDetails', class: Google::Apis::DisplayvideoV1::ProximityLocationListAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ProximityLocationListAssignedTargetingOptionDetails::Representation
      
          property :regional_location_list_details, as: 'regionalLocationListDetails', class: Google::Apis::DisplayvideoV1::RegionalLocationListAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::RegionalLocationListAssignedTargetingOptionDetails::Representation
      
          property :sensitive_category_exclusion_details, as: 'sensitiveCategoryExclusionDetails', class: Google::Apis::DisplayvideoV1::SensitiveCategoryAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::SensitiveCategoryAssignedTargetingOptionDetails::Representation
      
          property :sub_exchange_details, as: 'subExchangeDetails', class: Google::Apis::DisplayvideoV1::SubExchangeAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::SubExchangeAssignedTargetingOptionDetails::Representation
      
          property :targeting_type, as: 'targetingType'
          property :third_party_verifier_details, as: 'thirdPartyVerifierDetails', class: Google::Apis::DisplayvideoV1::ThirdPartyVerifierAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ThirdPartyVerifierAssignedTargetingOptionDetails::Representation
      
          property :url_details, as: 'urlDetails', class: Google::Apis::DisplayvideoV1::UrlAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::UrlAssignedTargetingOptionDetails::Representation
      
          property :user_rewarded_content_details, as: 'userRewardedContentDetails', class: Google::Apis::DisplayvideoV1::UserRewardedContentAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::UserRewardedContentAssignedTargetingOptionDetails::Representation
      
          property :video_player_size_details, as: 'videoPlayerSizeDetails', class: Google::Apis::DisplayvideoV1::VideoPlayerSizeAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::VideoPlayerSizeAssignedTargetingOptionDetails::Representation
      
          property :viewability_details, as: 'viewabilityDetails', class: Google::Apis::DisplayvideoV1::ViewabilityAssignedTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ViewabilityAssignedTargetingOptionDetails::Representation
      
        end
      end
      
      class AssignedUserRole
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :assigned_user_role_id, as: 'assignedUserRoleId'
          property :partner_id, :numeric_string => true, as: 'partnerId'
          property :user_role, as: 'userRole'
        end
      end
      
      class AudienceGroupAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :excluded_first_and_third_party_audience_group, as: 'excludedFirstAndThirdPartyAudienceGroup', class: Google::Apis::DisplayvideoV1::FirstAndThirdPartyAudienceGroup, decorator: Google::Apis::DisplayvideoV1::FirstAndThirdPartyAudienceGroup::Representation
      
          property :excluded_google_audience_group, as: 'excludedGoogleAudienceGroup', class: Google::Apis::DisplayvideoV1::GoogleAudienceGroup, decorator: Google::Apis::DisplayvideoV1::GoogleAudienceGroup::Representation
      
          property :included_combined_audience_group, as: 'includedCombinedAudienceGroup', class: Google::Apis::DisplayvideoV1::CombinedAudienceGroup, decorator: Google::Apis::DisplayvideoV1::CombinedAudienceGroup::Representation
      
          property :included_custom_list_group, as: 'includedCustomListGroup', class: Google::Apis::DisplayvideoV1::CustomListGroup, decorator: Google::Apis::DisplayvideoV1::CustomListGroup::Representation
      
          collection :included_first_and_third_party_audience_groups, as: 'includedFirstAndThirdPartyAudienceGroups', class: Google::Apis::DisplayvideoV1::FirstAndThirdPartyAudienceGroup, decorator: Google::Apis::DisplayvideoV1::FirstAndThirdPartyAudienceGroup::Representation
      
          property :included_google_audience_group, as: 'includedGoogleAudienceGroup', class: Google::Apis::DisplayvideoV1::GoogleAudienceGroup, decorator: Google::Apis::DisplayvideoV1::GoogleAudienceGroup::Representation
      
        end
      end
      
      class AudioContentTypeAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :audio_content_type, as: 'audioContentType'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class AudioContentTypeTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :audio_content_type, as: 'audioContentType'
        end
      end
      
      class AudioVideoOffset
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :percentage, :numeric_string => true, as: 'percentage'
          property :seconds, :numeric_string => true, as: 'seconds'
        end
      end
      
      class AuditAdvertiserResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :ad_group_criteria_count, :numeric_string => true, as: 'adGroupCriteriaCount'
          property :campaign_criteria_count, :numeric_string => true, as: 'campaignCriteriaCount'
          property :channels_count, :numeric_string => true, as: 'channelsCount'
          property :negative_keyword_lists_count, :numeric_string => true, as: 'negativeKeywordListsCount'
          property :negatively_targeted_channels_count, :numeric_string => true, as: 'negativelyTargetedChannelsCount'
          property :used_campaigns_count, :numeric_string => true, as: 'usedCampaignsCount'
          property :used_insertion_orders_count, :numeric_string => true, as: 'usedInsertionOrdersCount'
          property :used_line_items_count, :numeric_string => true, as: 'usedLineItemsCount'
        end
      end
      
      class AuthorizedSellerStatusAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :authorized_seller_status, as: 'authorizedSellerStatus'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class AuthorizedSellerStatusTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :authorized_seller_status, as: 'authorizedSellerStatus'
        end
      end
      
      class BiddingStrategy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :fixed_bid, as: 'fixedBid', class: Google::Apis::DisplayvideoV1::FixedBidStrategy, decorator: Google::Apis::DisplayvideoV1::FixedBidStrategy::Representation
      
          property :maximize_spend_auto_bid, as: 'maximizeSpendAutoBid', class: Google::Apis::DisplayvideoV1::MaximizeSpendBidStrategy, decorator: Google::Apis::DisplayvideoV1::MaximizeSpendBidStrategy::Representation
      
          property :performance_goal_auto_bid, as: 'performanceGoalAutoBid', class: Google::Apis::DisplayvideoV1::PerformanceGoalBidStrategy, decorator: Google::Apis::DisplayvideoV1::PerformanceGoalBidStrategy::Representation
      
        end
      end
      
      class BrowserAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :negative, as: 'negative'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class BrowserTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
        end
      end
      
      class BudgetSummary
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :external_budget_id, as: 'externalBudgetId'
          property :pre_tax_amount_micros, :numeric_string => true, as: 'preTaxAmountMicros'
          property :prisma_cpe_code, as: 'prismaCpeCode', class: Google::Apis::DisplayvideoV1::PrismaCpeCode, decorator: Google::Apis::DisplayvideoV1::PrismaCpeCode::Representation
      
          property :tax_amount_micros, :numeric_string => true, as: 'taxAmountMicros'
          property :total_amount_micros, :numeric_string => true, as: 'totalAmountMicros'
        end
      end
      
      class BulkEditAdvertiserAssignedTargetingOptionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :create_requests, as: 'createRequests', class: Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest, decorator: Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest::Representation
      
          collection :delete_requests, as: 'deleteRequests', class: Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest, decorator: Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest::Representation
      
        end
      end
      
      class BulkEditAdvertiserAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :created_assigned_targeting_options, as: 'createdAssignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
        end
      end
      
      class BulkEditAssignedInventorySourcesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          collection :created_assigned_inventory_sources, as: 'createdAssignedInventorySources', class: Google::Apis::DisplayvideoV1::AssignedInventorySource, decorator: Google::Apis::DisplayvideoV1::AssignedInventorySource::Representation
      
          collection :deleted_assigned_inventory_sources, as: 'deletedAssignedInventorySources'
          property :partner_id, :numeric_string => true, as: 'partnerId'
        end
      end
      
      class BulkEditAssignedInventorySourcesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_inventory_sources, as: 'assignedInventorySources', class: Google::Apis::DisplayvideoV1::AssignedInventorySource, decorator: Google::Apis::DisplayvideoV1::AssignedInventorySource::Representation
      
        end
      end
      
      class BulkEditAssignedLocationsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :created_assigned_locations, as: 'createdAssignedLocations', class: Google::Apis::DisplayvideoV1::AssignedLocation, decorator: Google::Apis::DisplayvideoV1::AssignedLocation::Representation
      
          collection :deleted_assigned_locations, as: 'deletedAssignedLocations'
        end
      end
      
      class BulkEditAssignedLocationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_locations, as: 'assignedLocations', class: Google::Apis::DisplayvideoV1::AssignedLocation, decorator: Google::Apis::DisplayvideoV1::AssignedLocation::Representation
      
        end
      end
      
      class BulkEditAssignedUserRolesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :created_assigned_user_roles, as: 'createdAssignedUserRoles', class: Google::Apis::DisplayvideoV1::AssignedUserRole, decorator: Google::Apis::DisplayvideoV1::AssignedUserRole::Representation
      
          collection :deleted_assigned_user_roles, as: 'deletedAssignedUserRoles'
        end
      end
      
      class BulkEditAssignedUserRolesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :created_assigned_user_roles, as: 'createdAssignedUserRoles', class: Google::Apis::DisplayvideoV1::AssignedUserRole, decorator: Google::Apis::DisplayvideoV1::AssignedUserRole::Representation
      
        end
      end
      
      class BulkEditLineItemAssignedTargetingOptionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :create_requests, as: 'createRequests', class: Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest, decorator: Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest::Representation
      
          collection :delete_requests, as: 'deleteRequests', class: Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest, decorator: Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest::Representation
      
        end
      end
      
      class BulkEditLineItemAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :created_assigned_targeting_options, as: 'createdAssignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
        end
      end
      
      class BulkEditNegativeKeywordsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :created_negative_keywords, as: 'createdNegativeKeywords', class: Google::Apis::DisplayvideoV1::NegativeKeyword, decorator: Google::Apis::DisplayvideoV1::NegativeKeyword::Representation
      
          collection :deleted_negative_keywords, as: 'deletedNegativeKeywords'
        end
      end
      
      class BulkEditNegativeKeywordsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :negative_keywords, as: 'negativeKeywords', class: Google::Apis::DisplayvideoV1::NegativeKeyword, decorator: Google::Apis::DisplayvideoV1::NegativeKeyword::Representation
      
        end
      end
      
      class BulkEditPartnerAssignedTargetingOptionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :create_requests, as: 'createRequests', class: Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest, decorator: Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest::Representation
      
          collection :delete_requests, as: 'deleteRequests', class: Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest, decorator: Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest::Representation
      
        end
      end
      
      class BulkEditPartnerAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :created_assigned_targeting_options, as: 'createdAssignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
        end
      end
      
      class BulkEditSitesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          collection :created_sites, as: 'createdSites', class: Google::Apis::DisplayvideoV1::Site, decorator: Google::Apis::DisplayvideoV1::Site::Representation
      
          collection :deleted_sites, as: 'deletedSites'
          property :partner_id, :numeric_string => true, as: 'partnerId'
        end
      end
      
      class BulkEditSitesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :sites, as: 'sites', class: Google::Apis::DisplayvideoV1::Site, decorator: Google::Apis::DisplayvideoV1::Site::Representation
      
        end
      end
      
      class BulkListAdvertiserAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class BulkListCampaignAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class BulkListInsertionOrderAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class BulkListLineItemAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class BusinessChainAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :proximity_radius_amount, as: 'proximityRadiusAmount'
          property :proximity_radius_unit, as: 'proximityRadiusUnit'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class BusinessChainSearchTerms
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :business_chain_query, as: 'businessChainQuery'
          property :region_query, as: 'regionQuery'
        end
      end
      
      class BusinessChainTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :business_chain, as: 'businessChain'
          property :geo_region, as: 'geoRegion'
          property :geo_region_type, as: 'geoRegionType'
        end
      end
      
      class Campaign
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          collection :campaign_budgets, as: 'campaignBudgets', class: Google::Apis::DisplayvideoV1::CampaignBudget, decorator: Google::Apis::DisplayvideoV1::CampaignBudget::Representation
      
          property :campaign_flight, as: 'campaignFlight', class: Google::Apis::DisplayvideoV1::CampaignFlight, decorator: Google::Apis::DisplayvideoV1::CampaignFlight::Representation
      
          property :campaign_goal, as: 'campaignGoal', class: Google::Apis::DisplayvideoV1::CampaignGoal, decorator: Google::Apis::DisplayvideoV1::CampaignGoal::Representation
      
          property :campaign_id, :numeric_string => true, as: 'campaignId'
          property :display_name, as: 'displayName'
          property :entity_status, as: 'entityStatus'
          property :frequency_cap, as: 'frequencyCap', class: Google::Apis::DisplayvideoV1::FrequencyCap, decorator: Google::Apis::DisplayvideoV1::FrequencyCap::Representation
      
          property :name, as: 'name'
          property :update_time, as: 'updateTime'
        end
      end
      
      class CampaignBudget
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :budget_amount_micros, :numeric_string => true, as: 'budgetAmountMicros'
          property :budget_id, :numeric_string => true, as: 'budgetId'
          property :budget_unit, as: 'budgetUnit'
          property :date_range, as: 'dateRange', class: Google::Apis::DisplayvideoV1::DateRange, decorator: Google::Apis::DisplayvideoV1::DateRange::Representation
      
          property :display_name, as: 'displayName'
          property :external_budget_id, as: 'externalBudgetId'
          property :external_budget_source, as: 'externalBudgetSource'
          property :invoice_grouping_id, as: 'invoiceGroupingId'
          property :prisma_config, as: 'prismaConfig', class: Google::Apis::DisplayvideoV1::PrismaConfig, decorator: Google::Apis::DisplayvideoV1::PrismaConfig::Representation
      
        end
      end
      
      class CampaignFlight
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :planned_dates, as: 'plannedDates', class: Google::Apis::DisplayvideoV1::DateRange, decorator: Google::Apis::DisplayvideoV1::DateRange::Representation
      
          property :planned_spend_amount_micros, :numeric_string => true, as: 'plannedSpendAmountMicros'
        end
      end
      
      class CampaignGoal
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :campaign_goal_type, as: 'campaignGoalType'
          property :performance_goal, as: 'performanceGoal', class: Google::Apis::DisplayvideoV1::PerformanceGoal, decorator: Google::Apis::DisplayvideoV1::PerformanceGoal::Representation
      
        end
      end
      
      class CarrierAndIspAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :negative, as: 'negative'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class CarrierAndIspTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :type, as: 'type'
        end
      end
      
      class CategoryAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :negative, as: 'negative'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class CategoryTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
        end
      end
      
      class Channel
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :channel_id, :numeric_string => true, as: 'channelId'
          property :display_name, as: 'displayName'
          property :name, as: 'name'
          property :negatively_targeted_line_item_count, :numeric_string => true, as: 'negativelyTargetedLineItemCount'
          property :partner_id, :numeric_string => true, as: 'partnerId'
          property :positively_targeted_line_item_count, :numeric_string => true, as: 'positivelyTargetedLineItemCount'
        end
      end
      
      class ChannelAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :channel_id, :numeric_string => true, as: 'channelId'
          property :negative, as: 'negative'
        end
      end
      
      class CmHybridConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cm_account_id, :numeric_string => true, as: 'cmAccountId'
          property :cm_floodlight_config_id, :numeric_string => true, as: 'cmFloodlightConfigId'
          property :cm_floodlight_linking_authorized, as: 'cmFloodlightLinkingAuthorized'
          collection :cm_syncable_site_ids, as: 'cmSyncableSiteIds'
          property :dv360_to_cm_cost_reporting_enabled, as: 'dv360ToCmCostReportingEnabled'
          property :dv360_to_cm_data_sharing_enabled, as: 'dv360ToCmDataSharingEnabled'
        end
      end
      
      class CmTrackingAd
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cm_ad_id, :numeric_string => true, as: 'cmAdId'
          property :cm_creative_id, :numeric_string => true, as: 'cmCreativeId'
          property :cm_placement_id, :numeric_string => true, as: 'cmPlacementId'
        end
      end
      
      class CombinedAudience
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :combined_audience_id, :numeric_string => true, as: 'combinedAudienceId'
          property :display_name, as: 'displayName'
          property :name, as: 'name'
        end
      end
      
      class CombinedAudienceGroup
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :settings, as: 'settings', class: Google::Apis::DisplayvideoV1::CombinedAudienceTargetingSetting, decorator: Google::Apis::DisplayvideoV1::CombinedAudienceTargetingSetting::Representation
      
        end
      end
      
      class CombinedAudienceTargetingSetting
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :combined_audience_id, :numeric_string => true, as: 'combinedAudienceId'
        end
      end
      
      class ContactInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :country_code, as: 'countryCode'
          collection :hashed_emails, as: 'hashedEmails'
          property :hashed_first_name, as: 'hashedFirstName'
          property :hashed_last_name, as: 'hashedLastName'
          collection :hashed_phone_numbers, as: 'hashedPhoneNumbers'
          collection :zip_codes, as: 'zipCodes'
        end
      end
      
      class ContactInfoList
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :contact_infos, as: 'contactInfos', class: Google::Apis::DisplayvideoV1::ContactInfo, decorator: Google::Apis::DisplayvideoV1::ContactInfo::Representation
      
        end
      end
      
      class ContentInstreamPositionAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :ad_type, as: 'adType'
          property :content_instream_position, as: 'contentInstreamPosition'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class ContentInstreamPositionTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :content_instream_position, as: 'contentInstreamPosition'
        end
      end
      
      class ContentOutstreamPositionAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :ad_type, as: 'adType'
          property :content_outstream_position, as: 'contentOutstreamPosition'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class ContentOutstreamPositionTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :content_outstream_position, as: 'contentOutstreamPosition'
        end
      end
      
      class ConversionCountingConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :floodlight_activity_configs, as: 'floodlightActivityConfigs', class: Google::Apis::DisplayvideoV1::TrackingFloodlightActivityConfig, decorator: Google::Apis::DisplayvideoV1::TrackingFloodlightActivityConfig::Representation
      
          property :post_view_count_percentage_millis, :numeric_string => true, as: 'postViewCountPercentageMillis'
        end
      end
      
      class CounterEvent
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          property :reporting_name, as: 'reportingName'
        end
      end
      
      class CreateAssetRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :filename, as: 'filename'
        end
      end
      
      class CreateAssetResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :asset, as: 'asset', class: Google::Apis::DisplayvideoV1::Asset, decorator: Google::Apis::DisplayvideoV1::Asset::Representation
      
        end
      end
      
      class CreateAssignedTargetingOptionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :targeting_type, as: 'targetingType'
        end
      end
      
      class CreateSdfDownloadTaskRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :id_filter, as: 'idFilter', class: Google::Apis::DisplayvideoV1::IdFilter, decorator: Google::Apis::DisplayvideoV1::IdFilter::Representation
      
          property :inventory_source_filter, as: 'inventorySourceFilter', class: Google::Apis::DisplayvideoV1::InventorySourceFilter, decorator: Google::Apis::DisplayvideoV1::InventorySourceFilter::Representation
      
          property :parent_entity_filter, as: 'parentEntityFilter', class: Google::Apis::DisplayvideoV1::ParentEntityFilter, decorator: Google::Apis::DisplayvideoV1::ParentEntityFilter::Representation
      
          property :partner_id, :numeric_string => true, as: 'partnerId'
          property :version, as: 'version'
        end
      end
      
      class Creative
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :additional_dimensions, as: 'additionalDimensions', class: Google::Apis::DisplayvideoV1::Dimensions, decorator: Google::Apis::DisplayvideoV1::Dimensions::Representation
      
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :appended_tag, as: 'appendedTag'
          collection :assets, as: 'assets', class: Google::Apis::DisplayvideoV1::AssetAssociation, decorator: Google::Apis::DisplayvideoV1::AssetAssociation::Representation
      
          property :cm_placement_id, :numeric_string => true, as: 'cmPlacementId'
          property :cm_tracking_ad, as: 'cmTrackingAd', class: Google::Apis::DisplayvideoV1::CmTrackingAd, decorator: Google::Apis::DisplayvideoV1::CmTrackingAd::Representation
      
          collection :companion_creative_ids, as: 'companionCreativeIds'
          collection :counter_events, as: 'counterEvents', class: Google::Apis::DisplayvideoV1::CounterEvent, decorator: Google::Apis::DisplayvideoV1::CounterEvent::Representation
      
          property :create_time, as: 'createTime'
          collection :creative_attributes, as: 'creativeAttributes'
          property :creative_id, :numeric_string => true, as: 'creativeId'
          property :creative_type, as: 'creativeType'
          property :dimensions, as: 'dimensions', class: Google::Apis::DisplayvideoV1::Dimensions, decorator: Google::Apis::DisplayvideoV1::Dimensions::Representation
      
          property :display_name, as: 'displayName'
          property :dynamic, as: 'dynamic'
          property :entity_status, as: 'entityStatus'
          collection :exit_events, as: 'exitEvents', class: Google::Apis::DisplayvideoV1::ExitEvent, decorator: Google::Apis::DisplayvideoV1::ExitEvent::Representation
      
          property :expand_on_hover, as: 'expandOnHover'
          property :expanding_direction, as: 'expandingDirection'
          property :hosting_source, as: 'hostingSource'
          property :html5_video, as: 'html5Video'
          property :ias_campaign_monitoring, as: 'iasCampaignMonitoring'
          property :integration_code, as: 'integrationCode'
          property :js_tracker_url, as: 'jsTrackerUrl'
          collection :line_item_ids, as: 'lineItemIds'
          property :media_duration, as: 'mediaDuration'
          property :mp3_audio, as: 'mp3Audio'
          property :name, as: 'name'
          property :notes, as: 'notes'
          property :oba_icon, as: 'obaIcon', class: Google::Apis::DisplayvideoV1::ObaIcon, decorator: Google::Apis::DisplayvideoV1::ObaIcon::Representation
      
          property :ogg_audio, as: 'oggAudio'
          property :progress_offset, as: 'progressOffset', class: Google::Apis::DisplayvideoV1::AudioVideoOffset, decorator: Google::Apis::DisplayvideoV1::AudioVideoOffset::Representation
      
          property :require_html5, as: 'requireHtml5'
          property :require_mraid, as: 'requireMraid'
          property :require_ping_for_attribution, as: 'requirePingForAttribution'
          property :review_status, as: 'reviewStatus', class: Google::Apis::DisplayvideoV1::ReviewStatusInfo, decorator: Google::Apis::DisplayvideoV1::ReviewStatusInfo::Representation
      
          property :skip_offset, as: 'skipOffset', class: Google::Apis::DisplayvideoV1::AudioVideoOffset, decorator: Google::Apis::DisplayvideoV1::AudioVideoOffset::Representation
      
          property :skippable, as: 'skippable'
          property :third_party_tag, as: 'thirdPartyTag'
          collection :third_party_urls, as: 'thirdPartyUrls', class: Google::Apis::DisplayvideoV1::ThirdPartyUrl, decorator: Google::Apis::DisplayvideoV1::ThirdPartyUrl::Representation
      
          collection :timer_events, as: 'timerEvents', class: Google::Apis::DisplayvideoV1::TimerEvent, decorator: Google::Apis::DisplayvideoV1::TimerEvent::Representation
      
          collection :tracker_urls, as: 'trackerUrls'
          collection :transcodes, as: 'transcodes', class: Google::Apis::DisplayvideoV1::Transcode, decorator: Google::Apis::DisplayvideoV1::Transcode::Representation
      
          property :universal_ad_id, as: 'universalAdId', class: Google::Apis::DisplayvideoV1::UniversalAdId, decorator: Google::Apis::DisplayvideoV1::UniversalAdId::Representation
      
          property :update_time, as: 'updateTime'
          property :vast_tag_url, as: 'vastTagUrl'
          property :vpaid, as: 'vpaid'
        end
      end
      
      class CreativeConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :creative_type, as: 'creativeType'
          property :display_creative_config, as: 'displayCreativeConfig', class: Google::Apis::DisplayvideoV1::InventorySourceDisplayCreativeConfig, decorator: Google::Apis::DisplayvideoV1::InventorySourceDisplayCreativeConfig::Representation
      
          property :video_creative_config, as: 'videoCreativeConfig', class: Google::Apis::DisplayvideoV1::InventorySourceVideoCreativeConfig, decorator: Google::Apis::DisplayvideoV1::InventorySourceVideoCreativeConfig::Representation
      
        end
      end
      
      class CustomBiddingAlgorithm
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :custom_bidding_algorithm_id, :numeric_string => true, as: 'customBiddingAlgorithmId'
          property :custom_bidding_algorithm_state, as: 'customBiddingAlgorithmState'
          property :custom_bidding_algorithm_type, as: 'customBiddingAlgorithmType'
          property :display_name, as: 'displayName'
          property :entity_status, as: 'entityStatus'
          property :name, as: 'name'
          property :partner_id, :numeric_string => true, as: 'partnerId'
          collection :shared_advertiser_ids, as: 'sharedAdvertiserIds'
        end
      end
      
      class CustomBiddingScript
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :active, as: 'active'
          property :create_time, as: 'createTime'
          property :custom_bidding_algorithm_id, :numeric_string => true, as: 'customBiddingAlgorithmId'
          property :custom_bidding_script_id, :numeric_string => true, as: 'customBiddingScriptId'
          collection :errors, as: 'errors', class: Google::Apis::DisplayvideoV1::ScriptError, decorator: Google::Apis::DisplayvideoV1::ScriptError::Representation
      
          property :name, as: 'name'
          property :script, as: 'script', class: Google::Apis::DisplayvideoV1::CustomBiddingScriptRef, decorator: Google::Apis::DisplayvideoV1::CustomBiddingScriptRef::Representation
      
          property :state, as: 'state'
        end
      end
      
      class CustomBiddingScriptRef
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :resource_name, as: 'resourceName'
        end
      end
      
      class CustomList
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :custom_list_id, :numeric_string => true, as: 'customListId'
          property :display_name, as: 'displayName'
          property :name, as: 'name'
        end
      end
      
      class CustomListGroup
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :settings, as: 'settings', class: Google::Apis::DisplayvideoV1::CustomListTargetingSetting, decorator: Google::Apis::DisplayvideoV1::CustomListTargetingSetting::Representation
      
        end
      end
      
      class CustomListTargetingSetting
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :custom_list_id, :numeric_string => true, as: 'customListId'
        end
      end
      
      class Date
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :day, as: 'day'
          property :month, as: 'month'
          property :year, as: 'year'
        end
      end
      
      class DateRange
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :end_date, as: 'endDate', class: Google::Apis::DisplayvideoV1::Date, decorator: Google::Apis::DisplayvideoV1::Date::Representation
      
          property :start_date, as: 'startDate', class: Google::Apis::DisplayvideoV1::Date, decorator: Google::Apis::DisplayvideoV1::Date::Representation
      
        end
      end
      
      class DayAndTimeAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :day_of_week, as: 'dayOfWeek'
          property :end_hour, as: 'endHour'
          property :start_hour, as: 'startHour'
          property :time_zone_resolution, as: 'timeZoneResolution'
        end
      end
      
      class DeactivateManualTriggerRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class DeleteAssignedTargetingOptionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_option_ids, as: 'assignedTargetingOptionIds'
          property :targeting_type, as: 'targetingType'
        end
      end
      
      class DeviceMakeModelAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :negative, as: 'negative'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class DeviceMakeModelTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
        end
      end
      
      class DeviceTypeAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :device_type, as: 'deviceType'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class DeviceTypeTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :device_type, as: 'deviceType'
        end
      end
      
      class DigitalContentLabelAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :content_rating_tier, as: 'contentRatingTier'
          property :excluded_targeting_option_id, as: 'excludedTargetingOptionId'
        end
      end
      
      class DigitalContentLabelTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :content_rating_tier, as: 'contentRatingTier'
        end
      end
      
      class Dimensions
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :height_pixels, as: 'heightPixels'
          property :width_pixels, as: 'widthPixels'
        end
      end
      
      class DoubleVerify
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :app_star_rating, as: 'appStarRating', class: Google::Apis::DisplayvideoV1::DoubleVerifyAppStarRating, decorator: Google::Apis::DisplayvideoV1::DoubleVerifyAppStarRating::Representation
      
          collection :avoided_age_ratings, as: 'avoidedAgeRatings'
          property :brand_safety_categories, as: 'brandSafetyCategories', class: Google::Apis::DisplayvideoV1::DoubleVerifyBrandSafetyCategories, decorator: Google::Apis::DisplayvideoV1::DoubleVerifyBrandSafetyCategories::Representation
      
          property :custom_segment_id, :numeric_string => true, as: 'customSegmentId'
          property :display_viewability, as: 'displayViewability', class: Google::Apis::DisplayvideoV1::DoubleVerifyDisplayViewability, decorator: Google::Apis::DisplayvideoV1::DoubleVerifyDisplayViewability::Representation
      
          property :fraud_invalid_traffic, as: 'fraudInvalidTraffic', class: Google::Apis::DisplayvideoV1::DoubleVerifyFraudInvalidTraffic, decorator: Google::Apis::DisplayvideoV1::DoubleVerifyFraudInvalidTraffic::Representation
      
          property :video_viewability, as: 'videoViewability', class: Google::Apis::DisplayvideoV1::DoubleVerifyVideoViewability, decorator: Google::Apis::DisplayvideoV1::DoubleVerifyVideoViewability::Representation
      
        end
      end
      
      class DoubleVerifyAppStarRating
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :avoid_insufficient_star_rating, as: 'avoidInsufficientStarRating'
          property :avoided_star_rating, as: 'avoidedStarRating'
        end
      end
      
      class DoubleVerifyBrandSafetyCategories
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :avoid_unknown_brand_safety_category, as: 'avoidUnknownBrandSafetyCategory'
          collection :avoided_high_severity_categories, as: 'avoidedHighSeverityCategories'
          collection :avoided_medium_severity_categories, as: 'avoidedMediumSeverityCategories'
        end
      end
      
      class DoubleVerifyDisplayViewability
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :iab, as: 'iab'
          property :viewable_during, as: 'viewableDuring'
        end
      end
      
      class DoubleVerifyFraudInvalidTraffic
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :avoid_insufficient_option, as: 'avoidInsufficientOption'
          property :avoided_fraud_option, as: 'avoidedFraudOption'
        end
      end
      
      class DoubleVerifyVideoViewability
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :player_impression_rate, as: 'playerImpressionRate'
          property :video_iab, as: 'videoIab'
          property :video_viewable_rate, as: 'videoViewableRate'
        end
      end
      
      class EditCustomerMatchMembersRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :added_contact_info_list, as: 'addedContactInfoList', class: Google::Apis::DisplayvideoV1::ContactInfoList, decorator: Google::Apis::DisplayvideoV1::ContactInfoList::Representation
      
          property :added_mobile_device_id_list, as: 'addedMobileDeviceIdList', class: Google::Apis::DisplayvideoV1::MobileDeviceIdList, decorator: Google::Apis::DisplayvideoV1::MobileDeviceIdList::Representation
      
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
        end
      end
      
      class EditCustomerMatchMembersResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :first_and_third_party_audience_id, :numeric_string => true, as: 'firstAndThirdPartyAudienceId'
        end
      end
      
      class Empty
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end
      
      class EnvironmentAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :environment, as: 'environment'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class EnvironmentTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :environment, as: 'environment'
        end
      end
      
      class ExchangeAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class ExchangeConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :enabled_exchanges, as: 'enabledExchanges', class: Google::Apis::DisplayvideoV1::ExchangeConfigEnabledExchange, decorator: Google::Apis::DisplayvideoV1::ExchangeConfigEnabledExchange::Representation
      
        end
      end
      
      class ExchangeConfigEnabledExchange
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :exchange, as: 'exchange'
          property :google_ad_manager_agency_id, as: 'googleAdManagerAgencyId'
          property :google_ad_manager_buyer_network_id, as: 'googleAdManagerBuyerNetworkId'
          property :seat_id, as: 'seatId'
        end
      end
      
      class ExchangeReviewStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :exchange, as: 'exchange'
          property :status, as: 'status'
        end
      end
      
      class ExchangeTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :exchange, as: 'exchange'
        end
      end
      
      class ExitEvent
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          property :reporting_name, as: 'reportingName'
          property :type, as: 'type'
          property :url, as: 'url'
        end
      end
      
      class FirstAndThirdPartyAudience
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :active_display_audience_size, :numeric_string => true, as: 'activeDisplayAudienceSize'
          property :app_id, as: 'appId'
          property :audience_source, as: 'audienceSource'
          property :audience_type, as: 'audienceType'
          property :contact_info_list, as: 'contactInfoList', class: Google::Apis::DisplayvideoV1::ContactInfoList, decorator: Google::Apis::DisplayvideoV1::ContactInfoList::Representation
      
          property :description, as: 'description'
          property :display_audience_size, :numeric_string => true, as: 'displayAudienceSize'
          property :display_desktop_audience_size, :numeric_string => true, as: 'displayDesktopAudienceSize'
          property :display_mobile_app_audience_size, :numeric_string => true, as: 'displayMobileAppAudienceSize'
          property :display_mobile_web_audience_size, :numeric_string => true, as: 'displayMobileWebAudienceSize'
          property :display_name, as: 'displayName'
          property :first_and_third_party_audience_id, :numeric_string => true, as: 'firstAndThirdPartyAudienceId'
          property :first_and_third_party_audience_type, as: 'firstAndThirdPartyAudienceType'
          property :gmail_audience_size, :numeric_string => true, as: 'gmailAudienceSize'
          property :membership_duration_days, :numeric_string => true, as: 'membershipDurationDays'
          property :mobile_device_id_list, as: 'mobileDeviceIdList', class: Google::Apis::DisplayvideoV1::MobileDeviceIdList, decorator: Google::Apis::DisplayvideoV1::MobileDeviceIdList::Representation
      
          property :name, as: 'name'
          property :youtube_audience_size, :numeric_string => true, as: 'youtubeAudienceSize'
        end
      end
      
      class FirstAndThirdPartyAudienceGroup
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :settings, as: 'settings', class: Google::Apis::DisplayvideoV1::FirstAndThirdPartyAudienceTargetingSetting, decorator: Google::Apis::DisplayvideoV1::FirstAndThirdPartyAudienceTargetingSetting::Representation
      
        end
      end
      
      class FirstAndThirdPartyAudienceTargetingSetting
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :first_and_third_party_audience_id, :numeric_string => true, as: 'firstAndThirdPartyAudienceId'
          property :recency, as: 'recency'
        end
      end
      
      class FixedBidStrategy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :bid_amount_micros, :numeric_string => true, as: 'bidAmountMicros'
        end
      end
      
      class FloodlightGroup
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :active_view_config, as: 'activeViewConfig', class: Google::Apis::DisplayvideoV1::ActiveViewVideoViewabilityMetricConfig, decorator: Google::Apis::DisplayvideoV1::ActiveViewVideoViewabilityMetricConfig::Representation
      
          hash :custom_variables, as: 'customVariables'
          property :display_name, as: 'displayName'
          property :floodlight_group_id, :numeric_string => true, as: 'floodlightGroupId'
          property :lookback_window, as: 'lookbackWindow', class: Google::Apis::DisplayvideoV1::LookbackWindow, decorator: Google::Apis::DisplayvideoV1::LookbackWindow::Representation
      
          property :name, as: 'name'
          property :web_tag_type, as: 'webTagType'
        end
      end
      
      class FrequencyCap
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :max_impressions, as: 'maxImpressions'
          property :time_unit, as: 'timeUnit'
          property :time_unit_count, as: 'timeUnitCount'
          property :unlimited, as: 'unlimited'
        end
      end
      
      class GenderAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :gender, as: 'gender'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class GenderTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :gender, as: 'gender'
        end
      end
      
      class GenerateDefaultLineItemRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :insertion_order_id, :numeric_string => true, as: 'insertionOrderId'
          property :line_item_type, as: 'lineItemType'
          property :mobile_app, as: 'mobileApp', class: Google::Apis::DisplayvideoV1::MobileApp, decorator: Google::Apis::DisplayvideoV1::MobileApp::Representation
      
        end
      end
      
      class GeoRegionAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :geo_region_type, as: 'geoRegionType'
          property :negative, as: 'negative'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class GeoRegionSearchTerms
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :geo_region_query, as: 'geoRegionQuery'
        end
      end
      
      class GeoRegionTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :geo_region_type, as: 'geoRegionType'
        end
      end
      
      class GoogleAudience
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :google_audience_id, :numeric_string => true, as: 'googleAudienceId'
          property :google_audience_type, as: 'googleAudienceType'
          property :name, as: 'name'
        end
      end
      
      class GoogleAudienceGroup
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :settings, as: 'settings', class: Google::Apis::DisplayvideoV1::GoogleAudienceTargetingSetting, decorator: Google::Apis::DisplayvideoV1::GoogleAudienceTargetingSetting::Representation
      
        end
      end
      
      class GoogleAudienceTargetingSetting
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :google_audience_id, :numeric_string => true, as: 'googleAudienceId'
        end
      end
      
      class GoogleBytestreamMedia
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :resource_name, as: 'resourceName'
        end
      end
      
      class HouseholdIncomeAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :household_income, as: 'householdIncome'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class HouseholdIncomeTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :household_income, as: 'householdIncome'
        end
      end
      
      class IdFilter
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :ad_group_ad_ids, as: 'adGroupAdIds'
          collection :ad_group_ids, as: 'adGroupIds'
          collection :campaign_ids, as: 'campaignIds'
          collection :insertion_order_ids, as: 'insertionOrderIds'
          collection :line_item_ids, as: 'lineItemIds'
          collection :media_product_ids, as: 'mediaProductIds'
        end
      end
      
      class InsertionOrder
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :bid_strategy, as: 'bidStrategy', class: Google::Apis::DisplayvideoV1::BiddingStrategy, decorator: Google::Apis::DisplayvideoV1::BiddingStrategy::Representation
      
          property :budget, as: 'budget', class: Google::Apis::DisplayvideoV1::InsertionOrderBudget, decorator: Google::Apis::DisplayvideoV1::InsertionOrderBudget::Representation
      
          property :campaign_id, :numeric_string => true, as: 'campaignId'
          property :display_name, as: 'displayName'
          property :entity_status, as: 'entityStatus'
          property :frequency_cap, as: 'frequencyCap', class: Google::Apis::DisplayvideoV1::FrequencyCap, decorator: Google::Apis::DisplayvideoV1::FrequencyCap::Representation
      
          property :insertion_order_id, :numeric_string => true, as: 'insertionOrderId'
          property :insertion_order_type, as: 'insertionOrderType'
          property :integration_details, as: 'integrationDetails', class: Google::Apis::DisplayvideoV1::IntegrationDetails, decorator: Google::Apis::DisplayvideoV1::IntegrationDetails::Representation
      
          property :name, as: 'name'
          property :pacing, as: 'pacing', class: Google::Apis::DisplayvideoV1::Pacing, decorator: Google::Apis::DisplayvideoV1::Pacing::Representation
      
          collection :partner_costs, as: 'partnerCosts', class: Google::Apis::DisplayvideoV1::PartnerCost, decorator: Google::Apis::DisplayvideoV1::PartnerCost::Representation
      
          property :performance_goal, as: 'performanceGoal', class: Google::Apis::DisplayvideoV1::PerformanceGoal, decorator: Google::Apis::DisplayvideoV1::PerformanceGoal::Representation
      
          property :reservation_type, as: 'reservationType'
          property :update_time, as: 'updateTime'
        end
      end
      
      class InsertionOrderBudget
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :automation_type, as: 'automationType'
          collection :budget_segments, as: 'budgetSegments', class: Google::Apis::DisplayvideoV1::InsertionOrderBudgetSegment, decorator: Google::Apis::DisplayvideoV1::InsertionOrderBudgetSegment::Representation
      
          property :budget_unit, as: 'budgetUnit'
        end
      end
      
      class InsertionOrderBudgetSegment
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :budget_amount_micros, :numeric_string => true, as: 'budgetAmountMicros'
          property :campaign_budget_id, :numeric_string => true, as: 'campaignBudgetId'
          property :date_range, as: 'dateRange', class: Google::Apis::DisplayvideoV1::DateRange, decorator: Google::Apis::DisplayvideoV1::DateRange::Representation
      
          property :description, as: 'description'
        end
      end
      
      class IntegralAdScience
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :custom_segment_id, as: 'customSegmentId'
          property :display_viewability, as: 'displayViewability'
          property :exclude_unrateable, as: 'excludeUnrateable'
          property :excluded_ad_fraud_risk, as: 'excludedAdFraudRisk'
          property :excluded_adult_risk, as: 'excludedAdultRisk'
          property :excluded_alcohol_risk, as: 'excludedAlcoholRisk'
          property :excluded_drugs_risk, as: 'excludedDrugsRisk'
          property :excluded_gambling_risk, as: 'excludedGamblingRisk'
          property :excluded_hate_speech_risk, as: 'excludedHateSpeechRisk'
          property :excluded_illegal_downloads_risk, as: 'excludedIllegalDownloadsRisk'
          property :excluded_offensive_language_risk, as: 'excludedOffensiveLanguageRisk'
          property :excluded_violence_risk, as: 'excludedViolenceRisk'
          property :traq_score_option, as: 'traqScoreOption'
          property :video_viewability, as: 'videoViewability'
        end
      end
      
      class IntegrationDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :details, as: 'details'
          property :integration_code, as: 'integrationCode'
        end
      end
      
      class InventorySource
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :commitment, as: 'commitment'
          collection :creative_configs, as: 'creativeConfigs', class: Google::Apis::DisplayvideoV1::CreativeConfig, decorator: Google::Apis::DisplayvideoV1::CreativeConfig::Representation
      
          property :deal_id, as: 'dealId'
          property :delivery_method, as: 'deliveryMethod'
          property :display_name, as: 'displayName'
          property :exchange, as: 'exchange'
          property :inventory_source_id, :numeric_string => true, as: 'inventorySourceId'
          property :inventory_source_type, as: 'inventorySourceType'
          property :name, as: 'name'
          property :publisher_name, as: 'publisherName'
          property :rate_details, as: 'rateDetails', class: Google::Apis::DisplayvideoV1::RateDetails, decorator: Google::Apis::DisplayvideoV1::RateDetails::Representation
      
          property :status, as: 'status', class: Google::Apis::DisplayvideoV1::InventorySourceStatus, decorator: Google::Apis::DisplayvideoV1::InventorySourceStatus::Representation
      
          property :time_range, as: 'timeRange', class: Google::Apis::DisplayvideoV1::TimeRange, decorator: Google::Apis::DisplayvideoV1::TimeRange::Representation
      
          property :update_time, as: 'updateTime'
        end
      end
      
      class InventorySourceAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :inventory_source_id, :numeric_string => true, as: 'inventorySourceId'
        end
      end
      
      class InventorySourceDisplayCreativeConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :creative_size, as: 'creativeSize', class: Google::Apis::DisplayvideoV1::Dimensions, decorator: Google::Apis::DisplayvideoV1::Dimensions::Representation
      
        end
      end
      
      class InventorySourceFilter
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :inventory_source_ids, as: 'inventorySourceIds'
        end
      end
      
      class InventorySourceGroup
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :inventory_source_group_id, :numeric_string => true, as: 'inventorySourceGroupId'
          property :name, as: 'name'
        end
      end
      
      class InventorySourceGroupAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :inventory_source_group_id, :numeric_string => true, as: 'inventorySourceGroupId'
        end
      end
      
      class InventorySourceStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :config_status, as: 'configStatus'
          property :entity_pause_reason, as: 'entityPauseReason'
          property :entity_status, as: 'entityStatus'
          property :seller_pause_reason, as: 'sellerPauseReason'
          property :seller_status, as: 'sellerStatus'
        end
      end
      
      class InventorySourceVideoCreativeConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :duration, as: 'duration'
        end
      end
      
      class Invoice
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :budget_invoice_grouping_id, as: 'budgetInvoiceGroupingId'
          collection :budget_summaries, as: 'budgetSummaries', class: Google::Apis::DisplayvideoV1::BudgetSummary, decorator: Google::Apis::DisplayvideoV1::BudgetSummary::Representation
      
          property :corrected_invoice_id, as: 'correctedInvoiceId'
          property :currency_code, as: 'currencyCode'
          property :display_name, as: 'displayName'
          property :due_date, as: 'dueDate', class: Google::Apis::DisplayvideoV1::Date, decorator: Google::Apis::DisplayvideoV1::Date::Representation
      
          property :invoice_id, as: 'invoiceId'
          property :invoice_type, as: 'invoiceType'
          property :issue_date, as: 'issueDate', class: Google::Apis::DisplayvideoV1::Date, decorator: Google::Apis::DisplayvideoV1::Date::Representation
      
          property :name, as: 'name'
          property :non_budget_micros, :numeric_string => true, as: 'nonBudgetMicros'
          property :payments_account_id, as: 'paymentsAccountId'
          property :payments_profile_id, as: 'paymentsProfileId'
          property :pdf_url, as: 'pdfUrl'
          property :purchase_order_number, as: 'purchaseOrderNumber'
          collection :replaced_invoice_ids, as: 'replacedInvoiceIds'
          property :service_date_range, as: 'serviceDateRange', class: Google::Apis::DisplayvideoV1::DateRange, decorator: Google::Apis::DisplayvideoV1::DateRange::Representation
      
          property :subtotal_amount_micros, :numeric_string => true, as: 'subtotalAmountMicros'
          property :total_amount_micros, :numeric_string => true, as: 'totalAmountMicros'
          property :total_tax_amount_micros, :numeric_string => true, as: 'totalTaxAmountMicros'
        end
      end
      
      class KeywordAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :keyword, as: 'keyword'
          property :negative, as: 'negative'
        end
      end
      
      class LanguageAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :negative, as: 'negative'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class LanguageTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
        end
      end
      
      class LineItem
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :bid_strategy, as: 'bidStrategy', class: Google::Apis::DisplayvideoV1::BiddingStrategy, decorator: Google::Apis::DisplayvideoV1::BiddingStrategy::Representation
      
          property :budget, as: 'budget', class: Google::Apis::DisplayvideoV1::LineItemBudget, decorator: Google::Apis::DisplayvideoV1::LineItemBudget::Representation
      
          property :campaign_id, :numeric_string => true, as: 'campaignId'
          property :conversion_counting, as: 'conversionCounting', class: Google::Apis::DisplayvideoV1::ConversionCountingConfig, decorator: Google::Apis::DisplayvideoV1::ConversionCountingConfig::Representation
      
          collection :creative_ids, as: 'creativeIds'
          property :display_name, as: 'displayName'
          property :entity_status, as: 'entityStatus'
          property :exclude_new_exchanges, as: 'excludeNewExchanges'
          property :flight, as: 'flight', class: Google::Apis::DisplayvideoV1::LineItemFlight, decorator: Google::Apis::DisplayvideoV1::LineItemFlight::Representation
      
          property :frequency_cap, as: 'frequencyCap', class: Google::Apis::DisplayvideoV1::FrequencyCap, decorator: Google::Apis::DisplayvideoV1::FrequencyCap::Representation
      
          property :insertion_order_id, :numeric_string => true, as: 'insertionOrderId'
          property :integration_details, as: 'integrationDetails', class: Google::Apis::DisplayvideoV1::IntegrationDetails, decorator: Google::Apis::DisplayvideoV1::IntegrationDetails::Representation
      
          collection :inventory_source_ids, as: 'inventorySourceIds'
          property :line_item_id, :numeric_string => true, as: 'lineItemId'
          property :line_item_type, as: 'lineItemType'
          property :mobile_app, as: 'mobileApp', class: Google::Apis::DisplayvideoV1::MobileApp, decorator: Google::Apis::DisplayvideoV1::MobileApp::Representation
      
          property :name, as: 'name'
          property :pacing, as: 'pacing', class: Google::Apis::DisplayvideoV1::Pacing, decorator: Google::Apis::DisplayvideoV1::Pacing::Representation
      
          collection :partner_costs, as: 'partnerCosts', class: Google::Apis::DisplayvideoV1::PartnerCost, decorator: Google::Apis::DisplayvideoV1::PartnerCost::Representation
      
          property :partner_revenue_model, as: 'partnerRevenueModel', class: Google::Apis::DisplayvideoV1::PartnerRevenueModel, decorator: Google::Apis::DisplayvideoV1::PartnerRevenueModel::Representation
      
          property :reservation_type, as: 'reservationType'
          property :targeting_expansion, as: 'targetingExpansion', class: Google::Apis::DisplayvideoV1::TargetingExpansionConfig, decorator: Google::Apis::DisplayvideoV1::TargetingExpansionConfig::Representation
      
          property :update_time, as: 'updateTime'
          collection :warning_messages, as: 'warningMessages'
        end
      end
      
      class LineItemBudget
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :budget_allocation_type, as: 'budgetAllocationType'
          property :budget_unit, as: 'budgetUnit'
          property :max_amount, :numeric_string => true, as: 'maxAmount'
        end
      end
      
      class LineItemFlight
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :date_range, as: 'dateRange', class: Google::Apis::DisplayvideoV1::DateRange, decorator: Google::Apis::DisplayvideoV1::DateRange::Representation
      
          property :flight_date_type, as: 'flightDateType'
          property :trigger_id, :numeric_string => true, as: 'triggerId'
        end
      end
      
      class ListAdvertiserAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListAdvertisersResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :advertisers, as: 'advertisers', class: Google::Apis::DisplayvideoV1::Advertiser, decorator: Google::Apis::DisplayvideoV1::Advertiser::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListAssignedInventorySourcesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_inventory_sources, as: 'assignedInventorySources', class: Google::Apis::DisplayvideoV1::AssignedInventorySource, decorator: Google::Apis::DisplayvideoV1::AssignedInventorySource::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListAssignedLocationsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_locations, as: 'assignedLocations', class: Google::Apis::DisplayvideoV1::AssignedLocation, decorator: Google::Apis::DisplayvideoV1::AssignedLocation::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListCampaignAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListCampaignsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :campaigns, as: 'campaigns', class: Google::Apis::DisplayvideoV1::Campaign, decorator: Google::Apis::DisplayvideoV1::Campaign::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListChannelsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :channels, as: 'channels', class: Google::Apis::DisplayvideoV1::Channel, decorator: Google::Apis::DisplayvideoV1::Channel::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListCombinedAudiencesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :combined_audiences, as: 'combinedAudiences', class: Google::Apis::DisplayvideoV1::CombinedAudience, decorator: Google::Apis::DisplayvideoV1::CombinedAudience::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListCreativesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :creatives, as: 'creatives', class: Google::Apis::DisplayvideoV1::Creative, decorator: Google::Apis::DisplayvideoV1::Creative::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListCustomBiddingAlgorithmsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :custom_bidding_algorithms, as: 'customBiddingAlgorithms', class: Google::Apis::DisplayvideoV1::CustomBiddingAlgorithm, decorator: Google::Apis::DisplayvideoV1::CustomBiddingAlgorithm::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListCustomBiddingScriptsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :custom_bidding_scripts, as: 'customBiddingScripts', class: Google::Apis::DisplayvideoV1::CustomBiddingScript, decorator: Google::Apis::DisplayvideoV1::CustomBiddingScript::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListCustomListsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :custom_lists, as: 'customLists', class: Google::Apis::DisplayvideoV1::CustomList, decorator: Google::Apis::DisplayvideoV1::CustomList::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListFirstAndThirdPartyAudiencesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :first_and_third_party_audiences, as: 'firstAndThirdPartyAudiences', class: Google::Apis::DisplayvideoV1::FirstAndThirdPartyAudience, decorator: Google::Apis::DisplayvideoV1::FirstAndThirdPartyAudience::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListGoogleAudiencesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :google_audiences, as: 'googleAudiences', class: Google::Apis::DisplayvideoV1::GoogleAudience, decorator: Google::Apis::DisplayvideoV1::GoogleAudience::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListInsertionOrderAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListInsertionOrdersResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :insertion_orders, as: 'insertionOrders', class: Google::Apis::DisplayvideoV1::InsertionOrder, decorator: Google::Apis::DisplayvideoV1::InsertionOrder::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListInventorySourceGroupsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :inventory_source_groups, as: 'inventorySourceGroups', class: Google::Apis::DisplayvideoV1::InventorySourceGroup, decorator: Google::Apis::DisplayvideoV1::InventorySourceGroup::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListInventorySourcesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :inventory_sources, as: 'inventorySources', class: Google::Apis::DisplayvideoV1::InventorySource, decorator: Google::Apis::DisplayvideoV1::InventorySource::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListInvoicesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :invoices, as: 'invoices', class: Google::Apis::DisplayvideoV1::Invoice, decorator: Google::Apis::DisplayvideoV1::Invoice::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListLineItemAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListLineItemsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :line_items, as: 'lineItems', class: Google::Apis::DisplayvideoV1::LineItem, decorator: Google::Apis::DisplayvideoV1::LineItem::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListLocationListsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :location_lists, as: 'locationLists', class: Google::Apis::DisplayvideoV1::LocationList, decorator: Google::Apis::DisplayvideoV1::LocationList::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListManualTriggersResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :manual_triggers, as: 'manualTriggers', class: Google::Apis::DisplayvideoV1::ManualTrigger, decorator: Google::Apis::DisplayvideoV1::ManualTrigger::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListNegativeKeywordListsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :negative_keyword_lists, as: 'negativeKeywordLists', class: Google::Apis::DisplayvideoV1::NegativeKeywordList, decorator: Google::Apis::DisplayvideoV1::NegativeKeywordList::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListNegativeKeywordsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :negative_keywords, as: 'negativeKeywords', class: Google::Apis::DisplayvideoV1::NegativeKeyword, decorator: Google::Apis::DisplayvideoV1::NegativeKeyword::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListPartnerAssignedTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
      
          property :next_page_token, as: 'nextPageToken'
        end
      end
      
      class ListPartnersResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :partners, as: 'partners', class: Google::Apis::DisplayvideoV1::Partner, decorator: Google::Apis::DisplayvideoV1::Partner::Representation
      
        end
      end
      
      class ListSitesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :sites, as: 'sites', class: Google::Apis::DisplayvideoV1::Site, decorator: Google::Apis::DisplayvideoV1::Site::Representation
      
        end
      end
      
      class ListTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :targeting_options, as: 'targetingOptions', class: Google::Apis::DisplayvideoV1::TargetingOption, decorator: Google::Apis::DisplayvideoV1::TargetingOption::Representation
      
        end
      end
      
      class ListUsersResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :users, as: 'users', class: Google::Apis::DisplayvideoV1::User, decorator: Google::Apis::DisplayvideoV1::User::Representation
      
        end
      end
      
      class LocationList
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :display_name, as: 'displayName'
          property :location_list_id, :numeric_string => true, as: 'locationListId'
          property :location_type, as: 'locationType'
          property :name, as: 'name'
        end
      end
      
      class LookbackWindow
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :click_days, as: 'clickDays'
          property :impression_days, as: 'impressionDays'
        end
      end
      
      class LookupInvoiceCurrencyResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :currency_code, as: 'currencyCode'
        end
      end
      
      class ManualTrigger
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :activation_duration_minutes, :numeric_string => true, as: 'activationDurationMinutes'
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :display_name, as: 'displayName'
          property :latest_activation_time, as: 'latestActivationTime'
          property :name, as: 'name'
          property :state, as: 'state'
          property :trigger_id, :numeric_string => true, as: 'triggerId'
        end
      end
      
      class MaximizeSpendBidStrategy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :custom_bidding_algorithm_id, :numeric_string => true, as: 'customBiddingAlgorithmId'
          property :max_average_cpm_bid_amount_micros, :numeric_string => true, as: 'maxAverageCpmBidAmountMicros'
          property :performance_goal_type, as: 'performanceGoalType'
          property :raise_bid_for_deals, as: 'raiseBidForDeals'
        end
      end
      
      class MeasurementConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :dv360_to_cm_cost_reporting_enabled, as: 'dv360ToCmCostReportingEnabled'
          property :dv360_to_cm_data_sharing_enabled, as: 'dv360ToCmDataSharingEnabled'
        end
      end
      
      class MobileApp
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :app_id, as: 'appId'
          property :display_name, as: 'displayName'
          property :platform, as: 'platform'
          property :publisher, as: 'publisher'
        end
      end
      
      class MobileDeviceIdList
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :mobile_device_ids, as: 'mobileDeviceIds'
        end
      end
      
      class Money
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :currency_code, as: 'currencyCode'
          property :nanos, as: 'nanos'
          property :units, :numeric_string => true, as: 'units'
        end
      end
      
      class NativeContentPositionAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :content_position, as: 'contentPosition'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class NativeContentPositionTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :content_position, as: 'contentPosition'
        end
      end
      
      class NegativeKeyword
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :keyword_value, as: 'keywordValue'
          property :name, as: 'name'
        end
      end
      
      class NegativeKeywordList
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :display_name, as: 'displayName'
          property :name, as: 'name'
          property :negative_keyword_list_id, :numeric_string => true, as: 'negativeKeywordListId'
          property :targeted_line_item_count, :numeric_string => true, as: 'targetedLineItemCount'
        end
      end
      
      class NegativeKeywordListAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :negative_keyword_list_id, :numeric_string => true, as: 'negativeKeywordListId'
        end
      end
      
      class ObaIcon
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :click_tracking_url, as: 'clickTrackingUrl'
          property :dimensions, as: 'dimensions', class: Google::Apis::DisplayvideoV1::Dimensions, decorator: Google::Apis::DisplayvideoV1::Dimensions::Representation
      
          property :landing_page_url, as: 'landingPageUrl'
          property :position, as: 'position'
          property :program, as: 'program'
          property :resource_mime_type, as: 'resourceMimeType'
          property :resource_url, as: 'resourceUrl'
          property :view_tracking_url, as: 'viewTrackingUrl'
        end
      end
      
      class OmidAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :omid, as: 'omid'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class OmidTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :omid, as: 'omid'
        end
      end
      
      class OnScreenPositionAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :ad_type, as: 'adType'
          property :on_screen_position, as: 'onScreenPosition'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class OnScreenPositionTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :on_screen_position, as: 'onScreenPosition'
        end
      end
      
      class OperatingSystemAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :negative, as: 'negative'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class OperatingSystemTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
        end
      end
      
      class Operation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :done, as: 'done'
          property :error, as: 'error', class: Google::Apis::DisplayvideoV1::Status, decorator: Google::Apis::DisplayvideoV1::Status::Representation
      
          hash :metadata, as: 'metadata'
          property :name, as: 'name'
          hash :response, as: 'response'
        end
      end
      
      class Pacing
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :daily_max_impressions, :numeric_string => true, as: 'dailyMaxImpressions'
          property :daily_max_micros, :numeric_string => true, as: 'dailyMaxMicros'
          property :pacing_period, as: 'pacingPeriod'
          property :pacing_type, as: 'pacingType'
        end
      end
      
      class ParentEntityFilter
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :file_type, as: 'fileType'
          collection :filter_ids, as: 'filterIds'
          property :filter_type, as: 'filterType'
        end
      end
      
      class ParentalStatusAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :parental_status, as: 'parentalStatus'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class ParentalStatusTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :parental_status, as: 'parentalStatus'
        end
      end
      
      class Partner
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :ad_server_config, as: 'adServerConfig', class: Google::Apis::DisplayvideoV1::PartnerAdServerConfig, decorator: Google::Apis::DisplayvideoV1::PartnerAdServerConfig::Representation
      
          property :data_access_config, as: 'dataAccessConfig', class: Google::Apis::DisplayvideoV1::PartnerDataAccessConfig, decorator: Google::Apis::DisplayvideoV1::PartnerDataAccessConfig::Representation
      
          property :display_name, as: 'displayName'
          property :entity_status, as: 'entityStatus'
          property :exchange_config, as: 'exchangeConfig', class: Google::Apis::DisplayvideoV1::ExchangeConfig, decorator: Google::Apis::DisplayvideoV1::ExchangeConfig::Representation
      
          property :general_config, as: 'generalConfig', class: Google::Apis::DisplayvideoV1::PartnerGeneralConfig, decorator: Google::Apis::DisplayvideoV1::PartnerGeneralConfig::Representation
      
          property :name, as: 'name'
          property :partner_id, :numeric_string => true, as: 'partnerId'
          property :update_time, as: 'updateTime'
        end
      end
      
      class PartnerAdServerConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :measurement_config, as: 'measurementConfig', class: Google::Apis::DisplayvideoV1::MeasurementConfig, decorator: Google::Apis::DisplayvideoV1::MeasurementConfig::Representation
      
        end
      end
      
      class PartnerCost
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cost_type, as: 'costType'
          property :fee_amount, :numeric_string => true, as: 'feeAmount'
          property :fee_percentage_millis, :numeric_string => true, as: 'feePercentageMillis'
          property :fee_type, as: 'feeType'
          property :invoice_type, as: 'invoiceType'
        end
      end
      
      class PartnerDataAccessConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :sdf_config, as: 'sdfConfig', class: Google::Apis::DisplayvideoV1::SdfConfig, decorator: Google::Apis::DisplayvideoV1::SdfConfig::Representation
      
        end
      end
      
      class PartnerGeneralConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :currency_code, as: 'currencyCode'
          property :time_zone, as: 'timeZone'
        end
      end
      
      class PartnerRevenueModel
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :markup_amount, :numeric_string => true, as: 'markupAmount'
          property :markup_type, as: 'markupType'
        end
      end
      
      class PerformanceGoal
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :performance_goal_amount_micros, :numeric_string => true, as: 'performanceGoalAmountMicros'
          property :performance_goal_percentage_micros, :numeric_string => true, as: 'performanceGoalPercentageMicros'
          property :performance_goal_string, as: 'performanceGoalString'
          property :performance_goal_type, as: 'performanceGoalType'
        end
      end
      
      class PerformanceGoalBidStrategy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :custom_bidding_algorithm_id, :numeric_string => true, as: 'customBiddingAlgorithmId'
          property :max_average_cpm_bid_amount_micros, :numeric_string => true, as: 'maxAverageCpmBidAmountMicros'
          property :performance_goal_amount_micros, :numeric_string => true, as: 'performanceGoalAmountMicros'
          property :performance_goal_type, as: 'performanceGoalType'
        end
      end
      
      class PoiAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :latitude, as: 'latitude'
          property :longitude, as: 'longitude'
          property :proximity_radius_amount, as: 'proximityRadiusAmount'
          property :proximity_radius_unit, as: 'proximityRadiusUnit'
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class PoiSearchTerms
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :poi_query, as: 'poiQuery'
        end
      end
      
      class PoiTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
          property :latitude, as: 'latitude'
          property :longitude, as: 'longitude'
        end
      end
      
      class PrismaConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :prisma_cpe_code, as: 'prismaCpeCode', class: Google::Apis::DisplayvideoV1::PrismaCpeCode, decorator: Google::Apis::DisplayvideoV1::PrismaCpeCode::Representation
      
          property :prisma_type, as: 'prismaType'
          property :supplier, as: 'supplier'
        end
      end
      
      class PrismaCpeCode
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :prisma_client_code, as: 'prismaClientCode'
          property :prisma_estimate_code, as: 'prismaEstimateCode'
          property :prisma_product_code, as: 'prismaProductCode'
        end
      end
      
      class ProximityLocationListAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :proximity_location_list_id, :numeric_string => true, as: 'proximityLocationListId'
          property :proximity_radius_range, as: 'proximityRadiusRange'
        end
      end
      
      class PublisherReviewStatus
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :publisher_name, as: 'publisherName'
          property :status, as: 'status'
        end
      end
      
      class RateDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :inventory_source_rate_type, as: 'inventorySourceRateType'
          property :minimum_spend, as: 'minimumSpend', class: Google::Apis::DisplayvideoV1::Money, decorator: Google::Apis::DisplayvideoV1::Money::Representation
      
          property :rate, as: 'rate', class: Google::Apis::DisplayvideoV1::Money, decorator: Google::Apis::DisplayvideoV1::Money::Representation
      
          property :units_purchased, :numeric_string => true, as: 'unitsPurchased'
        end
      end
      
      class RegionalLocationListAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :negative, as: 'negative'
          property :regional_location_list_id, :numeric_string => true, as: 'regionalLocationListId'
        end
      end
      
      class ReplaceNegativeKeywordsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :new_negative_keywords, as: 'newNegativeKeywords', class: Google::Apis::DisplayvideoV1::NegativeKeyword, decorator: Google::Apis::DisplayvideoV1::NegativeKeyword::Representation
      
        end
      end
      
      class ReplaceNegativeKeywordsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :negative_keywords, as: 'negativeKeywords', class: Google::Apis::DisplayvideoV1::NegativeKeyword, decorator: Google::Apis::DisplayvideoV1::NegativeKeyword::Representation
      
        end
      end
      
      class ReplaceSitesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          collection :new_sites, as: 'newSites', class: Google::Apis::DisplayvideoV1::Site, decorator: Google::Apis::DisplayvideoV1::Site::Representation
      
          property :partner_id, :numeric_string => true, as: 'partnerId'
        end
      end
      
      class ReplaceSitesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :sites, as: 'sites', class: Google::Apis::DisplayvideoV1::Site, decorator: Google::Apis::DisplayvideoV1::Site::Representation
      
        end
      end
      
      class ReviewStatusInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :approval_status, as: 'approvalStatus'
          property :content_and_policy_review_status, as: 'contentAndPolicyReviewStatus'
          property :creative_and_landing_page_review_status, as: 'creativeAndLandingPageReviewStatus'
          collection :exchange_review_statuses, as: 'exchangeReviewStatuses', class: Google::Apis::DisplayvideoV1::ExchangeReviewStatus, decorator: Google::Apis::DisplayvideoV1::ExchangeReviewStatus::Representation
      
          collection :publisher_review_statuses, as: 'publisherReviewStatuses', class: Google::Apis::DisplayvideoV1::PublisherReviewStatus, decorator: Google::Apis::DisplayvideoV1::PublisherReviewStatus::Representation
      
        end
      end
      
      class ScriptError
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :column, :numeric_string => true, as: 'column'
          property :error_code, as: 'errorCode'
          property :error_message, as: 'errorMessage'
          property :line, :numeric_string => true, as: 'line'
        end
      end
      
      class SdfConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :admin_email, as: 'adminEmail'
          property :version, as: 'version'
        end
      end
      
      class SdfDownloadTask
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :resource_name, as: 'resourceName'
        end
      end
      
      class SdfDownloadTaskMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :create_time, as: 'createTime'
          property :end_time, as: 'endTime'
          property :version, as: 'version'
        end
      end
      
      class SearchTargetingOptionsRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :advertiser_id, :numeric_string => true, as: 'advertiserId'
          property :business_chain_search_terms, as: 'businessChainSearchTerms', class: Google::Apis::DisplayvideoV1::BusinessChainSearchTerms, decorator: Google::Apis::DisplayvideoV1::BusinessChainSearchTerms::Representation
      
          property :geo_region_search_terms, as: 'geoRegionSearchTerms', class: Google::Apis::DisplayvideoV1::GeoRegionSearchTerms, decorator: Google::Apis::DisplayvideoV1::GeoRegionSearchTerms::Representation
      
          property :page_size, as: 'pageSize'
          property :page_token, as: 'pageToken'
          property :poi_search_terms, as: 'poiSearchTerms', class: Google::Apis::DisplayvideoV1::PoiSearchTerms, decorator: Google::Apis::DisplayvideoV1::PoiSearchTerms::Representation
      
        end
      end
      
      class SearchTargetingOptionsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :targeting_options, as: 'targetingOptions', class: Google::Apis::DisplayvideoV1::TargetingOption, decorator: Google::Apis::DisplayvideoV1::TargetingOption::Representation
      
        end
      end
      
      class SensitiveCategoryAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :excluded_targeting_option_id, as: 'excludedTargetingOptionId'
          property :sensitive_category, as: 'sensitiveCategory'
        end
      end
      
      class SensitiveCategoryTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :sensitive_category, as: 'sensitiveCategory'
        end
      end
      
      class Site
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          property :url_or_app_id, as: 'urlOrAppId'
        end
      end
      
      class Status
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :code, as: 'code'
          collection :details, as: 'details'
          property :message, as: 'message'
        end
      end
      
      class SubExchangeAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :targeting_option_id, as: 'targetingOptionId'
        end
      end
      
      class SubExchangeTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :display_name, as: 'displayName'
        end
      end
      
      class TargetingExpansionConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :exclude_first_party_audience, as: 'excludeFirstPartyAudience'
          property :targeting_expansion_level, as: 'targetingExpansionLevel'
        end
      end
      
      class TargetingOption
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :age_range_details, as: 'ageRangeDetails', class: Google::Apis::DisplayvideoV1::AgeRangeTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AgeRangeTargetingOptionDetails::Representation
      
          property :app_category_details, as: 'appCategoryDetails', class: Google::Apis::DisplayvideoV1::AppCategoryTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AppCategoryTargetingOptionDetails::Representation
      
          property :audio_content_type_details, as: 'audioContentTypeDetails', class: Google::Apis::DisplayvideoV1::AudioContentTypeTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AudioContentTypeTargetingOptionDetails::Representation
      
          property :authorized_seller_status_details, as: 'authorizedSellerStatusDetails', class: Google::Apis::DisplayvideoV1::AuthorizedSellerStatusTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::AuthorizedSellerStatusTargetingOptionDetails::Representation
      
          property :browser_details, as: 'browserDetails', class: Google::Apis::DisplayvideoV1::BrowserTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::BrowserTargetingOptionDetails::Representation
      
          property :business_chain_details, as: 'businessChainDetails', class: Google::Apis::DisplayvideoV1::BusinessChainTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::BusinessChainTargetingOptionDetails::Representation
      
          property :carrier_and_isp_details, as: 'carrierAndIspDetails', class: Google::Apis::DisplayvideoV1::CarrierAndIspTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::CarrierAndIspTargetingOptionDetails::Representation
      
          property :category_details, as: 'categoryDetails', class: Google::Apis::DisplayvideoV1::CategoryTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::CategoryTargetingOptionDetails::Representation
      
          property :content_instream_position_details, as: 'contentInstreamPositionDetails', class: Google::Apis::DisplayvideoV1::ContentInstreamPositionTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ContentInstreamPositionTargetingOptionDetails::Representation
      
          property :content_outstream_position_details, as: 'contentOutstreamPositionDetails', class: Google::Apis::DisplayvideoV1::ContentOutstreamPositionTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ContentOutstreamPositionTargetingOptionDetails::Representation
      
          property :device_make_model_details, as: 'deviceMakeModelDetails', class: Google::Apis::DisplayvideoV1::DeviceMakeModelTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::DeviceMakeModelTargetingOptionDetails::Representation
      
          property :device_type_details, as: 'deviceTypeDetails', class: Google::Apis::DisplayvideoV1::DeviceTypeTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::DeviceTypeTargetingOptionDetails::Representation
      
          property :digital_content_label_details, as: 'digitalContentLabelDetails', class: Google::Apis::DisplayvideoV1::DigitalContentLabelTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::DigitalContentLabelTargetingOptionDetails::Representation
      
          property :environment_details, as: 'environmentDetails', class: Google::Apis::DisplayvideoV1::EnvironmentTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::EnvironmentTargetingOptionDetails::Representation
      
          property :exchange_details, as: 'exchangeDetails', class: Google::Apis::DisplayvideoV1::ExchangeTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ExchangeTargetingOptionDetails::Representation
      
          property :gender_details, as: 'genderDetails', class: Google::Apis::DisplayvideoV1::GenderTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::GenderTargetingOptionDetails::Representation
      
          property :geo_region_details, as: 'geoRegionDetails', class: Google::Apis::DisplayvideoV1::GeoRegionTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::GeoRegionTargetingOptionDetails::Representation
      
          property :household_income_details, as: 'householdIncomeDetails', class: Google::Apis::DisplayvideoV1::HouseholdIncomeTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::HouseholdIncomeTargetingOptionDetails::Representation
      
          property :language_details, as: 'languageDetails', class: Google::Apis::DisplayvideoV1::LanguageTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::LanguageTargetingOptionDetails::Representation
      
          property :name, as: 'name'
          property :native_content_position_details, as: 'nativeContentPositionDetails', class: Google::Apis::DisplayvideoV1::NativeContentPositionTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::NativeContentPositionTargetingOptionDetails::Representation
      
          property :omid_details, as: 'omidDetails', class: Google::Apis::DisplayvideoV1::OmidTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::OmidTargetingOptionDetails::Representation
      
          property :on_screen_position_details, as: 'onScreenPositionDetails', class: Google::Apis::DisplayvideoV1::OnScreenPositionTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::OnScreenPositionTargetingOptionDetails::Representation
      
          property :operating_system_details, as: 'operatingSystemDetails', class: Google::Apis::DisplayvideoV1::OperatingSystemTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::OperatingSystemTargetingOptionDetails::Representation
      
          property :parental_status_details, as: 'parentalStatusDetails', class: Google::Apis::DisplayvideoV1::ParentalStatusTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ParentalStatusTargetingOptionDetails::Representation
      
          property :poi_details, as: 'poiDetails', class: Google::Apis::DisplayvideoV1::PoiTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::PoiTargetingOptionDetails::Representation
      
          property :sensitive_category_details, as: 'sensitiveCategoryDetails', class: Google::Apis::DisplayvideoV1::SensitiveCategoryTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::SensitiveCategoryTargetingOptionDetails::Representation
      
          property :sub_exchange_details, as: 'subExchangeDetails', class: Google::Apis::DisplayvideoV1::SubExchangeTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::SubExchangeTargetingOptionDetails::Representation
      
          property :targeting_option_id, as: 'targetingOptionId'
          property :targeting_type, as: 'targetingType'
          property :user_rewarded_content_details, as: 'userRewardedContentDetails', class: Google::Apis::DisplayvideoV1::UserRewardedContentTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::UserRewardedContentTargetingOptionDetails::Representation
      
          property :video_player_size_details, as: 'videoPlayerSizeDetails', class: Google::Apis::DisplayvideoV1::VideoPlayerSizeTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::VideoPlayerSizeTargetingOptionDetails::Representation
      
          property :viewability_details, as: 'viewabilityDetails', class: Google::Apis::DisplayvideoV1::ViewabilityTargetingOptionDetails, decorator: Google::Apis::DisplayvideoV1::ViewabilityTargetingOptionDetails::Representation
      
        end
      end
      
      class ThirdPartyOnlyConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :pixel_order_id_reporting_enabled, as: 'pixelOrderIdReportingEnabled'
        end
      end
      
      class ThirdPartyUrl
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :type, as: 'type'
          property :url, as: 'url'
        end
      end
      
      class ThirdPartyVerifierAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :adloox, as: 'adloox', class: Google::Apis::DisplayvideoV1::Adloox, decorator: Google::Apis::DisplayvideoV1::Adloox::Representation
      
          property :double_verify, as: 'doubleVerify', class: Google::Apis::DisplayvideoV1::DoubleVerify, decorator: Google::Apis::DisplayvideoV1::DoubleVerify::Representation
      
          property :integral_ad_science, as: 'integralAdScience', class: Google::Apis::DisplayvideoV1::IntegralAdScience, decorator: Google::Apis::DisplayvideoV1::IntegralAdScience::Representation
      
        end
      end
      
      class TimeRange
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :end_time, as: 'endTime'
          property :start_time, as: 'startTime'
        end
      end
      
      class TimerEvent
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          property :reporting_name, as: 'reportingName'
        end
      end
      
      class TrackingFloodlightActivityConfig
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :floodlight_activity_id, :numeric_string => true, as: 'floodlightActivityId'
          property :post_click_lookback_window_days, as: 'postClickLookbackWindowDays'
          property :post_view_lookback_window_days, as: 'postViewLookbackWindowDays'
        end
      end
      
      class Transcode
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :audio_bit_rate_kbps, :numeric_string => true, as: 'audioBitRateKbps'
          property :audio_sample_rate_hz, :numeric_string => true, as: 'audioSampleRateHz'
          property :bit_rate_kbps, :numeric_string => true, as: 'bitRateKbps'
          property :dimensions, as: 'dimensions', class: Google::Apis::DisplayvideoV1::Dimensions, decorator: Google::Apis::DisplayvideoV1::Dimensions::Representation
      
          property :file_size_bytes, :numeric_string => true, as: 'fileSizeBytes'
          property :frame_rate, as: 'frameRate'
          property :mime_type, as: 'mimeType'
          property :name, as: 'name'
          property :transcoded, as: 'transcoded'
        end
      end
      
      class UniversalAdId
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :id, as: 'id'
          property :registry, as: 'registry'
        end
      end
      
      class UrlAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :negative, as: 'negative'
          property :url, as: 'url'
        end
      end
      
      class User
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :assigned_user_roles, as: 'assignedUserRoles', class: Google::Apis::DisplayvideoV1::AssignedUserRole, decorator: Google::Apis::DisplayvideoV1::AssignedUserRole::Representation
      
          property :display_name, as: 'displayName'
          property :email, as: 'email'
          property :name, as: 'name'
          property :user_id, :numeric_string => true, as: 'userId'
        end
      end
      
      class UserRewardedContentAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :targeting_option_id, as: 'targetingOptionId'
          property :user_rewarded_content, as: 'userRewardedContent'
        end
      end
      
      class UserRewardedContentTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :user_rewarded_content, as: 'userRewardedContent'
        end
      end
      
      class VideoPlayerSizeAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :targeting_option_id, as: 'targetingOptionId'
          property :video_player_size, as: 'videoPlayerSize'
        end
      end
      
      class VideoPlayerSizeTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :video_player_size, as: 'videoPlayerSize'
        end
      end
      
      class ViewabilityAssignedTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :targeting_option_id, as: 'targetingOptionId'
          property :viewability, as: 'viewability'
        end
      end
      
      class ViewabilityTargetingOptionDetails
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :viewability, as: 'viewability'
        end
      end
    end
  end
end
