google-apis-displayvideo_v4 0.11.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
| @@ -73,6 +73,49 @@ module Google | |
| 73 73 | 
             
                    end
         | 
| 74 74 | 
             
                  end
         | 
| 75 75 |  | 
| 76 | 
            +
                  # A single ad asset. Next ID: 6
         | 
| 77 | 
            +
                  class AdAsset
         | 
| 78 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 79 | 
            +
                  
         | 
| 80 | 
            +
                    # Output only. Asset ID of the ad asset.
         | 
| 81 | 
            +
                    # Corresponds to the JSON property `adAssetId`
         | 
| 82 | 
            +
                    # @return [Fixnum]
         | 
| 83 | 
            +
                    attr_accessor :ad_asset_id
         | 
| 84 | 
            +
                  
         | 
| 85 | 
            +
                    # Required. The type of the ad asset.
         | 
| 86 | 
            +
                    # Corresponds to the JSON property `adAssetType`
         | 
| 87 | 
            +
                    # @return [String]
         | 
| 88 | 
            +
                    attr_accessor :ad_asset_type
         | 
| 89 | 
            +
                  
         | 
| 90 | 
            +
                    # Output only. The entity status of the ad asset.
         | 
| 91 | 
            +
                    # Corresponds to the JSON property `entityStatus`
         | 
| 92 | 
            +
                    # @return [String]
         | 
| 93 | 
            +
                    attr_accessor :entity_status
         | 
| 94 | 
            +
                  
         | 
| 95 | 
            +
                    # Identifier. The resource name of the ad asset.
         | 
| 96 | 
            +
                    # Corresponds to the JSON property `name`
         | 
| 97 | 
            +
                    # @return [String]
         | 
| 98 | 
            +
                    attr_accessor :name
         | 
| 99 | 
            +
                  
         | 
| 100 | 
            +
                    # The youtube video asset data of the ad asset.
         | 
| 101 | 
            +
                    # Corresponds to the JSON property `youtubeVideoAsset`
         | 
| 102 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::YoutubeVideoAsset]
         | 
| 103 | 
            +
                    attr_accessor :youtube_video_asset
         | 
| 104 | 
            +
                  
         | 
| 105 | 
            +
                    def initialize(**args)
         | 
| 106 | 
            +
                       update!(**args)
         | 
| 107 | 
            +
                    end
         | 
| 108 | 
            +
                  
         | 
| 109 | 
            +
                    # Update properties of this object
         | 
| 110 | 
            +
                    def update!(**args)
         | 
| 111 | 
            +
                      @ad_asset_id = args[:ad_asset_id] if args.key?(:ad_asset_id)
         | 
| 112 | 
            +
                      @ad_asset_type = args[:ad_asset_type] if args.key?(:ad_asset_type)
         | 
| 113 | 
            +
                      @entity_status = args[:entity_status] if args.key?(:entity_status)
         | 
| 114 | 
            +
                      @name = args[:name] if args.key?(:name)
         | 
| 115 | 
            +
                      @youtube_video_asset = args[:youtube_video_asset] if args.key?(:youtube_video_asset)
         | 
| 116 | 
            +
                    end
         | 
| 117 | 
            +
                  end
         | 
| 118 | 
            +
                  
         | 
| 76 119 | 
             
                  # A single ad group associated with a line item.
         | 
| 77 120 | 
             
                  class AdGroup
         | 
| 78 121 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -164,6 +207,11 @@ module Google | |
| 164 207 | 
             
                    # @return [Fixnum]
         | 
| 165 208 | 
             
                    attr_accessor :ad_group_id
         | 
| 166 209 |  | 
| 210 | 
            +
                    # A single ad policy associated with an ad group ad.
         | 
| 211 | 
            +
                    # Corresponds to the JSON property `adPolicy`
         | 
| 212 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicy]
         | 
| 213 | 
            +
                    attr_accessor :ad_policy
         | 
| 214 | 
            +
                  
         | 
| 167 215 | 
             
                    # List of URLs used by the ad.
         | 
| 168 216 | 
             
                    # Corresponds to the JSON property `adUrls`
         | 
| 169 217 | 
             
                    # @return [Array<Google::Apis::DisplayvideoV4::AdUrl>]
         | 
| @@ -238,6 +286,7 @@ module Google | |
| 238 286 | 
             
                    def update!(**args)
         | 
| 239 287 | 
             
                      @ad_group_ad_id = args[:ad_group_ad_id] if args.key?(:ad_group_ad_id)
         | 
| 240 288 | 
             
                      @ad_group_id = args[:ad_group_id] if args.key?(:ad_group_id)
         | 
| 289 | 
            +
                      @ad_policy = args[:ad_policy] if args.key?(:ad_policy)
         | 
| 241 290 | 
             
                      @ad_urls = args[:ad_urls] if args.key?(:ad_urls)
         | 
| 242 291 | 
             
                      @advertiser_id = args[:advertiser_id] if args.key?(:advertiser_id)
         | 
| 243 292 | 
             
                      @audio_ad = args[:audio_ad] if args.key?(:audio_ad)
         | 
| @@ -254,21 +303,680 @@ module Google | |
| 254 303 | 
             
                    end
         | 
| 255 304 | 
             
                  end
         | 
| 256 305 |  | 
| 257 | 
            -
                  # Wrapper object associating an AssignedTargetingOption resource and the ad
         | 
| 258 | 
            -
                  # group it is assigned to.
         | 
| 259 | 
            -
                  class AdGroupAssignedTargetingOption
         | 
| 306 | 
            +
                  # Wrapper object associating an AssignedTargetingOption resource and the ad
         | 
| 307 | 
            +
                  # group it is assigned to.
         | 
| 308 | 
            +
                  class AdGroupAssignedTargetingOption
         | 
| 309 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 310 | 
            +
                  
         | 
| 311 | 
            +
                    # The ID of the ad group the assigned targeting option is assigned to.
         | 
| 312 | 
            +
                    # Corresponds to the JSON property `adGroupId`
         | 
| 313 | 
            +
                    # @return [Fixnum]
         | 
| 314 | 
            +
                    attr_accessor :ad_group_id
         | 
| 315 | 
            +
                  
         | 
| 316 | 
            +
                    # A single assigned targeting option, which defines the state of a targeting
         | 
| 317 | 
            +
                    # option for an entity with targeting settings.
         | 
| 318 | 
            +
                    # Corresponds to the JSON property `assignedTargetingOption`
         | 
| 319 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AssignedTargetingOption]
         | 
| 320 | 
            +
                    attr_accessor :assigned_targeting_option
         | 
| 321 | 
            +
                  
         | 
| 322 | 
            +
                    def initialize(**args)
         | 
| 323 | 
            +
                       update!(**args)
         | 
| 324 | 
            +
                    end
         | 
| 325 | 
            +
                  
         | 
| 326 | 
            +
                    # Update properties of this object
         | 
| 327 | 
            +
                    def update!(**args)
         | 
| 328 | 
            +
                      @ad_group_id = args[:ad_group_id] if args.key?(:ad_group_id)
         | 
| 329 | 
            +
                      @assigned_targeting_option = args[:assigned_targeting_option] if args.key?(:assigned_targeting_option)
         | 
| 330 | 
            +
                    end
         | 
| 331 | 
            +
                  end
         | 
| 332 | 
            +
                  
         | 
| 333 | 
            +
                  # A single ad policy associated with an ad group ad.
         | 
| 334 | 
            +
                  class AdPolicy
         | 
| 335 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 336 | 
            +
                  
         | 
| 337 | 
            +
                    # The policy approval status of an ad. Indicating the ad policy approval
         | 
| 338 | 
            +
                    # decision.
         | 
| 339 | 
            +
                    # Corresponds to the JSON property `adPolicyApprovalStatus`
         | 
| 340 | 
            +
                    # @return [String]
         | 
| 341 | 
            +
                    attr_accessor :ad_policy_approval_status
         | 
| 342 | 
            +
                  
         | 
| 343 | 
            +
                    # The policy review status of an ad. Indicating where the review process the ad
         | 
| 344 | 
            +
                    # is currently at.
         | 
| 345 | 
            +
                    # Corresponds to the JSON property `adPolicyReviewStatus`
         | 
| 346 | 
            +
                    # @return [String]
         | 
| 347 | 
            +
                    attr_accessor :ad_policy_review_status
         | 
| 348 | 
            +
                  
         | 
| 349 | 
            +
                    # The policy topic entries for the ad, including the topic, restriction level,
         | 
| 350 | 
            +
                    # and guidance on how to fix policy issues.
         | 
| 351 | 
            +
                    # Corresponds to the JSON property `adPolicyTopicEntry`
         | 
| 352 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdPolicyTopicEntry>]
         | 
| 353 | 
            +
                    attr_accessor :ad_policy_topic_entry
         | 
| 354 | 
            +
                  
         | 
| 355 | 
            +
                    def initialize(**args)
         | 
| 356 | 
            +
                       update!(**args)
         | 
| 357 | 
            +
                    end
         | 
| 358 | 
            +
                  
         | 
| 359 | 
            +
                    # Update properties of this object
         | 
| 360 | 
            +
                    def update!(**args)
         | 
| 361 | 
            +
                      @ad_policy_approval_status = args[:ad_policy_approval_status] if args.key?(:ad_policy_approval_status)
         | 
| 362 | 
            +
                      @ad_policy_review_status = args[:ad_policy_review_status] if args.key?(:ad_policy_review_status)
         | 
| 363 | 
            +
                      @ad_policy_topic_entry = args[:ad_policy_topic_entry] if args.key?(:ad_policy_topic_entry)
         | 
| 364 | 
            +
                    end
         | 
| 365 | 
            +
                  end
         | 
| 366 | 
            +
                  
         | 
| 367 | 
            +
                  # Represents a criterion that is restricted. Today only used to represent a
         | 
| 368 | 
            +
                  # country restriction. Used by both policy evidence and policy constraints.
         | 
| 369 | 
            +
                  class AdPolicyCriterionRestriction
         | 
| 370 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 371 | 
            +
                  
         | 
| 372 | 
            +
                    # Only used today to represent a country criterion id.
         | 
| 373 | 
            +
                    # Corresponds to the JSON property `countryCriterionId`
         | 
| 374 | 
            +
                    # @return [Fixnum]
         | 
| 375 | 
            +
                    attr_accessor :country_criterion_id
         | 
| 376 | 
            +
                  
         | 
| 377 | 
            +
                    # Localized name for the country. Could be empty.
         | 
| 378 | 
            +
                    # Corresponds to the JSON property `countryLabel`
         | 
| 379 | 
            +
                    # @return [String]
         | 
| 380 | 
            +
                    attr_accessor :country_label
         | 
| 381 | 
            +
                  
         | 
| 382 | 
            +
                    def initialize(**args)
         | 
| 383 | 
            +
                       update!(**args)
         | 
| 384 | 
            +
                    end
         | 
| 385 | 
            +
                  
         | 
