google-dfp-api 1.4.0 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/ChangeLog +6 -0
- data/lib/ad_manager_api/api_config.rb +26 -26
- data/lib/ad_manager_api/pql_statement_utils.rb +6 -7
- data/lib/ad_manager_api/v201811/activity_group_service.rb +54 -0
- data/lib/ad_manager_api/v201811/activity_group_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/activity_service.rb +54 -0
- data/lib/ad_manager_api/v201811/activity_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/ad_exclusion_rule_service.rb +62 -0
- data/lib/ad_manager_api/v201811/ad_exclusion_rule_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/ad_rule_service.rb +62 -0
- data/lib/ad_manager_api/v201811/ad_rule_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/audience_segment_service.rb +62 -0
- data/lib/ad_manager_api/v201811/audience_segment_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/base_rate_service.rb +62 -0
- data/lib/ad_manager_api/v201811/base_rate_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/cdn_configuration_service.rb +62 -0
- data/lib/ad_manager_api/v201811/cdn_configuration_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/company_service.rb +54 -0
- data/lib/ad_manager_api/v201811/company_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/contact_service.rb +54 -0
- data/lib/ad_manager_api/v201811/contact_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/content_bundle_service.rb +62 -0
- data/lib/ad_manager_api/v201811/content_bundle_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/content_service.rb +46 -0
- data/lib/ad_manager_api/v201811/content_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/creative_service.rb +54 -0
- data/lib/ad_manager_api/v201811/creative_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/creative_set_service.rb +54 -0
- data/lib/ad_manager_api/v201811/creative_set_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/creative_template_service.rb +38 -0
- data/lib/ad_manager_api/v201811/creative_template_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/creative_wrapper_service.rb +62 -0
- data/lib/ad_manager_api/v201811/creative_wrapper_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/custom_field_service.rb +86 -0
- data/lib/ad_manager_api/v201811/custom_field_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/custom_targeting_service.rb +94 -0
- data/lib/ad_manager_api/v201811/custom_targeting_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/dai_authentication_key_service.rb +62 -0
- data/lib/ad_manager_api/v201811/dai_authentication_key_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/exchange_rate_service.rb +62 -0
- data/lib/ad_manager_api/v201811/exchange_rate_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/forecast_service.rb +62 -0
- data/lib/ad_manager_api/v201811/forecast_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/inventory_service.rb +70 -0
- data/lib/ad_manager_api/v201811/inventory_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/label_service.rb +62 -0
- data/lib/ad_manager_api/v201811/label_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/line_item_creative_association_service.rb +78 -0
- data/lib/ad_manager_api/v201811/line_item_creative_association_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/line_item_service.rb +62 -0
- data/lib/ad_manager_api/v201811/line_item_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/line_item_template_service.rb +38 -0
- data/lib/ad_manager_api/v201811/line_item_template_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/live_stream_event_service.rb +70 -0
- data/lib/ad_manager_api/v201811/live_stream_event_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/mobile_application_service.rb +62 -0
- data/lib/ad_manager_api/v201811/mobile_application_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/native_style_service.rb +62 -0
- data/lib/ad_manager_api/v201811/native_style_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/network_service.rb +62 -0
- data/lib/ad_manager_api/v201811/network_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/order_service.rb +62 -0
- data/lib/ad_manager_api/v201811/order_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/package_service.rb +62 -0
- data/lib/ad_manager_api/v201811/package_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/placement_service.rb +62 -0
- data/lib/ad_manager_api/v201811/placement_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/premium_rate_service.rb +54 -0
- data/lib/ad_manager_api/v201811/premium_rate_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/product_package_item_service.rb +62 -0
- data/lib/ad_manager_api/v201811/product_package_item_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/product_package_service.rb +62 -0
- data/lib/ad_manager_api/v201811/product_package_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/product_service.rb +54 -0
- data/lib/ad_manager_api/v201811/product_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/product_template_service.rb +62 -0
- data/lib/ad_manager_api/v201811/product_template_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/proposal_line_item_service.rb +62 -0
- data/lib/ad_manager_api/v201811/proposal_line_item_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/proposal_service.rb +70 -0
- data/lib/ad_manager_api/v201811/proposal_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/publisher_query_language_service.rb +38 -0
- data/lib/ad_manager_api/v201811/publisher_query_language_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/rate_card_service.rb +62 -0
- data/lib/ad_manager_api/v201811/rate_card_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/reconciliation_line_item_report_service.rb +46 -0
- data/lib/ad_manager_api/v201811/reconciliation_line_item_report_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/reconciliation_order_report_service.rb +54 -0
- data/lib/ad_manager_api/v201811/reconciliation_order_report_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/reconciliation_report_row_service.rb +46 -0
- data/lib/ad_manager_api/v201811/reconciliation_report_row_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/reconciliation_report_service.rb +46 -0
- data/lib/ad_manager_api/v201811/reconciliation_report_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/report_service.rb +70 -0
- data/lib/ad_manager_api/v201811/report_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/suggested_ad_unit_service.rb +46 -0
- data/lib/ad_manager_api/v201811/suggested_ad_unit_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/team_service.rb +62 -0
- data/lib/ad_manager_api/v201811/team_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/user_service.rb +78 -0
- data/lib/ad_manager_api/v201811/user_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/user_team_association_service.rb +62 -0
- data/lib/ad_manager_api/v201811/user_team_association_service_registry.rb +45 -0
- data/lib/ad_manager_api/v201811/workflow_request_service.rb +46 -0
- data/lib/ad_manager_api/v201811/workflow_request_service_registry.rb +45 -0
- data/lib/ad_manager_api/version.rb +1 -1
- metadata +105 -3
@@ -0,0 +1,45 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:04.
|
9
|
+
|
10
|
+
require 'ad_manager_api/errors'
|
11
|
+
|
12
|
+
module AdManagerApi; module V201811; module ProductPackageService
|
13
|
+
class ProductPackageServiceRegistry
|
14
|
+
PRODUCTPACKAGESERVICE_METHODS = {:create_product_packages=>{:input=>[{:name=>:product_packages, :type=>"ProductPackage", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"create_product_packages_response", :fields=>[{:name=>:rval, :type=>"ProductPackage", :min_occurs=>0, :max_occurs=>:unbounded}]}}, :get_product_packages_by_statement=>{:input=>[{:name=>:statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"get_product_packages_by_statement_response", :fields=>[{:name=>:rval, :type=>"ProductPackagePage", :min_occurs=>0, :max_occurs=>1}]}}, :perform_product_package_action=>{:input=>[{:name=>:action, :type=>"ProductPackageAction", :min_occurs=>0, :max_occurs=>1}, {:name=>:statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"perform_product_package_action_response", :fields=>[{:name=>:rval, :type=>"UpdateResult", :min_occurs=>0, :max_occurs=>1}]}}, :update_product_packages=>{:input=>[{:name=>:product_packages, :type=>"ProductPackage", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"update_product_packages_response", :fields=>[{:name=>:rval, :type=>"ProductPackage", :min_occurs=>0, :max_occurs=>:unbounded}]}}}
|
15
|
+
PRODUCTPACKAGESERVICE_TYPES = {:ObjectValue=>{:fields=>[], :abstract=>true, :base=>"Value"}, :ActivateProductPackages=>{:fields=>[], :base=>"ProductPackageAction"}, :ApiError=>{:fields=>[{:name=>:field_path, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:field_path_elements, :type=>"FieldPathElement", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:trigger, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:error_string, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :ApiException=>{:fields=>[{:name=>:errors, :type=>"ApiError", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"ApplicationException"}, :ApiVersionError=>{:fields=>[{:name=>:reason, :type=>"ApiVersionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ApplicationException=>{:fields=>[{:name=>:message, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :ArchiveProductPackages=>{:fields=>[], :base=>"ProductPackageAction"}, :AuthenticationError=>{:fields=>[{:name=>:reason, :type=>"AuthenticationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BaseCustomFieldValue=>{:fields=>[{:name=>:custom_field_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :BaseRateError=>{:fields=>[{:name=>:reason, :type=>"BaseRateError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BooleanValue=>{:fields=>[{:name=>:value, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :CollectionSizeError=>{:fields=>[{:name=>:reason, :type=>"CollectionSizeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CommonError=>{:fields=>[{:name=>:reason, :type=>"CommonError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CustomFieldValue=>{:fields=>[{:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :Date=>{:fields=>[{:name=>:year, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:month, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:day, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :DateTime=>{:fields=>[{:name=>:date, :type=>"Date", :min_occurs=>0, :max_occurs=>1}, {:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:second, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_zone_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeValue=>{:fields=>[{:name=>:value, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DateValue=>{:fields=>[{:name=>:value, :type=>"Date", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DeactivateProductPackages=>{:fields=>[], :base=>"ProductPackageAction"}, :DropDownCustomFieldValue=>{:fields=>[{:name=>:custom_field_option_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :EntityChildrenLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityChildrenLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :EntityLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FeatureError=>{:fields=>[{:name=>:reason, :type=>"FeatureError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FieldPathElement=>{:fields=>[{:name=>:field, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :InternalApiError=>{:fields=>[{:name=>:reason, :type=>"InternalApiError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NotNullError=>{:fields=>[{:name=>:reason, :type=>"NotNullError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NullError=>{:fields=>[{:name=>:reason, :type=>"NullError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NumberValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :ParseError=>{:fields=>[{:name=>:reason, :type=>"ParseError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PermissionError=>{:fields=>[{:name=>:reason, :type=>"PermissionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductPackageAction=>{:fields=>[], :abstract=>true}, :ProductPackageActionError=>{:fields=>[{:name=>:reason, :type=>"ProductPackageActionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductPackage=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:notes, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:status, :type=>"ProductPackageStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_archived, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:rate_card_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:custom_field_values, :type=>"BaseCustomFieldValue", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:last_modified_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}]}, :ProductPackageItemError=>{:fields=>[{:name=>:reason, :type=>"ProductPackageItemError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductPackagePage=>{:fields=>[{:name=>:total_result_set_size, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:results, :type=>"ProductPackage", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ProductPackageRateCardAssociationError=>{:fields=>[{:name=>:reason, :type=>"ProductPackageRateCardAssociationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublisherQueryLanguageContextError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageContextError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublisherQueryLanguageSyntaxError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageSyntaxError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :QuotaError=>{:fields=>[{:name=>:reason, :type=>"QuotaError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RangeError=>{:fields=>[{:name=>:reason, :type=>"RangeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RateCardError=>{:fields=>[{:name=>:reason, :type=>"RateCardError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredCollectionError=>{:fields=>[{:name=>:reason, :type=>"RequiredCollectionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredError=>{:fields=>[{:name=>:reason, :type=>"RequiredError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ServerError=>{:fields=>[{:name=>:reason, :type=>"ServerError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :SetValue=>{:fields=>[{:name=>:values, :type=>"Value", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"Value"}, :SoapRequestHeader=>{:fields=>[{:name=>:network_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:application_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :SoapResponseHeader=>{:fields=>[{:name=>:request_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:response_time, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :Statement=>{:fields=>[{:name=>:query, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:values, :type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>:unbounded}]}, :StatementError=>{:fields=>[{:name=>:reason, :type=>"StatementError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringFormatError=>{:fields=>[{:name=>:reason, :type=>"StringFormatError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringLengthError=>{:fields=>[{:name=>:reason, :type=>"StringLengthError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :String_ValueMapEntry=>{:fields=>[{:name=>:key, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}]}, :TextValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :UnarchiveProductPackages=>{:fields=>[], :base=>"ProductPackageAction"}, :UniqueError=>{:fields=>[], :base=>"ApiError"}, :UpdateResult=>{:fields=>[{:name=>:num_changes, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :Value=>{:fields=>[], :abstract=>true}, :"ApiVersionError.Reason"=>{:type=>"string", :enumerations=>["UPDATE_TO_NEWER_VERSION", "UNKNOWN"]}, :"AuthenticationError.Reason"=>{:type=>"string", :enumerations=>["AMBIGUOUS_SOAP_REQUEST_HEADER", "INVALID_EMAIL", "AUTHENTICATION_FAILED", "INVALID_OAUTH_SIGNATURE", "INVALID_SERVICE", "MISSING_SOAP_REQUEST_HEADER", "MISSING_AUTHENTICATION_HTTP_HEADER", "MISSING_AUTHENTICATION", "NOT_WHITELISTED_FOR_API_ACCESS", "NO_NETWORKS_TO_ACCESS", "NETWORK_NOT_FOUND", "NETWORK_CODE_REQUIRED", "CONNECTION_ERROR", "GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK", "UNDER_INVESTIGATION", "UNKNOWN"]}, :"BaseRateError.Reason"=>{:type=>"string", :enumerations=>["INVALID_CURRENCY_CODE", "PRODUCT_TEMPLATE_ARCHIVED", "PRODUCT_PACKAGE_ITEM_ARCHIVED", "CANNOT_QUERY_ON_MULTIPLE_TYPES", "PRODUCT_PACKAGE_RATE_CARD_ASSOCIATION_MISSING", "UNSUPPORTED_OPERATION", "PRODUCT_PACKAGE_ACTIVE", "PRODUCT_TEMPLATE_BASE_RATE_NOT_FOUND", "PRODUCT_BASE_RATE_EXISTS", "INVALID_RATE_CARD_CHANNEL", "ZERO_MARKETPLACE_RATE_NOT_SUPPORTED", "UNKNOWN"]}, :"CollectionSizeError.Reason"=>{:type=>"string", :enumerations=>["TOO_LARGE", "UNKNOWN"]}, :"CommonError.Reason"=>{:type=>"string", :enumerations=>["NOT_FOUND", "ALREADY_EXISTS", "NOT_APPLICABLE", "DUPLICATE_OBJECT", "CANNOT_UPDATE", "CONCURRENT_MODIFICATION", "UNKNOWN"]}, :"EntityChildrenLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["LINE_ITEM_LIMIT_FOR_ORDER_REACHED", "CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED", "AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED", "CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED", "ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED", "PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED", "PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED", "PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PREMIUM_LIMIT_FOR_RATE_CARD_REACHED", "AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED", "NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED", "UNKNOWN"]}, :"EntityLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["CUSTOM_TARGETING_VALUES_LIMIT_REACHED", "AD_EXCLUSION_RULES_LIMIT_REACHED", "FIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED", "PLACEMENTS_LIMIT_REACHED", "LINE_ITEMS_LIMIT_REACHED", "UNKNOWN"]}, :"FeatureError.Reason"=>{:type=>"string", :enumerations=>["MISSING_FEATURE", "UNKNOWN"]}, :"InternalApiError.Reason"=>{:type=>"string", :enumerations=>["UNEXPECTED_INTERNAL_API_ERROR", "TRANSIENT_ERROR", "UNKNOWN", "DOWNTIME", "ERROR_GENERATING_RESPONSE"]}, :"NotNullError.Reason"=>{:type=>"string", :enumerations=>["ARG1_NULL", "ARG2_NULL", "ARG3_NULL", "NULL", "UNKNOWN"]}, :"NullError.Reason"=>{:type=>"string", :enumerations=>["NULL_CONTENT"]}, :"ParseError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"PermissionError.Reason"=>{:type=>"string", :enumerations=>["PERMISSION_DENIED", "UNKNOWN"]}, :"ProductPackageActionError.Reason"=>{:type=>"string", :enumerations=>["ACTIVATE_WITH_INACTIVE_MANDATORY_PRODUCT", "NOT_APPLICABLE", "UNKNOWN"]}, :"ProductPackageItemError.Reason"=>{:type=>"string", :enumerations=>["ARCHIVED_PRODUCT_NOT_ALLOWED", "INACTIVE_MANDATORY_PRODUCT_NOT_ALLOWED", "UNKNOWN"]}, :"ProductPackageRateCardAssociationError.Reason"=>{:type=>"string", :enumerations=>["INVALID_RATE_CARD_ID", "INVALID_PRODUCT_PACKAGE_ID", "UNKNOWN"]}, :ProductPackageStatus=>{:type=>"string", :enumerations=>["ACTIVE", "INACTIVE", "UNKNOWN"]}, :"PublisherQueryLanguageContextError.Reason"=>{:type=>"string", :enumerations=>["UNEXECUTABLE", "UNKNOWN"]}, :"PublisherQueryLanguageSyntaxError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"QuotaError.Reason"=>{:type=>"string", :enumerations=>["EXCEEDED_QUOTA", "UNKNOWN", "REPORT_JOB_LIMIT"]}, :"RangeError.Reason"=>{:type=>"string", :enumerations=>["TOO_HIGH", "TOO_LOW", "UNKNOWN"]}, :"RateCardError.Reason"=>{:type=>"string", :enumerations=>["INVALID_CURRENCY_CODE", "INVALID_PRICING_MODEL", "PRODUCT_PACKAGE_NOT_APPLICABLE_ON_MARKETPLACE_RATE_CARD", "UNSUPPORTED_CURRENCY_CODE", "UNCHANGEABLE_CURRENCY_CODE", "UNCHANGEABLE_PRICING_MODEL", "MARKETPLACE_RATE_CARD_NOT_UNIQUE", "NOT_ACCEPT_DEALS_SALES_ON_LEGAL_AGREEMENT", "UNKNOWN"]}, :"RequiredCollectionError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "UNKNOWN"]}, :"RequiredError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED"]}, :"ServerError.Reason"=>{:type=>"string", :enumerations=>["SERVER_ERROR", "SERVER_BUSY", "UNKNOWN"]}, :"StatementError.Reason"=>{:type=>"string", :enumerations=>["VARIABLE_NOT_BOUND_TO_VALUE", "UNKNOWN"]}, :"StringFormatError.Reason"=>{:type=>"string", :enumerations=>["UNKNOWN", "ILLEGAL_CHARS", "INVALID_FORMAT"]}, :"StringLengthError.Reason"=>{:type=>"string", :enumerations=>["TOO_LONG", "TOO_SHORT", "UNKNOWN"]}}
|
16
|
+
PRODUCTPACKAGESERVICE_NAMESPACES = []
|
17
|
+
|
18
|
+
def self.get_method_signature(method_name)
|
19
|
+
return PRODUCTPACKAGESERVICE_METHODS[method_name.to_sym]
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.get_type_signature(type_name)
|
23
|
+
return PRODUCTPACKAGESERVICE_TYPES[type_name.to_sym]
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.get_namespace(index)
|
27
|
+
return PRODUCTPACKAGESERVICE_NAMESPACES[index]
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
# Base class for exceptions.
|
32
|
+
class ApplicationException < AdManagerApi::Errors::ApiException
|
33
|
+
attr_reader :message # string
|
34
|
+
end
|
35
|
+
|
36
|
+
# Exception class for holding a list of service errors.
|
37
|
+
class ApiException < ApplicationException
|
38
|
+
attr_reader :errors # ApiError
|
39
|
+
def initialize(exception_fault)
|
40
|
+
@array_fields ||= []
|
41
|
+
@array_fields << 'errors'
|
42
|
+
super(exception_fault, ProductPackageServiceRegistry)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end; end; end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:06.
|
9
|
+
|
10
|
+
require 'ads_common/savon_service'
|
11
|
+
require 'ad_manager_api/v201811/product_service_registry'
|
12
|
+
|
13
|
+
module AdManagerApi; module V201811; module ProductService
|
14
|
+
class ProductService < AdsCommon::SavonService
|
15
|
+
def initialize(config, endpoint)
|
16
|
+
namespace = 'https://www.google.com/apis/ads/publisher/v201811'
|
17
|
+
super(config, endpoint, namespace, :v201811)
|
18
|
+
end
|
19
|
+
|
20
|
+
def get_products_by_statement(*args, &block)
|
21
|
+
return execute_action('get_products_by_statement', args, &block)
|
22
|
+
end
|
23
|
+
|
24
|
+
def get_products_by_statement_to_xml(*args)
|
25
|
+
return get_soap_xml('get_products_by_statement', args)
|
26
|
+
end
|
27
|
+
|
28
|
+
def perform_product_action(*args, &block)
|
29
|
+
return execute_action('perform_product_action', args, &block)
|
30
|
+
end
|
31
|
+
|
32
|
+
def perform_product_action_to_xml(*args)
|
33
|
+
return get_soap_xml('perform_product_action', args)
|
34
|
+
end
|
35
|
+
|
36
|
+
def update_products(*args, &block)
|
37
|
+
return execute_action('update_products', args, &block)
|
38
|
+
end
|
39
|
+
|
40
|
+
def update_products_to_xml(*args)
|
41
|
+
return get_soap_xml('update_products', args)
|
42
|
+
end
|
43
|
+
|
44
|
+
private
|
45
|
+
|
46
|
+
def get_service_registry()
|
47
|
+
return ProductServiceRegistry
|
48
|
+
end
|
49
|
+
|
50
|
+
def get_module()
|
51
|
+
return AdManagerApi::V201811::ProductService
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end; end; end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:06.
|
9
|
+
|
10
|
+
require 'ad_manager_api/errors'
|
11
|
+
|
12
|
+
module AdManagerApi; module V201811; module ProductService
|
13
|
+
class ProductServiceRegistry
|
14
|
+
PRODUCTSERVICE_METHODS = {:get_products_by_statement=>{:input=>[{:name=>:statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"get_products_by_statement_response", :fields=>[{:name=>:rval, :type=>"ProductPage", :min_occurs=>0, :max_occurs=>1}]}}, :perform_product_action=>{:input=>[{:name=>:product_action, :type=>"ProductAction", :min_occurs=>0, :max_occurs=>1}, {:name=>:filter_statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"perform_product_action_response", :fields=>[{:name=>:rval, :type=>"UpdateResult", :min_occurs=>0, :max_occurs=>1}]}}, :update_products=>{:input=>[{:name=>:products, :type=>"Product", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"update_products_response", :fields=>[{:name=>:rval, :type=>"Product", :min_occurs=>0, :max_occurs=>:unbounded}]}}}
|
15
|
+
PRODUCTSERVICE_TYPES = {:ObjectValue=>{:fields=>[], :abstract=>true, :base=>"Value"}, :ActivateProducts=>{:fields=>[], :base=>"ProductAction"}, :AdUnitTargeting=>{:fields=>[{:name=>:ad_unit_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:include_descendants, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ApiError=>{:fields=>[{:name=>:field_path, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:field_path_elements, :type=>"FieldPathElement", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:trigger, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:error_string, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :ApiException=>{:fields=>[{:name=>:errors, :type=>"ApiError", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"ApplicationException"}, :TechnologyTargeting=>{:fields=>[{:name=>:bandwidth_group_targeting, :type=>"BandwidthGroupTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_targeting, :type=>"BrowserTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_language_targeting, :type=>"BrowserLanguageTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_capability_targeting, :type=>"DeviceCapabilityTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_category_targeting, :type=>"DeviceCategoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_targeting, :type=>"DeviceManufacturerTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carrier_targeting, :type=>"MobileCarrierTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_targeting, :type=>"MobileDeviceTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_submodel_targeting, :type=>"MobileDeviceSubmodelTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_targeting, :type=>"OperatingSystemTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_version_targeting, :type=>"OperatingSystemVersionTargeting", :min_occurs=>0, :max_occurs=>1}]}, :ApiVersionError=>{:fields=>[{:name=>:reason, :type=>"ApiVersionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ApplicationException=>{:fields=>[{:name=>:message, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :AppliedLabel=>{:fields=>[{:name=>:label_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_negated, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :AuthenticationError=>{:fields=>[{:name=>:reason, :type=>"AuthenticationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BandwidthGroup=>{:fields=>[], :base=>"Technology"}, :BandwidthGroupTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:bandwidth_groups, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BaseCustomFieldValue=>{:fields=>[{:name=>:custom_field_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :BaseRateError=>{:fields=>[{:name=>:reason, :type=>"BaseRateError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BooleanValue=>{:fields=>[{:name=>:value, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :Browser=>{:fields=>[{:name=>:major_version, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:minor_version, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :BrowserLanguage=>{:fields=>[], :base=>"Technology"}, :BrowserLanguageTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_languages, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BrowserTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:browsers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :CollectionSizeError=>{:fields=>[{:name=>:reason, :type=>"CollectionSizeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CommonError=>{:fields=>[{:name=>:reason, :type=>"CommonError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ContentMetadataKeyHierarchyTargeting=>{:fields=>[{:name=>:custom_targeting_value_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ContentMetadataTargetingError=>{:fields=>[{:name=>:reason, :type=>"ContentMetadataTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ContentTargeting=>{:fields=>[{:name=>:targeted_content_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_content_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_video_content_bundle_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_video_content_bundle_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_content_metadata, :type=>"ContentMetadataKeyHierarchyTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_content_metadata, :type=>"ContentMetadataKeyHierarchyTargeting", :min_occurs=>0, :max_occurs=>:unbounded}]}, :CreativePlaceholder=>{:fields=>[{:name=>:size, :type=>"Size", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_template_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:companions, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:effective_applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:expected_creative_count, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_size_type, :type=>"CreativeSizeType", :min_occurs=>0, :max_occurs=>1}, {:name=>:targeting_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_amp_only, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :CustomCriteria=>{:fields=>[{:name=>:key_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:value_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:operator, :type=>"CustomCriteria.ComparisonOperator", :min_occurs=>0, :max_occurs=>1}], :base=>"CustomCriteriaLeaf"}, :CustomCriteriaSet=>{:fields=>[{:name=>:logical_operator, :type=>"CustomCriteriaSet.LogicalOperator", :min_occurs=>0, :max_occurs=>1}, {:name=>:children, :type=>"CustomCriteriaNode", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"CustomCriteriaNode"}, :CustomFieldValue=>{:fields=>[{:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :CustomFieldValueError=>{:fields=>[{:name=>:reason, :type=>"CustomFieldValueError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CustomTargetingError=>{:fields=>[{:name=>:reason, :type=>"CustomTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CustomCriteriaLeaf=>{:fields=>[], :abstract=>true, :base=>"CustomCriteriaNode"}, :CustomCriteriaNode=>{:fields=>[], :abstract=>true}, :AudienceSegmentCriteria=>{:fields=>[{:name=>:operator, :type=>"AudienceSegmentCriteria.ComparisonOperator", :min_occurs=>0, :max_occurs=>1}, {:name=>:audience_segment_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"CustomCriteriaLeaf"}, :CustomizableAttributes=>{:fields=>[{:name=>:allow_geo_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_ad_unit_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_placement_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_user_domain_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_bandwidth_group_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_browser_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_browser_language_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_operating_system_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_device_capability_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_device_category_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_application_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_carrier_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_device_and_manufacturer_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_audience_segment_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_all_custom_targeting_keys_customizable, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:customizable_custom_targeting_key_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:allow_daypart_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_frequency_caps_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_delivery_settings_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_creative_placeholders_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :Date=>{:fields=>[{:name=>:year, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:month, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:day, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :DateTime=>{:fields=>[{:name=>:date, :type=>"Date", :min_occurs=>0, :max_occurs=>1}, {:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:second, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_zone_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeRange=>{:fields=>[{:name=>:start_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeRangeTargeting=>{:fields=>[{:name=>:targeted_date_time_ranges, :type=>"DateTimeRange", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DateTimeRangeTargetingError=>{:fields=>[{:name=>:reason, :type=>"DateTimeRangeTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :DateTimeValue=>{:fields=>[{:name=>:value, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DateValue=>{:fields=>[{:name=>:value, :type=>"Date", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DayPart=>{:fields=>[{:name=>:day_of_week, :type=>"DayOfWeek", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_time, :type=>"TimeOfDay", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_time, :type=>"TimeOfDay", :min_occurs=>0, :max_occurs=>1}]}, :DayPartTargeting=>{:fields=>[{:name=>:day_parts, :type=>"DayPart", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:time_zone, :type=>"DeliveryTimeZone", :min_occurs=>0, :max_occurs=>1}]}, :DayPartTargetingError=>{:fields=>[{:name=>:reason, :type=>"DayPartTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :DeactivateProducts=>{:fields=>[], :base=>"ProductAction"}, :DeviceCapability=>{:fields=>[], :base=>"Technology"}, :DeviceCapabilityTargeting=>{:fields=>[{:name=>:targeted_device_capabilities, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_device_capabilities, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeviceCategory=>{:fields=>[], :base=>"Technology"}, :DeviceCategoryTargeting=>{:fields=>[{:name=>:targeted_device_categories, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_device_categories, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeviceManufacturer=>{:fields=>[], :base=>"Technology"}, :DeviceManufacturerTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DropDownCustomFieldValue=>{:fields=>[{:name=>:custom_field_option_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :EntityChildrenLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityChildrenLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FeatureError=>{:fields=>[{:name=>:reason, :type=>"FeatureError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FieldPathElement=>{:fields=>[{:name=>:field, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :ForecastError=>{:fields=>[{:name=>:reason, :type=>"ForecastError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FrequencyCap=>{:fields=>[{:name=>:max_impressions, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:num_time_units, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_unit, :type=>"TimeUnit", :min_occurs=>0, :max_occurs=>1}]}, :GenericTargetingError=>{:fields=>[{:name=>:reason, :type=>"GenericTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :GeoTargeting=>{:fields=>[{:name=>:targeted_locations, :type=>"Location", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_locations, :type=>"Location", :min_occurs=>0, :max_occurs=>:unbounded}]}, :GeoTargetingError=>{:fields=>[{:name=>:reason, :type=>"GeoTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :InternalApiError=>{:fields=>[{:name=>:reason, :type=>"InternalApiError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :InventoryTargeting=>{:fields=>[{:name=>:targeted_ad_units, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_ad_units, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_placement_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :InventoryTargetingError=>{:fields=>[{:name=>:reason, :type=>"InventoryTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Location=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:type, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:canonical_parent_id, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:display_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :MobileApplicationTargeting=>{:fields=>[{:name=>:mobile_application_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :MobileCarrier=>{:fields=>[], :base=>"Technology"}, :MobileCarrierTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carriers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :MobileDevice=>{:fields=>[{:name=>:manufacturer_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :MobileDeviceSubmodel=>{:fields=>[{:name=>:mobile_device_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :MobileDeviceSubmodelTargeting=>{:fields=>[{:name=>:targeted_mobile_device_submodels, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_mobile_device_submodels, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :MobileDeviceTargeting=>{:fields=>[{:name=>:targeted_mobile_devices, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_mobile_devices, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :NonProgrammaticProductError=>{:fields=>[{:name=>:reason, :type=>"NonProgrammaticProductError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NotNullError=>{:fields=>[{:name=>:reason, :type=>"NotNullError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NumberValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :OperatingSystem=>{:fields=>[], :base=>"Technology"}, :OperatingSystemTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_systems, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :OperatingSystemVersion=>{:fields=>[{:name=>:major_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minor_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:micro_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :OperatingSystemVersionTargeting=>{:fields=>[{:name=>:targeted_operating_system_versions, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_operating_system_versions, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ParseError=>{:fields=>[{:name=>:reason, :type=>"ParseError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PermissionError=>{:fields=>[{:name=>:reason, :type=>"PermissionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PreferredDealError=>{:fields=>[{:name=>:reason, :type=>"PreferredDealError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductAction=>{:fields=>[], :abstract=>true}, :ProductActionError=>{:fields=>[{:name=>:reason, :type=>"ProductActionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Product=>{:fields=>[{:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:name_source, :type=>"ValueSourceType", :min_occurs=>0, :max_occurs=>1}, {:name=>:status, :type=>"ProductStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:product_type, :type=>"ProductType", :min_occurs=>0, :max_occurs=>1}, {:name=>:product_template_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:notes, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:product_template_description, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:last_modified_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:rate_type, :type=>"RateType", :min_occurs=>0, :max_occurs=>1}, {:name=>:roadblocking_type, :type=>"RoadblockingType", :min_occurs=>0, :max_occurs=>1}, {:name=>:delivery_rate_type, :type=>"DeliveryRateType", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_rotation_type, :type=>"CreativeRotationType", :min_occurs=>0, :max_occurs=>1}, {:name=>:companion_delivery_option, :type=>"CompanionDeliveryOption", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_placeholders, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:line_item_type, :type=>"LineItemType", :min_occurs=>0, :max_occurs=>1}, {:name=>:priority, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:frequency_caps, :type=>"FrequencyCap", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:built_in_targeting, :type=>"Targeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:customizable_attributes, :type=>"CustomizableAttributes", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_field_values, :type=>"BaseCustomFieldValue", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:environment_type, :type=>"EnvironmentType", :min_occurs=>0, :max_occurs=>1}, {:name=>:product_marketplace_info, :type=>"ProductMarketplaceInfo", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_max_duration, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :ProductError=>{:fields=>[{:name=>:reason, :type=>"ProductError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductMarketplaceInfo=>{:fields=>[{:name=>:ad_exchange_environment, :type=>"AdExchangeEnvironment", :min_occurs=>0, :max_occurs=>1}, {:name=>:additional_terms, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:additional_terms_source, :type=>"ValueSourceType", :min_occurs=>0, :max_occurs=>1}]}, :ProductPage=>{:fields=>[{:name=>:total_result_set_size, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:results, :type=>"Product", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ProgrammaticEntitiesError=>{:fields=>[{:name=>:reason, :type=>"ProgrammaticEntitiesError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProgrammaticProductError=>{:fields=>[{:name=>:reason, :type=>"ProgrammaticProductError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublishProducts=>{:fields=>[], :base=>"ProductAction"}, :PublisherQueryLanguageContextError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageContextError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublisherQueryLanguageSyntaxError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageSyntaxError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :QuotaError=>{:fields=>[{:name=>:reason, :type=>"QuotaError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RangeError=>{:fields=>[{:name=>:reason, :type=>"RangeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequestPlatformTargeting=>{:fields=>[{:name=>:targeted_request_platforms, :type=>"RequestPlatform", :min_occurs=>0, :max_occurs=>:unbounded}]}, :RequiredCollectionError=>{:fields=>[{:name=>:reason, :type=>"RequiredCollectionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredError=>{:fields=>[{:name=>:reason, :type=>"RequiredError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredNumberError=>{:fields=>[{:name=>:reason, :type=>"RequiredNumberError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ServerError=>{:fields=>[{:name=>:reason, :type=>"ServerError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :SetValue=>{:fields=>[{:name=>:values, :type=>"Value", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"Value"}, :Size=>{:fields=>[{:name=>:width, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:height, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_aspect_ratio, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :SoapRequestHeader=>{:fields=>[{:name=>:network_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:application_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :SoapResponseHeader=>{:fields=>[{:name=>:request_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:response_time, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :Statement=>{:fields=>[{:name=>:query, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:values, :type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>:unbounded}]}, :StatementError=>{:fields=>[{:name=>:reason, :type=>"StatementError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringFormatError=>{:fields=>[{:name=>:reason, :type=>"StringFormatError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringLengthError=>{:fields=>[{:name=>:reason, :type=>"StringLengthError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :String_ValueMapEntry=>{:fields=>[{:name=>:key, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}]}, :Targeting=>{:fields=>[{:name=>:geo_targeting, :type=>"GeoTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:inventory_targeting, :type=>"InventoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:day_part_targeting, :type=>"DayPartTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:date_time_range_targeting, :type=>"DateTimeRangeTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:technology_targeting, :type=>"TechnologyTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_targeting, :type=>"CustomCriteriaSet", :min_occurs=>0, :max_occurs=>1}, {:name=>:user_domain_targeting, :type=>"UserDomainTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:content_targeting, :type=>"ContentTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_targeting, :type=>"VideoPositionTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_application_targeting, :type=>"MobileApplicationTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:request_platform_targeting, :type=>"RequestPlatformTargeting", :min_occurs=>0, :max_occurs=>1}]}, :Technology=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :TechnologyTargetingError=>{:fields=>[{:name=>:reason, :type=>"TechnologyTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :TextValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :TimeOfDay=>{:fields=>[{:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"MinuteOfHour", :min_occurs=>0, :max_occurs=>1}]}, :TypeError=>{:fields=>[], :base=>"ApiError"}, :UniqueError=>{:fields=>[], :base=>"ApiError"}, :UpdateResult=>{:fields=>[{:name=>:num_changes, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :UserDomainTargeting=>{:fields=>[{:name=>:domains, :type=>"string", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :UserDomainTargetingError=>{:fields=>[{:name=>:reason, :type=>"UserDomainTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Value=>{:fields=>[], :abstract=>true}, :VideoPosition=>{:fields=>[{:name=>:position_type, :type=>"VideoPosition.Type", :min_occurs=>0, :max_occurs=>1}, {:name=>:midroll_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :VideoPositionTargeting=>{:fields=>[{:name=>:targeted_positions, :type=>"VideoPositionTarget", :min_occurs=>0, :max_occurs=>:unbounded}]}, :VideoPositionTargetingError=>{:fields=>[{:name=>:reason, :type=>"VideoPositionTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :VideoPositionWithinPod=>{:fields=>[{:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :VideoPositionTarget=>{:fields=>[{:name=>:video_position, :type=>"VideoPosition", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_bumper_type, :type=>"VideoBumperType", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_within_pod, :type=>"VideoPositionWithinPod", :min_occurs=>0, :max_occurs=>1}]}, :WithdrawProducts=>{:fields=>[], :base=>"ProductAction"}, :AdExchangeEnvironment=>{:type=>"string", :enumerations=>["DISPLAY", "VIDEO", "GAMES", "MOBILE", "MOBILE_OUTSTREAM_VIDEO", "DISPLAY_OUTSTREAM_VIDEO", "UNKNOWN"]}, :"ApiVersionError.Reason"=>{:type=>"string", :enumerations=>["UPDATE_TO_NEWER_VERSION", "UNKNOWN"]}, :"AuthenticationError.Reason"=>{:type=>"string", :enumerations=>["AMBIGUOUS_SOAP_REQUEST_HEADER", "INVALID_EMAIL", "AUTHENTICATION_FAILED", "INVALID_OAUTH_SIGNATURE", "INVALID_SERVICE", "MISSING_SOAP_REQUEST_HEADER", "MISSING_AUTHENTICATION_HTTP_HEADER", "MISSING_AUTHENTICATION", "NOT_WHITELISTED_FOR_API_ACCESS", "NO_NETWORKS_TO_ACCESS", "NETWORK_NOT_FOUND", "NETWORK_CODE_REQUIRED", "CONNECTION_ERROR", "GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK", "UNDER_INVESTIGATION", "UNKNOWN"]}, :"BaseRateError.Reason"=>{:type=>"string", :enumerations=>["INVALID_CURRENCY_CODE", "PRODUCT_TEMPLATE_ARCHIVED", "PRODUCT_PACKAGE_ITEM_ARCHIVED", "CANNOT_QUERY_ON_MULTIPLE_TYPES", "PRODUCT_PACKAGE_RATE_CARD_ASSOCIATION_MISSING", "UNSUPPORTED_OPERATION", "PRODUCT_PACKAGE_ACTIVE", "PRODUCT_TEMPLATE_BASE_RATE_NOT_FOUND", "PRODUCT_BASE_RATE_EXISTS", "INVALID_RATE_CARD_CHANNEL", "ZERO_MARKETPLACE_RATE_NOT_SUPPORTED", "UNKNOWN"]}, :"CollectionSizeError.Reason"=>{:type=>"string", :enumerations=>["TOO_LARGE", "UNKNOWN"]}, :"CommonError.Reason"=>{:type=>"string", :enumerations=>["NOT_FOUND", "ALREADY_EXISTS", "NOT_APPLICABLE", "DUPLICATE_OBJECT", "CANNOT_UPDATE", "CONCURRENT_MODIFICATION", "UNKNOWN"]}, :CompanionDeliveryOption=>{:type=>"string", :enumerations=>["OPTIONAL", "AT_LEAST_ONE", "ALL", "UNKNOWN"]}, :"ContentMetadataTargetingError.Reason"=>{:type=>"string", :enumerations=>["VALUES_DO_NOT_BELONG_TO_A_HIERARCHY", "CONTENT_METADATA_TARGETING_DEPRECATED", "UNKNOWN"]}, :CreativeRotationType=>{:type=>"string", :enumerations=>["EVEN", "OPTIMIZED", "MANUAL", "SEQUENTIAL"]}, :CreativeSizeType=>{:type=>"string", :enumerations=>["PIXEL", "ASPECT_RATIO", "INTERSTITIAL", "NATIVE"]}, :"CustomCriteria.ComparisonOperator"=>{:type=>"string", :enumerations=>["IS", "IS_NOT"]}, :"CustomCriteriaSet.LogicalOperator"=>{:type=>"string", :enumerations=>["AND", "OR"]}, :"CustomFieldValueError.Reason"=>{:type=>"string", :enumerations=>["CUSTOM_FIELD_NOT_FOUND", "CUSTOM_FIELD_INACTIVE", "CUSTOM_FIELD_OPTION_NOT_FOUND", "UNKNOWN"]}, :"CustomTargetingError.Reason"=>{:type=>"string", :enumerations=>["KEY_NOT_FOUND", "KEY_COUNT_TOO_LARGE", "KEY_NAME_DUPLICATE", "KEY_NAME_EMPTY", "KEY_NAME_INVALID_LENGTH", "KEY_NAME_INVALID_CHARS", "KEY_NAME_RESERVED", "KEY_DISPLAY_NAME_INVALID_LENGTH", "VALUE_NOT_FOUND", "GET_VALUES_BY_STATEMENT_MUST_CONTAIN_KEY_ID", "VALUE_COUNT_FOR_KEY_TOO_LARGE", "VALUE_NAME_DUPLICATE", "VALUE_NAME_EMPTY", "VALUE_NAME_INVALID_LENGTH", "VALUE_NAME_INVALID_CHARS", "VALUE_DISPLAY_NAME_INVALID_LENGTH", "VALUE_MATCH_TYPE_NOT_ALLOWED", "VALUE_MATCH_TYPE_NOT_EXACT_FOR_PREDEFINED_KEY", "SUFFIX_MATCH_TYPE_NOT_ALLOWED", "CONTAINS_MATCH_TYPE_NOT_ALLOWED", "KEY_WITH_MISSING_VALUES", "INVALID_VALUE_FOR_KEY", "CANNOT_OR_DIFFERENT_KEYS", "INVALID_TARGETING_EXPRESSION", "DELETED_KEY_CANNOT_BE_USED_FOR_TARGETING", "DELETED_VALUE_CANNOT_BE_USED_FOR_TARGETING", "VIDEO_BROWSE_BY_KEY_CANNOT_BE_USED_FOR_CUSTOM_TARGETING", "CANNOT_DELETE_CUSTOM_KEY_USED_IN_CONTENT_METADATA_MAPPING", "CANNOT_DELETE_CUSTOM_VALUE_USED_IN_CONTENT_METADATA_MAPPING", "CANNOT_DELETE_CUSTOM_KEY_USED_IN_PARTNER_ASSIGNMENT_TARGETING", "CANNOT_DELETE_CUSTOM_VALUE_USED_IN_PARTNER_ASSIGNMENT_TARGETING", "CANNOT_TARGET_AUDIENCE_SEGMENT", "CANNOT_TARGET_INACTIVE_AUDIENCE_SEGMENT", "INVALID_AUDIENCE_SEGMENTS", "ONLY_APPROVED_AUDIENCE_SEGMENTS_CAN_BE_TARGETED", "UNKNOWN"]}, :"AudienceSegmentCriteria.ComparisonOperator"=>{:type=>"string", :enumerations=>["IS", "IS_NOT"]}, :"DateTimeRangeTargetingError.Reason"=>{:type=>"string", :enumerations=>["EMPTY_RANGES", "NOT_SPONSORSHIP_LINEITEM", "PAST_RANGES_CHANGED", "RANGES_OVERLAP", "RANGES_OUT_OF_LINEITEM_ACTIVE_PERIOD", "START_TIME_IS_NOT_START_OF_DAY", "END_TIME_IS_NOT_END_OF_DAY", "START_DATE_TIME_IS_IN_PAST", "RANGE_END_TIME_BEFORE_START_TIME", "END_DATE_TIME_IS_TOO_LATE", "LIMITED_RANGES_IN_UNLIMITED_LINEITEM", "UNKNOWN"]}, :DayOfWeek=>{:type=>"string", :enumerations=>["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]}, :"DayPartTargetingError.Reason"=>{:type=>"string", :enumerations=>["INVALID_HOUR", "INVALID_MINUTE", "END_TIME_NOT_AFTER_START_TIME", "TIME_PERIODS_OVERLAP", "UNKNOWN"]}, :DeliveryTimeZone=>{:type=>"string", :enumerations=>["PUBLISHER", "BROWSER"]}, :DeliveryRateType=>{:type=>"string", :enumerations=>["EVENLY", "FRONTLOADED", "AS_FAST_AS_POSSIBLE"]}, :"EntityChildrenLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["LINE_ITEM_LIMIT_FOR_ORDER_REACHED", "CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED", "AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED", "CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED", "ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED", "PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED", "PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED", "PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PREMIUM_LIMIT_FOR_RATE_CARD_REACHED", "AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED", "NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED", "UNKNOWN"]}, :EnvironmentType=>{:type=>"string", :enumerations=>["BROWSER", "VIDEO_PLAYER"]}, :"FeatureError.Reason"=>{:type=>"string", :enumerations=>["MISSING_FEATURE", "UNKNOWN"]}, :"ForecastError.Reason"=>{:type=>"string", :enumerations=>["SERVER_NOT_AVAILABLE", "INTERNAL_ERROR", "NO_FORECAST_YET", "NOT_ENOUGH_INVENTORY", "SUCCESS", "ZERO_LENGTH_RESERVATION", "EXCEEDED_QUOTA", "UNKNOWN"]}, :"GenericTargetingError.Reason"=>{:type=>"string", :enumerations=>["CONFLICTING_INCLUSION_OR_EXCLUSION_OF_SIBLINGS", "INCLUDING_DESCENDANTS_OF_EXCLUDED_CRITERIA", "UNKNOWN"]}, :"GeoTargetingError.Reason"=>{:type=>"string", :enumerations=>["TARGETED_LOCATIONS_NOT_EXCLUDABLE", "EXCLUDED_LOCATIONS_CANNOT_HAVE_CHILDREN_TARGETED", "POSTAL_CODES_CANNOT_BE_EXCLUDED", "UNTARGETABLE_LOCATION", "UNKNOWN"]}, :"InternalApiError.Reason"=>{:type=>"string", :enumerations=>["UNEXPECTED_INTERNAL_API_ERROR", "TRANSIENT_ERROR", "UNKNOWN", "DOWNTIME", "ERROR_GENERATING_RESPONSE"]}, :"InventoryTargetingError.Reason"=>{:type=>"string", :enumerations=>["AT_LEAST_ONE_PLACEMENT_OR_INVENTORY_UNIT_REQUIRED", "INVENTORY_CANNOT_BE_TARGETED_AND_EXCLUDED", "INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_TARGETED", "INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_EXCLUDED", "INVENTORY_UNIT_CANNOT_BE_EXCLUDED_IF_ANCESTOR_IS_EXCLUDED", "EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_TARGETED", "EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_EXCLUDED", "SELF_ONLY_INVENTORY_UNIT_NOT_ALLOWED", "SELF_ONLY_INVENTORY_UNIT_WITHOUT_DESCENDANTS", "YOUTUBE_AUDIENCE_SEGMENTS_CAN_ONLY_BE_TARGETED_WITH_YOUTUBE_SHARED_INVENTORY", "UNKNOWN"]}, :LineItemType=>{:type=>"string", :enumerations=>["SPONSORSHIP", "STANDARD", "NETWORK", "BULK", "PRICE_PRIORITY", "HOUSE", "LEGACY_DFP", "CLICK_TRACKING", "ADSENSE", "AD_EXCHANGE", "BUMPER", "ADMOB", "PREFERRED_DEAL", "UNKNOWN"]}, :MinuteOfHour=>{:type=>"string", :enumerations=>["ZERO", "FIFTEEN", "THIRTY", "FORTY_FIVE"]}, :"NonProgrammaticProductError.Reason"=>{:type=>"string", :enumerations=>["PRODUCT_MARKETPLACE_INFO_IS_NOT_NULL", "UNKNOWN"]}, :"NotNullError.Reason"=>{:type=>"string", :enumerations=>["ARG1_NULL", "ARG2_NULL", "ARG3_NULL", "NULL", "UNKNOWN"]}, :"ParseError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"PermissionError.Reason"=>{:type=>"string", :enumerations=>["PERMISSION_DENIED", "UNKNOWN"]}, :"PreferredDealError.Reason"=>{:type=>"string", :enumerations=>["INVALID_PRIORITY", "INVALID_RATE_TYPE", "INVALID_FREQUENCY_CAPS", "INVALID_ROADBLOCKING_TYPE", "INVALID_DELIVERY_RATE_TYPE", "UNKNOWN"]}, :"ProductActionError.Reason"=>{:type=>"string", :enumerations=>["NOT_APPLICABLE", "DEALS_LEGAL_AGREEMENT_NOT_ACCEPTED", "UNKNOWN"]}, :"ProductError.Reason"=>{:type=>"string", :enumerations=>["TEMPLATE_NOT_FOUND", "MALFORMED_PRODUCT_ID", "BAD_PRODUCT_ID_FEATURE", "BAD_PRODUCT_TEMPLATE_ID", "CANNOT_UPDATE_ARCHIVED_PRODUCT", "QUERY_TOO_LARGE", "PRODUCT_TEMPLATE_ID_IS_NOT_ZERO", "INVALID_RATE", "INVALID_CURRENCY", "UNKNOWN"]}, :ProductStatus=>{:type=>"string", :enumerations=>["ACTIVE", "INACTIVE", "ARCHIVED", "UNKNOWN"]}, :ProductType=>{:type=>"string", :enumerations=>["DFP", "OFFLINE", "NON_DFP", "UNKNOWN"]}, :"ProgrammaticEntitiesError.Reason"=>{:type=>"string", :enumerations=>["INVALID_RATE_TYPE", "INVALID_ENVIRONMENT_TYPE", "INVALID_PRODUCT_TYPE", "INVALID_LINE_ITEM_TYPE", "INVALID_ROADBLOCKING_TYPE", "INVALID_DELIVERY_RATE_TYPE", "INVALID_COMPANION_DELIVERY_OPTION", "INVALID_CREATIVE_ROTATION_TYPE", "INVALID_COMPANION_CREATIVE_PLACEHOLDER", "EMPTY_CREATIVE_PLACEHOLDER", "UNKNOWN"]}, :"ProgrammaticProductError.Reason"=>{:type=>"string", :enumerations=>["PRODUCT_MARKETPLACE_INFO_IS_NULL", "ENVIRONMENT_IS_NULL", "INVALID_AD_EXCHANGE_ENVIRONMENT", "UNKNOWN"]}, :ValueSourceType=>{:type=>"string", :enumerations=>["PARENT", "DIRECTLY_SPECIFIED", "UNKNOWN"]}, :"PublisherQueryLanguageContextError.Reason"=>{:type=>"string", :enumerations=>["UNEXECUTABLE", "UNKNOWN"]}, :"PublisherQueryLanguageSyntaxError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"QuotaError.Reason"=>{:type=>"string", :enumerations=>["EXCEEDED_QUOTA", "UNKNOWN", "REPORT_JOB_LIMIT"]}, :"RangeError.Reason"=>{:type=>"string", :enumerations=>["TOO_HIGH", "TOO_LOW", "UNKNOWN"]}, :RateType=>{:type=>"string", :enumerations=>["CPM", "CPC", "CPD", "CPU", "FLAT_FEE", "VCPM", "UNKNOWN"]}, :RequestPlatform=>{:type=>"string", :enumerations=>["UNKNOWN", "BROWSER", "MOBILE_APP", "VIDEO_PLAYER"]}, :"RequiredCollectionError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "UNKNOWN"]}, :"RequiredError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED"]}, :"RequiredNumberError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "TOO_LARGE_WITH_DETAILS", "TOO_SMALL_WITH_DETAILS", "UNKNOWN"]}, :RoadblockingType=>{:type=>"string", :enumerations=>["ONLY_ONE", "ONE_OR_MORE", "AS_MANY_AS_POSSIBLE", "ALL_ROADBLOCK", "CREATIVE_SET"]}, :"ServerError.Reason"=>{:type=>"string", :enumerations=>["SERVER_ERROR", "SERVER_BUSY", "UNKNOWN"]}, :"StatementError.Reason"=>{:type=>"string", :enumerations=>["VARIABLE_NOT_BOUND_TO_VALUE", "UNKNOWN"]}, :"StringFormatError.Reason"=>{:type=>"string", :enumerations=>["UNKNOWN", "ILLEGAL_CHARS", "INVALID_FORMAT"]}, :"StringLengthError.Reason"=>{:type=>"string", :enumerations=>["TOO_LONG", "TOO_SHORT", "UNKNOWN"]}, :"TechnologyTargetingError.Reason"=>{:type=>"string", :enumerations=>["MOBILE_LINE_ITEM_CONTAINS_WEB_TECH_CRITERIA", "WEB_LINE_ITEM_CONTAINS_MOBILE_TECH_CRITERIA", "MOBILE_CARRIER_TARGETING_FEATURE_NOT_ENABLED", "DEVICE_CAPABILITY_TARGETING_FEATURE_NOT_ENABLED", "DEVICE_CATEGORY_TARGETING_FEATURE_NOT_ENABLED", "UNKNOWN"]}, :TimeUnit=>{:type=>"string", :enumerations=>["MINUTE", "HOUR", "DAY", "WEEK", "MONTH", "LIFETIME", "POD", "STREAM", "UNKNOWN"]}, :"UserDomainTargetingError.Reason"=>{:type=>"string", :enumerations=>["INVALID_DOMAIN_NAMES", "UNKNOWN"]}, :VideoBumperType=>{:type=>"string", :enumerations=>["BEFORE", "AFTER"]}, :"VideoPosition.Type"=>{:type=>"string", :enumerations=>["PREROLL", "MIDROLL", "POSTROLL"]}, :"VideoPositionTargetingError.Reason"=>{:type=>"string", :enumerations=>["CANNOT_MIX_BUMPER_AND_NON_BUMPER_TARGETING", "INVALID_BUMPER_TARGETING", "UNKNOWN"]}}
|
16
|
+
PRODUCTSERVICE_NAMESPACES = []
|
17
|
+
|
18
|
+
def self.get_method_signature(method_name)
|
19
|
+
return PRODUCTSERVICE_METHODS[method_name.to_sym]
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.get_type_signature(type_name)
|
23
|
+
return PRODUCTSERVICE_TYPES[type_name.to_sym]
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.get_namespace(index)
|
27
|
+
return PRODUCTSERVICE_NAMESPACES[index]
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
# Base class for exceptions.
|
32
|
+
class ApplicationException < AdManagerApi::Errors::ApiException
|
33
|
+
attr_reader :message # string
|
34
|
+
end
|
35
|
+
|
36
|
+
# Exception class for holding a list of service errors.
|
37
|
+
class ApiException < ApplicationException
|
38
|
+
attr_reader :errors # ApiError
|
39
|
+
def initialize(exception_fault)
|
40
|
+
@array_fields ||= []
|
41
|
+
@array_fields << 'errors'
|
42
|
+
super(exception_fault, ProductServiceRegistry)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end; end; end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:07.
|
9
|
+
|
10
|
+
require 'ads_common/savon_service'
|
11
|
+
require 'ad_manager_api/v201811/product_template_service_registry'
|
12
|
+
|
13
|
+
module AdManagerApi; module V201811; module ProductTemplateService
|
14
|
+
class ProductTemplateService < AdsCommon::SavonService
|
15
|
+
def initialize(config, endpoint)
|
16
|
+
namespace = 'https://www.google.com/apis/ads/publisher/v201811'
|
17
|
+
super(config, endpoint, namespace, :v201811)
|
18
|
+
end
|
19
|
+
|
20
|
+
def create_product_templates(*args, &block)
|
21
|
+
return execute_action('create_product_templates', args, &block)
|
22
|
+
end
|
23
|
+
|
24
|
+
def create_product_templates_to_xml(*args)
|
25
|
+
return get_soap_xml('create_product_templates', args)
|
26
|
+
end
|
27
|
+
|
28
|
+
def get_product_templates_by_statement(*args, &block)
|
29
|
+
return execute_action('get_product_templates_by_statement', args, &block)
|
30
|
+
end
|
31
|
+
|
32
|
+
def get_product_templates_by_statement_to_xml(*args)
|
33
|
+
return get_soap_xml('get_product_templates_by_statement', args)
|
34
|
+
end
|
35
|
+
|
36
|
+
def perform_product_template_action(*args, &block)
|
37
|
+
return execute_action('perform_product_template_action', args, &block)
|
38
|
+
end
|
39
|
+
|
40
|
+
def perform_product_template_action_to_xml(*args)
|
41
|
+
return get_soap_xml('perform_product_template_action', args)
|
42
|
+
end
|
43
|
+
|
44
|
+
def update_product_templates(*args, &block)
|
45
|
+
return execute_action('update_product_templates', args, &block)
|
46
|
+
end
|
47
|
+
|
48
|
+
def update_product_templates_to_xml(*args)
|
49
|
+
return get_soap_xml('update_product_templates', args)
|
50
|
+
end
|
51
|
+
|
52
|
+
private
|
53
|
+
|
54
|
+
def get_service_registry()
|
55
|
+
return ProductTemplateServiceRegistry
|
56
|
+
end
|
57
|
+
|
58
|
+
def get_module()
|
59
|
+
return AdManagerApi::V201811::ProductTemplateService
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end; end; end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:07.
|
9
|
+
|
10
|
+
require 'ad_manager_api/errors'
|
11
|
+
|
12
|
+
module AdManagerApi; module V201811; module ProductTemplateService
|
13
|
+
class ProductTemplateServiceRegistry
|
14
|
+
PRODUCTTEMPLATESERVICE_METHODS = {:create_product_templates=>{:input=>[{:name=>:product_templates, :type=>"ProductTemplate", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"create_product_templates_response", :fields=>[{:name=>:rval, :type=>"ProductTemplate", :min_occurs=>0, :max_occurs=>:unbounded}]}}, :get_product_templates_by_statement=>{:input=>[{:name=>:statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"get_product_templates_by_statement_response", :fields=>[{:name=>:rval, :type=>"ProductTemplatePage", :min_occurs=>0, :max_occurs=>1}]}}, :perform_product_template_action=>{:input=>[{:name=>:action, :type=>"ProductTemplateAction", :min_occurs=>0, :max_occurs=>1}, {:name=>:filter_statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"perform_product_template_action_response", :fields=>[{:name=>:rval, :type=>"UpdateResult", :min_occurs=>0, :max_occurs=>1}]}}, :update_product_templates=>{:input=>[{:name=>:product_templates, :type=>"ProductTemplate", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"update_product_templates_response", :fields=>[{:name=>:rval, :type=>"ProductTemplate", :min_occurs=>0, :max_occurs=>:unbounded}]}}}
|
15
|
+
PRODUCTTEMPLATESERVICE_TYPES = {:ObjectValue=>{:fields=>[], :abstract=>true, :base=>"Value"}, :ActivateProductTemplates=>{:fields=>[], :base=>"ProductTemplateAction"}, :AdUnitTargeting=>{:fields=>[{:name=>:ad_unit_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:include_descendants, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ApiError=>{:fields=>[{:name=>:field_path, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:field_path_elements, :type=>"FieldPathElement", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:trigger, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:error_string, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :ApiException=>{:fields=>[{:name=>:errors, :type=>"ApiError", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"ApplicationException"}, :TechnologyTargeting=>{:fields=>[{:name=>:bandwidth_group_targeting, :type=>"BandwidthGroupTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_targeting, :type=>"BrowserTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_language_targeting, :type=>"BrowserLanguageTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_capability_targeting, :type=>"DeviceCapabilityTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_category_targeting, :type=>"DeviceCategoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_targeting, :type=>"DeviceManufacturerTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carrier_targeting, :type=>"MobileCarrierTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_targeting, :type=>"MobileDeviceTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_submodel_targeting, :type=>"MobileDeviceSubmodelTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_targeting, :type=>"OperatingSystemTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_version_targeting, :type=>"OperatingSystemVersionTargeting", :min_occurs=>0, :max_occurs=>1}]}, :ApiVersionError=>{:fields=>[{:name=>:reason, :type=>"ApiVersionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ApplicationException=>{:fields=>[{:name=>:message, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :AppliedLabel=>{:fields=>[{:name=>:label_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_negated, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ArchiveProductTemplates=>{:fields=>[], :base=>"ProductTemplateAction"}, :AuthenticationError=>{:fields=>[{:name=>:reason, :type=>"AuthenticationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BandwidthGroup=>{:fields=>[], :base=>"Technology"}, :BandwidthGroupTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:bandwidth_groups, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BaseCustomFieldValue=>{:fields=>[{:name=>:custom_field_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :BaseRateError=>{:fields=>[{:name=>:reason, :type=>"BaseRateError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BooleanValue=>{:fields=>[{:name=>:value, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :Browser=>{:fields=>[{:name=>:major_version, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:minor_version, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :BrowserLanguage=>{:fields=>[], :base=>"Technology"}, :BrowserLanguageTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_languages, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BrowserTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:browsers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :CollectionSizeError=>{:fields=>[{:name=>:reason, :type=>"CollectionSizeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CommonError=>{:fields=>[{:name=>:reason, :type=>"CommonError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ContentMetadataKeyHierarchyTargeting=>{:fields=>[{:name=>:custom_targeting_value_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ContentMetadataTargetingError=>{:fields=>[{:name=>:reason, :type=>"ContentMetadataTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ContentTargeting=>{:fields=>[{:name=>:targeted_content_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_content_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_video_content_bundle_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_video_content_bundle_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_content_metadata, :type=>"ContentMetadataKeyHierarchyTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_content_metadata, :type=>"ContentMetadataKeyHierarchyTargeting", :min_occurs=>0, :max_occurs=>:unbounded}]}, :CreativePlaceholder=>{:fields=>[{:name=>:size, :type=>"Size", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_template_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:companions, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:effective_applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:expected_creative_count, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_size_type, :type=>"CreativeSizeType", :min_occurs=>0, :max_occurs=>1}, {:name=>:targeting_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_amp_only, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :CustomCriteria=>{:fields=>[{:name=>:key_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:value_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:operator, :type=>"CustomCriteria.ComparisonOperator", :min_occurs=>0, :max_occurs=>1}], :base=>"CustomCriteriaLeaf"}, :CustomCriteriaSet=>{:fields=>[{:name=>:logical_operator, :type=>"CustomCriteriaSet.LogicalOperator", :min_occurs=>0, :max_occurs=>1}, {:name=>:children, :type=>"CustomCriteriaNode", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"CustomCriteriaNode"}, :CustomFieldValue=>{:fields=>[{:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :CustomFieldValueError=>{:fields=>[{:name=>:reason, :type=>"CustomFieldValueError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CustomTargetingError=>{:fields=>[{:name=>:reason, :type=>"CustomTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CustomCriteriaLeaf=>{:fields=>[], :abstract=>true, :base=>"CustomCriteriaNode"}, :CustomCriteriaNode=>{:fields=>[], :abstract=>true}, :AudienceSegmentCriteria=>{:fields=>[{:name=>:operator, :type=>"AudienceSegmentCriteria.ComparisonOperator", :min_occurs=>0, :max_occurs=>1}, {:name=>:audience_segment_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"CustomCriteriaLeaf"}, :CustomizableAttributes=>{:fields=>[{:name=>:allow_geo_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_ad_unit_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_placement_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_user_domain_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_bandwidth_group_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_browser_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_browser_language_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_operating_system_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_device_capability_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_device_category_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_application_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_carrier_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_device_and_manufacturer_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_audience_segment_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_all_custom_targeting_keys_customizable, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:customizable_custom_targeting_key_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:allow_daypart_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_frequency_caps_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_delivery_settings_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_creative_placeholders_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :Date=>{:fields=>[{:name=>:year, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:month, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:day, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :DateTime=>{:fields=>[{:name=>:date, :type=>"Date", :min_occurs=>0, :max_occurs=>1}, {:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:second, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_zone_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeRange=>{:fields=>[{:name=>:start_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeRangeTargeting=>{:fields=>[{:name=>:targeted_date_time_ranges, :type=>"DateTimeRange", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DateTimeRangeTargetingError=>{:fields=>[{:name=>:reason, :type=>"DateTimeRangeTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :DateTimeValue=>{:fields=>[{:name=>:value, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DateValue=>{:fields=>[{:name=>:value, :type=>"Date", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DayPart=>{:fields=>[{:name=>:day_of_week, :type=>"DayOfWeek", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_time, :type=>"TimeOfDay", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_time, :type=>"TimeOfDay", :min_occurs=>0, :max_occurs=>1}]}, :DayPartTargeting=>{:fields=>[{:name=>:day_parts, :type=>"DayPart", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:time_zone, :type=>"DeliveryTimeZone", :min_occurs=>0, :max_occurs=>1}]}, :DayPartTargetingError=>{:fields=>[{:name=>:reason, :type=>"DayPartTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :DeactivateProductTemplates=>{:fields=>[], :base=>"ProductTemplateAction"}, :DeviceCapability=>{:fields=>[], :base=>"Technology"}, :DeviceCapabilityTargeting=>{:fields=>[{:name=>:targeted_device_capabilities, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_device_capabilities, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeviceCategory=>{:fields=>[], :base=>"Technology"}, :DeviceCategoryTargeting=>{:fields=>[{:name=>:targeted_device_categories, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_device_categories, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeviceManufacturer=>{:fields=>[], :base=>"Technology"}, :DeviceManufacturerTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DropDownCustomFieldValue=>{:fields=>[{:name=>:custom_field_option_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :EntityChildrenLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityChildrenLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :EntityLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FeatureError=>{:fields=>[{:name=>:reason, :type=>"FeatureError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FieldPathElement=>{:fields=>[{:name=>:field, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :FrequencyCap=>{:fields=>[{:name=>:max_impressions, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:num_time_units, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_unit, :type=>"TimeUnit", :min_occurs=>0, :max_occurs=>1}]}, :FrequencyCapError=>{:fields=>[{:name=>:reason, :type=>"FrequencyCapError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :GenericTargetingError=>{:fields=>[{:name=>:reason, :type=>"GenericTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :GeoTargeting=>{:fields=>[{:name=>:targeted_locations, :type=>"Location", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_locations, :type=>"Location", :min_occurs=>0, :max_occurs=>:unbounded}]}, :GeoTargetingError=>{:fields=>[{:name=>:reason, :type=>"GeoTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :InternalApiError=>{:fields=>[{:name=>:reason, :type=>"InternalApiError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :InventoryTargeting=>{:fields=>[{:name=>:targeted_ad_units, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_ad_units, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_placement_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :InventoryTargetingError=>{:fields=>[{:name=>:reason, :type=>"InventoryTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Location=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:type, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:canonical_parent_id, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:display_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :MobileApplicationTargeting=>{:fields=>[{:name=>:mobile_application_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :MobileCarrier=>{:fields=>[], :base=>"Technology"}, :MobileCarrierTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carriers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :MobileDevice=>{:fields=>[{:name=>:manufacturer_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :MobileDeviceSubmodel=>{:fields=>[{:name=>:mobile_device_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :MobileDeviceSubmodelTargeting=>{:fields=>[{:name=>:targeted_mobile_device_submodels, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_mobile_device_submodels, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :MobileDeviceTargeting=>{:fields=>[{:name=>:targeted_mobile_devices, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_mobile_devices, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :NotNullError=>{:fields=>[{:name=>:reason, :type=>"NotNullError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NullError=>{:fields=>[{:name=>:reason, :type=>"NullError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NumberValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :OperatingSystem=>{:fields=>[], :base=>"Technology"}, :OperatingSystemTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_systems, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :OperatingSystemVersion=>{:fields=>[{:name=>:major_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minor_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:micro_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :OperatingSystemVersionTargeting=>{:fields=>[{:name=>:targeted_operating_system_versions, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_operating_system_versions, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ParseError=>{:fields=>[{:name=>:reason, :type=>"ParseError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PermissionError=>{:fields=>[{:name=>:reason, :type=>"PermissionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PlacementTargeting=>{:fields=>[{:name=>:targeted_placement_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :PreferredDealError=>{:fields=>[{:name=>:reason, :type=>"PreferredDealError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductTemplateAction=>{:fields=>[], :abstract=>true}, :ProductTemplateActionError=>{:fields=>[{:name=>:reason, :type=>"ProductTemplateActionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductTemplate=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:creation_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:last_modified_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:description, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:name_macro, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:status, :type=>"ProductTemplateStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:product_type, :type=>"ProductType", :min_occurs=>0, :max_occurs=>1}, {:name=>:creator_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:rate_type, :type=>"RateType", :min_occurs=>0, :max_occurs=>1}, {:name=>:roadblocking_type, :type=>"RoadblockingType", :min_occurs=>0, :max_occurs=>1}, {:name=>:delivery_rate_type, :type=>"DeliveryRateType", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_rotation_type, :type=>"CreativeRotationType", :min_occurs=>0, :max_occurs=>1}, {:name=>:companion_delivery_option, :type=>"CompanionDeliveryOption", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_placeholders, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:line_item_type, :type=>"LineItemType", :min_occurs=>0, :max_occurs=>1}, {:name=>:priority, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:frequency_caps, :type=>"FrequencyCap", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:product_segmentation, :type=>"ProductSegmentation", :min_occurs=>0, :max_occurs=>1}, {:name=>:built_in_targeting, :type=>"Targeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:customizable_attributes, :type=>"CustomizableAttributes", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_field_values, :type=>"BaseCustomFieldValue", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:environment_type, :type=>"EnvironmentType", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_max_duration, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:product_template_marketplace_info, :type=>"ProductTemplateMarketplaceInfo", :min_occurs=>0, :max_occurs=>1}]}, :ProductTemplateError=>{:fields=>[{:name=>:reason, :type=>"ProductTemplateError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductTemplateMarketplaceInfo=>{:fields=>[{:name=>:ad_exchange_environment, :type=>"AdExchangeEnvironment", :min_occurs=>0, :max_occurs=>1}, {:name=>:additional_terms, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :ProductTemplatePage=>{:fields=>[{:name=>:total_result_set_size, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:results, :type=>"ProductTemplate", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ProductSegmentation=>{:fields=>[{:name=>:geo_segment, :type=>"GeoTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:ad_unit_segments, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:placement_segment, :type=>"PlacementTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_targeting_segment, :type=>"CustomCriteria", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:user_domain_segment, :type=>"UserDomainTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:bandwidth_segment, :type=>"BandwidthGroupTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_segment, :type=>"BrowserTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_language_segment, :type=>"BrowserLanguageTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_segment, :type=>"OperatingSystemTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_version_segment, :type=>"OperatingSystemVersionTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carrier_segment, :type=>"MobileCarrierTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_capability_segment, :type=>"DeviceCapabilityTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_category_segment, :type=>"DeviceCategoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_segment, :type=>"DeviceManufacturerTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_segment, :type=>"MobileDeviceTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_submodel_segment, :type=>"MobileDeviceSubmodelTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:size_segment, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:mobile_application_segment, :type=>"MobileApplicationTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_segment, :type=>"VideoPositionTargeting", :min_occurs=>0, :max_occurs=>1}]}, :ProgrammaticEntitiesError=>{:fields=>[{:name=>:reason, :type=>"ProgrammaticEntitiesError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProgrammaticProductError=>{:fields=>[{:name=>:reason, :type=>"ProgrammaticProductError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublisherQueryLanguageContextError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageContextError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublisherQueryLanguageSyntaxError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageSyntaxError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :QuotaError=>{:fields=>[{:name=>:reason, :type=>"QuotaError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RangeError=>{:fields=>[{:name=>:reason, :type=>"RangeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequestPlatformTargeting=>{:fields=>[{:name=>:targeted_request_platforms, :type=>"RequestPlatform", :min_occurs=>0, :max_occurs=>:unbounded}]}, :RequiredCollectionError=>{:fields=>[{:name=>:reason, :type=>"RequiredCollectionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredError=>{:fields=>[{:name=>:reason, :type=>"RequiredError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredNumberError=>{:fields=>[{:name=>:reason, :type=>"RequiredNumberError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ServerError=>{:fields=>[{:name=>:reason, :type=>"ServerError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :SetValue=>{:fields=>[{:name=>:values, :type=>"Value", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"Value"}, :Size=>{:fields=>[{:name=>:width, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:height, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_aspect_ratio, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :SoapRequestHeader=>{:fields=>[{:name=>:network_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:application_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :SoapResponseHeader=>{:fields=>[{:name=>:request_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:response_time, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :Statement=>{:fields=>[{:name=>:query, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:values, :type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>:unbounded}]}, :StatementError=>{:fields=>[{:name=>:reason, :type=>"StatementError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringFormatError=>{:fields=>[{:name=>:reason, :type=>"StringFormatError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringLengthError=>{:fields=>[{:name=>:reason, :type=>"StringLengthError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :String_ValueMapEntry=>{:fields=>[{:name=>:key, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}]}, :Targeting=>{:fields=>[{:name=>:geo_targeting, :type=>"GeoTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:inventory_targeting, :type=>"InventoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:day_part_targeting, :type=>"DayPartTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:date_time_range_targeting, :type=>"DateTimeRangeTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:technology_targeting, :type=>"TechnologyTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_targeting, :type=>"CustomCriteriaSet", :min_occurs=>0, :max_occurs=>1}, {:name=>:user_domain_targeting, :type=>"UserDomainTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:content_targeting, :type=>"ContentTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_targeting, :type=>"VideoPositionTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_application_targeting, :type=>"MobileApplicationTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:request_platform_targeting, :type=>"RequestPlatformTargeting", :min_occurs=>0, :max_occurs=>1}]}, :Technology=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :TechnologyTargetingError=>{:fields=>[{:name=>:reason, :type=>"TechnologyTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :TextValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :TimeOfDay=>{:fields=>[{:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"MinuteOfHour", :min_occurs=>0, :max_occurs=>1}]}, :TypeError=>{:fields=>[], :base=>"ApiError"}, :UnarchiveProductTemplates=>{:fields=>[], :base=>"ProductTemplateAction"}, :UniqueError=>{:fields=>[], :base=>"ApiError"}, :UpdateResult=>{:fields=>[{:name=>:num_changes, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :UserDomainTargeting=>{:fields=>[{:name=>:domains, :type=>"string", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :UserDomainTargetingError=>{:fields=>[{:name=>:reason, :type=>"UserDomainTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Value=>{:fields=>[], :abstract=>true}, :VideoPosition=>{:fields=>[{:name=>:position_type, :type=>"VideoPosition.Type", :min_occurs=>0, :max_occurs=>1}, {:name=>:midroll_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :VideoPositionTargeting=>{:fields=>[{:name=>:targeted_positions, :type=>"VideoPositionTarget", :min_occurs=>0, :max_occurs=>:unbounded}]}, :VideoPositionTargetingError=>{:fields=>[{:name=>:reason, :type=>"VideoPositionTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :VideoPositionWithinPod=>{:fields=>[{:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :VideoPositionTarget=>{:fields=>[{:name=>:video_position, :type=>"VideoPosition", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_bumper_type, :type=>"VideoBumperType", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_within_pod, :type=>"VideoPositionWithinPod", :min_occurs=>0, :max_occurs=>1}]}, :AdExchangeEnvironment=>{:type=>"string", :enumerations=>["DISPLAY", "VIDEO", "GAMES", "MOBILE", "MOBILE_OUTSTREAM_VIDEO", "DISPLAY_OUTSTREAM_VIDEO", "UNKNOWN"]}, :"ApiVersionError.Reason"=>{:type=>"string", :enumerations=>["UPDATE_TO_NEWER_VERSION", "UNKNOWN"]}, :"AuthenticationError.Reason"=>{:type=>"string", :enumerations=>["AMBIGUOUS_SOAP_REQUEST_HEADER", "INVALID_EMAIL", "AUTHENTICATION_FAILED", "INVALID_OAUTH_SIGNATURE", "INVALID_SERVICE", "MISSING_SOAP_REQUEST_HEADER", "MISSING_AUTHENTICATION_HTTP_HEADER", "MISSING_AUTHENTICATION", "NOT_WHITELISTED_FOR_API_ACCESS", "NO_NETWORKS_TO_ACCESS", "NETWORK_NOT_FOUND", "NETWORK_CODE_REQUIRED", "CONNECTION_ERROR", "GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK", "UNDER_INVESTIGATION", "UNKNOWN"]}, :"BaseRateError.Reason"=>{:type=>"string", :enumerations=>["INVALID_CURRENCY_CODE", "PRODUCT_TEMPLATE_ARCHIVED", "PRODUCT_PACKAGE_ITEM_ARCHIVED", "CANNOT_QUERY_ON_MULTIPLE_TYPES", "PRODUCT_PACKAGE_RATE_CARD_ASSOCIATION_MISSING", "UNSUPPORTED_OPERATION", "PRODUCT_PACKAGE_ACTIVE", "PRODUCT_TEMPLATE_BASE_RATE_NOT_FOUND", "PRODUCT_BASE_RATE_EXISTS", "INVALID_RATE_CARD_CHANNEL", "ZERO_MARKETPLACE_RATE_NOT_SUPPORTED", "UNKNOWN"]}, :"CollectionSizeError.Reason"=>{:type=>"string", :enumerations=>["TOO_LARGE", "UNKNOWN"]}, :"CommonError.Reason"=>{:type=>"string", :enumerations=>["NOT_FOUND", "ALREADY_EXISTS", "NOT_APPLICABLE", "DUPLICATE_OBJECT", "CANNOT_UPDATE", "CONCURRENT_MODIFICATION", "UNKNOWN"]}, :CompanionDeliveryOption=>{:type=>"string", :enumerations=>["OPTIONAL", "AT_LEAST_ONE", "ALL", "UNKNOWN"]}, :"ContentMetadataTargetingError.Reason"=>{:type=>"string", :enumerations=>["VALUES_DO_NOT_BELONG_TO_A_HIERARCHY", "CONTENT_METADATA_TARGETING_DEPRECATED", "UNKNOWN"]}, :CreativeRotationType=>{:type=>"string", :enumerations=>["EVEN", "OPTIMIZED", "MANUAL", "SEQUENTIAL"]}, :CreativeSizeType=>{:type=>"string", :enumerations=>["PIXEL", "ASPECT_RATIO", "INTERSTITIAL", "NATIVE"]}, :"CustomCriteria.ComparisonOperator"=>{:type=>"string", :enumerations=>["IS", "IS_NOT"]}, :"CustomCriteriaSet.LogicalOperator"=>{:type=>"string", :enumerations=>["AND", "OR"]}, :"CustomFieldValueError.Reason"=>{:type=>"string", :enumerations=>["CUSTOM_FIELD_NOT_FOUND", "CUSTOM_FIELD_INACTIVE", "CUSTOM_FIELD_OPTION_NOT_FOUND", "UNKNOWN"]}, :"CustomTargetingError.Reason"=>{:type=>"string", :enumerations=>["KEY_NOT_FOUND", "KEY_COUNT_TOO_LARGE", "KEY_NAME_DUPLICATE", "KEY_NAME_EMPTY", "KEY_NAME_INVALID_LENGTH", "KEY_NAME_INVALID_CHARS", "KEY_NAME_RESERVED", "KEY_DISPLAY_NAME_INVALID_LENGTH", "VALUE_NOT_FOUND", "GET_VALUES_BY_STATEMENT_MUST_CONTAIN_KEY_ID", "VALUE_COUNT_FOR_KEY_TOO_LARGE", "VALUE_NAME_DUPLICATE", "VALUE_NAME_EMPTY", "VALUE_NAME_INVALID_LENGTH", "VALUE_NAME_INVALID_CHARS", "VALUE_DISPLAY_NAME_INVALID_LENGTH", "VALUE_MATCH_TYPE_NOT_ALLOWED", "VALUE_MATCH_TYPE_NOT_EXACT_FOR_PREDEFINED_KEY", "SUFFIX_MATCH_TYPE_NOT_ALLOWED", "CONTAINS_MATCH_TYPE_NOT_ALLOWED", "KEY_WITH_MISSING_VALUES", "INVALID_VALUE_FOR_KEY", "CANNOT_OR_DIFFERENT_KEYS", "INVALID_TARGETING_EXPRESSION", "DELETED_KEY_CANNOT_BE_USED_FOR_TARGETING", "DELETED_VALUE_CANNOT_BE_USED_FOR_TARGETING", "VIDEO_BROWSE_BY_KEY_CANNOT_BE_USED_FOR_CUSTOM_TARGETING", "CANNOT_DELETE_CUSTOM_KEY_USED_IN_CONTENT_METADATA_MAPPING", "CANNOT_DELETE_CUSTOM_VALUE_USED_IN_CONTENT_METADATA_MAPPING", "CANNOT_DELETE_CUSTOM_KEY_USED_IN_PARTNER_ASSIGNMENT_TARGETING", "CANNOT_DELETE_CUSTOM_VALUE_USED_IN_PARTNER_ASSIGNMENT_TARGETING", "CANNOT_TARGET_AUDIENCE_SEGMENT", "CANNOT_TARGET_INACTIVE_AUDIENCE_SEGMENT", "INVALID_AUDIENCE_SEGMENTS", "ONLY_APPROVED_AUDIENCE_SEGMENTS_CAN_BE_TARGETED", "UNKNOWN"]}, :"AudienceSegmentCriteria.ComparisonOperator"=>{:type=>"string", :enumerations=>["IS", "IS_NOT"]}, :"DateTimeRangeTargetingError.Reason"=>{:type=>"string", :enumerations=>["EMPTY_RANGES", "NOT_SPONSORSHIP_LINEITEM", "PAST_RANGES_CHANGED", "RANGES_OVERLAP", "RANGES_OUT_OF_LINEITEM_ACTIVE_PERIOD", "START_TIME_IS_NOT_START_OF_DAY", "END_TIME_IS_NOT_END_OF_DAY", "START_DATE_TIME_IS_IN_PAST", "RANGE_END_TIME_BEFORE_START_TIME", "END_DATE_TIME_IS_TOO_LATE", "LIMITED_RANGES_IN_UNLIMITED_LINEITEM", "UNKNOWN"]}, :DayOfWeek=>{:type=>"string", :enumerations=>["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]}, :"DayPartTargetingError.Reason"=>{:type=>"string", :enumerations=>["INVALID_HOUR", "INVALID_MINUTE", "END_TIME_NOT_AFTER_START_TIME", "TIME_PERIODS_OVERLAP", "UNKNOWN"]}, :DeliveryTimeZone=>{:type=>"string", :enumerations=>["PUBLISHER", "BROWSER"]}, :DeliveryRateType=>{:type=>"string", :enumerations=>["EVENLY", "FRONTLOADED", "AS_FAST_AS_POSSIBLE"]}, :"EntityChildrenLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["LINE_ITEM_LIMIT_FOR_ORDER_REACHED", "CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED", "AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED", "CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED", "ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED", "PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED", "PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED", "PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PREMIUM_LIMIT_FOR_RATE_CARD_REACHED", "AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED", "NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED", "UNKNOWN"]}, :"EntityLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["CUSTOM_TARGETING_VALUES_LIMIT_REACHED", "AD_EXCLUSION_RULES_LIMIT_REACHED", "FIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED", "PLACEMENTS_LIMIT_REACHED", "LINE_ITEMS_LIMIT_REACHED", "UNKNOWN"]}, :EnvironmentType=>{:type=>"string", :enumerations=>["BROWSER", "VIDEO_PLAYER"]}, :"FeatureError.Reason"=>{:type=>"string", :enumerations=>["MISSING_FEATURE", "UNKNOWN"]}, :"FrequencyCapError.Reason"=>{:type=>"string", :enumerations=>["IMPRESSION_LIMIT_EXCEEDED", "IMPRESSIONS_TOO_LOW", "RANGE_LIMIT_EXCEEDED", "RANGE_TOO_LOW", "DUPLICATE_TIME_RANGE", "TOO_MANY_FREQUENCY_CAPS", "UNKNOWN"]}, :"GenericTargetingError.Reason"=>{:type=>"string", :enumerations=>["CONFLICTING_INCLUSION_OR_EXCLUSION_OF_SIBLINGS", "INCLUDING_DESCENDANTS_OF_EXCLUDED_CRITERIA", "UNKNOWN"]}, :"GeoTargetingError.Reason"=>{:type=>"string", :enumerations=>["TARGETED_LOCATIONS_NOT_EXCLUDABLE", "EXCLUDED_LOCATIONS_CANNOT_HAVE_CHILDREN_TARGETED", "POSTAL_CODES_CANNOT_BE_EXCLUDED", "UNTARGETABLE_LOCATION", "UNKNOWN"]}, :"InternalApiError.Reason"=>{:type=>"string", :enumerations=>["UNEXPECTED_INTERNAL_API_ERROR", "TRANSIENT_ERROR", "UNKNOWN", "DOWNTIME", "ERROR_GENERATING_RESPONSE"]}, :"InventoryTargetingError.Reason"=>{:type=>"string", :enumerations=>["AT_LEAST_ONE_PLACEMENT_OR_INVENTORY_UNIT_REQUIRED", "INVENTORY_CANNOT_BE_TARGETED_AND_EXCLUDED", "INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_TARGETED", "INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_EXCLUDED", "INVENTORY_UNIT_CANNOT_BE_EXCLUDED_IF_ANCESTOR_IS_EXCLUDED", "EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_TARGETED", "EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_EXCLUDED", "SELF_ONLY_INVENTORY_UNIT_NOT_ALLOWED", "SELF_ONLY_INVENTORY_UNIT_WITHOUT_DESCENDANTS", "YOUTUBE_AUDIENCE_SEGMENTS_CAN_ONLY_BE_TARGETED_WITH_YOUTUBE_SHARED_INVENTORY", "UNKNOWN"]}, :LineItemType=>{:type=>"string", :enumerations=>["SPONSORSHIP", "STANDARD", "NETWORK", "BULK", "PRICE_PRIORITY", "HOUSE", "LEGACY_DFP", "CLICK_TRACKING", "ADSENSE", "AD_EXCHANGE", "BUMPER", "ADMOB", "PREFERRED_DEAL", "UNKNOWN"]}, :MinuteOfHour=>{:type=>"string", :enumerations=>["ZERO", "FIFTEEN", "THIRTY", "FORTY_FIVE"]}, :"NotNullError.Reason"=>{:type=>"string", :enumerations=>["ARG1_NULL", "ARG2_NULL", "ARG3_NULL", "NULL", "UNKNOWN"]}, :"NullError.Reason"=>{:type=>"string", :enumerations=>["NULL_CONTENT"]}, :"ParseError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"PermissionError.Reason"=>{:type=>"string", :enumerations=>["PERMISSION_DENIED", "UNKNOWN"]}, :"PreferredDealError.Reason"=>{:type=>"string", :enumerations=>["INVALID_PRIORITY", "INVALID_RATE_TYPE", "INVALID_FREQUENCY_CAPS", "INVALID_ROADBLOCKING_TYPE", "INVALID_DELIVERY_RATE_TYPE", "UNKNOWN"]}, :"ProductTemplateActionError.Reason"=>{:type=>"string", :enumerations=>["NOT_APPLICABLE", "UNKNOWN"]}, :"ProductTemplateError.Reason"=>{:type=>"string", :enumerations=>["INVALID_FEATURE_EXPANDED_EXCLUSIVE", "INVALID_EXPANDED_FEATURE_DEFAULT_NOT_TARGETED", "INVALID_EXPANDED_FEATURE_DEFAULT_LOCKED", "INVALID_EXPANDED_FEATURE_VALUE_TARGETED", "INVALID_EXPANDED_FEATURE_VALUE_LOCKED", "INVALID_FEATURE_TYPE", "INVALID_ROADBLOCKING_TYPE", "INVALID_DELIVERY_RATE_TYPE", "INVALID_CREATIVE_ROTATION_TYPE", "INVALID_COMPANION_DELIVERY_OPTION", "INVALID_TARGETING", "INVALID_FREQUENCY_CAPS", "INVALID_TECHNOLOGY_INCLUDE_EXCLUDE", "INVALID_EXPANDED_PRODUCT_COUNT", "INVALID_TARGET_PLATFORM", "INVALID_NON_TARGETING_FEATURE", "INVALID_FEATURE_CARDINALITY_AT_LEAST_ONE", "INVALID_FEATURE_CARDINALITY_AT_MOST_ONE", "INVALID_FEATURE_CARDINALITY_EXACTLY_ONE", "INVALID_FEATURE_FOR_OFFLINE", "INVALID_RATE_TYPE_FOR_OFFLINE", "INVALID_RATE_TYPE_FOR_DFP", "INVALID_RATE_TYPE_FOR_NON_DFP", "INVALID_VALUES_FOR_CLICK_TRACKING_LINE_ITEM_TYPE", "INVALID_SEGMENTATION_OR_TARGETING_FOR_CLICK_TRACKING_LINE_ITEM_TYPE", "INVALID_LINE_ITEM_PRIORITY", "INVALID_LINE_ITEM_TYPE", "INVALID_ENVIRONMENT_TYPE", "DUPLICATED_PLACEHOLDER_IN_NAMEMACRO", "INVALID_EXPANDED_FEATURE_IN_NON_EXPANDABLE_AFFINITY", "INVALID_FEATURE_DEFAULT_TARGET_TYPE", "INVALID_FEATURE_VALUE_TARGET_TYPE", "INVALID_FEATURE_AND_VALUE_LOCK_EXCLUSIVE", "INVALID_CREATIVE_PLACEHOLDER", "DUPLICATED_FEATURE", "DUPLICATED_CUSTOM_TARGETING_KEY", "DUPLICATED_CUSTOM_TARGETING_VALUE", "INVALID_CUSTOM_TARGETING_KEY_ID", "INVALID_CUSTOM_TARGETING_VALUE_ID", "MISSING_CUSTOM_TARGETING_VALUES", "LOCATION_CANNOT_BE_TARGETED_IF_PARENT_IS_TARGETED", "LOCATION_CANNOT_BE_EXCLUDED_IF_PARENT_IS_EXCLUDED", "LOCATION_CANNOT_BE_EXCLUDED_DIRECTLY_WHEN_HAVE_TARGETED_LOCATION", "CUSTOMIZABLE_CUSTOM_KEY_CANNOT_BE_SEGMENTED", "CUSTOM_KEY_USED_IN_TARGETING_CANNOT_BE_SEGMENTED", "MISSING_EXPANDED_FEATURE_PLACEHOLDER_IN_NAMEMACRO", "MISSING_FEATURE_VALUE_OF_NAMEMACRO_PLACEHOLDER", "MISSING_FEATURE_OF_NAMEMACRO_PLACEHOLDER", "MISSING_SUBTYPE_FOR_CUSTOM_TARGETING", "COMPANION_NOT_ALLOWED", "MISSING_COMPANION", "DUPLICATED_MASTER_SIZE", "CANNOT_HAVE_CREATIVE_TEMPLATE", "NATIVE_CREATIVE_TEMPLATE_REQUIRED", "CANNOT_INCLUDE_NATIVE_PLACEHOLDER_WITHOUT_TEMPLATE_ID", "CANNOT_MODIFY_READONLY_FEATURE", "CANNOT_MODIFY_PRODUCT_TYPE", "CANNOT_ADD_SEGMENTATION", "CANNOT_REMOVE_SEGMENTATION", "CANNOT_REMOVE_VALUE_FROM_SEGMENTATION", "CANNOT_ADD_FEATURE_VALUE_FOR_CUSTOM_TARGETING", "CANNOT_MODIFY_BUILTIN_TARGETING_FEATURE", "CANNOT_UPDATE_ARCHIVED_PRODUCT_TEMPLATE", "INVALID_VIDEO_POSITION_VALUE_FOR_LINE_ITEM_TYPE", "UNKNOWN"]}, :ProductTemplateStatus=>{:type=>"string", :enumerations=>["ACTIVE", "DRAFT", "CANCELED", "ARCHIVED", "UNKNOWN"]}, :ProductType=>{:type=>"string", :enumerations=>["DFP", "OFFLINE", "NON_DFP", "UNKNOWN"]}, :"ProgrammaticEntitiesError.Reason"=>{:type=>"string", :enumerations=>["INVALID_RATE_TYPE", "INVALID_ENVIRONMENT_TYPE", "INVALID_PRODUCT_TYPE", "INVALID_LINE_ITEM_TYPE", "INVALID_ROADBLOCKING_TYPE", "INVALID_DELIVERY_RATE_TYPE", "INVALID_COMPANION_DELIVERY_OPTION", "INVALID_CREATIVE_ROTATION_TYPE", "INVALID_COMPANION_CREATIVE_PLACEHOLDER", "EMPTY_CREATIVE_PLACEHOLDER", "UNKNOWN"]}, :"ProgrammaticProductError.Reason"=>{:type=>"string", :enumerations=>["PRODUCT_MARKETPLACE_INFO_IS_NULL", "ENVIRONMENT_IS_NULL", "INVALID_AD_EXCHANGE_ENVIRONMENT", "UNKNOWN"]}, :"PublisherQueryLanguageContextError.Reason"=>{:type=>"string", :enumerations=>["UNEXECUTABLE", "UNKNOWN"]}, :"PublisherQueryLanguageSyntaxError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"QuotaError.Reason"=>{:type=>"string", :enumerations=>["EXCEEDED_QUOTA", "UNKNOWN", "REPORT_JOB_LIMIT"]}, :"RangeError.Reason"=>{:type=>"string", :enumerations=>["TOO_HIGH", "TOO_LOW", "UNKNOWN"]}, :RateType=>{:type=>"string", :enumerations=>["CPM", "CPC", "CPD", "CPU", "FLAT_FEE", "VCPM", "UNKNOWN"]}, :RequestPlatform=>{:type=>"string", :enumerations=>["UNKNOWN", "BROWSER", "MOBILE_APP", "VIDEO_PLAYER"]}, :"RequiredCollectionError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "UNKNOWN"]}, :"RequiredError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED"]}, :"RequiredNumberError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "TOO_LARGE_WITH_DETAILS", "TOO_SMALL_WITH_DETAILS", "UNKNOWN"]}, :RoadblockingType=>{:type=>"string", :enumerations=>["ONLY_ONE", "ONE_OR_MORE", "AS_MANY_AS_POSSIBLE", "ALL_ROADBLOCK", "CREATIVE_SET"]}, :"ServerError.Reason"=>{:type=>"string", :enumerations=>["SERVER_ERROR", "SERVER_BUSY", "UNKNOWN"]}, :"StatementError.Reason"=>{:type=>"string", :enumerations=>["VARIABLE_NOT_BOUND_TO_VALUE", "UNKNOWN"]}, :"StringFormatError.Reason"=>{:type=>"string", :enumerations=>["UNKNOWN", "ILLEGAL_CHARS", "INVALID_FORMAT"]}, :"StringLengthError.Reason"=>{:type=>"string", :enumerations=>["TOO_LONG", "TOO_SHORT", "UNKNOWN"]}, :"TechnologyTargetingError.Reason"=>{:type=>"string", :enumerations=>["MOBILE_LINE_ITEM_CONTAINS_WEB_TECH_CRITERIA", "WEB_LINE_ITEM_CONTAINS_MOBILE_TECH_CRITERIA", "MOBILE_CARRIER_TARGETING_FEATURE_NOT_ENABLED", "DEVICE_CAPABILITY_TARGETING_FEATURE_NOT_ENABLED", "DEVICE_CATEGORY_TARGETING_FEATURE_NOT_ENABLED", "UNKNOWN"]}, :TimeUnit=>{:type=>"string", :enumerations=>["MINUTE", "HOUR", "DAY", "WEEK", "MONTH", "LIFETIME", "POD", "STREAM", "UNKNOWN"]}, :"UserDomainTargetingError.Reason"=>{:type=>"string", :enumerations=>["INVALID_DOMAIN_NAMES", "UNKNOWN"]}, :VideoBumperType=>{:type=>"string", :enumerations=>["BEFORE", "AFTER"]}, :"VideoPosition.Type"=>{:type=>"string", :enumerations=>["PREROLL", "MIDROLL", "POSTROLL"]}, :"VideoPositionTargetingError.Reason"=>{:type=>"string", :enumerations=>["CANNOT_MIX_BUMPER_AND_NON_BUMPER_TARGETING", "INVALID_BUMPER_TARGETING", "UNKNOWN"]}}
|
16
|
+
PRODUCTTEMPLATESERVICE_NAMESPACES = []
|
17
|
+
|
18
|
+
def self.get_method_signature(method_name)
|
19
|
+
return PRODUCTTEMPLATESERVICE_METHODS[method_name.to_sym]
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.get_type_signature(type_name)
|
23
|
+
return PRODUCTTEMPLATESERVICE_TYPES[type_name.to_sym]
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.get_namespace(index)
|
27
|
+
return PRODUCTTEMPLATESERVICE_NAMESPACES[index]
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
# Base class for exceptions.
|
32
|
+
class ApplicationException < AdManagerApi::Errors::ApiException
|
33
|
+
attr_reader :message # string
|
34
|
+
end
|
35
|
+
|
36
|
+
# Exception class for holding a list of service errors.
|
37
|
+
class ApiException < ApplicationException
|
38
|
+
attr_reader :errors # ApiError
|
39
|
+
def initialize(exception_fault)
|
40
|
+
@array_fields ||= []
|
41
|
+
@array_fields << 'errors'
|
42
|
+
super(exception_fault, ProductTemplateServiceRegistry)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end; end; end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:09.
|
9
|
+
|
10
|
+
require 'ads_common/savon_service'
|
11
|
+
require 'ad_manager_api/v201811/proposal_line_item_service_registry'
|
12
|
+
|
13
|
+
module AdManagerApi; module V201811; module ProposalLineItemService
|
14
|
+
class ProposalLineItemService < AdsCommon::SavonService
|
15
|
+
def initialize(config, endpoint)
|
16
|
+
namespace = 'https://www.google.com/apis/ads/publisher/v201811'
|
17
|
+
super(config, endpoint, namespace, :v201811)
|
18
|
+
end
|
19
|
+
|
20
|
+
def create_proposal_line_items(*args, &block)
|
21
|
+
return execute_action('create_proposal_line_items', args, &block)
|
22
|
+
end
|
23
|
+
|
24
|
+
def create_proposal_line_items_to_xml(*args)
|
25
|
+
return get_soap_xml('create_proposal_line_items', args)
|
26
|
+
end
|
27
|
+
|
28
|
+
def get_proposal_line_items_by_statement(*args, &block)
|
29
|
+
return execute_action('get_proposal_line_items_by_statement', args, &block)
|
30
|
+
end
|
31
|
+
|
32
|
+
def get_proposal_line_items_by_statement_to_xml(*args)
|
33
|
+
return get_soap_xml('get_proposal_line_items_by_statement', args)
|
34
|
+
end
|
35
|
+
|
36
|
+
def perform_proposal_line_item_action(*args, &block)
|
37
|
+
return execute_action('perform_proposal_line_item_action', args, &block)
|
38
|
+
end
|
39
|
+
|
40
|
+
def perform_proposal_line_item_action_to_xml(*args)
|
41
|
+
return get_soap_xml('perform_proposal_line_item_action', args)
|
42
|
+
end
|
43
|
+
|
44
|
+
def update_proposal_line_items(*args, &block)
|
45
|
+
return execute_action('update_proposal_line_items', args, &block)
|
46
|
+
end
|
47
|
+
|
48
|
+
def update_proposal_line_items_to_xml(*args)
|
49
|
+
return get_soap_xml('update_proposal_line_items', args)
|
50
|
+
end
|
51
|
+
|
52
|
+
private
|
53
|
+
|
54
|
+
def get_service_registry()
|
55
|
+
return ProposalLineItemServiceRegistry
|
56
|
+
end
|
57
|
+
|
58
|
+
def get_module()
|
59
|
+
return AdManagerApi::V201811::ProposalLineItemService
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end; end; end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:09.
|
9
|
+
|
10
|
+
require 'ad_manager_api/errors'
|
11
|
+
|
12
|
+
module AdManagerApi; module V201811; module ProposalLineItemService
|
13
|
+
class ProposalLineItemServiceRegistry
|
14
|
+
PROPOSALLINEITEMSERVICE_METHODS = {:create_proposal_line_items=>{:input=>[{:name=>:proposal_line_items, :type=>"ProposalLineItem", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"create_proposal_line_items_response", :fields=>[{:name=>:rval, :type=>"ProposalLineItem", :min_occurs=>0, :max_occurs=>:unbounded}]}}, :get_proposal_line_items_by_statement=>{:input=>[{:name=>:filter_statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"get_proposal_line_items_by_statement_response", :fields=>[{:name=>:rval, :type=>"ProposalLineItemPage", :min_occurs=>0, :max_occurs=>1}]}}, :perform_proposal_line_item_action=>{:input=>[{:name=>:proposal_line_item_action, :type=>"ProposalLineItemAction", :min_occurs=>0, :max_occurs=>1}, {:name=>:filter_statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"perform_proposal_line_item_action_response", :fields=>[{:name=>:rval, :type=>"UpdateResult", :min_occurs=>0, :max_occurs=>1}]}}, :update_proposal_line_items=>{:input=>[{:name=>:proposal_line_items, :type=>"ProposalLineItem", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"update_proposal_line_items_response", :fields=>[{:name=>:rval, :type=>"ProposalLineItem", :min_occurs=>0, :max_occurs=>:unbounded}]}}}
|
15
|
+
PROPOSALLINEITEMSERVICE_TYPES = {:ObjectValue=>{:fields=>[], :abstract=>true, :base=>"Value"}, :ActualizeProposalLineItems=>{:fields=>[], :base=>"ProposalLineItemAction"}, :AdUnitPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :AdUnitTargeting=>{:fields=>[{:name=>:ad_unit_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:include_descendants, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ApiError=>{:fields=>[{:name=>:field_path, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:field_path_elements, :type=>"FieldPathElement", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:trigger, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:error_string, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :ApiException=>{:fields=>[{:name=>:errors, :type=>"ApiError", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"ApplicationException"}, :TechnologyTargeting=>{:fields=>[{:name=>:bandwidth_group_targeting, :type=>"BandwidthGroupTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_targeting, :type=>"BrowserTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_language_targeting, :type=>"BrowserLanguageTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_capability_targeting, :type=>"DeviceCapabilityTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_category_targeting, :type=>"DeviceCategoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_targeting, :type=>"DeviceManufacturerTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carrier_targeting, :type=>"MobileCarrierTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_targeting, :type=>"MobileDeviceTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_submodel_targeting, :type=>"MobileDeviceSubmodelTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_targeting, :type=>"OperatingSystemTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_version_targeting, :type=>"OperatingSystemVersionTargeting", :min_occurs=>0, :max_occurs=>1}]}, :ApiVersionError=>{:fields=>[{:name=>:reason, :type=>"ApiVersionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ApplicationException=>{:fields=>[{:name=>:message, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :AppliedLabel=>{:fields=>[{:name=>:label_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_negated, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ArchiveProposalLineItems=>{:fields=>[], :base=>"ProposalLineItemAction"}, :AudienceSegmentPremiumFeature=>{:fields=>[{:name=>:audience_segment_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"PremiumFeature"}, :AuthenticationError=>{:fields=>[{:name=>:reason, :type=>"AuthenticationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :AvailableBillingError=>{:fields=>[{:name=>:reason, :type=>"AvailableBillingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BandwidthPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :BandwidthGroup=>{:fields=>[], :base=>"Technology"}, :BandwidthGroupTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:bandwidth_groups, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BaseCustomFieldValue=>{:fields=>[{:name=>:custom_field_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :BillingError=>{:fields=>[{:name=>:reason, :type=>"BillingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BooleanValue=>{:fields=>[{:name=>:value, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :Browser=>{:fields=>[{:name=>:major_version, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:minor_version, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :BrowserPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :BrowserLanguage=>{:fields=>[], :base=>"Technology"}, :BrowserLanguagePremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :BrowserLanguageTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_languages, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BrowserTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:browsers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :CollectionSizeError=>{:fields=>[{:name=>:reason, :type=>"CollectionSizeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CommonError=>{:fields=>[{:name=>:reason, :type=>"CommonError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ContentBundlePremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :ContentMetadataKeyHierarchyTargeting=>{:fields=>[{:name=>:custom_targeting_value_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ContentMetadataTargetingError=>{:fields=>[{:name=>:reason, :type=>"ContentMetadataTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ContentTargeting=>{:fields=>[{:name=>:targeted_content_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_content_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_video_content_bundle_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_video_content_bundle_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_content_metadata, :type=>"ContentMetadataKeyHierarchyTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_content_metadata, :type=>"ContentMetadataKeyHierarchyTargeting", :min_occurs=>0, :max_occurs=>:unbounded}]}, :CreativePlaceholder=>{:fields=>[{:name=>:size, :type=>"Size", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_template_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:companions, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:effective_applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:expected_creative_count, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_size_type, :type=>"CreativeSizeType", :min_occurs=>0, :max_occurs=>1}, {:name=>:targeting_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_amp_only, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :CustomCriteria=>{:fields=>[{:name=>:key_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:value_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:operator, :type=>"CustomCriteria.ComparisonOperator", :min_occurs=>0, :max_occurs=>1}], :base=>"CustomCriteriaLeaf"}, :CustomCriteriaSet=>{:fields=>[{:name=>:logical_operator, :type=>"CustomCriteriaSet.LogicalOperator", :min_occurs=>0, :max_occurs=>1}, {:name=>:children, :type=>"CustomCriteriaNode", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"CustomCriteriaNode"}, :CustomFieldValue=>{:fields=>[{:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :CustomFieldValueError=>{:fields=>[{:name=>:reason, :type=>"CustomFieldValueError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CustomTargetingError=>{:fields=>[{:name=>:reason, :type=>"CustomTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CustomTargetingPremiumFeature=>{:fields=>[{:name=>:custom_targeting_key_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_targeting_value_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"PremiumFeature"}, :CustomCriteriaLeaf=>{:fields=>[], :abstract=>true, :base=>"CustomCriteriaNode"}, :CustomCriteriaNode=>{:fields=>[], :abstract=>true}, :AudienceSegmentCriteria=>{:fields=>[{:name=>:operator, :type=>"AudienceSegmentCriteria.ComparisonOperator", :min_occurs=>0, :max_occurs=>1}, {:name=>:audience_segment_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"CustomCriteriaLeaf"}, :CustomizableAttributes=>{:fields=>[{:name=>:allow_geo_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_ad_unit_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_placement_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_user_domain_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_bandwidth_group_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_browser_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_browser_language_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_operating_system_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_device_capability_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_device_category_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_application_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_carrier_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_mobile_device_and_manufacturer_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_audience_segment_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_all_custom_targeting_keys_customizable, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:customizable_custom_targeting_key_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:allow_daypart_targeting_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_frequency_caps_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_delivery_settings_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:allow_creative_placeholders_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :Date=>{:fields=>[{:name=>:year, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:month, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:day, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :DateTime=>{:fields=>[{:name=>:date, :type=>"Date", :min_occurs=>0, :max_occurs=>1}, {:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:second, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_zone_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeRange=>{:fields=>[{:name=>:start_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeRangeTargeting=>{:fields=>[{:name=>:targeted_date_time_ranges, :type=>"DateTimeRange", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DateTimeRangeTargetingError=>{:fields=>[{:name=>:reason, :type=>"DateTimeRangeTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :DateTimeValue=>{:fields=>[{:name=>:value, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DateValue=>{:fields=>[{:name=>:value, :type=>"Date", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DayPart=>{:fields=>[{:name=>:day_of_week, :type=>"DayOfWeek", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_time, :type=>"TimeOfDay", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_time, :type=>"TimeOfDay", :min_occurs=>0, :max_occurs=>1}]}, :DaypartPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :DayPartTargeting=>{:fields=>[{:name=>:day_parts, :type=>"DayPart", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:time_zone, :type=>"DeliveryTimeZone", :min_occurs=>0, :max_occurs=>1}]}, :DayPartTargetingError=>{:fields=>[{:name=>:reason, :type=>"DayPartTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :DealError=>{:fields=>[{:name=>:reason, :type=>"DealError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :DeliveryData=>{:fields=>[{:name=>:units, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeliveryIndicator=>{:fields=>[{:name=>:expected_delivery_percentage, :type=>"double", :min_occurs=>0, :max_occurs=>1}, {:name=>:actual_delivery_percentage, :type=>"double", :min_occurs=>0, :max_occurs=>1}]}, :DeviceCapability=>{:fields=>[], :base=>"Technology"}, :DeviceCapabilityPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :DeviceCapabilityTargeting=>{:fields=>[{:name=>:targeted_device_capabilities, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_device_capabilities, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeviceCategory=>{:fields=>[], :base=>"Technology"}, :DeviceCategoryPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :DeviceCategoryTargeting=>{:fields=>[{:name=>:targeted_device_categories, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_device_categories, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeviceManufacturer=>{:fields=>[], :base=>"Technology"}, :DeviceManufacturerPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :DeviceManufacturerTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DropDownCustomFieldValue=>{:fields=>[{:name=>:custom_field_option_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :EntityChildrenLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityChildrenLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :EntityLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ExchangeRateError=>{:fields=>[{:name=>:reason, :type=>"ExchangeRateError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FeatureError=>{:fields=>[{:name=>:reason, :type=>"FeatureError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FieldPathElement=>{:fields=>[{:name=>:field, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :ForecastError=>{:fields=>[{:name=>:reason, :type=>"ForecastError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FrequencyCap=>{:fields=>[{:name=>:max_impressions, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:num_time_units, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_unit, :type=>"TimeUnit", :min_occurs=>0, :max_occurs=>1}]}, :FrequencyCapError=>{:fields=>[{:name=>:reason, :type=>"FrequencyCapError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FrequencyCapPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :GenericTargetingError=>{:fields=>[{:name=>:reason, :type=>"GenericTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :GeoTargeting=>{:fields=>[{:name=>:targeted_locations, :type=>"Location", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_locations, :type=>"Location", :min_occurs=>0, :max_occurs=>:unbounded}]}, :GeoTargetingError=>{:fields=>[{:name=>:reason, :type=>"GeoTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :GeographyPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :Goal=>{:fields=>[{:name=>:goal_type, :type=>"GoalType", :min_occurs=>0, :max_occurs=>1}, {:name=>:unit_type, :type=>"UnitType", :min_occurs=>0, :max_occurs=>1}, {:name=>:units, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :InternalApiError=>{:fields=>[{:name=>:reason, :type=>"InternalApiError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :InventoryTargeting=>{:fields=>[{:name=>:targeted_ad_units, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_ad_units, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_placement_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :InventoryTargetingError=>{:fields=>[{:name=>:reason, :type=>"InventoryTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :LabelEntityAssociationError=>{:fields=>[{:name=>:reason, :type=>"LabelEntityAssociationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :LineItemError=>{:fields=>[{:name=>:reason, :type=>"LineItemError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :LineItemOperationError=>{:fields=>[{:name=>:reason, :type=>"LineItemOperationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Location=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:type, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:canonical_parent_id, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:display_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :MobileApplicationTargeting=>{:fields=>[{:name=>:mobile_application_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :MobileCarrier=>{:fields=>[], :base=>"Technology"}, :MobileCarrierPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :MobileCarrierTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carriers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :MobileDevice=>{:fields=>[{:name=>:manufacturer_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :MobileDeviceSubmodel=>{:fields=>[{:name=>:mobile_device_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :MobileDeviceSubmodelTargeting=>{:fields=>[{:name=>:targeted_mobile_device_submodels, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_mobile_device_submodels, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :MobileDeviceTargeting=>{:fields=>[{:name=>:targeted_mobile_devices, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_mobile_devices, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :Money=>{:fields=>[{:name=>:currency_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:micro_amount, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :NotNullError=>{:fields=>[{:name=>:reason, :type=>"NotNullError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NumberValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :OperatingSystem=>{:fields=>[], :base=>"Technology"}, :OperatingSystemPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :OperatingSystemTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_systems, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :OperatingSystemVersion=>{:fields=>[{:name=>:major_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minor_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:micro_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :OperatingSystemVersionTargeting=>{:fields=>[{:name=>:targeted_operating_system_versions, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_operating_system_versions, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ParseError=>{:fields=>[{:name=>:reason, :type=>"ParseError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PauseProposalLineItems=>{:fields=>[], :base=>"ProposalLineItemAction"}, :PermissionError=>{:fields=>[{:name=>:reason, :type=>"PermissionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PlacementPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :PrecisionError=>{:fields=>[{:name=>:reason, :type=>"PrecisionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PreferredDealError=>{:fields=>[{:name=>:reason, :type=>"PreferredDealError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PremiumFeature=>{:fields=>[], :abstract=>true}, :PremiumRateValue=>{:fields=>[{:name=>:premium_rate_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:premium_feature, :type=>"PremiumFeature", :min_occurs=>0, :max_occurs=>1}, {:name=>:rate_type, :type=>"RateType", :min_occurs=>0, :max_occurs=>1}, {:name=>:adjustment_type, :type=>"PremiumAdjustmentType", :min_occurs=>0, :max_occurs=>1}, {:name=>:adjustment_size, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :ProductError=>{:fields=>[{:name=>:reason, :type=>"ProductError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalError=>{:fields=>[{:name=>:reason, :type=>"ProposalError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalLineItemAction=>{:fields=>[], :abstract=>true}, :ProposalLineItemActionError=>{:fields=>[{:name=>:reason, :type=>"ProposalLineItemActionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalLineItemConstraints=>{:fields=>[{:name=>:allow_creative_placeholders_customization, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:built_in_creative_placeholders, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:built_in_roadblocking_type, :type=>"RoadblockingType", :min_occurs=>0, :max_occurs=>1}, {:name=>:built_in_delivery_rate_type, :type=>"DeliveryRateType", :min_occurs=>0, :max_occurs=>1}, {:name=>:built_in_creative_rotation_type, :type=>"CreativeRotationType", :min_occurs=>0, :max_occurs=>1}, {:name=>:built_in_companion_delivery_option, :type=>"CompanionDeliveryOption", :min_occurs=>0, :max_occurs=>1}, {:name=>:built_in_frequency_caps, :type=>"FrequencyCap", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:product_built_in_targeting, :type=>"Targeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:customizable_attributes, :type=>"CustomizableAttributes", :min_occurs=>0, :max_occurs=>1}]}, :ProposalLineItem=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:proposal_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:package_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:rate_card_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:product_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_zone_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:internal_notes, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:cost_adjustment, :type=>"CostAdjustment", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_archived, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:goal, :type=>"Goal", :min_occurs=>0, :max_occurs=>1}, {:name=>:contracted_quantity_buffer, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:scheduled_quantity, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:contracted_units_bought, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:delivery_rate_type, :type=>"DeliveryRateType", :min_occurs=>0, :max_occurs=>1}, {:name=>:roadblocking_type, :type=>"RoadblockingType", :min_occurs=>0, :max_occurs=>1}, {:name=>:companion_delivery_option, :type=>"CompanionDeliveryOption", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_rotation_type, :type=>"CreativeRotationType", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_max_duration, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:frequency_caps, :type=>"FrequencyCap", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:dfp_line_item_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:line_item_type, :type=>"LineItemType", :min_occurs=>0, :max_occurs=>1}, {:name=>:line_item_priority, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:rate_type, :type=>"RateType", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_placeholders, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeting, :type=>"Targeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_field_values, :type=>"BaseCustomFieldValue", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:effective_applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:disable_same_advertiser_competitive_exclusion, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:product_constraints, :type=>"ProposalLineItemConstraints", :min_occurs=>0, :max_occurs=>1}, {:name=>:premiums, :type=>"ProposalLineItemPremium", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:is_sold, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:base_rate, :type=>"Money", :min_occurs=>0, :max_occurs=>1}, {:name=>:net_rate, :type=>"Money", :min_occurs=>0, :max_occurs=>1}, {:name=>:gross_rate, :type=>"Money", :min_occurs=>0, :max_occurs=>1}, {:name=>:net_cost, :type=>"Money", :min_occurs=>0, :max_occurs=>1}, {:name=>:gross_cost, :type=>"Money", :min_occurs=>0, :max_occurs=>1}, {:name=>:delivery_indicator, :type=>"DeliveryIndicator", :min_occurs=>0, :max_occurs=>1}, {:name=>:delivery_data, :type=>"DeliveryData", :min_occurs=>0, :max_occurs=>1}, {:name=>:computed_status, :type=>"ComputedStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:billing_cap, :type=>"BillingCap", :min_occurs=>0, :max_occurs=>1}, {:name=>:billing_schedule, :type=>"BillingSchedule", :min_occurs=>0, :max_occurs=>1}, {:name=>:billing_source, :type=>"BillingSource", :min_occurs=>0, :max_occurs=>1}, {:name=>:billing_base, :type=>"BillingBase", :min_occurs=>0, :max_occurs=>1}, {:name=>:last_modified_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:reservation_status, :type=>"ReservationStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:last_reservation_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:use_third_party_ad_server_from_proposal, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:third_party_ad_server_id, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_third_party_ad_server_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:environment_type, :type=>"EnvironmentType", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_programmatic, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:link_status, :type=>"LinkStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:marketplace_info, :type=>"ProposalLineItemMarketplaceInfo", :min_occurs=>0, :max_occurs=>1}, {:name=>:rate_card_pricing_model, :type=>"PricingModel", :min_occurs=>0, :max_occurs=>1}, {:name=>:additional_terms, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:programmatic_creative_source, :type=>"ProgrammaticCreativeSource", :min_occurs=>0, :max_occurs=>1}, {:name=>:estimated_minimum_impressions, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :ProposalLineItemError=>{:fields=>[{:name=>:reason, :type=>"ProposalLineItemError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalLineItemMarketplaceInfo=>{:fields=>[{:name=>:ad_exchange_environment, :type=>"AdExchangeEnvironment", :min_occurs=>0, :max_occurs=>1}]}, :ProposalLineItemPage=>{:fields=>[{:name=>:results, :type=>"ProposalLineItem", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:start_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:total_result_set_size, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :ProposalLineItemPremium=>{:fields=>[{:name=>:premium_rate_value, :type=>"PremiumRateValue", :min_occurs=>0, :max_occurs=>1}, {:name=>:status, :type=>"ProposalLineItemPremiumStatus", :min_occurs=>0, :max_occurs=>1}]}, :ProposalLineItemProgrammaticError=>{:fields=>[{:name=>:reason, :type=>"ProposalLineItemProgrammaticError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublisherQueryLanguageContextError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageContextError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublisherQueryLanguageSyntaxError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageSyntaxError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :QuotaError=>{:fields=>[{:name=>:reason, :type=>"QuotaError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RangeError=>{:fields=>[{:name=>:reason, :type=>"RangeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ReleaseProposalLineItems=>{:fields=>[], :base=>"ProposalLineItemAction"}, :RequestPlatformTargeting=>{:fields=>[{:name=>:targeted_request_platforms, :type=>"RequestPlatform", :min_occurs=>0, :max_occurs=>:unbounded}]}, :RequiredCollectionError=>{:fields=>[{:name=>:reason, :type=>"RequiredCollectionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredError=>{:fields=>[{:name=>:reason, :type=>"RequiredError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredNumberError=>{:fields=>[{:name=>:reason, :type=>"RequiredNumberError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ReservationDetailsError=>{:fields=>[{:name=>:reason, :type=>"ReservationDetailsError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ReserveProposalLineItems=>{:fields=>[{:name=>:allow_overbook, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}], :base=>"ProposalLineItemAction"}, :ResumeProposalLineItems=>{:fields=>[], :base=>"ProposalLineItemAction"}, :AudienceSegmentError=>{:fields=>[{:name=>:reason, :type=>"AudienceSegmentError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ServerError=>{:fields=>[{:name=>:reason, :type=>"ServerError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :SetValue=>{:fields=>[{:name=>:values, :type=>"Value", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"Value"}, :Size=>{:fields=>[{:name=>:width, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:height, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_aspect_ratio, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :SoapRequestHeader=>{:fields=>[{:name=>:network_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:application_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :SoapResponseHeader=>{:fields=>[{:name=>:request_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:response_time, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :Statement=>{:fields=>[{:name=>:query, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:values, :type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>:unbounded}]}, :StatementError=>{:fields=>[{:name=>:reason, :type=>"StatementError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringFormatError=>{:fields=>[{:name=>:reason, :type=>"StringFormatError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringLengthError=>{:fields=>[{:name=>:reason, :type=>"StringLengthError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :String_ValueMapEntry=>{:fields=>[{:name=>:key, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}]}, :Targeting=>{:fields=>[{:name=>:geo_targeting, :type=>"GeoTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:inventory_targeting, :type=>"InventoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:day_part_targeting, :type=>"DayPartTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:date_time_range_targeting, :type=>"DateTimeRangeTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:technology_targeting, :type=>"TechnologyTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_targeting, :type=>"CustomCriteriaSet", :min_occurs=>0, :max_occurs=>1}, {:name=>:user_domain_targeting, :type=>"UserDomainTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:content_targeting, :type=>"ContentTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_targeting, :type=>"VideoPositionTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_application_targeting, :type=>"MobileApplicationTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:request_platform_targeting, :type=>"RequestPlatformTargeting", :min_occurs=>0, :max_occurs=>1}]}, :TeamError=>{:fields=>[{:name=>:reason, :type=>"TeamError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Technology=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :TechnologyTargetingError=>{:fields=>[{:name=>:reason, :type=>"TechnologyTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :TextValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :TimeOfDay=>{:fields=>[{:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"MinuteOfHour", :min_occurs=>0, :max_occurs=>1}]}, :TimeZoneError=>{:fields=>[{:name=>:reason, :type=>"TimeZoneError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :TypeError=>{:fields=>[], :base=>"ApiError"}, :UnarchiveProposalLineItems=>{:fields=>[], :base=>"ProposalLineItemAction"}, :UniqueError=>{:fields=>[], :base=>"ApiError"}, :UnknownPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :UnlinkProposalLineItems=>{:fields=>[], :base=>"ProposalLineItemAction"}, :UpdateResult=>{:fields=>[{:name=>:num_changes, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :UserDomainPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :UserDomainTargeting=>{:fields=>[{:name=>:domains, :type=>"string", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :UserDomainTargetingError=>{:fields=>[{:name=>:reason, :type=>"UserDomainTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Value=>{:fields=>[], :abstract=>true}, :VideoPosition=>{:fields=>[{:name=>:position_type, :type=>"VideoPosition.Type", :min_occurs=>0, :max_occurs=>1}, {:name=>:midroll_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :VideoPositionPremiumFeature=>{:fields=>[], :base=>"PremiumFeature"}, :VideoPositionTargeting=>{:fields=>[{:name=>:targeted_positions, :type=>"VideoPositionTarget", :min_occurs=>0, :max_occurs=>:unbounded}]}, :VideoPositionTargetingError=>{:fields=>[{:name=>:reason, :type=>"VideoPositionTargetingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :VideoPositionWithinPod=>{:fields=>[{:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :VideoPositionTarget=>{:fields=>[{:name=>:video_position, :type=>"VideoPosition", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_bumper_type, :type=>"VideoBumperType", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_within_pod, :type=>"VideoPositionWithinPod", :min_occurs=>0, :max_occurs=>1}]}, :AdExchangeEnvironment=>{:type=>"string", :enumerations=>["DISPLAY", "VIDEO", "GAMES", "MOBILE", "MOBILE_OUTSTREAM_VIDEO", "DISPLAY_OUTSTREAM_VIDEO", "UNKNOWN"]}, :"ApiVersionError.Reason"=>{:type=>"string", :enumerations=>["UPDATE_TO_NEWER_VERSION", "UNKNOWN"]}, :"AuthenticationError.Reason"=>{:type=>"string", :enumerations=>["AMBIGUOUS_SOAP_REQUEST_HEADER", "INVALID_EMAIL", "AUTHENTICATION_FAILED", "INVALID_OAUTH_SIGNATURE", "INVALID_SERVICE", "MISSING_SOAP_REQUEST_HEADER", "MISSING_AUTHENTICATION_HTTP_HEADER", "MISSING_AUTHENTICATION", "NOT_WHITELISTED_FOR_API_ACCESS", "NO_NETWORKS_TO_ACCESS", "NETWORK_NOT_FOUND", "NETWORK_CODE_REQUIRED", "CONNECTION_ERROR", "GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK", "UNDER_INVESTIGATION", "UNKNOWN"]}, :"AvailableBillingError.Reason"=>{:type=>"string", :enumerations=>["BILLING_SOURCE_IS_NOT_AVAILABLE", "BILLING_SCHEDULE_IS_NOT_AVAILABLE", "BILLING_CAP_IS_NOT_AVAILABLE", "UNKNOWN"]}, :BillingBase=>{:type=>"string", :enumerations=>["VOLUME", "REVENUE", "UNKNOWN"]}, :BillingCap=>{:type=>"string", :enumerations=>["NO_CAP", "CAPPED_CUMULATIVE", "CAPPED_PER_BILLING_CYCLE", "CAPPED_CUMULATIVE_PER_BILLING_CYCLE", "CAPPED_WITH_ROLLOVER_PER_BILLING_CYCLE", "UNKNOWN"]}, :"BillingError.Reason"=>{:type=>"string", :enumerations=>["UNSUPPORTED_BILLING_SCHEDULE", "UNSUPPORTED_BILLING_CAP", "MISSING_BILLING_SOURCE", "MISSING_BILLING_SCHEDULE", "MISSING_BILLING_CAP", "INVALID_BILLING_SOURCE_FOR_OFFLINE", "UPDATE_BILLING_NOT_ALLOWED", "MISSING_BILLING_BASE", "INVALID_BILLING_BASE", "UNKNOWN"]}, :BillingSchedule=>{:type=>"string", :enumerations=>["PREPAID", "END_OF_THE_CAMPAIGN", "STRAIGHTLINE", "PRORATED", "UNKNOWN"]}, :BillingSource=>{:type=>"string", :enumerations=>["CONTRACTED", "DFP_VOLUME", "THIRD_PARTY_VOLUME", "UNKNOWN"]}, :"CollectionSizeError.Reason"=>{:type=>"string", :enumerations=>["TOO_LARGE", "UNKNOWN"]}, :"CommonError.Reason"=>{:type=>"string", :enumerations=>["NOT_FOUND", "ALREADY_EXISTS", "NOT_APPLICABLE", "DUPLICATE_OBJECT", "CANNOT_UPDATE", "CONCURRENT_MODIFICATION", "UNKNOWN"]}, :CompanionDeliveryOption=>{:type=>"string", :enumerations=>["OPTIONAL", "AT_LEAST_ONE", "ALL", "UNKNOWN"]}, :ComputedStatus=>{:type=>"string", :enumerations=>["DELIVERY_EXTENDED", "DELIVERING", "READY", "PAUSED", "INACTIVE", "PAUSED_INVENTORY_RELEASED", "PENDING_APPROVAL", "COMPLETED", "DISAPPROVED", "DRAFT", "CANCELED"]}, :"ContentMetadataTargetingError.Reason"=>{:type=>"string", :enumerations=>["VALUES_DO_NOT_BELONG_TO_A_HIERARCHY", "CONTENT_METADATA_TARGETING_DEPRECATED", "UNKNOWN"]}, :CostAdjustment=>{:type=>"string", :enumerations=>["NONE", "MAKE_GOOD", "BARTER", "ADDED_VALUE", "UNKNOWN"]}, :CreativeRotationType=>{:type=>"string", :enumerations=>["EVEN", "OPTIMIZED", "MANUAL", "SEQUENTIAL"]}, :CreativeSizeType=>{:type=>"string", :enumerations=>["PIXEL", "ASPECT_RATIO", "INTERSTITIAL", "NATIVE"]}, :"CustomCriteria.ComparisonOperator"=>{:type=>"string", :enumerations=>["IS", "IS_NOT"]}, :"CustomCriteriaSet.LogicalOperator"=>{:type=>"string", :enumerations=>["AND", "OR"]}, :"CustomFieldValueError.Reason"=>{:type=>"string", :enumerations=>["CUSTOM_FIELD_NOT_FOUND", "CUSTOM_FIELD_INACTIVE", "CUSTOM_FIELD_OPTION_NOT_FOUND", "UNKNOWN"]}, :"CustomTargetingError.Reason"=>{:type=>"string", :enumerations=>["KEY_NOT_FOUND", "KEY_COUNT_TOO_LARGE", "KEY_NAME_DUPLICATE", "KEY_NAME_EMPTY", "KEY_NAME_INVALID_LENGTH", "KEY_NAME_INVALID_CHARS", "KEY_NAME_RESERVED", "KEY_DISPLAY_NAME_INVALID_LENGTH", "VALUE_NOT_FOUND", "GET_VALUES_BY_STATEMENT_MUST_CONTAIN_KEY_ID", "VALUE_COUNT_FOR_KEY_TOO_LARGE", "VALUE_NAME_DUPLICATE", "VALUE_NAME_EMPTY", "VALUE_NAME_INVALID_LENGTH", "VALUE_NAME_INVALID_CHARS", "VALUE_DISPLAY_NAME_INVALID_LENGTH", "VALUE_MATCH_TYPE_NOT_ALLOWED", "VALUE_MATCH_TYPE_NOT_EXACT_FOR_PREDEFINED_KEY", "SUFFIX_MATCH_TYPE_NOT_ALLOWED", "CONTAINS_MATCH_TYPE_NOT_ALLOWED", "KEY_WITH_MISSING_VALUES", "INVALID_VALUE_FOR_KEY", "CANNOT_OR_DIFFERENT_KEYS", "INVALID_TARGETING_EXPRESSION", "DELETED_KEY_CANNOT_BE_USED_FOR_TARGETING", "DELETED_VALUE_CANNOT_BE_USED_FOR_TARGETING", "VIDEO_BROWSE_BY_KEY_CANNOT_BE_USED_FOR_CUSTOM_TARGETING", "CANNOT_DELETE_CUSTOM_KEY_USED_IN_CONTENT_METADATA_MAPPING", "CANNOT_DELETE_CUSTOM_VALUE_USED_IN_CONTENT_METADATA_MAPPING", "CANNOT_DELETE_CUSTOM_KEY_USED_IN_PARTNER_ASSIGNMENT_TARGETING", "CANNOT_DELETE_CUSTOM_VALUE_USED_IN_PARTNER_ASSIGNMENT_TARGETING", "CANNOT_TARGET_AUDIENCE_SEGMENT", "CANNOT_TARGET_INACTIVE_AUDIENCE_SEGMENT", "INVALID_AUDIENCE_SEGMENTS", "ONLY_APPROVED_AUDIENCE_SEGMENTS_CAN_BE_TARGETED", "UNKNOWN"]}, :"AudienceSegmentCriteria.ComparisonOperator"=>{:type=>"string", :enumerations=>["IS", "IS_NOT"]}, :"DateTimeRangeTargetingError.Reason"=>{:type=>"string", :enumerations=>["EMPTY_RANGES", "NOT_SPONSORSHIP_LINEITEM", "PAST_RANGES_CHANGED", "RANGES_OVERLAP", "RANGES_OUT_OF_LINEITEM_ACTIVE_PERIOD", "START_TIME_IS_NOT_START_OF_DAY", "END_TIME_IS_NOT_END_OF_DAY", "START_DATE_TIME_IS_IN_PAST", "RANGE_END_TIME_BEFORE_START_TIME", "END_DATE_TIME_IS_TOO_LATE", "LIMITED_RANGES_IN_UNLIMITED_LINEITEM", "UNKNOWN"]}, :DayOfWeek=>{:type=>"string", :enumerations=>["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]}, :"DayPartTargetingError.Reason"=>{:type=>"string", :enumerations=>["INVALID_HOUR", "INVALID_MINUTE", "END_TIME_NOT_AFTER_START_TIME", "TIME_PERIODS_OVERLAP", "UNKNOWN"]}, :DeliveryTimeZone=>{:type=>"string", :enumerations=>["PUBLISHER", "BROWSER"]}, :"DealError.Reason"=>{:type=>"string", :enumerations=>["CANNOT_ADD_LINE_ITEM_WHEN_SOLD", "CANNOT_ARCHIVE_LINE_ITEM_WHEN_SOLD", "CANNOT_ARCHIVE_PROPOSAL_WHEN_SOLD", "CANNOT_CHANGE_FIELD_REQUIRING_BUYER_APPROVAL", "CANNOT_GET_SELLER_ID", "CAN_ONLY_EXECUTE_IF_LOCAL_EDITS", "MISSING_PROPOSAL_LINE_ITEMS", "MISSING_ENVIRONMENT", "MISSING_AD_EXCHANGE_PROPERTY", "CANNOT_FIND_PROPOSAL_IN_MARKETPLACE", "CANNOT_GET_PRODUCT", "NEW_VERSION_FROM_BUYER", "PROPOSAL_OUT_OF_SYNC_WITH_MARKETPLACE", "NO_PROPOSAL_CHANGES_FOUND", "UNKNOWN"]}, :DeliveryRateType=>{:type=>"string", :enumerations=>["EVENLY", "FRONTLOADED", "AS_FAST_AS_POSSIBLE"]}, :"EntityChildrenLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["LINE_ITEM_LIMIT_FOR_ORDER_REACHED", "CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED", "AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED", "CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED", "ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED", "PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED", "PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED", "PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PREMIUM_LIMIT_FOR_RATE_CARD_REACHED", "AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED", "NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED", "UNKNOWN"]}, :"EntityLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["CUSTOM_TARGETING_VALUES_LIMIT_REACHED", "AD_EXCLUSION_RULES_LIMIT_REACHED", "FIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED", "PLACEMENTS_LIMIT_REACHED", "LINE_ITEMS_LIMIT_REACHED", "UNKNOWN"]}, :EnvironmentType=>{:type=>"string", :enumerations=>["BROWSER", "VIDEO_PLAYER"]}, :"ExchangeRateError.Reason"=>{:type=>"string", :enumerations=>["INVALID_CURRENCY_CODE", "UNSUPPORTED_CURRENCY_CODE", "CURRENCY_CODE_ALREADY_EXISTS", "INVALID_EXCHANGE_RATE", "EXCHANGE_RATE_NOT_FOUND", "CANNOT_DELETE_EXCHANGE_RATE_WITH_ACTIVE_RATE_CARDS", "UNKNOWN"]}, :"FeatureError.Reason"=>{:type=>"string", :enumerations=>["MISSING_FEATURE", "UNKNOWN"]}, :"ForecastError.Reason"=>{:type=>"string", :enumerations=>["SERVER_NOT_AVAILABLE", "INTERNAL_ERROR", "NO_FORECAST_YET", "NOT_ENOUGH_INVENTORY", "SUCCESS", "ZERO_LENGTH_RESERVATION", "EXCEEDED_QUOTA", "UNKNOWN"]}, :"FrequencyCapError.Reason"=>{:type=>"string", :enumerations=>["IMPRESSION_LIMIT_EXCEEDED", "IMPRESSIONS_TOO_LOW", "RANGE_LIMIT_EXCEEDED", "RANGE_TOO_LOW", "DUPLICATE_TIME_RANGE", "TOO_MANY_FREQUENCY_CAPS", "UNKNOWN"]}, :"GenericTargetingError.Reason"=>{:type=>"string", :enumerations=>["CONFLICTING_INCLUSION_OR_EXCLUSION_OF_SIBLINGS", "INCLUDING_DESCENDANTS_OF_EXCLUDED_CRITERIA", "UNKNOWN"]}, :"GeoTargetingError.Reason"=>{:type=>"string", :enumerations=>["TARGETED_LOCATIONS_NOT_EXCLUDABLE", "EXCLUDED_LOCATIONS_CANNOT_HAVE_CHILDREN_TARGETED", "POSTAL_CODES_CANNOT_BE_EXCLUDED", "UNTARGETABLE_LOCATION", "UNKNOWN"]}, :GoalType=>{:type=>"string", :enumerations=>["NONE", "LIFETIME", "DAILY", "UNKNOWN"]}, :"InternalApiError.Reason"=>{:type=>"string", :enumerations=>["UNEXPECTED_INTERNAL_API_ERROR", "TRANSIENT_ERROR", "UNKNOWN", "DOWNTIME", "ERROR_GENERATING_RESPONSE"]}, :"InventoryTargetingError.Reason"=>{:type=>"string", :enumerations=>["AT_LEAST_ONE_PLACEMENT_OR_INVENTORY_UNIT_REQUIRED", "INVENTORY_CANNOT_BE_TARGETED_AND_EXCLUDED", "INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_TARGETED", "INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_EXCLUDED", "INVENTORY_UNIT_CANNOT_BE_EXCLUDED_IF_ANCESTOR_IS_EXCLUDED", "EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_TARGETED", "EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_EXCLUDED", "SELF_ONLY_INVENTORY_UNIT_NOT_ALLOWED", "SELF_ONLY_INVENTORY_UNIT_WITHOUT_DESCENDANTS", "YOUTUBE_AUDIENCE_SEGMENTS_CAN_ONLY_BE_TARGETED_WITH_YOUTUBE_SHARED_INVENTORY", "UNKNOWN"]}, :"LabelEntityAssociationError.Reason"=>{:type=>"string", :enumerations=>["DUPLICATE_ASSOCIATION", "INVALID_ASSOCIATION", "DUPLICATE_ASSOCIATION_WITH_NEGATION", "UNKNOWN"]}, :"LineItemError.Reason"=>{:type=>"string", :enumerations=>["ALREADY_STARTED", "UPDATE_RESERVATION_NOT_ALLOWED", "ALL_ROADBLOCK_NOT_ALLOWED", "CREATIVE_SET_ROADBLOCK_NOT_ALLOWED", "FRACTIONAL_PERCENTAGE_NOT_ALLOWED", "DISCOUNT_NOT_ALLOWED", "UPDATE_CANCELED_LINE_ITEM_NOT_ALLOWED", "UPDATE_PENDING_APPROVAL_LINE_ITEM_NOT_ALLOWED", "UPDATE_ARCHIVED_LINE_ITEM_NOT_ALLOWED", "CREATE_OR_UPDATE_LEGACY_DFP_LINE_ITEM_TYPE_NOT_ALLOWED", "COPY_LINE_ITEM_FROM_DIFFERENT_COMPANY_NOT_ALLOWED", "INVALID_SIZE_FOR_PLATFORM", "INVALID_LINE_ITEM_TYPE_FOR_PLATFORM", "INVALID_WEB_PROPERTY_FOR_PLATFORM", "INVALID_WEB_PROPERTY_FOR_ENVIRONMENT", "AFMA_BACKFILL_NOT_ALLOWED", "UPDATE_ENVIRONMENT_TYPE_NOT_ALLOWED", "COMPANIONS_NOT_ALLOWED", "ROADBLOCKS_WITH_NONROADBLOCKS_NOT_ALLOWED", "CANNOT_UPDATE_TO_OR_FROM_CREATIVE_SET_ROADBLOCK", "UPDATE_FROM_BACKFILL_LINE_ITEM_TYPE_NOT_ALLOWED", "UPDATE_TO_BACKFILL_LINE_ITEM_TYPE_NOT_ALLOWED", "UPDATE_BACKFILL_WEB_PROPERTY_NOT_ALLOWED", "INVALID_COMPANION_DELIVERY_OPTION_FOR_ENVIRONMENT_TYPE", "COMPANION_BACKFILL_REQUIRES_VIDEO", "COMPANION_DELIVERY_OPTION_REQUIRE_PREMIUM", "DUPLICATE_MASTER_SIZES", "INVALID_PRIORITY_FOR_LINE_ITEM_TYPE", "INVALID_ENVIRONMENT_TYPE", "INVALID_ENVIRONMENT_TYPE_FOR_PLATFORM", "INVALID_TYPE_FOR_AUTO_EXTENSION", "VIDEO_INVALID_ROADBLOCKING", "BACKFILL_TYPE_NOT_ALLOWED", "INVALID_BACKFILL_LINK_TYPE", "DIFFERENT_BACKFILL_ACCOUNT", "COMPANION_DELIVERY_OPTIONS_NOT_ALLOWED_WITH_BACKFILL", "INVALID_WEB_PROPERTY_FOR_ADX_BACKFILL", "INVALID_SIZE_FOR_ENVIRONMENT", "TARGET_PLATOFRM_NOT_ALLOWED", "INVALID_LINE_ITEM_CURRENCY", "LINE_ITEM_CANNOT_HAVE_MULTIPLE_CURRENCIES", "CANNOT_CHANGE_CURRENCY", "INVALID_LINE_ITEM_DATE_TIME", "INVALID_COST_PER_UNIT_FOR_CPA", "UPDATE_CPA_COST_TYPE_NOT_ALLOWED", "UPDATE_VCPM_COST_TYPE_NOT_ALLOWED", "MASTER_COMPANION_LINE_ITEM_CANNOT_HAVE_VCPM_COST_TYPE", "DUPLICATED_UNIT_TYPE", "MULTIPLE_GOAL_TYPE_NOT_ALLOWED", "INVALID_UNIT_TYPE_COMBINATION_FOR_SECONDARY_GOALS", "INVALID_CREATIVE_TARGETING_NAME", "INVALID_CREATIVE_CUSTOM_TARGETING_MATCH_TYPE", "INVALID_CREATIVE_ROTATION_TYPE_WITH_CREATIVE_TARGETING", "CANNOT_OVERBOOK_WITH_CREATIVE_TARGETING", "PLACEHOLDERS_DO_NOT_MATCH_PROPOSAL", "UNSUPPORTED_LINE_ITEM_TYPE_FOR_THIS_API_VERSION", "NATIVE_CREATIVE_TEMPLATE_REQUIRED", "CANNOT_HAVE_CREATIVE_TEMPLATE", "CANNOT_INCLUDE_NATIVE_CREATIVE_TEMPLATE", "CANNOT_INCLUDE_NATIVE_PLACEHOLDER_WITHOUT_TEMPLATE_ID", "NO_SIZE_WITH_DURATION", "INVALID_VIEWABILITY_PROVIDER_COMPANY", "UNKNOWN"]}, :"LineItemOperationError.Reason"=>{:type=>"string", :enumerations=>["NOT_ALLOWED", "NOT_APPLICABLE", "HAS_COMPLETED", "HAS_NO_ACTIVE_CREATIVES", "CANNOT_ACTIVATE_LEGACY_DFP_LINE_ITEM", "CANNOT_ACTIVATE_UNCONFIGURED_LINE_ITEM", "CANNOT_DELETE_DELIVERED_LINE_ITEM", "CANNOT_RESERVE_COMPANY_CREDIT_STATUS_NOT_ACTIVE", "CANNOT_ACTIVATE_INVALID_COMPANY_CREDIT_STATUS", "UNKNOWN"]}, :LineItemType=>{:type=>"string", :enumerations=>["SPONSORSHIP", "STANDARD", "NETWORK", "BULK", "PRICE_PRIORITY", "HOUSE", "LEGACY_DFP", "CLICK_TRACKING", "ADSENSE", "AD_EXCHANGE", "BUMPER", "ADMOB", "PREFERRED_DEAL", "UNKNOWN"]}, :LinkStatus=>{:type=>"string", :enumerations=>["LINKED", "UNLINKED", "UNKNOWN"]}, :MinuteOfHour=>{:type=>"string", :enumerations=>["ZERO", "FIFTEEN", "THIRTY", "FORTY_FIVE"]}, :"NotNullError.Reason"=>{:type=>"string", :enumerations=>["ARG1_NULL", "ARG2_NULL", "ARG3_NULL", "NULL", "UNKNOWN"]}, :"ParseError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"PermissionError.Reason"=>{:type=>"string", :enumerations=>["PERMISSION_DENIED", "UNKNOWN"]}, :"PrecisionError.Reason"=>{:type=>"string", :enumerations=>["WRONG_PRECISION", "UNKNOWN"]}, :"PreferredDealError.Reason"=>{:type=>"string", :enumerations=>["INVALID_PRIORITY", "INVALID_RATE_TYPE", "INVALID_FREQUENCY_CAPS", "INVALID_ROADBLOCKING_TYPE", "INVALID_DELIVERY_RATE_TYPE", "UNKNOWN"]}, :PremiumAdjustmentType=>{:type=>"string", :enumerations=>["PERCENTAGE", "ABSOLUTE_VALUE", "UNKNOWN"]}, :PricingModel=>{:type=>"string", :enumerations=>["NET", "GROSS", "UNKNOWN"]}, :"ProductError.Reason"=>{:type=>"string", :enumerations=>["TEMPLATE_NOT_FOUND", "MALFORMED_PRODUCT_ID", "BAD_PRODUCT_ID_FEATURE", "BAD_PRODUCT_TEMPLATE_ID", "CANNOT_UPDATE_ARCHIVED_PRODUCT", "QUERY_TOO_LARGE", "PRODUCT_TEMPLATE_ID_IS_NOT_ZERO", "INVALID_RATE", "INVALID_CURRENCY", "UNKNOWN"]}, :ProgrammaticCreativeSource=>{:type=>"string", :enumerations=>["PUBLISHER", "ADVERTISER", "UNKNOWN"]}, :"ProposalError.Reason"=>{:type=>"string", :enumerations=>["AD_SERVER_UNKNOWN_ERROR", "AD_SERVER_API_ERROR", "UPDATE_ADVERTISER_NOT_ALLOWED", "UPDATE_PROPOSAL_NOT_ALLOWED", "CONTACT_UNSUPPORTED_FOR_ADVERTISER", "INVALID_CONTACT", "DUPLICATED_CONTACT", "UNACCEPTABLE_COMPANY_CREDIT_STATUS", "COMPANY_CREDIT_STATUS_NOT_ACTIVE", "PRIMARY_AGENCY_REQUIRED", "PRIMARY_AGENCY_NOT_UNIQUE", "UNSUPPORTED_COMPANY_ASSOCIATION_TYPE_FOR_PROGRAMMATIC_PROPOSAL", "DUPLICATED_COMPANY_ASSOCIATION", "DUPLICATED_SALESPERSON", "DUPLICATED_SALES_PLANNER", "DUPLICATED_TRAFFICKER", "HAS_NO_UNARCHIVED_PROPOSAL_LINEITEMS", "DUPLICATE_TERMS_AND_CONDITIONS", "UNSUPPORTED_PROPOSAL_CURRENCY_CODE", "UNSUPPORTED_BUYER_CURRENCY_CODE", "INVALID_FIELDS_SET_FOR_NON_PROGRAMMATIC_PROPOSAL", "INVALID_POC", "UPDATE_CURRENCY_NOT_ALLOWED", "UPDATE_TIME_ZONE_NOT_ALLOWED", "NON_PROGRAMMATIC_PROPOSAL_NOT_ALLOWED", "NEW_TRADITIONAL_ONLY_PROPOSAL_NOT_ALLOWED", "UNKNOWN"]}, :"ProposalLineItemActionError.Reason"=>{:type=>"string", :enumerations=>["NOT_APPLICABLE", "PROPOSAL_NOT_EDITABLE", "CANNOT_SELECTIVELY_ARCHIVE_PROPOSAL_LINE_ITEMS_FROM_MANDATORY_PRODUCTS", "CANNOT_SELECTIVELY_UNARCHIVE_PROPOSAL_LINE_ITEMS_FROM_MANDATORY_PRODUCTS", "CANNOT_UNARCHIVE_SOLD_PROGRAMMATIC_PROPOSAL_LINE_ITEM", "UNKNOWN"]}, :"ProposalLineItemError.Reason"=>{:type=>"string", :enumerations=>["NOT_SAME_RATE_CARD", "LINE_ITEM_TYPE_NOT_ALLOWED", "END_DATE_TIME_NOT_AFTER_START_TIME", "END_DATE_TIME_TOO_LATE", "START_DATE_TIME_IS_IN_PAST", "END_DATE_TIME_IS_IN_PAST", "FRONTLOADED_NOT_ALLOWED", "ALL_ROADBLOCK_NOT_ALLOWED", "CREATIVE_SET_ROADBLOCK_NOT_ALLOWED", "ALREADY_STARTED", "CONFLICT_WITH_PRODUCT", "VIOLATE_BUILT_IN_TARGETING_COMPATIBILITY_RESTRICTION", "VIOLATE_BUILT_IN_TARGETING_LOCKED_RESTRICTION", "MOBILE_TECH_CRITERIA_NOT_SUPPORTED", "UNSUPPORTED_TARGETING_TYPE", "WRONG_COST", "AGENCY_COMMISSION_MISMATCH", "CALCULATED_COST_TOO_HIGH", "INVALID_PRIORITY_FOR_LINE_ITEM_TYPE", "UPDATE_PROPOSAL_LINE_ITEM_NOT_ALLOWED", "CANNOT_UPDATE_TO_OR_FROM_CREATIVE_SET_ROADBLOCK", "SEQUENTIAL_CREATIVE_ROTATION_NOT_ALLOWED", "UPDATE_RESERVATION_NOT_ALLOWED", "INVALID_COMPANION_DELIVERY_OPTION_FOR_ROADBLOCKING_TYPE", "INVALID_COMPANION_DELIVERY_OPTION_FOR_ENVIRONMENT_TYPE", "INCONSISTENT_ROADBLOCK_TYPE", "INVALID_CONTRACTED_QUANTITY_BUFFER", "INVALID_VALUES_FOR_CLICK_TRACKING_LINE_ITEM_TYPE", "UPDATE_COST_ADJUSTMENT_NOT_ALLOWED", "UNSUPPORTED_RATE_CARD_CURRENCY_CODE", "END_DATE_TIME_IS_BEFORE_LAST_PAUSED_TIME", "VIDEO_INVALID_ROADBLOCKING", "UPDATE_TIME_ZONE_NOT_ALLOWED", "INVALID_TIME_ZONE_FOR_RATE_TYPE", "INVALID_TIME_ZONE_FOR_DEALS", "INVALID_ENVIRONMENT_TYPE", "SIZE_REQUIRED", "COMPANION_NOT_ALLOWED", "MISSING_COMPANION", "DUPLICATED_MASTER_SIZE", "INVALID_EXPECTED_CREATIVE_COUNT", "CANNOT_HAVE_CREATIVE_TEMPLATE", "NATIVE_CREATIVE_TEMPLATE_REQUIRED", "CANNOT_INCLUDE_NATIVE_PLACEHOLDER_WITHOUT_TEMPLATE_ID", "INVALID_CLICK_TRACKING_LINE_ITEM_TYPE", "INVALID_TARGETING_FOR_CLICK_TRACKING", "NOT_SAME_RATE_CARD_PRICING_MODEL", "NOT_SAME_RATE_CARD_WORKFLOW", "INVALID_CONTRACTED_UNITS_BOUGHT", "PLACEHOLDER_CANNOT_CONTAIN_LABELS", "INVALID_LABEL_TYPE_IN_PLACEHOLDER", "PLACEHOLDER_CANNOT_CONTAIN_NEGATED_LABELS", "MARKETPLACE_RATE_CARD_NOT_ALLOWED", "CANNOT_CREATE_FROM_PRODUCT", "CONTRACTED_UNITS_LESS_THAN_DELIVERED", "DISPLAY_ENVIRONMENT_MUST_HAVE_EXCLUDED_MOBILE_APPS_TARGETING", "MOBILE_ENVIRONMENT_MUST_HAVE_INCLUDED_MOBILE_APPS_TARGETING", "UNKNOWN"]}, :ProposalLineItemPremiumStatus=>{:type=>"string", :enumerations=>["INCLUDED", "EXCLUDED", "UNKNOWN"]}, :"ProposalLineItemProgrammaticError.Reason"=>{:type=>"string", :enumerations=>["INVALID_PRODUCT_TYPE", "VIDEO_NOT_SUPPORTED", "ROADBLOCKING_NOT_SUPPORTED", "INVALID_CREATIVE_ROTATION", "INVALID_PROPOSAL_LINE_ITEM_TYPE", "INVALID_RATE_TYPE", "ZERO_COST_PER_UNIT_NOT_SUPPORTED", "INVALID_PROGRAMMATIC_CREATIVE_SOURCE", "INVALID_MAX_VIDEO_CREATIVE_DURATION", "CANNOT_UPDATE_PROGRAMMATIC_CREATIVE_SOURCE", "INVALID_NUM_UNITS", "MIX_GUARANTEED_AND_PREFERRED_DEAL_NOT_ALLOWED", "MIX_NATIVE_AND_BANNER_SIZE_NOT_ALLOWED", "CANNOT_UPDATE_SIZES", "INVALID_SPONSORSHIP_CONTRACTED_UNITS_BOUGHT", "INVALID_PROGRAMMATIC_PRICING_MODEL", "BUYER_DISABLED_FOR_PG_VIOLATING_SLA", "UNKNOWN"]}, :"PublisherQueryLanguageContextError.Reason"=>{:type=>"string", :enumerations=>["UNEXECUTABLE", "UNKNOWN"]}, :"PublisherQueryLanguageSyntaxError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"QuotaError.Reason"=>{:type=>"string", :enumerations=>["EXCEEDED_QUOTA", "UNKNOWN", "REPORT_JOB_LIMIT"]}, :"RangeError.Reason"=>{:type=>"string", :enumerations=>["TOO_HIGH", "TOO_LOW", "UNKNOWN"]}, :RateType=>{:type=>"string", :enumerations=>["CPM", "CPC", "CPD", "CPU", "FLAT_FEE", "VCPM", "UNKNOWN"]}, :RequestPlatform=>{:type=>"string", :enumerations=>["UNKNOWN", "BROWSER", "MOBILE_APP", "VIDEO_PLAYER"]}, :"RequiredCollectionError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "UNKNOWN"]}, :"RequiredError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED"]}, :"RequiredNumberError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "TOO_LARGE_WITH_DETAILS", "TOO_SMALL_WITH_DETAILS", "UNKNOWN"]}, :"ReservationDetailsError.Reason"=>{:type=>"string", :enumerations=>["UNLIMITED_UNITS_BOUGHT_NOT_ALLOWED", "UNLIMITED_END_DATE_TIME_NOT_ALLOWED", "PERCENTAGE_UNITS_BOUGHT_TOO_HIGH", "DURATION_NOT_ALLOWED", "UNIT_TYPE_NOT_ALLOWED", "COST_TYPE_NOT_ALLOWED", "COST_TYPE_UNIT_TYPE_MISMATCH_NOT_ALLOWED", "LINE_ITEM_TYPE_NOT_ALLOWED", "NETWORK_REMNANT_ORDER_CANNOT_UPDATE_LINEITEM_TYPE", "BACKFILL_WEBPROPERTY_CODE_NOT_ALLOWED", "UNKNOWN"]}, :ReservationStatus=>{:type=>"string", :enumerations=>["RESERVED", "NOT_RESERVED", "RELEASED", "CHECK_LINE_ITEM_RESERVATION_STATUS", "UNKNOWN"]}, :RoadblockingType=>{:type=>"string", :enumerations=>["ONLY_ONE", "ONE_OR_MORE", "AS_MANY_AS_POSSIBLE", "ALL_ROADBLOCK", "CREATIVE_SET"]}, :"AudienceSegmentError.Reason"=>{:type=>"string", :enumerations=>["FIRST_PARTY_AUDIENCE_SEGMENT_NOT_SUPPORTED", "ONLY_RULE_BASED_FIRST_PARTY_AUDIENCE_SEGMENTS_CAN_BE_CREATED", "AUDIENCE_SEGMENT_ID_NOT_FOUND", "INVALID_AUDIENCE_SEGMENT_RULE", "AUDIENCE_SEGMENT_RULE_TOO_LONG", "INVALID_AUDIENCE_SEGMENT_NAME", "DUPLICATE_AUDIENCE_SEGMENT_NAME", "INVALID_AUDIENCE_SEGMENT_DESCRIPTION", "INVALID_AUDIENCE_SEGMENT_PAGEVIEWS", "INVALID_AUDIENCE_SEGMENT_RECENCY", "INVALID_AUDIENCE_SEGMENT_MEMBERSHIP_EXPIRATION", "INVALID_AUDIENCE_SEGMENT_CUSTOM_KEY_NAME", "INVALID_AUDIENCE_SEGMENT_CUSTOM_VALUE_NAME", "INVALID_AUDIENCE_SEGMENT_CUSTOM_VALUE_MATCH_TYPE", "INVALID_NESTED_FIRST_PARTY_AUDIENCE_SEGMENT", "INVALID_NESTED_THIRD_PARTY_AUDIENCE_SEGMENT", "INACTIVE_NESTED_AUDIENCE_SEGMENT", "AUDIENCE_SEGMENT_GLOBAL_LICENSE_ERROR", "UNKNOWN"]}, :"ServerError.Reason"=>{:type=>"string", :enumerations=>["SERVER_ERROR", "SERVER_BUSY", "UNKNOWN"]}, :"StatementError.Reason"=>{:type=>"string", :enumerations=>["VARIABLE_NOT_BOUND_TO_VALUE", "UNKNOWN"]}, :"StringFormatError.Reason"=>{:type=>"string", :enumerations=>["UNKNOWN", "ILLEGAL_CHARS", "INVALID_FORMAT"]}, :"StringLengthError.Reason"=>{:type=>"string", :enumerations=>["TOO_LONG", "TOO_SHORT", "UNKNOWN"]}, :"TeamError.Reason"=>{:type=>"string", :enumerations=>["ENTITY_NOT_ON_USERS_TEAMS", "AD_UNITS_NOT_ON_ORDER_TEAMS", "PLACEMENTS_NOT_ON_ORDER_TEAMS", "MISSING_USERS_TEAM", "ALL_TEAM_ASSOCIATION_NOT_ALLOWED", "INVALID_TEAM_ASSIGNMENT", "ALL_TEAM_ACCESS_OVERRIDE_NOT_ALLOWED", "CANNOT_UPDATE_INACTIVE_TEAM", "UNKNOWN"]}, :"TechnologyTargetingError.Reason"=>{:type=>"string", :enumerations=>["MOBILE_LINE_ITEM_CONTAINS_WEB_TECH_CRITERIA", "WEB_LINE_ITEM_CONTAINS_MOBILE_TECH_CRITERIA", "MOBILE_CARRIER_TARGETING_FEATURE_NOT_ENABLED", "DEVICE_CAPABILITY_TARGETING_FEATURE_NOT_ENABLED", "DEVICE_CATEGORY_TARGETING_FEATURE_NOT_ENABLED", "UNKNOWN"]}, :TimeUnit=>{:type=>"string", :enumerations=>["MINUTE", "HOUR", "DAY", "WEEK", "MONTH", "LIFETIME", "POD", "STREAM", "UNKNOWN"]}, :"TimeZoneError.Reason"=>{:type=>"string", :enumerations=>["INVALID_TIMEZONE_ID", "TIMEZONE_ID_IN_WRONG_FORMAT", "UNKNOWN"]}, :UnitType=>{:type=>"string", :enumerations=>["IMPRESSIONS", "CLICKS", "CLICK_THROUGH_CPA_CONVERSIONS", "VIEW_THROUGH_CPA_CONVERSIONS", "TOTAL_CPA_CONVERSIONS", "VIEWABLE_IMPRESSIONS", "UNKNOWN"]}, :"UserDomainTargetingError.Reason"=>{:type=>"string", :enumerations=>["INVALID_DOMAIN_NAMES", "UNKNOWN"]}, :VideoBumperType=>{:type=>"string", :enumerations=>["BEFORE", "AFTER"]}, :"VideoPosition.Type"=>{:type=>"string", :enumerations=>["PREROLL", "MIDROLL", "POSTROLL"]}, :"VideoPositionTargetingError.Reason"=>{:type=>"string", :enumerations=>["CANNOT_MIX_BUMPER_AND_NON_BUMPER_TARGETING", "INVALID_BUMPER_TARGETING", "UNKNOWN"]}}
|
16
|
+
PROPOSALLINEITEMSERVICE_NAMESPACES = []
|
17
|
+
|
18
|
+
def self.get_method_signature(method_name)
|
19
|
+
return PROPOSALLINEITEMSERVICE_METHODS[method_name.to_sym]
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.get_type_signature(type_name)
|
23
|
+
return PROPOSALLINEITEMSERVICE_TYPES[type_name.to_sym]
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.get_namespace(index)
|
27
|
+
return PROPOSALLINEITEMSERVICE_NAMESPACES[index]
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
# Base class for exceptions.
|
32
|
+
class ApplicationException < AdManagerApi::Errors::ApiException
|
33
|
+
attr_reader :message # string
|
34
|
+
end
|
35
|
+
|
36
|
+
# Exception class for holding a list of service errors.
|
37
|
+
class ApiException < ApplicationException
|
38
|
+
attr_reader :errors # ApiError
|
39
|
+
def initialize(exception_fault)
|
40
|
+
@array_fields ||= []
|
41
|
+
@array_fields << 'errors'
|
42
|
+
super(exception_fault, ProposalLineItemServiceRegistry)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end; end; end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:10.
|
9
|
+
|
10
|
+
require 'ads_common/savon_service'
|
11
|
+
require 'ad_manager_api/v201811/proposal_service_registry'
|
12
|
+
|
13
|
+
module AdManagerApi; module V201811; module ProposalService
|
14
|
+
class ProposalService < AdsCommon::SavonService
|
15
|
+
def initialize(config, endpoint)
|
16
|
+
namespace = 'https://www.google.com/apis/ads/publisher/v201811'
|
17
|
+
super(config, endpoint, namespace, :v201811)
|
18
|
+
end
|
19
|
+
|
20
|
+
def create_proposals(*args, &block)
|
21
|
+
return execute_action('create_proposals', args, &block)
|
22
|
+
end
|
23
|
+
|
24
|
+
def create_proposals_to_xml(*args)
|
25
|
+
return get_soap_xml('create_proposals', args)
|
26
|
+
end
|
27
|
+
|
28
|
+
def get_marketplace_comments_by_statement(*args, &block)
|
29
|
+
return execute_action('get_marketplace_comments_by_statement', args, &block)
|
30
|
+
end
|
31
|
+
|
32
|
+
def get_marketplace_comments_by_statement_to_xml(*args)
|
33
|
+
return get_soap_xml('get_marketplace_comments_by_statement', args)
|
34
|
+
end
|
35
|
+
|
36
|
+
def get_proposals_by_statement(*args, &block)
|
37
|
+
return execute_action('get_proposals_by_statement', args, &block)
|
38
|
+
end
|
39
|
+
|
40
|
+
def get_proposals_by_statement_to_xml(*args)
|
41
|
+
return get_soap_xml('get_proposals_by_statement', args)
|
42
|
+
end
|
43
|
+
|
44
|
+
def perform_proposal_action(*args, &block)
|
45
|
+
return execute_action('perform_proposal_action', args, &block)
|
46
|
+
end
|
47
|
+
|
48
|
+
def perform_proposal_action_to_xml(*args)
|
49
|
+
return get_soap_xml('perform_proposal_action', args)
|
50
|
+
end
|
51
|
+
|
52
|
+
def update_proposals(*args, &block)
|
53
|
+
return execute_action('update_proposals', args, &block)
|
54
|
+
end
|
55
|
+
|
56
|
+
def update_proposals_to_xml(*args)
|
57
|
+
return get_soap_xml('update_proposals', args)
|
58
|
+
end
|
59
|
+
|
60
|
+
private
|
61
|
+
|
62
|
+
def get_service_registry()
|
63
|
+
return ProposalServiceRegistry
|
64
|
+
end
|
65
|
+
|
66
|
+
def get_module()
|
67
|
+
return AdManagerApi::V201811::ProposalService
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end; end; end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
#
|
3
|
+
# This is auto-generated code, changes will be overwritten.
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2018, Google Inc. All Rights Reserved.
|
6
|
+
# License:: Licensed under the Apache License, Version 2.0.
|
7
|
+
#
|
8
|
+
# Code generated by AdsCommon library 1.0.2 on 2018-11-08 13:43:10.
|
9
|
+
|
10
|
+
require 'ad_manager_api/errors'
|
11
|
+
|
12
|
+
module AdManagerApi; module V201811; module ProposalService
|
13
|
+
class ProposalServiceRegistry
|
14
|
+
PROPOSALSERVICE_METHODS = {:create_proposals=>{:input=>[{:name=>:proposals, :type=>"Proposal", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"create_proposals_response", :fields=>[{:name=>:rval, :type=>"Proposal", :min_occurs=>0, :max_occurs=>:unbounded}]}}, :get_marketplace_comments_by_statement=>{:input=>[{:name=>:filter_statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"get_marketplace_comments_by_statement_response", :fields=>[{:name=>:rval, :type=>"MarketplaceCommentPage", :min_occurs=>0, :max_occurs=>1}]}}, :get_proposals_by_statement=>{:input=>[{:name=>:filter_statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"get_proposals_by_statement_response", :fields=>[{:name=>:rval, :type=>"ProposalPage", :min_occurs=>0, :max_occurs=>1}]}}, :perform_proposal_action=>{:input=>[{:name=>:proposal_action, :type=>"ProposalAction", :min_occurs=>0, :max_occurs=>1}, {:name=>:filter_statement, :type=>"Statement", :min_occurs=>0, :max_occurs=>1}], :output=>{:name=>"perform_proposal_action_response", :fields=>[{:name=>:rval, :type=>"UpdateResult", :min_occurs=>0, :max_occurs=>1}]}}, :update_proposals=>{:input=>[{:name=>:proposals, :type=>"Proposal", :min_occurs=>0, :max_occurs=>:unbounded}], :output=>{:name=>"update_proposals_response", :fields=>[{:name=>:rval, :type=>"Proposal", :min_occurs=>0, :max_occurs=>:unbounded}]}}}
|
15
|
+
PROPOSALSERVICE_TYPES = {:ObjectValue=>{:fields=>[], :abstract=>true, :base=>"Value"}, :AdUnitTargeting=>{:fields=>[{:name=>:ad_unit_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:include_descendants, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ApiError=>{:fields=>[{:name=>:field_path, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:field_path_elements, :type=>"FieldPathElement", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:trigger, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:error_string, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :ApiException=>{:fields=>[{:name=>:errors, :type=>"ApiError", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"ApplicationException"}, :TechnologyTargeting=>{:fields=>[{:name=>:bandwidth_group_targeting, :type=>"BandwidthGroupTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_targeting, :type=>"BrowserTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_language_targeting, :type=>"BrowserLanguageTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_capability_targeting, :type=>"DeviceCapabilityTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_category_targeting, :type=>"DeviceCategoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_targeting, :type=>"DeviceManufacturerTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carrier_targeting, :type=>"MobileCarrierTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_targeting, :type=>"MobileDeviceTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_device_submodel_targeting, :type=>"MobileDeviceSubmodelTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_targeting, :type=>"OperatingSystemTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_system_version_targeting, :type=>"OperatingSystemVersionTargeting", :min_occurs=>0, :max_occurs=>1}]}, :ApiVersionError=>{:fields=>[{:name=>:reason, :type=>"ApiVersionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ApplicationException=>{:fields=>[{:name=>:message, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :AppliedLabel=>{:fields=>[{:name=>:label_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_negated, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ArchiveProposals=>{:fields=>[], :base=>"ProposalAction"}, :AuthenticationError=>{:fields=>[{:name=>:reason, :type=>"AuthenticationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :AvailableBillingError=>{:fields=>[{:name=>:reason, :type=>"AvailableBillingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BandwidthGroup=>{:fields=>[], :base=>"Technology"}, :BandwidthGroupTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:bandwidth_groups, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BaseCustomFieldValue=>{:fields=>[{:name=>:custom_field_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :BillingError=>{:fields=>[{:name=>:reason, :type=>"BillingError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :BooleanValue=>{:fields=>[{:name=>:value, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :Browser=>{:fields=>[{:name=>:major_version, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:minor_version, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :BrowserLanguage=>{:fields=>[], :base=>"Technology"}, :BrowserLanguageTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:browser_languages, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BrowserTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:browsers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :BuyerRfp=>{:fields=>[{:name=>:cost_per_unit, :type=>"Money", :min_occurs=>0, :max_occurs=>1}, {:name=>:units, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:budget, :type=>"Money", :min_occurs=>0, :max_occurs=>1}, {:name=>:currency_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:description, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_placeholders, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeting, :type=>"Targeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:additional_terms, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:ad_exchange_environment, :type=>"AdExchangeEnvironment", :min_occurs=>0, :max_occurs=>1}, {:name=>:rfp_type, :type=>"RfpType", :min_occurs=>0, :max_occurs=>1}]}, :BypassProposalWorkflowRules=>{:fields=>[], :base=>"ProposalAction"}, :CancelRetractionForProposals=>{:fields=>[], :base=>"ProposalAction"}, :CollectionSizeError=>{:fields=>[{:name=>:reason, :type=>"CollectionSizeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CommonError=>{:fields=>[{:name=>:reason, :type=>"CommonError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ContentMetadataKeyHierarchyTargeting=>{:fields=>[{:name=>:custom_targeting_value_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ContentTargeting=>{:fields=>[{:name=>:targeted_content_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_content_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_video_content_bundle_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_video_content_bundle_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_content_metadata, :type=>"ContentMetadataKeyHierarchyTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_content_metadata, :type=>"ContentMetadataKeyHierarchyTargeting", :min_occurs=>0, :max_occurs=>:unbounded}]}, :CreativePlaceholder=>{:fields=>[{:name=>:size, :type=>"Size", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_template_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:companions, :type=>"CreativePlaceholder", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:effective_applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:expected_creative_count, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:creative_size_type, :type=>"CreativeSizeType", :min_occurs=>0, :max_occurs=>1}, {:name=>:targeting_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_amp_only, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :CustomCriteria=>{:fields=>[{:name=>:key_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:value_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:operator, :type=>"CustomCriteria.ComparisonOperator", :min_occurs=>0, :max_occurs=>1}], :base=>"CustomCriteriaLeaf"}, :CustomCriteriaSet=>{:fields=>[{:name=>:logical_operator, :type=>"CustomCriteriaSet.LogicalOperator", :min_occurs=>0, :max_occurs=>1}, {:name=>:children, :type=>"CustomCriteriaNode", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"CustomCriteriaNode"}, :CustomFieldValue=>{:fields=>[{:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :CustomFieldValueError=>{:fields=>[{:name=>:reason, :type=>"CustomFieldValueError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :CustomCriteriaLeaf=>{:fields=>[], :abstract=>true, :base=>"CustomCriteriaNode"}, :CustomCriteriaNode=>{:fields=>[], :abstract=>true}, :AudienceSegmentCriteria=>{:fields=>[{:name=>:operator, :type=>"AudienceSegmentCriteria.ComparisonOperator", :min_occurs=>0, :max_occurs=>1}, {:name=>:audience_segment_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"CustomCriteriaLeaf"}, :Date=>{:fields=>[{:name=>:year, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:month, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:day, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :DateTime=>{:fields=>[{:name=>:date, :type=>"Date", :min_occurs=>0, :max_occurs=>1}, {:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:second, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_zone_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeRange=>{:fields=>[{:name=>:start_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}]}, :DateTimeRangeTargeting=>{:fields=>[{:name=>:targeted_date_time_ranges, :type=>"DateTimeRange", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DateTimeValue=>{:fields=>[{:name=>:value, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DateValue=>{:fields=>[{:name=>:value, :type=>"Date", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :DayPart=>{:fields=>[{:name=>:day_of_week, :type=>"DayOfWeek", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_time, :type=>"TimeOfDay", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_time, :type=>"TimeOfDay", :min_occurs=>0, :max_occurs=>1}]}, :DayPartTargeting=>{:fields=>[{:name=>:day_parts, :type=>"DayPart", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:time_zone, :type=>"DeliveryTimeZone", :min_occurs=>0, :max_occurs=>1}]}, :DealError=>{:fields=>[{:name=>:reason, :type=>"DealError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :DeviceCapability=>{:fields=>[], :base=>"Technology"}, :DeviceCapabilityTargeting=>{:fields=>[{:name=>:targeted_device_capabilities, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_device_capabilities, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeviceCategory=>{:fields=>[], :base=>"Technology"}, :DeviceCategoryTargeting=>{:fields=>[{:name=>:targeted_device_categories, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_device_categories, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DeviceManufacturer=>{:fields=>[], :base=>"Technology"}, :DeviceManufacturerTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :DiscardLocalVersionEdits=>{:fields=>[], :base=>"ProposalAction"}, :DropDownCustomFieldValue=>{:fields=>[{:name=>:custom_field_option_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"BaseCustomFieldValue"}, :EditProposalsForNegotiation=>{:fields=>[], :base=>"ProposalAction"}, :EntityChildrenLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityChildrenLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :EntityLimitReachedError=>{:fields=>[{:name=>:reason, :type=>"EntityLimitReachedError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ExchangeRateError=>{:fields=>[{:name=>:reason, :type=>"ExchangeRateError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FeatureError=>{:fields=>[{:name=>:reason, :type=>"FeatureError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :FieldPathElement=>{:fields=>[{:name=>:field, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :ForecastError=>{:fields=>[{:name=>:reason, :type=>"ForecastError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :GeoTargeting=>{:fields=>[{:name=>:targeted_locations, :type=>"Location", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_locations, :type=>"Location", :min_occurs=>0, :max_occurs=>:unbounded}]}, :InternalApiError=>{:fields=>[{:name=>:reason, :type=>"InternalApiError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :InvalidUrlError=>{:fields=>[{:name=>:reason, :type=>"InvalidUrlError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :InventoryTargeting=>{:fields=>[{:name=>:targeted_ad_units, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_ad_units, :type=>"AdUnitTargeting", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted_placement_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :LabelEntityAssociationError=>{:fields=>[{:name=>:reason, :type=>"LabelEntityAssociationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :LineItemOperationError=>{:fields=>[{:name=>:reason, :type=>"LineItemOperationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Location=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:type, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:canonical_parent_id, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:display_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :MarketplaceComment=>{:fields=>[{:name=>:proposal_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:comment, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:creation_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:created_by_seller, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :MarketplaceCommentPage=>{:fields=>[{:name=>:start_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:results, :type=>"MarketplaceComment", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ProposalMarketplaceInfo=>{:fields=>[{:name=>:has_local_version_edits, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:negotiation_status, :type=>"NegotiationStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:marketplace_comment, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_new_version_from_buyer, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:buyer_account_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :MobileApplicationTargeting=>{:fields=>[{:name=>:mobile_application_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :MobileCarrier=>{:fields=>[], :base=>"Technology"}, :MobileCarrierTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_carriers, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :MobileDevice=>{:fields=>[{:name=>:manufacturer_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :MobileDeviceSubmodel=>{:fields=>[{:name=>:mobile_device_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:device_manufacturer_criterion_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :MobileDeviceSubmodelTargeting=>{:fields=>[{:name=>:targeted_mobile_device_submodels, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_mobile_device_submodels, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :MobileDeviceTargeting=>{:fields=>[{:name=>:targeted_mobile_devices, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_mobile_devices, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :Money=>{:fields=>[{:name=>:currency_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:micro_amount, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :NotNullError=>{:fields=>[{:name=>:reason, :type=>"NotNullError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NullError=>{:fields=>[{:name=>:reason, :type=>"NullError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :NumberValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :OfflineError=>{:fields=>[{:name=>:field_path, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:trigger, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:error_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:reason, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :OperatingSystem=>{:fields=>[], :base=>"Technology"}, :OperatingSystemTargeting=>{:fields=>[{:name=>:is_targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:operating_systems, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :OperatingSystemVersion=>{:fields=>[{:name=>:major_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minor_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:micro_version, :type=>"int", :min_occurs=>0, :max_occurs=>1}], :base=>"Technology"}, :OperatingSystemVersionTargeting=>{:fields=>[{:name=>:targeted_operating_system_versions, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:excluded_operating_system_versions, :type=>"Technology", :min_occurs=>0, :max_occurs=>:unbounded}]}, :PackageActionError=>{:fields=>[{:name=>:reason, :type=>"PackageActionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PackageError=>{:fields=>[{:name=>:reason, :type=>"PackageError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ParseError=>{:fields=>[{:name=>:reason, :type=>"ParseError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PermissionError=>{:fields=>[{:name=>:reason, :type=>"PermissionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PrecisionError=>{:fields=>[{:name=>:reason, :type=>"PrecisionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProductError=>{:fields=>[{:name=>:reason, :type=>"ProductError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalAction=>{:fields=>[], :abstract=>true}, :ProposalActionError=>{:fields=>[{:name=>:reason, :type=>"ProposalActionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalLink=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:creator_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:url, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:description, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:creation_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}]}, :ProposalCompanyAssociation=>{:fields=>[{:name=>:company_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:type, :type=>"ProposalCompanyAssociationType", :min_occurs=>0, :max_occurs=>1}, {:name=>:contact_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}]}, :Proposal=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_programmatic, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:dfp_order_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:pricing_model, :type=>"PricingModel", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:end_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:time_zone_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:status, :type=>"ProposalStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_archived, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:advertiser, :type=>"ProposalCompanyAssociation", :min_occurs=>0, :max_occurs=>1}, {:name=>:agencies, :type=>"ProposalCompanyAssociation", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:probability_of_close, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:billing_cap, :type=>"BillingCap", :min_occurs=>0, :max_occurs=>1}, {:name=>:billing_schedule, :type=>"BillingSchedule", :min_occurs=>0, :max_occurs=>1}, {:name=>:billing_source, :type=>"BillingSource", :min_occurs=>0, :max_occurs=>1}, {:name=>:billing_base, :type=>"BillingBase", :min_occurs=>0, :max_occurs=>1}, {:name=>:po_number, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:internal_notes, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:budget, :type=>"Money", :min_occurs=>0, :max_occurs=>1}, {:name=>:primary_salesperson, :type=>"SalespersonSplit", :min_occurs=>0, :max_occurs=>1}, {:name=>:secondary_salespeople, :type=>"SalespersonSplit", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:sales_planner_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:primary_trafficker_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:secondary_trafficker_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:seller_contact_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:applied_team_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:custom_field_values, :type=>"BaseCustomFieldValue", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:effective_applied_labels, :type=>"AppliedLabel", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:advertiser_discount, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:proposal_discount, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:currency_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:exchange_rate, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:refresh_exchange_rate, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:agency_commission, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:value_added_tax, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_sold, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:approval_status, :type=>"ProposalApprovalStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:workflow_progress, :type=>"WorkflowProgress", :min_occurs=>0, :max_occurs=>1}, {:name=>:last_modified_date_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:resources, :type=>"ProposalLink", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:actual_expiry_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:expected_expiry_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:third_party_ad_server_id, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_third_party_ad_server_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:terms_and_conditions, :type=>"ProposalTermsAndConditions", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:last_retraction_details, :type=>"RetractionDetails", :min_occurs=>0, :max_occurs=>1}, {:name=>:marketplace_info, :type=>"ProposalMarketplaceInfo", :min_occurs=>0, :max_occurs=>1}, {:name=>:offline_errors, :type=>"OfflineError", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:has_offline_errors, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}, {:name=>:buyer_rfp, :type=>"BuyerRfp", :min_occurs=>0, :max_occurs=>1}, {:name=>:has_buyer_rfp, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ProposalError=>{:fields=>[{:name=>:reason, :type=>"ProposalError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalLineItemError=>{:fields=>[{:name=>:reason, :type=>"ProposalLineItemError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalLineItemProgrammaticError=>{:fields=>[{:name=>:reason, :type=>"ProposalLineItemProgrammaticError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProposalPage=>{:fields=>[{:name=>:total_result_set_size, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:start_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:results, :type=>"Proposal", :min_occurs=>0, :max_occurs=>:unbounded}]}, :ProposalTermsAndConditions=>{:fields=>[{:name=>:terms_and_conditions_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:content, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :PublisherQueryLanguageContextError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageContextError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :PublisherQueryLanguageSyntaxError=>{:fields=>[{:name=>:reason, :type=>"PublisherQueryLanguageSyntaxError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :QuotaError=>{:fields=>[{:name=>:reason, :type=>"QuotaError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RangeError=>{:fields=>[{:name=>:reason, :type=>"RangeError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequestApprovalProgressAction=>{:fields=>[{:name=>:approver_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:eligible_approver_user_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:eligible_approver_team_ids, :type=>"long", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:comment, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:approval_status, :type=>"WorkflowApprovalRequestStatus", :min_occurs=>0, :max_occurs=>1}], :base=>"ProgressAction"}, :RequestBuyerAcceptance=>{:fields=>[], :base=>"ProposalAction"}, :RequestBuyerReview=>{:fields=>[], :base=>"ProposalAction"}, :RequestPlatformTargeting=>{:fields=>[{:name=>:targeted_request_platforms, :type=>"RequestPlatform", :min_occurs=>0, :max_occurs=>:unbounded}]}, :RequiredCollectionError=>{:fields=>[{:name=>:reason, :type=>"RequiredCollectionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredError=>{:fields=>[{:name=>:reason, :type=>"RequiredError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :RequiredNumberError=>{:fields=>[{:name=>:reason, :type=>"RequiredNumberError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ReserveInventoryProgressAction=>{:fields=>[], :base=>"ProgressAction"}, :ReserveProposals=>{:fields=>[{:name=>:allow_overbook, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}], :base=>"ProposalAction"}, :RetractProposals=>{:fields=>[{:name=>:retraction_details, :type=>"RetractionDetails", :min_occurs=>0, :max_occurs=>1}], :base=>"ProposalAction"}, :RetractionDetails=>{:fields=>[{:name=>:retraction_reason_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:comments, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :SalespersonSplit=>{:fields=>[{:name=>:user_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:split, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :AudienceSegmentError=>{:fields=>[{:name=>:reason, :type=>"AudienceSegmentError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :SendNotificationProgressAction=>{:fields=>[], :base=>"ProgressAction"}, :ServerError=>{:fields=>[{:name=>:reason, :type=>"ServerError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :SetValue=>{:fields=>[{:name=>:values, :type=>"Value", :min_occurs=>0, :max_occurs=>:unbounded}], :base=>"Value"}, :Size=>{:fields=>[{:name=>:width, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:height, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_aspect_ratio, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :SoapRequestHeader=>{:fields=>[{:name=>:network_code, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:application_name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :SoapResponseHeader=>{:fields=>[{:name=>:request_id, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:response_time, :type=>"long", :min_occurs=>0, :max_occurs=>1}]}, :Statement=>{:fields=>[{:name=>:query, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:values, :type=>"String_ValueMapEntry", :min_occurs=>0, :max_occurs=>:unbounded}]}, :StatementError=>{:fields=>[{:name=>:reason, :type=>"StatementError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringFormatError=>{:fields=>[{:name=>:reason, :type=>"StringFormatError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :StringLengthError=>{:fields=>[{:name=>:reason, :type=>"StringLengthError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :String_ValueMapEntry=>{:fields=>[{:name=>:key, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:value, :type=>"Value", :min_occurs=>0, :max_occurs=>1}]}, :SubmitProposalsForApprovalBypassValidation=>{:fields=>[], :base=>"ProposalAction"}, :SubmitProposalsForApproval=>{:fields=>[], :base=>"ProposalAction"}, :SubmitProposalsForArchival=>{:fields=>[], :base=>"ProposalAction"}, :Targeting=>{:fields=>[{:name=>:geo_targeting, :type=>"GeoTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:inventory_targeting, :type=>"InventoryTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:day_part_targeting, :type=>"DayPartTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:date_time_range_targeting, :type=>"DateTimeRangeTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:technology_targeting, :type=>"TechnologyTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:custom_targeting, :type=>"CustomCriteriaSet", :min_occurs=>0, :max_occurs=>1}, {:name=>:user_domain_targeting, :type=>"UserDomainTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:content_targeting, :type=>"ContentTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_targeting, :type=>"VideoPositionTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:mobile_application_targeting, :type=>"MobileApplicationTargeting", :min_occurs=>0, :max_occurs=>1}, {:name=>:request_platform_targeting, :type=>"RequestPlatformTargeting", :min_occurs=>0, :max_occurs=>1}]}, :TeamError=>{:fields=>[{:name=>:reason, :type=>"TeamError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :Technology=>{:fields=>[{:name=>:id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}]}, :TerminateNegotiations=>{:fields=>[], :base=>"ProposalAction"}, :TextValue=>{:fields=>[{:name=>:value, :type=>"string", :min_occurs=>0, :max_occurs=>1}], :base=>"Value"}, :TimeOfDay=>{:fields=>[{:name=>:hour, :type=>"int", :min_occurs=>0, :max_occurs=>1}, {:name=>:minute, :type=>"MinuteOfHour", :min_occurs=>0, :max_occurs=>1}]}, :TimeZoneError=>{:fields=>[{:name=>:reason, :type=>"TimeZoneError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :TypeError=>{:fields=>[], :base=>"ApiError"}, :UnarchiveProposals=>{:fields=>[], :base=>"ProposalAction"}, :UniqueError=>{:fields=>[], :base=>"ApiError"}, :UpdateOrderWithSellerData=>{:fields=>[], :base=>"ProposalAction"}, :UpdateResult=>{:fields=>[{:name=>:num_changes, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :UserDomainTargeting=>{:fields=>[{:name=>:domains, :type=>"string", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:targeted, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :Value=>{:fields=>[], :abstract=>true}, :VideoPosition=>{:fields=>[{:name=>:position_type, :type=>"VideoPosition.Type", :min_occurs=>0, :max_occurs=>1}, {:name=>:midroll_index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :VideoPositionTargeting=>{:fields=>[{:name=>:targeted_positions, :type=>"VideoPositionTarget", :min_occurs=>0, :max_occurs=>:unbounded}]}, :VideoPositionWithinPod=>{:fields=>[{:name=>:index, :type=>"int", :min_occurs=>0, :max_occurs=>1}]}, :VideoPositionTarget=>{:fields=>[{:name=>:video_position, :type=>"VideoPosition", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_bumper_type, :type=>"VideoBumperType", :min_occurs=>0, :max_occurs=>1}, {:name=>:video_position_within_pod, :type=>"VideoPositionWithinPod", :min_occurs=>0, :max_occurs=>1}]}, :WorkflowActionError=>{:fields=>[{:name=>:reason, :type=>"WorkflowActionError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :ProgressAction=>{:fields=>[{:name=>:evaluation_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:evaluation_status, :type=>"EvaluationStatus", :min_occurs=>0, :max_occurs=>1}], :abstract=>true}, :WorkflowProgress=>{:fields=>[{:name=>:steps, :type=>"ProgressStep", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:submitter_id, :type=>"long", :min_occurs=>0, :max_occurs=>1}, {:name=>:evaluation_status, :type=>"EvaluationStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:submission_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:evaluation_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_processing, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :ProgressStep=>{:fields=>[{:name=>:rules, :type=>"ProgressRule", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:evaluation_status, :type=>"EvaluationStatus", :min_occurs=>0, :max_occurs=>1}]}, :ProgressRule=>{:fields=>[{:name=>:actions, :type=>"ProgressAction", :min_occurs=>0, :max_occurs=>:unbounded}, {:name=>:name, :type=>"string", :min_occurs=>0, :max_occurs=>1}, {:name=>:evaluation_status, :type=>"WorkflowEvaluationStatus", :min_occurs=>0, :max_occurs=>1}, {:name=>:evaluation_time, :type=>"DateTime", :min_occurs=>0, :max_occurs=>1}, {:name=>:is_external, :type=>"boolean", :min_occurs=>0, :max_occurs=>1}]}, :WorkflowValidationError=>{:fields=>[{:name=>:reason, :type=>"WorkflowValidationError.Reason", :min_occurs=>0, :max_occurs=>1}], :base=>"ApiError"}, :AdExchangeEnvironment=>{:type=>"string", :enumerations=>["DISPLAY", "VIDEO", "GAMES", "MOBILE", "MOBILE_OUTSTREAM_VIDEO", "DISPLAY_OUTSTREAM_VIDEO", "UNKNOWN"]}, :"ApiVersionError.Reason"=>{:type=>"string", :enumerations=>["UPDATE_TO_NEWER_VERSION", "UNKNOWN"]}, :WorkflowApprovalRequestStatus=>{:type=>"string", :enumerations=>["PENDING_APPROVAL", "APPROVED", "REJECTED", "RETRACTED", "NOT_APPLICABLE", "UNKNOWN"]}, :"AuthenticationError.Reason"=>{:type=>"string", :enumerations=>["AMBIGUOUS_SOAP_REQUEST_HEADER", "INVALID_EMAIL", "AUTHENTICATION_FAILED", "INVALID_OAUTH_SIGNATURE", "INVALID_SERVICE", "MISSING_SOAP_REQUEST_HEADER", "MISSING_AUTHENTICATION_HTTP_HEADER", "MISSING_AUTHENTICATION", "NOT_WHITELISTED_FOR_API_ACCESS", "NO_NETWORKS_TO_ACCESS", "NETWORK_NOT_FOUND", "NETWORK_CODE_REQUIRED", "CONNECTION_ERROR", "GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK", "UNDER_INVESTIGATION", "UNKNOWN"]}, :"AvailableBillingError.Reason"=>{:type=>"string", :enumerations=>["BILLING_SOURCE_IS_NOT_AVAILABLE", "BILLING_SCHEDULE_IS_NOT_AVAILABLE", "BILLING_CAP_IS_NOT_AVAILABLE", "UNKNOWN"]}, :BillingBase=>{:type=>"string", :enumerations=>["VOLUME", "REVENUE", "UNKNOWN"]}, :BillingCap=>{:type=>"string", :enumerations=>["NO_CAP", "CAPPED_CUMULATIVE", "CAPPED_PER_BILLING_CYCLE", "CAPPED_CUMULATIVE_PER_BILLING_CYCLE", "CAPPED_WITH_ROLLOVER_PER_BILLING_CYCLE", "UNKNOWN"]}, :"BillingError.Reason"=>{:type=>"string", :enumerations=>["UNSUPPORTED_BILLING_SCHEDULE", "UNSUPPORTED_BILLING_CAP", "MISSING_BILLING_SOURCE", "MISSING_BILLING_SCHEDULE", "MISSING_BILLING_CAP", "INVALID_BILLING_SOURCE_FOR_OFFLINE", "UPDATE_BILLING_NOT_ALLOWED", "MISSING_BILLING_BASE", "INVALID_BILLING_BASE", "UNKNOWN"]}, :BillingSchedule=>{:type=>"string", :enumerations=>["PREPAID", "END_OF_THE_CAMPAIGN", "STRAIGHTLINE", "PRORATED", "UNKNOWN"]}, :BillingSource=>{:type=>"string", :enumerations=>["CONTRACTED", "DFP_VOLUME", "THIRD_PARTY_VOLUME", "UNKNOWN"]}, :"CollectionSizeError.Reason"=>{:type=>"string", :enumerations=>["TOO_LARGE", "UNKNOWN"]}, :"CommonError.Reason"=>{:type=>"string", :enumerations=>["NOT_FOUND", "ALREADY_EXISTS", "NOT_APPLICABLE", "DUPLICATE_OBJECT", "CANNOT_UPDATE", "CONCURRENT_MODIFICATION", "UNKNOWN"]}, :EvaluationStatus=>{:type=>"string", :enumerations=>["CANCELED", "COMPLETED", "FAILED", "IN_PROGRESS", "INACTIVE", "SKIPPED", "INACTIVE_BUT_TRIGGERED", "UNKNOWN"]}, :CreativeSizeType=>{:type=>"string", :enumerations=>["PIXEL", "ASPECT_RATIO", "INTERSTITIAL", "NATIVE"]}, :"CustomCriteria.ComparisonOperator"=>{:type=>"string", :enumerations=>["IS", "IS_NOT"]}, :"CustomCriteriaSet.LogicalOperator"=>{:type=>"string", :enumerations=>["AND", "OR"]}, :"CustomFieldValueError.Reason"=>{:type=>"string", :enumerations=>["CUSTOM_FIELD_NOT_FOUND", "CUSTOM_FIELD_INACTIVE", "CUSTOM_FIELD_OPTION_NOT_FOUND", "UNKNOWN"]}, :"AudienceSegmentCriteria.ComparisonOperator"=>{:type=>"string", :enumerations=>["IS", "IS_NOT"]}, :DayOfWeek=>{:type=>"string", :enumerations=>["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]}, :DeliveryTimeZone=>{:type=>"string", :enumerations=>["PUBLISHER", "BROWSER"]}, :"DealError.Reason"=>{:type=>"string", :enumerations=>["CANNOT_ADD_LINE_ITEM_WHEN_SOLD", "CANNOT_ARCHIVE_LINE_ITEM_WHEN_SOLD", "CANNOT_ARCHIVE_PROPOSAL_WHEN_SOLD", "CANNOT_CHANGE_FIELD_REQUIRING_BUYER_APPROVAL", "CANNOT_GET_SELLER_ID", "CAN_ONLY_EXECUTE_IF_LOCAL_EDITS", "MISSING_PROPOSAL_LINE_ITEMS", "MISSING_ENVIRONMENT", "MISSING_AD_EXCHANGE_PROPERTY", "CANNOT_FIND_PROPOSAL_IN_MARKETPLACE", "CANNOT_GET_PRODUCT", "NEW_VERSION_FROM_BUYER", "PROPOSAL_OUT_OF_SYNC_WITH_MARKETPLACE", "NO_PROPOSAL_CHANGES_FOUND", "UNKNOWN"]}, :"EntityChildrenLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["LINE_ITEM_LIMIT_FOR_ORDER_REACHED", "CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED", "AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED", "CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED", "ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED", "PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED", "PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED", "PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED", "PREMIUM_LIMIT_FOR_RATE_CARD_REACHED", "AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED", "NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED", "TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED", "UNKNOWN"]}, :"EntityLimitReachedError.Reason"=>{:type=>"string", :enumerations=>["CUSTOM_TARGETING_VALUES_LIMIT_REACHED", "AD_EXCLUSION_RULES_LIMIT_REACHED", "FIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED", "PLACEMENTS_LIMIT_REACHED", "LINE_ITEMS_LIMIT_REACHED", "UNKNOWN"]}, :"ExchangeRateError.Reason"=>{:type=>"string", :enumerations=>["INVALID_CURRENCY_CODE", "UNSUPPORTED_CURRENCY_CODE", "CURRENCY_CODE_ALREADY_EXISTS", "INVALID_EXCHANGE_RATE", "EXCHANGE_RATE_NOT_FOUND", "CANNOT_DELETE_EXCHANGE_RATE_WITH_ACTIVE_RATE_CARDS", "UNKNOWN"]}, :"FeatureError.Reason"=>{:type=>"string", :enumerations=>["MISSING_FEATURE", "UNKNOWN"]}, :"ForecastError.Reason"=>{:type=>"string", :enumerations=>["SERVER_NOT_AVAILABLE", "INTERNAL_ERROR", "NO_FORECAST_YET", "NOT_ENOUGH_INVENTORY", "SUCCESS", "ZERO_LENGTH_RESERVATION", "EXCEEDED_QUOTA", "UNKNOWN"]}, :"InternalApiError.Reason"=>{:type=>"string", :enumerations=>["UNEXPECTED_INTERNAL_API_ERROR", "TRANSIENT_ERROR", "UNKNOWN", "DOWNTIME", "ERROR_GENERATING_RESPONSE"]}, :"InvalidUrlError.Reason"=>{:type=>"string", :enumerations=>["ILLEGAL_CHARACTERS", "INVALID_FORMAT", "INSECURE_SCHEME", "NO_SCHEME", "UNKNOWN"]}, :"LabelEntityAssociationError.Reason"=>{:type=>"string", :enumerations=>["DUPLICATE_ASSOCIATION", "INVALID_ASSOCIATION", "DUPLICATE_ASSOCIATION_WITH_NEGATION", "UNKNOWN"]}, :"LineItemOperationError.Reason"=>{:type=>"string", :enumerations=>["NOT_ALLOWED", "NOT_APPLICABLE", "HAS_COMPLETED", "HAS_NO_ACTIVE_CREATIVES", "CANNOT_ACTIVATE_LEGACY_DFP_LINE_ITEM", "CANNOT_ACTIVATE_UNCONFIGURED_LINE_ITEM", "CANNOT_DELETE_DELIVERED_LINE_ITEM", "CANNOT_RESERVE_COMPANY_CREDIT_STATUS_NOT_ACTIVE", "CANNOT_ACTIVATE_INVALID_COMPANY_CREDIT_STATUS", "UNKNOWN"]}, :MinuteOfHour=>{:type=>"string", :enumerations=>["ZERO", "FIFTEEN", "THIRTY", "FORTY_FIVE"]}, :ProposalApprovalStatus=>{:type=>"string", :enumerations=>["PENDING", "NON_PENDING", "UNKNOWN"]}, :NegotiationStatus=>{:type=>"string", :enumerations=>["SELLER_INITIATED", "BUYER_INITIATED", "AWAITING_SELLER_REVIEW", "AWAITING_BUYER_REVIEW", "ONLY_SELLER_ACCEPTED", "FINALIZED", "CANCELLED", "UNKNOWN"]}, :"NotNullError.Reason"=>{:type=>"string", :enumerations=>["ARG1_NULL", "ARG2_NULL", "ARG3_NULL", "NULL", "UNKNOWN"]}, :"NullError.Reason"=>{:type=>"string", :enumerations=>["NULL_CONTENT"]}, :"PackageActionError.Reason"=>{:type=>"string", :enumerations=>["PROPOSAL_LINE_ITEMS_HAVE_BEEN_CREATED", "PROPOSAL_NOT_EDITABLE", "UNKNOWN"]}, :"PackageError.Reason"=>{:type=>"string", :enumerations=>["INVAILD_PRODUCT_PACKAGE", "INACTIVE_RATE_CARD", "PRODUCT_PACKAGE_NOT_IN_RATE_CARD", "HAS_NO_UNARCHIVED_PRODUCT_PACKAGE_ITEM", "NOT_SAME_RATE_CARD", "NOT_SAME_RATE_CARD_PRICING_MODEL", "NOT_SAME_RATE_CARD_WORKFLOW", "PACKAGES_NOT_ALLOWED_IN_PROGRAMMATIC_PROPOSALS", "UNKNOWN"]}, :"ParseError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"PermissionError.Reason"=>{:type=>"string", :enumerations=>["PERMISSION_DENIED", "UNKNOWN"]}, :"PrecisionError.Reason"=>{:type=>"string", :enumerations=>["WRONG_PRECISION", "UNKNOWN"]}, :PricingModel=>{:type=>"string", :enumerations=>["NET", "GROSS", "UNKNOWN"]}, :"ProductError.Reason"=>{:type=>"string", :enumerations=>["TEMPLATE_NOT_FOUND", "MALFORMED_PRODUCT_ID", "BAD_PRODUCT_ID_FEATURE", "BAD_PRODUCT_TEMPLATE_ID", "CANNOT_UPDATE_ARCHIVED_PRODUCT", "QUERY_TOO_LARGE", "PRODUCT_TEMPLATE_ID_IS_NOT_ZERO", "INVALID_RATE", "INVALID_CURRENCY", "UNKNOWN"]}, :"ProposalActionError.Reason"=>{:type=>"string", :enumerations=>["NOT_APPLICABLE", "IS_ARCHIVED", "UNKNOWN"]}, :ProposalCompanyAssociationType=>{:type=>"string", :enumerations=>["PRIMARY_AGENCY", "BILLING_AGENCY", "BRANDING_AGENCY", "OTHER_AGENCY", "ADVERTISER", "UNKNOWN"]}, :"ProposalError.Reason"=>{:type=>"string", :enumerations=>["AD_SERVER_UNKNOWN_ERROR", "AD_SERVER_API_ERROR", "UPDATE_ADVERTISER_NOT_ALLOWED", "UPDATE_PROPOSAL_NOT_ALLOWED", "CONTACT_UNSUPPORTED_FOR_ADVERTISER", "INVALID_CONTACT", "DUPLICATED_CONTACT", "UNACCEPTABLE_COMPANY_CREDIT_STATUS", "COMPANY_CREDIT_STATUS_NOT_ACTIVE", "PRIMARY_AGENCY_REQUIRED", "PRIMARY_AGENCY_NOT_UNIQUE", "UNSUPPORTED_COMPANY_ASSOCIATION_TYPE_FOR_PROGRAMMATIC_PROPOSAL", "DUPLICATED_COMPANY_ASSOCIATION", "DUPLICATED_SALESPERSON", "DUPLICATED_SALES_PLANNER", "DUPLICATED_TRAFFICKER", "HAS_NO_UNARCHIVED_PROPOSAL_LINEITEMS", "DUPLICATE_TERMS_AND_CONDITIONS", "UNSUPPORTED_PROPOSAL_CURRENCY_CODE", "UNSUPPORTED_BUYER_CURRENCY_CODE", "INVALID_FIELDS_SET_FOR_NON_PROGRAMMATIC_PROPOSAL", "INVALID_POC", "UPDATE_CURRENCY_NOT_ALLOWED", "UPDATE_TIME_ZONE_NOT_ALLOWED", "NON_PROGRAMMATIC_PROPOSAL_NOT_ALLOWED", "NEW_TRADITIONAL_ONLY_PROPOSAL_NOT_ALLOWED", "UNKNOWN"]}, :"ProposalLineItemError.Reason"=>{:type=>"string", :enumerations=>["NOT_SAME_RATE_CARD", "LINE_ITEM_TYPE_NOT_ALLOWED", "END_DATE_TIME_NOT_AFTER_START_TIME", "END_DATE_TIME_TOO_LATE", "START_DATE_TIME_IS_IN_PAST", "END_DATE_TIME_IS_IN_PAST", "FRONTLOADED_NOT_ALLOWED", "ALL_ROADBLOCK_NOT_ALLOWED", "CREATIVE_SET_ROADBLOCK_NOT_ALLOWED", "ALREADY_STARTED", "CONFLICT_WITH_PRODUCT", "VIOLATE_BUILT_IN_TARGETING_COMPATIBILITY_RESTRICTION", "VIOLATE_BUILT_IN_TARGETING_LOCKED_RESTRICTION", "MOBILE_TECH_CRITERIA_NOT_SUPPORTED", "UNSUPPORTED_TARGETING_TYPE", "WRONG_COST", "AGENCY_COMMISSION_MISMATCH", "CALCULATED_COST_TOO_HIGH", "INVALID_PRIORITY_FOR_LINE_ITEM_TYPE", "UPDATE_PROPOSAL_LINE_ITEM_NOT_ALLOWED", "CANNOT_UPDATE_TO_OR_FROM_CREATIVE_SET_ROADBLOCK", "SEQUENTIAL_CREATIVE_ROTATION_NOT_ALLOWED", "UPDATE_RESERVATION_NOT_ALLOWED", "INVALID_COMPANION_DELIVERY_OPTION_FOR_ROADBLOCKING_TYPE", "INVALID_COMPANION_DELIVERY_OPTION_FOR_ENVIRONMENT_TYPE", "INCONSISTENT_ROADBLOCK_TYPE", "INVALID_CONTRACTED_QUANTITY_BUFFER", "INVALID_VALUES_FOR_CLICK_TRACKING_LINE_ITEM_TYPE", "UPDATE_COST_ADJUSTMENT_NOT_ALLOWED", "UNSUPPORTED_RATE_CARD_CURRENCY_CODE", "END_DATE_TIME_IS_BEFORE_LAST_PAUSED_TIME", "VIDEO_INVALID_ROADBLOCKING", "UPDATE_TIME_ZONE_NOT_ALLOWED", "INVALID_TIME_ZONE_FOR_RATE_TYPE", "INVALID_TIME_ZONE_FOR_DEALS", "INVALID_ENVIRONMENT_TYPE", "SIZE_REQUIRED", "COMPANION_NOT_ALLOWED", "MISSING_COMPANION", "DUPLICATED_MASTER_SIZE", "INVALID_EXPECTED_CREATIVE_COUNT", "CANNOT_HAVE_CREATIVE_TEMPLATE", "NATIVE_CREATIVE_TEMPLATE_REQUIRED", "CANNOT_INCLUDE_NATIVE_PLACEHOLDER_WITHOUT_TEMPLATE_ID", "INVALID_CLICK_TRACKING_LINE_ITEM_TYPE", "INVALID_TARGETING_FOR_CLICK_TRACKING", "NOT_SAME_RATE_CARD_PRICING_MODEL", "NOT_SAME_RATE_CARD_WORKFLOW", "INVALID_CONTRACTED_UNITS_BOUGHT", "PLACEHOLDER_CANNOT_CONTAIN_LABELS", "INVALID_LABEL_TYPE_IN_PLACEHOLDER", "PLACEHOLDER_CANNOT_CONTAIN_NEGATED_LABELS", "MARKETPLACE_RATE_CARD_NOT_ALLOWED", "CANNOT_CREATE_FROM_PRODUCT", "CONTRACTED_UNITS_LESS_THAN_DELIVERED", "DISPLAY_ENVIRONMENT_MUST_HAVE_EXCLUDED_MOBILE_APPS_TARGETING", "MOBILE_ENVIRONMENT_MUST_HAVE_INCLUDED_MOBILE_APPS_TARGETING", "UNKNOWN"]}, :"ProposalLineItemProgrammaticError.Reason"=>{:type=>"string", :enumerations=>["INVALID_PRODUCT_TYPE", "VIDEO_NOT_SUPPORTED", "ROADBLOCKING_NOT_SUPPORTED", "INVALID_CREATIVE_ROTATION", "INVALID_PROPOSAL_LINE_ITEM_TYPE", "INVALID_RATE_TYPE", "ZERO_COST_PER_UNIT_NOT_SUPPORTED", "INVALID_PROGRAMMATIC_CREATIVE_SOURCE", "INVALID_MAX_VIDEO_CREATIVE_DURATION", "CANNOT_UPDATE_PROGRAMMATIC_CREATIVE_SOURCE", "INVALID_NUM_UNITS", "MIX_GUARANTEED_AND_PREFERRED_DEAL_NOT_ALLOWED", "MIX_NATIVE_AND_BANNER_SIZE_NOT_ALLOWED", "CANNOT_UPDATE_SIZES", "INVALID_SPONSORSHIP_CONTRACTED_UNITS_BOUGHT", "INVALID_PROGRAMMATIC_PRICING_MODEL", "BUYER_DISABLED_FOR_PG_VIOLATING_SLA", "UNKNOWN"]}, :ProposalStatus=>{:type=>"string", :enumerations=>["DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "UNKNOWN"]}, :"PublisherQueryLanguageContextError.Reason"=>{:type=>"string", :enumerations=>["UNEXECUTABLE", "UNKNOWN"]}, :"PublisherQueryLanguageSyntaxError.Reason"=>{:type=>"string", :enumerations=>["UNPARSABLE", "UNKNOWN"]}, :"QuotaError.Reason"=>{:type=>"string", :enumerations=>["EXCEEDED_QUOTA", "UNKNOWN", "REPORT_JOB_LIMIT"]}, :"RangeError.Reason"=>{:type=>"string", :enumerations=>["TOO_HIGH", "TOO_LOW", "UNKNOWN"]}, :RequestPlatform=>{:type=>"string", :enumerations=>["UNKNOWN", "BROWSER", "MOBILE_APP", "VIDEO_PLAYER"]}, :"RequiredCollectionError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "UNKNOWN"]}, :"RequiredError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED"]}, :"RequiredNumberError.Reason"=>{:type=>"string", :enumerations=>["REQUIRED", "TOO_LARGE", "TOO_SMALL", "TOO_LARGE_WITH_DETAILS", "TOO_SMALL_WITH_DETAILS", "UNKNOWN"]}, :RfpType=>{:type=>"string", :enumerations=>["UNKNOWN", "PROGRAMMATIC_GUARANTEED", "PREFERRED_DEAL"]}, :"AudienceSegmentError.Reason"=>{:type=>"string", :enumerations=>["FIRST_PARTY_AUDIENCE_SEGMENT_NOT_SUPPORTED", "ONLY_RULE_BASED_FIRST_PARTY_AUDIENCE_SEGMENTS_CAN_BE_CREATED", "AUDIENCE_SEGMENT_ID_NOT_FOUND", "INVALID_AUDIENCE_SEGMENT_RULE", "AUDIENCE_SEGMENT_RULE_TOO_LONG", "INVALID_AUDIENCE_SEGMENT_NAME", "DUPLICATE_AUDIENCE_SEGMENT_NAME", "INVALID_AUDIENCE_SEGMENT_DESCRIPTION", "INVALID_AUDIENCE_SEGMENT_PAGEVIEWS", "INVALID_AUDIENCE_SEGMENT_RECENCY", "INVALID_AUDIENCE_SEGMENT_MEMBERSHIP_EXPIRATION", "INVALID_AUDIENCE_SEGMENT_CUSTOM_KEY_NAME", "INVALID_AUDIENCE_SEGMENT_CUSTOM_VALUE_NAME", "INVALID_AUDIENCE_SEGMENT_CUSTOM_VALUE_MATCH_TYPE", "INVALID_NESTED_FIRST_PARTY_AUDIENCE_SEGMENT", "INVALID_NESTED_THIRD_PARTY_AUDIENCE_SEGMENT", "INACTIVE_NESTED_AUDIENCE_SEGMENT", "AUDIENCE_SEGMENT_GLOBAL_LICENSE_ERROR", "UNKNOWN"]}, :"ServerError.Reason"=>{:type=>"string", :enumerations=>["SERVER_ERROR", "SERVER_BUSY", "UNKNOWN"]}, :"StatementError.Reason"=>{:type=>"string", :enumerations=>["VARIABLE_NOT_BOUND_TO_VALUE", "UNKNOWN"]}, :"StringFormatError.Reason"=>{:type=>"string", :enumerations=>["UNKNOWN", "ILLEGAL_CHARS", "INVALID_FORMAT"]}, :"StringLengthError.Reason"=>{:type=>"string", :enumerations=>["TOO_LONG", "TOO_SHORT", "UNKNOWN"]}, :"TeamError.Reason"=>{:type=>"string", :enumerations=>["ENTITY_NOT_ON_USERS_TEAMS", "AD_UNITS_NOT_ON_ORDER_TEAMS", "PLACEMENTS_NOT_ON_ORDER_TEAMS", "MISSING_USERS_TEAM", "ALL_TEAM_ASSOCIATION_NOT_ALLOWED", "INVALID_TEAM_ASSIGNMENT", "ALL_TEAM_ACCESS_OVERRIDE_NOT_ALLOWED", "CANNOT_UPDATE_INACTIVE_TEAM", "UNKNOWN"]}, :"TimeZoneError.Reason"=>{:type=>"string", :enumerations=>["INVALID_TIMEZONE_ID", "TIMEZONE_ID_IN_WRONG_FORMAT", "UNKNOWN"]}, :VideoBumperType=>{:type=>"string", :enumerations=>["BEFORE", "AFTER"]}, :"VideoPosition.Type"=>{:type=>"string", :enumerations=>["PREROLL", "MIDROLL", "POSTROLL"]}, :"WorkflowActionError.Reason"=>{:type=>"string", :enumerations=>["NOT_APPLICABLE", "WORKFLOW_DEFINITION_NOT_FOUND", "EMPTY_ACTION_LIST", "NOT_ACTION_APPROVER", "WORKFLOW_ALREADY_COMPLETED", "WORKFLOW_ALREADY_FAILED", "WORKFLOW_ALREADY_CANCELED", "ACTION_COMPLETED", "ACTION_FAILED", "ACTION_CANCELED", "ACTION_NOT_ACTIVE", "UNKNOWN"]}, :WorkflowEvaluationStatus=>{:type=>"string", :enumerations=>["PENDING", "TRIGGERED", "NOT_TRIGGERED", "CANCELLED", "UNKNOWN"]}, :"WorkflowValidationError.Reason"=>{:type=>"string", :enumerations=>["WARNING", "ERROR", "UNKNOWN"]}}
|
16
|
+
PROPOSALSERVICE_NAMESPACES = []
|
17
|
+
|
18
|
+
def self.get_method_signature(method_name)
|
19
|
+
return PROPOSALSERVICE_METHODS[method_name.to_sym]
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.get_type_signature(type_name)
|
23
|
+
return PROPOSALSERVICE_TYPES[type_name.to_sym]
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.get_namespace(index)
|
27
|
+
return PROPOSALSERVICE_NAMESPACES[index]
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
# Base class for exceptions.
|
32
|
+
class ApplicationException < AdManagerApi::Errors::ApiException
|
33
|
+
attr_reader :message # string
|
34
|
+
end
|
35
|
+
|
36
|
+
# Exception class for holding a list of service errors.
|
37
|
+
class ApiException < ApplicationException
|
38
|
+
attr_reader :errors # ApiError
|
39
|
+
def initialize(exception_fault)
|
40
|
+
@array_fields ||= []
|
41
|
+
@array_fields << 'errors'
|
42
|
+
super(exception_fault, ProposalServiceRegistry)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end; end; end
|