| 386 | 
            +
                    # Update properties of this object
         | 
| 387 | 
            +
                    def update!(**args)
         | 
| 388 | 
            +
                      @country_criterion_id = args[:country_criterion_id] if args.key?(:country_criterion_id)
         | 
| 389 | 
            +
                      @country_label = args[:country_label] if args.key?(:country_label)
         | 
| 390 | 
            +
                    end
         | 
| 391 | 
            +
                  end
         | 
| 392 | 
            +
                  
         | 
| 393 | 
            +
                  # Appeal related information for a policy topic.
         | 
| 394 | 
            +
                  class AdPolicyTopicAppealInfo
         | 
| 395 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 396 | 
            +
                  
         | 
| 397 | 
            +
                    # Only available when appeal_type is APPEAL_FORM.
         | 
| 398 | 
            +
                    # Corresponds to the JSON property `appealFormLink`
         | 
| 399 | 
            +
                    # @return [String]
         | 
| 400 | 
            +
                    attr_accessor :appeal_form_link
         | 
| 401 | 
            +
                  
         | 
| 402 | 
            +
                    # Indicate whether the policy topic can be self-service appeal or appeal form.
         | 
| 403 | 
            +
                    # Corresponds to the JSON property `appealType`
         | 
| 404 | 
            +
                    # @return [String]
         | 
| 405 | 
            +
                    attr_accessor :appeal_type
         | 
| 406 | 
            +
                  
         | 
| 407 | 
            +
                    def initialize(**args)
         | 
| 408 | 
            +
                       update!(**args)
         | 
| 409 | 
            +
                    end
         | 
| 410 | 
            +
                  
         | 
| 411 | 
            +
                    # Update properties of this object
         | 
| 412 | 
            +
                    def update!(**args)
         | 
| 413 | 
            +
                      @appeal_form_link = args[:appeal_form_link] if args.key?(:appeal_form_link)
         | 
| 414 | 
            +
                      @appeal_type = args[:appeal_type] if args.key?(:appeal_type)
         | 
| 415 | 
            +
                    end
         | 
| 416 | 
            +
                  end
         | 
| 417 | 
            +
                  
         | 
| 418 | 
            +
                  # Additional constraints information that explains restrictions applied to this
         | 
| 419 | 
            +
                  # policy.
         | 
| 420 | 
            +
                  class AdPolicyTopicConstraint
         | 
| 421 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 422 | 
            +
                  
         | 
| 423 | 
            +
                    # A list of countries where the ad cannot serve due to policy constraints.
         | 
| 424 | 
            +
                    # Corresponds to the JSON property `certificateDomainMismatchCountryList`
         | 
| 425 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicConstraintAdPolicyCountryConstraintList]
         | 
| 426 | 
            +
                    attr_accessor :certificate_domain_mismatch_country_list
         | 
| 427 | 
            +
                  
         | 
| 428 | 
            +
                    # A list of countries where the ad cannot serve due to policy constraints.
         | 
| 429 | 
            +
                    # Corresponds to the JSON property `certificateMissingCountryList`
         | 
| 430 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicConstraintAdPolicyCountryConstraintList]
         | 
| 431 | 
            +
                    attr_accessor :certificate_missing_country_list
         | 
| 432 | 
            +
                  
         | 
| 433 | 
            +
                    # A list of countries where the ad cannot serve due to policy constraints.
         | 
| 434 | 
            +
                    # Corresponds to the JSON property `countryConstraint`
         | 
| 435 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicConstraintAdPolicyCountryConstraintList]
         | 
| 436 | 
            +
                    attr_accessor :country_constraint
         | 
| 437 | 
            +
                  
         | 
| 438 | 
            +
                    # Certificate is required to serve in any country and the existing certificate
         | 
| 439 | 
            +
                    # does not cover the ad's domain.
         | 
| 440 | 
            +
                    # Corresponds to the JSON property `globalCertificateDomainMismatch`
         | 
| 441 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicConstraintAdPolicyGlobalCertificateDomainMismatchConstraint]
         | 
| 442 | 
            +
                    attr_accessor :global_certificate_domain_mismatch
         | 
| 443 | 
            +
                  
         | 
| 444 | 
            +
                    # Certificate is required to serve in any country.
         | 
| 445 | 
            +
                    # Corresponds to the JSON property `globalCertificateMissing`
         | 
| 446 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicConstraintAdPolicyGlobalCertificateMissingConstraint]
         | 
| 447 | 
            +
                    attr_accessor :global_certificate_missing
         | 
| 448 | 
            +
                  
         | 
| 449 | 
            +
                    # Link to the form to request a certificate for the policy topic constraint.
         | 
| 450 | 
            +
                    # Corresponds to the JSON property `requestCertificateFormLink`
         | 
| 451 | 
            +
                    # @return [String]
         | 
| 452 | 
            +
                    attr_accessor :request_certificate_form_link
         | 
| 453 | 
            +
                  
         | 
| 454 | 
            +
                    # Policy topic was constrained due to disapproval of the website for reseller
         | 
| 455 | 
            +
                    # purposes.
         | 
| 456 | 
            +
                    # Corresponds to the JSON property `resellerConstraint`
         | 
| 457 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicConstraintAdPolicyResellerConstraint]
         | 
| 458 | 
            +
                    attr_accessor :reseller_constraint
         | 
| 459 | 
            +
                  
         | 
| 460 | 
            +
                    def initialize(**args)
         | 
| 461 | 
            +
                       update!(**args)
         | 
| 462 | 
            +
                    end
         | 
| 463 | 
            +
                  
         | 
| 464 | 
            +
                    # Update properties of this object
         | 
| 465 | 
            +
                    def update!(**args)
         | 
| 466 | 
            +
                      @certificate_domain_mismatch_country_list = args[:certificate_domain_mismatch_country_list] if args.key?(:certificate_domain_mismatch_country_list)
         | 
| 467 | 
            +
                      @certificate_missing_country_list = args[:certificate_missing_country_list] if args.key?(:certificate_missing_country_list)
         | 
| 468 | 
            +
                      @country_constraint = args[:country_constraint] if args.key?(:country_constraint)
         | 
| 469 | 
            +
                      @global_certificate_domain_mismatch = args[:global_certificate_domain_mismatch] if args.key?(:global_certificate_domain_mismatch)
         | 
| 470 | 
            +
                      @global_certificate_missing = args[:global_certificate_missing] if args.key?(:global_certificate_missing)
         | 
| 471 | 
            +
                      @request_certificate_form_link = args[:request_certificate_form_link] if args.key?(:request_certificate_form_link)
         | 
| 472 | 
            +
                      @reseller_constraint = args[:reseller_constraint] if args.key?(:reseller_constraint)
         | 
| 473 | 
            +
                    end
         | 
| 474 | 
            +
                  end
         | 
| 475 | 
            +
                  
         | 
| 476 | 
            +
                  # A list of countries where the ad cannot serve due to policy constraints.
         | 
| 477 | 
            +
                  class AdPolicyTopicConstraintAdPolicyCountryConstraintList
         | 
| 478 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 479 | 
            +
                  
         | 
| 480 | 
            +
                    # Countries where the ad cannot serve.
         | 
| 481 | 
            +
                    # Corresponds to the JSON property `countries`
         | 
| 482 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdPolicyCriterionRestriction>]
         | 
| 483 | 
            +
                    attr_accessor :countries
         | 
| 484 | 
            +
                  
         | 
| 485 | 
            +
                    def initialize(**args)
         | 
| 486 | 
            +
                       update!(**args)
         | 
| 487 | 
            +
                    end
         | 
| 488 | 
            +
                  
         | 
| 489 | 
            +
                    # Update properties of this object
         | 
| 490 | 
            +
                    def update!(**args)
         | 
| 491 | 
            +
                      @countries = args[:countries] if args.key?(:countries)
         | 
| 492 | 
            +
                    end
         | 
| 493 | 
            +
                  end
         | 
| 494 | 
            +
                  
         | 
| 495 | 
            +
                  # Certificate is required to serve in any country and the existing certificate
         | 
| 496 | 
            +
                  # does not cover the ad's domain.
         | 
| 497 | 
            +
                  class AdPolicyTopicConstraintAdPolicyGlobalCertificateDomainMismatchConstraint
         | 
| 498 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 499 | 
            +
                  
         | 
| 500 | 
            +
                    def initialize(**args)
         | 
| 501 | 
            +
                       update!(**args)
         | 
| 502 | 
            +
                    end
         | 
| 503 | 
            +
                  
         | 
| 504 | 
            +
                    # Update properties of this object
         | 
| 505 | 
            +
                    def update!(**args)
         | 
| 506 | 
            +
                    end
         | 
| 507 | 
            +
                  end
         | 
| 508 | 
            +
                  
         | 
| 509 | 
            +
                  # Certificate is required to serve in any country.
         | 
| 510 | 
            +
                  class AdPolicyTopicConstraintAdPolicyGlobalCertificateMissingConstraint
         | 
| 511 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 512 | 
            +
                  
         | 
| 513 | 
            +
                    def initialize(**args)
         | 
| 514 | 
            +
                       update!(**args)
         | 
| 515 | 
            +
                    end
         | 
| 516 | 
            +
                  
         | 
| 517 | 
            +
                    # Update properties of this object
         | 
| 518 | 
            +
                    def update!(**args)
         | 
| 519 | 
            +
                    end
         | 
| 520 | 
            +
                  end
         | 
| 521 | 
            +
                  
         | 
| 522 | 
            +
                  # Policy topic was constrained due to disapproval of the website for reseller
         | 
| 523 | 
            +
                  # purposes.
         | 
| 524 | 
            +
                  class AdPolicyTopicConstraintAdPolicyResellerConstraint
         | 
| 525 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 526 | 
            +
                  
         | 
| 527 | 
            +
                    def initialize(**args)
         | 
| 528 | 
            +
                       update!(**args)
         | 
| 529 | 
            +
                    end
         | 
| 530 | 
            +
                  
         | 
| 531 | 
            +
                    # Update properties of this object
         | 
| 532 | 
            +
                    def update!(**args)
         | 
| 533 | 
            +
                    end
         | 
| 534 | 
            +
                  end
         | 
| 535 | 
            +
                  
         | 
| 536 | 
            +
                  # Policy topic entry.
         | 
| 537 | 
            +
                  class AdPolicyTopicEntry
         | 
| 538 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 539 | 
            +
                  
         | 
| 540 | 
            +
                    # Appeal related information for a policy topic.
         | 
| 541 | 
            +
                    # Corresponds to the JSON property `appealInfo`
         | 
| 542 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicAppealInfo]
         | 
| 543 | 
            +
                    attr_accessor :appeal_info
         | 
| 544 | 
            +
                  
         | 
| 545 | 
            +
                    # Ad policy help center link for the policy topic.
         | 
| 546 | 
            +
                    # Corresponds to the JSON property `helpCenterLink`
         | 
| 547 | 
            +
                    # @return [String]
         | 
| 548 | 
            +
                    attr_accessor :help_center_link
         | 
| 549 | 
            +
                  
         | 
| 550 | 
            +
                    # The source of the policy decision.
         | 
| 551 | 
            +
                    # Corresponds to the JSON property `policyDecisionType`
         | 
| 552 | 
            +
                    # @return [String]
         | 
| 553 | 
            +
                    attr_accessor :policy_decision_type
         | 
| 554 | 
            +
                  
         | 
| 555 | 
            +
                    # The policy enforcement means used in the policy review.
         | 
| 556 | 
            +
                    # Corresponds to the JSON property `policyEnforcementMeans`
         | 
| 557 | 
            +
                    # @return [String]
         | 
| 558 | 
            +
                    attr_accessor :policy_enforcement_means
         | 
| 559 | 
            +
                  
         | 
| 560 | 
            +
                    # Localized label text for policy. (Trademarks in text, Contains Alcohol, etc.)
         | 
| 561 | 
            +
                    # Corresponds to the JSON property `policyLabel`
         | 
| 562 | 
            +
                    # @return [String]
         | 
| 563 | 
            +
                    attr_accessor :policy_label
         | 
| 564 | 
            +
                  
         | 
| 565 | 
            +
                    # The policy topic of an ad policy topic entry. (TRADEMARKS, ALCOHOL, etc.)
         | 
| 566 | 
            +
                    # Corresponds to the JSON property `policyTopic`
         | 
| 567 | 
            +
                    # @return [String]
         | 
| 568 | 
            +
                    attr_accessor :policy_topic
         | 
| 569 | 
            +
                  
         | 
| 570 | 
            +
                    # The policy topic constraints.
         | 
| 571 | 
            +
                    # Corresponds to the JSON property `policyTopicConstraints`
         | 
| 572 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdPolicyTopicConstraint>]
         | 
| 573 | 
            +
                    attr_accessor :policy_topic_constraints
         | 
| 574 | 
            +
                  
         | 
| 575 | 
            +
                    # Short summary description of the policy topic.
         | 
| 576 | 
            +
                    # Corresponds to the JSON property `policyTopicDescription`
         | 
| 577 | 
            +
                    # @return [String]
         | 
| 578 | 
            +
                    attr_accessor :policy_topic_description
         | 
| 579 | 
            +
                  
         | 
| 580 | 
            +
                    # The policy topic evidences.
         | 
| 581 | 
            +
                    # Corresponds to the JSON property `policyTopicEvidences`
         | 
| 582 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdPolicyTopicEvidence>]
         | 
| 583 | 
            +
                    attr_accessor :policy_topic_evidences
         | 
| 584 | 
            +
                  
         | 
| 585 | 
            +
                    # The policy topic entry type.
         | 
| 586 | 
            +
                    # Corresponds to the JSON property `policyTopicType`
         | 
| 587 | 
            +
                    # @return [String]
         | 
| 588 | 
            +
                    attr_accessor :policy_topic_type
         | 
| 589 | 
            +
                  
         | 
| 590 | 
            +
                    def initialize(**args)
         | 
| 591 | 
            +
                       update!(**args)
         | 
| 592 | 
            +
                    end
         | 
| 593 | 
            +
                  
         | 
| 594 | 
            +
                    # Update properties of this object
         | 
| 595 | 
            +
                    def update!(**args)
         | 
| 596 | 
            +
                      @appeal_info = args[:appeal_info] if args.key?(:appeal_info)
         | 
| 597 | 
            +
                      @help_center_link = args[:help_center_link] if args.key?(:help_center_link)
         | 
| 598 | 
            +
                      @policy_decision_type = args[:policy_decision_type] if args.key?(:policy_decision_type)
         | 
| 599 | 
            +
                      @policy_enforcement_means = args[:policy_enforcement_means] if args.key?(:policy_enforcement_means)
         | 
| 600 | 
            +
                      @policy_label = args[:policy_label] if args.key?(:policy_label)
         | 
| 601 | 
            +
                      @policy_topic = args[:policy_topic] if args.key?(:policy_topic)
         | 
| 602 | 
            +
                      @policy_topic_constraints = args[:policy_topic_constraints] if args.key?(:policy_topic_constraints)
         | 
| 603 | 
            +
                      @policy_topic_description = args[:policy_topic_description] if args.key?(:policy_topic_description)
         | 
| 604 | 
            +
                      @policy_topic_evidences = args[:policy_topic_evidences] if args.key?(:policy_topic_evidences)
         | 
| 605 | 
            +
                      @policy_topic_type = args[:policy_topic_type] if args.key?(:policy_topic_type)
         | 
| 606 | 
            +
                    end
         | 
| 607 | 
            +
                  end
         | 
| 608 | 
            +
                  
         | 
| 609 | 
            +
                  # Additional evidence information that explains a policy decision.
         | 
| 610 | 
            +
                  class AdPolicyTopicEvidence
         | 
| 611 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 612 | 
            +
                  
         | 
| 613 | 
            +
                    # Counterfeit enforcement that caused a policy violation.
         | 
| 614 | 
            +
                    # Corresponds to the JSON property `counterfeit`
         | 
| 615 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceCounterfeit]
         | 
| 616 | 
            +
                    attr_accessor :counterfeit
         | 
| 617 | 
            +
                  
         | 
| 618 | 
            +
                    # A list of destination mismatch URL types.
         | 
| 619 | 
            +
                    # Corresponds to the JSON property `destinationMismatch`
         | 
| 620 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceDestinationMismatch]
         | 
| 621 | 
            +
                    attr_accessor :destination_mismatch
         | 
| 622 | 
            +
                  
         | 
| 623 | 
            +
                    # Evidence details for destination not working policy violations.
         | 
| 624 | 
            +
                    # Corresponds to the JSON property `destinationNotWorking`
         | 
| 625 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceDestinationNotWorking]
         | 
| 626 | 
            +
                    attr_accessor :destination_not_working
         | 
| 627 | 
            +
                  
         | 
| 628 | 
            +
                    # A list of destination text that violated the policy.
         | 
| 629 | 
            +
                    # Corresponds to the JSON property `destinationTextList`
         | 
| 630 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceDestinationTextList]
         | 
| 631 | 
            +
                    attr_accessor :destination_text_list
         | 
| 632 | 
            +
                  
         | 
| 633 | 
            +
                    # HTTP code returned when the final URL was crawled.
         | 
| 634 | 
            +
                    # Corresponds to the JSON property `httpCode`
         | 
| 635 | 
            +
                    # @return [Fixnum]
         | 
| 636 | 
            +
                    attr_accessor :http_code
         | 
| 637 | 
            +
                  
         | 
| 638 | 
            +
                    # The language the ad was detected to be written in. This is an IETF language
         | 
| 639 | 
            +
                    # tag such as "en-US".
         | 
| 640 | 
            +
                    # Corresponds to the JSON property `languageCode`
         | 
| 641 | 
            +
                    # @return [String]
         | 
| 642 | 
            +
                    attr_accessor :language_code
         | 
| 643 | 
            +
                  
         | 
| 644 | 
            +
                    # Legal related regulation enforcement, either from DMCA or local legal.
         | 
| 645 | 
            +
                    # Corresponds to the JSON property `legalRemoval`
         | 
| 646 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceLegalRemoval]
         | 
| 647 | 
            +
                    attr_accessor :legal_removal
         | 
| 648 | 
            +
                  
         | 
| 649 | 
            +
                    # T&S proactive enforcement for policies meant to address regional requirements.
         | 
| 650 | 
            +
                    # This is considered as Google owned investigation instead of regulation notice
         | 
| 651 | 
            +
                    # since it's a T&S proactive enforcement.
         | 
| 652 | 
            +
                    # Corresponds to the JSON property `regionalRequirements`
         | 
| 653 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceRegionalRequirements]
         | 
| 654 | 
            +
                    attr_accessor :regional_requirements
         | 
| 655 | 
            +
                  
         | 
| 656 | 
            +
                    # A list of fragments of text that violated the policy.
         | 
| 657 | 
            +
                    # Corresponds to the JSON property `textList`
         | 
| 658 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceTextList]
         | 
| 659 | 
            +
                    attr_accessor :text_list
         | 
| 660 | 
            +
                  
         | 
| 661 | 
            +
                    # Trademark terms that caused a policy violation.
         | 
| 662 | 
            +
                    # Corresponds to the JSON property `trademark`
         | 
| 663 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceTrademark]
         | 
| 664 | 
            +
                    attr_accessor :trademark
         | 
| 665 | 
            +
                  
         | 
| 666 | 
            +
                    # A list of websites that violated the policy.
         | 
| 667 | 
            +
                    # Corresponds to the JSON property `websiteList`
         | 
| 668 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceWebsiteList]
         | 
| 669 | 
            +
                    attr_accessor :website_list
         | 
| 670 | 
            +
                  
         | 
| 671 | 
            +
                    def initialize(**args)
         | 
| 672 | 
            +
                       update!(**args)
         | 
| 673 | 
            +
                    end
         | 
| 674 | 
            +
                  
         | 
| 675 | 
            +
                    # Update properties of this object
         | 
| 676 | 
            +
                    def update!(**args)
         | 
| 677 | 
            +
                      @counterfeit = args[:counterfeit] if args.key?(:counterfeit)
         | 
| 678 | 
            +
                      @destination_mismatch = args[:destination_mismatch] if args.key?(:destination_mismatch)
         | 
| 679 | 
            +
                      @destination_not_working = args[:destination_not_working] if args.key?(:destination_not_working)
         | 
| 680 | 
            +
                      @destination_text_list = args[:destination_text_list] if args.key?(:destination_text_list)
         | 
| 681 | 
            +
                      @http_code = args[:http_code] if args.key?(:http_code)
         | 
| 682 | 
            +
                      @language_code = args[:language_code] if args.key?(:language_code)
         | 
| 683 | 
            +
                      @legal_removal = args[:legal_removal] if args.key?(:legal_removal)
         | 
| 684 | 
            +
                      @regional_requirements = args[:regional_requirements] if args.key?(:regional_requirements)
         | 
| 685 | 
            +
                      @text_list = args[:text_list] if args.key?(:text_list)
         | 
| 686 | 
            +
                      @trademark = args[:trademark] if args.key?(:trademark)
         | 
| 687 | 
            +
                      @website_list = args[:website_list] if args.key?(:website_list)
         | 
| 688 | 
            +
                    end
         | 
| 689 | 
            +
                  end
         | 
| 690 | 
            +
                  
         | 
| 691 | 
            +
                  # Counterfeit enforcement that caused a policy violation.
         | 
| 692 | 
            +
                  class AdPolicyTopicEvidenceCounterfeit
         | 
| 693 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 694 | 
            +
                  
         | 
| 695 | 
            +
                    # The content or product owners that make the complainants.
         | 
| 696 | 
            +
                    # Corresponds to the JSON property `owners`
         | 
| 697 | 
            +
                    # @return [Array<String>]
         | 
| 698 | 
            +
                    attr_accessor :owners
         | 
| 699 | 
            +
                  
         | 
| 700 | 
            +
                    def initialize(**args)
         | 
| 701 | 
            +
                       update!(**args)
         | 
| 702 | 
            +
                    end
         | 
| 703 | 
            +
                  
         | 
| 704 | 
            +
                    # Update properties of this object
         | 
| 705 | 
            +
                    def update!(**args)
         | 
| 706 | 
            +
                      @owners = args[:owners] if args.key?(:owners)
         | 
| 707 | 
            +
                    end
         | 
| 708 | 
            +
                  end
         | 
| 709 | 
            +
                  
         | 
| 710 | 
            +
                  # A list of destination mismatch URL types.
         | 
| 711 | 
            +
                  class AdPolicyTopicEvidenceDestinationMismatch
         | 
| 712 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 713 | 
            +
                  
         | 
| 714 | 
            +
                    # The set of URLs that do not match each other. The list can include single or
         | 
| 715 | 
            +
                    # multiple uri types. Example 1: [DISPLAY_URL, FINAL_URL] means ad display URL
         | 
| 716 | 
            +
                    # does not match with the ad final URL. Example 2: [FINAL_URL] means ad final
         | 
| 717 | 
            +
                    # URL did not match the crawled url, which is also considered as
         | 
| 718 | 
            +
                    # destinationmismatch.
         | 
| 719 | 
            +
                    # Corresponds to the JSON property `uriTypes`
         | 
| 720 | 
            +
                    # @return [Array<String>]
         | 
| 721 | 
            +
                    attr_accessor :uri_types
         | 
| 722 | 
            +
                  
         | 
| 723 | 
            +
                    def initialize(**args)
         | 
| 724 | 
            +
                       update!(**args)
         | 
| 725 | 
            +
                    end
         | 
| 726 | 
            +
                  
         | 
| 727 | 
            +
                    # Update properties of this object
         | 
| 728 | 
            +
                    def update!(**args)
         | 
| 729 | 
            +
                      @uri_types = args[:uri_types] if args.key?(:uri_types)
         | 
| 730 | 
            +
                    end
         | 
| 731 | 
            +
                  end
         | 
| 732 | 
            +
                  
         | 
| 733 | 
            +
                  # Evidence details for destination not working policy violations.
         | 
| 734 | 
            +
                  class AdPolicyTopicEvidenceDestinationNotWorking
         | 
| 735 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 736 | 
            +
                  
         | 
| 737 | 
            +
                    # The device platform of the not working url.
         | 
| 738 | 
            +
                    # Corresponds to the JSON property `device`
         | 
| 739 | 
            +
                    # @return [String]
         | 
| 740 | 
            +
                    attr_accessor :device
         | 
| 741 | 
            +
                  
         | 
| 742 | 
            +
                    # The type of DNS error.
         | 
| 743 | 
            +
                    # Corresponds to the JSON property `dnsErrorType`
         | 
| 744 | 
            +
                    # @return [String]
         | 
| 745 | 
            +
                    attr_accessor :dns_error_type
         | 
| 746 | 
            +
                  
         | 
| 747 | 
            +
                    # The full URL that didn't work.
         | 
| 748 | 
            +
                    # Corresponds to the JSON property `expandedUri`
         | 
| 749 | 
            +
                    # @return [String]
         | 
| 750 | 
            +
                    attr_accessor :expanded_uri
         | 
| 751 | 
            +
                  
         | 
| 752 | 
            +
                    # The HTTP error code.
         | 
| 753 | 
            +
                    # Corresponds to the JSON property `httpErrorCode`
         | 
| 754 | 
            +
                    # @return [Fixnum]
         | 
| 755 | 
            +
                    attr_accessor :http_error_code
         | 
| 756 | 
            +
                  
         | 
| 757 | 
            +
                    # The last checked time of the not working url.
         | 
| 758 | 
            +
                    # Corresponds to the JSON property `lastCheckedTime`
         | 
| 759 | 
            +
                    # @return [String]
         | 
| 760 | 
            +
                    attr_accessor :last_checked_time
         | 
| 761 | 
            +
                  
         | 
| 762 | 
            +
                    def initialize(**args)
         | 
| 763 | 
            +
                       update!(**args)
         | 
| 764 | 
            +
                    end
         | 
| 765 | 
            +
                  
         | 
| 766 | 
            +
                    # Update properties of this object
         | 
| 767 | 
            +
                    def update!(**args)
         | 
| 768 | 
            +
                      @device = args[:device] if args.key?(:device)
         | 
| 769 | 
            +
                      @dns_error_type = args[:dns_error_type] if args.key?(:dns_error_type)
         | 
| 770 | 
            +
                      @expanded_uri = args[:expanded_uri] if args.key?(:expanded_uri)
         | 
| 771 | 
            +
                      @http_error_code = args[:http_error_code] if args.key?(:http_error_code)
         | 
| 772 | 
            +
                      @last_checked_time = args[:last_checked_time] if args.key?(:last_checked_time)
         | 
| 773 | 
            +
                    end
         | 
| 774 | 
            +
                  end
         | 
| 775 | 
            +
                  
         | 
| 776 | 
            +
                  # A list of destination text that violated the policy.
         | 
| 777 | 
            +
                  class AdPolicyTopicEvidenceDestinationTextList
         | 
| 778 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 779 | 
            +
                  
         | 
| 780 | 
            +
                    # Destination text that caused the policy finding.
         | 
| 781 | 
            +
                    # Corresponds to the JSON property `destinationTexts`
         | 
| 782 | 
            +
                    # @return [Array<String>]
         | 
| 783 | 
            +
                    attr_accessor :destination_texts
         | 
| 784 | 
            +
                  
         | 
| 785 | 
            +
                    def initialize(**args)
         | 
| 786 | 
            +
                       update!(**args)
         | 
| 787 | 
            +
                    end
         | 
| 788 | 
            +
                  
         | 
| 789 | 
            +
                    # Update properties of this object
         | 
| 790 | 
            +
                    def update!(**args)
         | 
| 791 | 
            +
                      @destination_texts = args[:destination_texts] if args.key?(:destination_texts)
         | 
| 792 | 
            +
                    end
         | 
| 793 | 
            +
                  end
         | 
| 794 | 
            +
                  
         | 
| 795 | 
            +
                  # Legal related regulation enforcement, either from DMCA or local legal.
         | 
| 796 | 
            +
                  class AdPolicyTopicEvidenceLegalRemoval
         | 
| 797 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 798 | 
            +
                  
         | 
| 799 | 
            +
                    # The legal removal complaint type.
         | 
| 800 | 
            +
                    # Corresponds to the JSON property `complaintType`
         | 
| 801 | 
            +
                    # @return [String]
         | 
| 802 | 
            +
                    attr_accessor :complaint_type
         | 
| 803 | 
            +
                  
         | 
| 804 | 
            +
                    # The restricted countries due to the legal removal.
         | 
| 805 | 
            +
                    # Corresponds to the JSON property `countryRestrictions`
         | 
| 806 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdPolicyCriterionRestriction>]
         | 
| 807 | 
            +
                    attr_accessor :country_restrictions
         | 
| 808 | 
            +
                  
         | 
| 809 | 
            +
                    # DMCA related regulation enforcement.
         | 
| 810 | 
            +
                    # Corresponds to the JSON property `dmca`
         | 
| 811 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceLegalRemovalDmca]
         | 
| 812 | 
            +
                    attr_accessor :dmca
         | 
| 813 | 
            +
                  
         | 
| 814 | 
            +
                    # Local legal related regulation enforcement.
         | 
| 815 | 
            +
                    # Corresponds to the JSON property `localLegal`
         | 
| 816 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceLegalRemovalLocalLegal]
         | 
| 817 | 
            +
                    attr_accessor :local_legal
         | 
| 818 | 
            +
                  
         | 
| 819 | 
            +
                    # The urls that are restricted due to the legal removal.
         | 
| 820 | 
            +
                    # Corresponds to the JSON property `restrictedUris`
         | 
| 821 | 
            +
                    # @return [Array<String>]
         | 
| 822 | 
            +
                    attr_accessor :restricted_uris
         | 
| 823 | 
            +
                  
         | 
| 824 | 
            +
                    def initialize(**args)
         | 
| 825 | 
            +
                       update!(**args)
         | 
| 826 | 
            +
                    end
         | 
| 827 | 
            +
                  
         | 
| 828 | 
            +
                    # Update properties of this object
         | 
| 829 | 
            +
                    def update!(**args)
         | 
| 830 | 
            +
                      @complaint_type = args[:complaint_type] if args.key?(:complaint_type)
         | 
| 831 | 
            +
                      @country_restrictions = args[:country_restrictions] if args.key?(:country_restrictions)
         | 
| 832 | 
            +
                      @dmca = args[:dmca] if args.key?(:dmca)
         | 
| 833 | 
            +
                      @local_legal = args[:local_legal] if args.key?(:local_legal)
         | 
| 834 | 
            +
                      @restricted_uris = args[:restricted_uris] if args.key?(:restricted_uris)
         | 
| 835 | 
            +
                    end
         | 
| 836 | 
            +
                  end
         | 
| 837 | 
            +
                  
         | 
| 838 | 
            +
                  # DMCA related regulation enforcement.
         | 
| 839 | 
            +
                  class AdPolicyTopicEvidenceLegalRemovalDmca
         | 
| 840 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 841 | 
            +
                  
         | 
| 842 | 
            +
                    # The entity who makes the legal complaint.
         | 
| 843 | 
            +
                    # Corresponds to the JSON property `complainant`
         | 
| 844 | 
            +
                    # @return [String]
         | 
| 845 | 
            +
                    attr_accessor :complainant
         | 
| 846 | 
            +
                  
         | 
| 847 | 
            +
                    def initialize(**args)
         | 
| 848 | 
            +
                       update!(**args)
         | 
| 849 | 
            +
                    end
         | 
| 850 | 
            +
                  
         | 
| 851 | 
            +
                    # Update properties of this object
         | 
| 852 | 
            +
                    def update!(**args)
         | 
| 853 | 
            +
                      @complainant = args[:complainant] if args.key?(:complainant)
         | 
| 854 | 
            +
                    end
         | 
| 855 | 
            +
                  end
         | 
| 856 | 
            +
                  
         | 
| 857 | 
            +
                  # Local legal related regulation enforcement.
         | 
| 858 | 
            +
                  class AdPolicyTopicEvidenceLegalRemovalLocalLegal
         | 
| 859 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 860 | 
            +
                  
         | 
| 861 | 
            +
                    # Type of law for the legal notice.
         | 
| 862 | 
            +
                    # Corresponds to the JSON property `lawType`
         | 
| 863 | 
            +
                    # @return [String]
         | 
| 864 | 
            +
                    attr_accessor :law_type
         | 
| 865 | 
            +
                  
         | 
| 866 | 
            +
                    def initialize(**args)
         | 
| 867 | 
            +
                       update!(**args)
         | 
| 868 | 
            +
                    end
         | 
| 869 | 
            +
                  
         | 
| 870 | 
            +
                    # Update properties of this object
         | 
| 871 | 
            +
                    def update!(**args)
         | 
| 872 | 
            +
                      @law_type = args[:law_type] if args.key?(:law_type)
         | 
| 873 | 
            +
                    end
         | 
| 874 | 
            +
                  end
         | 
| 875 | 
            +
                  
         | 
| 876 | 
            +
                  # T&S proactive enforcement for policies meant to address regional requirements.
         | 
| 877 | 
            +
                  # This is considered as Google owned investigation instead of regulation notice
         | 
| 878 | 
            +
                  # since it's a T&S proactive enforcement.
         | 
| 879 | 
            +
                  class AdPolicyTopicEvidenceRegionalRequirements
         | 
| 880 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 881 | 
            +
                  
         | 
| 882 | 
            +
                    # List of regional requirements.
         | 
| 883 | 
            +
                    # Corresponds to the JSON property `regionalRequirementsEntries`
         | 
| 884 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdPolicyTopicEvidenceRegionalRequirementsRegionalRequirementsEntry>]
         | 
| 885 | 
            +
                    attr_accessor :regional_requirements_entries
         | 
| 886 | 
            +
                  
         | 
| 887 | 
            +
                    def initialize(**args)
         | 
| 888 | 
            +
                       update!(**args)
         | 
| 889 | 
            +
                    end
         | 
| 890 | 
            +
                  
         | 
| 891 | 
            +
                    # Update properties of this object
         | 
| 892 | 
            +
                    def update!(**args)
         | 
| 893 | 
            +
                      @regional_requirements_entries = args[:regional_requirements_entries] if args.key?(:regional_requirements_entries)
         | 
| 894 | 
            +
                    end
         | 
| 895 | 
            +
                  end
         | 
| 896 | 
            +
                  
         | 
| 897 | 
            +
                  # Policy level regional legal violation details.
         | 
| 898 | 
            +
                  class AdPolicyTopicEvidenceRegionalRequirementsRegionalRequirementsEntry
         | 
| 899 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 900 | 
            +
                  
         | 
| 901 | 
            +
                    # The restricted countries due to the legal policy.
         | 
| 902 | 
            +
                    # Corresponds to the JSON property `countryRestrictions`
         | 
| 903 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdPolicyCriterionRestriction>]
         | 
| 904 | 
            +
                    attr_accessor :country_restrictions
         | 
| 905 | 
            +
                  
         | 
| 906 | 
            +
                    # The legal policy that is violated.
         | 
| 907 | 
            +
                    # Corresponds to the JSON property `legalPolicy`
         | 
| 908 | 
            +
                    # @return [String]
         | 
| 909 | 
            +
                    attr_accessor :legal_policy
         | 
| 910 | 
            +
                  
         | 
| 911 | 
            +
                    def initialize(**args)
         | 
| 912 | 
            +
                       update!(**args)
         | 
| 913 | 
            +
                    end
         | 
| 914 | 
            +
                  
         | 
| 915 | 
            +
                    # Update properties of this object
         | 
| 916 | 
            +
                    def update!(**args)
         | 
| 917 | 
            +
                      @country_restrictions = args[:country_restrictions] if args.key?(:country_restrictions)
         | 
| 918 | 
            +
                      @legal_policy = args[:legal_policy] if args.key?(:legal_policy)
         | 
| 919 | 
            +
                    end
         | 
| 920 | 
            +
                  end
         | 
| 921 | 
            +
                  
         | 
| 922 | 
            +
                  # A list of fragments of text that violated the policy.
         | 
| 923 | 
            +
                  class AdPolicyTopicEvidenceTextList
         | 
| 924 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 925 | 
            +
                  
         | 
| 926 | 
            +
                    # The fragments of text from the resource that caused the policy finding.
         | 
| 927 | 
            +
                    # Corresponds to the JSON property `texts`
         | 
| 928 | 
            +
                    # @return [Array<String>]
         | 
| 929 | 
            +
                    attr_accessor :texts
         | 
| 930 | 
            +
                  
         | 
| 931 | 
            +
                    def initialize(**args)
         | 
| 932 | 
            +
                       update!(**args)
         | 
| 933 | 
            +
                    end
         | 
| 934 | 
            +
                  
         | 
| 935 | 
            +
                    # Update properties of this object
         | 
| 936 | 
            +
                    def update!(**args)
         | 
| 937 | 
            +
                      @texts = args[:texts] if args.key?(:texts)
         | 
| 938 | 
            +
                    end
         | 
| 939 | 
            +
                  end
         | 
| 940 | 
            +
                  
         | 
| 941 | 
            +
                  # Trademark terms that caused a policy violation.
         | 
| 942 | 
            +
                  class AdPolicyTopicEvidenceTrademark
         | 
| 943 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 944 | 
            +
                  
         | 
| 945 | 
            +
                    # Criteria that are geo restrictions.
         | 
| 946 | 
            +
                    # Corresponds to the JSON property `countryRestrictions`
         | 
| 947 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdPolicyCriterionRestriction>]
         | 
| 948 | 
            +
                    attr_accessor :country_restrictions
         | 
| 949 | 
            +
                  
         | 
| 950 | 
            +
                    # The trademark content owner.
         | 
| 951 | 
            +
                    # Corresponds to the JSON property `owner`
         | 
| 952 | 
            +
                    # @return [String]
         | 
| 953 | 
            +
                    attr_accessor :owner
         | 
| 954 | 
            +
                  
         | 
| 955 | 
            +
                    # The trademark term.
         | 
| 956 | 
            +
                    # Corresponds to the JSON property `term`
         | 
| 957 | 
            +
                    # @return [String]
         | 
| 958 | 
            +
                    attr_accessor :term
         | 
| 959 | 
            +
                  
         | 
| 960 | 
            +
                    def initialize(**args)
         | 
| 961 | 
            +
                       update!(**args)
         | 
| 962 | 
            +
                    end
         | 
| 963 | 
            +
                  
         | 
| 964 | 
            +
                    # Update properties of this object
         | 
| 965 | 
            +
                    def update!(**args)
         | 
| 966 | 
            +
                      @country_restrictions = args[:country_restrictions] if args.key?(:country_restrictions)
         | 
| 967 | 
            +
                      @owner = args[:owner] if args.key?(:owner)
         | 
| 968 | 
            +
                      @term = args[:term] if args.key?(:term)
         | 
| 969 | 
            +
                    end
         | 
| 970 | 
            +
                  end
         | 
| 971 | 
            +
                  
         | 
| 972 | 
            +
                  # A list of websites that violated the policy.
         | 
| 973 | 
            +
                  class AdPolicyTopicEvidenceWebsiteList
         | 
| 260 974 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 261 975 |  | 
| 262 | 
            -
                    #  | 
| 263 | 
            -
                    # Corresponds to the JSON property ` | 
| 264 | 
            -
                    # @return [ | 
| 265 | 
            -
                    attr_accessor : | 
| 266 | 
            -
                  
         | 
| 267 | 
            -
                    # A single assigned targeting option, which defines the state of a targeting
         | 
| 268 | 
            -
                    # option for an entity with targeting settings.
         | 
| 269 | 
            -
                    # Corresponds to the JSON property `assignedTargetingOption`
         | 
| 270 | 
            -
                    # @return [Google::Apis::DisplayvideoV4::AssignedTargetingOption]
         | 
| 271 | 
            -
                    attr_accessor :assigned_targeting_option
         | 
| 976 | 
            +
                    # Websites that caused the policy finding.
         | 
| 977 | 
            +
                    # Corresponds to the JSON property `websites`
         | 
| 978 | 
            +
                    # @return [Array<String>]
         | 
| 979 | 
            +
                    attr_accessor :websites
         | 
| 272 980 |  | 
| 273 981 | 
             
                    def initialize(**args)
         | 
| 274 982 | 
             
                       update!(**args)
         | 
| @@ -276,8 +984,7 @@ module Google | |
| 276 984 |  | 
| 277 985 | 
             
                    # Update properties of this object
         | 
| 278 986 | 
             
                    def update!(**args)
         | 
| 279 | 
            -
                      @ | 
| 280 | 
            -
                      @assigned_targeting_option = args[:assigned_targeting_option] if args.key?(:assigned_targeting_option)
         | 
| 987 | 
            +
                      @websites = args[:websites] if args.key?(:websites)
         | 
| 281 988 | 
             
                    end
         | 
| 282 989 | 
             
                  end
         | 
| 283 990 |  | 
| @@ -2344,6 +3051,44 @@ module Google | |
| 2344 3051 | 
             
                    end
         | 
| 2345 3052 | 
             
                  end
         | 
| 2346 3053 |  | 
| 3054 | 
            +
                  # A request message for BulkCreateAdAssets.
         | 
| 3055 | 
            +
                  class BulkCreateAdAssetsRequest
         | 
| 3056 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 3057 | 
            +
                  
         | 
| 3058 | 
            +
                    # Required. Ad assets to create. Only supports youtube video assets for now.
         | 
| 3059 | 
            +
                    # Corresponds to the JSON property `adAssets`
         | 
| 3060 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdAsset>]
         | 
| 3061 | 
            +
                    attr_accessor :ad_assets
         | 
| 3062 | 
            +
                  
         | 
| 3063 | 
            +
                    def initialize(**args)
         | 
| 3064 | 
            +
                       update!(**args)
         | 
| 3065 | 
            +
                    end
         | 
| 3066 | 
            +
                  
         | 
| 3067 | 
            +
                    # Update properties of this object
         | 
| 3068 | 
            +
                    def update!(**args)
         | 
| 3069 | 
            +
                      @ad_assets = args[:ad_assets] if args.key?(:ad_assets)
         | 
| 3070 | 
            +
                    end
         | 
| 3071 | 
            +
                  end
         | 
| 3072 | 
            +
                  
         | 
| 3073 | 
            +
                  # A response message for BulkCreateAdAssets.
         | 
| 3074 | 
            +
                  class BulkCreateAdAssetsResponse
         | 
| 3075 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 3076 | 
            +
                  
         | 
| 3077 | 
            +
                    # The uploaded video ad assets, if successful.
         | 
| 3078 | 
            +
                    # Corresponds to the JSON property `adAssets`
         | 
| 3079 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdAsset>]
         | 
| 3080 | 
            +
                    attr_accessor :ad_assets
         | 
| 3081 | 
            +
                  
         | 
| 3082 | 
            +
                    def initialize(**args)
         | 
| 3083 | 
            +
                       update!(**args)
         | 
| 3084 | 
            +
                    end
         | 
| 3085 | 
            +
                  
         | 
| 3086 | 
            +
                    # Update properties of this object
         | 
| 3087 | 
            +
                    def update!(**args)
         | 
| 3088 | 
            +
                      @ad_assets = args[:ad_assets] if args.key?(:ad_assets)
         | 
| 3089 | 
            +
                    end
         | 
| 3090 | 
            +
                  end
         | 
| 3091 | 
            +
                  
         | 
| 2347 3092 | 
             
                  # Request message for BulkEditAdvertiserAssignedTargetingOptions.
         | 
| 2348 3093 | 
             
                  class BulkEditAdvertiserAssignedTargetingOptionsRequest
         | 
| 2349 3094 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -4302,6 +5047,25 @@ module Google | |
| 4302 5047 | 
             
                    end
         | 
| 4303 5048 | 
             
                  end
         | 
| 4304 5049 |  | 
| 5050 | 
            +
                  # A request message for CreateAdAsset.
         | 
| 5051 | 
            +
                  class CreateAdAssetRequest
         | 
| 5052 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 5053 | 
            +
                  
         | 
| 5054 | 
            +
                    # A single ad asset. Next ID: 6
         | 
| 5055 | 
            +
                    # Corresponds to the JSON property `adAsset`
         | 
| 5056 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdAsset]
         | 
| 5057 | 
            +
                    attr_accessor :ad_asset
         | 
| 5058 | 
            +
                  
         | 
| 5059 | 
            +
                    def initialize(**args)
         | 
| 5060 | 
            +
                       update!(**args)
         | 
| 5061 | 
            +
                    end
         | 
| 5062 | 
            +
                  
         | 
| 5063 | 
            +
                    # Update properties of this object
         | 
| 5064 | 
            +
                    def update!(**args)
         | 
| 5065 | 
            +
                      @ad_asset = args[:ad_asset] if args.key?(:ad_asset)
         | 
| 5066 | 
            +
                    end
         | 
| 5067 | 
            +
                  end
         | 
| 5068 | 
            +
                  
         | 
| 4305 5069 | 
             
                  # A request message for CreateAsset.
         | 
| 4306 5070 | 
             
                  class CreateAssetRequest
         | 
| 4307 5071 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -5863,11 +6627,8 @@ module Google | |
| 5863 6627 | 
             
                    # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` in the parent advertiser, then this
         | 
| 5864 6628 | 
             
                    # field will be assigned `DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` if not
         | 
| 5865 6629 | 
             
                    # otherwise specified. This field can then be updated using the UI, API, or
         | 
| 5866 | 
            -
                    # Structured Data Files.  | 
| 5867 | 
            -
                    #  | 
| 5868 | 
            -
                    # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` will be assigned to the line item
         | 
| 5869 | 
            -
                    # if the parent advertiser has declared that it does not serve EU political ads,
         | 
| 5870 | 
            -
                    # or **the request will fail**.
         | 
| 6630 | 
            +
                    # Structured Data Files. This field must be assigned when creating a new line
         | 
| 6631 | 
            +
                    # item. Otherwise, **the `advertisers.lineItems.create` request will fail**.
         | 
| 5871 6632 | 
             
                    # Corresponds to the JSON property `containsEuPoliticalAds`
         | 
| 5872 6633 | 
             
                    # @return [String]
         | 
| 5873 6634 | 
             
                    attr_accessor :contains_eu_political_ads
         | 
| @@ -6799,11 +7560,8 @@ module Google | |
| 6799 7560 | 
             
                    # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` in the parent advertiser, then this
         | 
| 6800 7561 | 
             
                    # field will be assigned `DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` if not
         | 
| 6801 7562 | 
             
                    # otherwise specified. This field can then be updated using the UI, API, or
         | 
| 6802 | 
            -
                    # Structured Data Files.  | 
| 6803 | 
            -
                    #  | 
| 6804 | 
            -
                    # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` will be assigned to the line item
         | 
| 6805 | 
            -
                    # if the parent advertiser has declared that it does not serve EU political ads,
         | 
| 6806 | 
            -
                    # or **the request will fail**.
         | 
| 7563 | 
            +
                    # Structured Data Files. This field must be assigned when creating a new line
         | 
| 7564 | 
            +
                    # item. Otherwise, **the `advertisers.lineItems.create` request will fail**.
         | 
| 6807 7565 | 
             
                    # Corresponds to the JSON property `containsEuPoliticalAds`
         | 
| 6808 7566 | 
             
                    # @return [String]
         | 
| 6809 7567 | 
             
                    attr_accessor :contains_eu_political_ads
         | 
| @@ -8429,11 +9187,8 @@ module Google | |
| 8429 9187 | 
             
                    # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` in the parent advertiser, then this
         | 
| 8430 9188 | 
             
                    # field will be assigned `DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` if not
         | 
| 8431 9189 | 
             
                    # otherwise specified. This field can then be updated using the UI, API, or
         | 
| 8432 | 
            -
                    # Structured Data Files.  | 
| 8433 | 
            -
                    #  | 
| 8434 | 
            -
                    # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING` will be assigned if the parent
         | 
| 8435 | 
            -
                    # advertiser has declared that it does not serve EU political ads, or **the `
         | 
| 8436 | 
            -
                    # advertisers.lineItems.create` request will fail**.
         | 
| 9190 | 
            +
                    # Structured Data Files. This field must be assigned when creating a new line
         | 
| 9191 | 
            +
                    # item. Otherwise, **the `advertisers.lineItems.create` request will fail**.
         | 
| 8437 9192 | 
             
                    # Corresponds to the JSON property `containsEuPoliticalAds`
         | 
| 8438 9193 | 
             
                    # @return [String]
         | 
| 8439 9194 | 
             
                    attr_accessor :contains_eu_political_ads
         | 
| @@ -8692,6 +9447,33 @@ module Google | |
| 8692 9447 | 
             
                    end
         | 
| 8693 9448 | 
             
                  end
         | 
| 8694 9449 |  | 
| 9450 | 
            +
                  # A response message for ListAdAssets.
         | 
| 9451 | 
            +
                  class ListAdAssetsResponse
         | 
| 9452 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 9453 | 
            +
                  
         | 
| 9454 | 
            +
                    # The list of ad assets. This list will be absent if empty.
         | 
| 9455 | 
            +
                    # Corresponds to the JSON property `adAssets`
         | 
| 9456 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::AdAsset>]
         | 
| 9457 | 
            +
                    attr_accessor :ad_assets
         | 
| 9458 | 
            +
                  
         | 
| 9459 | 
            +
                    # A token to retrieve the next page of results. Pass this value in the
         | 
| 9460 | 
            +
                    # page_token field in the subsequent call to `ListAdAssets` method to retrieve
         | 
| 9461 | 
            +
                    # the next page of results.
         | 
| 9462 | 
            +
                    # Corresponds to the JSON property `nextPageToken`
         | 
| 9463 | 
            +
                    # @return [String]
         | 
| 9464 | 
            +
                    attr_accessor :next_page_token
         | 
| 9465 | 
            +
                  
         | 
| 9466 | 
            +
                    def initialize(**args)
         | 
| 9467 | 
            +
                       update!(**args)
         | 
| 9468 | 
            +
                    end
         | 
| 9469 | 
            +
                  
         | 
| 9470 | 
            +
                    # Update properties of this object
         | 
| 9471 | 
            +
                    def update!(**args)
         | 
| 9472 | 
            +
                      @ad_assets = args[:ad_assets] if args.key?(:ad_assets)
         | 
| 9473 | 
            +
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 9474 | 
            +
                    end
         | 
| 9475 | 
            +
                  end
         | 
| 9476 | 
            +
                  
         | 
| 8695 9477 | 
             
                  # 
         | 
| 8696 9478 | 
             
                  class ListAdGroupAdsResponse
         | 
| 8697 9479 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -9653,6 +10435,32 @@ module Google | |
| 9653 10435 | 
             
                    end
         | 
| 9654 10436 | 
             
                  end
         | 
| 9655 10437 |  | 
| 10438 | 
            +
                  # Response message for YoutubeAssetAssociationService.
         | 
| 10439 | 
            +
                  # ListYoutubeAssetAssociations.
         | 
| 10440 | 
            +
                  class ListYoutubeAssetAssociationsResponse
         | 
| 10441 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 10442 | 
            +
                  
         | 
| 10443 | 
            +
                    # A token to retrieve the next page of results.
         | 
| 10444 | 
            +
                    # Corresponds to the JSON property `nextPageToken`
         | 
| 10445 | 
            +
                    # @return [String]
         | 
| 10446 | 
            +
                    attr_accessor :next_page_token
         | 
| 10447 | 
            +
                  
         | 
| 10448 | 
            +
                    # The list of associations. This list will be absent if empty.
         | 
| 10449 | 
            +
                    # Corresponds to the JSON property `youtubeAssetAssociations`
         | 
| 10450 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::YoutubeAssetAssociation>]
         | 
| 10451 | 
            +
                    attr_accessor :youtube_asset_associations
         | 
| 10452 | 
            +
                  
         | 
| 10453 | 
            +
                    def initialize(**args)
         | 
| 10454 | 
            +
                       update!(**args)
         | 
| 10455 | 
            +
                    end
         | 
| 10456 | 
            +
                  
         | 
| 10457 | 
            +
                    # Update properties of this object
         | 
| 10458 | 
            +
                    def update!(**args)
         | 
| 10459 | 
            +
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 10460 | 
            +
                      @youtube_asset_associations = args[:youtube_asset_associations] if args.key?(:youtube_asset_associations)
         | 
| 10461 | 
            +
                    end
         | 
| 10462 | 
            +
                  end
         | 
| 10463 | 
            +
                  
         | 
| 9656 10464 | 
             
                  # A list of locations used for targeting.
         | 
| 9657 10465 | 
             
                  class LocationList
         | 
| 9658 10466 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -12551,6 +13359,51 @@ module Google | |
| 12551 13359 | 
             
                    end
         | 
| 12552 13360 | 
             
                  end
         | 
| 12553 13361 |  | 
| 13362 | 
            +
                  # A request message for UploadAdAsset. Next ID: 6
         | 
| 13363 | 
            +
                  class UploadAdAssetRequest
         | 
| 13364 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 13365 | 
            +
                  
         | 
| 13366 | 
            +
                    # Required. The type of the ad asset. Only supports image assets for now.
         | 
| 13367 | 
            +
                    # Corresponds to the JSON property `adAssetType`
         | 
| 13368 | 
            +
                    # @return [String]
         | 
| 13369 | 
            +
                    attr_accessor :ad_asset_type
         | 
| 13370 | 
            +
                  
         | 
| 13371 | 
            +
                    # Required. The filename of the ad asset, including the file extension. The
         | 
| 13372 | 
            +
                    # filename must be UTF-8 encoded with a maximum size of 240 bytes.
         | 
| 13373 | 
            +
                    # Corresponds to the JSON property `filename`
         | 
| 13374 | 
            +
                    # @return [String]
         | 
| 13375 | 
            +
                    attr_accessor :filename
         | 
| 13376 | 
            +
                  
         | 
| 13377 | 
            +
                    def initialize(**args)
         | 
| 13378 | 
            +
                       update!(**args)
         | 
| 13379 | 
            +
                    end
         | 
| 13380 | 
            +
                  
         | 
| 13381 | 
            +
                    # Update properties of this object
         | 
| 13382 | 
            +
                    def update!(**args)
         | 
| 13383 | 
            +
                      @ad_asset_type = args[:ad_asset_type] if args.key?(:ad_asset_type)
         | 
| 13384 | 
            +
                      @filename = args[:filename] if args.key?(:filename)
         | 
| 13385 | 
            +
                    end
         | 
| 13386 | 
            +
                  end
         | 
| 13387 | 
            +
                  
         | 
| 13388 | 
            +
                  # A response message for UploadAdAsset.
         | 
| 13389 | 
            +
                  class UploadAdAssetResponse
         | 
| 13390 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 13391 | 
            +
                  
         | 
| 13392 | 
            +
                    # A single ad asset. Next ID: 6
         | 
| 13393 | 
            +
                    # Corresponds to the JSON property `adAsset`
         | 
| 13394 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::AdAsset]
         | 
| 13395 | 
            +
                    attr_accessor :ad_asset
         | 
| 13396 | 
            +
                  
         | 
| 13397 | 
            +
                    def initialize(**args)
         | 
| 13398 | 
            +
                       update!(**args)
         | 
| 13399 | 
            +
                    end
         | 
| 13400 | 
            +
                  
         | 
| 13401 | 
            +
                    # Update properties of this object
         | 
| 13402 | 
            +
                    def update!(**args)
         | 
| 13403 | 
            +
                      @ad_asset = args[:ad_asset] if args.key?(:ad_asset)
         | 
| 13404 | 
            +
                    end
         | 
| 13405 | 
            +
                  end
         | 
| 13406 | 
            +
                  
         | 
| 12554 13407 | 
             
                  # Details for assigned URL targeting option. This will be populated in the
         | 
| 12555 13408 | 
             
                  # details field of an AssignedTargetingOption when targeting_type is `
         | 
| 12556 13409 | 
             
                  # TARGETING_TYPE_URL`.
         | 
| @@ -13171,6 +14024,238 @@ module Google | |
| 13171 14024 | 
             
                    end
         | 
| 13172 14025 | 
             
                  end
         | 
| 13173 14026 |  | 
| 14027 | 
            +
                  # A YouTube asset association between one linked entity and one YouTube asset.
         | 
| 14028 | 
            +
                  class YoutubeAssetAssociation
         | 
| 14029 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14030 | 
            +
                  
         | 
| 14031 | 
            +
                    # The YouTube asset linked with the entity in a YouTube asset association.
         | 
| 14032 | 
            +
                    # Corresponds to the JSON property `linkedYoutubeAsset`
         | 
| 14033 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::YoutubeAssetAssociationLinkedYouTubeAsset]
         | 
| 14034 | 
            +
                    attr_accessor :linked_youtube_asset
         | 
| 14035 | 
            +
                  
         | 
| 14036 | 
            +
                    # Identifier. The resource name of the association. For line item level
         | 
| 14037 | 
            +
                    # associations: The name pattern is `advertisers/`advertiser_id`/lineItems/`
         | 
| 14038 | 
            +
                    # line_item_id`/youtubeAssetTypes/`youtube_asset_type`/youtubeAssetAssociations/`
         | 
| 14039 | 
            +
                    # youtube_asset_association_id``. For ad group level associations: The name
         | 
| 14040 | 
            +
                    # pattern is `advertisers/`advertiser_id`/adGroups/`ad_group_id`/
         | 
| 14041 | 
            +
                    # youtubeAssetTypes/`youtube_asset_type`/youtubeAssetAssociations/`
         | 
| 14042 | 
            +
                    # youtube_asset_association_id``. For location and affiliate location
         | 
| 14043 | 
            +
                    # associations: `youtube_asset_association_id` is the linked asset set ID if the
         | 
| 14044 | 
            +
                    # YouTube asset type (location or affiliate location) is enabled on the linked
         | 
| 14045 | 
            +
                    # line item or ad group, 0 if disabled. For sitelink associations: `
         | 
| 14046 | 
            +
                    # youtube_asset_association_id` is the linked asset ID.
         | 
| 14047 | 
            +
                    # Corresponds to the JSON property `name`
         | 
| 14048 | 
            +
                    # @return [String]
         | 
| 14049 | 
            +
                    attr_accessor :name
         | 
| 14050 | 
            +
                  
         | 
| 14051 | 
            +
                    # Required. The type of the linked YouTube asset in the association.
         | 
| 14052 | 
            +
                    # Corresponds to the JSON property `youtubeAssetType`
         | 
| 14053 | 
            +
                    # @return [String]
         | 
| 14054 | 
            +
                    attr_accessor :youtube_asset_type
         | 
| 14055 | 
            +
                  
         | 
| 14056 | 
            +
                    def initialize(**args)
         | 
| 14057 | 
            +
                       update!(**args)
         | 
| 14058 | 
            +
                    end
         | 
| 14059 | 
            +
                  
         | 
| 14060 | 
            +
                    # Update properties of this object
         | 
| 14061 | 
            +
                    def update!(**args)
         | 
| 14062 | 
            +
                      @linked_youtube_asset = args[:linked_youtube_asset] if args.key?(:linked_youtube_asset)
         | 
| 14063 | 
            +
                      @name = args[:name] if args.key?(:name)
         | 
| 14064 | 
            +
                      @youtube_asset_type = args[:youtube_asset_type] if args.key?(:youtube_asset_type)
         | 
| 14065 | 
            +
                    end
         | 
| 14066 | 
            +
                  end
         | 
| 14067 | 
            +
                  
         | 
| 14068 | 
            +
                  # An asset filter that matches eligible affiliate location assets for serving.
         | 
| 14069 | 
            +
                  class YoutubeAssetAssociationAffiliateLocationAssetFilter
         | 
| 14070 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14071 | 
            +
                  
         | 
| 14072 | 
            +
                    # The matching function for an affiliate location asset filter.
         | 
| 14073 | 
            +
                    # Corresponds to the JSON property `affiliateLocationMatchingFunction`
         | 
| 14074 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::YoutubeAssetAssociationAffiliateLocationAssetFilterAffiliateLocationMatchingFunction]
         | 
| 14075 | 
            +
                    attr_accessor :affiliate_location_matching_function
         | 
| 14076 | 
            +
                  
         | 
| 14077 | 
            +
                    # Required. The matching type of this affiliate location asset filter.
         | 
| 14078 | 
            +
                    # Corresponds to the JSON property `affiliateLocationMatchingType`
         | 
| 14079 | 
            +
                    # @return [String]
         | 
| 14080 | 
            +
                    attr_accessor :affiliate_location_matching_type
         | 
| 14081 | 
            +
                  
         | 
| 14082 | 
            +
                    # Output only. The ID of the asset set that matches the affiliate location
         | 
| 14083 | 
            +
                    # assets eligible for serving.
         | 
| 14084 | 
            +
                    # Corresponds to the JSON property `assetSetId`
         | 
| 14085 | 
            +
                    # @return [Fixnum]
         | 
| 14086 | 
            +
                    attr_accessor :asset_set_id
         | 
| 14087 | 
            +
                  
         | 
| 14088 | 
            +
                    def initialize(**args)
         | 
| 14089 | 
            +
                       update!(**args)
         | 
| 14090 | 
            +
                    end
         | 
| 14091 | 
            +
                  
         | 
| 14092 | 
            +
                    # Update properties of this object
         | 
| 14093 | 
            +
                    def update!(**args)
         | 
| 14094 | 
            +
                      @affiliate_location_matching_function = args[:affiliate_location_matching_function] if args.key?(:affiliate_location_matching_function)
         | 
| 14095 | 
            +
                      @affiliate_location_matching_type = args[:affiliate_location_matching_type] if args.key?(:affiliate_location_matching_type)
         | 
| 14096 | 
            +
                      @asset_set_id = args[:asset_set_id] if args.key?(:asset_set_id)
         | 
| 14097 | 
            +
                    end
         | 
| 14098 | 
            +
                  end
         | 
| 14099 | 
            +
                  
         | 
| 14100 | 
            +
                  # A chain for affiliate locations.
         | 
| 14101 | 
            +
                  class YoutubeAssetAssociationAffiliateLocationAssetFilterAffiliateLocationChain
         | 
| 14102 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14103 | 
            +
                  
         | 
| 14104 | 
            +
                    # Required. ID of the affiliate location chain.
         | 
| 14105 | 
            +
                    # Corresponds to the JSON property `chainId`
         | 
| 14106 | 
            +
                    # @return [Fixnum]
         | 
| 14107 | 
            +
                    attr_accessor :chain_id
         | 
| 14108 | 
            +
                  
         | 
| 14109 | 
            +
                    def initialize(**args)
         | 
| 14110 | 
            +
                       update!(**args)
         | 
| 14111 | 
            +
                    end
         | 
| 14112 | 
            +
                  
         | 
| 14113 | 
            +
                    # Update properties of this object
         | 
| 14114 | 
            +
                    def update!(**args)
         | 
| 14115 | 
            +
                      @chain_id = args[:chain_id] if args.key?(:chain_id)
         | 
| 14116 | 
            +
                    end
         | 
| 14117 | 
            +
                  end
         | 
| 14118 | 
            +
                  
         | 
| 14119 | 
            +
                  # The matching function for an affiliate location asset filter.
         | 
| 14120 | 
            +
                  class YoutubeAssetAssociationAffiliateLocationAssetFilterAffiliateLocationMatchingFunction
         | 
| 14121 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14122 | 
            +
                  
         | 
| 14123 | 
            +
                    # Optional. The chains that match the affiliate location assets for serving.
         | 
| 14124 | 
            +
                    # This is required to set when linking with affiliate location asset filters of
         | 
| 14125 | 
            +
                    # AffiliateLocationMatchingType#SELECTED_CHAINS.
         | 
| 14126 | 
            +
                    # Corresponds to the JSON property `chains`
         | 
| 14127 | 
            +
                    # @return [Array<Google::Apis::DisplayvideoV4::YoutubeAssetAssociationAffiliateLocationAssetFilterAffiliateLocationChain>]
         | 
| 14128 | 
            +
                    attr_accessor :chains
         | 
| 14129 | 
            +
                  
         | 
| 14130 | 
            +
                    def initialize(**args)
         | 
| 14131 | 
            +
                       update!(**args)
         | 
| 14132 | 
            +
                    end
         | 
| 14133 | 
            +
                  
         | 
| 14134 | 
            +
                    # Update properties of this object
         | 
| 14135 | 
            +
                    def update!(**args)
         | 
| 14136 | 
            +
                      @chains = args[:chains] if args.key?(:chains)
         | 
| 14137 | 
            +
                    end
         | 
| 14138 | 
            +
                  end
         | 
| 14139 | 
            +
                  
         | 
| 14140 | 
            +
                  # The YouTube asset linked with the entity in a YouTube asset association.
         | 
| 14141 | 
            +
                  class YoutubeAssetAssociationLinkedYouTubeAsset
         | 
| 14142 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14143 | 
            +
                  
         | 
| 14144 | 
            +
                    # An asset filter that matches eligible affiliate location assets for serving.
         | 
| 14145 | 
            +
                    # Corresponds to the JSON property `affiliateLocationAssetFilter`
         | 
| 14146 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::YoutubeAssetAssociationAffiliateLocationAssetFilter]
         | 
| 14147 | 
            +
                    attr_accessor :affiliate_location_asset_filter
         | 
| 14148 | 
            +
                  
         | 
| 14149 | 
            +
                    # An asset filter that matches eligible location assets for serving.
         | 
| 14150 | 
            +
                    # Corresponds to the JSON property `locationAssetFilter`
         | 
| 14151 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::YoutubeAssetAssociationLocationAssetFilter]
         | 
| 14152 | 
            +
                    attr_accessor :location_asset_filter
         | 
| 14153 | 
            +
                  
         | 
| 14154 | 
            +
                    # A sitelink asset.
         | 
| 14155 | 
            +
                    # Corresponds to the JSON property `sitelinkAsset`
         | 
| 14156 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::YoutubeAssetAssociationSitelinkAsset]
         | 
| 14157 | 
            +
                    attr_accessor :sitelink_asset
         | 
| 14158 | 
            +
                  
         | 
| 14159 | 
            +
                    def initialize(**args)
         | 
| 14160 | 
            +
                       update!(**args)
         | 
| 14161 | 
            +
                    end
         | 
| 14162 | 
            +
                  
         | 
| 14163 | 
            +
                    # Update properties of this object
         | 
| 14164 | 
            +
                    def update!(**args)
         | 
| 14165 | 
            +
                      @affiliate_location_asset_filter = args[:affiliate_location_asset_filter] if args.key?(:affiliate_location_asset_filter)
         | 
| 14166 | 
            +
                      @location_asset_filter = args[:location_asset_filter] if args.key?(:location_asset_filter)
         | 
| 14167 | 
            +
                      @sitelink_asset = args[:sitelink_asset] if args.key?(:sitelink_asset)
         | 
| 14168 | 
            +
                    end
         | 
| 14169 | 
            +
                  end
         | 
| 14170 | 
            +
                  
         | 
| 14171 | 
            +
                  # An asset filter that matches eligible location assets for serving.
         | 
| 14172 | 
            +
                  class YoutubeAssetAssociationLocationAssetFilter
         | 
| 14173 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14174 | 
            +
                  
         | 
| 14175 | 
            +
                    # Output only. The ID of the asset set that matches the location assets eligible
         | 
| 14176 | 
            +
                    # for serving.
         | 
| 14177 | 
            +
                    # Corresponds to the JSON property `assetSetId`
         | 
| 14178 | 
            +
                    # @return [Fixnum]
         | 
| 14179 | 
            +
                    attr_accessor :asset_set_id
         | 
| 14180 | 
            +
                  
         | 
| 14181 | 
            +
                    # The matching function for a location asset filter.
         | 
| 14182 | 
            +
                    # Corresponds to the JSON property `locationMatchingFunction`
         | 
| 14183 | 
            +
                    # @return [Google::Apis::DisplayvideoV4::YoutubeAssetAssociationLocationAssetFilterLocationMatchingFunction]
         | 
| 14184 | 
            +
                    attr_accessor :location_matching_function
         | 
| 14185 | 
            +
                  
         | 
| 14186 | 
            +
                    # Required. The matching type of this location asset filter.
         | 
| 14187 | 
            +
                    # Corresponds to the JSON property `locationMatchingType`
         | 
| 14188 | 
            +
                    # @return [String]
         | 
| 14189 | 
            +
                    attr_accessor :location_matching_type
         | 
| 14190 | 
            +
                  
         | 
| 14191 | 
            +
                    def initialize(**args)
         | 
| 14192 | 
            +
                       update!(**args)
         | 
| 14193 | 
            +
                    end
         | 
| 14194 | 
            +
                  
         | 
| 14195 | 
            +
                    # Update properties of this object
         | 
| 14196 | 
            +
                    def update!(**args)
         | 
| 14197 | 
            +
                      @asset_set_id = args[:asset_set_id] if args.key?(:asset_set_id)
         | 
| 14198 | 
            +
                      @location_matching_function = args[:location_matching_function] if args.key?(:location_matching_function)
         | 
| 14199 | 
            +
                      @location_matching_type = args[:location_matching_type] if args.key?(:location_matching_type)
         | 
| 14200 | 
            +
                    end
         | 
| 14201 | 
            +
                  end
         | 
| 14202 | 
            +
                  
         | 
| 14203 | 
            +
                  # The matching function for a location asset filter.
         | 
| 14204 | 
            +
                  class YoutubeAssetAssociationLocationAssetFilterLocationMatchingFunction
         | 
| 14205 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14206 | 
            +
                  
         | 
| 14207 | 
            +
                    # Optional. The business name filter. This can be set only when linking with
         | 
| 14208 | 
            +
                    # location asset filters of LocationMatchingType#FILTER. This is optional when
         | 
| 14209 | 
            +
                    # linking with location asset filters of LocationMatchingType#FILTER.
         | 
| 14210 | 
            +
                    # Corresponds to the JSON property `business`
         | 
| 14211 | 
            +
                    # @return [String]
         | 
| 14212 | 
            +
                    attr_accessor :business
         | 
| 14213 | 
            +
                  
         | 
| 14214 | 
            +
                    # Optional. The label filters. Label filters are OR'ed together. This can be set
         | 
| 14215 | 
            +
                    # only when linking with location asset filters of LocationMatchingType#FILTER.
         | 
| 14216 | 
            +
                    # This is optional when linking with location asset filters of
         | 
| 14217 | 
            +
                    # LocationMatchingType#FILTER.
         | 
| 14218 | 
            +
                    # Corresponds to the JSON property `labels`
         | 
| 14219 | 
            +
                    # @return [Array<String>]
         | 
| 14220 | 
            +
                    attr_accessor :labels
         | 
| 14221 | 
            +
                  
         | 
| 14222 | 
            +
                    # Optional. The selected location asset IDs. This is required to set when
         | 
| 14223 | 
            +
                    # linking with location asset filters of LocationMatchingType#SELECTED_ASSETS.
         | 
| 14224 | 
            +
                    # Corresponds to the JSON property `locationAssetIds`
         | 
| 14225 | 
            +
                    # @return [Array<Fixnum>]
         | 
| 14226 | 
            +
                    attr_accessor :location_asset_ids
         | 
| 14227 | 
            +
                  
         | 
| 14228 | 
            +
                    def initialize(**args)
         | 
| 14229 | 
            +
                       update!(**args)
         | 
| 14230 | 
            +
                    end
         | 
| 14231 | 
            +
                  
         | 
| 14232 | 
            +
                    # Update properties of this object
         | 
| 14233 | 
            +
                    def update!(**args)
         | 
| 14234 | 
            +
                      @business = args[:business] if args.key?(:business)
         | 
| 14235 | 
            +
                      @labels = args[:labels] if args.key?(:labels)
         | 
| 14236 | 
            +
                      @location_asset_ids = args[:location_asset_ids] if args.key?(:location_asset_ids)
         | 
| 14237 | 
            +
                    end
         | 
| 14238 | 
            +
                  end
         | 
| 14239 | 
            +
                  
         | 
| 14240 | 
            +
                  # A sitelink asset.
         | 
| 14241 | 
            +
                  class YoutubeAssetAssociationSitelinkAsset
         | 
| 14242 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14243 | 
            +
                  
         | 
| 14244 | 
            +
                    # Required. ID of the sitelink asset.
         | 
| 14245 | 
            +
                    # Corresponds to the JSON property `assetId`
         | 
| 14246 | 
            +
                    # @return [Fixnum]
         | 
| 14247 | 
            +
                    attr_accessor :asset_id
         | 
| 14248 | 
            +
                  
         | 
| 14249 | 
            +
                    def initialize(**args)
         | 
| 14250 | 
            +
                       update!(**args)
         | 
| 14251 | 
            +
                    end
         | 
| 14252 | 
            +
                  
         | 
| 14253 | 
            +
                    # Update properties of this object
         | 
| 14254 | 
            +
                    def update!(**args)
         | 
| 14255 | 
            +
                      @asset_id = args[:asset_id] if args.key?(:asset_id)
         | 
| 14256 | 
            +
                    end
         | 
| 14257 | 
            +
                  end
         | 
| 14258 | 
            +
                  
         | 
| 13174 14259 | 
             
                  # Details for YouTube channel assigned targeting option. This will be populated
         | 
| 13175 14260 | 
             
                  # in the youtube_channel_details field when targeting_type is `
         | 
| 13176 14261 | 
             
                  # TARGETING_TYPE_YOUTUBE_CHANNEL`.
         | 
| @@ -13199,6 +14284,26 @@ module Google | |
| 13199 14284 | 
             
                    end
         | 
| 13200 14285 | 
             
                  end
         | 
| 13201 14286 |  | 
| 14287 | 
            +
                  # The youtube video asset data of the ad asset.
         | 
| 14288 | 
            +
                  class YoutubeVideoAsset
         | 
| 14289 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 14290 | 
            +
                  
         | 
| 14291 | 
            +
                    # Required. The youtube video id of the asset. This is the 11 char string value
         | 
| 14292 | 
            +
                    # used in the Youtube video URL.
         | 
| 14293 | 
            +
                    # Corresponds to the JSON property `youtubeVideoId`
         | 
| 14294 | 
            +
                    # @return [String]
         | 
| 14295 | 
            +
                    attr_accessor :youtube_video_id
         | 
| 14296 | 
            +
                  
         | 
| 14297 | 
            +
                    def initialize(**args)
         | 
| 14298 | 
            +
                       update!(**args)
         | 
| 14299 | 
            +
                    end
         | 
| 14300 | 
            +
                  
         | 
| 14301 | 
            +
                    # Update properties of this object
         | 
| 14302 | 
            +
                    def update!(**args)
         | 
| 14303 | 
            +
                      @youtube_video_id = args[:youtube_video_id] if args.key?(:youtube_video_id)
         | 
| 14304 | 
            +
                    end
         | 
| 14305 | 
            +
                  end
         | 
| 14306 | 
            +
                  
         | 
| 13202 14307 | 
             
                  # Details for YouTube video assigned targeting option. This will be populated in
         | 
| 13203 14308 | 
             
                  # the youtube_video_details field when targeting_type is `
         | 
| 13204 14309 | 
             
                  # TARGETING_TYPE_YOUTUBE_VIDEO`.
         |