From fbdad636b009f2d80dfbe074dccdb8efcb6c5bfe Mon Sep 17 00:00:00 2001 From: Ben Karl Date: Fri, 30 Nov 2018 13:20:02 -0500 Subject: [PATCH] Support for Google Ads API v0_6 --- ChangeLog | 12 + README.rst | 7 +- .../recommendations/apply_recommendation.py | 5 +- .../add_campaign_targeting_criteria.py | 23 +- .../get_geo_target_constant_by_names.py | 7 +- google-ads.yaml | 6 + google/ads/google_ads/client.py | 103 +- google/ads/google_ads/v0/__init__.py | 699 +++-- .../v0/proto/common/ad_type_infos_pb2.py | 459 +++- .../google_ads/v0/proto/common/bidding_pb2.py | 24 +- .../v0/proto/common/criteria_pb2.py | 597 ++++- .../criterion_category_availability_pb2.py | 258 ++ ...riterion_category_availability_pb2_grpc.py | 3 + .../v0/proto/common/custom_parameter_pb2.py | 2 +- .../google_ads/v0/proto/common/dates_pb2.py | 92 + .../v0/proto/common/dates_pb2_grpc.py | 3 + .../explorer_auto_optimizer_setting_pb2.py | 83 + ...xplorer_auto_optimizer_setting_pb2_grpc.py | 3 + .../v0/proto/common/feed_common_pb2.py | 92 + .../v0/proto/common/feed_common_pb2_grpc.py | 3 + .../v0/proto/common/frequency_cap_pb2.py | 179 ++ .../v0/proto/common/frequency_cap_pb2_grpc.py | 3 + .../proto/common/keyword_plan_common_pb2.py | 93 + .../common/keyword_plan_common_pb2_grpc.py | 3 + .../v0/proto/common/matching_function_pb2.py | 95 + .../common/matching_function_pb2_grpc.py | 3 + .../google_ads/v0/proto/common/metrics_pb2.py | 131 +- .../google_ads/v0/proto/common/policy_pb2.py | 24 +- .../common/real_time_bidding_setting_pb2.py | 83 + .../real_time_bidding_setting_pb2_grpc.py | 3 + .../v0/proto/common/tag_snippet_pb2.py | 2 +- .../v0/proto/common/user_lists_pb2.py | 168 ++ .../v0/proto/common/user_lists_pb2_grpc.py | 3 + .../google_ads/v0/proto/common/value_pb2.py | 2 +- .../v0/proto/enums/access_reason_pb2.py | 111 + .../v0/proto/enums/access_reason_pb2_grpc.py | 3 + .../account_budget_proposal_status_pb2.py | 2 +- .../enums/account_budget_proposal_type_pb2.py | 2 +- .../proto/enums/account_budget_status_pb2.py | 2 +- .../ad_customizer_placeholder_field_pb2.py | 107 + ...d_customizer_placeholder_field_pb2_grpc.py | 3 + .../enums/ad_group_ad_rotation_mode_pb2.py | 2 +- .../v0/proto/enums/ad_group_ad_status_pb2.py | 2 +- .../enums/ad_group_criterion_status_pb2.py | 2 +- .../v0/proto/enums/ad_group_status_pb2.py | 2 +- .../v0/proto/enums/ad_group_type_pb2.py | 2 +- .../v0/proto/enums/ad_network_type_pb2.py | 2 +- .../ad_serving_optimization_status_pb2.py | 2 +- .../google_ads/v0/proto/enums/ad_type_pb2.py | 18 +- .../enums/advertising_channel_sub_type_pb2.py | 2 +- .../enums/advertising_channel_type_pb2.py | 2 +- ...ate_location_feed_relationship_type_pb2.py | 96 + ...ocation_feed_relationship_type_pb2_grpc.py | 3 + .../v0/proto/enums/age_range_type_pb2.py | 2 +- .../proto/enums/app_placeholder_field_pb2.py | 123 + .../enums/app_placeholder_field_pb2_grpc.py | 3 + .../v0/proto/enums/attribution_model_pb2.py | 2 +- .../v0/proto/enums/bid_modifier_source_pb2.py | 2 +- .../v0/proto/enums/bidding_source_pb2.py | 2 +- .../proto/enums/bidding_strategy_type_pb2.py | 2 +- .../proto/enums/billing_setup_status_pb2.py | 2 +- .../proto/enums/budget_delivery_method_pb2.py | 2 +- .../v0/proto/enums/budget_status_pb2.py | 2 +- .../call_conversion_reporting_state_pb2.py | 2 +- .../proto/enums/call_placeholder_field_pb2.py | 111 + .../enums/call_placeholder_field_pb2_grpc.py | 3 + .../enums/callout_placeholder_field_pb2.py | 95 + .../callout_placeholder_field_pb2_grpc.py | 3 + .../proto/enums/campaign_group_status_pb2.py | 2 +- .../enums/campaign_serving_status_pb2.py | 2 +- .../enums/campaign_shared_set_status_pb2.py | 2 +- .../v0/proto/enums/campaign_status_pb2.py | 2 +- .../enums/change_status_operation_pb2.py | 2 +- .../enums/change_status_resource_type_pb2.py | 2 +- .../v0/proto/enums/content_label_type_pb2.py | 151 ++ .../enums/content_label_type_pb2_grpc.py | 3 + .../enums/conversion_action_category_pb2.py | 2 +- .../conversion_action_counting_type_pb2.py | 2 +- .../enums/conversion_action_status_pb2.py | 2 +- .../proto/enums/conversion_action_type_pb2.py | 2 +- ..._category_channel_availability_mode_pb2.py | 106 + ...gory_channel_availability_mode_pb2_grpc.py | 3 + ...n_category_locale_availability_mode_pb2.py | 109 + ...egory_locale_availability_mode_pb2_grpc.py | 3 + .../v0/proto/enums/criterion_type_pb2.py | 40 +- .../enums/custom_placeholder_field_pb2.py | 173 ++ .../custom_placeholder_field_pb2_grpc.py | 3 + .../customer_match_upload_key_type_pb2.py | 103 + ...customer_match_upload_key_type_pb2_grpc.py | 3 + .../enums/data_driven_model_status_pb2.py | 2 +- .../v0/proto/enums/day_of_week_pb2.py | 2 +- .../google_ads/v0/proto/enums/device_pb2.py | 2 +- .../enums/display_ad_format_setting_pb2.py | 2 +- .../enums/education_placeholder_field_pb2.py | 161 ++ .../education_placeholder_field_pb2_grpc.py | 3 + .../v0/proto/enums/feed_attribute_type_pb2.py | 143 + .../enums/feed_attribute_type_pb2_grpc.py | 3 + .../v0/proto/enums/feed_item_status_pb2.py | 99 + .../proto/enums/feed_item_status_pb2_grpc.py | 3 + .../v0/proto/enums/feed_link_status_pb2.py | 99 + .../proto/enums/feed_link_status_pb2_grpc.py | 3 + .../enums/feed_mapping_criterion_type_pb2.py | 100 + .../feed_mapping_criterion_type_pb2_grpc.py | 3 + .../v0/proto/enums/feed_mapping_status_pb2.py | 99 + .../enums/feed_mapping_status_pb2_grpc.py | 3 + .../v0/proto/enums/feed_origin_pb2.py | 99 + .../v0/proto/enums/feed_origin_pb2_grpc.py | 3 + .../v0/proto/enums/feed_status_pb2.py | 99 + .../v0/proto/enums/feed_status_pb2_grpc.py | 3 + .../enums/flight_placeholder_field_pb2.py | 161 ++ .../flight_placeholder_field_pb2_grpc.py | 3 + .../enums/frequency_cap_event_type_pb2.py | 99 + .../frequency_cap_event_type_pb2_grpc.py | 3 + .../v0/proto/enums/frequency_cap_level_pb2.py | 104 + .../enums/frequency_cap_level_pb2_grpc.py | 3 + .../enums/frequency_cap_time_unit_pb2.py | 103 + .../enums/frequency_cap_time_unit_pb2_grpc.py | 3 + .../v0/proto/enums/gender_type_pb2.py | 2 +- .../enums/geo_target_constant_status_pb2.py | 2 +- .../enums/geo_targeting_restriction_pb2.py | 95 + .../geo_targeting_restriction_pb2_grpc.py | 3 + .../enums/google_ads_field_category_pb2.py | 2 +- .../enums/google_ads_field_data_type_pb2.py | 2 +- .../enums/hotel_date_selection_type_pb2.py | 2 +- .../enums/hotel_placeholder_field_pb2.py | 173 ++ .../enums/hotel_placeholder_field_pb2_grpc.py | 3 + .../v0/proto/enums/income_range_type_pb2.py | 2 +- .../v0/proto/enums/interaction_type_pb2.py | 2 +- .../proto/enums/job_placeholder_field_pb2.py | 161 ++ .../enums/job_placeholder_field_pb2_grpc.py | 3 + .../v0/proto/enums/keyword_match_type_pb2.py | 2 +- .../keyword_plan_competition_level_pb2.py | 107 + ...keyword_plan_competition_level_pb2_grpc.py | 3 + .../keyword_plan_forecast_interval_pb2.py | 103 + ...keyword_plan_forecast_interval_pb2_grpc.py | 3 + .../proto/enums/keyword_plan_network_pb2.py | 99 + .../enums/keyword_plan_network_pb2_grpc.py | 3 + .../listing_custom_attribute_index_pb2.py | 2 +- .../v0/proto/enums/listing_group_type_pb2.py | 2 +- .../enums/local_placeholder_field_pb2.py | 169 ++ .../enums/local_placeholder_field_pb2_grpc.py | 3 + .../v0/proto/enums/manager_link_status_pb2.py | 2 +- .../v0/proto/enums/media_type_pb2.py | 2 +- .../enums/message_placeholder_field_pb2.py | 111 + .../message_placeholder_field_pb2_grpc.py | 3 + .../v0/proto/enums/mime_type_pb2.py | 2 +- .../v0/proto/enums/minute_of_hour_pb2.py | 2 +- .../v0/proto/enums/month_of_year_pb2.py | 2 +- .../page_one_promoted_strategy_goal_pb2.py | 2 +- .../proto/enums/parental_status_type_pb2.py | 2 +- .../v0/proto/enums/placeholder_type_pb2.py | 168 ++ .../proto/enums/placeholder_type_pb2_grpc.py | 3 + .../proto/enums/policy_approval_status_pb2.py | 2 +- .../proto/enums/policy_review_status_pb2.py | 2 +- .../enums/policy_topic_entry_type_pb2.py | 2 +- ...dence_destination_mismatch_url_type_pb2.py | 2 +- .../proto/enums/preferred_content_type_pb2.py | 95 + .../enums/preferred_content_type_pb2_grpc.py | 3 + .../enums/price_placeholder_field_pb2.py | 303 +++ .../enums/price_placeholder_field_pb2_grpc.py | 3 + .../enums/product_channel_exclusivity_pb2.py | 2 +- .../v0/proto/enums/product_channel_pb2.py | 2 +- .../v0/proto/enums/product_condition_pb2.py | 18 +- .../v0/proto/enums/product_type_level_pb2.py | 2 +- .../enums/promotion_placeholder_field_pb2.py | 147 ++ .../promotion_placeholder_field_pb2_grpc.py | 3 + .../proto/enums/proximity_radius_units_pb2.py | 2 +- .../proto/enums/quality_score_bucket_pb2.py | 2 +- .../real_estate_placeholder_field_pb2.py | 165 ++ .../real_estate_placeholder_field_pb2_grpc.py | 3 + .../v0/proto/enums/recommendation_type_pb2.py | 2 +- .../proto/enums/search_term_match_type_pb2.py | 112 + .../enums/search_term_match_type_pb2_grpc.py | 3 + .../enums/search_term_targeting_status_pb2.py | 108 + .../search_term_targeting_status_pb2_grpc.py | 3 + .../v0/proto/enums/shared_set_status_pb2.py | 2 +- .../v0/proto/enums/shared_set_type_pb2.py | 2 +- .../enums/sitelink_placeholder_field_pb2.py | 119 + .../sitelink_placeholder_field_pb2_grpc.py | 3 + .../ads/google_ads/v0/proto/enums/slot_pb2.py | 2 +- .../v0/proto/enums/spending_limit_type_pb2.py | 2 +- ...tructured_snippet_placeholder_field_pb2.py | 99 + ...ured_snippet_placeholder_field_pb2_grpc.py | 3 + ...rget_cpa_opt_in_recommendation_goal_pb2.py | 2 +- .../v0/proto/enums/targeting_dimension_pb2.py | 123 + .../enums/targeting_dimension_pb2_grpc.py | 3 + .../v0/proto/enums/time_type_pb2.py | 2 +- .../enums/tracking_code_page_format_pb2.py | 12 +- .../v0/proto/enums/tracking_code_type_pb2.py | 2 +- .../enums/travel_placeholder_field_pb2.py | 173 ++ .../travel_placeholder_field_pb2_grpc.py | 3 + .../enums/user_interest_taxonomy_type_pb2.py | 111 + .../user_interest_taxonomy_type_pb2_grpc.py | 3 + .../enums/user_list_access_status_pb2.py | 99 + .../enums/user_list_access_status_pb2_grpc.py | 3 + .../enums/user_list_closing_reason_pb2.py | 96 + .../user_list_closing_reason_pb2_grpc.py | 3 + .../user_list_crm_data_source_type_pb2.py | 103 + ...user_list_crm_data_source_type_pb2_grpc.py | 3 + .../enums/user_list_membership_status_pb2.py | 101 + .../user_list_membership_status_pb2_grpc.py | 3 + .../proto/enums/user_list_size_range_pb2.py | 155 ++ .../enums/user_list_size_range_pb2_grpc.py | 3 + .../v0/proto/enums/user_list_type_pb2.py | 115 + .../v0/proto/enums/user_list_type_pb2_grpc.py | 3 + .../account_budget_proposal_error_pb2.py | 2 +- .../proto/errors/ad_customizer_error_pb2.py | 2 +- .../v0/proto/errors/ad_error_pb2.py | 2 +- .../v0/proto/errors/ad_group_ad_error_pb2.py | 2 +- .../errors/ad_group_bid_modifier_error_pb2.py | 2 +- .../errors/ad_group_criterion_error_pb2.py | 2 +- .../v0/proto/errors/ad_group_error_pb2.py | 2 +- .../proto/errors/ad_group_feed_error_pb2.py | 119 + .../errors/ad_group_feed_error_pb2_grpc.py | 3 + .../v0/proto/errors/ad_sharing_error_pb2.py | 2 +- .../v0/proto/errors/adx_error_pb2.py | 2 +- .../proto/errors/authentication_error_pb2.py | 20 +- .../proto/errors/authorization_error_pb2.py | 2 +- .../v0/proto/errors/bidding_error_pb2.py | 2 +- .../errors/bidding_strategy_error_pb2.py | 2 +- .../proto/errors/billing_setup_error_pb2.py | 2 +- .../proto/errors/campaign_budget_error_pb2.py | 2 +- .../errors/campaign_criterion_error_pb2.py | 2 +- .../v0/proto/errors/campaign_error_pb2.py | 2 +- .../proto/errors/campaign_feed_error_pb2.py | 115 + .../errors/campaign_feed_error_pb2_grpc.py | 3 + .../proto/errors/campaign_group_error_pb2.py | 2 +- .../errors/campaign_shared_set_error_pb2.py | 2 +- .../proto/errors/change_status_error_pb2.py | 2 +- .../proto/errors/collection_size_error_pb2.py | 2 +- .../v0/proto/errors/context_error_pb2.py | 2 +- .../errors/conversion_action_error_pb2.py | 2 +- .../v0/proto/errors/criterion_error_pb2.py | 2 +- .../errors/customer_client_link_error_pb2.py | 2 +- .../v0/proto/errors/customer_error_pb2.py | 12 +- .../proto/errors/customer_feed_error_pb2.py | 119 + .../errors/customer_feed_error_pb2_grpc.py | 3 + .../errors/customer_manager_link_error_pb2.py | 2 +- .../v0/proto/errors/database_error_pb2.py | 2 +- .../v0/proto/errors/date_error_pb2.py | 22 +- .../v0/proto/errors/date_range_error_pb2.py | 2 +- .../v0/proto/errors/distinct_error_pb2.py | 2 +- .../v0/proto/errors/enum_error_pb2.py | 2 +- .../google_ads/v0/proto/errors/errors_pb2.py | 253 +- .../feed_attribute_reference_error_pb2.py | 2 +- .../v0/proto/errors/feed_error_pb2.py | 167 ++ .../v0/proto/errors/feed_error_pb2_grpc.py | 3 + .../v0/proto/errors/feed_item_error_pb2.py | 127 + .../proto/errors/feed_item_error_pb2_grpc.py | 3 + .../v0/proto/errors/feed_mapping_error_pb2.py | 155 ++ .../errors/feed_mapping_error_pb2_grpc.py | 3 + .../v0/proto/errors/field_error_pb2.py | 2 +- .../v0/proto/errors/field_mask_error_pb2.py | 2 +- .../v0/proto/errors/function_error_pb2.py | 2 +- .../errors/function_parsing_error_pb2.py | 2 +- ...eo_target_constant_suggestion_error_pb2.py | 2 +- .../v0/proto/errors/header_error_pb2.py | 12 +- .../v0/proto/errors/id_error_pb2.py | 2 +- .../v0/proto/errors/image_error_pb2.py | 2 +- .../v0/proto/errors/internal_error_pb2.py | 2 +- .../errors/keyword_plan_ad_group_error_pb2.py | 100 + .../keyword_plan_ad_group_error_pb2_grpc.py | 3 + .../errors/keyword_plan_campaign_error_pb2.py | 112 + .../keyword_plan_campaign_error_pb2_grpc.py | 3 + .../v0/proto/errors/keyword_plan_error_pb2.py | 149 ++ .../errors/keyword_plan_error_pb2_grpc.py | 3 + .../errors/keyword_plan_idea_error_pb2.py | 100 + .../keyword_plan_idea_error_pb2_grpc.py | 3 + .../errors/keyword_plan_keyword_error_pb2.py | 116 + .../keyword_plan_keyword_error_pb2_grpc.py | 3 + ...keyword_plan_negative_keyword_error_pb2.py | 92 + ...rd_plan_negative_keyword_error_pb2_grpc.py | 3 + .../proto/errors/list_operation_error_pb2.py | 2 +- .../v0/proto/errors/media_bundle_error_pb2.py | 2 +- .../v0/proto/errors/media_file_error_pb2.py | 2 +- .../v0/proto/errors/multiplier_error_pb2.py | 2 +- .../v0/proto/errors/mutate_error_pb2.py | 2 +- .../errors/new_resource_creation_error_pb2.py | 10 +- .../v0/proto/errors/not_empty_error_pb2.py | 2 +- .../v0/proto/errors/null_error_pb2.py | 2 +- .../operation_access_denied_error_pb2.py | 12 +- .../v0/proto/errors/operator_error_pb2.py | 2 +- .../proto/errors/policy_finding_error_pb2.py | 2 +- .../v0/proto/errors/query_error_pb2.py | 2 +- .../v0/proto/errors/quota_error_pb2.py | 2 +- .../v0/proto/errors/range_error_pb2.py | 2 +- .../proto/errors/recommendation_error_pb2.py | 28 +- .../v0/proto/errors/region_code_error_pb2.py | 2 +- .../v0/proto/errors/request_error_pb2.py | 2 +- .../resource_access_denied_error_pb2.py | 2 +- ...resource_count_limit_exceeded_error_pb2.py | 2 +- .../v0/proto/errors/setting_error_pb2.py | 2 +- .../errors/shared_criterion_error_pb2.py | 2 +- .../v0/proto/errors/shared_set_error_pb2.py | 2 +- .../proto/errors/string_format_error_pb2.py | 2 +- .../proto/errors/string_length_error_pb2.py | 2 +- .../v0/proto/errors/url_field_error_pb2.py | 44 +- .../v0/proto/errors/user_list_error_pb2.py | 183 ++ .../proto/errors/user_list_error_pb2_grpc.py | 3 + .../v0/proto/resources/account_budget_pb2.py | 4 +- .../resources/account_budget_proposal_pb2.py | 10 +- .../v0/proto/resources/ad_group_ad_pb2.py | 4 +- .../resources/ad_group_audience_view_pb2.py | 2 +- .../resources/ad_group_bid_modifier_pb2.py | 19 +- .../proto/resources/ad_group_criterion_pb2.py | 50 +- .../v0/proto/resources/ad_group_feed_pb2.py | 139 + .../proto/resources/ad_group_feed_pb2_grpc.py | 3 + .../v0/proto/resources/ad_group_pb2.py | 45 +- .../google_ads/v0/proto/resources/ad_pb2.py | 62 +- .../v0/proto/resources/age_range_view_pb2.py | 2 +- .../proto/resources/bidding_strategy_pb2.py | 2 +- .../v0/proto/resources/billing_setup_pb2.py | 44 +- .../resources/campaign_audience_view_pb2.py | 85 + .../campaign_audience_view_pb2_grpc.py | 3 + .../resources/campaign_bid_modifier_pb2.py | 2 +- .../v0/proto/resources/campaign_budget_pb2.py | 26 +- .../proto/resources/campaign_criterion_pb2.py | 105 +- .../v0/proto/resources/campaign_feed_pb2.py | 139 + .../proto/resources/campaign_feed_pb2_grpc.py | 3 + .../v0/proto/resources/campaign_group_pb2.py | 2 +- .../v0/proto/resources/campaign_pb2.py | 98 +- .../resources/campaign_shared_set_pb2.py | 2 +- .../proto/resources/carrier_constant_pb2.py | 114 + .../resources/carrier_constant_pb2_grpc.py | 3 + .../v0/proto/resources/change_status_pb2.py | 2 +- .../proto/resources/conversion_action_pb2.py | 6 +- .../resources/customer_client_link_pb2.py | 2 +- .../v0/proto/resources/customer_client_pb2.py | 115 + .../resources/customer_client_pb2_grpc.py | 3 + .../v0/proto/resources/customer_feed_pb2.py | 129 + .../proto/resources/customer_feed_pb2_grpc.py | 3 + .../resources/customer_manager_link_pb2.py | 2 +- .../v0/proto/resources/customer_pb2.py | 28 +- .../resources/display_keyword_view_pb2.py | 2 +- .../v0/proto/resources/feed_item_pb2.py | 333 +++ .../v0/proto/resources/feed_item_pb2_grpc.py | 3 + .../v0/proto/resources/feed_mapping_pb2.py | 461 ++++ .../proto/resources/feed_mapping_pb2_grpc.py | 3 + .../google_ads/v0/proto/resources/feed_pb2.py | 594 +++++ .../v0/proto/resources/feed_pb2_grpc.py | 3 + .../v0/proto/resources/gender_view_pb2.py | 2 +- .../resources/geo_target_constant_pb2.py | 2 +- .../proto/resources/google_ads_field_pb2.py | 2 +- .../proto/resources/hotel_group_view_pb2.py | 2 +- .../resources/hotel_performance_view_pb2.py | 81 + .../hotel_performance_view_pb2_grpc.py | 3 + .../resources/keyword_plan_ad_group_pb2.py | 126 + .../keyword_plan_ad_group_pb2_grpc.py | 3 + .../resources/keyword_plan_campaign_pb2.py | 206 ++ .../keyword_plan_campaign_pb2_grpc.py | 3 + .../resources/keyword_plan_keyword_pb2.py | 135 + .../keyword_plan_keyword_pb2_grpc.py | 3 + .../keyword_plan_negative_keyword_pb2.py | 126 + .../keyword_plan_negative_keyword_pb2_grpc.py | 3 + .../v0/proto/resources/keyword_plan_pb2.py | 188 ++ .../proto/resources/keyword_plan_pb2_grpc.py | 3 + .../v0/proto/resources/keyword_view_pb2.py | 2 +- .../proto/resources/language_constant_pb2.py | 114 + .../resources/language_constant_pb2_grpc.py | 3 + .../resources/managed_placement_view_pb2.py | 2 +- .../v0/proto/resources/media_file_pb2.py | 6 +- .../resources/parental_status_view_pb2.py | 2 +- .../proto/resources/payments_account_pb2.py | 140 + .../resources/payments_account_pb2_grpc.py | 3 + .../proto/resources/product_group_view_pb2.py | 2 +- .../v0/proto/resources/recommendation_pb2.py | 28 +- .../proto/resources/search_term_view_pb2.py | 117 + .../resources/search_term_view_pb2_grpc.py | 3 + .../proto/resources/shared_criterion_pb2.py | 2 +- .../v0/proto/resources/shared_set_pb2.py | 2 +- .../v0/proto/resources/topic_constant_pb2.py | 2 +- .../v0/proto/resources/topic_view_pb2.py | 2 +- .../v0/proto/resources/user_interest_pb2.py | 146 + .../proto/resources/user_interest_pb2_grpc.py | 3 + .../v0/proto/resources/user_list_pb2.py | 321 +++ .../v0/proto/resources/user_list_pb2_grpc.py | 3 + .../v0/proto/resources/video_pb2.py | 2 +- .../account_budget_proposal_service_pb2.py | 10 +- .../services/account_budget_service_pb2.py | 2 +- .../proto/services/ad_group_ad_service_pb2.py | 10 +- .../ad_group_audience_view_service_pb2.py | 2 +- .../ad_group_bid_modifier_service_pb2.py | 10 +- .../ad_group_criterion_service_pb2.py | 10 +- .../services/ad_group_feed_service_pb2.py | 368 +++ .../ad_group_feed_service_pb2_grpc.py | 65 + .../v0/proto/services/ad_group_service_pb2.py | 10 +- .../services/age_range_view_service_pb2.py | 2 +- .../services/bidding_strategy_service_pb2.py | 10 +- .../services/billing_setup_service_pb2.py | 10 +- .../campaign_audience_view_service_pb2.py | 107 + ...campaign_audience_view_service_pb2_grpc.py | 47 + .../campaign_bid_modifier_service_pb2.py | 10 +- .../services/campaign_budget_service_pb2.py | 10 +- .../campaign_criterion_service_pb2.py | 10 +- .../services/campaign_feed_service_pb2.py | 368 +++ .../campaign_feed_service_pb2_grpc.py | 65 + .../services/campaign_group_service_pb2.py | 10 +- .../v0/proto/services/campaign_service_pb2.py | 10 +- .../campaign_shared_set_service_pb2.py | 10 +- .../services/carrier_constant_service_pb2.py | 107 + .../carrier_constant_service_pb2_grpc.py | 47 + .../services/change_status_service_pb2.py | 2 +- .../services/conversion_action_service_pb2.py | 10 +- .../customer_client_link_service_pb2.py | 2 +- .../services/customer_client_service_pb2.py | 107 + .../customer_client_service_pb2_grpc.py | 47 + .../services/customer_feed_service_pb2.py | 368 +++ .../customer_feed_service_pb2_grpc.py | 65 + .../customer_manager_link_service_pb2.py | 2 +- .../v0/proto/services/customer_service_pb2.py | 366 ++- .../services/customer_service_pb2_grpc.py | 34 + .../display_keyword_view_service_pb2.py | 2 +- .../proto/services/feed_item_service_pb2.py | 366 +++ .../services/feed_item_service_pb2_grpc.py | 65 + .../services/feed_mapping_service_pb2.py | 340 +++ .../services/feed_mapping_service_pb2_grpc.py | 65 + .../v0/proto/services/feed_service_pb2.py | 366 +++ .../proto/services/feed_service_pb2_grpc.py | 65 + .../proto/services/gender_view_service_pb2.py | 2 +- .../geo_target_constant_service_pb2.py | 50 +- .../services/google_ads_field_service_pb2.py | 6 +- .../proto/services/google_ads_service_pb2.py | 1054 +++++++- .../services/google_ads_service_pb2_grpc.py | 17 + .../services/hotel_group_view_service_pb2.py | 2 +- .../hotel_performance_view_service_pb2.py | 107 + ...hotel_performance_view_service_pb2_grpc.py | 47 + .../keyword_plan_ad_group_service_pb2.py | 368 +++ .../keyword_plan_ad_group_service_pb2_grpc.py | 65 + .../keyword_plan_campaign_service_pb2.py | 368 +++ .../keyword_plan_campaign_service_pb2_grpc.py | 65 + .../services/keyword_plan_idea_service_pb2.py | 448 ++++ .../keyword_plan_idea_service_pb2_grpc.py | 46 + .../keyword_plan_keyword_service_pb2.py | 368 +++ .../keyword_plan_keyword_service_pb2_grpc.py | 65 + ...yword_plan_negative_keyword_service_pb2.py | 369 +++ ..._plan_negative_keyword_service_pb2_grpc.py | 65 + .../services/keyword_plan_service_pb2.py | 933 +++++++ .../services/keyword_plan_service_pb2_grpc.py | 99 + .../services/keyword_view_service_pb2.py | 2 +- .../services/language_constant_service_pb2.py | 107 + .../language_constant_service_pb2_grpc.py | 47 + .../managed_placement_view_service_pb2.py | 2 +- .../proto/services/media_file_service_pb2.py | 10 +- .../parental_status_view_service_pb2.py | 2 +- .../services/payments_account_service_pb2.py | 156 ++ .../payments_account_service_pb2_grpc.py | 50 + .../product_group_view_service_pb2.py | 2 +- .../services/recommendation_service_pb2.py | 337 ++- .../recommendation_service_pb2_grpc.py | 17 + .../services/search_term_view_service_pb2.py | 107 + .../search_term_view_service_pb2_grpc.py | 47 + .../services/shared_criterion_service_pb2.py | 10 +- .../proto/services/shared_set_service_pb2.py | 10 +- .../services/topic_constant_service_pb2.py | 2 +- .../proto/services/topic_view_service_pb2.py | 2 +- .../services/user_interest_service_pb2.py | 107 + .../user_interest_service_pb2_grpc.py | 47 + .../proto/services/user_list_service_pb2.py | 366 +++ .../services/user_list_service_pb2_grpc.py | 64 + .../v0/proto/services/video_service_pb2.py | 2 +- .../services/ad_group_feed_service_client.py | 259 ++ .../ad_group_feed_service_client_config.py | 33 + .../campaign_audience_view_service_client.py | 209 ++ ...ign_audience_view_service_client_config.py | 28 + .../services/campaign_feed_service_client.py | 260 ++ .../campaign_feed_service_client_config.py | 33 + .../carrier_constant_service_client.py | 206 ++ .../carrier_constant_service_client_config.py | 28 + .../customer_client_service_client.py | 207 ++ .../customer_client_service_client_config.py | 28 + .../services/customer_feed_service_client.py | 260 ++ .../customer_feed_service_client_config.py | 33 + .../v0/services/customer_service_client.py | 104 + .../customer_service_client_config.py | 10 + google/ads/google_ads/v0/services/enums.py | 2338 ++++++++++++++++- .../v0/services/feed_item_service_client.py | 259 ++ .../feed_item_service_client_config.py | 33 + .../services/feed_mapping_service_client.py | 259 ++ .../feed_mapping_service_client_config.py | 33 + .../v0/services/feed_service_client.py | 257 ++ .../v0/services/feed_service_client_config.py | 33 + .../geo_target_constant_service_client.py | 9 +- .../google_ads_field_service_client.py | 1 + .../v0/services/google_ads_service_client.py | 51 + .../google_ads_service_client_config.py | 5 + .../hotel_group_view_service_client.py | 1 + .../hotel_performance_view_service_client.py | 209 ++ ..._performance_view_service_client_config.py | 28 + .../keyword_plan_ad_group_service_client.py | 264 ++ ...ord_plan_ad_group_service_client_config.py | 33 + .../keyword_plan_campaign_service_client.py | 264 ++ ...ord_plan_campaign_service_client_config.py | 33 + .../keyword_plan_idea_service_client.py | 239 ++ ...keyword_plan_idea_service_client_config.py | 28 + .../keyword_plan_keyword_service_client.py | 264 ++ ...word_plan_keyword_service_client_config.py | 33 + ...rd_plan_negative_keyword_service_client.py | 268 ++ ..._negative_keyword_service_client_config.py | 33 + .../services/keyword_plan_service_client.py | 355 +++ .../keyword_plan_service_client_config.py | 43 + .../services/keyword_view_service_client.py | 1 + .../language_constant_service_client.py | 206 ++ ...language_constant_service_client_config.py | 28 + .../managed_placement_view_service_client.py | 1 + .../v0/services/media_file_service_client.py | 1 + .../parental_status_view_service_client.py | 1 + .../payments_account_service_client.py | 202 ++ .../payments_account_service_client_config.py | 28 + .../product_group_view_service_client.py | 1 + .../services/recommendation_service_client.py | 69 + .../recommendation_service_client_config.py | 5 + .../search_term_view_service_client.py | 208 ++ .../search_term_view_service_client_config.py | 28 + .../shared_criterion_service_client.py | 1 + .../v0/services/shared_set_service_client.py | 1 + .../services/topic_constant_service_client.py | 107 - .../v0/services/topic_view_service_client.py | 1 + .../ad_group_feed_service_grpc_transport.py | 118 + ...gn_audience_view_service_grpc_transport.py | 106 + .../campaign_feed_service_grpc_transport.py | 118 + ...carrier_constant_service_grpc_transport.py | 105 + .../customer_client_service_grpc_transport.py | 105 + .../customer_feed_service_grpc_transport.py | 118 + .../customer_service_grpc_transport.py | 26 + .../feed_item_service_grpc_transport.py | 118 + .../feed_mapping_service_grpc_transport.py | 118 + .../transports/feed_service_grpc_transport.py | 118 + .../google_ads_service_grpc_transport.py | 13 + ...performance_view_service_grpc_transport.py | 106 + ...rd_plan_ad_group_service_grpc_transport.py | 121 + ...rd_plan_campaign_service_grpc_transport.py | 121 + ...eyword_plan_idea_service_grpc_transport.py | 106 + ...ord_plan_keyword_service_grpc_transport.py | 121 + ...negative_keyword_service_grpc_transport.py | 121 + .../keyword_plan_service_grpc_transport.py | 145 + ...anguage_constant_service_grpc_transport.py | 106 + ...payments_account_service_grpc_transport.py | 108 + .../recommendation_service_grpc_transport.py | 13 + ...search_term_view_service_grpc_transport.py | 105 + .../user_interest_service_grpc_transport.py | 104 + .../user_list_service_grpc_transport.py | 117 + .../services/user_interest_service_client.py | 208 ++ .../user_interest_service_client_config.py | 28 + .../v0/services/user_list_service_client.py | 258 ++ .../user_list_service_client_config.py | 33 + .../v0/services/video_service_client.py | 1 + google/ads/google_ads/v0/types.py | 226 +- setup.py | 2 +- tests/client_test.py | 104 +- 549 files changed, 36021 insertions(+), 1259 deletions(-) create mode 100644 google/ads/google_ads/v0/proto/common/criterion_category_availability_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/criterion_category_availability_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/common/dates_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/dates_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/common/explorer_auto_optimizer_setting_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/explorer_auto_optimizer_setting_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/common/feed_common_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/feed_common_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/common/frequency_cap_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/frequency_cap_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/common/keyword_plan_common_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/keyword_plan_common_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/common/matching_function_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/matching_function_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/common/real_time_bidding_setting_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/real_time_bidding_setting_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/common/user_lists_pb2.py create mode 100644 google/ads/google_ads/v0/proto/common/user_lists_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/access_reason_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/access_reason_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/ad_customizer_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/ad_customizer_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/affiliate_location_feed_relationship_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/affiliate_location_feed_relationship_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/app_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/app_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/call_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/call_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/callout_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/callout_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/content_label_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/content_label_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/criterion_category_channel_availability_mode_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/criterion_category_channel_availability_mode_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/criterion_category_locale_availability_mode_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/criterion_category_locale_availability_mode_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/custom_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/custom_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/customer_match_upload_key_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/customer_match_upload_key_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/education_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/education_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_attribute_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_attribute_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_item_status_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_item_status_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_link_status_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_link_status_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_mapping_criterion_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_mapping_criterion_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_mapping_status_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_mapping_status_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_origin_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_origin_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_status_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/feed_status_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/flight_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/flight_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/frequency_cap_event_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/frequency_cap_event_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/frequency_cap_level_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/frequency_cap_level_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/frequency_cap_time_unit_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/frequency_cap_time_unit_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/geo_targeting_restriction_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/geo_targeting_restriction_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/hotel_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/hotel_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/job_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/job_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/keyword_plan_competition_level_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/keyword_plan_competition_level_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/keyword_plan_forecast_interval_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/keyword_plan_forecast_interval_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/keyword_plan_network_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/keyword_plan_network_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/local_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/local_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/message_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/message_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/placeholder_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/placeholder_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/preferred_content_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/preferred_content_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/price_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/price_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/promotion_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/promotion_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/real_estate_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/real_estate_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/search_term_match_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/search_term_match_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/search_term_targeting_status_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/search_term_targeting_status_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/sitelink_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/sitelink_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/structured_snippet_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/structured_snippet_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/targeting_dimension_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/targeting_dimension_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/travel_placeholder_field_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/travel_placeholder_field_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_interest_taxonomy_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_interest_taxonomy_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_access_status_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_access_status_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_closing_reason_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_closing_reason_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_crm_data_source_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_crm_data_source_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_membership_status_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_membership_status_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_size_range_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_size_range_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_type_pb2.py create mode 100644 google/ads/google_ads/v0/proto/enums/user_list_type_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/ad_group_feed_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/ad_group_feed_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/campaign_feed_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/campaign_feed_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/customer_feed_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/customer_feed_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/feed_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/feed_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/feed_item_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/feed_item_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/feed_mapping_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/feed_mapping_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_ad_group_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_ad_group_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_campaign_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_campaign_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_idea_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_idea_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_keyword_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_keyword_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_negative_keyword_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/keyword_plan_negative_keyword_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/errors/user_list_error_pb2.py create mode 100644 google/ads/google_ads/v0/proto/errors/user_list_error_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/ad_group_feed_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/ad_group_feed_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/campaign_audience_view_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/campaign_audience_view_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/campaign_feed_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/campaign_feed_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/carrier_constant_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/carrier_constant_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/customer_client_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/customer_client_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/customer_feed_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/customer_feed_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/feed_item_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/feed_item_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/feed_mapping_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/feed_mapping_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/feed_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/feed_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/hotel_performance_view_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/hotel_performance_view_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_ad_group_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_ad_group_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_campaign_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_campaign_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_keyword_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_keyword_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_negative_keyword_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_negative_keyword_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/keyword_plan_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/language_constant_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/language_constant_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/payments_account_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/payments_account_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/search_term_view_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/search_term_view_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/user_interest_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/user_interest_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/resources/user_list_pb2.py create mode 100644 google/ads/google_ads/v0/proto/resources/user_list_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/ad_group_feed_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/ad_group_feed_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/campaign_audience_view_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/campaign_audience_view_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/campaign_feed_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/campaign_feed_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/carrier_constant_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/carrier_constant_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/customer_client_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/customer_client_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/customer_feed_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/customer_feed_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/feed_item_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/feed_item_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/feed_mapping_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/feed_mapping_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/feed_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/feed_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/hotel_performance_view_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/hotel_performance_view_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_ad_group_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_ad_group_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_campaign_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_campaign_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_idea_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_idea_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_keyword_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_keyword_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_negative_keyword_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_negative_keyword_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/keyword_plan_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/language_constant_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/language_constant_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/payments_account_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/payments_account_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/search_term_view_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/search_term_view_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/user_interest_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/user_interest_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/proto/services/user_list_service_pb2.py create mode 100644 google/ads/google_ads/v0/proto/services/user_list_service_pb2_grpc.py create mode 100644 google/ads/google_ads/v0/services/ad_group_feed_service_client.py create mode 100644 google/ads/google_ads/v0/services/ad_group_feed_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/campaign_audience_view_service_client.py create mode 100644 google/ads/google_ads/v0/services/campaign_audience_view_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/campaign_feed_service_client.py create mode 100644 google/ads/google_ads/v0/services/campaign_feed_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/carrier_constant_service_client.py create mode 100644 google/ads/google_ads/v0/services/carrier_constant_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/customer_client_service_client.py create mode 100644 google/ads/google_ads/v0/services/customer_client_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/customer_feed_service_client.py create mode 100644 google/ads/google_ads/v0/services/customer_feed_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/feed_item_service_client.py create mode 100644 google/ads/google_ads/v0/services/feed_item_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/feed_mapping_service_client.py create mode 100644 google/ads/google_ads/v0/services/feed_mapping_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/feed_service_client.py create mode 100644 google/ads/google_ads/v0/services/feed_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/hotel_performance_view_service_client.py create mode 100644 google/ads/google_ads/v0/services/hotel_performance_view_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_ad_group_service_client.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_ad_group_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_campaign_service_client.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_campaign_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_idea_service_client.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_idea_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_keyword_service_client.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_keyword_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_negative_keyword_service_client.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_negative_keyword_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_service_client.py create mode 100644 google/ads/google_ads/v0/services/keyword_plan_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/language_constant_service_client.py create mode 100644 google/ads/google_ads/v0/services/language_constant_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/payments_account_service_client.py create mode 100644 google/ads/google_ads/v0/services/payments_account_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/search_term_view_service_client.py create mode 100644 google/ads/google_ads/v0/services/search_term_view_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/transports/ad_group_feed_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/campaign_audience_view_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/campaign_feed_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/carrier_constant_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/customer_client_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/customer_feed_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/feed_item_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/feed_mapping_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/feed_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/hotel_performance_view_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/keyword_plan_ad_group_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/keyword_plan_campaign_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/keyword_plan_idea_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/keyword_plan_keyword_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/keyword_plan_negative_keyword_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/keyword_plan_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/language_constant_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/payments_account_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/search_term_view_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/user_interest_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/transports/user_list_service_grpc_transport.py create mode 100644 google/ads/google_ads/v0/services/user_interest_service_client.py create mode 100644 google/ads/google_ads/v0/services/user_interest_service_client_config.py create mode 100644 google/ads/google_ads/v0/services/user_list_service_client.py create mode 100644 google/ads/google_ads/v0/services/user_list_service_client_config.py diff --git a/ChangeLog b/ChangeLog index 5218556e2..1cba12328 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +* 0.5.0: +- Google Ads v0_6 release. +- Updating add_campaign_targeting_criteria.py example to add + create proximity operation +- Updating apply_recommendation.py example to pass required parameter + partial_failure=False +- Updating get_geo_target_constant_by_names.py example to add + new required country_code parameter +- Updating client.py to accept a login_customer_id +- Fixing bug in ExceptionInterceptor to improve error logging. Resolves GitHub + issue #8: https://github.com/googleads/google-ads-python/issues/8 + * 0.4.0: - Google Ads v0_5 release. - Adding remarketing/add_conversion_action.py example. diff --git a/README.rst b/README.rst index 24182f4c0..a4a6318fb 100644 --- a/README.rst +++ b/README.rst @@ -32,9 +32,10 @@ Configuration file setup ######################## To authenticate your API calls, you must specify your **client ID**, -**client secret**, **refresh token**, and **developer token**. If you have not -yet created a client ID, see the `Authorization guide`_ and the -`authentication samples`_ to get started. Likewise, see +**client secret**, **refresh token**, **developer token**, and, if +you are authenticating with a manager account, a **login customer id**. +If you have not yet created a client ID, see the `Authorization guide`_ +and the `authentication samples`_ to get started. Likewise, see `Obtain your developer token`_ if you do not yet have one. When initializing a `GoogleAdsClient` instance via the `load_from_storage` diff --git a/examples/v0/recommendations/apply_recommendation.py b/examples/v0/recommendations/apply_recommendation.py index d9d47be21..3a4b290af 100644 --- a/examples/v0/recommendations/apply_recommendation.py +++ b/examples/v0/recommendations/apply_recommendation.py @@ -27,6 +27,7 @@ def main(client, customer_id, recommendation_id): recommendation_service = client.get_service('RecommendationService') + partial_failure = False apply_recommendation_operation = client.get_type( 'ApplyRecommendationOperation') @@ -37,7 +38,9 @@ def main(client, customer_id, recommendation_id): try: recommendation_response = recommendation_service.apply_recommendation( - customer_id, [apply_recommendation_operation]) + customer_id, + partial_failure, + [apply_recommendation_operation]) except google.ads.google_ads.errors.GoogleAdsException as ex: print('Request with ID "%s" failed with status "%s" and includes the ' 'following errors:' % (ex.request_id, ex.error.code().name)) diff --git a/examples/v0/targeting/add_campaign_targeting_criteria.py b/examples/v0/targeting/add_campaign_targeting_criteria.py index 8b014714f..ff7fe5e61 100644 --- a/examples/v0/targeting/add_campaign_targeting_criteria.py +++ b/examples/v0/targeting/add_campaign_targeting_criteria.py @@ -27,7 +27,8 @@ def main(client, customer_id, campaign_id, keyword, location_id): operations = [ create_location_op(client, customer_id, campaign_id, location_id), - create_negative_keyword_op(client, customer_id, campaign_id, keyword) + create_negative_keyword_op(client, customer_id, campaign_id, keyword), + create_proximity_op(client, customer_id, campaign_id) ] try: @@ -84,6 +85,26 @@ def create_negative_keyword_op(client, customer_id, campaign_id, keyword): return campaign_criterion_operation +def create_proximity_op(client, customer_id, campaign_id): + campaign_service = client.get_service('CampaignService') + + # Create the campaign criterion. + campaign_criterion_operation = client.get_type('CampaignCriterionOperation') + campaign_criterion = campaign_criterion_operation.create + campaign_criterion.campaign.value = campaign_service.campaign_path( + customer_id, campaign_id) + campaign_criterion.proximity.address.street_address.value = '38 avenue de l\'Opera' + campaign_criterion.proximity.address.city_name.value = 'Paris' + campaign_criterion.proximity.address.postal_code.value = '75002' + campaign_criterion.proximity.address.country_code.value = 'FR' + campaign_criterion.proximity.radius.value = 10 + # Default is kilometers. + campaign_criterion.proximity.radius_units = client.get_type( + 'ProximityRadiusUnitsEnum').MILES + + return campaign_criterion_operation + + if __name__ == '__main__': # GoogleAdsClient will read the google-ads.yaml configuration file in the # home directory if none is specified. diff --git a/examples/v0/targeting/get_geo_target_constant_by_names.py b/examples/v0/targeting/get_geo_target_constant_by_names.py index 6d6394c1d..4aed856e2 100644 --- a/examples/v0/targeting/get_geo_target_constant_by_names.py +++ b/examples/v0/targeting/get_geo_target_constant_by_names.py @@ -36,8 +36,13 @@ def main(client): locale = client.get_type('StringValue') locale.value = 'en' + # A list of country codes can be referenced here: + # https://developers.google.com/adwords/api/docs/appendix/geotargeting + country_code = client.get_type('StringValue') + country_code.value = 'FR' + results = gtc_service.suggest_geo_target_constants( - locale, location_names=location_names) + locale, country_code, location_names=location_names) geo_target_constant_status_enum = client.get_type( 'GeoTargetConstantStatusEnum').GeoTargetConstantStatus diff --git a/google-ads.yaml b/google-ads.yaml index b1f0d8c5d..103fcbf3a 100644 --- a/google-ads.yaml +++ b/google-ads.yaml @@ -2,3 +2,9 @@ developer_token: INSERT_DEVELOPER_TOKEN_HERE client_id: INSERT_OAUTH2_CLIENT_ID_HERE client_secret: INSERT_OAUTH2_CLIENT_SECRET_HERE refresh_token: INSERT_REFRESH_TOKEN_HERE +# Required for manager accounts only: Specify the login customer ID used to +# authenticate API calls. This will be the customer ID of the authenticated +# manager account. It should be set without dashes, for example: 1234567890 +# instead of 123-456-7890. You can also specify this later in code if your +# application uses multiple manager account + OAuth pairs. +login_customer_id: INSERT_LOGIN_CUSTOMER_ID_HERE diff --git a/google/ads/google_ads/client.py b/google/ads/google_ads/client.py index e62c585aa..517725852 100644 --- a/google/ads/google_ads/client.py +++ b/google/ads/google_ads/client.py @@ -64,9 +64,14 @@ def _get_client_kwargs_from_yaml(cls, yaml_str): token_uri=_DEFAULT_TOKEN_URI) credentials.refresh(google.auth.transport.requests.Request()) + login_customer_id = config_data.get('login_customer_id') + login_customer_id = str( + login_customer_id) if login_customer_id else None + return {'credentials': credentials, 'developer_token': config_data['developer_token'], - 'endpoint': config_data.get('endpoint')} + 'endpoint': config_data.get('endpoint'), + 'login_customer_id': login_customer_id} else: raise ValueError('A required field in the configuration data was' 'not found. The required fields are: %s' @@ -142,17 +147,22 @@ def load_from_storage(cls, path=None): return cls.load_from_string(yaml_str) - def __init__(self, credentials, developer_token, endpoint=None): + def __init__(self, credentials, developer_token, endpoint=None, + login_customer_id=None): """Initializer for the GoogleAdsClient. Args: credentials: a google.oauth2.credentials.Credentials instance. developer_token: a str developer token. endpoint: a str specifying an optional alternative API endpoint. + login_customer_id: a str specifying a login customer ID. """ + _validate_login_customer_id(login_customer_id) + self.credentials = credentials self.developer_token = developer_token self.endpoint = endpoint + self.login_customer_id = login_customer_id def get_service(self, name, version=_DEFAULT_VERSION): """Returns a service client instance for the specified service_name. @@ -192,7 +202,7 @@ def get_service(self, name, version=_DEFAULT_VERSION): channel = grpc.intercept_channel( channel, - MetadataInterceptor(self.developer_token), + MetadataInterceptor(self.developer_token, self.login_customer_id), ExceptionInterceptor(), ) @@ -247,32 +257,64 @@ def _get_request_id(self, trailing_metadata): return None + def _handle_grpc_exception(self, exception): + """Handles gRPC exceptions of type RpcError by attempting to + convert them to a more readable GoogleAdsException. Certain types of + exceptions are not converted; if the object's trailing metadata does + not indicate that it is a GoogleAdsException, or if it falls under + a certain category of status code, (INTERNAL or RESOURCE_EXHAUSTED). + See documentation for more information about gRPC status codes: + https://github.com/grpc/grpc/blob/master/doc/statuscodes.md - - def intercept_unary_unary(self, continuation, client_call_details, request): - """Intercepts and wraps exceptions in the rpc response. - - Overrides abstract method defined in grpc.UnaryUnaryClientInterceptor. + Args: + exception: an exception of type RpcError. Raises: - GoogleAdsException: if the Google Ads API response contains an - exception and GoogleAdsFailure is in the trailing metadata. + GoogleAdsException: If the exception's trailing metadata + indicates that it is a GoogleAdsException. + RpcError: If the exception's trailing metadata is empty or is not + indicative of a GoogleAdsException, or if the exception has a + status code of INTERNAL or RESOURCE_EXHAUSTED. """ - response = continuation(client_call_details, request) - ex = response.exception() - - if ex and response._state.code not in self._RETRY_STATUS_CODES: - trailing_metadata = response.trailing_metadata() - google_ads_failure = self._get_google_ads_failure(trailing_metadata) + if exception._state.code not in self._RETRY_STATUS_CODES: + trailing_metadata = exception.trailing_metadata() + google_ads_failure = self._get_google_ads_failure( + trailing_metadata) if google_ads_failure: request_id = self._get_request_id(trailing_metadata) raise google.ads.google_ads.errors.GoogleAdsException( - ex, response, google_ads_failure, request_id) + exception, exception, google_ads_failure, request_id) else: # Raise the original exception if not a GoogleAdsFailure. - raise ex + raise exception + else: + # Raise the original exception if error has status code + # INTERNAL or RESOURCE_EXHAUSTED. + raise exception + + def intercept_unary_unary(self, continuation, client_call_details, request): + """Intercepts and wraps exceptions in the rpc response. + + Overrides abstract method defined in grpc.UnaryUnaryClientInterceptor. + + Raises: + GoogleAdsException: If the exception's trailing metadata + indicates that it is a GoogleAdsException. + RpcError: If the exception's trailing metadata is empty or is not + indicative of a GoogleAdsException, or if the exception has a + status code of INTERNAL or RESOURCE_EXHAUSTED. + """ + try: + response = continuation(client_call_details, request) + except grpc.RpcError as ex: + self._handle_grpc_exception(ex) + + if response.exception(): + # Any exception raised within the continuation function that is not + # an RpcError will be set on the response object and raised here. + raise response.exception() return response @@ -298,8 +340,11 @@ def intercept_unary_unary(self, continuation, client_call_details, request): class MetadataInterceptor(grpc.UnaryUnaryClientInterceptor): """An interceptor that appends custom metadata to requests.""" - def __init__(self, developer_token): + def __init__(self, developer_token, login_customer_id): self.developer_token_meta = ('developer-token', developer_token) + self.login_customer_id_meta = ( + ('login-customer-id', login_customer_id) if login_customer_id + else None) def intercept_unary_unary(self, continuation, client_call_details, request): """Intercepts and appends custom metadata. @@ -313,6 +358,9 @@ def intercept_unary_unary(self, continuation, client_call_details, request): metadata.append(self.developer_token_meta) + if self.login_customer_id_meta: + metadata.append(self.login_customer_id_meta) + client_call_details = grpc._interceptor._ClientCallDetails( client_call_details.method, client_call_details.timeout, metadata, client_call_details.credentials @@ -336,3 +384,20 @@ def _get_version(name): raise ValueError('Specified Google Ads API version "%s" does not exist.' % name) return version + + +def _validate_login_customer_id(login_customer_id): + """Validates a login customer ID. + + Args: + login_customer_id: a str from config indicating a login customer ID. + + Raises: + ValueError: If the login customer ID is not + an int in the range 0 - 9999999999. + """ + if login_customer_id is not None: + if not login_customer_id.isdigit() or len(login_customer_id) != 10: + raise ValueError('The specified login customer ID is invalid. ' + 'It must be a ten digit number represented ' + 'as a string, i.e. "1234567890"') diff --git a/google/ads/google_ads/v0/__init__.py b/google/ads/google_ads/v0/__init__.py index 569a2320b..8c833d000 100644 --- a/google/ads/google_ads/v0/__init__.py +++ b/google/ads/google_ads/v0/__init__.py @@ -21,38 +21,59 @@ from google.ads.google_ads.v0.services import ad_group_audience_view_service_client from google.ads.google_ads.v0.services import ad_group_bid_modifier_service_client from google.ads.google_ads.v0.services import ad_group_criterion_service_client +from google.ads.google_ads.v0.services import ad_group_feed_service_client from google.ads.google_ads.v0.services import ad_group_service_client from google.ads.google_ads.v0.services import age_range_view_service_client from google.ads.google_ads.v0.services import bidding_strategy_service_client from google.ads.google_ads.v0.services import billing_setup_service_client +from google.ads.google_ads.v0.services import campaign_audience_view_service_client from google.ads.google_ads.v0.services import campaign_bid_modifier_service_client from google.ads.google_ads.v0.services import campaign_budget_service_client from google.ads.google_ads.v0.services import campaign_criterion_service_client +from google.ads.google_ads.v0.services import campaign_feed_service_client from google.ads.google_ads.v0.services import campaign_group_service_client from google.ads.google_ads.v0.services import campaign_service_client from google.ads.google_ads.v0.services import campaign_shared_set_service_client +from google.ads.google_ads.v0.services import carrier_constant_service_client from google.ads.google_ads.v0.services import change_status_service_client from google.ads.google_ads.v0.services import conversion_action_service_client from google.ads.google_ads.v0.services import customer_client_link_service_client +from google.ads.google_ads.v0.services import customer_client_service_client +from google.ads.google_ads.v0.services import customer_feed_service_client from google.ads.google_ads.v0.services import customer_manager_link_service_client from google.ads.google_ads.v0.services import customer_service_client from google.ads.google_ads.v0.services import display_keyword_view_service_client from google.ads.google_ads.v0.services import enums +from google.ads.google_ads.v0.services import feed_item_service_client +from google.ads.google_ads.v0.services import feed_mapping_service_client +from google.ads.google_ads.v0.services import feed_service_client from google.ads.google_ads.v0.services import gender_view_service_client from google.ads.google_ads.v0.services import geo_target_constant_service_client from google.ads.google_ads.v0.services import google_ads_field_service_client from google.ads.google_ads.v0.services import google_ads_service_client from google.ads.google_ads.v0.services import hotel_group_view_service_client +from google.ads.google_ads.v0.services import hotel_performance_view_service_client +from google.ads.google_ads.v0.services import keyword_plan_ad_group_service_client +from google.ads.google_ads.v0.services import keyword_plan_campaign_service_client +from google.ads.google_ads.v0.services import keyword_plan_idea_service_client +from google.ads.google_ads.v0.services import keyword_plan_keyword_service_client +from google.ads.google_ads.v0.services import keyword_plan_negative_keyword_service_client +from google.ads.google_ads.v0.services import keyword_plan_service_client from google.ads.google_ads.v0.services import keyword_view_service_client +from google.ads.google_ads.v0.services import language_constant_service_client from google.ads.google_ads.v0.services import managed_placement_view_service_client from google.ads.google_ads.v0.services import media_file_service_client from google.ads.google_ads.v0.services import parental_status_view_service_client +from google.ads.google_ads.v0.services import payments_account_service_client from google.ads.google_ads.v0.services import product_group_view_service_client from google.ads.google_ads.v0.services import recommendation_service_client +from google.ads.google_ads.v0.services import search_term_view_service_client from google.ads.google_ads.v0.services import shared_criterion_service_client from google.ads.google_ads.v0.services import shared_set_service_client from google.ads.google_ads.v0.services import topic_constant_service_client from google.ads.google_ads.v0.services import topic_view_service_client +from google.ads.google_ads.v0.services import user_list_service_client +from google.ads.google_ads.v0.services import user_interest_service_client from google.ads.google_ads.v0.services import video_service_client from google.ads.google_ads.v0.services.transports import account_budget_proposal_service_grpc_transport from google.ads.google_ads.v0.services.transports import account_budget_service_grpc_transport @@ -60,104 +81,102 @@ from google.ads.google_ads.v0.services.transports import ad_group_audience_view_service_grpc_transport from google.ads.google_ads.v0.services.transports import ad_group_bid_modifier_service_grpc_transport from google.ads.google_ads.v0.services.transports import ad_group_criterion_service_grpc_transport +from google.ads.google_ads.v0.services.transports import ad_group_feed_service_grpc_transport from google.ads.google_ads.v0.services.transports import ad_group_service_grpc_transport from google.ads.google_ads.v0.services.transports import age_range_view_service_grpc_transport from google.ads.google_ads.v0.services.transports import bidding_strategy_service_grpc_transport from google.ads.google_ads.v0.services.transports import billing_setup_service_grpc_transport +from google.ads.google_ads.v0.services.transports import campaign_audience_view_service_grpc_transport from google.ads.google_ads.v0.services.transports import campaign_bid_modifier_service_grpc_transport from google.ads.google_ads.v0.services.transports import campaign_budget_service_grpc_transport from google.ads.google_ads.v0.services.transports import campaign_criterion_service_grpc_transport +from google.ads.google_ads.v0.services.transports import campaign_feed_service_grpc_transport from google.ads.google_ads.v0.services.transports import campaign_group_service_grpc_transport from google.ads.google_ads.v0.services.transports import campaign_service_grpc_transport from google.ads.google_ads.v0.services.transports import campaign_shared_set_service_grpc_transport +from google.ads.google_ads.v0.services.transports import carrier_constant_service_grpc_transport from google.ads.google_ads.v0.services.transports import change_status_service_grpc_transport from google.ads.google_ads.v0.services.transports import conversion_action_service_grpc_transport from google.ads.google_ads.v0.services.transports import customer_client_link_service_grpc_transport +from google.ads.google_ads.v0.services.transports import customer_client_service_grpc_transport +from google.ads.google_ads.v0.services.transports import customer_feed_service_grpc_transport from google.ads.google_ads.v0.services.transports import customer_manager_link_service_grpc_transport from google.ads.google_ads.v0.services.transports import customer_service_grpc_transport from google.ads.google_ads.v0.services.transports import display_keyword_view_service_grpc_transport +from google.ads.google_ads.v0.services.transports import feed_item_service_grpc_transport +from google.ads.google_ads.v0.services.transports import feed_mapping_service_grpc_transport +from google.ads.google_ads.v0.services.transports import feed_service_grpc_transport from google.ads.google_ads.v0.services.transports import gender_view_service_grpc_transport from google.ads.google_ads.v0.services.transports import geo_target_constant_service_grpc_transport from google.ads.google_ads.v0.services.transports import google_ads_field_service_grpc_transport from google.ads.google_ads.v0.services.transports import google_ads_service_grpc_transport from google.ads.google_ads.v0.services.transports import hotel_group_view_service_grpc_transport +from google.ads.google_ads.v0.services.transports import hotel_performance_view_service_grpc_transport +from google.ads.google_ads.v0.services.transports import keyword_plan_ad_group_service_grpc_transport +from google.ads.google_ads.v0.services.transports import keyword_plan_campaign_service_grpc_transport +from google.ads.google_ads.v0.services.transports import keyword_plan_idea_service_grpc_transport +from google.ads.google_ads.v0.services.transports import keyword_plan_keyword_service_grpc_transport +from google.ads.google_ads.v0.services.transports import keyword_plan_negative_keyword_service_grpc_transport +from google.ads.google_ads.v0.services.transports import keyword_plan_service_grpc_transport from google.ads.google_ads.v0.services.transports import keyword_view_service_grpc_transport +from google.ads.google_ads.v0.services.transports import language_constant_service_grpc_transport from google.ads.google_ads.v0.services.transports import managed_placement_view_service_grpc_transport from google.ads.google_ads.v0.services.transports import media_file_service_grpc_transport from google.ads.google_ads.v0.services.transports import parental_status_view_service_grpc_transport +from google.ads.google_ads.v0.services.transports import payments_account_service_grpc_transport from google.ads.google_ads.v0.services.transports import product_group_view_service_grpc_transport from google.ads.google_ads.v0.services.transports import recommendation_service_grpc_transport +from google.ads.google_ads.v0.services.transports import search_term_view_service_grpc_transport from google.ads.google_ads.v0.services.transports import shared_criterion_service_grpc_transport from google.ads.google_ads.v0.services.transports import shared_set_service_grpc_transport from google.ads.google_ads.v0.services.transports import topic_constant_service_grpc_transport from google.ads.google_ads.v0.services.transports import topic_view_service_grpc_transport +from google.ads.google_ads.v0.services.transports import user_list_service_grpc_transport +from google.ads.google_ads.v0.services.transports import user_interest_service_grpc_transport from google.ads.google_ads.v0.services.transports import video_service_grpc_transport class AccountBudgetProposalServiceClient( - account_budget_proposal_service_client.AccountBudgetProposalServiceClient): + account_budget_proposal_service_client. + AccountBudgetProposalServiceClient): __doc__ = account_budget_proposal_service_client.AccountBudgetProposalServiceClient.__doc__ enums = enums -class AccountBudgetProposalServiceGrpcTransport( - account_budget_proposal_service_grpc_transport.AccountBudgetProposalServiceGrpcTransport): - __doc__ = account_budget_proposal_service_grpc_transport.AccountBudgetProposalServiceGrpcTransport.__doc__ - - class AccountBudgetServiceClient( - account_budget_service_client.AccountBudgetServiceClient): + account_budget_service_client.AccountBudgetServiceClient): __doc__ = account_budget_service_client.AccountBudgetServiceClient.__doc__ enums = enums -class AccountBudgetServiceGrpcTransport( - account_budget_service_grpc_transport.AccountBudgetServiceGrpcTransport): - __doc__ = account_budget_service_grpc_transport.AccountBudgetServiceGrpcTransport.__doc__ - - class AdGroupAdServiceClient( - ad_group_ad_service_client.AdGroupAdServiceClient): + ad_group_ad_service_client.AdGroupAdServiceClient): __doc__ = ad_group_ad_service_client.AdGroupAdServiceClient.__doc__ enums = enums -class AdGroupAdServiceGrpcTransport( - ad_group_ad_service_grpc_transport.AdGroupAdServiceGrpcTransport): - __doc__ = ad_group_ad_service_grpc_transport.AdGroupAdServiceGrpcTransport.__doc__ - - class AdGroupAudienceViewServiceClient( - ad_group_audience_view_service_client.AdGroupAudienceViewServiceClient): + ad_group_audience_view_service_client.AdGroupAudienceViewServiceClient): __doc__ = ad_group_audience_view_service_client.AdGroupAudienceViewServiceClient.__doc__ enums = enums -class AdGroupAudienceViewServiceGrpcTransport( - ad_group_audience_view_service_grpc_transport.AdGroupAudienceViewServiceGrpcTransport): - __doc__ = ad_group_audience_view_service_grpc_transport.AdGroupAudienceViewServiceGrpcTransport.__doc__ - - class AdGroupBidModifierServiceClient( - ad_group_bid_modifier_service_client.AdGroupBidModifierServiceClient): + ad_group_bid_modifier_service_client.AdGroupBidModifierServiceClient): __doc__ = ad_group_bid_modifier_service_client.AdGroupBidModifierServiceClient.__doc__ enums = enums -class AdGroupBidModifierServiceGrpcTransport( - ad_group_bid_modifier_service_grpc_transport.AdGroupBidModifierServiceGrpcTransport): - __doc__ = ad_group_bid_modifier_service_grpc_transport.AdGroupBidModifierServiceGrpcTransport.__doc__ - - class AdGroupCriterionServiceClient( - ad_group_criterion_service_client.AdGroupCriterionServiceClient): + ad_group_criterion_service_client.AdGroupCriterionServiceClient): __doc__ = ad_group_criterion_service_client.AdGroupCriterionServiceClient.__doc__ enums = enums -class AdGroupCriterionServiceGrpcTransport( - ad_group_criterion_service_grpc_transport.AdGroupCriterionServiceGrpcTransport): - __doc__ = ad_group_criterion_service_grpc_transport.AdGroupCriterionServiceGrpcTransport.__doc__ +class AdGroupFeedServiceClient( + ad_group_feed_service_client.AdGroupFeedServiceClient): + __doc__ = ad_group_feed_service_client.AdGroupFeedServiceClient.__doc__ + enums = enums class AdGroupServiceClient(ad_group_service_client.AdGroupServiceClient): @@ -165,112 +184,402 @@ class AdGroupServiceClient(ad_group_service_client.AdGroupServiceClient): enums = enums -class AdGroupServiceGrpcTransport( - ad_group_service_grpc_transport.AdGroupServiceGrpcTransport): - __doc__ = ad_group_service_grpc_transport.AdGroupServiceGrpcTransport.__doc__ - - class AgeRangeViewServiceClient( - age_range_view_service_client.AgeRangeViewServiceClient): + age_range_view_service_client.AgeRangeViewServiceClient): __doc__ = age_range_view_service_client.AgeRangeViewServiceClient.__doc__ enums = enums -class AgeRangeViewServiceGrpcTransport( - age_range_view_service_grpc_transport.AgeRangeViewServiceGrpcTransport): - __doc__ = age_range_view_service_grpc_transport.AgeRangeViewServiceGrpcTransport.__doc__ - - class BiddingStrategyServiceClient( - bidding_strategy_service_client.BiddingStrategyServiceClient): + bidding_strategy_service_client.BiddingStrategyServiceClient): __doc__ = bidding_strategy_service_client.BiddingStrategyServiceClient.__doc__ enums = enums -class BiddingStrategyServiceGrpcTransport( - bidding_strategy_service_grpc_transport.BiddingStrategyServiceGrpcTransport): - __doc__ = bidding_strategy_service_grpc_transport.BiddingStrategyServiceGrpcTransport.__doc__ - - class BillingSetupServiceClient( - billing_setup_service_client.BillingSetupServiceClient): + billing_setup_service_client.BillingSetupServiceClient): __doc__ = billing_setup_service_client.BillingSetupServiceClient.__doc__ enums = enums -class BillingSetupServiceGrpcTransport( - billing_setup_service_grpc_transport.BillingSetupServiceGrpcTransport): - __doc__ = billing_setup_service_grpc_transport.BillingSetupServiceGrpcTransport.__doc__ +class CampaignAudienceViewServiceClient( + campaign_audience_view_service_client.CampaignAudienceViewServiceClient): + __doc__ = campaign_audience_view_service_client.CampaignAudienceViewServiceClient.__doc__ + enums = enums class CampaignBidModifierServiceClient( - campaign_bid_modifier_service_client.CampaignBidModifierServiceClient): + campaign_bid_modifier_service_client.CampaignBidModifierServiceClient): __doc__ = campaign_bid_modifier_service_client.CampaignBidModifierServiceClient.__doc__ enums = enums -class CampaignBidModifierServiceGrpcTransport( - campaign_bid_modifier_service_grpc_transport.CampaignBidModifierServiceGrpcTransport): - __doc__ = campaign_bid_modifier_service_grpc_transport.CampaignBidModifierServiceGrpcTransport.__doc__ - - class CampaignBudgetServiceClient( - campaign_budget_service_client.CampaignBudgetServiceClient): + campaign_budget_service_client.CampaignBudgetServiceClient): __doc__ = campaign_budget_service_client.CampaignBudgetServiceClient.__doc__ enums = enums -class CampaignBudgetServiceGrpcTransport( - campaign_budget_service_grpc_transport.CampaignBudgetServiceGrpcTransport): - __doc__ = campaign_budget_service_grpc_transport.CampaignBudgetServiceGrpcTransport.__doc__ - - class CampaignCriterionServiceClient( - campaign_criterion_service_client.CampaignCriterionServiceClient): + campaign_criterion_service_client.CampaignCriterionServiceClient): __doc__ = campaign_criterion_service_client.CampaignCriterionServiceClient.__doc__ enums = enums -class CampaignCriterionServiceGrpcTransport( - campaign_criterion_service_grpc_transport.CampaignCriterionServiceGrpcTransport): - __doc__ = campaign_criterion_service_grpc_transport.CampaignCriterionServiceGrpcTransport.__doc__ +class CampaignFeedServiceClient( + campaign_feed_service_client.CampaignFeedServiceClient): + __doc__ = campaign_feed_service_client.CampaignFeedServiceClient.__doc__ + enums = enums class CampaignGroupServiceClient( - campaign_group_service_client.CampaignGroupServiceClient): + campaign_group_service_client.CampaignGroupServiceClient): __doc__ = campaign_group_service_client.CampaignGroupServiceClient.__doc__ enums = enums -class CampaignGroupServiceGrpcTransport( - campaign_group_service_grpc_transport.CampaignGroupServiceGrpcTransport): - __doc__ = campaign_group_service_grpc_transport.CampaignGroupServiceGrpcTransport.__doc__ - - class CampaignServiceClient(campaign_service_client.CampaignServiceClient): __doc__ = campaign_service_client.CampaignServiceClient.__doc__ enums = enums -class CampaignServiceGrpcTransport( - campaign_service_grpc_transport.CampaignServiceGrpcTransport): - __doc__ = campaign_service_grpc_transport.CampaignServiceGrpcTransport.__doc__ +class CampaignSharedSetServiceClient( + campaign_shared_set_service_client.CampaignSharedSetServiceClient): + __doc__ = campaign_shared_set_service_client.CampaignSharedSetServiceClient.__doc__ + enums = enums -class CampaignSharedSetServiceClient(campaign_shared_set_service_client.CampaignSharedSetServiceClient): - __doc__ = campaign_shared_set_service_client.CampaignSharedSetServiceClient.__doc__ +class CarrierConstantServiceClient( + carrier_constant_service_client.CarrierConstantServiceClient): + __doc__ = carrier_constant_service_client.CarrierConstantServiceClient.__doc__ + enums = enums + + +class ChangeStatusServiceClient( + change_status_service_client.ChangeStatusServiceClient): + __doc__ = change_status_service_client.ChangeStatusServiceClient.__doc__ + enums = enums + + +class ConversionActionServiceClient( + conversion_action_service_client.ConversionActionServiceClient): + __doc__ = conversion_action_service_client.ConversionActionServiceClient.__doc__ + enums = enums + + +class CustomerClientLinkServiceClient( + customer_client_link_service_client.CustomerClientLinkServiceClient): + __doc__ = customer_client_link_service_client.CustomerClientLinkServiceClient.__doc__ + enums = enums + + +class CustomerClientServiceClient( + customer_client_service_client.CustomerClientServiceClient): + __doc__ = customer_client_service_client.CustomerClientServiceClient.__doc__ + enums = enums + + +class CustomerFeedServiceClient( + customer_feed_service_client.CustomerFeedServiceClient): + __doc__ = customer_feed_service_client.CustomerFeedServiceClient.__doc__ + enums = enums + + +class CustomerManagerLinkServiceClient( + customer_manager_link_service_client.CustomerManagerLinkServiceClient): + __doc__ = customer_manager_link_service_client.CustomerManagerLinkServiceClient.__doc__ + enums = enums + + +class CustomerServiceClient(customer_service_client.CustomerServiceClient): + __doc__ = customer_service_client.CustomerServiceClient.__doc__ + enums = enums + + +class DisplayKeywordViewServiceClient( + display_keyword_view_service_client.DisplayKeywordViewServiceClient): + __doc__ = display_keyword_view_service_client.DisplayKeywordViewServiceClient.__doc__ + enums = enums + + +class FeedItemServiceClient(feed_item_service_client.FeedItemServiceClient): + __doc__ = feed_item_service_client.FeedItemServiceClient.__doc__ + enums = enums + + +class FeedMappingServiceClient( + feed_mapping_service_client.FeedMappingServiceClient): + __doc__ = feed_mapping_service_client.FeedMappingServiceClient.__doc__ + enums = enums + + +class FeedServiceClient(feed_service_client.FeedServiceClient): + __doc__ = feed_service_client.FeedServiceClient.__doc__ + enums = enums + + +class GenderViewServiceClient( + gender_view_service_client.GenderViewServiceClient): + __doc__ = gender_view_service_client.GenderViewServiceClient.__doc__ + enums = enums + + +class GeoTargetConstantServiceClient( + geo_target_constant_service_client.GeoTargetConstantServiceClient): + __doc__ = geo_target_constant_service_client.GeoTargetConstantServiceClient.__doc__ + enums = enums + + +class GoogleAdsFieldServiceClient( + google_ads_field_service_client.GoogleAdsFieldServiceClient): + __doc__ = google_ads_field_service_client.GoogleAdsFieldServiceClient.__doc__ + enums = enums + + +class GoogleAdsServiceClient(google_ads_service_client.GoogleAdsServiceClient): + __doc__ = google_ads_service_client.GoogleAdsServiceClient.__doc__ + enums = enums + + +class HotelGroupViewServiceClient( + hotel_group_view_service_client.HotelGroupViewServiceClient): + __doc__ = hotel_group_view_service_client.HotelGroupViewServiceClient.__doc__ + enums = enums + + +class HotelPerformanceViewServiceClient( + hotel_performance_view_service_client.HotelPerformanceViewServiceClient +): + __doc__ = hotel_performance_view_service_client.HotelPerformanceViewServiceClient.__doc__ + enums = enums + + +class KeywordPlanAdGroupServiceClient( + keyword_plan_ad_group_service_client.KeywordPlanAdGroupServiceClient): + __doc__ = keyword_plan_ad_group_service_client.KeywordPlanAdGroupServiceClient.__doc__ + enums = enums + + +class KeywordPlanCampaignServiceClient( + keyword_plan_campaign_service_client.KeywordPlanCampaignServiceClient): + __doc__ = keyword_plan_campaign_service_client.KeywordPlanCampaignServiceClient.__doc__ + enums = enums + + +class KeywordPlanIdeaServiceClient( + keyword_plan_idea_service_client.KeywordPlanIdeaServiceClient): + __doc__ = keyword_plan_idea_service_client.KeywordPlanIdeaServiceClient.__doc__ + enums = enums + + +class KeywordPlanKeywordServiceClient( + keyword_plan_keyword_service_client.KeywordPlanKeywordServiceClient): + __doc__ = keyword_plan_keyword_service_client.KeywordPlanKeywordServiceClient.__doc__ + enums = enums + + +class KeywordPlanNegativeKeywordServiceClient( + keyword_plan_negative_keyword_service_client. + KeywordPlanNegativeKeywordServiceClient): + __doc__ = keyword_plan_negative_keyword_service_client.KeywordPlanNegativeKeywordServiceClient.__doc__ + enums = enums + + +class KeywordPlanServiceClient( + keyword_plan_service_client.KeywordPlanServiceClient): + __doc__ = keyword_plan_service_client.KeywordPlanServiceClient.__doc__ + enums = enums + + +class KeywordViewServiceClient( + keyword_view_service_client.KeywordViewServiceClient): + __doc__ = keyword_view_service_client.KeywordViewServiceClient.__doc__ + enums = enums + + +class LanguageConstantServiceClient( + language_constant_service_client.LanguageConstantServiceClient): + __doc__ = language_constant_service_client.LanguageConstantServiceClient.__doc__ + enums = enums + + +class ManagedPlacementViewServiceClient( + managed_placement_view_service_client.ManagedPlacementViewServiceClient): + __doc__ = managed_placement_view_service_client.ManagedPlacementViewServiceClient.__doc__ + enums = enums + + +class MediaFileServiceClient(media_file_service_client.MediaFileServiceClient): + __doc__ = media_file_service_client.MediaFileServiceClient.__doc__ + enums = enums + + +class ParentalStatusViewServiceClient( + parental_status_view_service_client.ParentalStatusViewServiceClient): + __doc__ = parental_status_view_service_client.ParentalStatusViewServiceClient.__doc__ + enums = enums + + +class PaymentsAccountServiceClient( + payments_account_service_client.PaymentsAccountServiceClient): + __doc__ = payments_account_service_client.PaymentsAccountServiceClient.__doc__ + enums = enums + + +class ProductGroupViewServiceClient( + product_group_view_service_client.ProductGroupViewServiceClient): + __doc__ = product_group_view_service_client.ProductGroupViewServiceClient.__doc__ + enums = enums + + +class RecommendationServiceClient( + recommendation_service_client.RecommendationServiceClient): + __doc__ = recommendation_service_client.RecommendationServiceClient.__doc__ + enums = enums + + +class SearchTermViewServiceClient( + search_term_view_service_client.SearchTermViewServiceClient): + __doc__ = search_term_view_service_client.SearchTermViewServiceClient.__doc__ + enums = enums + + +class SharedCriterionServiceClient( + shared_criterion_service_client.SharedCriterionServiceClient): + __doc__ = shared_criterion_service_client.SharedCriterionServiceClient.__doc__ + enums = enums + + +class SharedSetServiceClient(shared_set_service_client.SharedSetServiceClient): + __doc__ = shared_set_service_client.SharedSetServiceClient.__doc__ + enums = enums + + +class TopicConstantServiceClient( + topic_constant_service_client.TopicConstantServiceClient): + __doc__ = topic_constant_service_client.TopicConstantServiceClient.__doc__ + enums = enums + + +class TopicViewServiceClient(topic_view_service_client.TopicViewServiceClient): + __doc__ = topic_view_service_client.TopicViewServiceClient.__doc__ enums = enums +class UserListServiceClient(user_list_service_client.UserListServiceClient): + __doc__ = user_list_service_client.UserListServiceClient.__doc__ + enums = enums + + +class UserInterestServiceClient( + user_interest_service_client.UserInterestServiceClient): + __doc__ = user_interest_service_client.UserInterestServiceClient.__doc__ + enums = enums + + +class VideoServiceClient(video_service_client.VideoServiceClient): + __doc__ = video_service_client.VideoServiceClient.__doc__ + enums = enums + + +class AccountBudgetProposalServiceGrpcTransport( + account_budget_proposal_service_grpc_transport.AccountBudgetProposalServiceGrpcTransport): + __doc__ = account_budget_proposal_service_grpc_transport.AccountBudgetProposalServiceGrpcTransport.__doc__ + + +class AccountBudgetServiceGrpcTransport( + account_budget_service_grpc_transport.AccountBudgetServiceGrpcTransport): + __doc__ = account_budget_service_grpc_transport.AccountBudgetServiceGrpcTransport.__doc__ + + +class AdGroupAdServiceGrpcTransport( + ad_group_ad_service_grpc_transport.AdGroupAdServiceGrpcTransport): + __doc__ = ad_group_ad_service_grpc_transport.AdGroupAdServiceGrpcTransport.__doc__ + + +class AdGroupAudienceViewServiceGrpcTransport( + ad_group_audience_view_service_grpc_transport.AdGroupAudienceViewServiceGrpcTransport): + __doc__ = ad_group_audience_view_service_grpc_transport.AdGroupAudienceViewServiceGrpcTransport.__doc__ + + +class AdGroupBidModifierServiceGrpcTransport( + ad_group_bid_modifier_service_grpc_transport.AdGroupBidModifierServiceGrpcTransport): + __doc__ = ad_group_bid_modifier_service_grpc_transport.AdGroupBidModifierServiceGrpcTransport.__doc__ + + +class AdGroupCriterionServiceGrpcTransport( + ad_group_criterion_service_grpc_transport.AdGroupCriterionServiceGrpcTransport): + __doc__ = ad_group_criterion_service_grpc_transport.AdGroupCriterionServiceGrpcTransport.__doc__ + + +class AdGroupFeedServiceGrpcTransport( + ad_group_feed_service_grpc_transport.AdGroupFeedServiceGrpcTransport): + __doc__ = ad_group_feed_service_grpc_transport.AdGroupFeedServiceGrpcTransport.__doc__ + + +class AdGroupServiceGrpcTransport( + ad_group_service_grpc_transport.AdGroupServiceGrpcTransport): + __doc__ = ad_group_service_grpc_transport.AdGroupServiceGrpcTransport.__doc__ + + +class AgeRangeViewServiceGrpcTransport( + age_range_view_service_grpc_transport.AgeRangeViewServiceGrpcTransport): + __doc__ = age_range_view_service_grpc_transport.AgeRangeViewServiceGrpcTransport.__doc__ + + +class BiddingStrategyServiceGrpcTransport( + bidding_strategy_service_grpc_transport.BiddingStrategyServiceGrpcTransport): + __doc__ = bidding_strategy_service_grpc_transport.BiddingStrategyServiceGrpcTransport.__doc__ + + +class BillingSetupServiceGrpcTransport( + billing_setup_service_grpc_transport.BillingSetupServiceGrpcTransport): + __doc__ = billing_setup_service_grpc_transport.BillingSetupServiceGrpcTransport.__doc__ + + +class CampaignAudienceViewServiceGrpcTransport( + campaign_audience_view_service_grpc_transport.CampaignAudienceViewServiceGrpcTransport): + __doc__ = campaign_audience_view_service_grpc_transport.CampaignAudienceViewServiceGrpcTransport.__doc__ + + +class CampaignBidModifierServiceGrpcTransport( + campaign_bid_modifier_service_grpc_transport.CampaignBidModifierServiceGrpcTransport): + __doc__ = campaign_bid_modifier_service_grpc_transport.CampaignBidModifierServiceGrpcTransport.__doc__ + + +class CampaignBudgetServiceGrpcTransport( + campaign_budget_service_grpc_transport.CampaignBudgetServiceGrpcTransport): + __doc__ = campaign_budget_service_grpc_transport.CampaignBudgetServiceGrpcTransport.__doc__ + + +class CampaignCriterionServiceGrpcTransport( + campaign_criterion_service_grpc_transport.CampaignCriterionServiceGrpcTransport): + __doc__ = campaign_criterion_service_grpc_transport.CampaignCriterionServiceGrpcTransport.__doc__ + + +class CampaignFeedServiceGrpcTransport( + campaign_feed_service_grpc_transport.CampaignFeedServiceGrpcTransport): + __doc__ = campaign_feed_service_grpc_transport.CampaignFeedServiceGrpcTransport.__doc__ + + +class CampaignGroupServiceGrpcTransport( + campaign_group_service_grpc_transport.CampaignGroupServiceGrpcTransport): + __doc__ = campaign_group_service_grpc_transport.CampaignGroupServiceGrpcTransport.__doc__ + + +class CampaignServiceGrpcTransport( + campaign_service_grpc_transport.CampaignServiceGrpcTransport): + __doc__ = campaign_service_grpc_transport.CampaignServiceGrpcTransport.__doc__ + + class CampaignSharedSetServiceGrpcTransport( campaign_shared_set_service_grpc_transport.CampaignSharedSetServiceGrpcTransport): __doc__ = campaign_shared_set_service_grpc_transport.CampaignSharedSetServiceGrpcTransport.__doc__ -class ChangeStatusServiceClient( - change_status_service_client.ChangeStatusServiceClient): - __doc__ = change_status_service_client.ChangeStatusServiceClient.__doc__ - enums = enums +class CarrierConstantServiceGrpcTransport( + carrier_constant_service_grpc_transport.CarrierConstantServiceGrpcTransport): + __doc__ = carrier_constant_service_grpc_transport.CarrierConstantServiceGrpcTransport.__doc__ class ChangeStatusServiceGrpcTransport( @@ -278,32 +587,24 @@ class ChangeStatusServiceGrpcTransport( __doc__ = change_status_service_grpc_transport.ChangeStatusServiceGrpcTransport.__doc__ -class ConversionActionServiceClient( - conversion_action_service_client.ConversionActionServiceClient): - __doc__ = conversion_action_service_client.ConversionActionServiceClient.__doc__ - enums = enums - - class ConversionActionServiceGrpcTransport( conversion_action_service_grpc_transport.ConversionActionServiceGrpcTransport): __doc__ = conversion_action_service_grpc_transport.ConversionActionServiceGrpcTransport.__doc__ -class CustomerClientLinkServiceClient( - customer_client_link_service_client.CustomerClientLinkServiceClient): - __doc__ = customer_client_link_service_client.CustomerClientLinkServiceClient.__doc__ - enums = enums - - class CustomerClientLinkServiceGrpcTransport( customer_client_link_service_grpc_transport.CustomerClientLinkServiceGrpcTransport): __doc__ = customer_client_link_service_grpc_transport.CustomerClientLinkServiceGrpcTransport.__doc__ -class CustomerManagerLinkServiceClient( - customer_manager_link_service_client.CustomerManagerLinkServiceClient): - __doc__ = customer_manager_link_service_client.CustomerManagerLinkServiceClient.__doc__ - enums = enums +class CustomerClientServiceGrpcTransport( + customer_client_service_grpc_transport.CustomerClientServiceGrpcTransport): + __doc__ = customer_client_service_grpc_transport.CustomerClientServiceGrpcTransport.__doc__ + + +class CustomerFeedServiceGrpcTransport( + customer_feed_service_grpc_transport.CustomerFeedServiceGrpcTransport): + __doc__ = customer_feed_service_grpc_transport.CustomerFeedServiceGrpcTransport.__doc__ class CustomerManagerLinkServiceGrpcTransport( @@ -311,31 +612,29 @@ class CustomerManagerLinkServiceGrpcTransport( __doc__ = customer_manager_link_service_grpc_transport.CustomerManagerLinkServiceGrpcTransport.__doc__ -class CustomerServiceClient(customer_service_client.CustomerServiceClient): - __doc__ = customer_service_client.CustomerServiceClient.__doc__ - enums = enums - - class CustomerServiceGrpcTransport( customer_service_grpc_transport.CustomerServiceGrpcTransport): __doc__ = customer_service_grpc_transport.CustomerServiceGrpcTransport.__doc__ -class DisplayKeywordViewServiceClient( - display_keyword_view_service_client.DisplayKeywordViewServiceClient): - __doc__ = display_keyword_view_service_client.DisplayKeywordViewServiceClient.__doc__ - enums = enums - - class DisplayKeywordViewServiceGrpcTransport( display_keyword_view_service_grpc_transport.DisplayKeywordViewServiceGrpcTransport): __doc__ = display_keyword_view_service_grpc_transport.DisplayKeywordViewServiceGrpcTransport.__doc__ -class GenderViewServiceClient( - gender_view_service_client.GenderViewServiceClient): - __doc__ = gender_view_service_client.GenderViewServiceClient.__doc__ - enums = enums +class FeedItemServiceGrpcTransport( + feed_item_service_grpc_transport.FeedItemServiceGrpcTransport): + __doc__ = feed_item_service_grpc_transport.FeedItemServiceGrpcTransport.__doc__ + + +class FeedMappingServiceGrpcTransport( + feed_mapping_service_grpc_transport.FeedMappingServiceGrpcTransport): + __doc__ = feed_mapping_service_grpc_transport.FeedMappingServiceGrpcTransport.__doc__ + + +class FeedServiceGrpcTransport( + feed_service_grpc_transport.FeedServiceGrpcTransport): + __doc__ = feed_service_grpc_transport.FeedServiceGrpcTransport.__doc__ class GenderViewServiceGrpcTransport( @@ -343,53 +642,59 @@ class GenderViewServiceGrpcTransport( __doc__ = gender_view_service_grpc_transport.GenderViewServiceGrpcTransport.__doc__ -class GeoTargetConstantServiceClient( - geo_target_constant_service_client.GeoTargetConstantServiceClient): - __doc__ = geo_target_constant_service_client.GeoTargetConstantServiceClient.__doc__ - enums = enums - - class GeoTargetConstantServiceGrpcTransport( geo_target_constant_service_grpc_transport.GeoTargetConstantServiceGrpcTransport): __doc__ = geo_target_constant_service_grpc_transport.GeoTargetConstantServiceGrpcTransport.__doc__ -class GoogleAdsFieldServiceClient( - google_ads_field_service_client.GoogleAdsFieldServiceClient): - __doc__ = google_ads_field_service_client.GoogleAdsFieldServiceClient.__doc__ - enums = enums - - class GoogleAdsFieldServiceGrpcTransport( google_ads_field_service_grpc_transport.GoogleAdsFieldServiceGrpcTransport): __doc__ = google_ads_field_service_grpc_transport.GoogleAdsFieldServiceGrpcTransport.__doc__ -class GoogleAdsServiceClient(google_ads_service_client.GoogleAdsServiceClient): - __doc__ = google_ads_service_client.GoogleAdsServiceClient.__doc__ - enums = enums - - class GoogleAdsServiceGrpcTransport( google_ads_service_grpc_transport.GoogleAdsServiceGrpcTransport): __doc__ = google_ads_service_grpc_transport.GoogleAdsServiceGrpcTransport.__doc__ -class HotelGroupViewServiceClient( - hotel_group_view_service_client.HotelGroupViewServiceClient): - __doc__ = hotel_group_view_service_client.HotelGroupViewServiceClient.__doc__ - enums = enums - - class HotelGroupViewServiceGrpcTransport( hotel_group_view_service_grpc_transport.HotelGroupViewServiceGrpcTransport): __doc__ = hotel_group_view_service_grpc_transport.HotelGroupViewServiceGrpcTransport.__doc__ -class KeywordViewServiceClient( - keyword_view_service_client.KeywordViewServiceClient): - __doc__ = keyword_view_service_client.KeywordViewServiceClient.__doc__ - enums = enums +class HotelPerformanceViewServiceGrpcTransport( + hotel_performance_view_service_grpc_transport.HotelPerformanceViewServiceGrpcTransport): + __doc__ = hotel_performance_view_service_grpc_transport.HotelPerformanceViewServiceGrpcTransport.__doc__ + + +class KeywordPlanAdGroupServiceGrpcTransport( + keyword_plan_ad_group_service_grpc_transport.KeywordPlanAdGroupServiceGrpcTransport): + __doc__ = keyword_plan_ad_group_service_grpc_transport.KeywordPlanAdGroupServiceGrpcTransport.__doc__ + + +class KeywordPlanCampaignServiceGrpcTransport( + keyword_plan_campaign_service_grpc_transport.KeywordPlanCampaignServiceGrpcTransport): + __doc__ = keyword_plan_campaign_service_grpc_transport.KeywordPlanCampaignServiceGrpcTransport.__doc__ + + +class KeywordPlanIdeaServiceGrpcTransport( + keyword_plan_idea_service_grpc_transport.KeywordPlanIdeaServiceGrpcTransport): + __doc__ = keyword_plan_idea_service_grpc_transport.KeywordPlanIdeaServiceGrpcTransport.__doc__ + + +class KeywordPlanKeywordServiceGrpcTransport( + keyword_plan_keyword_service_grpc_transport.KeywordPlanKeywordServiceGrpcTransport): + __doc__ = keyword_plan_keyword_service_grpc_transport.KeywordPlanKeywordServiceGrpcTransport.__doc__ + + +class KeywordPlanNegativeKeywordServiceGrpcTransport( + keyword_plan_negative_keyword_service_grpc_transport.KeywordPlanNegativeKeywordServiceGrpcTransport): + __doc__ = keyword_plan_negative_keyword_service_grpc_transport.KeywordPlanNegativeKeywordServiceGrpcTransport.__doc__ + + +class KeywordPlanServiceGrpcTransport( + keyword_plan_service_grpc_transport.KeywordPlanServiceGrpcTransport): + __doc__ = keyword_plan_service_grpc_transport.KeywordPlanServiceGrpcTransport.__doc__ class KeywordViewServiceGrpcTransport( @@ -397,10 +702,9 @@ class KeywordViewServiceGrpcTransport( __doc__ = keyword_view_service_grpc_transport.KeywordViewServiceGrpcTransport.__doc__ -class ManagedPlacementViewServiceClient( - managed_placement_view_service_client.ManagedPlacementViewServiceClient): - __doc__ = managed_placement_view_service_client.ManagedPlacementViewServiceClient.__doc__ - enums = enums +class LanguageConstantServiceGrpcTransport( + language_constant_service_grpc_transport.LanguageConstantServiceGrpcTransport): + __doc__ = language_constant_service_grpc_transport.LanguageConstantServiceGrpcTransport.__doc__ class ManagedPlacementViewServiceGrpcTransport( @@ -408,30 +712,19 @@ class ManagedPlacementViewServiceGrpcTransport( __doc__ = managed_placement_view_service_grpc_transport.ManagedPlacementViewServiceGrpcTransport.__doc__ -class MediaFileServiceClient(media_file_service_client.MediaFileServiceClient): - __doc__ = media_file_service_client.MediaFileServiceClient.__doc__ - enums = enums - - class MediaFileServiceGrpcTransport( media_file_service_grpc_transport.MediaFileServiceGrpcTransport): __doc__ = media_file_service_grpc_transport.MediaFileServiceGrpcTransport.__doc__ -class ParentalStatusViewServiceClient( - parental_status_view_service_client.ParentalStatusViewServiceClient): - __doc__ = parental_status_view_service_client.ParentalStatusViewServiceClient.__doc__ - enums = enums - - class ParentalStatusViewServiceGrpcTransport( parental_status_view_service_grpc_transport.ParentalStatusViewServiceGrpcTransport): __doc__ = parental_status_view_service_grpc_transport.ParentalStatusViewServiceGrpcTransport.__doc__ -class ProductGroupViewServiceClient( - product_group_view_service_client.ProductGroupViewServiceClient): - __doc__ = product_group_view_service_client.ProductGroupViewServiceClient.__doc__ +class PaymentsAccountServiceGrpcTransport( + payments_account_service_grpc_transport.PaymentsAccountServiceGrpcTransport): + __doc__ = payments_account_service_grpc_transport.PaymentsAccountServiceGrpcTransport.__doc__ enums = enums @@ -440,21 +733,14 @@ class ProductGroupViewServiceGrpcTransport( __doc__ = product_group_view_service_grpc_transport.ProductGroupViewServiceGrpcTransport.__doc__ -class RecommendationServiceClient( - recommendation_service_client.RecommendationServiceClient): - __doc__ = recommendation_service_client.RecommendationServiceClient.__doc__ - enums = enums - - class RecommendationServiceGrpcTransport( recommendation_service_grpc_transport.RecommendationServiceGrpcTransport): __doc__ = recommendation_service_grpc_transport.RecommendationServiceGrpcTransport.__doc__ -class SharedCriterionServiceClient( - shared_criterion_service_client.SharedCriterionServiceClient): - __doc__ = shared_criterion_service_client.SharedCriterionServiceClient.__doc__ - enums = enums +class SearchTermViewServiceGrpcTransport( + search_term_view_service_grpc_transport.SearchTermViewServiceGrpcTransport): + __doc__ = search_term_view_service_grpc_transport.SearchTermViewServiceGrpcTransport.__doc__ class SharedCriterionServiceGrpcTransport( @@ -462,39 +748,29 @@ class SharedCriterionServiceGrpcTransport( __doc__ = shared_criterion_service_grpc_transport.SharedCriterionServiceGrpcTransport.__doc__ -class SharedSetServiceClient(shared_set_service_client.SharedSetServiceClient): - __doc__ = shared_set_service_client.SharedSetServiceClient.__doc__ - enums = enums - - class SharedSetServiceGrpcTransport( shared_set_service_grpc_transport.SharedSetServiceGrpcTransport): __doc__ = shared_set_service_grpc_transport.SharedSetServiceGrpcTransport.__doc__ -class TopicConstantServiceClient( - topic_constant_service_client.TopicConstantServiceClient): - __doc__ = topic_constant_service_client.TopicConstantServiceClient.__doc__ - enums = enums - - class TopicConstantServiceGrpcTransport( topic_constant_service_grpc_transport.TopicConstantServiceGrpcTransport): __doc__ = topic_constant_service_grpc_transport.TopicConstantServiceGrpcTransport.__doc__ -class TopicViewServiceClient(topic_view_service_client.TopicViewServiceClient): - __doc__ = topic_view_service_client.TopicViewServiceClient.__doc__ - enums = enums - - class TopicViewServiceGrpcTransport( topic_view_service_grpc_transport.TopicViewServiceGrpcTransport): __doc__ = topic_view_service_grpc_transport.TopicViewServiceGrpcTransport.__doc__ -class VideoServiceClient(video_service_client.VideoServiceClient): - __doc__ = video_service_client.VideoServiceClient.__doc__ +class UserInterestServiceGrpcTransport( + user_interest_service_grpc_transport.UserInterestServiceGrpcTransport): + __doc__ = user_interest_service_grpc_transport.UserInterestServiceGrpcTransport.__doc__ + + +class UserListServiceGrpcTransport( + user_list_service_grpc_transport.UserListServiceGrpcTransport): + __doc__ = user_list_service_grpc_transport.UserListServiceGrpcTransport.__doc__ enums = enums @@ -503,6 +779,7 @@ class VideoServiceGrpcTransport( __doc__ = video_service_grpc_transport.VideoServiceGrpcTransport.__doc__ + __all__ = ( 'enums', 'types', @@ -518,6 +795,8 @@ class VideoServiceGrpcTransport( 'AdGroupBidModifierServiceGrpcTransport', 'AdGroupCriterionServiceClient', 'AdGroupCriterionServiceGrpcTransport', + 'AdGroupFeedServiceClient', + 'AdGroupFeedServiceGrpcTransport', 'AdGroupServiceClient', 'AdGroupServiceGrpcTransport', 'AgeRangeViewServiceClient', @@ -526,30 +805,46 @@ class VideoServiceGrpcTransport( 'BiddingStrategyServiceGrpcTransport', 'BillingSetupServiceClient', 'BillingSetupServiceGrpcTransport', + 'CampaignAudienceViewServiceClient', + 'CampaignAudienceViewServiceGrpcTransport', 'CampaignBidModifierServiceClient', 'CampaignBidModifierServiceGrpcTransport', 'CampaignBudgetServiceClient', 'CampaignBudgetServiceGrpcTransport', 'CampaignCriterionServiceClient', 'CampaignCriterionServiceGrpcTransport', + 'CampaignFeedServiceClient', + 'CampaignFeedServiceGrpcTransport', 'CampaignGroupServiceClient', 'CampaignGroupServiceGrpcTransport', 'CampaignServiceClient', 'CampaignServiceGrpcTransport', 'CampaignSharedSetServiceClient', 'CampaignSharedSetServiceGrpcTransport', + 'CarrierConstantServiceClient', + 'CarrierConstantServiceGrpcTransport', 'ChangeStatusServiceClient', 'ChangeStatusServiceGrpcTransport', 'ConversionActionServiceClient', 'ConversionActionServiceGrpcTransport', 'CustomerClientLinkServiceClient', 'CustomerClientLinkServiceGrpcTransport', + 'CustomerClientServiceClient', + 'CustomerClientServiceGrpcTransport', + 'CustomerFeedServiceClient', + 'CustomerFeedServiceGrpcTransport', 'CustomerManagerLinkServiceClient', 'CustomerManagerLinkServiceGrpcTransport', 'CustomerServiceClient', 'CustomerServiceGrpcTransport', 'DisplayKeywordViewServiceClient', 'DisplayKeywordViewServiceGrpcTransport', + 'FeedItemServiceClient', + 'FeedItemServiceGrpcTransport', + 'FeedMappingServiceClient', + 'FeedMappingServiceGrpcTransport', + 'FeedServiceClient', + 'FeedServiceGrpcTransport', 'GenderViewServiceClient', 'GenderViewServiceGrpcTransport', 'GeoTargetConstantServiceClient', @@ -560,18 +855,38 @@ class VideoServiceGrpcTransport( 'GoogleAdsServiceGrpcTransport', 'HotelGroupViewServiceClient', 'HotelGroupViewServiceGrpcTransport', + 'HotelPerformanceViewServiceClient', + 'HotelPerformanceViewServiceGrpcTransport', + 'KeywordPlanAdGroupServiceClient', + 'KeywordPlanAdGroupServiceGrpcTransport', + 'KeywordPlanCampaignServiceClient', + 'KeywordPlanCampaignServiceGrpcTransport', + 'KeywordPlanIdeaServiceClient', + 'KeywordPlanIdeaServiceGrpcTransport', + 'KeywordPlanKeywordServiceClient', + 'KeywordPlanKeywordServiceGrpcTransport', + 'KeywordPlanNegativeKeywordServiceClient', + 'KeywordPlanNegativeKeywordServiceGrpcTransport', + 'KeywordPlanServiceClient', + 'KeywordPlanServiceGrpcTransport', 'KeywordViewServiceClient', 'KeywordViewServiceGrpcTransport', + 'LanguageConstantServiceClient', + 'LanguageConstantServiceClientGrpcTransport', 'ManagedPlacementViewServiceClient', 'ManagedPlacementViewServiceGrpcTransport', 'MediaFileServiceClient', 'MediaFileServiceGrpcTransport', 'ParentalStatusViewServiceClient', 'ParentalStatusViewServiceGrpcTransport', + 'PaymentsAccountServiceClient', + 'PaymentsAccountServiceClientGrpcTransport', 'ProductGroupViewServiceClient', 'ProductGroupViewServiceGrpcTransport', 'RecommendationServiceClient', 'RecommendationServiceGrpcTransport', + 'SearchTermViewServiceClient', + 'SearchTermViewServiceGrpcTransport', 'SharedCriterionServiceClient', 'SharedCriterionServiceGrpcTransport', 'SharedSetServiceClient', @@ -580,6 +895,10 @@ class VideoServiceGrpcTransport( 'TopicConstantServiceGrpcTransport', 'TopicViewServiceClient', 'TopicViewServiceGrpcTransport', + 'UserInterestServiceClient', + 'UserInterestServiceGrpcTransport', + 'UserListServiceClient', + 'UserListServiceClientGrpcTransport', 'VideoServiceClient', 'VideoServiceGrpcTransport', ) diff --git a/google/ads/google_ads/v0/proto/common/ad_type_infos_pb2.py b/google/ads/google_ads/v0/proto/common/ad_type_infos_pb2.py index 7c173df01..a3f69e51a 100644 --- a/google/ads/google_ads/v0/proto/common/ad_type_infos_pb2.py +++ b/google/ads/google_ads/v0/proto/common/ad_type_infos_pb2.py @@ -15,6 +15,7 @@ from google.ads.google_ads.v0.proto.enums import call_conversion_reporting_state_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_call__conversion__reporting__state__pb2 from google.ads.google_ads.v0.proto.enums import display_ad_format_setting_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_display__ad__format__setting__pb2 +from google.ads.google_ads.v0.proto.enums import mime_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_mime__type__pb2 from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 @@ -22,9 +23,9 @@ name='google/ads/googleads_v0/proto/common/ad_type_infos.proto', package='google.ads.googleads.v0.common', syntax='proto3', - serialized_pb=_b('\n8google/ads/googleads_v0/proto/common/ad_type_infos.proto\x12\x1egoogle.ads.googleads.v0.common\x1aIgoogle/ads/googleads_v0/proto/enums/call_conversion_reporting_state.proto\x1a\x43google/ads/googleads_v0/proto/enums/display_ad_format_setting.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xa4\x01\n\nTextAdInfo\x12.\n\x08headline\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription1\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription2\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xf7\x02\n\x12\x45xpandedTextAdInfo\x12\x34\n\x0eheadline_part1\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0eheadline_part2\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0eheadline_part3\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64\x65scription\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription2\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05path1\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05path2\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"}\n\x13\x44ynamicSearchAdInfo\x12\x32\n\x0c\x64\x65scription1\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription2\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xf7\x06\n\x17ResponsiveDisplayAdInfo\x12\x34\n\x0eshort_headline\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rlong_headline\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64\x65scription\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rbusiness_name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x38\n\x14\x61llow_flexible_color\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x32\n\x0c\x61\x63\x63\x65nt_color\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nmain_color\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x39\n\x13\x63\x61ll_to_action_text\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nlogo_image\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x37\n\x11square_logo_image\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x0fmarketing_image\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12<\n\x16square_marketing_image\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12h\n\x0e\x66ormat_setting\x18\r \x01(\x0e\x32P.google.ads.googleads.v0.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting\x12\x32\n\x0cprice_prefix\x18\x0e \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\npromo_text\x18\x0f \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x85\x05\n\x0e\x43\x61llOnlyAdInfo\x12\x32\n\x0c\x63ountry_code\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0cphone_number\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rbusiness_name\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription1\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription2\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\x0c\x63\x61ll_tracked\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12;\n\x17\x64isable_call_conversion\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x43\n\x1dphone_number_verification_url\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x37\n\x11\x63onversion_action\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x80\x01\n\x1a\x63onversion_reporting_state\x18\n \x01(\x0e\x32\\.google.ads.googleads.v0.enums.CallConversionReportingStateEnum.CallConversionReportingState\"P\n\x1b\x45xpandedDynamicSearchAdInfo\x12\x31\n\x0b\x64\x65scription\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\r\n\x0bHotelAdInfo\"\x15\n\x13ShoppingSmartAdInfo\"\x17\n\x15ShoppingProductAdInfoB\xc6\x01\n\"com.google.ads.googleads.v0.commonB\x10\x41\x64TypeInfosProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + serialized_pb=_b('\n8google/ads/googleads_v0/proto/common/ad_type_infos.proto\x12\x1egoogle.ads.googleads.v0.common\x1aIgoogle/ads/googleads_v0/proto/enums/call_conversion_reporting_state.proto\x1a\x43google/ads/googleads_v0/proto/enums/display_ad_format_setting.proto\x1a\x33google/ads/googleads_v0/proto/enums/mime_type.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xa4\x01\n\nTextAdInfo\x12.\n\x08headline\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription1\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription2\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xf7\x02\n\x12\x45xpandedTextAdInfo\x12\x34\n\x0eheadline_part1\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0eheadline_part2\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0eheadline_part3\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64\x65scription\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription2\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05path1\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05path2\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"}\n\x13\x44ynamicSearchAdInfo\x12\x32\n\x0c\x64\x65scription1\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription2\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xf7\x06\n\x17ResponsiveDisplayAdInfo\x12\x34\n\x0eshort_headline\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rlong_headline\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64\x65scription\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rbusiness_name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x38\n\x14\x61llow_flexible_color\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x32\n\x0c\x61\x63\x63\x65nt_color\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nmain_color\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x39\n\x13\x63\x61ll_to_action_text\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nlogo_image\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x37\n\x11square_logo_image\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x0fmarketing_image\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12<\n\x16square_marketing_image\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12h\n\x0e\x66ormat_setting\x18\r \x01(\x0e\x32P.google.ads.googleads.v0.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting\x12\x32\n\x0cprice_prefix\x18\x0e \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\npromo_text\x18\x0f \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x85\x05\n\x0e\x43\x61llOnlyAdInfo\x12\x32\n\x0c\x63ountry_code\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0cphone_number\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rbusiness_name\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription1\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x64\x65scription2\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\x0c\x63\x61ll_tracked\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12;\n\x17\x64isable_call_conversion\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x43\n\x1dphone_number_verification_url\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x37\n\x11\x63onversion_action\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x80\x01\n\x1a\x63onversion_reporting_state\x18\n \x01(\x0e\x32\\.google.ads.googleads.v0.enums.CallConversionReportingStateEnum.CallConversionReportingState\"P\n\x1b\x45xpandedDynamicSearchAdInfo\x12\x31\n\x0b\x64\x65scription\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\r\n\x0bHotelAdInfo\"\x15\n\x13ShoppingSmartAdInfo\"\x17\n\x15ShoppingProductAdInfo\"\x9d\x03\n\x0bGmailAdInfo\x12;\n\x06teaser\x18\x01 \x01(\x0b\x32+.google.ads.googleads.v0.common.GmailTeaser\x12\x32\n\x0cheader_image\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x0fmarketing_image\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12>\n\x18marketing_image_headline\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x41\n\x1bmarketing_image_description\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x63\n&marketing_image_display_call_to_action\x18\x06 \x01(\x0b\x32\x33.google.ads.googleads.v0.common.DisplayCallToAction\"\xd7\x01\n\x0bGmailTeaser\x12.\n\x08headline\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64\x65scription\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rbusiness_name\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nlogo_image\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"s\n\x13\x44isplayCallToAction\x12*\n\x04text\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\ntext_color\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xb0\x04\n\x0bImageAdInfo\x12\x30\n\x0bpixel_width\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x31\n\x0cpixel_height\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12/\n\timage_url\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x38\n\x13preview_pixel_width\x18\x07 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x39\n\x14preview_pixel_height\x18\x08 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x37\n\x11preview_image_url\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12G\n\tmime_type\x18\n \x01(\x0e\x32\x34.google.ads.googleads.v0.enums.MimeTypeEnum.MimeType\x12*\n\x04name\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\nmedia_file\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x00\x12+\n\x04\x64\x61ta\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.BytesValueH\x00\x42\x07\n\x05imageB\xc6\x01\n\"com.google.ads.googleads.v0.commonB\x10\x41\x64TypeInfosProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') , - dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_call__conversion__reporting__state__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_display__ad__format__setting__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_call__conversion__reporting__state__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_display__ad__format__setting__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_mime__type__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -69,8 +70,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=269, - serialized_end=433, + serialized_start=322, + serialized_end=486, ) @@ -142,8 +143,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=436, - serialized_end=811, + serialized_start=489, + serialized_end=864, ) @@ -180,8 +181,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=813, - serialized_end=938, + serialized_start=866, + serialized_end=991, ) @@ -309,8 +310,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=941, - serialized_end=1828, + serialized_start=994, + serialized_end=1881, ) @@ -403,8 +404,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1831, - serialized_end=2476, + serialized_start=1884, + serialized_end=2529, ) @@ -434,8 +435,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2478, - serialized_end=2558, + serialized_start=2531, + serialized_end=2611, ) @@ -458,8 +459,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2560, - serialized_end=2573, + serialized_start=2613, + serialized_end=2626, ) @@ -482,8 +483,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2575, - serialized_end=2596, + serialized_start=2628, + serialized_end=2649, ) @@ -506,8 +507,261 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2598, - serialized_end=2621, + serialized_start=2651, + serialized_end=2674, +) + + +_GMAILADINFO = _descriptor.Descriptor( + name='GmailAdInfo', + full_name='google.ads.googleads.v0.common.GmailAdInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='teaser', full_name='google.ads.googleads.v0.common.GmailAdInfo.teaser', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='header_image', full_name='google.ads.googleads.v0.common.GmailAdInfo.header_image', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='marketing_image', full_name='google.ads.googleads.v0.common.GmailAdInfo.marketing_image', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='marketing_image_headline', full_name='google.ads.googleads.v0.common.GmailAdInfo.marketing_image_headline', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='marketing_image_description', full_name='google.ads.googleads.v0.common.GmailAdInfo.marketing_image_description', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='marketing_image_display_call_to_action', full_name='google.ads.googleads.v0.common.GmailAdInfo.marketing_image_display_call_to_action', index=5, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2677, + serialized_end=3090, +) + + +_GMAILTEASER = _descriptor.Descriptor( + name='GmailTeaser', + full_name='google.ads.googleads.v0.common.GmailTeaser', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='headline', full_name='google.ads.googleads.v0.common.GmailTeaser.headline', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='description', full_name='google.ads.googleads.v0.common.GmailTeaser.description', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='business_name', full_name='google.ads.googleads.v0.common.GmailTeaser.business_name', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='logo_image', full_name='google.ads.googleads.v0.common.GmailTeaser.logo_image', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3093, + serialized_end=3308, +) + + +_DISPLAYCALLTOACTION = _descriptor.Descriptor( + name='DisplayCallToAction', + full_name='google.ads.googleads.v0.common.DisplayCallToAction', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='text', full_name='google.ads.googleads.v0.common.DisplayCallToAction.text', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='text_color', full_name='google.ads.googleads.v0.common.DisplayCallToAction.text_color', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3310, + serialized_end=3425, +) + + +_IMAGEADINFO = _descriptor.Descriptor( + name='ImageAdInfo', + full_name='google.ads.googleads.v0.common.ImageAdInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='pixel_width', full_name='google.ads.googleads.v0.common.ImageAdInfo.pixel_width', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='pixel_height', full_name='google.ads.googleads.v0.common.ImageAdInfo.pixel_height', index=1, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='image_url', full_name='google.ads.googleads.v0.common.ImageAdInfo.image_url', index=2, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='preview_pixel_width', full_name='google.ads.googleads.v0.common.ImageAdInfo.preview_pixel_width', index=3, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='preview_pixel_height', full_name='google.ads.googleads.v0.common.ImageAdInfo.preview_pixel_height', index=4, + number=8, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='preview_image_url', full_name='google.ads.googleads.v0.common.ImageAdInfo.preview_image_url', index=5, + number=9, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='mime_type', full_name='google.ads.googleads.v0.common.ImageAdInfo.mime_type', index=6, + number=10, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.common.ImageAdInfo.name', index=7, + number=11, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='media_file', full_name='google.ads.googleads.v0.common.ImageAdInfo.media_file', index=8, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='data', full_name='google.ads.googleads.v0.common.ImageAdInfo.data', index=9, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='image', full_name='google.ads.googleads.v0.common.ImageAdInfo.image', + index=0, containing_type=None, fields=[]), + ], + serialized_start=3428, + serialized_end=3988, ) _TEXTADINFO.fields_by_name['headline'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE @@ -548,6 +802,34 @@ _CALLONLYADINFO.fields_by_name['conversion_action'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _CALLONLYADINFO.fields_by_name['conversion_reporting_state'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_call__conversion__reporting__state__pb2._CALLCONVERSIONREPORTINGSTATEENUM_CALLCONVERSIONREPORTINGSTATE _EXPANDEDDYNAMICSEARCHADINFO.fields_by_name['description'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GMAILADINFO.fields_by_name['teaser'].message_type = _GMAILTEASER +_GMAILADINFO.fields_by_name['header_image'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GMAILADINFO.fields_by_name['marketing_image'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GMAILADINFO.fields_by_name['marketing_image_headline'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GMAILADINFO.fields_by_name['marketing_image_description'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GMAILADINFO.fields_by_name['marketing_image_display_call_to_action'].message_type = _DISPLAYCALLTOACTION +_GMAILTEASER.fields_by_name['headline'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GMAILTEASER.fields_by_name['description'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GMAILTEASER.fields_by_name['business_name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GMAILTEASER.fields_by_name['logo_image'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_DISPLAYCALLTOACTION.fields_by_name['text'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_DISPLAYCALLTOACTION.fields_by_name['text_color'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_IMAGEADINFO.fields_by_name['pixel_width'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_IMAGEADINFO.fields_by_name['pixel_height'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_IMAGEADINFO.fields_by_name['image_url'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_IMAGEADINFO.fields_by_name['preview_pixel_width'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_IMAGEADINFO.fields_by_name['preview_pixel_height'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_IMAGEADINFO.fields_by_name['preview_image_url'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_IMAGEADINFO.fields_by_name['mime_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_mime__type__pb2._MIMETYPEENUM_MIMETYPE +_IMAGEADINFO.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_IMAGEADINFO.fields_by_name['media_file'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_IMAGEADINFO.fields_by_name['data'].message_type = google_dot_protobuf_dot_wrappers__pb2._BYTESVALUE +_IMAGEADINFO.oneofs_by_name['image'].fields.append( + _IMAGEADINFO.fields_by_name['media_file']) +_IMAGEADINFO.fields_by_name['media_file'].containing_oneof = _IMAGEADINFO.oneofs_by_name['image'] +_IMAGEADINFO.oneofs_by_name['image'].fields.append( + _IMAGEADINFO.fields_by_name['data']) +_IMAGEADINFO.fields_by_name['data'].containing_oneof = _IMAGEADINFO.oneofs_by_name['image'] DESCRIPTOR.message_types_by_name['TextAdInfo'] = _TEXTADINFO DESCRIPTOR.message_types_by_name['ExpandedTextAdInfo'] = _EXPANDEDTEXTADINFO DESCRIPTOR.message_types_by_name['DynamicSearchAdInfo'] = _DYNAMICSEARCHADINFO @@ -557,11 +839,15 @@ DESCRIPTOR.message_types_by_name['HotelAdInfo'] = _HOTELADINFO DESCRIPTOR.message_types_by_name['ShoppingSmartAdInfo'] = _SHOPPINGSMARTADINFO DESCRIPTOR.message_types_by_name['ShoppingProductAdInfo'] = _SHOPPINGPRODUCTADINFO +DESCRIPTOR.message_types_by_name['GmailAdInfo'] = _GMAILADINFO +DESCRIPTOR.message_types_by_name['GmailTeaser'] = _GMAILTEASER +DESCRIPTOR.message_types_by_name['DisplayCallToAction'] = _DISPLAYCALLTOACTION +DESCRIPTOR.message_types_by_name['ImageAdInfo'] = _IMAGEADINFO _sym_db.RegisterFileDescriptor(DESCRIPTOR) TextAdInfo = _reflection.GeneratedProtocolMessageType('TextAdInfo', (_message.Message,), dict( DESCRIPTOR = _TEXTADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """A text ad. @@ -580,7 +866,7 @@ ExpandedTextAdInfo = _reflection.GeneratedProtocolMessageType('ExpandedTextAdInfo', (_message.Message,), dict( DESCRIPTOR = _EXPANDEDTEXTADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """An expanded text ad. @@ -608,7 +894,7 @@ DynamicSearchAdInfo = _reflection.GeneratedProtocolMessageType('DynamicSearchAdInfo', (_message.Message,), dict( DESCRIPTOR = _DYNAMICSEARCHADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """A dynamic search ad. @@ -625,7 +911,7 @@ ResponsiveDisplayAdInfo = _reflection.GeneratedProtocolMessageType('ResponsiveDisplayAdInfo', (_message.Message,), dict( DESCRIPTOR = _RESPONSIVEDISPLAYADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """A responsive display ad. @@ -681,7 +967,7 @@ CallOnlyAdInfo = _reflection.GeneratedProtocolMessageType('CallOnlyAdInfo', (_message.Message,), dict( DESCRIPTOR = _CALLONLYADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """A call-only ad. @@ -723,7 +1009,7 @@ ExpandedDynamicSearchAdInfo = _reflection.GeneratedProtocolMessageType('ExpandedDynamicSearchAdInfo', (_message.Message,), dict( DESCRIPTOR = _EXPANDEDDYNAMICSEARCHADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """An expanded dynamic search ad. @@ -738,7 +1024,7 @@ HotelAdInfo = _reflection.GeneratedProtocolMessageType('HotelAdInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """A hotel ad. """, @@ -748,7 +1034,7 @@ ShoppingSmartAdInfo = _reflection.GeneratedProtocolMessageType('ShoppingSmartAdInfo', (_message.Message,), dict( DESCRIPTOR = _SHOPPINGSMARTADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """A Smart Shopping ad. """, @@ -758,7 +1044,7 @@ ShoppingProductAdInfo = _reflection.GeneratedProtocolMessageType('ShoppingProductAdInfo', (_message.Message,), dict( DESCRIPTOR = _SHOPPINGPRODUCTADINFO, - __module__ = 'google.ads.googleads_v0.proto.common.ad_type_infos_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' , __doc__ = """A standard Shopping ad. """, @@ -766,6 +1052,121 @@ )) _sym_db.RegisterMessage(ShoppingProductAdInfo) +GmailAdInfo = _reflection.GeneratedProtocolMessageType('GmailAdInfo', (_message.Message,), dict( + DESCRIPTOR = _GMAILADINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' + , + __doc__ = """A Gmail ad. + + + Attributes: + teaser: + The Gmail teaser. + header_image: + The MediaFile resource name of the header image. Valid image + types are GIF, JPEG and PNG. The minimum size is 300x100 + pixels and the aspect ratio must be between 3:1 and 5:1 + (+-1%). + marketing_image: + The MediaFile resource name of the marketing image. Valid + image types are GIF, JPEG and PNG. The image must either be + landscape with a minimum size of 600x314 pixels and aspect + ratio of 600:314 (+-1%) or square with a minimum size of + 300x300 pixels and aspect ratio of 1:1 (+-1%) + marketing_image_headline: + Headline of the marketing image. + marketing_image_description: + Description of the marketing image. + marketing_image_display_call_to_action: + Display-call-to-action of the marketing image. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.GmailAdInfo) + )) +_sym_db.RegisterMessage(GmailAdInfo) + +GmailTeaser = _reflection.GeneratedProtocolMessageType('GmailTeaser', (_message.Message,), dict( + DESCRIPTOR = _GMAILTEASER, + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' + , + __doc__ = """Gmail teaser data. The teaser is a small header that acts as an + invitation to view the rest of the ad (the body). + + + Attributes: + headline: + Headline of the teaser. + description: + Description of the teaser. + business_name: + Business name of the advertiser. + logo_image: + The MediaFile resource name of the logo image. Valid image + types are GIF, JPEG and PNG. The minimum size is 144x144 + pixels and the aspect ratio must be 1:1 (+-1%). + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.GmailTeaser) + )) +_sym_db.RegisterMessage(GmailTeaser) + +DisplayCallToAction = _reflection.GeneratedProtocolMessageType('DisplayCallToAction', (_message.Message,), dict( + DESCRIPTOR = _DISPLAYCALLTOACTION, + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' + , + __doc__ = """Data for display call to action. The call to action is a piece of the ad + that prompts the user to do something. Like clicking a link or making a + phone call. + + + Attributes: + text: + Text for the display-call-to-action. + text_color: + Text color for the display-call-to-action in hexadecimal, e.g. + #ffffff for white. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.DisplayCallToAction) + )) +_sym_db.RegisterMessage(DisplayCallToAction) + +ImageAdInfo = _reflection.GeneratedProtocolMessageType('ImageAdInfo', (_message.Message,), dict( + DESCRIPTOR = _IMAGEADINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.ad_type_infos_pb2' + , + __doc__ = """An image ad. + + + Attributes: + pixel_width: + Width in pixels of the full size image. + pixel_height: + Height in pixels of the full size image. + image_url: + URL of the full size image. + preview_pixel_width: + Width in pixels of the preview size image. + preview_pixel_height: + Height in pixels of the preview size image. + preview_image_url: + URL of the preview size image. + mime_type: + The mime type of the image. + name: + The name of the image. If the image was created from a + MediaFile, this is the MediaFile's name. If the image was + created from bytes, this is empty. + image: + The image to create the ImageAd from. This can be specified in + one of two ways. 1. An existing MediaFile resource. 2. The raw + image data as bytes. + media_file: + The MediaFile resource to use for the image. + data: + Raw image data as bytes. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.ImageAdInfo) + )) +_sym_db.RegisterMessage(ImageAdInfo) + DESCRIPTOR.has_options = True DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\020AdTypeInfosProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) diff --git a/google/ads/google_ads/v0/proto/common/bidding_pb2.py b/google/ads/google_ads/v0/proto/common/bidding_pb2.py index d4ca81c3f..532c3d571 100644 --- a/google/ads/google_ads/v0/proto/common/bidding_pb2.py +++ b/google/ads/google_ads/v0/proto/common/bidding_pb2.py @@ -515,7 +515,7 @@ EnhancedCpc = _reflection.GeneratedProtocolMessageType('EnhancedCpc', (_message.Message,), dict( DESCRIPTOR = _ENHANCEDCPC, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """An automated bidding strategy that raises bids for clicks that seem more likely to lead to a conversion and lowers them for clicks where they @@ -527,7 +527,7 @@ ManualCpc = _reflection.GeneratedProtocolMessageType('ManualCpc', (_message.Message,), dict( DESCRIPTOR = _MANUALCPC, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """Manual click-based bidding where user pays per click. @@ -543,7 +543,7 @@ ManualCpm = _reflection.GeneratedProtocolMessageType('ManualCpm', (_message.Message,), dict( DESCRIPTOR = _MANUALCPM, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """Manual impression-based bidding where user pays per thousand impressions. @@ -554,7 +554,7 @@ ManualCpv = _reflection.GeneratedProtocolMessageType('ManualCpv', (_message.Message,), dict( DESCRIPTOR = _MANUALCPV, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """View based bidding where user pays per video view. """, @@ -564,7 +564,7 @@ MaximizeConversions = _reflection.GeneratedProtocolMessageType('MaximizeConversions', (_message.Message,), dict( DESCRIPTOR = _MAXIMIZECONVERSIONS, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """An automated bidding strategy that sets bids to help get the most conversions for your campaign while spending your budget. @@ -575,7 +575,7 @@ MaximizeConversionValue = _reflection.GeneratedProtocolMessageType('MaximizeConversionValue', (_message.Message,), dict( DESCRIPTOR = _MAXIMIZECONVERSIONVALUE, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """An automated bidding strategy which tries to maximize conversion value given a daily budget. @@ -596,7 +596,7 @@ PageOnePromoted = _reflection.GeneratedProtocolMessageType('PageOnePromoted', (_message.Message,), dict( DESCRIPTOR = _PAGEONEPROMOTED, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """An automated bidding strategy which sets CPC bids to target impressions on page one, or page one promoted slots on google.com. @@ -633,7 +633,7 @@ TargetCpa = _reflection.GeneratedProtocolMessageType('TargetCpa', (_message.Message,), dict( DESCRIPTOR = _TARGETCPA, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """An automated bid strategy that sets bids to help get as many conversions as possible at the target cost-per-acquisition (CPA) you set. @@ -657,7 +657,7 @@ TargetOutrankShare = _reflection.GeneratedProtocolMessageType('TargetOutrankShare', (_message.Message,), dict( DESCRIPTOR = _TARGETOUTRANKSHARE, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """An automated bidding strategy that sets bids based on the target fraction of auctions where the advertiser should outrank a specific @@ -693,7 +693,7 @@ TargetRoas = _reflection.GeneratedProtocolMessageType('TargetRoas', (_message.Message,), dict( DESCRIPTOR = _TARGETROAS, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """An automated bidding strategy that helps you maximize revenue while averaging a specific target return on ad spend (ROAS). @@ -717,7 +717,7 @@ TargetSpend = _reflection.GeneratedProtocolMessageType('TargetSpend', (_message.Message,), dict( DESCRIPTOR = _TARGETSPEND, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """An automated bid strategy that sets your bids to help get as many clicks as possible within your budget. @@ -739,7 +739,7 @@ PercentCpc = _reflection.GeneratedProtocolMessageType('PercentCpc', (_message.Message,), dict( DESCRIPTOR = _PERCENTCPC, - __module__ = 'google.ads.googleads_v0.proto.common.bidding_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.bidding_pb2' , __doc__ = """A bidding strategy where bids are a fraction of the advertised price for some good or service. diff --git a/google/ads/google_ads/v0/proto/common/criteria_pb2.py b/google/ads/google_ads/v0/proto/common/criteria_pb2.py index 20249851f..49f84adff 100644 --- a/google/ads/google_ads/v0/proto/common/criteria_pb2.py +++ b/google/ads/google_ads/v0/proto/common/criteria_pb2.py @@ -14,6 +14,7 @@ from google.ads.google_ads.v0.proto.enums import age_range_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_age__range__type__pb2 +from google.ads.google_ads.v0.proto.enums import content_label_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_content__label__type__pb2 from google.ads.google_ads.v0.proto.enums import day_of_week_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_day__of__week__pb2 from google.ads.google_ads.v0.proto.enums import device_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2 from google.ads.google_ads.v0.proto.enums import gender_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_gender__type__pb2 @@ -25,6 +26,7 @@ from google.ads.google_ads.v0.proto.enums import listing_group_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_listing__group__type__pb2 from google.ads.google_ads.v0.proto.enums import minute_of_hour_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_minute__of__hour__pb2 from google.ads.google_ads.v0.proto.enums import parental_status_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_parental__status__type__pb2 +from google.ads.google_ads.v0.proto.enums import preferred_content_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_preferred__content__type__pb2 from google.ads.google_ads.v0.proto.enums import product_channel_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__channel__pb2 from google.ads.google_ads.v0.proto.enums import product_channel_exclusivity_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__channel__exclusivity__pb2 from google.ads.google_ads.v0.proto.enums import product_condition_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__condition__pb2 @@ -37,9 +39,9 @@ name='google/ads/googleads_v0/proto/common/criteria.proto', package='google.ads.googleads.v0.common', syntax='proto3', - serialized_pb=_b('\n3google/ads/googleads_v0/proto/common/criteria.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x38google/ads/googleads_v0/proto/enums/age_range_type.proto\x1a\x35google/ads/googleads_v0/proto/enums/day_of_week.proto\x1a\x30google/ads/googleads_v0/proto/enums/device.proto\x1a\x35google/ads/googleads_v0/proto/enums/gender_type.proto\x1a\x43google/ads/googleads_v0/proto/enums/hotel_date_selection_type.proto\x1a;google/ads/googleads_v0/proto/enums/income_range_type.proto\x1a:google/ads/googleads_v0/proto/enums/interaction_type.proto\x1agoogle/ads/googleads_v0/proto/enums/parental_status_type.proto\x1a\x39google/ads/googleads_v0/proto/enums/product_channel.proto\x1a\x45google/ads/googleads_v0/proto/enums/product_channel_exclusivity.proto\x1a;google/ads/googleads_v0/proto/enums/product_condition.proto\x1a\n\x04type\x18\x01 \x01(\x0e\x32\x30.google.ads.googleads.v0.enums.DeviceEnum.Device\"\xf1\x01\n\x10ListingGroupInfo\x12R\n\x04type\x18\x01 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.ListingGroupTypeEnum.ListingGroupType\x12H\n\ncase_value\x18\x02 \x01(\x0b\x32\x34.google.ads.googleads.v0.common.ListingDimensionInfo\x12?\n\x19parent_ad_group_criterion\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xdb\x07\n\x14ListingDimensionInfo\x12I\n\rlisting_brand\x18\x01 \x01(\x0b\x32\x30.google.ads.googleads.v0.common.ListingBrandInfoH\x00\x12?\n\x08hotel_id\x18\x02 \x01(\x0b\x32+.google.ads.googleads.v0.common.HotelIdInfoH\x00\x12\x45\n\x0bhotel_class\x18\x03 \x01(\x0b\x32..google.ads.googleads.v0.common.HotelClassInfoH\x00\x12V\n\x14hotel_country_region\x18\x04 \x01(\x0b\x32\x36.google.ads.googleads.v0.common.HotelCountryRegionInfoH\x00\x12\x45\n\x0bhotel_state\x18\x05 \x01(\x0b\x32..google.ads.googleads.v0.common.HotelStateInfoH\x00\x12\x43\n\nhotel_city\x18\x06 \x01(\x0b\x32-.google.ads.googleads.v0.common.HotelCityInfoH\x00\x12^\n\x18listing_custom_attribute\x18\x07 \x01(\x0b\x32:.google.ads.googleads.v0.common.ListingCustomAttributeInfoH\x00\x12M\n\x0fproduct_channel\x18\x08 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ProductChannelInfoH\x00\x12\x64\n\x1bproduct_channel_exclusivity\x18\t \x01(\x0b\x32=.google.ads.googleads.v0.common.ProductChannelExclusivityInfoH\x00\x12Q\n\x11product_condition\x18\n \x01(\x0b\x32\x34.google.ads.googleads.v0.common.ProductConditionInfoH\x00\x12N\n\x10product_offer_id\x18\x0b \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ProductOfferIdInfoH\x00\x12G\n\x0cproduct_type\x18\x0c \x01(\x0b\x32/.google.ads.googleads.v0.common.ProductTypeInfoH\x00\x42\x0b\n\tdimension\"?\n\x10ListingBrandInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\":\n\x0bHotelIdInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"<\n\x0eHotelClassInfo\x12*\n\x05value\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"X\n\x16HotelCountryRegionInfo\x12>\n\x18\x63ountry_region_criterion\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"G\n\x0eHotelStateInfo\x12\x35\n\x0fstate_criterion\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"E\n\rHotelCityInfo\x12\x34\n\x0e\x63ity_criterion\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xb4\x01\n\x1aListingCustomAttributeInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12i\n\x05index\x18\x02 \x01(\x0e\x32Z.google.ads.googleads.v0.enums.ListingCustomAttributeIndexEnum.ListingCustomAttributeIndex\"g\n\x12ProductChannelInfo\x12Q\n\x07\x63hannel\x18\x01 \x01(\x0e\x32@.google.ads.googleads.v0.enums.ProductChannelEnum.ProductChannel\"\x94\x01\n\x1dProductChannelExclusivityInfo\x12s\n\x13\x63hannel_exclusivity\x18\x01 \x01(\x0e\x32V.google.ads.googleads.v0.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity\"o\n\x14ProductConditionInfo\x12W\n\tcondition\x18\x01 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.ProductConditionEnum.ProductCondition\"A\n\x12ProductOfferIdInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x93\x01\n\x0fProductTypeInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12S\n\x05level\x18\x02 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.ProductTypeLevelEnum.ProductTypeLevel\"|\n\x1aHotelDateSelectionTypeInfo\x12^\n\x04type\x18\x01 \x01(\x0e\x32P.google.ads.googleads.v0.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType\"}\n\x1dHotelAdvanceBookingWindowInfo\x12-\n\x08min_days\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12-\n\x08max_days\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"y\n\x15HotelLengthOfStayInfo\x12/\n\nmin_nights\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12/\n\nmax_nights\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"b\n\x13HotelCheckInDayInfo\x12K\n\x0b\x64\x61y_of_week\x18\x01 \x01(\x0e\x32\x36.google.ads.googleads.v0.enums.DayOfWeekEnum.DayOfWeek\"g\n\x13InteractionTypeInfo\x12P\n\x04type\x18\x01 \x01(\x0e\x32\x42.google.ads.googleads.v0.enums.InteractionTypeEnum.InteractionType\"\xe3\x02\n\x0e\x41\x64ScheduleInfo\x12R\n\x0cstart_minute\x18\x01 \x01(\x0e\x32<.google.ads.googleads.v0.enums.MinuteOfHourEnum.MinuteOfHour\x12P\n\nend_minute\x18\x02 \x01(\x0e\x32<.google.ads.googleads.v0.enums.MinuteOfHourEnum.MinuteOfHour\x12/\n\nstart_hour\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12-\n\x08\x65nd_hour\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12K\n\x0b\x64\x61y_of_week\x18\x05 \x01(\x0e\x32\x36.google.ads.googleads.v0.enums.DayOfWeekEnum.DayOfWeek\"Z\n\x0c\x41geRangeInfo\x12J\n\x04type\x18\x01 \x01(\x0e\x32<.google.ads.googleads.v0.enums.AgeRangeTypeEnum.AgeRangeType\"T\n\nGenderInfo\x12\x46\n\x04type\x18\x01 \x01(\x0e\x32\x38.google.ads.googleads.v0.enums.GenderTypeEnum.GenderType\"c\n\x0fIncomeRangeInfo\x12P\n\x04type\x18\x01 \x01(\x0e\x32\x42.google.ads.googleads.v0.enums.IncomeRangeTypeEnum.IncomeRangeType\"l\n\x12ParentalStatusInfo\x12V\n\x04type\x18\x01 \x01(\x0e\x32H.google.ads.googleads.v0.enums.ParentalStatusTypeEnum.ParentalStatusType\"B\n\x10YouTubeVideoInfo\x12.\n\x08video_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"F\n\x12YouTubeChannelInfo\x12\x30\n\nchannel_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xa0\x02\n\rProximityInfo\x12?\n\tgeo_point\x18\x01 \x01(\x0b\x32,.google.ads.googleads.v0.common.GeoPointInfo\x12,\n\x06radius\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x62\n\x0cradius_units\x18\x03 \x01(\x0e\x32L.google.ads.googleads.v0.enums.ProximityRadiusUnitsEnum.ProximityRadiusUnits\x12<\n\x07\x61\x64\x64ress\x18\x04 \x01(\x0b\x32+.google.ads.googleads.v0.common.AddressInfo\"\x8f\x01\n\x0cGeoPointInfo\x12?\n\x1alongitude_in_micro_degrees\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12>\n\x19latitude_in_micro_degrees\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\"\xfc\x02\n\x0b\x41\x64\x64ressInfo\x12\x31\n\x0bpostal_code\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rprovince_code\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x63ountry_code\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rprovince_name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0estreet_address\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x0fstreet_address2\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12/\n\tcity_name\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"m\n\tTopicInfo\x12\x34\n\x0etopic_constant\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12*\n\x04path\x18\x02 \x03(\x0b\x32\x1c.google.protobuf.StringValueB\xc3\x01\n\"com.google.ads.googleads.v0.commonB\rCriteriaProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + serialized_pb=_b('\n3google/ads/googleads_v0/proto/common/criteria.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x38google/ads/googleads_v0/proto/enums/age_range_type.proto\x1agoogle/ads/googleads_v0/proto/enums/parental_status_type.proto\x1a@google/ads/googleads_v0/proto/enums/preferred_content_type.proto\x1a\x39google/ads/googleads_v0/proto/enums/product_channel.proto\x1a\x45google/ads/googleads_v0/proto/enums/product_channel_exclusivity.proto\x1a;google/ads/googleads_v0/proto/enums/product_condition.proto\x1a\n\x04type\x18\x01 \x01(\x0e\x32\x30.google.ads.googleads.v0.enums.DeviceEnum.Device\"r\n\x14PreferredContentInfo\x12Z\n\x04type\x18\x02 \x01(\x0e\x32L.google.ads.googleads.v0.enums.PreferredContentTypeEnum.PreferredContentType\"\xf1\x01\n\x10ListingGroupInfo\x12R\n\x04type\x18\x01 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.ListingGroupTypeEnum.ListingGroupType\x12H\n\ncase_value\x18\x02 \x01(\x0b\x32\x34.google.ads.googleads.v0.common.ListingDimensionInfo\x12?\n\x19parent_ad_group_criterion\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\\\n\x10ListingScopeInfo\x12H\n\ndimensions\x18\x02 \x03(\x0b\x32\x34.google.ads.googleads.v0.common.ListingDimensionInfo\"\xdb\x07\n\x14ListingDimensionInfo\x12I\n\rlisting_brand\x18\x01 \x01(\x0b\x32\x30.google.ads.googleads.v0.common.ListingBrandInfoH\x00\x12?\n\x08hotel_id\x18\x02 \x01(\x0b\x32+.google.ads.googleads.v0.common.HotelIdInfoH\x00\x12\x45\n\x0bhotel_class\x18\x03 \x01(\x0b\x32..google.ads.googleads.v0.common.HotelClassInfoH\x00\x12V\n\x14hotel_country_region\x18\x04 \x01(\x0b\x32\x36.google.ads.googleads.v0.common.HotelCountryRegionInfoH\x00\x12\x45\n\x0bhotel_state\x18\x05 \x01(\x0b\x32..google.ads.googleads.v0.common.HotelStateInfoH\x00\x12\x43\n\nhotel_city\x18\x06 \x01(\x0b\x32-.google.ads.googleads.v0.common.HotelCityInfoH\x00\x12^\n\x18listing_custom_attribute\x18\x07 \x01(\x0b\x32:.google.ads.googleads.v0.common.ListingCustomAttributeInfoH\x00\x12M\n\x0fproduct_channel\x18\x08 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ProductChannelInfoH\x00\x12\x64\n\x1bproduct_channel_exclusivity\x18\t \x01(\x0b\x32=.google.ads.googleads.v0.common.ProductChannelExclusivityInfoH\x00\x12Q\n\x11product_condition\x18\n \x01(\x0b\x32\x34.google.ads.googleads.v0.common.ProductConditionInfoH\x00\x12N\n\x10product_offer_id\x18\x0b \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ProductOfferIdInfoH\x00\x12G\n\x0cproduct_type\x18\x0c \x01(\x0b\x32/.google.ads.googleads.v0.common.ProductTypeInfoH\x00\x42\x0b\n\tdimension\"?\n\x10ListingBrandInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\":\n\x0bHotelIdInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"<\n\x0eHotelClassInfo\x12*\n\x05value\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"X\n\x16HotelCountryRegionInfo\x12>\n\x18\x63ountry_region_criterion\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"G\n\x0eHotelStateInfo\x12\x35\n\x0fstate_criterion\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"E\n\rHotelCityInfo\x12\x34\n\x0e\x63ity_criterion\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xb4\x01\n\x1aListingCustomAttributeInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12i\n\x05index\x18\x02 \x01(\x0e\x32Z.google.ads.googleads.v0.enums.ListingCustomAttributeIndexEnum.ListingCustomAttributeIndex\"g\n\x12ProductChannelInfo\x12Q\n\x07\x63hannel\x18\x01 \x01(\x0e\x32@.google.ads.googleads.v0.enums.ProductChannelEnum.ProductChannel\"\x94\x01\n\x1dProductChannelExclusivityInfo\x12s\n\x13\x63hannel_exclusivity\x18\x01 \x01(\x0e\x32V.google.ads.googleads.v0.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity\"o\n\x14ProductConditionInfo\x12W\n\tcondition\x18\x01 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.ProductConditionEnum.ProductCondition\"A\n\x12ProductOfferIdInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x93\x01\n\x0fProductTypeInfo\x12+\n\x05value\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12S\n\x05level\x18\x02 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.ProductTypeLevelEnum.ProductTypeLevel\"|\n\x1aHotelDateSelectionTypeInfo\x12^\n\x04type\x18\x01 \x01(\x0e\x32P.google.ads.googleads.v0.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType\"}\n\x1dHotelAdvanceBookingWindowInfo\x12-\n\x08min_days\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12-\n\x08max_days\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"y\n\x15HotelLengthOfStayInfo\x12/\n\nmin_nights\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12/\n\nmax_nights\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"b\n\x13HotelCheckInDayInfo\x12K\n\x0b\x64\x61y_of_week\x18\x01 \x01(\x0e\x32\x36.google.ads.googleads.v0.enums.DayOfWeekEnum.DayOfWeek\"g\n\x13InteractionTypeInfo\x12P\n\x04type\x18\x01 \x01(\x0e\x32\x42.google.ads.googleads.v0.enums.InteractionTypeEnum.InteractionType\"\xe3\x02\n\x0e\x41\x64ScheduleInfo\x12R\n\x0cstart_minute\x18\x01 \x01(\x0e\x32<.google.ads.googleads.v0.enums.MinuteOfHourEnum.MinuteOfHour\x12P\n\nend_minute\x18\x02 \x01(\x0e\x32<.google.ads.googleads.v0.enums.MinuteOfHourEnum.MinuteOfHour\x12/\n\nstart_hour\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12-\n\x08\x65nd_hour\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12K\n\x0b\x64\x61y_of_week\x18\x05 \x01(\x0e\x32\x36.google.ads.googleads.v0.enums.DayOfWeekEnum.DayOfWeek\"Z\n\x0c\x41geRangeInfo\x12J\n\x04type\x18\x01 \x01(\x0e\x32<.google.ads.googleads.v0.enums.AgeRangeTypeEnum.AgeRangeType\"T\n\nGenderInfo\x12\x46\n\x04type\x18\x01 \x01(\x0e\x32\x38.google.ads.googleads.v0.enums.GenderTypeEnum.GenderType\"c\n\x0fIncomeRangeInfo\x12P\n\x04type\x18\x01 \x01(\x0e\x32\x42.google.ads.googleads.v0.enums.IncomeRangeTypeEnum.IncomeRangeType\"l\n\x12ParentalStatusInfo\x12V\n\x04type\x18\x01 \x01(\x0e\x32H.google.ads.googleads.v0.enums.ParentalStatusTypeEnum.ParentalStatusType\"B\n\x10YouTubeVideoInfo\x12.\n\x08video_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"F\n\x12YouTubeChannelInfo\x12\x30\n\nchannel_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"?\n\x0cUserListInfo\x12/\n\tuser_list\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xa0\x02\n\rProximityInfo\x12?\n\tgeo_point\x18\x01 \x01(\x0b\x32,.google.ads.googleads.v0.common.GeoPointInfo\x12,\n\x06radius\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x62\n\x0cradius_units\x18\x03 \x01(\x0e\x32L.google.ads.googleads.v0.enums.ProximityRadiusUnitsEnum.ProximityRadiusUnits\x12<\n\x07\x61\x64\x64ress\x18\x04 \x01(\x0b\x32+.google.ads.googleads.v0.common.AddressInfo\"\x8f\x01\n\x0cGeoPointInfo\x12?\n\x1alongitude_in_micro_degrees\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12>\n\x19latitude_in_micro_degrees\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\"\xfc\x02\n\x0b\x41\x64\x64ressInfo\x12\x31\n\x0bpostal_code\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rprovince_code\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x63ountry_code\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rprovince_name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0estreet_address\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x0fstreet_address2\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12/\n\tcity_name\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"m\n\tTopicInfo\x12\x34\n\x0etopic_constant\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12*\n\x04path\x18\x02 \x03(\x0b\x32\x1c.google.protobuf.StringValue\"G\n\x0cLanguageInfo\x12\x37\n\x11language_constant\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"?\n\x0bIpBlockInfo\x12\x30\n\nip_address\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"f\n\x10\x43ontentLabelInfo\x12R\n\x04type\x18\x01 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.ContentLabelTypeEnum.ContentLabelType\"E\n\x0b\x43\x61rrierInfo\x12\x36\n\x10\x63\x61rrier_constant\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"P\n\x10UserInterestInfo\x12<\n\x16user_interest_category\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\xc3\x01\n\"com.google.ads.googleads.v0.commonB\rCriteriaProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') , - dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_age__range__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_day__of__week__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_gender__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_hotel__date__selection__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_income__range__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_interaction__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__match__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_listing__custom__attribute__index__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_listing__group__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_minute__of__hour__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_parental__status__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__channel__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__channel__exclusivity__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__condition__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__type__level__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_proximity__radius__units__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_age__range__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_content__label__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_day__of__week__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_gender__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_hotel__date__selection__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_income__range__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_interaction__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__match__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_listing__custom__attribute__index__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_listing__group__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_minute__of__hour__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_parental__status__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_preferred__content__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__channel__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__channel__exclusivity__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__condition__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_product__type__level__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_proximity__radius__units__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -77,8 +79,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1167, - serialized_end=1314, + serialized_start=1295, + serialized_end=1442, ) @@ -108,8 +110,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1316, - serialized_end=1374, + serialized_start=1444, + serialized_end=1502, ) @@ -139,8 +141,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1376, - serialized_end=1449, + serialized_start=1504, + serialized_end=1577, ) @@ -170,8 +172,39 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1451, - serialized_end=1527, + serialized_start=1579, + serialized_end=1655, +) + + +_PREFERREDCONTENTINFO = _descriptor.Descriptor( + name='PreferredContentInfo', + full_name='google.ads.googleads.v0.common.PreferredContentInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='type', full_name='google.ads.googleads.v0.common.PreferredContentInfo.type', index=0, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1657, + serialized_end=1771, ) @@ -215,8 +248,39 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1530, - serialized_end=1771, + serialized_start=1774, + serialized_end=2015, +) + + +_LISTINGSCOPEINFO = _descriptor.Descriptor( + name='ListingScopeInfo', + full_name='google.ads.googleads.v0.common.ListingScopeInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='dimensions', full_name='google.ads.googleads.v0.common.ListingScopeInfo.dimensions', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2017, + serialized_end=2109, ) @@ -326,8 +390,8 @@ name='dimension', full_name='google.ads.googleads.v0.common.ListingDimensionInfo.dimension', index=0, containing_type=None, fields=[]), ], - serialized_start=1774, - serialized_end=2761, + serialized_start=2112, + serialized_end=3099, ) @@ -357,8 +421,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2763, - serialized_end=2826, + serialized_start=3101, + serialized_end=3164, ) @@ -388,8 +452,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2828, - serialized_end=2886, + serialized_start=3166, + serialized_end=3224, ) @@ -419,8 +483,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2888, - serialized_end=2948, + serialized_start=3226, + serialized_end=3286, ) @@ -450,8 +514,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2950, - serialized_end=3038, + serialized_start=3288, + serialized_end=3376, ) @@ -481,8 +545,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3040, - serialized_end=3111, + serialized_start=3378, + serialized_end=3449, ) @@ -512,8 +576,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3113, - serialized_end=3182, + serialized_start=3451, + serialized_end=3520, ) @@ -550,8 +614,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3185, - serialized_end=3365, + serialized_start=3523, + serialized_end=3703, ) @@ -581,8 +645,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3367, - serialized_end=3470, + serialized_start=3705, + serialized_end=3808, ) @@ -612,8 +676,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3473, - serialized_end=3621, + serialized_start=3811, + serialized_end=3959, ) @@ -643,8 +707,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3623, - serialized_end=3734, + serialized_start=3961, + serialized_end=4072, ) @@ -674,8 +738,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3736, - serialized_end=3801, + serialized_start=4074, + serialized_end=4139, ) @@ -712,8 +776,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3804, - serialized_end=3951, + serialized_start=4142, + serialized_end=4289, ) @@ -743,8 +807,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3953, - serialized_end=4077, + serialized_start=4291, + serialized_end=4415, ) @@ -781,8 +845,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4079, - serialized_end=4204, + serialized_start=4417, + serialized_end=4542, ) @@ -819,8 +883,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4206, - serialized_end=4327, + serialized_start=4544, + serialized_end=4665, ) @@ -850,8 +914,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4329, - serialized_end=4427, + serialized_start=4667, + serialized_end=4765, ) @@ -881,8 +945,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4429, - serialized_end=4532, + serialized_start=4767, + serialized_end=4870, ) @@ -940,8 +1004,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4535, - serialized_end=4890, + serialized_start=4873, + serialized_end=5228, ) @@ -971,8 +1035,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4892, - serialized_end=4982, + serialized_start=5230, + serialized_end=5320, ) @@ -1002,8 +1066,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4984, - serialized_end=5068, + serialized_start=5322, + serialized_end=5406, ) @@ -1033,8 +1097,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5070, - serialized_end=5169, + serialized_start=5408, + serialized_end=5507, ) @@ -1064,8 +1128,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5171, - serialized_end=5279, + serialized_start=5509, + serialized_end=5617, ) @@ -1095,8 +1159,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5281, - serialized_end=5347, + serialized_start=5619, + serialized_end=5685, ) @@ -1126,8 +1190,39 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5349, - serialized_end=5419, + serialized_start=5687, + serialized_end=5757, +) + + +_USERLISTINFO = _descriptor.Descriptor( + name='UserListInfo', + full_name='google.ads.googleads.v0.common.UserListInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='user_list', full_name='google.ads.googleads.v0.common.UserListInfo.user_list', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=5759, + serialized_end=5822, ) @@ -1178,8 +1273,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5422, - serialized_end=5710, + serialized_start=5825, + serialized_end=6113, ) @@ -1216,8 +1311,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5713, - serialized_end=5856, + serialized_start=6116, + serialized_end=6259, ) @@ -1289,8 +1384,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5859, - serialized_end=6239, + serialized_start=6262, + serialized_end=6642, ) @@ -1327,8 +1422,163 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6241, - serialized_end=6350, + serialized_start=6644, + serialized_end=6753, +) + + +_LANGUAGEINFO = _descriptor.Descriptor( + name='LanguageInfo', + full_name='google.ads.googleads.v0.common.LanguageInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='language_constant', full_name='google.ads.googleads.v0.common.LanguageInfo.language_constant', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=6755, + serialized_end=6826, +) + + +_IPBLOCKINFO = _descriptor.Descriptor( + name='IpBlockInfo', + full_name='google.ads.googleads.v0.common.IpBlockInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='ip_address', full_name='google.ads.googleads.v0.common.IpBlockInfo.ip_address', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=6828, + serialized_end=6891, +) + + +_CONTENTLABELINFO = _descriptor.Descriptor( + name='ContentLabelInfo', + full_name='google.ads.googleads.v0.common.ContentLabelInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='type', full_name='google.ads.googleads.v0.common.ContentLabelInfo.type', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=6893, + serialized_end=6995, +) + + +_CARRIERINFO = _descriptor.Descriptor( + name='CarrierInfo', + full_name='google.ads.googleads.v0.common.CarrierInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='carrier_constant', full_name='google.ads.googleads.v0.common.CarrierInfo.carrier_constant', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=6997, + serialized_end=7066, +) + + +_USERINTERESTINFO = _descriptor.Descriptor( + name='UserInterestInfo', + full_name='google.ads.googleads.v0.common.UserInterestInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='user_interest_category', full_name='google.ads.googleads.v0.common.UserInterestInfo.user_interest_category', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=7068, + serialized_end=7148, ) _KEYWORDINFO.fields_by_name['text'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE @@ -1336,9 +1586,11 @@ _PLACEMENTINFO.fields_by_name['url'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _LOCATIONINFO.fields_by_name['geo_target_constant'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _DEVICEINFO.fields_by_name['type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2._DEVICEENUM_DEVICE +_PREFERREDCONTENTINFO.fields_by_name['type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_preferred__content__type__pb2._PREFERREDCONTENTTYPEENUM_PREFERREDCONTENTTYPE _LISTINGGROUPINFO.fields_by_name['type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_listing__group__type__pb2._LISTINGGROUPTYPEENUM_LISTINGGROUPTYPE _LISTINGGROUPINFO.fields_by_name['case_value'].message_type = _LISTINGDIMENSIONINFO _LISTINGGROUPINFO.fields_by_name['parent_ad_group_criterion'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_LISTINGSCOPEINFO.fields_by_name['dimensions'].message_type = _LISTINGDIMENSIONINFO _LISTINGDIMENSIONINFO.fields_by_name['listing_brand'].message_type = _LISTINGBRANDINFO _LISTINGDIMENSIONINFO.fields_by_name['hotel_id'].message_type = _HOTELIDINFO _LISTINGDIMENSIONINFO.fields_by_name['hotel_class'].message_type = _HOTELCLASSINFO @@ -1419,6 +1671,7 @@ _PARENTALSTATUSINFO.fields_by_name['type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_parental__status__type__pb2._PARENTALSTATUSTYPEENUM_PARENTALSTATUSTYPE _YOUTUBEVIDEOINFO.fields_by_name['video_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _YOUTUBECHANNELINFO.fields_by_name['channel_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_USERLISTINFO.fields_by_name['user_list'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _PROXIMITYINFO.fields_by_name['geo_point'].message_type = _GEOPOINTINFO _PROXIMITYINFO.fields_by_name['radius'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _PROXIMITYINFO.fields_by_name['radius_units'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_proximity__radius__units__pb2._PROXIMITYRADIUSUNITSENUM_PROXIMITYRADIUSUNITS @@ -1434,11 +1687,18 @@ _ADDRESSINFO.fields_by_name['city_name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _TOPICINFO.fields_by_name['topic_constant'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _TOPICINFO.fields_by_name['path'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_LANGUAGEINFO.fields_by_name['language_constant'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_IPBLOCKINFO.fields_by_name['ip_address'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_CONTENTLABELINFO.fields_by_name['type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_content__label__type__pb2._CONTENTLABELTYPEENUM_CONTENTLABELTYPE +_CARRIERINFO.fields_by_name['carrier_constant'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_USERINTERESTINFO.fields_by_name['user_interest_category'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE DESCRIPTOR.message_types_by_name['KeywordInfo'] = _KEYWORDINFO DESCRIPTOR.message_types_by_name['PlacementInfo'] = _PLACEMENTINFO DESCRIPTOR.message_types_by_name['LocationInfo'] = _LOCATIONINFO DESCRIPTOR.message_types_by_name['DeviceInfo'] = _DEVICEINFO +DESCRIPTOR.message_types_by_name['PreferredContentInfo'] = _PREFERREDCONTENTINFO DESCRIPTOR.message_types_by_name['ListingGroupInfo'] = _LISTINGGROUPINFO +DESCRIPTOR.message_types_by_name['ListingScopeInfo'] = _LISTINGSCOPEINFO DESCRIPTOR.message_types_by_name['ListingDimensionInfo'] = _LISTINGDIMENSIONINFO DESCRIPTOR.message_types_by_name['ListingBrandInfo'] = _LISTINGBRANDINFO DESCRIPTOR.message_types_by_name['HotelIdInfo'] = _HOTELIDINFO @@ -1464,15 +1724,21 @@ DESCRIPTOR.message_types_by_name['ParentalStatusInfo'] = _PARENTALSTATUSINFO DESCRIPTOR.message_types_by_name['YouTubeVideoInfo'] = _YOUTUBEVIDEOINFO DESCRIPTOR.message_types_by_name['YouTubeChannelInfo'] = _YOUTUBECHANNELINFO +DESCRIPTOR.message_types_by_name['UserListInfo'] = _USERLISTINFO DESCRIPTOR.message_types_by_name['ProximityInfo'] = _PROXIMITYINFO DESCRIPTOR.message_types_by_name['GeoPointInfo'] = _GEOPOINTINFO DESCRIPTOR.message_types_by_name['AddressInfo'] = _ADDRESSINFO DESCRIPTOR.message_types_by_name['TopicInfo'] = _TOPICINFO +DESCRIPTOR.message_types_by_name['LanguageInfo'] = _LANGUAGEINFO +DESCRIPTOR.message_types_by_name['IpBlockInfo'] = _IPBLOCKINFO +DESCRIPTOR.message_types_by_name['ContentLabelInfo'] = _CONTENTLABELINFO +DESCRIPTOR.message_types_by_name['CarrierInfo'] = _CARRIERINFO +DESCRIPTOR.message_types_by_name['UserInterestInfo'] = _USERINTERESTINFO _sym_db.RegisterFileDescriptor(DESCRIPTOR) KeywordInfo = _reflection.GeneratedProtocolMessageType('KeywordInfo', (_message.Message,), dict( DESCRIPTOR = _KEYWORDINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A keyword criterion. @@ -1489,7 +1755,7 @@ PlacementInfo = _reflection.GeneratedProtocolMessageType('PlacementInfo', (_message.Message,), dict( DESCRIPTOR = _PLACEMENTINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A placement criterion. This can be used to modify bids for sites when targeting the content network. @@ -1505,7 +1771,7 @@ LocationInfo = _reflection.GeneratedProtocolMessageType('LocationInfo', (_message.Message,), dict( DESCRIPTOR = _LOCATIONINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A location criterion. @@ -1520,7 +1786,7 @@ DeviceInfo = _reflection.GeneratedProtocolMessageType('DeviceInfo', (_message.Message,), dict( DESCRIPTOR = _DEVICEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A device criterion. @@ -1533,9 +1799,24 @@ )) _sym_db.RegisterMessage(DeviceInfo) +PreferredContentInfo = _reflection.GeneratedProtocolMessageType('PreferredContentInfo', (_message.Message,), dict( + DESCRIPTOR = _PREFERREDCONTENTINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' + , + __doc__ = """A preferred content criterion. + + + Attributes: + type: + Type of the preferred content. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.PreferredContentInfo) + )) +_sym_db.RegisterMessage(PreferredContentInfo) + ListingGroupInfo = _reflection.GeneratedProtocolMessageType('ListingGroupInfo', (_message.Message,), dict( DESCRIPTOR = _LISTINGGROUPINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A listing group criterion. @@ -1554,9 +1835,24 @@ )) _sym_db.RegisterMessage(ListingGroupInfo) +ListingScopeInfo = _reflection.GeneratedProtocolMessageType('ListingScopeInfo', (_message.Message,), dict( + DESCRIPTOR = _LISTINGSCOPEINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' + , + __doc__ = """A listing scope criterion. + + + Attributes: + dimensions: + Scope of the campaign criterion. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.ListingScopeInfo) + )) +_sym_db.RegisterMessage(ListingScopeInfo) + ListingDimensionInfo = _reflection.GeneratedProtocolMessageType('ListingDimensionInfo', (_message.Message,), dict( DESCRIPTOR = _LISTINGDIMENSIONINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Listing dimensions for listing group criterion. @@ -1595,7 +1891,7 @@ ListingBrandInfo = _reflection.GeneratedProtocolMessageType('ListingBrandInfo', (_message.Message,), dict( DESCRIPTOR = _LISTINGBRANDINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Brand of the listing. @@ -1610,7 +1906,7 @@ HotelIdInfo = _reflection.GeneratedProtocolMessageType('HotelIdInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELIDINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Advertiser-specific hotel ID. @@ -1625,7 +1921,7 @@ HotelClassInfo = _reflection.GeneratedProtocolMessageType('HotelClassInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELCLASSINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Class of the hotel as a number of stars 1 to 5. @@ -1640,7 +1936,7 @@ HotelCountryRegionInfo = _reflection.GeneratedProtocolMessageType('HotelCountryRegionInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELCOUNTRYREGIONINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Country or Region the hotel is located in. @@ -1655,7 +1951,7 @@ HotelStateInfo = _reflection.GeneratedProtocolMessageType('HotelStateInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELSTATEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """State the hotel is located in. @@ -1670,7 +1966,7 @@ HotelCityInfo = _reflection.GeneratedProtocolMessageType('HotelCityInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELCITYINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """City the hotel is located in. @@ -1685,7 +1981,7 @@ ListingCustomAttributeInfo = _reflection.GeneratedProtocolMessageType('ListingCustomAttributeInfo', (_message.Message,), dict( DESCRIPTOR = _LISTINGCUSTOMATTRIBUTEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Listing custom attribute. @@ -1702,7 +1998,7 @@ ProductChannelInfo = _reflection.GeneratedProtocolMessageType('ProductChannelInfo', (_message.Message,), dict( DESCRIPTOR = _PRODUCTCHANNELINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Locality of a product offer. @@ -1717,7 +2013,7 @@ ProductChannelExclusivityInfo = _reflection.GeneratedProtocolMessageType('ProductChannelExclusivityInfo', (_message.Message,), dict( DESCRIPTOR = _PRODUCTCHANNELEXCLUSIVITYINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Availability of a product offer. @@ -1732,7 +2028,7 @@ ProductConditionInfo = _reflection.GeneratedProtocolMessageType('ProductConditionInfo', (_message.Message,), dict( DESCRIPTOR = _PRODUCTCONDITIONINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Condition of a product offer. @@ -1747,7 +2043,7 @@ ProductOfferIdInfo = _reflection.GeneratedProtocolMessageType('ProductOfferIdInfo', (_message.Message,), dict( DESCRIPTOR = _PRODUCTOFFERIDINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Id of a product offer. @@ -1762,7 +2058,7 @@ ProductTypeInfo = _reflection.GeneratedProtocolMessageType('ProductTypeInfo', (_message.Message,), dict( DESCRIPTOR = _PRODUCTTYPEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Type of a product offer. @@ -1779,7 +2075,7 @@ HotelDateSelectionTypeInfo = _reflection.GeneratedProtocolMessageType('HotelDateSelectionTypeInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELDATESELECTIONTYPEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Criterion for hotel date selection (default dates vs. user selected). @@ -1794,7 +2090,7 @@ HotelAdvanceBookingWindowInfo = _reflection.GeneratedProtocolMessageType('HotelAdvanceBookingWindowInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELADVANCEBOOKINGWINDOWINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Criterion for number of days prior to the stay the booking is being made. @@ -1812,7 +2108,7 @@ HotelLengthOfStayInfo = _reflection.GeneratedProtocolMessageType('HotelLengthOfStayInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELLENGTHOFSTAYINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Criterion for length of hotel stay in nights. @@ -1829,7 +2125,7 @@ HotelCheckInDayInfo = _reflection.GeneratedProtocolMessageType('HotelCheckInDayInfo', (_message.Message,), dict( DESCRIPTOR = _HOTELCHECKINDAYINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Criterion for day of the week the booking is for. @@ -1844,7 +2140,7 @@ InteractionTypeInfo = _reflection.GeneratedProtocolMessageType('InteractionTypeInfo', (_message.Message,), dict( DESCRIPTOR = _INTERACTIONTYPEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Criterion for Interaction Type. @@ -1859,7 +2155,7 @@ AdScheduleInfo = _reflection.GeneratedProtocolMessageType('AdScheduleInfo', (_message.Message,), dict( DESCRIPTOR = _ADSCHEDULEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Represents an AdSchedule criterion. @@ -1899,7 +2195,7 @@ AgeRangeInfo = _reflection.GeneratedProtocolMessageType('AgeRangeInfo', (_message.Message,), dict( DESCRIPTOR = _AGERANGEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """An age range criterion. @@ -1914,7 +2210,7 @@ GenderInfo = _reflection.GeneratedProtocolMessageType('GenderInfo', (_message.Message,), dict( DESCRIPTOR = _GENDERINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A gender criterion. @@ -1929,7 +2225,7 @@ IncomeRangeInfo = _reflection.GeneratedProtocolMessageType('IncomeRangeInfo', (_message.Message,), dict( DESCRIPTOR = _INCOMERANGEINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """An income range criterion. @@ -1944,7 +2240,7 @@ ParentalStatusInfo = _reflection.GeneratedProtocolMessageType('ParentalStatusInfo', (_message.Message,), dict( DESCRIPTOR = _PARENTALSTATUSINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A parental status criterion. @@ -1959,7 +2255,7 @@ YouTubeVideoInfo = _reflection.GeneratedProtocolMessageType('YouTubeVideoInfo', (_message.Message,), dict( DESCRIPTOR = _YOUTUBEVIDEOINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A YouTube Video criterion. @@ -1974,7 +2270,7 @@ YouTubeChannelInfo = _reflection.GeneratedProtocolMessageType('YouTubeChannelInfo', (_message.Message,), dict( DESCRIPTOR = _YOUTUBECHANNELINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A YouTube Channel criterion. @@ -1988,9 +2284,25 @@ )) _sym_db.RegisterMessage(YouTubeChannelInfo) +UserListInfo = _reflection.GeneratedProtocolMessageType('UserListInfo', (_message.Message,), dict( + DESCRIPTOR = _USERLISTINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' + , + __doc__ = """A User List criterion. Represents a user list that is defined by the + advertiser to be targeted. + + + Attributes: + user_list: + The User List resource name. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.UserListInfo) + )) +_sym_db.RegisterMessage(UserListInfo) + ProximityInfo = _reflection.GeneratedProtocolMessageType('ProximityInfo', (_message.Message,), dict( DESCRIPTOR = _PROXIMITYINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A Proximity criterion. The geo point and radius determine what geographical area is included. The address is a description of the geo @@ -2018,7 +2330,7 @@ GeoPointInfo = _reflection.GeneratedProtocolMessageType('GeoPointInfo', (_message.Message,), dict( DESCRIPTOR = _GEOPOINTINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Geo point for proximity criterion. @@ -2035,7 +2347,7 @@ AddressInfo = _reflection.GeneratedProtocolMessageType('AddressInfo', (_message.Message,), dict( DESCRIPTOR = _ADDRESSINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """Address for proximity criterion. @@ -2064,7 +2376,7 @@ TopicInfo = _reflection.GeneratedProtocolMessageType('TopicInfo', (_message.Message,), dict( DESCRIPTOR = _TOPICINFO, - __module__ = 'google.ads.googleads_v0.proto.common.criteria_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' , __doc__ = """A topic criterion. Use topics to target or exclude placements in the Google Display Network based on the category into which the placement @@ -2084,6 +2396,83 @@ )) _sym_db.RegisterMessage(TopicInfo) +LanguageInfo = _reflection.GeneratedProtocolMessageType('LanguageInfo', (_message.Message,), dict( + DESCRIPTOR = _LANGUAGEINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' + , + __doc__ = """A language criterion. + + + Attributes: + language_constant: + The language constant resource name. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.LanguageInfo) + )) +_sym_db.RegisterMessage(LanguageInfo) + +IpBlockInfo = _reflection.GeneratedProtocolMessageType('IpBlockInfo', (_message.Message,), dict( + DESCRIPTOR = _IPBLOCKINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' + , + __doc__ = """An IpBlock criterion used for IP exclusions. We allow: - IPv4 and IPv6 + addresses - individual addresses (192.168.0.1) - masks for individual + addresses (192.168.0.1/32) - masks for Class C networks (192.168.0.1/24) + + + Attributes: + ip_address: + The IP address of this IP block. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.IpBlockInfo) + )) +_sym_db.RegisterMessage(IpBlockInfo) + +ContentLabelInfo = _reflection.GeneratedProtocolMessageType('ContentLabelInfo', (_message.Message,), dict( + DESCRIPTOR = _CONTENTLABELINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' + , + __doc__ = """Content Label for category exclusion. + + + Attributes: + type: + Content label type, required for CREATE operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.ContentLabelInfo) + )) +_sym_db.RegisterMessage(ContentLabelInfo) + +CarrierInfo = _reflection.GeneratedProtocolMessageType('CarrierInfo', (_message.Message,), dict( + DESCRIPTOR = _CARRIERINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' + , + __doc__ = """Represents a Carrier Criterion. + + + Attributes: + carrier_constant: + The Carrier constant resource name. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.CarrierInfo) + )) +_sym_db.RegisterMessage(CarrierInfo) + +UserInterestInfo = _reflection.GeneratedProtocolMessageType('UserInterestInfo', (_message.Message,), dict( + DESCRIPTOR = _USERINTERESTINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.criteria_pb2' + , + __doc__ = """Represents a particular interest-based topic to be targeted. + + + Attributes: + user_interest_category: + The UserInterest resource name. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.UserInterestInfo) + )) +_sym_db.RegisterMessage(UserInterestInfo) + DESCRIPTOR.has_options = True DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\rCriteriaProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) diff --git a/google/ads/google_ads/v0/proto/common/criterion_category_availability_pb2.py b/google/ads/google_ads/v0/proto/common/criterion_category_availability_pb2.py new file mode 100644 index 000000000..9a785df03 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/criterion_category_availability_pb2.py @@ -0,0 +1,258 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/criterion_category_availability.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.enums import advertising_channel_sub_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_advertising__channel__sub__type__pb2 +from google.ads.google_ads.v0.proto.enums import advertising_channel_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_advertising__channel__type__pb2 +from google.ads.google_ads.v0.proto.enums import criterion_category_channel_availability_mode_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_criterion__category__channel__availability__mode__pb2 +from google.ads.google_ads.v0.proto.enums import criterion_category_locale_availability_mode_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_criterion__category__locale__availability__mode__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/criterion_category_availability.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\nJgoogle/ads/googleads_v0/proto/common/criterion_category_availability.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x46google/ads/googleads_v0/proto/enums/advertising_channel_sub_type.proto\x1a\x42google/ads/googleads_v0/proto/enums/advertising_channel_type.proto\x1aVgoogle/ads/googleads_v0/proto/enums/criterion_category_channel_availability_mode.proto\x1aUgoogle/ads/googleads_v0/proto/enums/criterion_category_locale_availability_mode.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xcb\x01\n\x1d\x43riterionCategoryAvailability\x12U\n\x07\x63hannel\x18\x01 \x01(\x0b\x32\x44.google.ads.googleads.v0.common.CriterionCategoryChannelAvailability\x12S\n\x06locale\x18\x02 \x03(\x0b\x32\x43.google.ads.googleads.v0.common.CriterionCategoryLocaleAvailability\"\xf0\x03\n$CriterionCategoryChannelAvailability\x12\x8f\x01\n\x11\x61vailability_mode\x18\x01 \x01(\x0e\x32t.google.ads.googleads.v0.enums.CriterionCategoryChannelAvailabilityModeEnum.CriterionCategoryChannelAvailabilityMode\x12r\n\x18\x61\x64vertising_channel_type\x18\x02 \x01(\x0e\x32P.google.ads.googleads.v0.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType\x12|\n\x1c\x61\x64vertising_channel_sub_type\x18\x03 \x03(\x0e\x32V.google.ads.googleads.v0.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType\x12\x44\n include_default_channel_sub_type\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\"\x9e\x02\n#CriterionCategoryLocaleAvailability\x12\x8d\x01\n\x11\x61vailability_mode\x18\x01 \x01(\x0e\x32r.google.ads.googleads.v0.enums.CriterionCategoryLocaleAvailabilityModeEnum.CriterionCategoryLocaleAvailabilityMode\x12\x32\n\x0c\x63ountry_code\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rlanguage_code\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\xd8\x01\n\"com.google.ads.googleads.v0.commonB\"CriterionCategoryAvailabilityProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_advertising__channel__sub__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_advertising__channel__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_criterion__category__channel__availability__mode__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_criterion__category__locale__availability__mode__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_CRITERIONCATEGORYAVAILABILITY = _descriptor.Descriptor( + name='CriterionCategoryAvailability', + full_name='google.ads.googleads.v0.common.CriterionCategoryAvailability', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='channel', full_name='google.ads.googleads.v0.common.CriterionCategoryAvailability.channel', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='locale', full_name='google.ads.googleads.v0.common.CriterionCategoryAvailability.locale', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=458, + serialized_end=661, +) + + +_CRITERIONCATEGORYCHANNELAVAILABILITY = _descriptor.Descriptor( + name='CriterionCategoryChannelAvailability', + full_name='google.ads.googleads.v0.common.CriterionCategoryChannelAvailability', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='availability_mode', full_name='google.ads.googleads.v0.common.CriterionCategoryChannelAvailability.availability_mode', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='advertising_channel_type', full_name='google.ads.googleads.v0.common.CriterionCategoryChannelAvailability.advertising_channel_type', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='advertising_channel_sub_type', full_name='google.ads.googleads.v0.common.CriterionCategoryChannelAvailability.advertising_channel_sub_type', index=2, + number=3, type=14, cpp_type=8, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='include_default_channel_sub_type', full_name='google.ads.googleads.v0.common.CriterionCategoryChannelAvailability.include_default_channel_sub_type', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=664, + serialized_end=1160, +) + + +_CRITERIONCATEGORYLOCALEAVAILABILITY = _descriptor.Descriptor( + name='CriterionCategoryLocaleAvailability', + full_name='google.ads.googleads.v0.common.CriterionCategoryLocaleAvailability', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='availability_mode', full_name='google.ads.googleads.v0.common.CriterionCategoryLocaleAvailability.availability_mode', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='country_code', full_name='google.ads.googleads.v0.common.CriterionCategoryLocaleAvailability.country_code', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='language_code', full_name='google.ads.googleads.v0.common.CriterionCategoryLocaleAvailability.language_code', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1163, + serialized_end=1449, +) + +_CRITERIONCATEGORYAVAILABILITY.fields_by_name['channel'].message_type = _CRITERIONCATEGORYCHANNELAVAILABILITY +_CRITERIONCATEGORYAVAILABILITY.fields_by_name['locale'].message_type = _CRITERIONCATEGORYLOCALEAVAILABILITY +_CRITERIONCATEGORYCHANNELAVAILABILITY.fields_by_name['availability_mode'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_criterion__category__channel__availability__mode__pb2._CRITERIONCATEGORYCHANNELAVAILABILITYMODEENUM_CRITERIONCATEGORYCHANNELAVAILABILITYMODE +_CRITERIONCATEGORYCHANNELAVAILABILITY.fields_by_name['advertising_channel_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_advertising__channel__type__pb2._ADVERTISINGCHANNELTYPEENUM_ADVERTISINGCHANNELTYPE +_CRITERIONCATEGORYCHANNELAVAILABILITY.fields_by_name['advertising_channel_sub_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_advertising__channel__sub__type__pb2._ADVERTISINGCHANNELSUBTYPEENUM_ADVERTISINGCHANNELSUBTYPE +_CRITERIONCATEGORYCHANNELAVAILABILITY.fields_by_name['include_default_channel_sub_type'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +_CRITERIONCATEGORYLOCALEAVAILABILITY.fields_by_name['availability_mode'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_criterion__category__locale__availability__mode__pb2._CRITERIONCATEGORYLOCALEAVAILABILITYMODEENUM_CRITERIONCATEGORYLOCALEAVAILABILITYMODE +_CRITERIONCATEGORYLOCALEAVAILABILITY.fields_by_name['country_code'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_CRITERIONCATEGORYLOCALEAVAILABILITY.fields_by_name['language_code'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +DESCRIPTOR.message_types_by_name['CriterionCategoryAvailability'] = _CRITERIONCATEGORYAVAILABILITY +DESCRIPTOR.message_types_by_name['CriterionCategoryChannelAvailability'] = _CRITERIONCATEGORYCHANNELAVAILABILITY +DESCRIPTOR.message_types_by_name['CriterionCategoryLocaleAvailability'] = _CRITERIONCATEGORYLOCALEAVAILABILITY +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CriterionCategoryAvailability = _reflection.GeneratedProtocolMessageType('CriterionCategoryAvailability', (_message.Message,), dict( + DESCRIPTOR = _CRITERIONCATEGORYAVAILABILITY, + __module__ = 'google.ads.google_ads.v0.proto.common.criterion_category_availability_pb2' + , + __doc__ = """Information of category availability, per advertising channel. + + + Attributes: + channel: + Channel types and subtypes that are available to the category. + locale: + Locales that are available to the category for the channel. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.CriterionCategoryAvailability) + )) +_sym_db.RegisterMessage(CriterionCategoryAvailability) + +CriterionCategoryChannelAvailability = _reflection.GeneratedProtocolMessageType('CriterionCategoryChannelAvailability', (_message.Message,), dict( + DESCRIPTOR = _CRITERIONCATEGORYCHANNELAVAILABILITY, + __module__ = 'google.ads.google_ads.v0.proto.common.criterion_category_availability_pb2' + , + __doc__ = """Information of advertising channel type and subtypes a category is + available in. + + + Attributes: + availability_mode: + Format of the channel availability. Can be ALL\_CHANNELS (the + rest of the fields will not be set), CHANNEL\_TYPE (only + advertising\_channel\_type type will be set, the category is + available to all sub types under it) or + CHANNEL\_TYPE\_AND\_SUBTYPES (advertising\_channel\_type, + advertising\_channel\_sub\_type, and + include\_default\_channel\_sub\_type will all be set). + advertising_channel_type: + Channel type the category is available to. + advertising_channel_sub_type: + Channel subtypes under the channel type the category is + available to. + include_default_channel_sub_type: + Whether default channel sub type is included. For example, + advertising\_channel\_type being DISPLAY and + include\_default\_channel\_sub\_type being false means that + the default display campaign where channel sub type is not set + is not included in this availability configuration. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.CriterionCategoryChannelAvailability) + )) +_sym_db.RegisterMessage(CriterionCategoryChannelAvailability) + +CriterionCategoryLocaleAvailability = _reflection.GeneratedProtocolMessageType('CriterionCategoryLocaleAvailability', (_message.Message,), dict( + DESCRIPTOR = _CRITERIONCATEGORYLOCALEAVAILABILITY, + __module__ = 'google.ads.google_ads.v0.proto.common.criterion_category_availability_pb2' + , + __doc__ = """Information about which locales a category is available in. + + + Attributes: + availability_mode: + Format of the locale availability. Can be LAUNCHED\_TO\_ALL + (both country and language will be empty), COUNTRY (only + country will be set), LANGUAGE (only language wil be set), + COUNTRY\_AND\_LANGUAGE (both country and language will be + set). + country_code: + Code of the country. + language_code: + Code of the language. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.CriterionCategoryLocaleAvailability) + )) +_sym_db.RegisterMessage(CriterionCategoryLocaleAvailability) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\"CriterionCategoryAvailabilityProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/common/criterion_category_availability_pb2_grpc.py b/google/ads/google_ads/v0/proto/common/criterion_category_availability_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/criterion_category_availability_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/common/custom_parameter_pb2.py b/google/ads/google_ads/v0/proto/common/custom_parameter_pb2.py index 101348815..c5e2bd105 100644 --- a/google/ads/google_ads/v0/proto/common/custom_parameter_pb2.py +++ b/google/ads/google_ads/v0/proto/common/custom_parameter_pb2.py @@ -71,7 +71,7 @@ CustomParameter = _reflection.GeneratedProtocolMessageType('CustomParameter', (_message.Message,), dict( DESCRIPTOR = _CUSTOMPARAMETER, - __module__ = 'google.ads.googleads_v0.proto.common.custom_parameter_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.custom_parameter_pb2' , __doc__ = """A mapping that can be used by custom parameter tags in a ``tracking_url_template``, ``final_urls``, or ``mobile_final_urls``. diff --git a/google/ads/google_ads/v0/proto/common/dates_pb2.py b/google/ads/google_ads/v0/proto/common/dates_pb2.py new file mode 100644 index 000000000..cc13b4fcd --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/dates_pb2.py @@ -0,0 +1,92 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/dates.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/dates.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\n0google/ads/googleads_v0/proto/common/dates.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x1egoogle/protobuf/wrappers.proto\"m\n\tDateRange\x12\x30\n\nstart_date\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12.\n\x08\x65nd_date\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\xc0\x01\n\"com.google.ads.googleads.v0.commonB\nDatesProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + , + dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_DATERANGE = _descriptor.Descriptor( + name='DateRange', + full_name='google.ads.googleads.v0.common.DateRange', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='start_date', full_name='google.ads.googleads.v0.common.DateRange.start_date', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='end_date', full_name='google.ads.googleads.v0.common.DateRange.end_date', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=116, + serialized_end=225, +) + +_DATERANGE.fields_by_name['start_date'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_DATERANGE.fields_by_name['end_date'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +DESCRIPTOR.message_types_by_name['DateRange'] = _DATERANGE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +DateRange = _reflection.GeneratedProtocolMessageType('DateRange', (_message.Message,), dict( + DESCRIPTOR = _DATERANGE, + __module__ = 'google.ads.google_ads.v0.proto.common.dates_pb2' + , + __doc__ = """A date range. + + + Attributes: + start_date: + The start date, in yyyy-mm-dd format. + end_date: + The end date, in yyyy-mm-dd format. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.DateRange) + )) +_sym_db.RegisterMessage(DateRange) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\nDatesProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/common/dates_pb2_grpc.py b/google/ads/google_ads/v0/proto/common/dates_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/dates_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/common/explorer_auto_optimizer_setting_pb2.py b/google/ads/google_ads/v0/proto/common/explorer_auto_optimizer_setting_pb2.py new file mode 100644 index 000000000..784856133 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/explorer_auto_optimizer_setting_pb2.py @@ -0,0 +1,83 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/explorer_auto_optimizer_setting.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/explorer_auto_optimizer_setting.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\nJgoogle/ads/googleads_v0/proto/common/explorer_auto_optimizer_setting.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x1egoogle/protobuf/wrappers.proto\"J\n\x1c\x45xplorerAutoOptimizerSetting\x12*\n\x06opt_in\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.BoolValueB\xd7\x01\n\"com.google.ads.googleads.v0.commonB!ExplorerAutoOptimizerSettingProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + , + dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_EXPLORERAUTOOPTIMIZERSETTING = _descriptor.Descriptor( + name='ExplorerAutoOptimizerSetting', + full_name='google.ads.googleads.v0.common.ExplorerAutoOptimizerSetting', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='opt_in', full_name='google.ads.googleads.v0.common.ExplorerAutoOptimizerSetting.opt_in', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=142, + serialized_end=216, +) + +_EXPLORERAUTOOPTIMIZERSETTING.fields_by_name['opt_in'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +DESCRIPTOR.message_types_by_name['ExplorerAutoOptimizerSetting'] = _EXPLORERAUTOOPTIMIZERSETTING +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +ExplorerAutoOptimizerSetting = _reflection.GeneratedProtocolMessageType('ExplorerAutoOptimizerSetting', (_message.Message,), dict( + DESCRIPTOR = _EXPLORERAUTOOPTIMIZERSETTING, + __module__ = 'google.ads.google_ads.v0.proto.common.explorer_auto_optimizer_setting_pb2' + , + __doc__ = """Settings for the Display Campaign Optimizer, initially termed + "Explorer". + + + Attributes: + opt_in: + Indicates whether the optimizer is turned on. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.ExplorerAutoOptimizerSetting) + )) +_sym_db.RegisterMessage(ExplorerAutoOptimizerSetting) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB!ExplorerAutoOptimizerSettingProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/common/explorer_auto_optimizer_setting_pb2_grpc.py b/google/ads/google_ads/v0/proto/common/explorer_auto_optimizer_setting_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/explorer_auto_optimizer_setting_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/common/feed_common_pb2.py b/google/ads/google_ads/v0/proto/common/feed_common_pb2.py new file mode 100644 index 000000000..c3965b2a4 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/feed_common_pb2.py @@ -0,0 +1,92 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/feed_common.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/feed_common.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\n6google/ads/googleads_v0/proto/common/feed_common.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x1egoogle/protobuf/wrappers.proto\"p\n\x05Price\x12\x33\n\rcurrency_code\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\ramount_micros\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\xc5\x01\n\"com.google.ads.googleads.v0.commonB\x0f\x46\x65\x65\x64\x43ommonProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + , + dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_PRICE = _descriptor.Descriptor( + name='Price', + full_name='google.ads.googleads.v0.common.Price', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='currency_code', full_name='google.ads.googleads.v0.common.Price.currency_code', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='amount_micros', full_name='google.ads.googleads.v0.common.Price.amount_micros', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=122, + serialized_end=234, +) + +_PRICE.fields_by_name['currency_code'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_PRICE.fields_by_name['amount_micros'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +DESCRIPTOR.message_types_by_name['Price'] = _PRICE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +Price = _reflection.GeneratedProtocolMessageType('Price', (_message.Message,), dict( + DESCRIPTOR = _PRICE, + __module__ = 'google.ads.google_ads.v0.proto.common.feed_common_pb2' + , + __doc__ = """Represents a price in a particular currency. + + + Attributes: + currency_code: + Three-character ISO 4217 currency code. + amount_micros: + Amount in micros. One million is equivalent to one unit. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.Price) + )) +_sym_db.RegisterMessage(Price) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\017FeedCommonProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/common/feed_common_pb2_grpc.py b/google/ads/google_ads/v0/proto/common/feed_common_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/feed_common_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/common/frequency_cap_pb2.py b/google/ads/google_ads/v0/proto/common/frequency_cap_pb2.py new file mode 100644 index 000000000..48e113dfc --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/frequency_cap_pb2.py @@ -0,0 +1,179 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/frequency_cap.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.enums import frequency_cap_event_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__event__type__pb2 +from google.ads.google_ads.v0.proto.enums import frequency_cap_level_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__level__pb2 +from google.ads.google_ads.v0.proto.enums import frequency_cap_time_unit_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__time__unit__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/frequency_cap.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\n8google/ads/googleads_v0/proto/common/frequency_cap.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x42google/ads/googleads_v0/proto/enums/frequency_cap_event_type.proto\x1a=google/ads/googleads_v0/proto/enums/frequency_cap_level.proto\x1a\x41google/ads/googleads_v0/proto/enums/frequency_cap_time_unit.proto\x1a\x1egoogle/protobuf/wrappers.proto\"{\n\x11\x46requencyCapEntry\x12<\n\x03key\x18\x01 \x01(\x0b\x32/.google.ads.googleads.v0.common.FrequencyCapKey\x12(\n\x03\x63\x61p\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\"\xdf\x02\n\x0f\x46requencyCapKey\x12U\n\x05level\x18\x01 \x01(\x0e\x32\x46.google.ads.googleads.v0.enums.FrequencyCapLevelEnum.FrequencyCapLevel\x12\x62\n\nevent_type\x18\x03 \x01(\x0e\x32N.google.ads.googleads.v0.enums.FrequencyCapEventTypeEnum.FrequencyCapEventType\x12_\n\ttime_unit\x18\x02 \x01(\x0e\x32L.google.ads.googleads.v0.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit\x12\x30\n\x0btime_length\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\xc7\x01\n\"com.google.ads.googleads.v0.commonB\x11\x46requencyCapProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__event__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__level__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__time__unit__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_FREQUENCYCAPENTRY = _descriptor.Descriptor( + name='FrequencyCapEntry', + full_name='google.ads.googleads.v0.common.FrequencyCapEntry', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='key', full_name='google.ads.googleads.v0.common.FrequencyCapEntry.key', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='cap', full_name='google.ads.googleads.v0.common.FrequencyCapEntry.cap', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=322, + serialized_end=445, +) + + +_FREQUENCYCAPKEY = _descriptor.Descriptor( + name='FrequencyCapKey', + full_name='google.ads.googleads.v0.common.FrequencyCapKey', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='level', full_name='google.ads.googleads.v0.common.FrequencyCapKey.level', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='event_type', full_name='google.ads.googleads.v0.common.FrequencyCapKey.event_type', index=1, + number=3, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='time_unit', full_name='google.ads.googleads.v0.common.FrequencyCapKey.time_unit', index=2, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='time_length', full_name='google.ads.googleads.v0.common.FrequencyCapKey.time_length', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=448, + serialized_end=799, +) + +_FREQUENCYCAPENTRY.fields_by_name['key'].message_type = _FREQUENCYCAPKEY +_FREQUENCYCAPENTRY.fields_by_name['cap'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT32VALUE +_FREQUENCYCAPKEY.fields_by_name['level'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__level__pb2._FREQUENCYCAPLEVELENUM_FREQUENCYCAPLEVEL +_FREQUENCYCAPKEY.fields_by_name['event_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__event__type__pb2._FREQUENCYCAPEVENTTYPEENUM_FREQUENCYCAPEVENTTYPE +_FREQUENCYCAPKEY.fields_by_name['time_unit'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_frequency__cap__time__unit__pb2._FREQUENCYCAPTIMEUNITENUM_FREQUENCYCAPTIMEUNIT +_FREQUENCYCAPKEY.fields_by_name['time_length'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT32VALUE +DESCRIPTOR.message_types_by_name['FrequencyCapEntry'] = _FREQUENCYCAPENTRY +DESCRIPTOR.message_types_by_name['FrequencyCapKey'] = _FREQUENCYCAPKEY +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +FrequencyCapEntry = _reflection.GeneratedProtocolMessageType('FrequencyCapEntry', (_message.Message,), dict( + DESCRIPTOR = _FREQUENCYCAPENTRY, + __module__ = 'google.ads.google_ads.v0.proto.common.frequency_cap_pb2' + , + __doc__ = """A rule specifying the maximum number of times an ad (or some set of ads) + can be shown to a user over a particular time period. + + + Attributes: + key: + The key of a particular frequency cap. There can be no more + than one frequency cap with the same key. + cap: + Maximum number of events allowed during the time range by this + cap. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.FrequencyCapEntry) + )) +_sym_db.RegisterMessage(FrequencyCapEntry) + +FrequencyCapKey = _reflection.GeneratedProtocolMessageType('FrequencyCapKey', (_message.Message,), dict( + DESCRIPTOR = _FREQUENCYCAPKEY, + __module__ = 'google.ads.google_ads.v0.proto.common.frequency_cap_pb2' + , + __doc__ = """A group of fields used as keys for a frequency cap. There can be no more + than one frequency cap with the same key. + + + Attributes: + level: + The level on which the cap is to be applied (e.g. ad group ad, + ad group). The cap is applied to all the entities of this + level. + event_type: + The type of event that the cap applies to (e.g. impression). + time_unit: + Unit of time the cap is defined at (e.g. day, week). + time_length: + Number of time units the cap lasts. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.FrequencyCapKey) + )) +_sym_db.RegisterMessage(FrequencyCapKey) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\021FrequencyCapProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/common/frequency_cap_pb2_grpc.py b/google/ads/google_ads/v0/proto/common/frequency_cap_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/frequency_cap_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/common/keyword_plan_common_pb2.py b/google/ads/google_ads/v0/proto/common/keyword_plan_common_pb2.py new file mode 100644 index 000000000..a04364599 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/keyword_plan_common_pb2.py @@ -0,0 +1,93 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/keyword_plan_common.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.enums import keyword_plan_competition_level_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__competition__level__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/keyword_plan_common.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\n>google/ads/googleads_v0/proto/common/keyword_plan_common.proto\x12\x1egoogle.ads.googleads.v0.common\x1aHgoogle/ads/googleads_v0/proto/enums/keyword_plan_competition_level.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xca\x01\n\x1cKeywordPlanHistoricalMetrics\x12\x39\n\x14\x61vg_monthly_searches\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12o\n\x0b\x63ompetition\x18\x02 \x01(\x0e\x32Z.google.ads.googleads.v0.enums.KeywordPlanCompetitionLevelEnum.KeywordPlanCompetitionLevelB\xcc\x01\n\"com.google.ads.googleads.v0.commonB\x16KeywordPlanCommonProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__competition__level__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_KEYWORDPLANHISTORICALMETRICS = _descriptor.Descriptor( + name='KeywordPlanHistoricalMetrics', + full_name='google.ads.googleads.v0.common.KeywordPlanHistoricalMetrics', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='avg_monthly_searches', full_name='google.ads.googleads.v0.common.KeywordPlanHistoricalMetrics.avg_monthly_searches', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='competition', full_name='google.ads.googleads.v0.common.KeywordPlanHistoricalMetrics.competition', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=205, + serialized_end=407, +) + +_KEYWORDPLANHISTORICALMETRICS.fields_by_name['avg_monthly_searches'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_KEYWORDPLANHISTORICALMETRICS.fields_by_name['competition'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__competition__level__pb2._KEYWORDPLANCOMPETITIONLEVELENUM_KEYWORDPLANCOMPETITIONLEVEL +DESCRIPTOR.message_types_by_name['KeywordPlanHistoricalMetrics'] = _KEYWORDPLANHISTORICALMETRICS +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanHistoricalMetrics = _reflection.GeneratedProtocolMessageType('KeywordPlanHistoricalMetrics', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANHISTORICALMETRICS, + __module__ = 'google.ads.google_ads.v0.proto.common.keyword_plan_common_pb2' + , + __doc__ = """Historical metrics. + + + Attributes: + avg_monthly_searches: + Average monthly searches for the past 12 months. + competition: + The competition level for the query. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.KeywordPlanHistoricalMetrics) + )) +_sym_db.RegisterMessage(KeywordPlanHistoricalMetrics) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\026KeywordPlanCommonProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/common/keyword_plan_common_pb2_grpc.py b/google/ads/google_ads/v0/proto/common/keyword_plan_common_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/keyword_plan_common_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/common/matching_function_pb2.py b/google/ads/google_ads/v0/proto/common/matching_function_pb2.py new file mode 100644 index 000000000..57ea63891 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/matching_function_pb2.py @@ -0,0 +1,95 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/matching_function.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/matching_function.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\n \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12]\n7all_conversions_from_interactions_value_per_interaction\x18\x43 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x32\n\x0c\x61verage_cost\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x61verage_cpc\x18\t \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x61verage_cpm\x18\n \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x36\n\x10\x61verage_position\x18\r \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x62ounce_rate\x18\x0f \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12+\n\x06\x63licks\x18\x13 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12J\n$content_budget_lost_impression_share\x18\x14 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12>\n\x18\x63ontent_impression_share\x18\x15 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12P\n*conversion_last_received_request_date_time\x18I \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x45\n\x1f\x63onversion_last_conversion_date\x18J \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12H\n\"content_rank_lost_impression_share\x18\x16 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12H\n\"conversions_from_interactions_rate\x18\x45 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x37\n\x11\x63onversions_value\x18\x46 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12@\n\x1a\x63onversions_value_per_cost\x18G \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12Y\n3conversions_from_interactions_value_per_interaction\x18H \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x63onversions\x18\x19 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0b\x63ost_micros\x18\x1a \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12>\n\x18\x63ost_per_all_conversions\x18\x44 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x39\n\x13\x63ost_per_conversion\x18\x1c \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12>\n\x18\x63ross_device_conversions\x18\x1d \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12)\n\x03\x63tr\x18\x1e \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x35\n\x0f\x65ngagement_rate\x18\x1f \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0b\x65ngagements\x18 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x45\n\x1fhotel_average_lead_value_micros\x18K \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0bimpressions\x18% \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x36\n\x10interaction_rate\x18& \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0cinteractions\x18\' \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x38\n\x12invalid_click_rate\x18( \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x33\n\x0einvalid_clicks\x18) \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12:\n\x14percent_new_visitors\x18* \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0bphone_calls\x18+ \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x36\n\x11phone_impressions\x18, \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x38\n\x12phone_through_rate\x18- \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x32\n\x0crelative_ctr\x18. \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12I\n#search_budget_lost_impression_share\x18/ \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12I\n#search_exact_match_impression_share\x18\x31 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12=\n\x17search_impression_share\x18\x32 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12G\n!search_rank_lost_impression_share\x18\x33 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12?\n\x19value_per_all_conversions\x18\x34 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12:\n\x14value_per_conversion\x18\x35 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12=\n\x17video_quartile_100_rate\x18\x36 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12<\n\x16video_quartile_25_rate\x18\x37 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12<\n\x16video_quartile_50_rate\x18\x38 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12<\n\x16video_quartile_75_rate\x18\x39 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x35\n\x0fvideo_view_rate\x18: \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0bvideo_views\x18; \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12=\n\x18view_through_conversions\x18< \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\xc2\x01\n\"com.google.ads.googleads.v0.commonB\x0cMetricsProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + serialized_pb=_b('\n2google/ads/googleads_v0/proto/common/metrics.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x1egoogle/protobuf/wrappers.proto\"\xbc\x1a\n\x07Metrics\x12L\n&all_conversions_from_interactions_rate\x18\x41 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12;\n\x15\x61ll_conversions_value\x18\x42 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x35\n\x0f\x61ll_conversions\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x44\n\x1e\x61ll_conversions_value_per_cost\x18> \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12]\n7all_conversions_from_interactions_value_per_interaction\x18\x43 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x32\n\x0c\x61verage_cost\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x61verage_cpc\x18\t \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x61verage_cpm\x18\n \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x61verage_cpv\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x36\n\x10\x61verage_position\x18\r \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x33\n\rbenchmark_ctr\x18M \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x62ounce_rate\x18\x0f \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12+\n\x06\x63licks\x18\x13 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12J\n$content_budget_lost_impression_share\x18\x14 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12>\n\x18\x63ontent_impression_share\x18\x15 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12P\n*conversion_last_received_request_date_time\x18I \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x45\n\x1f\x63onversion_last_conversion_date\x18J \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12H\n\"content_rank_lost_impression_share\x18\x16 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12H\n\"conversions_from_interactions_rate\x18\x45 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x37\n\x11\x63onversions_value\x18\x46 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12@\n\x1a\x63onversions_value_per_cost\x18G \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12Y\n3conversions_from_interactions_value_per_interaction\x18H \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0b\x63onversions\x18\x19 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0b\x63ost_micros\x18\x1a \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12>\n\x18\x63ost_per_all_conversions\x18\x44 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x39\n\x13\x63ost_per_conversion\x18\x1c \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12>\n\x18\x63ross_device_conversions\x18\x1d \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12)\n\x03\x63tr\x18\x1e \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x35\n\x0f\x65ngagement_rate\x18\x1f \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0b\x65ngagements\x18 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x45\n\x1fhotel_average_lead_value_micros\x18K \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0bimpressions\x18% \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x36\n\x10interaction_rate\x18& \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x31\n\x0cinteractions\x18\' \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x38\n\x12invalid_click_rate\x18( \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x33\n\x0einvalid_clicks\x18) \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12:\n\x14percent_new_visitors\x18* \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0bphone_calls\x18+ \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x36\n\x11phone_impressions\x18, \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x38\n\x12phone_through_rate\x18- \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x32\n\x0crelative_ctr\x18. \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12J\n$search_absolute_top_impression_share\x18N \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12I\n#search_budget_lost_impression_share\x18/ \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12I\n#search_exact_match_impression_share\x18\x31 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12=\n\x17search_impression_share\x18\x32 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12G\n!search_rank_lost_impression_share\x18\x33 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12?\n\x19value_per_all_conversions\x18\x34 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12:\n\x14value_per_conversion\x18\x35 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12=\n\x17video_quartile_100_rate\x18\x36 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12<\n\x16video_quartile_25_rate\x18\x37 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12<\n\x16video_quartile_50_rate\x18\x38 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12<\n\x16video_quartile_75_rate\x18\x39 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x35\n\x0fvideo_view_rate\x18: \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0bvideo_views\x18; \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12=\n\x18view_through_conversions\x18< \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\xc2\x01\n\"com.google.ads.googleads.v0.commonB\x0cMetricsProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') , dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -91,308 +91,329 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='average_position', full_name='google.ads.googleads.v0.common.Metrics.average_position', index=8, + name='average_cpv', full_name='google.ads.googleads.v0.common.Metrics.average_cpv', index=8, + number=11, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='average_position', full_name='google.ads.googleads.v0.common.Metrics.average_position', index=9, number=13, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='bounce_rate', full_name='google.ads.googleads.v0.common.Metrics.bounce_rate', index=9, + name='benchmark_ctr', full_name='google.ads.googleads.v0.common.Metrics.benchmark_ctr', index=10, + number=77, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='bounce_rate', full_name='google.ads.googleads.v0.common.Metrics.bounce_rate', index=11, number=15, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='clicks', full_name='google.ads.googleads.v0.common.Metrics.clicks', index=10, + name='clicks', full_name='google.ads.googleads.v0.common.Metrics.clicks', index=12, number=19, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='content_budget_lost_impression_share', full_name='google.ads.googleads.v0.common.Metrics.content_budget_lost_impression_share', index=11, + name='content_budget_lost_impression_share', full_name='google.ads.googleads.v0.common.Metrics.content_budget_lost_impression_share', index=13, number=20, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='content_impression_share', full_name='google.ads.googleads.v0.common.Metrics.content_impression_share', index=12, + name='content_impression_share', full_name='google.ads.googleads.v0.common.Metrics.content_impression_share', index=14, number=21, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='conversion_last_received_request_date_time', full_name='google.ads.googleads.v0.common.Metrics.conversion_last_received_request_date_time', index=13, + name='conversion_last_received_request_date_time', full_name='google.ads.googleads.v0.common.Metrics.conversion_last_received_request_date_time', index=15, number=73, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='conversion_last_conversion_date', full_name='google.ads.googleads.v0.common.Metrics.conversion_last_conversion_date', index=14, + name='conversion_last_conversion_date', full_name='google.ads.googleads.v0.common.Metrics.conversion_last_conversion_date', index=16, number=74, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='content_rank_lost_impression_share', full_name='google.ads.googleads.v0.common.Metrics.content_rank_lost_impression_share', index=15, + name='content_rank_lost_impression_share', full_name='google.ads.googleads.v0.common.Metrics.content_rank_lost_impression_share', index=17, number=22, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='conversions_from_interactions_rate', full_name='google.ads.googleads.v0.common.Metrics.conversions_from_interactions_rate', index=16, + name='conversions_from_interactions_rate', full_name='google.ads.googleads.v0.common.Metrics.conversions_from_interactions_rate', index=18, number=69, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='conversions_value', full_name='google.ads.googleads.v0.common.Metrics.conversions_value', index=17, + name='conversions_value', full_name='google.ads.googleads.v0.common.Metrics.conversions_value', index=19, number=70, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='conversions_value_per_cost', full_name='google.ads.googleads.v0.common.Metrics.conversions_value_per_cost', index=18, + name='conversions_value_per_cost', full_name='google.ads.googleads.v0.common.Metrics.conversions_value_per_cost', index=20, number=71, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='conversions_from_interactions_value_per_interaction', full_name='google.ads.googleads.v0.common.Metrics.conversions_from_interactions_value_per_interaction', index=19, + name='conversions_from_interactions_value_per_interaction', full_name='google.ads.googleads.v0.common.Metrics.conversions_from_interactions_value_per_interaction', index=21, number=72, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='conversions', full_name='google.ads.googleads.v0.common.Metrics.conversions', index=20, + name='conversions', full_name='google.ads.googleads.v0.common.Metrics.conversions', index=22, number=25, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='cost_micros', full_name='google.ads.googleads.v0.common.Metrics.cost_micros', index=21, + name='cost_micros', full_name='google.ads.googleads.v0.common.Metrics.cost_micros', index=23, number=26, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='cost_per_all_conversions', full_name='google.ads.googleads.v0.common.Metrics.cost_per_all_conversions', index=22, + name='cost_per_all_conversions', full_name='google.ads.googleads.v0.common.Metrics.cost_per_all_conversions', index=24, number=68, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='cost_per_conversion', full_name='google.ads.googleads.v0.common.Metrics.cost_per_conversion', index=23, + name='cost_per_conversion', full_name='google.ads.googleads.v0.common.Metrics.cost_per_conversion', index=25, number=28, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='cross_device_conversions', full_name='google.ads.googleads.v0.common.Metrics.cross_device_conversions', index=24, + name='cross_device_conversions', full_name='google.ads.googleads.v0.common.Metrics.cross_device_conversions', index=26, number=29, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='ctr', full_name='google.ads.googleads.v0.common.Metrics.ctr', index=25, + name='ctr', full_name='google.ads.googleads.v0.common.Metrics.ctr', index=27, number=30, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='engagement_rate', full_name='google.ads.googleads.v0.common.Metrics.engagement_rate', index=26, + name='engagement_rate', full_name='google.ads.googleads.v0.common.Metrics.engagement_rate', index=28, number=31, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='engagements', full_name='google.ads.googleads.v0.common.Metrics.engagements', index=27, + name='engagements', full_name='google.ads.googleads.v0.common.Metrics.engagements', index=29, number=32, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='hotel_average_lead_value_micros', full_name='google.ads.googleads.v0.common.Metrics.hotel_average_lead_value_micros', index=28, + name='hotel_average_lead_value_micros', full_name='google.ads.googleads.v0.common.Metrics.hotel_average_lead_value_micros', index=30, number=75, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='impressions', full_name='google.ads.googleads.v0.common.Metrics.impressions', index=29, + name='impressions', full_name='google.ads.googleads.v0.common.Metrics.impressions', index=31, number=37, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='interaction_rate', full_name='google.ads.googleads.v0.common.Metrics.interaction_rate', index=30, + name='interaction_rate', full_name='google.ads.googleads.v0.common.Metrics.interaction_rate', index=32, number=38, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='interactions', full_name='google.ads.googleads.v0.common.Metrics.interactions', index=31, + name='interactions', full_name='google.ads.googleads.v0.common.Metrics.interactions', index=33, number=39, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='invalid_click_rate', full_name='google.ads.googleads.v0.common.Metrics.invalid_click_rate', index=32, + name='invalid_click_rate', full_name='google.ads.googleads.v0.common.Metrics.invalid_click_rate', index=34, number=40, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='invalid_clicks', full_name='google.ads.googleads.v0.common.Metrics.invalid_clicks', index=33, + name='invalid_clicks', full_name='google.ads.googleads.v0.common.Metrics.invalid_clicks', index=35, number=41, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='percent_new_visitors', full_name='google.ads.googleads.v0.common.Metrics.percent_new_visitors', index=34, + name='percent_new_visitors', full_name='google.ads.googleads.v0.common.Metrics.percent_new_visitors', index=36, number=42, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='phone_calls', full_name='google.ads.googleads.v0.common.Metrics.phone_calls', index=35, + name='phone_calls', full_name='google.ads.googleads.v0.common.Metrics.phone_calls', index=37, number=43, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='phone_impressions', full_name='google.ads.googleads.v0.common.Metrics.phone_impressions', index=36, + name='phone_impressions', full_name='google.ads.googleads.v0.common.Metrics.phone_impressions', index=38, number=44, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='phone_through_rate', full_name='google.ads.googleads.v0.common.Metrics.phone_through_rate', index=37, + name='phone_through_rate', full_name='google.ads.googleads.v0.common.Metrics.phone_through_rate', index=39, number=45, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='relative_ctr', full_name='google.ads.googleads.v0.common.Metrics.relative_ctr', index=38, + name='relative_ctr', full_name='google.ads.googleads.v0.common.Metrics.relative_ctr', index=40, number=46, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='search_budget_lost_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_budget_lost_impression_share', index=39, + name='search_absolute_top_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_absolute_top_impression_share', index=41, + number=78, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='search_budget_lost_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_budget_lost_impression_share', index=42, number=47, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='search_exact_match_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_exact_match_impression_share', index=40, + name='search_exact_match_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_exact_match_impression_share', index=43, number=49, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='search_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_impression_share', index=41, + name='search_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_impression_share', index=44, number=50, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='search_rank_lost_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_rank_lost_impression_share', index=42, + name='search_rank_lost_impression_share', full_name='google.ads.googleads.v0.common.Metrics.search_rank_lost_impression_share', index=45, number=51, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='value_per_all_conversions', full_name='google.ads.googleads.v0.common.Metrics.value_per_all_conversions', index=43, + name='value_per_all_conversions', full_name='google.ads.googleads.v0.common.Metrics.value_per_all_conversions', index=46, number=52, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='value_per_conversion', full_name='google.ads.googleads.v0.common.Metrics.value_per_conversion', index=44, + name='value_per_conversion', full_name='google.ads.googleads.v0.common.Metrics.value_per_conversion', index=47, number=53, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='video_quartile_100_rate', full_name='google.ads.googleads.v0.common.Metrics.video_quartile_100_rate', index=45, + name='video_quartile_100_rate', full_name='google.ads.googleads.v0.common.Metrics.video_quartile_100_rate', index=48, number=54, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='video_quartile_25_rate', full_name='google.ads.googleads.v0.common.Metrics.video_quartile_25_rate', index=46, + name='video_quartile_25_rate', full_name='google.ads.googleads.v0.common.Metrics.video_quartile_25_rate', index=49, number=55, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='video_quartile_50_rate', full_name='google.ads.googleads.v0.common.Metrics.video_quartile_50_rate', index=47, + name='video_quartile_50_rate', full_name='google.ads.googleads.v0.common.Metrics.video_quartile_50_rate', index=50, number=56, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='video_quartile_75_rate', full_name='google.ads.googleads.v0.common.Metrics.video_quartile_75_rate', index=48, + name='video_quartile_75_rate', full_name='google.ads.googleads.v0.common.Metrics.video_quartile_75_rate', index=51, number=57, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='video_view_rate', full_name='google.ads.googleads.v0.common.Metrics.video_view_rate', index=49, + name='video_view_rate', full_name='google.ads.googleads.v0.common.Metrics.video_view_rate', index=52, number=58, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='video_views', full_name='google.ads.googleads.v0.common.Metrics.video_views', index=50, + name='video_views', full_name='google.ads.googleads.v0.common.Metrics.video_views', index=53, number=59, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='view_through_conversions', full_name='google.ads.googleads.v0.common.Metrics.view_through_conversions', index=51, + name='view_through_conversions', full_name='google.ads.googleads.v0.common.Metrics.view_through_conversions', index=54, number=60, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -411,7 +432,7 @@ oneofs=[ ], serialized_start=119, - serialized_end=3327, + serialized_end=3507, ) _METRICS.fields_by_name['all_conversions_from_interactions_rate'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE @@ -422,7 +443,9 @@ _METRICS.fields_by_name['average_cost'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['average_cpc'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['average_cpm'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE +_METRICS.fields_by_name['average_cpv'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['average_position'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE +_METRICS.fields_by_name['benchmark_ctr'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['bounce_rate'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['clicks'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE _METRICS.fields_by_name['content_budget_lost_impression_share'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE @@ -453,6 +476,7 @@ _METRICS.fields_by_name['phone_impressions'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE _METRICS.fields_by_name['phone_through_rate'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['relative_ctr'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE +_METRICS.fields_by_name['search_absolute_top_impression_share'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['search_budget_lost_impression_share'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['search_exact_match_impression_share'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _METRICS.fields_by_name['search_impression_share'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE @@ -471,7 +495,7 @@ Metrics = _reflection.GeneratedProtocolMessageType('Metrics', (_message.Message,), dict( DESCRIPTOR = _METRICS, - __module__ = 'google.ads.googleads_v0.proto.common.metrics_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.metrics_pb2' , __doc__ = """Metrics data. @@ -502,8 +526,16 @@ clicks received. average_cpm: Average cost-per-thousand impressions (CPM). + average_cpv: + The average amount you pay each time someone views your ad. + The average CPV is defined by the total cost of all ad views + divided by the number of views. average_position: Your ad's position relative to those of other advertisers. + benchmark_ctr: + An indication on how other advertisers' Shopping ads for + similar products are performing based on how often people who + see their ad click on it. bounce_rate: Percentage of clicks where the user only visited a single page on your site. Imported from Google Analytics. @@ -609,6 +641,11 @@ clickthrough rate of all advertisers on the websites that show your ads. Measures how your ads perform on Display Network sites compared to other ads on the same sites. + search_absolute_top_impression_share: + The percentage of the customer's Shopping ad impressions that + are shown in the most prominent Shopping position. See this + Merchant Center article for details. Any value below 0.1 is + reported as 0.0999. search_budget_lost_impression_share: The estimated percent of times that your ad was eligible to show on the Search Network but didn't because your budget was diff --git a/google/ads/google_ads/v0/proto/common/policy_pb2.py b/google/ads/google_ads/v0/proto/common/policy_pb2.py index 7296228ed..d05ea0b9d 100644 --- a/google/ads/google_ads/v0/proto/common/policy_pb2.py +++ b/google/ads/google_ads/v0/proto/common/policy_pb2.py @@ -553,7 +553,7 @@ PolicyViolationKey = _reflection.GeneratedProtocolMessageType('PolicyViolationKey', (_message.Message,), dict( DESCRIPTOR = _POLICYVIOLATIONKEY, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """Key of the violation. The key is used for referring to a violation when filing an exemption request. @@ -575,7 +575,7 @@ PolicyValidationParameter = _reflection.GeneratedProtocolMessageType('PolicyValidationParameter', (_message.Message,), dict( DESCRIPTOR = _POLICYVALIDATIONPARAMETER, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """Parameter for controlling how policy checking is done. @@ -597,7 +597,7 @@ PolicyTopicEntry = _reflection.GeneratedProtocolMessageType('PolicyTopicEntry', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICENTRY, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """Policy finding attached to a resource (e.g. alcohol policy associated with a site that sells alcohol). @@ -636,7 +636,7 @@ TextList = _reflection.GeneratedProtocolMessageType('TextList', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICEVIDENCE_TEXTLIST, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """A list of fragments of text that violated a policy. @@ -654,7 +654,7 @@ WebsiteList = _reflection.GeneratedProtocolMessageType('WebsiteList', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICEVIDENCE_WEBSITELIST, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """A list of websites that caused a policy finding. Used for ONE\_WEBSITE\_PER\_AD\_GROUP policy topic, for example. In case there @@ -674,7 +674,7 @@ DestinationTextList = _reflection.GeneratedProtocolMessageType('DestinationTextList', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICEVIDENCE_DESTINATIONTEXTLIST, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """A list of strings found in a destination page that caused a policy finding. @@ -692,7 +692,7 @@ DestinationMismatch = _reflection.GeneratedProtocolMessageType('DestinationMismatch', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICEVIDENCE_DESTINATIONMISMATCH, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """Evidence of mismatches between the URLs of a resource. @@ -707,7 +707,7 @@ )) , DESCRIPTOR = _POLICYTOPICEVIDENCE, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """Additional information that explains a policy finding. @@ -744,7 +744,7 @@ CountryConstraintList = _reflection.GeneratedProtocolMessageType('CountryConstraintList', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICCONSTRAINT_COUNTRYCONSTRAINTLIST, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """A list of countries where a resource's serving is constrained. @@ -763,7 +763,7 @@ ResellerConstraint = _reflection.GeneratedProtocolMessageType('ResellerConstraint', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICCONSTRAINT_RESELLERCONSTRAINT, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """Indicates that a policy topic was constrained due to disapproval of the website for reseller purposes. @@ -776,7 +776,7 @@ CountryConstraint = _reflection.GeneratedProtocolMessageType('CountryConstraint', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICCONSTRAINT_COUNTRYCONSTRAINT, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """Indicates that a resource's ability to serve in a particular country is constrained. @@ -793,7 +793,7 @@ )) , DESCRIPTOR = _POLICYTOPICCONSTRAINT, - __module__ = 'google.ads.googleads_v0.proto.common.policy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.policy_pb2' , __doc__ = """Describes the effect on serving that a policy topic entry will have. diff --git a/google/ads/google_ads/v0/proto/common/real_time_bidding_setting_pb2.py b/google/ads/google_ads/v0/proto/common/real_time_bidding_setting_pb2.py new file mode 100644 index 000000000..74dc5945d --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/real_time_bidding_setting_pb2.py @@ -0,0 +1,83 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/real_time_bidding_setting.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/real_time_bidding_setting.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\nDgoogle/ads/googleads_v0/proto/common/real_time_bidding_setting.proto\x12\x1egoogle.ads.googleads.v0.common\x1a\x1egoogle/protobuf/wrappers.proto\"D\n\x16RealTimeBiddingSetting\x12*\n\x06opt_in\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.BoolValueB\xd1\x01\n\"com.google.ads.googleads.v0.commonB\x1bRealTimeBiddingSettingProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + , + dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_REALTIMEBIDDINGSETTING = _descriptor.Descriptor( + name='RealTimeBiddingSetting', + full_name='google.ads.googleads.v0.common.RealTimeBiddingSetting', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='opt_in', full_name='google.ads.googleads.v0.common.RealTimeBiddingSetting.opt_in', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=136, + serialized_end=204, +) + +_REALTIMEBIDDINGSETTING.fields_by_name['opt_in'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +DESCRIPTOR.message_types_by_name['RealTimeBiddingSetting'] = _REALTIMEBIDDINGSETTING +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +RealTimeBiddingSetting = _reflection.GeneratedProtocolMessageType('RealTimeBiddingSetting', (_message.Message,), dict( + DESCRIPTOR = _REALTIMEBIDDINGSETTING, + __module__ = 'google.ads.google_ads.v0.proto.common.real_time_bidding_setting_pb2' + , + __doc__ = """Settings for Real-Time Bidding, a feature only available for campaigns + targeting the Ad Exchange network. + + + Attributes: + opt_in: + Whether the campaign is opted in to real-time bidding. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.RealTimeBiddingSetting) + )) +_sym_db.RegisterMessage(RealTimeBiddingSetting) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\033RealTimeBiddingSettingProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/common/real_time_bidding_setting_pb2_grpc.py b/google/ads/google_ads/v0/proto/common/real_time_bidding_setting_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/real_time_bidding_setting_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/common/tag_snippet_pb2.py b/google/ads/google_ads/v0/proto/common/tag_snippet_pb2.py index a0ee426b9..cc46545e9 100644 --- a/google/ads/google_ads/v0/proto/common/tag_snippet_pb2.py +++ b/google/ads/google_ads/v0/proto/common/tag_snippet_pb2.py @@ -89,7 +89,7 @@ TagSnippet = _reflection.GeneratedProtocolMessageType('TagSnippet', (_message.Message,), dict( DESCRIPTOR = _TAGSNIPPET, - __module__ = 'google.ads.googleads_v0.proto.common.tag_snippet_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.tag_snippet_pb2' , __doc__ = """The site tag and event snippet pair for a TrackingCodeType. diff --git a/google/ads/google_ads/v0/proto/common/user_lists_pb2.py b/google/ads/google_ads/v0/proto/common/user_lists_pb2.py new file mode 100644 index 000000000..a615ef8a0 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/user_lists_pb2.py @@ -0,0 +1,168 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/common/user_lists.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.enums import customer_match_upload_key_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_customer__match__upload__key__type__pb2 +from google.ads.google_ads.v0.proto.enums import user_list_crm_data_source_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__crm__data__source__type__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/common/user_lists.proto', + package='google.ads.googleads.v0.common', + syntax='proto3', + serialized_pb=_b('\n5google/ads/googleads_v0/proto/common/user_lists.proto\x12\x1egoogle.ads.googleads.v0.common\x1aHgoogle/ads/googleads_v0/proto/enums/customer_match_upload_key_type.proto\x1aHgoogle/ads/googleads_v0/proto/enums/user_list_crm_data_source_type.proto\x1a\x1egoogle/protobuf/wrappers.proto\"K\n\x13SimilarUserListInfo\x12\x34\n\x0eseed_user_list\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xa9\x02\n\x14\x43rmBasedUserListInfo\x12,\n\x06\x61pp_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12q\n\x0fupload_key_type\x18\x02 \x01(\x0e\x32X.google.ads.googleads.v0.enums.CustomerMatchUploadKeyTypeEnum.CustomerMatchUploadKeyType\x12p\n\x10\x64\x61ta_source_type\x18\x03 \x01(\x0e\x32V.google.ads.googleads.v0.enums.UserListCrmDataSourceTypeEnum.UserListCrmDataSourceTypeB\xc4\x01\n\"com.google.ads.googleads.v0.commonB\x0eUserListsProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Common\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Commonb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_customer__match__upload__key__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__crm__data__source__type__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_SIMILARUSERLISTINFO = _descriptor.Descriptor( + name='SimilarUserListInfo', + full_name='google.ads.googleads.v0.common.SimilarUserListInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='seed_user_list', full_name='google.ads.googleads.v0.common.SimilarUserListInfo.seed_user_list', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=269, + serialized_end=344, +) + + +_CRMBASEDUSERLISTINFO = _descriptor.Descriptor( + name='CrmBasedUserListInfo', + full_name='google.ads.googleads.v0.common.CrmBasedUserListInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='app_id', full_name='google.ads.googleads.v0.common.CrmBasedUserListInfo.app_id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='upload_key_type', full_name='google.ads.googleads.v0.common.CrmBasedUserListInfo.upload_key_type', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='data_source_type', full_name='google.ads.googleads.v0.common.CrmBasedUserListInfo.data_source_type', index=2, + number=3, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=347, + serialized_end=644, +) + +_SIMILARUSERLISTINFO.fields_by_name['seed_user_list'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_CRMBASEDUSERLISTINFO.fields_by_name['app_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_CRMBASEDUSERLISTINFO.fields_by_name['upload_key_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_customer__match__upload__key__type__pb2._CUSTOMERMATCHUPLOADKEYTYPEENUM_CUSTOMERMATCHUPLOADKEYTYPE +_CRMBASEDUSERLISTINFO.fields_by_name['data_source_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__crm__data__source__type__pb2._USERLISTCRMDATASOURCETYPEENUM_USERLISTCRMDATASOURCETYPE +DESCRIPTOR.message_types_by_name['SimilarUserListInfo'] = _SIMILARUSERLISTINFO +DESCRIPTOR.message_types_by_name['CrmBasedUserListInfo'] = _CRMBASEDUSERLISTINFO +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +SimilarUserListInfo = _reflection.GeneratedProtocolMessageType('SimilarUserListInfo', (_message.Message,), dict( + DESCRIPTOR = _SIMILARUSERLISTINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.user_lists_pb2' + , + __doc__ = """SimilarUserList is a list of users which are similar to users from + another UserList. These lists are read-only and automatically created by + Google. + + + Attributes: + seed_user_list: + Seed UserList from which this list is derived. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.SimilarUserListInfo) + )) +_sym_db.RegisterMessage(SimilarUserListInfo) + +CrmBasedUserListInfo = _reflection.GeneratedProtocolMessageType('CrmBasedUserListInfo', (_message.Message,), dict( + DESCRIPTOR = _CRMBASEDUSERLISTINFO, + __module__ = 'google.ads.google_ads.v0.proto.common.user_lists_pb2' + , + __doc__ = """UserList of CRM users provided by the advertiser. + + + Attributes: + app_id: + A string that uniquely identifies a mobile application from + which the data was collected to the Google Ads API. For iOS, + the ID string is the 9 digit string that appears at the end of + an App Store URL (e.g., "476943146" for "Flood-It! 2" whose + App Store link is http://itunes.apple.com/us/app/flood- + it!-2/id476943146). For Android, the ID string is the + application's package name (e.g., "com.labpixies.colordrips" + for "Color Drips" given Google Play link https://play.google.c + om/store/apps/details?id=com.labpixies.colordrips). Required + when creating CrmBasedUserList for uploading mobile + advertising IDs. + upload_key_type: + Matching key type of the list. Mixed data types are not + allowed on the same list. This field is required for an ADD + operation. + data_source_type: + Data source of the list. Default value is FIRST\_PARTY. Only + whitelisted customers can create third party sourced crm + lists. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.common.CrmBasedUserListInfo) + )) +_sym_db.RegisterMessage(CrmBasedUserListInfo) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.commonB\016UserListsProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/common;common\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Common\312\002\036Google\\Ads\\GoogleAds\\V0\\Common')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/common/user_lists_pb2_grpc.py b/google/ads/google_ads/v0/proto/common/user_lists_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/common/user_lists_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/common/value_pb2.py b/google/ads/google_ads/v0/proto/common/value_pb2.py index e0dbd18ee..cf3a4a7ef 100644 --- a/google/ads/google_ads/v0/proto/common/value_pb2.py +++ b/google/ads/google_ads/v0/proto/common/value_pb2.py @@ -106,7 +106,7 @@ Value = _reflection.GeneratedProtocolMessageType('Value', (_message.Message,), dict( DESCRIPTOR = _VALUE, - __module__ = 'google.ads.googleads_v0.proto.common.value_pb2' + __module__ = 'google.ads.google_ads.v0.proto.common.value_pb2' , __doc__ = """A generic data container. diff --git a/google/ads/google_ads/v0/proto/enums/access_reason_pb2.py b/google/ads/google_ads/v0/proto/enums/access_reason_pb2.py new file mode 100644 index 000000000..b2654eaec --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/access_reason_pb2.py @@ -0,0 +1,111 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/access_reason.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/access_reason.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n7google/ads/googleads_v0/proto/enums/access_reason.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x85\x01\n\x10\x41\x63\x63\x65ssReasonEnum\"q\n\x0c\x41\x63\x63\x65ssReason\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\t\n\x05OWNED\x10\x02\x12\n\n\x06SHARED\x10\x03\x12\x0c\n\x08LICENSED\x10\x04\x12\x0e\n\nSUBSCRIBED\x10\x05\x12\x0e\n\nAFFILIATED\x10\x06\x42\xc2\x01\n!com.google.ads.googleads.v0.enumsB\x11\x41\x63\x63\x65ssReasonProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_ACCESSREASONENUM_ACCESSREASON = _descriptor.EnumDescriptor( + name='AccessReason', + full_name='google.ads.googleads.v0.enums.AccessReasonEnum.AccessReason', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='OWNED', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SHARED', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LICENSED', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SUBSCRIBED', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AFFILIATED', index=6, number=6, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=111, + serialized_end=224, +) +_sym_db.RegisterEnumDescriptor(_ACCESSREASONENUM_ACCESSREASON) + + +_ACCESSREASONENUM = _descriptor.Descriptor( + name='AccessReasonEnum', + full_name='google.ads.googleads.v0.enums.AccessReasonEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _ACCESSREASONENUM_ACCESSREASON, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=91, + serialized_end=224, +) + +_ACCESSREASONENUM_ACCESSREASON.containing_type = _ACCESSREASONENUM +DESCRIPTOR.message_types_by_name['AccessReasonEnum'] = _ACCESSREASONENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +AccessReasonEnum = _reflection.GeneratedProtocolMessageType('AccessReasonEnum', (_message.Message,), dict( + DESCRIPTOR = _ACCESSREASONENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.access_reason_pb2' + , + __doc__ = """Indicates the way the entity such as user list is related to a user. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.AccessReasonEnum) + )) +_sym_db.RegisterMessage(AccessReasonEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\021AccessReasonProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/access_reason_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/access_reason_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/access_reason_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/account_budget_proposal_status_pb2.py b/google/ads/google_ads/v0/proto/enums/account_budget_proposal_status_pb2.py index a57a16986..a3f2df2c3 100644 --- a/google/ads/google_ads/v0/proto/enums/account_budget_proposal_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/account_budget_proposal_status_pb2.py @@ -97,7 +97,7 @@ AccountBudgetProposalStatusEnum = _reflection.GeneratedProtocolMessageType('AccountBudgetProposalStatusEnum', (_message.Message,), dict( DESCRIPTOR = _ACCOUNTBUDGETPROPOSALSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.account_budget_proposal_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.account_budget_proposal_status_pb2' , __doc__ = """Message describing AccountBudgetProposal statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/account_budget_proposal_type_pb2.py b/google/ads/google_ads/v0/proto/enums/account_budget_proposal_type_pb2.py index dcff61368..589347344 100644 --- a/google/ads/google_ads/v0/proto/enums/account_budget_proposal_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/account_budget_proposal_type_pb2.py @@ -93,7 +93,7 @@ AccountBudgetProposalTypeEnum = _reflection.GeneratedProtocolMessageType('AccountBudgetProposalTypeEnum', (_message.Message,), dict( DESCRIPTOR = _ACCOUNTBUDGETPROPOSALTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.account_budget_proposal_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.account_budget_proposal_type_pb2' , __doc__ = """Message describing AccountBudgetProposal types. """, diff --git a/google/ads/google_ads/v0/proto/enums/account_budget_status_pb2.py b/google/ads/google_ads/v0/proto/enums/account_budget_status_pb2.py index c32d68bb4..27f630b21 100644 --- a/google/ads/google_ads/v0/proto/enums/account_budget_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/account_budget_status_pb2.py @@ -89,7 +89,7 @@ AccountBudgetStatusEnum = _reflection.GeneratedProtocolMessageType('AccountBudgetStatusEnum', (_message.Message,), dict( DESCRIPTOR = _ACCOUNTBUDGETSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.account_budget_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.account_budget_status_pb2' , __doc__ = """Message describing AccountBudget statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/ad_customizer_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_customizer_placeholder_field_pb2.py new file mode 100644 index 000000000..2ad5ee295 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/ad_customizer_placeholder_field_pb2.py @@ -0,0 +1,107 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/ad_customizer_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/ad_customizer_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nIgoogle/ads/googleads_v0/proto/enums/ad_customizer_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x8e\x01\n AdCustomizerPlaceholderFieldEnum\"j\n\x1c\x41\x64\x43ustomizerPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0b\n\x07INTEGER\x10\x02\x12\t\n\x05PRICE\x10\x03\x12\x08\n\x04\x44\x41TE\x10\x04\x12\n\n\x06STRING\x10\x05\x42\xd2\x01\n!com.google.ads.googleads.v0.enumsB!AdCustomizerPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_ADCUSTOMIZERPLACEHOLDERFIELDENUM_ADCUSTOMIZERPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='AdCustomizerPlaceholderField', + full_name='google.ads.googleads.v0.enums.AdCustomizerPlaceholderFieldEnum.AdCustomizerPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INTEGER', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PRICE', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DATE', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STRING', index=5, number=5, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=145, + serialized_end=251, +) +_sym_db.RegisterEnumDescriptor(_ADCUSTOMIZERPLACEHOLDERFIELDENUM_ADCUSTOMIZERPLACEHOLDERFIELD) + + +_ADCUSTOMIZERPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='AdCustomizerPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.AdCustomizerPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _ADCUSTOMIZERPLACEHOLDERFIELDENUM_ADCUSTOMIZERPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=109, + serialized_end=251, +) + +_ADCUSTOMIZERPLACEHOLDERFIELDENUM_ADCUSTOMIZERPLACEHOLDERFIELD.containing_type = _ADCUSTOMIZERPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['AdCustomizerPlaceholderFieldEnum'] = _ADCUSTOMIZERPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +AdCustomizerPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('AdCustomizerPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _ADCUSTOMIZERPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_customizer_placeholder_field_pb2' + , + __doc__ = """Values for Ad Customizer placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.AdCustomizerPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(AdCustomizerPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB!AdCustomizerPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/ad_customizer_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/ad_customizer_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/ad_customizer_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/ad_group_ad_rotation_mode_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_group_ad_rotation_mode_pb2.py index 640bc2853..55ad4a7e0 100644 --- a/google/ads/google_ads/v0/proto/enums/ad_group_ad_rotation_mode_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/ad_group_ad_rotation_mode_pb2.py @@ -85,7 +85,7 @@ AdGroupAdRotationModeEnum = _reflection.GeneratedProtocolMessageType('AdGroupAdRotationModeEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPADROTATIONMODEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.ad_group_ad_rotation_mode_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_group_ad_rotation_mode_pb2' , __doc__ = """Container for enum describing possible ad rotation modes of ads within an ad group. diff --git a/google/ads/google_ads/v0/proto/enums/ad_group_ad_status_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_group_ad_status_pb2.py index 6ddb8186f..7036db914 100644 --- a/google/ads/google_ads/v0/proto/enums/ad_group_ad_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/ad_group_ad_status_pb2.py @@ -89,7 +89,7 @@ AdGroupAdStatusEnum = _reflection.GeneratedProtocolMessageType('AdGroupAdStatusEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPADSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.ad_group_ad_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_group_ad_status_pb2' , __doc__ = """Container for enum describing possible statuses of an AdGroupAd. """, diff --git a/google/ads/google_ads/v0/proto/enums/ad_group_criterion_status_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_group_criterion_status_pb2.py index 0677dc1ff..0f5799b50 100644 --- a/google/ads/google_ads/v0/proto/enums/ad_group_criterion_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/ad_group_criterion_status_pb2.py @@ -89,7 +89,7 @@ AdGroupCriterionStatusEnum = _reflection.GeneratedProtocolMessageType('AdGroupCriterionStatusEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPCRITERIONSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.ad_group_criterion_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_group_criterion_status_pb2' , __doc__ = """Message describing AdGroupCriterion statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/ad_group_status_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_group_status_pb2.py index 1cd30c499..d15142949 100644 --- a/google/ads/google_ads/v0/proto/enums/ad_group_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/ad_group_status_pb2.py @@ -89,7 +89,7 @@ AdGroupStatusEnum = _reflection.GeneratedProtocolMessageType('AdGroupStatusEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.ad_group_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_group_status_pb2' , __doc__ = """Container for enum describing possible statuses of an ad group. """, diff --git a/google/ads/google_ads/v0/proto/enums/ad_group_type_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_group_type_pb2.py index 3bc7e2089..75546ec2e 100644 --- a/google/ads/google_ads/v0/proto/enums/ad_group_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/ad_group_type_pb2.py @@ -117,7 +117,7 @@ AdGroupTypeEnum = _reflection.GeneratedProtocolMessageType('AdGroupTypeEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.ad_group_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_group_type_pb2' , __doc__ = """Defines types of an ad group, specific to a particular campaign channel type. This type drives validations that restrict which entities can be diff --git a/google/ads/google_ads/v0/proto/enums/ad_network_type_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_network_type_pb2.py index 490c93f6f..8a9866323 100644 --- a/google/ads/google_ads/v0/proto/enums/ad_network_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/ad_network_type_pb2.py @@ -101,7 +101,7 @@ AdNetworkTypeEnum = _reflection.GeneratedProtocolMessageType('AdNetworkTypeEnum', (_message.Message,), dict( DESCRIPTOR = _ADNETWORKTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.ad_network_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_network_type_pb2' , __doc__ = """Container for enumeration of Google Ads network types. """, diff --git a/google/ads/google_ads/v0/proto/enums/ad_serving_optimization_status_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_serving_optimization_status_pb2.py index b89aaa75b..81f930bb5 100644 --- a/google/ads/google_ads/v0/proto/enums/ad_serving_optimization_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/ad_serving_optimization_status_pb2.py @@ -97,7 +97,7 @@ AdServingOptimizationStatusEnum = _reflection.GeneratedProtocolMessageType('AdServingOptimizationStatusEnum', (_message.Message,), dict( DESCRIPTOR = _ADSERVINGOPTIMIZATIONSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.ad_serving_optimization_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_serving_optimization_status_pb2' , __doc__ = """Possible ad serving statuses of a campaign. """, diff --git a/google/ads/google_ads/v0/proto/enums/ad_type_pb2.py b/google/ads/google_ads/v0/proto/enums/ad_type_pb2.py index 05f453633..5a0764036 100644 --- a/google/ads/google_ads/v0/proto/enums/ad_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/ad_type_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/enums/ad_type.proto', package='google.ads.googleads.v0.enums', syntax='proto3', - serialized_pb=_b('\n1google/ads/googleads_v0/proto/enums/ad_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x8f\x02\n\nAdTypeEnum\"\x80\x02\n\x06\x41\x64Type\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0b\n\x07TEXT_AD\x10\x02\x12\x14\n\x10\x45XPANDED_TEXT_AD\x10\x03\x12\x15\n\x11\x44YNAMIC_SEARCH_AD\x10\x04\x12\x19\n\x15RESPONSIVE_DISPLAY_AD\x10\x05\x12\x10\n\x0c\x43\x41LL_ONLY_AD\x10\x06\x12\x1e\n\x1a\x45XPANDED_DYNAMIC_SEARCH_AD\x10\x07\x12\x0c\n\x08HOTEL_AD\x10\x08\x12\x15\n\x11SHOPPING_SMART_AD\x10\t\x12\x17\n\x13SHOPPING_PRODUCT_AD\x10\n\x12\x13\n\x0fVIDEO_OUTSTREAM\x10\x0b\x42\xbc\x01\n!com.google.ads.googleads.v0.enumsB\x0b\x41\x64TypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') + serialized_pb=_b('\n1google/ads/googleads_v0/proto/enums/ad_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xa4\x02\n\nAdTypeEnum\"\x95\x02\n\x06\x41\x64Type\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0b\n\x07TEXT_AD\x10\x02\x12\x14\n\x10\x45XPANDED_TEXT_AD\x10\x03\x12\x15\n\x11\x44YNAMIC_SEARCH_AD\x10\x04\x12\x19\n\x15RESPONSIVE_DISPLAY_AD\x10\x05\x12\x10\n\x0c\x43\x41LL_ONLY_AD\x10\x06\x12\x1e\n\x1a\x45XPANDED_DYNAMIC_SEARCH_AD\x10\x07\x12\x0c\n\x08HOTEL_AD\x10\x08\x12\x15\n\x11SHOPPING_SMART_AD\x10\t\x12\x17\n\x13SHOPPING_PRODUCT_AD\x10\n\x12\x0c\n\x08VIDEO_AD\x10\x0c\x12\x0c\n\x08GMAIL_AD\x10\r\x12\x0c\n\x08IMAGE_AD\x10\x0e\x42\xbc\x01\n!com.google.ads.googleads.v0.enumsB\x0b\x41\x64TypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') ) @@ -75,14 +75,22 @@ options=None, type=None), _descriptor.EnumValueDescriptor( - name='VIDEO_OUTSTREAM', index=11, number=11, + name='VIDEO_AD', index=11, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='GMAIL_AD', index=12, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IMAGE_AD', index=13, number=14, options=None, type=None), ], containing_type=None, options=None, serialized_start=100, - serialized_end=356, + serialized_end=377, ) _sym_db.RegisterEnumDescriptor(_ADTYPEENUM_ADTYPE) @@ -108,7 +116,7 @@ oneofs=[ ], serialized_start=85, - serialized_end=356, + serialized_end=377, ) _ADTYPEENUM_ADTYPE.containing_type = _ADTYPEENUM @@ -117,7 +125,7 @@ AdTypeEnum = _reflection.GeneratedProtocolMessageType('AdTypeEnum', (_message.Message,), dict( DESCRIPTOR = _ADTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.ad_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.ad_type_pb2' , __doc__ = """Container for enum describing possible types of an ad. """, diff --git a/google/ads/google_ads/v0/proto/enums/advertising_channel_sub_type_pb2.py b/google/ads/google_ads/v0/proto/enums/advertising_channel_sub_type_pb2.py index 98f805846..0099cd3ec 100644 --- a/google/ads/google_ads/v0/proto/enums/advertising_channel_sub_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/advertising_channel_sub_type_pb2.py @@ -109,7 +109,7 @@ AdvertisingChannelSubTypeEnum = _reflection.GeneratedProtocolMessageType('AdvertisingChannelSubTypeEnum', (_message.Message,), dict( DESCRIPTOR = _ADVERTISINGCHANNELSUBTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.advertising_channel_sub_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.advertising_channel_sub_type_pb2' , __doc__ = """An immutable specialization of an Advertising Channel. """, diff --git a/google/ads/google_ads/v0/proto/enums/advertising_channel_type_pb2.py b/google/ads/google_ads/v0/proto/enums/advertising_channel_type_pb2.py index d82a97c38..bdcaea315 100644 --- a/google/ads/google_ads/v0/proto/enums/advertising_channel_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/advertising_channel_type_pb2.py @@ -97,7 +97,7 @@ AdvertisingChannelTypeEnum = _reflection.GeneratedProtocolMessageType('AdvertisingChannelTypeEnum', (_message.Message,), dict( DESCRIPTOR = _ADVERTISINGCHANNELTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.advertising_channel_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.advertising_channel_type_pb2' , __doc__ = """The channel type a campaign may target to serve on. """, diff --git a/google/ads/google_ads/v0/proto/enums/affiliate_location_feed_relationship_type_pb2.py b/google/ads/google_ads/v0/proto/enums/affiliate_location_feed_relationship_type_pb2.py new file mode 100644 index 000000000..13fe4c425 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/affiliate_location_feed_relationship_type_pb2.py @@ -0,0 +1,96 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/affiliate_location_feed_relationship_type.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/affiliate_location_feed_relationship_type.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nSgoogle/ads/googleads_v0/proto/enums/affiliate_location_feed_relationship_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x88\x01\n)AffiliateLocationFeedRelationshipTypeEnum\"[\n%AffiliateLocationFeedRelationshipType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x14\n\x10GENERAL_RETAILER\x10\x02\x42\xdb\x01\n!com.google.ads.googleads.v0.enumsB*AffiliateLocationFeedRelationshipTypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM_AFFILIATELOCATIONFEEDRELATIONSHIPTYPE = _descriptor.EnumDescriptor( + name='AffiliateLocationFeedRelationshipType', + full_name='google.ads.googleads.v0.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='GENERAL_RETAILER', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=164, + serialized_end=255, +) +_sym_db.RegisterEnumDescriptor(_AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM_AFFILIATELOCATIONFEEDRELATIONSHIPTYPE) + + +_AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM = _descriptor.Descriptor( + name='AffiliateLocationFeedRelationshipTypeEnum', + full_name='google.ads.googleads.v0.enums.AffiliateLocationFeedRelationshipTypeEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM_AFFILIATELOCATIONFEEDRELATIONSHIPTYPE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=119, + serialized_end=255, +) + +_AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM_AFFILIATELOCATIONFEEDRELATIONSHIPTYPE.containing_type = _AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM +DESCRIPTOR.message_types_by_name['AffiliateLocationFeedRelationshipTypeEnum'] = _AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +AffiliateLocationFeedRelationshipTypeEnum = _reflection.GeneratedProtocolMessageType('AffiliateLocationFeedRelationshipTypeEnum', (_message.Message,), dict( + DESCRIPTOR = _AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.affiliate_location_feed_relationship_type_pb2' + , + __doc__ = """Container for enum describing possible values for a relationship type + for an affiliate location feed. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.AffiliateLocationFeedRelationshipTypeEnum) + )) +_sym_db.RegisterMessage(AffiliateLocationFeedRelationshipTypeEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB*AffiliateLocationFeedRelationshipTypeProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/affiliate_location_feed_relationship_type_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/affiliate_location_feed_relationship_type_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/affiliate_location_feed_relationship_type_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/age_range_type_pb2.py b/google/ads/google_ads/v0/proto/enums/age_range_type_pb2.py index 04633a101..6eaca5485 100644 --- a/google/ads/google_ads/v0/proto/enums/age_range_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/age_range_type_pb2.py @@ -105,7 +105,7 @@ AgeRangeTypeEnum = _reflection.GeneratedProtocolMessageType('AgeRangeTypeEnum', (_message.Message,), dict( DESCRIPTOR = _AGERANGETYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.age_range_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.age_range_type_pb2' , __doc__ = """Container for enum describing the type of demographic age ranges. """, diff --git a/google/ads/google_ads/v0/proto/enums/app_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/app_placeholder_field_pb2.py new file mode 100644 index 000000000..fce9501fb --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/app_placeholder_field_pb2.py @@ -0,0 +1,123 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/app_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/app_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n?google/ads/googleads_v0/proto/enums/app_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xc9\x01\n\x17\x41ppPlaceholderFieldEnum\"\xad\x01\n\x13\x41ppPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\t\n\x05STORE\x10\x02\x12\x06\n\x02ID\x10\x03\x12\r\n\tLINK_TEXT\x10\x04\x12\x07\n\x03URL\x10\x05\x12\x0e\n\nFINAL_URLS\x10\x06\x12\x15\n\x11\x46INAL_MOBILE_URLS\x10\x07\x12\x10\n\x0cTRACKING_URL\x10\x08\x12\x14\n\x10\x46INAL_URL_SUFFIX\x10\tB\xc9\x01\n!com.google.ads.googleads.v0.enumsB\x18\x41ppPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_APPPLACEHOLDERFIELDENUM_APPPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='AppPlaceholderField', + full_name='google.ads.googleads.v0.enums.AppPlaceholderFieldEnum.AppPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STORE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ID', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LINK_TEXT', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='URL', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URLS', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_MOBILE_URLS', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TRACKING_URL', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URL_SUFFIX', index=9, number=9, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=127, + serialized_end=300, +) +_sym_db.RegisterEnumDescriptor(_APPPLACEHOLDERFIELDENUM_APPPLACEHOLDERFIELD) + + +_APPPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='AppPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.AppPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _APPPLACEHOLDERFIELDENUM_APPPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=99, + serialized_end=300, +) + +_APPPLACEHOLDERFIELDENUM_APPPLACEHOLDERFIELD.containing_type = _APPPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['AppPlaceholderFieldEnum'] = _APPPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +AppPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('AppPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _APPPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.app_placeholder_field_pb2' + , + __doc__ = """Values for App placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.AppPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(AppPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\030AppPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/app_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/app_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/app_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/attribution_model_pb2.py b/google/ads/google_ads/v0/proto/enums/attribution_model_pb2.py index 6c537f99d..0a12013bc 100644 --- a/google/ads/google_ads/v0/proto/enums/attribution_model_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/attribution_model_pb2.py @@ -105,7 +105,7 @@ AttributionModelEnum = _reflection.GeneratedProtocolMessageType('AttributionModelEnum', (_message.Message,), dict( DESCRIPTOR = _ATTRIBUTIONMODELENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.attribution_model_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.attribution_model_pb2' , __doc__ = """Container for enum representing the attribution model that describes how to distribute credit for a particular conversion across potentially many diff --git a/google/ads/google_ads/v0/proto/enums/bid_modifier_source_pb2.py b/google/ads/google_ads/v0/proto/enums/bid_modifier_source_pb2.py index 80a743d1e..f106e77cb 100644 --- a/google/ads/google_ads/v0/proto/enums/bid_modifier_source_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/bid_modifier_source_pb2.py @@ -85,7 +85,7 @@ BidModifierSourceEnum = _reflection.GeneratedProtocolMessageType('BidModifierSourceEnum', (_message.Message,), dict( DESCRIPTOR = _BIDMODIFIERSOURCEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.bid_modifier_source_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.bid_modifier_source_pb2' , __doc__ = """Container for enum describing possible bid modifier sources. """, diff --git a/google/ads/google_ads/v0/proto/enums/bidding_source_pb2.py b/google/ads/google_ads/v0/proto/enums/bidding_source_pb2.py index ab17b57d9..b904b9f8c 100644 --- a/google/ads/google_ads/v0/proto/enums/bidding_source_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/bidding_source_pb2.py @@ -89,7 +89,7 @@ BiddingSourceEnum = _reflection.GeneratedProtocolMessageType('BiddingSourceEnum', (_message.Message,), dict( DESCRIPTOR = _BIDDINGSOURCEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.bidding_source_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.bidding_source_pb2' , __doc__ = """Container for enum describing possible bidding sources. """, diff --git a/google/ads/google_ads/v0/proto/enums/bidding_strategy_type_pb2.py b/google/ads/google_ads/v0/proto/enums/bidding_strategy_type_pb2.py index c545d776e..d8076d3fa 100644 --- a/google/ads/google_ads/v0/proto/enums/bidding_strategy_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/bidding_strategy_type_pb2.py @@ -125,7 +125,7 @@ BiddingStrategyTypeEnum = _reflection.GeneratedProtocolMessageType('BiddingStrategyTypeEnum', (_message.Message,), dict( DESCRIPTOR = _BIDDINGSTRATEGYTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.bidding_strategy_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.bidding_strategy_type_pb2' , __doc__ = """Container for enum describing possible bidding strategy types. """, diff --git a/google/ads/google_ads/v0/proto/enums/billing_setup_status_pb2.py b/google/ads/google_ads/v0/proto/enums/billing_setup_status_pb2.py index 6517facb7..ec28a18e2 100644 --- a/google/ads/google_ads/v0/proto/enums/billing_setup_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/billing_setup_status_pb2.py @@ -93,7 +93,7 @@ BillingSetupStatusEnum = _reflection.GeneratedProtocolMessageType('BillingSetupStatusEnum', (_message.Message,), dict( DESCRIPTOR = _BILLINGSETUPSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.billing_setup_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.billing_setup_status_pb2' , __doc__ = """Message describing BillingSetup statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/budget_delivery_method_pb2.py b/google/ads/google_ads/v0/proto/enums/budget_delivery_method_pb2.py index 4834f2c0f..6bf4d806c 100644 --- a/google/ads/google_ads/v0/proto/enums/budget_delivery_method_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/budget_delivery_method_pb2.py @@ -85,7 +85,7 @@ BudgetDeliveryMethodEnum = _reflection.GeneratedProtocolMessageType('BudgetDeliveryMethodEnum', (_message.Message,), dict( DESCRIPTOR = _BUDGETDELIVERYMETHODENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.budget_delivery_method_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.budget_delivery_method_pb2' , __doc__ = """Message describing Budget delivery methods. A delivery method determines the rate at which the Budget is spent. diff --git a/google/ads/google_ads/v0/proto/enums/budget_status_pb2.py b/google/ads/google_ads/v0/proto/enums/budget_status_pb2.py index 67ff9e19e..03d9db9b9 100644 --- a/google/ads/google_ads/v0/proto/enums/budget_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/budget_status_pb2.py @@ -85,7 +85,7 @@ BudgetStatusEnum = _reflection.GeneratedProtocolMessageType('BudgetStatusEnum', (_message.Message,), dict( DESCRIPTOR = _BUDGETSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.budget_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.budget_status_pb2' , __doc__ = """Message describing a Budget status """, diff --git a/google/ads/google_ads/v0/proto/enums/call_conversion_reporting_state_pb2.py b/google/ads/google_ads/v0/proto/enums/call_conversion_reporting_state_pb2.py index 8f261f017..cf7a56399 100644 --- a/google/ads/google_ads/v0/proto/enums/call_conversion_reporting_state_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/call_conversion_reporting_state_pb2.py @@ -89,7 +89,7 @@ CallConversionReportingStateEnum = _reflection.GeneratedProtocolMessageType('CallConversionReportingStateEnum', (_message.Message,), dict( DESCRIPTOR = _CALLCONVERSIONREPORTINGSTATEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.call_conversion_reporting_state_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.call_conversion_reporting_state_pb2' , __doc__ = """Container for enum describing possible data types for call conversion reporting state. diff --git a/google/ads/google_ads/v0/proto/enums/call_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/call_placeholder_field_pb2.py new file mode 100644 index 000000000..e94c9517d --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/call_placeholder_field_pb2.py @@ -0,0 +1,111 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/call_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/call_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n@google/ads/googleads_v0/proto/enums/call_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xba\x01\n\x18\x43\x61llPlaceholderFieldEnum\"\x9d\x01\n\x14\x43\x61llPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x10\n\x0cPHONE_NUMBER\x10\x02\x12\x10\n\x0c\x43OUNTRY_CODE\x10\x03\x12\x0b\n\x07TRACKED\x10\x04\x12\x16\n\x12\x43ONVERSION_TYPE_ID\x10\x05\x12\x1e\n\x1a\x43ONVERSION_REPORTING_STATE\x10\x06\x42\xca\x01\n!com.google.ads.googleads.v0.enumsB\x19\x43\x61llPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_CALLPLACEHOLDERFIELDENUM_CALLPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='CallPlaceholderField', + full_name='google.ads.googleads.v0.enums.CallPlaceholderFieldEnum.CallPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PHONE_NUMBER', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='COUNTRY_CODE', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TRACKED', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONVERSION_TYPE_ID', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONVERSION_REPORTING_STATE', index=6, number=6, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=129, + serialized_end=286, +) +_sym_db.RegisterEnumDescriptor(_CALLPLACEHOLDERFIELDENUM_CALLPLACEHOLDERFIELD) + + +_CALLPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='CallPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.CallPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _CALLPLACEHOLDERFIELDENUM_CALLPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=100, + serialized_end=286, +) + +_CALLPLACEHOLDERFIELDENUM_CALLPLACEHOLDERFIELD.containing_type = _CALLPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['CallPlaceholderFieldEnum'] = _CALLPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CallPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('CallPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _CALLPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.call_placeholder_field_pb2' + , + __doc__ = """Values for Call placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.CallPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(CallPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\031CallPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/call_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/call_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/call_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/callout_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/callout_placeholder_field_pb2.py new file mode 100644 index 000000000..5461ffd3a --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/callout_placeholder_field_pb2.py @@ -0,0 +1,95 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/callout_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/callout_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/enums/callout_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"h\n\x1b\x43\x61lloutPlaceholderFieldEnum\"I\n\x17\x43\x61lloutPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x10\n\x0c\x43\x41LLOUT_TEXT\x10\x02\x42\xcd\x01\n!com.google.ads.googleads.v0.enumsB\x1c\x43\x61lloutPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_CALLOUTPLACEHOLDERFIELDENUM_CALLOUTPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='CalloutPlaceholderField', + full_name='google.ads.googleads.v0.enums.CalloutPlaceholderFieldEnum.CalloutPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CALLOUT_TEXT', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=133, + serialized_end=206, +) +_sym_db.RegisterEnumDescriptor(_CALLOUTPLACEHOLDERFIELDENUM_CALLOUTPLACEHOLDERFIELD) + + +_CALLOUTPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='CalloutPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.CalloutPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _CALLOUTPLACEHOLDERFIELDENUM_CALLOUTPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=102, + serialized_end=206, +) + +_CALLOUTPLACEHOLDERFIELDENUM_CALLOUTPLACEHOLDERFIELD.containing_type = _CALLOUTPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['CalloutPlaceholderFieldEnum'] = _CALLOUTPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CalloutPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('CalloutPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _CALLOUTPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.callout_placeholder_field_pb2' + , + __doc__ = """Values for Callout placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.CalloutPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(CalloutPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\034CalloutPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/callout_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/callout_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/callout_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/campaign_group_status_pb2.py b/google/ads/google_ads/v0/proto/enums/campaign_group_status_pb2.py index 6e0e7918f..d71b205a6 100644 --- a/google/ads/google_ads/v0/proto/enums/campaign_group_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/campaign_group_status_pb2.py @@ -85,7 +85,7 @@ CampaignGroupStatusEnum = _reflection.GeneratedProtocolMessageType('CampaignGroupStatusEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNGROUPSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.campaign_group_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.campaign_group_status_pb2' , __doc__ = """Message describing CampaignGroup statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/campaign_serving_status_pb2.py b/google/ads/google_ads/v0/proto/enums/campaign_serving_status_pb2.py index fe96a9d83..2fd01734f 100644 --- a/google/ads/google_ads/v0/proto/enums/campaign_serving_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/campaign_serving_status_pb2.py @@ -97,7 +97,7 @@ CampaignServingStatusEnum = _reflection.GeneratedProtocolMessageType('CampaignServingStatusEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNSERVINGSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.campaign_serving_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.campaign_serving_status_pb2' , __doc__ = """Message describing Campaign serving statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/campaign_shared_set_status_pb2.py b/google/ads/google_ads/v0/proto/enums/campaign_shared_set_status_pb2.py index a11355473..b36bb6596 100644 --- a/google/ads/google_ads/v0/proto/enums/campaign_shared_set_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/campaign_shared_set_status_pb2.py @@ -85,7 +85,7 @@ CampaignSharedSetStatusEnum = _reflection.GeneratedProtocolMessageType('CampaignSharedSetStatusEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNSHAREDSETSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.campaign_shared_set_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.campaign_shared_set_status_pb2' , __doc__ = """Container for enum describing types of campaign shared set statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/campaign_status_pb2.py b/google/ads/google_ads/v0/proto/enums/campaign_status_pb2.py index 13b3ef726..561c1ffe9 100644 --- a/google/ads/google_ads/v0/proto/enums/campaign_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/campaign_status_pb2.py @@ -89,7 +89,7 @@ CampaignStatusEnum = _reflection.GeneratedProtocolMessageType('CampaignStatusEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.campaign_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.campaign_status_pb2' , __doc__ = """Container for enum describing possible statuses of a campaign. """, diff --git a/google/ads/google_ads/v0/proto/enums/change_status_operation_pb2.py b/google/ads/google_ads/v0/proto/enums/change_status_operation_pb2.py index a0a55a0f2..13d307595 100644 --- a/google/ads/google_ads/v0/proto/enums/change_status_operation_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/change_status_operation_pb2.py @@ -89,7 +89,7 @@ ChangeStatusOperationEnum = _reflection.GeneratedProtocolMessageType('ChangeStatusOperationEnum', (_message.Message,), dict( DESCRIPTOR = _CHANGESTATUSOPERATIONENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.change_status_operation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.change_status_operation_pb2' , __doc__ = """Container for enum describing operations for the ChangeStatus resource. """, diff --git a/google/ads/google_ads/v0/proto/enums/change_status_resource_type_pb2.py b/google/ads/google_ads/v0/proto/enums/change_status_resource_type_pb2.py index 5308c9fc3..5bb47aa6b 100644 --- a/google/ads/google_ads/v0/proto/enums/change_status_resource_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/change_status_resource_type_pb2.py @@ -97,7 +97,7 @@ ChangeStatusResourceTypeEnum = _reflection.GeneratedProtocolMessageType('ChangeStatusResourceTypeEnum', (_message.Message,), dict( DESCRIPTOR = _CHANGESTATUSRESOURCETYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.change_status_resource_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.change_status_resource_type_pb2' , __doc__ = """Container for enum describing supported resource types for the ChangeStatus resource. diff --git a/google/ads/google_ads/v0/proto/enums/content_label_type_pb2.py b/google/ads/google_ads/v0/proto/enums/content_label_type_pb2.py new file mode 100644 index 000000000..81b8716a1 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/content_label_type_pb2.py @@ -0,0 +1,151 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/content_label_type.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/content_label_type.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\ngoogle/ads/googleads_v0/proto/enums/keyword_plan_network.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x7f\n\x16KeywordPlanNetworkEnum\"e\n\x12KeywordPlanNetwork\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x11\n\rGOOGLE_SEARCH\x10\x02\x12\x1e\n\x1aGOOGLE_SEARCH_AND_PARTNERS\x10\x03\x42\xc8\x01\n!com.google.ads.googleads.v0.enumsB\x17KeywordPlanNetworkProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_KEYWORDPLANNETWORKENUM_KEYWORDPLANNETWORK = _descriptor.EnumDescriptor( + name='KeywordPlanNetwork', + full_name='google.ads.googleads.v0.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='GOOGLE_SEARCH', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='GOOGLE_SEARCH_AND_PARTNERS', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=123, + serialized_end=224, +) +_sym_db.RegisterEnumDescriptor(_KEYWORDPLANNETWORKENUM_KEYWORDPLANNETWORK) + + +_KEYWORDPLANNETWORKENUM = _descriptor.Descriptor( + name='KeywordPlanNetworkEnum', + full_name='google.ads.googleads.v0.enums.KeywordPlanNetworkEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _KEYWORDPLANNETWORKENUM_KEYWORDPLANNETWORK, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=97, + serialized_end=224, +) + +_KEYWORDPLANNETWORKENUM_KEYWORDPLANNETWORK.containing_type = _KEYWORDPLANNETWORKENUM +DESCRIPTOR.message_types_by_name['KeywordPlanNetworkEnum'] = _KEYWORDPLANNETWORKENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanNetworkEnum = _reflection.GeneratedProtocolMessageType('KeywordPlanNetworkEnum', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANNETWORKENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.keyword_plan_network_pb2' + , + __doc__ = """Container for enumeration of keyword plan forecastable network types. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.KeywordPlanNetworkEnum) + )) +_sym_db.RegisterMessage(KeywordPlanNetworkEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\027KeywordPlanNetworkProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/keyword_plan_network_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/keyword_plan_network_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/keyword_plan_network_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/listing_custom_attribute_index_pb2.py b/google/ads/google_ads/v0/proto/enums/listing_custom_attribute_index_pb2.py index b41cf322a..9707a8e39 100644 --- a/google/ads/google_ads/v0/proto/enums/listing_custom_attribute_index_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/listing_custom_attribute_index_pb2.py @@ -97,7 +97,7 @@ ListingCustomAttributeIndexEnum = _reflection.GeneratedProtocolMessageType('ListingCustomAttributeIndexEnum', (_message.Message,), dict( DESCRIPTOR = _LISTINGCUSTOMATTRIBUTEINDEXENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.listing_custom_attribute_index_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.listing_custom_attribute_index_pb2' , __doc__ = """Container for enum describing the index of the listing custom attribute. """, diff --git a/google/ads/google_ads/v0/proto/enums/listing_group_type_pb2.py b/google/ads/google_ads/v0/proto/enums/listing_group_type_pb2.py index e72317730..24e7efa3d 100644 --- a/google/ads/google_ads/v0/proto/enums/listing_group_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/listing_group_type_pb2.py @@ -85,7 +85,7 @@ ListingGroupTypeEnum = _reflection.GeneratedProtocolMessageType('ListingGroupTypeEnum', (_message.Message,), dict( DESCRIPTOR = _LISTINGGROUPTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.listing_group_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.listing_group_type_pb2' , __doc__ = """Container for enum describing the type of the listing group. """, diff --git a/google/ads/google_ads/v0/proto/enums/local_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/local_placeholder_field_pb2.py new file mode 100644 index 000000000..cc73a7cdf --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/local_placeholder_field_pb2.py @@ -0,0 +1,169 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/local_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/local_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nAgoogle/ads/googleads_v0/proto/enums/local_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xa8\x03\n\x19LocalPlaceholderFieldEnum\"\x8a\x03\n\x15LocalPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0b\n\x07\x44\x45\x41L_ID\x10\x02\x12\r\n\tDEAL_NAME\x10\x03\x12\x0c\n\x08SUBTITLE\x10\x04\x12\x0f\n\x0b\x44\x45SCRIPTION\x10\x05\x12\t\n\x05PRICE\x10\x06\x12\x13\n\x0f\x46ORMATTED_PRICE\x10\x07\x12\x0e\n\nSALE_PRICE\x10\x08\x12\x18\n\x14\x46ORMATTED_SALE_PRICE\x10\t\x12\r\n\tIMAGE_URL\x10\n\x12\x0b\n\x07\x41\x44\x44RESS\x10\x0b\x12\x0c\n\x08\x43\x41TEGORY\x10\x0c\x12\x17\n\x13\x43ONTEXTUAL_KEYWORDS\x10\r\x12\x0e\n\nFINAL_URLS\x10\x0e\x12\x15\n\x11\x46INAL_MOBILE_URLS\x10\x0f\x12\x10\n\x0cTRACKING_URL\x10\x10\x12\x14\n\x10\x41NDROID_APP_LINK\x10\x11\x12\x14\n\x10SIMILAR_DEAL_IDS\x10\x12\x12\x10\n\x0cIOS_APP_LINK\x10\x13\x12\x14\n\x10IOS_APP_STORE_ID\x10\x14\x42\xcb\x01\n!com.google.ads.googleads.v0.enumsB\x1aLocalPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_LOCALPLACEHOLDERFIELDENUM_LOCALPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='LocalPlaceholderField', + full_name='google.ads.googleads.v0.enums.LocalPlaceholderFieldEnum.LocalPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DEAL_ID', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DEAL_NAME', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SUBTITLE', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DESCRIPTION', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PRICE', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FORMATTED_PRICE', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SALE_PRICE', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FORMATTED_SALE_PRICE', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IMAGE_URL', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ADDRESS', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CATEGORY', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONTEXTUAL_KEYWORDS', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URLS', index=14, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_MOBILE_URLS', index=15, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TRACKING_URL', index=16, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ANDROID_APP_LINK', index=17, number=17, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SIMILAR_DEAL_IDS', index=18, number=18, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IOS_APP_LINK', index=19, number=19, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IOS_APP_STORE_ID', index=20, number=20, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=131, + serialized_end=525, +) +_sym_db.RegisterEnumDescriptor(_LOCALPLACEHOLDERFIELDENUM_LOCALPLACEHOLDERFIELD) + + +_LOCALPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='LocalPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.LocalPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _LOCALPLACEHOLDERFIELDENUM_LOCALPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=101, + serialized_end=525, +) + +_LOCALPLACEHOLDERFIELDENUM_LOCALPLACEHOLDERFIELD.containing_type = _LOCALPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['LocalPlaceholderFieldEnum'] = _LOCALPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +LocalPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('LocalPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _LOCALPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.local_placeholder_field_pb2' + , + __doc__ = """Values for Local placeholder fields. For more information about dynamic + remarketing feeds, see + https://support.google.com/google-ads/answer/6053288. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.LocalPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(LocalPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\032LocalPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/local_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/local_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/local_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/manager_link_status_pb2.py b/google/ads/google_ads/v0/proto/enums/manager_link_status_pb2.py index b27b3bf92..e8a782907 100644 --- a/google/ads/google_ads/v0/proto/enums/manager_link_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/manager_link_status_pb2.py @@ -97,7 +97,7 @@ ManagerLinkStatusEnum = _reflection.GeneratedProtocolMessageType('ManagerLinkStatusEnum', (_message.Message,), dict( DESCRIPTOR = _MANAGERLINKSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.manager_link_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.manager_link_status_pb2' , __doc__ = """Container for enum describing possible status of a manager and client link. diff --git a/google/ads/google_ads/v0/proto/enums/media_type_pb2.py b/google/ads/google_ads/v0/proto/enums/media_type_pb2.py index adc6576d3..d2a504385 100644 --- a/google/ads/google_ads/v0/proto/enums/media_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/media_type_pb2.py @@ -101,7 +101,7 @@ MediaTypeEnum = _reflection.GeneratedProtocolMessageType('MediaTypeEnum', (_message.Message,), dict( DESCRIPTOR = _MEDIATYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.media_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.media_type_pb2' , __doc__ = """Container for enum describing the types of media. """, diff --git a/google/ads/google_ads/v0/proto/enums/message_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/message_placeholder_field_pb2.py new file mode 100644 index 000000000..b3f5b5a57 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/message_placeholder_field_pb2.py @@ -0,0 +1,111 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/message_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/message_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/enums/message_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xbc\x01\n\x1bMessagePlaceholderFieldEnum\"\x9c\x01\n\x17MessagePlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x11\n\rBUSINESS_NAME\x10\x02\x12\x10\n\x0c\x43OUNTRY_CODE\x10\x03\x12\x10\n\x0cPHONE_NUMBER\x10\x04\x12\x1a\n\x16MESSAGE_EXTENSION_TEXT\x10\x05\x12\x10\n\x0cMESSAGE_TEXT\x10\x06\x42\xcd\x01\n!com.google.ads.googleads.v0.enumsB\x1cMessagePlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_MESSAGEPLACEHOLDERFIELDENUM_MESSAGEPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='MessagePlaceholderField', + full_name='google.ads.googleads.v0.enums.MessagePlaceholderFieldEnum.MessagePlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BUSINESS_NAME', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='COUNTRY_CODE', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PHONE_NUMBER', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MESSAGE_EXTENSION_TEXT', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MESSAGE_TEXT', index=6, number=6, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=135, + serialized_end=291, +) +_sym_db.RegisterEnumDescriptor(_MESSAGEPLACEHOLDERFIELDENUM_MESSAGEPLACEHOLDERFIELD) + + +_MESSAGEPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='MessagePlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.MessagePlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _MESSAGEPLACEHOLDERFIELDENUM_MESSAGEPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=103, + serialized_end=291, +) + +_MESSAGEPLACEHOLDERFIELDENUM_MESSAGEPLACEHOLDERFIELD.containing_type = _MESSAGEPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['MessagePlaceholderFieldEnum'] = _MESSAGEPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +MessagePlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('MessagePlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _MESSAGEPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.message_placeholder_field_pb2' + , + __doc__ = """Values for Message placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.MessagePlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(MessagePlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\034MessagePlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/message_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/message_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/message_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/mime_type_pb2.py b/google/ads/google_ads/v0/proto/enums/mime_type_pb2.py index 781015ca6..c0c18e63b 100644 --- a/google/ads/google_ads/v0/proto/enums/mime_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/mime_type_pb2.py @@ -125,7 +125,7 @@ MimeTypeEnum = _reflection.GeneratedProtocolMessageType('MimeTypeEnum', (_message.Message,), dict( DESCRIPTOR = _MIMETYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.mime_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.mime_type_pb2' , __doc__ = """Container for enum describing the mime types. """, diff --git a/google/ads/google_ads/v0/proto/enums/minute_of_hour_pb2.py b/google/ads/google_ads/v0/proto/enums/minute_of_hour_pb2.py index c9b8c5823..ec0c5d95f 100644 --- a/google/ads/google_ads/v0/proto/enums/minute_of_hour_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/minute_of_hour_pb2.py @@ -93,7 +93,7 @@ MinuteOfHourEnum = _reflection.GeneratedProtocolMessageType('MinuteOfHourEnum', (_message.Message,), dict( DESCRIPTOR = _MINUTEOFHOURENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.minute_of_hour_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.minute_of_hour_pb2' , __doc__ = """Container for enumeration of quarter-hours. """, diff --git a/google/ads/google_ads/v0/proto/enums/month_of_year_pb2.py b/google/ads/google_ads/v0/proto/enums/month_of_year_pb2.py index e2a3fab36..38e25d67e 100644 --- a/google/ads/google_ads/v0/proto/enums/month_of_year_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/month_of_year_pb2.py @@ -125,7 +125,7 @@ MonthOfYearEnum = _reflection.GeneratedProtocolMessageType('MonthOfYearEnum', (_message.Message,), dict( DESCRIPTOR = _MONTHOFYEARENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.month_of_year_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.month_of_year_pb2' , __doc__ = """Container for enumeration of months of the year, e.g., "January". """, diff --git a/google/ads/google_ads/v0/proto/enums/page_one_promoted_strategy_goal_pb2.py b/google/ads/google_ads/v0/proto/enums/page_one_promoted_strategy_goal_pb2.py index a3b333f93..293789814 100644 --- a/google/ads/google_ads/v0/proto/enums/page_one_promoted_strategy_goal_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/page_one_promoted_strategy_goal_pb2.py @@ -85,7 +85,7 @@ PageOnePromotedStrategyGoalEnum = _reflection.GeneratedProtocolMessageType('PageOnePromotedStrategyGoalEnum', (_message.Message,), dict( DESCRIPTOR = _PAGEONEPROMOTEDSTRATEGYGOALENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.page_one_promoted_strategy_goal_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.page_one_promoted_strategy_goal_pb2' , __doc__ = """Container for enum describing possible strategy goals: where impressions are desired to be shown on search result pages. diff --git a/google/ads/google_ads/v0/proto/enums/parental_status_type_pb2.py b/google/ads/google_ads/v0/proto/enums/parental_status_type_pb2.py index 5ff5505c3..1d40fbdd9 100644 --- a/google/ads/google_ads/v0/proto/enums/parental_status_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/parental_status_type_pb2.py @@ -89,7 +89,7 @@ ParentalStatusTypeEnum = _reflection.GeneratedProtocolMessageType('ParentalStatusTypeEnum', (_message.Message,), dict( DESCRIPTOR = _PARENTALSTATUSTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.parental_status_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.parental_status_type_pb2' , __doc__ = """Container for enum describing the type of demographic parental statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/placeholder_type_pb2.py b/google/ads/google_ads/v0/proto/enums/placeholder_type_pb2.py new file mode 100644 index 000000000..ece686098 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/placeholder_type_pb2.py @@ -0,0 +1,168 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/placeholder_type.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/placeholder_type.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n:google/ads/googleads_v0/proto/enums/placeholder_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x90\x03\n\x13PlaceholderTypeEnum\"\xf8\x02\n\x0fPlaceholderType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0c\n\x08SITELINK\x10\x02\x12\x08\n\x04\x43\x41LL\x10\x03\x12\x07\n\x03\x41PP\x10\x04\x12\x0c\n\x08LOCATION\x10\x05\x12\x16\n\x12\x41\x46\x46ILIATE_LOCATION\x10\x06\x12\x0b\n\x07\x43\x41LLOUT\x10\x07\x12\x16\n\x12STRUCTURED_SNIPPET\x10\x08\x12\x0b\n\x07MESSAGE\x10\t\x12\t\n\x05PRICE\x10\n\x12\r\n\tPROMOTION\x10\x0b\x12\x11\n\rAD_CUSTOMIZER\x10\x0c\x12\x15\n\x11\x44YNAMIC_EDUCATION\x10\r\x12\x12\n\x0e\x44YNAMIC_FLIGHT\x10\x0e\x12\x12\n\x0e\x44YNAMIC_CUSTOM\x10\x0f\x12\x11\n\rDYNAMIC_HOTEL\x10\x10\x12\x17\n\x13\x44YNAMIC_REAL_ESTATE\x10\x11\x12\x12\n\x0e\x44YNAMIC_TRAVEL\x10\x12\x12\x11\n\rDYNAMIC_LOCAL\x10\x13\x12\x0f\n\x0b\x44YNAMIC_JOB\x10\x14\x42\xc5\x01\n!com.google.ads.googleads.v0.enumsB\x14PlaceholderTypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_PLACEHOLDERTYPEENUM_PLACEHOLDERTYPE = _descriptor.EnumDescriptor( + name='PlaceholderType', + full_name='google.ads.googleads.v0.enums.PlaceholderTypeEnum.PlaceholderType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SITELINK', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CALL', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='APP', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LOCATION', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AFFILIATE_LOCATION', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CALLOUT', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STRUCTURED_SNIPPET', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MESSAGE', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PRICE', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PROMOTION', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AD_CUSTOMIZER', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DYNAMIC_EDUCATION', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DYNAMIC_FLIGHT', index=14, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DYNAMIC_CUSTOM', index=15, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DYNAMIC_HOTEL', index=16, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DYNAMIC_REAL_ESTATE', index=17, number=17, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DYNAMIC_TRAVEL', index=18, number=18, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DYNAMIC_LOCAL', index=19, number=19, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DYNAMIC_JOB', index=20, number=20, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=118, + serialized_end=494, +) +_sym_db.RegisterEnumDescriptor(_PLACEHOLDERTYPEENUM_PLACEHOLDERTYPE) + + +_PLACEHOLDERTYPEENUM = _descriptor.Descriptor( + name='PlaceholderTypeEnum', + full_name='google.ads.googleads.v0.enums.PlaceholderTypeEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _PLACEHOLDERTYPEENUM_PLACEHOLDERTYPE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=94, + serialized_end=494, +) + +_PLACEHOLDERTYPEENUM_PLACEHOLDERTYPE.containing_type = _PLACEHOLDERTYPEENUM +DESCRIPTOR.message_types_by_name['PlaceholderTypeEnum'] = _PLACEHOLDERTYPEENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +PlaceholderTypeEnum = _reflection.GeneratedProtocolMessageType('PlaceholderTypeEnum', (_message.Message,), dict( + DESCRIPTOR = _PLACEHOLDERTYPEENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.placeholder_type_pb2' + , + __doc__ = """Container for enum describing possible placeholder types for a feed + mapping. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.PlaceholderTypeEnum) + )) +_sym_db.RegisterMessage(PlaceholderTypeEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\024PlaceholderTypeProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/placeholder_type_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/placeholder_type_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/placeholder_type_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/policy_approval_status_pb2.py b/google/ads/google_ads/v0/proto/enums/policy_approval_status_pb2.py index 41721f9c5..b5b5ab95b 100644 --- a/google/ads/google_ads/v0/proto/enums/policy_approval_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/policy_approval_status_pb2.py @@ -93,7 +93,7 @@ PolicyApprovalStatusEnum = _reflection.GeneratedProtocolMessageType('PolicyApprovalStatusEnum', (_message.Message,), dict( DESCRIPTOR = _POLICYAPPROVALSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.policy_approval_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.policy_approval_status_pb2' , __doc__ = """Container for enum describing possible policy approval statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/policy_review_status_pb2.py b/google/ads/google_ads/v0/proto/enums/policy_review_status_pb2.py index 5df41289a..afff4174a 100644 --- a/google/ads/google_ads/v0/proto/enums/policy_review_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/policy_review_status_pb2.py @@ -89,7 +89,7 @@ PolicyReviewStatusEnum = _reflection.GeneratedProtocolMessageType('PolicyReviewStatusEnum', (_message.Message,), dict( DESCRIPTOR = _POLICYREVIEWSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.policy_review_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.policy_review_status_pb2' , __doc__ = """Container for enum describing possible policy review statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/policy_topic_entry_type_pb2.py b/google/ads/google_ads/v0/proto/enums/policy_topic_entry_type_pb2.py index d26bac332..db7a6d321 100644 --- a/google/ads/google_ads/v0/proto/enums/policy_topic_entry_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/policy_topic_entry_type_pb2.py @@ -97,7 +97,7 @@ PolicyTopicEntryTypeEnum = _reflection.GeneratedProtocolMessageType('PolicyTopicEntryTypeEnum', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICENTRYTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.policy_topic_entry_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.policy_topic_entry_type_pb2' , __doc__ = """Container for enum describing possible policy topic entry types. """, diff --git a/google/ads/google_ads/v0/proto/enums/policy_topic_evidence_destination_mismatch_url_type_pb2.py b/google/ads/google_ads/v0/proto/enums/policy_topic_evidence_destination_mismatch_url_type_pb2.py index 5ce829dcd..7b432f811 100644 --- a/google/ads/google_ads/v0/proto/enums/policy_topic_evidence_destination_mismatch_url_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/policy_topic_evidence_destination_mismatch_url_type_pb2.py @@ -97,7 +97,7 @@ PolicyTopicEvidenceDestinationMismatchUrlTypeEnum = _reflection.GeneratedProtocolMessageType('PolicyTopicEvidenceDestinationMismatchUrlTypeEnum', (_message.Message,), dict( DESCRIPTOR = _POLICYTOPICEVIDENCEDESTINATIONMISMATCHURLTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.policy_topic_evidence_destination_mismatch_url_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.policy_topic_evidence_destination_mismatch_url_type_pb2' , __doc__ = """Container for enum describing possible policy topic evidence destination mismatch url types. diff --git a/google/ads/google_ads/v0/proto/enums/preferred_content_type_pb2.py b/google/ads/google_ads/v0/proto/enums/preferred_content_type_pb2.py new file mode 100644 index 000000000..aea3d02e0 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/preferred_content_type_pb2.py @@ -0,0 +1,95 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/preferred_content_type.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/preferred_content_type.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n@google/ads/googleads_v0/proto/enums/preferred_content_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"j\n\x18PreferredContentTypeEnum\"N\n\x14PreferredContentType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x18\n\x13YOUTUBE_TOP_CONTENT\x10\x90\x03\x42\xca\x01\n!com.google.ads.googleads.v0.enumsB\x19PreferredContentTypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_PREFERREDCONTENTTYPEENUM_PREFERREDCONTENTTYPE = _descriptor.EnumDescriptor( + name='PreferredContentType', + full_name='google.ads.googleads.v0.enums.PreferredContentTypeEnum.PreferredContentType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='YOUTUBE_TOP_CONTENT', index=2, number=400, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=127, + serialized_end=205, +) +_sym_db.RegisterEnumDescriptor(_PREFERREDCONTENTTYPEENUM_PREFERREDCONTENTTYPE) + + +_PREFERREDCONTENTTYPEENUM = _descriptor.Descriptor( + name='PreferredContentTypeEnum', + full_name='google.ads.googleads.v0.enums.PreferredContentTypeEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _PREFERREDCONTENTTYPEENUM_PREFERREDCONTENTTYPE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=99, + serialized_end=205, +) + +_PREFERREDCONTENTTYPEENUM_PREFERREDCONTENTTYPE.containing_type = _PREFERREDCONTENTTYPEENUM +DESCRIPTOR.message_types_by_name['PreferredContentTypeEnum'] = _PREFERREDCONTENTTYPEENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +PreferredContentTypeEnum = _reflection.GeneratedProtocolMessageType('PreferredContentTypeEnum', (_message.Message,), dict( + DESCRIPTOR = _PREFERREDCONTENTTYPEENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.preferred_content_type_pb2' + , + __doc__ = """Container for enumeration of preferred content criterion type. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.PreferredContentTypeEnum) + )) +_sym_db.RegisterMessage(PreferredContentTypeEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\031PreferredContentTypeProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/preferred_content_type_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/preferred_content_type_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/preferred_content_type_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/price_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/price_placeholder_field_pb2.py new file mode 100644 index 000000000..de15e4324 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/price_placeholder_field_pb2.py @@ -0,0 +1,303 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/price_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/price_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nAgoogle/ads/googleads_v0/proto/enums/price_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xef\t\n\x19PricePlaceholderFieldEnum\"\xd1\t\n\x15PricePlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x08\n\x04TYPE\x10\x02\x12\x13\n\x0fPRICE_QUALIFIER\x10\x03\x12\x15\n\x11TRACKING_TEMPLATE\x10\x04\x12\x0c\n\x08LANGUAGE\x10\x05\x12\x14\n\x10\x46INAL_URL_SUFFIX\x10\x06\x12\x11\n\rITEM_1_HEADER\x10\x64\x12\x16\n\x12ITEM_1_DESCRIPTION\x10\x65\x12\x10\n\x0cITEM_1_PRICE\x10\x66\x12\x0f\n\x0bITEM_1_UNIT\x10g\x12\x15\n\x11ITEM_1_FINAL_URLS\x10h\x12\x1c\n\x18ITEM_1_FINAL_MOBILE_URLS\x10i\x12\x12\n\rITEM_2_HEADER\x10\xc8\x01\x12\x17\n\x12ITEM_2_DESCRIPTION\x10\xc9\x01\x12\x11\n\x0cITEM_2_PRICE\x10\xca\x01\x12\x10\n\x0bITEM_2_UNIT\x10\xcb\x01\x12\x16\n\x11ITEM_2_FINAL_URLS\x10\xcc\x01\x12\x1d\n\x18ITEM_2_FINAL_MOBILE_URLS\x10\xcd\x01\x12\x12\n\rITEM_3_HEADER\x10\xac\x02\x12\x17\n\x12ITEM_3_DESCRIPTION\x10\xad\x02\x12\x11\n\x0cITEM_3_PRICE\x10\xae\x02\x12\x10\n\x0bITEM_3_UNIT\x10\xaf\x02\x12\x16\n\x11ITEM_3_FINAL_URLS\x10\xb0\x02\x12\x1d\n\x18ITEM_3_FINAL_MOBILE_URLS\x10\xb1\x02\x12\x12\n\rITEM_4_HEADER\x10\x90\x03\x12\x17\n\x12ITEM_4_DESCRIPTION\x10\x91\x03\x12\x11\n\x0cITEM_4_PRICE\x10\x92\x03\x12\x10\n\x0bITEM_4_UNIT\x10\x93\x03\x12\x16\n\x11ITEM_4_FINAL_URLS\x10\x94\x03\x12\x1d\n\x18ITEM_4_FINAL_MOBILE_URLS\x10\x95\x03\x12\x12\n\rITEM_5_HEADER\x10\xf4\x03\x12\x17\n\x12ITEM_5_DESCRIPTION\x10\xf5\x03\x12\x11\n\x0cITEM_5_PRICE\x10\xf6\x03\x12\x10\n\x0bITEM_5_UNIT\x10\xf7\x03\x12\x16\n\x11ITEM_5_FINAL_URLS\x10\xf8\x03\x12\x1d\n\x18ITEM_5_FINAL_MOBILE_URLS\x10\xf9\x03\x12\x12\n\rITEM_6_HEADER\x10\xd8\x04\x12\x17\n\x12ITEM_6_DESCRIPTION\x10\xd9\x04\x12\x11\n\x0cITEM_6_PRICE\x10\xda\x04\x12\x10\n\x0bITEM_6_UNIT\x10\xdb\x04\x12\x16\n\x11ITEM_6_FINAL_URLS\x10\xdc\x04\x12\x1d\n\x18ITEM_6_FINAL_MOBILE_URLS\x10\xdd\x04\x12\x12\n\rITEM_7_HEADER\x10\xbc\x05\x12\x17\n\x12ITEM_7_DESCRIPTION\x10\xbd\x05\x12\x11\n\x0cITEM_7_PRICE\x10\xbe\x05\x12\x10\n\x0bITEM_7_UNIT\x10\xbf\x05\x12\x16\n\x11ITEM_7_FINAL_URLS\x10\xc0\x05\x12\x1d\n\x18ITEM_7_FINAL_MOBILE_URLS\x10\xc1\x05\x12\x12\n\rITEM_8_HEADER\x10\xa0\x06\x12\x17\n\x12ITEM_8_DESCRIPTION\x10\xa1\x06\x12\x11\n\x0cITEM_8_PRICE\x10\xa2\x06\x12\x10\n\x0bITEM_8_UNIT\x10\xa3\x06\x12\x16\n\x11ITEM_8_FINAL_URLS\x10\xa4\x06\x12\x1d\n\x18ITEM_8_FINAL_MOBILE_URLS\x10\xa5\x06\x42\xcb\x01\n!com.google.ads.googleads.v0.enumsB\x1aPricePlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_PRICEPLACEHOLDERFIELDENUM_PRICEPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='PricePlaceholderField', + full_name='google.ads.googleads.v0.enums.PricePlaceholderFieldEnum.PricePlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TYPE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PRICE_QUALIFIER', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TRACKING_TEMPLATE', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LANGUAGE', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URL_SUFFIX', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_1_HEADER', index=7, number=100, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_1_DESCRIPTION', index=8, number=101, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_1_PRICE', index=9, number=102, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_1_UNIT', index=10, number=103, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_1_FINAL_URLS', index=11, number=104, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_1_FINAL_MOBILE_URLS', index=12, number=105, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_2_HEADER', index=13, number=200, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_2_DESCRIPTION', index=14, number=201, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_2_PRICE', index=15, number=202, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_2_UNIT', index=16, number=203, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_2_FINAL_URLS', index=17, number=204, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_2_FINAL_MOBILE_URLS', index=18, number=205, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_3_HEADER', index=19, number=300, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_3_DESCRIPTION', index=20, number=301, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_3_PRICE', index=21, number=302, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_3_UNIT', index=22, number=303, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_3_FINAL_URLS', index=23, number=304, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_3_FINAL_MOBILE_URLS', index=24, number=305, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_4_HEADER', index=25, number=400, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_4_DESCRIPTION', index=26, number=401, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_4_PRICE', index=27, number=402, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_4_UNIT', index=28, number=403, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_4_FINAL_URLS', index=29, number=404, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_4_FINAL_MOBILE_URLS', index=30, number=405, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_5_HEADER', index=31, number=500, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_5_DESCRIPTION', index=32, number=501, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_5_PRICE', index=33, number=502, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_5_UNIT', index=34, number=503, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_5_FINAL_URLS', index=35, number=504, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_5_FINAL_MOBILE_URLS', index=36, number=505, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_6_HEADER', index=37, number=600, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_6_DESCRIPTION', index=38, number=601, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_6_PRICE', index=39, number=602, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_6_UNIT', index=40, number=603, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_6_FINAL_URLS', index=41, number=604, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_6_FINAL_MOBILE_URLS', index=42, number=605, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_7_HEADER', index=43, number=700, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_7_DESCRIPTION', index=44, number=701, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_7_PRICE', index=45, number=702, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_7_UNIT', index=46, number=703, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_7_FINAL_URLS', index=47, number=704, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_7_FINAL_MOBILE_URLS', index=48, number=705, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_8_HEADER', index=49, number=800, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_8_DESCRIPTION', index=50, number=801, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_8_PRICE', index=51, number=802, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_8_UNIT', index=52, number=803, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_8_FINAL_URLS', index=53, number=804, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ITEM_8_FINAL_MOBILE_URLS', index=54, number=805, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=131, + serialized_end=1364, +) +_sym_db.RegisterEnumDescriptor(_PRICEPLACEHOLDERFIELDENUM_PRICEPLACEHOLDERFIELD) + + +_PRICEPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='PricePlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.PricePlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _PRICEPLACEHOLDERFIELDENUM_PRICEPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=101, + serialized_end=1364, +) + +_PRICEPLACEHOLDERFIELDENUM_PRICEPLACEHOLDERFIELD.containing_type = _PRICEPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['PricePlaceholderFieldEnum'] = _PRICEPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +PricePlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('PricePlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _PRICEPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.price_placeholder_field_pb2' + , + __doc__ = """Values for Price placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.PricePlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(PricePlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\032PricePlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/price_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/price_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/price_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/product_channel_exclusivity_pb2.py b/google/ads/google_ads/v0/proto/enums/product_channel_exclusivity_pb2.py index cda7b6fe1..fbe5bcb8c 100644 --- a/google/ads/google_ads/v0/proto/enums/product_channel_exclusivity_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/product_channel_exclusivity_pb2.py @@ -85,7 +85,7 @@ ProductChannelExclusivityEnum = _reflection.GeneratedProtocolMessageType('ProductChannelExclusivityEnum', (_message.Message,), dict( DESCRIPTOR = _PRODUCTCHANNELEXCLUSIVITYENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.product_channel_exclusivity_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.product_channel_exclusivity_pb2' , __doc__ = """Availability of a product offer. """, diff --git a/google/ads/google_ads/v0/proto/enums/product_channel_pb2.py b/google/ads/google_ads/v0/proto/enums/product_channel_pb2.py index 2e4595b66..e75e93e7d 100644 --- a/google/ads/google_ads/v0/proto/enums/product_channel_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/product_channel_pb2.py @@ -85,7 +85,7 @@ ProductChannelEnum = _reflection.GeneratedProtocolMessageType('ProductChannelEnum', (_message.Message,), dict( DESCRIPTOR = _PRODUCTCHANNELENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.product_channel_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.product_channel_pb2' , __doc__ = """Locality of a product offer. """, diff --git a/google/ads/google_ads/v0/proto/enums/product_condition_pb2.py b/google/ads/google_ads/v0/proto/enums/product_condition_pb2.py index e6849cac7..b726622b1 100644 --- a/google/ads/google_ads/v0/proto/enums/product_condition_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/product_condition_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/enums/product_condition.proto', package='google.ads.googleads.v0.enums', syntax='proto3', - serialized_pb=_b('\n;google/ads/googleads_v0/proto/enums/product_condition.proto\x12\x1dgoogle.ads.googleads.v0.enums\"u\n\x14ProductConditionEnum\"]\n\x10ProductCondition\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x07\n\x03OLD\x10\x02\x12\x07\n\x03NEW\x10\x03\x12\x0f\n\x0bREFURBISHED\x10\x04\x12\x08\n\x04USED\x10\x05\x42\xc6\x01\n!com.google.ads.googleads.v0.enumsB\x15ProductConditionProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') + serialized_pb=_b('\n;google/ads/googleads_v0/proto/enums/product_condition.proto\x12\x1dgoogle.ads.googleads.v0.enums\"l\n\x14ProductConditionEnum\"T\n\x10ProductCondition\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x07\n\x03NEW\x10\x03\x12\x0f\n\x0bREFURBISHED\x10\x04\x12\x08\n\x04USED\x10\x05\x42\xc6\x01\n!com.google.ads.googleads.v0.enumsB\x15ProductConditionProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') ) @@ -39,26 +39,22 @@ options=None, type=None), _descriptor.EnumValueDescriptor( - name='OLD', index=2, number=2, + name='NEW', index=2, number=3, options=None, type=None), _descriptor.EnumValueDescriptor( - name='NEW', index=3, number=3, + name='REFURBISHED', index=3, number=4, options=None, type=None), _descriptor.EnumValueDescriptor( - name='REFURBISHED', index=4, number=4, - options=None, - type=None), - _descriptor.EnumValueDescriptor( - name='USED', index=5, number=5, + name='USED', index=4, number=5, options=None, type=None), ], containing_type=None, options=None, serialized_start=118, - serialized_end=211, + serialized_end=202, ) _sym_db.RegisterEnumDescriptor(_PRODUCTCONDITIONENUM_PRODUCTCONDITION) @@ -84,7 +80,7 @@ oneofs=[ ], serialized_start=94, - serialized_end=211, + serialized_end=202, ) _PRODUCTCONDITIONENUM_PRODUCTCONDITION.containing_type = _PRODUCTCONDITIONENUM @@ -93,7 +89,7 @@ ProductConditionEnum = _reflection.GeneratedProtocolMessageType('ProductConditionEnum', (_message.Message,), dict( DESCRIPTOR = _PRODUCTCONDITIONENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.product_condition_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.product_condition_pb2' , __doc__ = """Condition of a product offer. """, diff --git a/google/ads/google_ads/v0/proto/enums/product_type_level_pb2.py b/google/ads/google_ads/v0/proto/enums/product_type_level_pb2.py index fc564518f..3c423ebed 100644 --- a/google/ads/google_ads/v0/proto/enums/product_type_level_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/product_type_level_pb2.py @@ -97,7 +97,7 @@ ProductTypeLevelEnum = _reflection.GeneratedProtocolMessageType('ProductTypeLevelEnum', (_message.Message,), dict( DESCRIPTOR = _PRODUCTTYPELEVELENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.product_type_level_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.product_type_level_pb2' , __doc__ = """Level of the type of a product offer. """, diff --git a/google/ads/google_ads/v0/proto/enums/promotion_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/promotion_placeholder_field_pb2.py new file mode 100644 index 000000000..16fe5c2ee --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/promotion_placeholder_field_pb2.py @@ -0,0 +1,147 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/promotion_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/promotion_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nEgoogle/ads/googleads_v0/proto/enums/promotion_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xee\x02\n\x1dPromotionPlaceholderFieldEnum\"\xcc\x02\n\x19PromotionPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x14\n\x10PROMOTION_TARGET\x10\x02\x12\x15\n\x11\x44ISCOUNT_MODIFIER\x10\x03\x12\x0f\n\x0bPERCENT_OFF\x10\x04\x12\x14\n\x10MONEY_AMOUNT_OFF\x10\x05\x12\x12\n\x0ePROMOTION_CODE\x10\x06\x12\x16\n\x12ORDERS_OVER_AMOUNT\x10\x07\x12\x13\n\x0fPROMOTION_START\x10\x08\x12\x11\n\rPROMOTION_END\x10\t\x12\x0c\n\x08OCCASION\x10\n\x12\x0e\n\nFINAL_URLS\x10\x0b\x12\x15\n\x11\x46INAL_MOBILE_URLS\x10\x0c\x12\x10\n\x0cTRACKING_URL\x10\r\x12\x0c\n\x08LANGUAGE\x10\x0e\x12\x14\n\x10\x46INAL_URL_SUFFIX\x10\x0f\x42\xcf\x01\n!com.google.ads.googleads.v0.enumsB\x1ePromotionPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_PROMOTIONPLACEHOLDERFIELDENUM_PROMOTIONPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='PromotionPlaceholderField', + full_name='google.ads.googleads.v0.enums.PromotionPlaceholderFieldEnum.PromotionPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PROMOTION_TARGET', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DISCOUNT_MODIFIER', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PERCENT_OFF', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MONEY_AMOUNT_OFF', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PROMOTION_CODE', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ORDERS_OVER_AMOUNT', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PROMOTION_START', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PROMOTION_END', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='OCCASION', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URLS', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_MOBILE_URLS', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TRACKING_URL', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LANGUAGE', index=14, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URL_SUFFIX', index=15, number=15, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=139, + serialized_end=471, +) +_sym_db.RegisterEnumDescriptor(_PROMOTIONPLACEHOLDERFIELDENUM_PROMOTIONPLACEHOLDERFIELD) + + +_PROMOTIONPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='PromotionPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.PromotionPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _PROMOTIONPLACEHOLDERFIELDENUM_PROMOTIONPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=105, + serialized_end=471, +) + +_PROMOTIONPLACEHOLDERFIELDENUM_PROMOTIONPLACEHOLDERFIELD.containing_type = _PROMOTIONPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['PromotionPlaceholderFieldEnum'] = _PROMOTIONPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +PromotionPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('PromotionPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _PROMOTIONPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.promotion_placeholder_field_pb2' + , + __doc__ = """Values for Promotion placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.PromotionPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(PromotionPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\036PromotionPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/promotion_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/promotion_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/promotion_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/proximity_radius_units_pb2.py b/google/ads/google_ads/v0/proto/enums/proximity_radius_units_pb2.py index 0f709dc29..bdac6da55 100644 --- a/google/ads/google_ads/v0/proto/enums/proximity_radius_units_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/proximity_radius_units_pb2.py @@ -85,7 +85,7 @@ ProximityRadiusUnitsEnum = _reflection.GeneratedProtocolMessageType('ProximityRadiusUnitsEnum', (_message.Message,), dict( DESCRIPTOR = _PROXIMITYRADIUSUNITSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.proximity_radius_units_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.proximity_radius_units_pb2' , __doc__ = """Container for enum describing unit of radius in proximity. """, diff --git a/google/ads/google_ads/v0/proto/enums/quality_score_bucket_pb2.py b/google/ads/google_ads/v0/proto/enums/quality_score_bucket_pb2.py index 970654544..08c07bd3b 100644 --- a/google/ads/google_ads/v0/proto/enums/quality_score_bucket_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/quality_score_bucket_pb2.py @@ -89,7 +89,7 @@ QualityScoreBucketEnum = _reflection.GeneratedProtocolMessageType('QualityScoreBucketEnum', (_message.Message,), dict( DESCRIPTOR = _QUALITYSCOREBUCKETENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.quality_score_bucket_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.quality_score_bucket_pb2' , __doc__ = """The relative performance compared to other advertisers. """, diff --git a/google/ads/google_ads/v0/proto/enums/real_estate_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/real_estate_placeholder_field_pb2.py new file mode 100644 index 000000000..14869794b --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/real_estate_placeholder_field_pb2.py @@ -0,0 +1,165 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/real_estate_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/real_estate_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nGgoogle/ads/googleads_v0/proto/enums/real_estate_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xa9\x03\n\x1eRealEstatePlaceholderFieldEnum\"\x86\x03\n\x1aRealEstatePlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0e\n\nLISTING_ID\x10\x02\x12\x10\n\x0cLISTING_NAME\x10\x03\x12\r\n\tCITY_NAME\x10\x04\x12\x0f\n\x0b\x44\x45SCRIPTION\x10\x05\x12\x0b\n\x07\x41\x44\x44RESS\x10\x06\x12\t\n\x05PRICE\x10\x07\x12\x13\n\x0f\x46ORMATTED_PRICE\x10\x08\x12\r\n\tIMAGE_URL\x10\t\x12\x11\n\rPROPERTY_TYPE\x10\n\x12\x10\n\x0cLISTING_TYPE\x10\x0b\x12\x17\n\x13\x43ONTEXTUAL_KEYWORDS\x10\x0c\x12\x0e\n\nFINAL_URLS\x10\r\x12\x15\n\x11\x46INAL_MOBILE_URLS\x10\x0e\x12\x10\n\x0cTRACKING_URL\x10\x0f\x12\x14\n\x10\x41NDROID_APP_LINK\x10\x10\x12\x17\n\x13SIMILAR_LISTING_IDS\x10\x11\x12\x10\n\x0cIOS_APP_LINK\x10\x12\x12\x14\n\x10IOS_APP_STORE_ID\x10\x13\x42\xd0\x01\n!com.google.ads.googleads.v0.enumsB\x1fRealEstatePlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_REALESTATEPLACEHOLDERFIELDENUM_REALESTATEPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='RealEstatePlaceholderField', + full_name='google.ads.googleads.v0.enums.RealEstatePlaceholderFieldEnum.RealEstatePlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LISTING_ID', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LISTING_NAME', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CITY_NAME', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DESCRIPTION', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ADDRESS', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PRICE', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FORMATTED_PRICE', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IMAGE_URL', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PROPERTY_TYPE', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LISTING_TYPE', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONTEXTUAL_KEYWORDS', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URLS', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_MOBILE_URLS', index=14, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TRACKING_URL', index=15, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ANDROID_APP_LINK', index=16, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SIMILAR_LISTING_IDS', index=17, number=17, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IOS_APP_LINK', index=18, number=18, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IOS_APP_STORE_ID', index=19, number=19, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=142, + serialized_end=532, +) +_sym_db.RegisterEnumDescriptor(_REALESTATEPLACEHOLDERFIELDENUM_REALESTATEPLACEHOLDERFIELD) + + +_REALESTATEPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='RealEstatePlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.RealEstatePlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _REALESTATEPLACEHOLDERFIELDENUM_REALESTATEPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=107, + serialized_end=532, +) + +_REALESTATEPLACEHOLDERFIELDENUM_REALESTATEPLACEHOLDERFIELD.containing_type = _REALESTATEPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['RealEstatePlaceholderFieldEnum'] = _REALESTATEPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +RealEstatePlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('RealEstatePlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _REALESTATEPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.real_estate_placeholder_field_pb2' + , + __doc__ = """Values for Real Estate placeholder fields. For more information about + dynamic remarketing feeds, see + https://support.google.com/google-ads/answer/6053288. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.RealEstatePlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(RealEstatePlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\037RealEstatePlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/real_estate_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/real_estate_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/real_estate_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/recommendation_type_pb2.py b/google/ads/google_ads/v0/proto/enums/recommendation_type_pb2.py index 6d23f071f..eec9cf730 100644 --- a/google/ads/google_ads/v0/proto/enums/recommendation_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/recommendation_type_pb2.py @@ -113,7 +113,7 @@ RecommendationTypeEnum = _reflection.GeneratedProtocolMessageType('RecommendationTypeEnum', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATIONTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.recommendation_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.recommendation_type_pb2' , __doc__ = """Container for enum describing types of recommendations. """, diff --git a/google/ads/google_ads/v0/proto/enums/search_term_match_type_pb2.py b/google/ads/google_ads/v0/proto/enums/search_term_match_type_pb2.py new file mode 100644 index 000000000..a94ae9854 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/search_term_match_type_pb2.py @@ -0,0 +1,112 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/search_term_match_type.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/search_term_match_type.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n@google/ads/googleads_v0/proto/enums/search_term_match_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x91\x01\n\x17SearchTermMatchTypeEnum\"v\n\x13SearchTermMatchType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\t\n\x05\x42ROAD\x10\x02\x12\t\n\x05\x45XACT\x10\x03\x12\n\n\x06PHRASE\x10\x04\x12\x0e\n\nNEAR_EXACT\x10\x05\x12\x0f\n\x0bNEAR_PHRASE\x10\x06\x42\xc9\x01\n!com.google.ads.googleads.v0.enumsB\x18SearchTermMatchTypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_SEARCHTERMMATCHTYPEENUM_SEARCHTERMMATCHTYPE = _descriptor.EnumDescriptor( + name='SearchTermMatchType', + full_name='google.ads.googleads.v0.enums.SearchTermMatchTypeEnum.SearchTermMatchType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BROAD', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='EXACT', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PHRASE', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NEAR_EXACT', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NEAR_PHRASE', index=6, number=6, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=127, + serialized_end=245, +) +_sym_db.RegisterEnumDescriptor(_SEARCHTERMMATCHTYPEENUM_SEARCHTERMMATCHTYPE) + + +_SEARCHTERMMATCHTYPEENUM = _descriptor.Descriptor( + name='SearchTermMatchTypeEnum', + full_name='google.ads.googleads.v0.enums.SearchTermMatchTypeEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _SEARCHTERMMATCHTYPEENUM_SEARCHTERMMATCHTYPE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=100, + serialized_end=245, +) + +_SEARCHTERMMATCHTYPEENUM_SEARCHTERMMATCHTYPE.containing_type = _SEARCHTERMMATCHTYPEENUM +DESCRIPTOR.message_types_by_name['SearchTermMatchTypeEnum'] = _SEARCHTERMMATCHTYPEENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +SearchTermMatchTypeEnum = _reflection.GeneratedProtocolMessageType('SearchTermMatchTypeEnum', (_message.Message,), dict( + DESCRIPTOR = _SEARCHTERMMATCHTYPEENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.search_term_match_type_pb2' + , + __doc__ = """Container for enum describing match types for a keyword triggering an + ad. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.SearchTermMatchTypeEnum) + )) +_sym_db.RegisterMessage(SearchTermMatchTypeEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\030SearchTermMatchTypeProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/search_term_match_type_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/search_term_match_type_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/search_term_match_type_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/search_term_targeting_status_pb2.py b/google/ads/google_ads/v0/proto/enums/search_term_targeting_status_pb2.py new file mode 100644 index 000000000..55c59b1b5 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/search_term_targeting_status_pb2.py @@ -0,0 +1,108 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/search_term_targeting_status.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/search_term_targeting_status.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nFgoogle/ads/googleads_v0/proto/enums/search_term_targeting_status.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x91\x01\n\x1dSearchTermTargetingStatusEnum\"p\n\x19SearchTermTargetingStatus\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\t\n\x05\x41\x44\x44\x45\x44\x10\x02\x12\x0c\n\x08\x45XCLUDED\x10\x03\x12\x12\n\x0e\x41\x44\x44\x45\x44_EXCLUDED\x10\x04\x12\x08\n\x04NONE\x10\x05\x42\xcf\x01\n!com.google.ads.googleads.v0.enumsB\x1eSearchTermTargetingStatusProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_SEARCHTERMTARGETINGSTATUSENUM_SEARCHTERMTARGETINGSTATUS = _descriptor.EnumDescriptor( + name='SearchTermTargetingStatus', + full_name='google.ads.googleads.v0.enums.SearchTermTargetingStatusEnum.SearchTermTargetingStatus', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ADDED', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='EXCLUDED', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ADDED_EXCLUDED', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NONE', index=5, number=5, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=139, + serialized_end=251, +) +_sym_db.RegisterEnumDescriptor(_SEARCHTERMTARGETINGSTATUSENUM_SEARCHTERMTARGETINGSTATUS) + + +_SEARCHTERMTARGETINGSTATUSENUM = _descriptor.Descriptor( + name='SearchTermTargetingStatusEnum', + full_name='google.ads.googleads.v0.enums.SearchTermTargetingStatusEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _SEARCHTERMTARGETINGSTATUSENUM_SEARCHTERMTARGETINGSTATUS, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=106, + serialized_end=251, +) + +_SEARCHTERMTARGETINGSTATUSENUM_SEARCHTERMTARGETINGSTATUS.containing_type = _SEARCHTERMTARGETINGSTATUSENUM +DESCRIPTOR.message_types_by_name['SearchTermTargetingStatusEnum'] = _SEARCHTERMTARGETINGSTATUSENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +SearchTermTargetingStatusEnum = _reflection.GeneratedProtocolMessageType('SearchTermTargetingStatusEnum', (_message.Message,), dict( + DESCRIPTOR = _SEARCHTERMTARGETINGSTATUSENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.search_term_targeting_status_pb2' + , + __doc__ = """Container for enum indicating whether a search term is one of your + targeted or excluded keywords. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.SearchTermTargetingStatusEnum) + )) +_sym_db.RegisterMessage(SearchTermTargetingStatusEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\036SearchTermTargetingStatusProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/search_term_targeting_status_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/search_term_targeting_status_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/search_term_targeting_status_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/shared_set_status_pb2.py b/google/ads/google_ads/v0/proto/enums/shared_set_status_pb2.py index d4ae529c2..c541f010f 100644 --- a/google/ads/google_ads/v0/proto/enums/shared_set_status_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/shared_set_status_pb2.py @@ -85,7 +85,7 @@ SharedSetStatusEnum = _reflection.GeneratedProtocolMessageType('SharedSetStatusEnum', (_message.Message,), dict( DESCRIPTOR = _SHAREDSETSTATUSENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.shared_set_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.shared_set_status_pb2' , __doc__ = """Container for enum describing types of shared set statuses. """, diff --git a/google/ads/google_ads/v0/proto/enums/shared_set_type_pb2.py b/google/ads/google_ads/v0/proto/enums/shared_set_type_pb2.py index a30a506d1..d5af7bd2e 100644 --- a/google/ads/google_ads/v0/proto/enums/shared_set_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/shared_set_type_pb2.py @@ -85,7 +85,7 @@ SharedSetTypeEnum = _reflection.GeneratedProtocolMessageType('SharedSetTypeEnum', (_message.Message,), dict( DESCRIPTOR = _SHAREDSETTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.shared_set_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.shared_set_type_pb2' , __doc__ = """Container for enum describing types of shared sets. """, diff --git a/google/ads/google_ads/v0/proto/enums/sitelink_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/sitelink_placeholder_field_pb2.py new file mode 100644 index 000000000..32593123f --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/sitelink_placeholder_field_pb2.py @@ -0,0 +1,119 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/sitelink_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/sitelink_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nDgoogle/ads/googleads_v0/proto/enums/sitelink_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xca\x01\n\x1cSitelinkPlaceholderFieldEnum\"\xa9\x01\n\x18SitelinkPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x08\n\x04TEXT\x10\x02\x12\n\n\x06LINE_1\x10\x03\x12\n\n\x06LINE_2\x10\x04\x12\x0e\n\nFINAL_URLS\x10\x05\x12\x15\n\x11\x46INAL_MOBILE_URLS\x10\x06\x12\x10\n\x0cTRACKING_URL\x10\x07\x12\x14\n\x10\x46INAL_URL_SUFFIX\x10\x08\x42\xce\x01\n!com.google.ads.googleads.v0.enumsB\x1dSitelinkPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_SITELINKPLACEHOLDERFIELDENUM_SITELINKPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='SitelinkPlaceholderField', + full_name='google.ads.googleads.v0.enums.SitelinkPlaceholderFieldEnum.SitelinkPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TEXT', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LINE_1', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LINE_2', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URLS', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_MOBILE_URLS', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TRACKING_URL', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URL_SUFFIX', index=8, number=8, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=137, + serialized_end=306, +) +_sym_db.RegisterEnumDescriptor(_SITELINKPLACEHOLDERFIELDENUM_SITELINKPLACEHOLDERFIELD) + + +_SITELINKPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='SitelinkPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.SitelinkPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _SITELINKPLACEHOLDERFIELDENUM_SITELINKPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=104, + serialized_end=306, +) + +_SITELINKPLACEHOLDERFIELDENUM_SITELINKPLACEHOLDERFIELD.containing_type = _SITELINKPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['SitelinkPlaceholderFieldEnum'] = _SITELINKPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +SitelinkPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('SitelinkPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _SITELINKPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.sitelink_placeholder_field_pb2' + , + __doc__ = """Values for Sitelink placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.SitelinkPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(SitelinkPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\035SitelinkPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/sitelink_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/sitelink_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/sitelink_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/slot_pb2.py b/google/ads/google_ads/v0/proto/enums/slot_pb2.py index 5d03b3af8..07a043c77 100644 --- a/google/ads/google_ads/v0/proto/enums/slot_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/slot_pb2.py @@ -105,7 +105,7 @@ SlotEnum = _reflection.GeneratedProtocolMessageType('SlotEnum', (_message.Message,), dict( DESCRIPTOR = _SLOTENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.slot_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.slot_pb2' , __doc__ = """Container for enumeration of possible positions of the Ad. """, diff --git a/google/ads/google_ads/v0/proto/enums/spending_limit_type_pb2.py b/google/ads/google_ads/v0/proto/enums/spending_limit_type_pb2.py index 641518bd3..27976fe5d 100644 --- a/google/ads/google_ads/v0/proto/enums/spending_limit_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/spending_limit_type_pb2.py @@ -81,7 +81,7 @@ SpendingLimitTypeEnum = _reflection.GeneratedProtocolMessageType('SpendingLimitTypeEnum', (_message.Message,), dict( DESCRIPTOR = _SPENDINGLIMITTYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.spending_limit_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.spending_limit_type_pb2' , __doc__ = """Message describing spending limit types. """, diff --git a/google/ads/google_ads/v0/proto/enums/structured_snippet_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/structured_snippet_placeholder_field_pb2.py new file mode 100644 index 000000000..8032042a1 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/structured_snippet_placeholder_field_pb2.py @@ -0,0 +1,99 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/structured_snippet_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/structured_snippet_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nNgoogle/ads/googleads_v0/proto/enums/structured_snippet_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x84\x01\n%StructuredSnippetPlaceholderFieldEnum\"[\n!StructuredSnippetPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\n\n\x06HEADER\x10\x02\x12\x0c\n\x08SNIPPETS\x10\x03\x42\xd7\x01\n!com.google.ads.googleads.v0.enumsB&StructuredSnippetPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_STRUCTUREDSNIPPETPLACEHOLDERFIELDENUM_STRUCTUREDSNIPPETPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='StructuredSnippetPlaceholderField', + full_name='google.ads.googleads.v0.enums.StructuredSnippetPlaceholderFieldEnum.StructuredSnippetPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='HEADER', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SNIPPETS', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=155, + serialized_end=246, +) +_sym_db.RegisterEnumDescriptor(_STRUCTUREDSNIPPETPLACEHOLDERFIELDENUM_STRUCTUREDSNIPPETPLACEHOLDERFIELD) + + +_STRUCTUREDSNIPPETPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='StructuredSnippetPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.StructuredSnippetPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _STRUCTUREDSNIPPETPLACEHOLDERFIELDENUM_STRUCTUREDSNIPPETPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=114, + serialized_end=246, +) + +_STRUCTUREDSNIPPETPLACEHOLDERFIELDENUM_STRUCTUREDSNIPPETPLACEHOLDERFIELD.containing_type = _STRUCTUREDSNIPPETPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['StructuredSnippetPlaceholderFieldEnum'] = _STRUCTUREDSNIPPETPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +StructuredSnippetPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('StructuredSnippetPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _STRUCTUREDSNIPPETPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.structured_snippet_placeholder_field_pb2' + , + __doc__ = """Values for Structured Snippet placeholder fields. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.StructuredSnippetPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(StructuredSnippetPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB&StructuredSnippetPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/structured_snippet_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/structured_snippet_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/structured_snippet_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/target_cpa_opt_in_recommendation_goal_pb2.py b/google/ads/google_ads/v0/proto/enums/target_cpa_opt_in_recommendation_goal_pb2.py index 9d2c1d009..5cb040fcf 100644 --- a/google/ads/google_ads/v0/proto/enums/target_cpa_opt_in_recommendation_goal_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/target_cpa_opt_in_recommendation_goal_pb2.py @@ -93,7 +93,7 @@ TargetCpaOptInRecommendationGoalEnum = _reflection.GeneratedProtocolMessageType('TargetCpaOptInRecommendationGoalEnum', (_message.Message,), dict( DESCRIPTOR = _TARGETCPAOPTINRECOMMENDATIONGOALENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.target_cpa_opt_in_recommendation_goal_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.target_cpa_opt_in_recommendation_goal_pb2' , __doc__ = """Container for enum describing goals for TargetCpaOptIn recommendation. """, diff --git a/google/ads/google_ads/v0/proto/enums/targeting_dimension_pb2.py b/google/ads/google_ads/v0/proto/enums/targeting_dimension_pb2.py new file mode 100644 index 000000000..56cd5c888 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/targeting_dimension_pb2.py @@ -0,0 +1,123 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/targeting_dimension.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/targeting_dimension.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n=google/ads/googleads_v0/proto/enums/targeting_dimension.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xc4\x01\n\x16TargetingDimensionEnum\"\xa9\x01\n\x12TargetingDimension\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0b\n\x07KEYWORD\x10\x02\x12\x0c\n\x08\x41UDIENCE\x10\x03\x12\t\n\x05TOPIC\x10\x04\x12\n\n\x06GENDER\x10\x05\x12\r\n\tAGE_RANGE\x10\x06\x12\r\n\tPLACEMENT\x10\x07\x12\x13\n\x0fPARENTAL_STATUS\x10\x08\x12\x10\n\x0cINCOME_RANGE\x10\tB\xc8\x01\n!com.google.ads.googleads.v0.enumsB\x17TargetingDimensionProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_TARGETINGDIMENSIONENUM_TARGETINGDIMENSION = _descriptor.EnumDescriptor( + name='TargetingDimension', + full_name='google.ads.googleads.v0.enums.TargetingDimensionEnum.TargetingDimension', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEYWORD', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AUDIENCE', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TOPIC', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='GENDER', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AGE_RANGE', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PLACEMENT', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PARENTAL_STATUS', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INCOME_RANGE', index=9, number=9, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=124, + serialized_end=293, +) +_sym_db.RegisterEnumDescriptor(_TARGETINGDIMENSIONENUM_TARGETINGDIMENSION) + + +_TARGETINGDIMENSIONENUM = _descriptor.Descriptor( + name='TargetingDimensionEnum', + full_name='google.ads.googleads.v0.enums.TargetingDimensionEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _TARGETINGDIMENSIONENUM_TARGETINGDIMENSION, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=97, + serialized_end=293, +) + +_TARGETINGDIMENSIONENUM_TARGETINGDIMENSION.containing_type = _TARGETINGDIMENSIONENUM +DESCRIPTOR.message_types_by_name['TargetingDimensionEnum'] = _TARGETINGDIMENSIONENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +TargetingDimensionEnum = _reflection.GeneratedProtocolMessageType('TargetingDimensionEnum', (_message.Message,), dict( + DESCRIPTOR = _TARGETINGDIMENSIONENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.targeting_dimension_pb2' + , + __doc__ = """The dimensions that can be targeted. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.TargetingDimensionEnum) + )) +_sym_db.RegisterMessage(TargetingDimensionEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\027TargetingDimensionProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/targeting_dimension_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/targeting_dimension_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/targeting_dimension_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/time_type_pb2.py b/google/ads/google_ads/v0/proto/enums/time_type_pb2.py index 5c1f8436c..69945e0de 100644 --- a/google/ads/google_ads/v0/proto/enums/time_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/time_type_pb2.py @@ -85,7 +85,7 @@ TimeTypeEnum = _reflection.GeneratedProtocolMessageType('TimeTypeEnum', (_message.Message,), dict( DESCRIPTOR = _TIMETYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.time_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.time_type_pb2' , __doc__ = """Message describing time types. """, diff --git a/google/ads/google_ads/v0/proto/enums/tracking_code_page_format_pb2.py b/google/ads/google_ads/v0/proto/enums/tracking_code_page_format_pb2.py index f434ce631..1b5471778 100644 --- a/google/ads/google_ads/v0/proto/enums/tracking_code_page_format_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/tracking_code_page_format_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/enums/tracking_code_page_format.proto', package='google.ads.googleads.v0.enums', syntax='proto3', - serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/enums/tracking_code_page_format.proto\x12\x1dgoogle.ads.googleads.v0.enums\"^\n\x1aTrackingCodePageFormatEnum\"@\n\x16TrackingCodePageFormat\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x08\n\x04HTML\x10\x02\x42\xcc\x01\n!com.google.ads.googleads.v0.enumsB\x1bTrackingCodePageFormatProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') + serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/enums/tracking_code_page_format.proto\x12\x1dgoogle.ads.googleads.v0.enums\"g\n\x1aTrackingCodePageFormatEnum\"I\n\x16TrackingCodePageFormat\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x08\n\x04HTML\x10\x02\x12\x07\n\x03\x41MP\x10\x03\x42\xcc\x01\n!com.google.ads.googleads.v0.enumsB\x1bTrackingCodePageFormatProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') ) @@ -42,11 +42,15 @@ name='HTML', index=2, number=2, options=None, type=None), + _descriptor.EnumValueDescriptor( + name='AMP', index=3, number=3, + options=None, + type=None), ], containing_type=None, options=None, serialized_start=132, - serialized_end=196, + serialized_end=205, ) _sym_db.RegisterEnumDescriptor(_TRACKINGCODEPAGEFORMATENUM_TRACKINGCODEPAGEFORMAT) @@ -72,7 +76,7 @@ oneofs=[ ], serialized_start=102, - serialized_end=196, + serialized_end=205, ) _TRACKINGCODEPAGEFORMATENUM_TRACKINGCODEPAGEFORMAT.containing_type = _TRACKINGCODEPAGEFORMATENUM @@ -81,7 +85,7 @@ TrackingCodePageFormatEnum = _reflection.GeneratedProtocolMessageType('TrackingCodePageFormatEnum', (_message.Message,), dict( DESCRIPTOR = _TRACKINGCODEPAGEFORMATENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.tracking_code_page_format_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.tracking_code_page_format_pb2' , __doc__ = """Container for enum describing the format of the web page where the tracking tag and snippet will be installed. diff --git a/google/ads/google_ads/v0/proto/enums/tracking_code_type_pb2.py b/google/ads/google_ads/v0/proto/enums/tracking_code_type_pb2.py index aff437c42..bb6350a65 100644 --- a/google/ads/google_ads/v0/proto/enums/tracking_code_type_pb2.py +++ b/google/ads/google_ads/v0/proto/enums/tracking_code_type_pb2.py @@ -89,7 +89,7 @@ TrackingCodeTypeEnum = _reflection.GeneratedProtocolMessageType('TrackingCodeTypeEnum', (_message.Message,), dict( DESCRIPTOR = _TRACKINGCODETYPEENUM, - __module__ = 'google.ads.googleads_v0.proto.enums.tracking_code_type_pb2' + __module__ = 'google.ads.google_ads.v0.proto.enums.tracking_code_type_pb2' , __doc__ = """Container for enum describing the type of the generated tag snippets for tracking conversions. diff --git a/google/ads/google_ads/v0/proto/enums/travel_placeholder_field_pb2.py b/google/ads/google_ads/v0/proto/enums/travel_placeholder_field_pb2.py new file mode 100644 index 000000000..c771b2593 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/travel_placeholder_field_pb2.py @@ -0,0 +1,173 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/travel_placeholder_field.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/travel_placeholder_field.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nBgoogle/ads/googleads_v0/proto/enums/travel_placeholder_field.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xd6\x03\n\x1aTravelPlaceholderFieldEnum\"\xb7\x03\n\x16TravelPlaceholderField\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x12\n\x0e\x44\x45STINATION_ID\x10\x02\x12\r\n\tORIGIN_ID\x10\x03\x12\t\n\x05TITLE\x10\x04\x12\x14\n\x10\x44\x45STINATION_NAME\x10\x05\x12\x0f\n\x0bORIGIN_NAME\x10\x06\x12\t\n\x05PRICE\x10\x07\x12\x13\n\x0f\x46ORMATTED_PRICE\x10\x08\x12\x0e\n\nSALE_PRICE\x10\t\x12\x18\n\x14\x46ORMATTED_SALE_PRICE\x10\n\x12\r\n\tIMAGE_URL\x10\x0b\x12\x0c\n\x08\x43\x41TEGORY\x10\x0c\x12\x17\n\x13\x43ONTEXTUAL_KEYWORDS\x10\r\x12\x17\n\x13\x44\x45STINATION_ADDRESS\x10\x0e\x12\r\n\tFINAL_URL\x10\x0f\x12\x15\n\x11\x46INAL_MOBILE_URLS\x10\x10\x12\x10\n\x0cTRACKING_URL\x10\x11\x12\x14\n\x10\x41NDROID_APP_LINK\x10\x12\x12\x1b\n\x17SIMILAR_DESTINATION_IDS\x10\x13\x12\x10\n\x0cIOS_APP_LINK\x10\x14\x12\x14\n\x10IOS_APP_STORE_ID\x10\x15\x42\xcc\x01\n!com.google.ads.googleads.v0.enumsB\x1bTravelPlaceholderFieldProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_TRAVELPLACEHOLDERFIELDENUM_TRAVELPLACEHOLDERFIELD = _descriptor.EnumDescriptor( + name='TravelPlaceholderField', + full_name='google.ads.googleads.v0.enums.TravelPlaceholderFieldEnum.TravelPlaceholderField', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DESTINATION_ID', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ORIGIN_ID', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TITLE', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DESTINATION_NAME', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ORIGIN_NAME', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PRICE', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FORMATTED_PRICE', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SALE_PRICE', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FORMATTED_SALE_PRICE', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IMAGE_URL', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CATEGORY', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONTEXTUAL_KEYWORDS', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DESTINATION_ADDRESS', index=14, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_URL', index=15, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FINAL_MOBILE_URLS', index=16, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TRACKING_URL', index=17, number=17, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ANDROID_APP_LINK', index=18, number=18, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SIMILAR_DESTINATION_IDS', index=19, number=19, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IOS_APP_LINK', index=20, number=20, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IOS_APP_STORE_ID', index=21, number=21, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=133, + serialized_end=572, +) +_sym_db.RegisterEnumDescriptor(_TRAVELPLACEHOLDERFIELDENUM_TRAVELPLACEHOLDERFIELD) + + +_TRAVELPLACEHOLDERFIELDENUM = _descriptor.Descriptor( + name='TravelPlaceholderFieldEnum', + full_name='google.ads.googleads.v0.enums.TravelPlaceholderFieldEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _TRAVELPLACEHOLDERFIELDENUM_TRAVELPLACEHOLDERFIELD, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=102, + serialized_end=572, +) + +_TRAVELPLACEHOLDERFIELDENUM_TRAVELPLACEHOLDERFIELD.containing_type = _TRAVELPLACEHOLDERFIELDENUM +DESCRIPTOR.message_types_by_name['TravelPlaceholderFieldEnum'] = _TRAVELPLACEHOLDERFIELDENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +TravelPlaceholderFieldEnum = _reflection.GeneratedProtocolMessageType('TravelPlaceholderFieldEnum', (_message.Message,), dict( + DESCRIPTOR = _TRAVELPLACEHOLDERFIELDENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.travel_placeholder_field_pb2' + , + __doc__ = """Values for Travel placeholder fields. For more information about dynamic + remarketing feeds, see + https://support.google.com/google-ads/answer/6053288. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.TravelPlaceholderFieldEnum) + )) +_sym_db.RegisterMessage(TravelPlaceholderFieldEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\033TravelPlaceholderFieldProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/travel_placeholder_field_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/travel_placeholder_field_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/travel_placeholder_field_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/user_interest_taxonomy_type_pb2.py b/google/ads/google_ads/v0/proto/enums/user_interest_taxonomy_type_pb2.py new file mode 100644 index 000000000..108e7e956 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_interest_taxonomy_type_pb2.py @@ -0,0 +1,111 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/user_interest_taxonomy_type.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/user_interest_taxonomy_type.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nEgoogle/ads/googleads_v0/proto/enums/user_interest_taxonomy_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xbf\x01\n\x1cUserInterestTaxonomyTypeEnum\"\x9e\x01\n\x18UserInterestTaxonomyType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0c\n\x08\x41\x46\x46INITY\x10\x02\x12\r\n\tIN_MARKET\x10\x03\x12\x1b\n\x17MOBILE_APP_INSTALL_USER\x10\x04\x12\x10\n\x0cVERTICAL_GEO\x10\x05\x12\x18\n\x14NEW_SMART_PHONE_USER\x10\x06\x42\xce\x01\n!com.google.ads.googleads.v0.enumsB\x1dUserInterestTaxonomyTypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_USERINTERESTTAXONOMYTYPEENUM_USERINTERESTTAXONOMYTYPE = _descriptor.EnumDescriptor( + name='UserInterestTaxonomyType', + full_name='google.ads.googleads.v0.enums.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AFFINITY', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IN_MARKET', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MOBILE_APP_INSTALL_USER', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='VERTICAL_GEO', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NEW_SMART_PHONE_USER', index=6, number=6, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=138, + serialized_end=296, +) +_sym_db.RegisterEnumDescriptor(_USERINTERESTTAXONOMYTYPEENUM_USERINTERESTTAXONOMYTYPE) + + +_USERINTERESTTAXONOMYTYPEENUM = _descriptor.Descriptor( + name='UserInterestTaxonomyTypeEnum', + full_name='google.ads.googleads.v0.enums.UserInterestTaxonomyTypeEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _USERINTERESTTAXONOMYTYPEENUM_USERINTERESTTAXONOMYTYPE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=105, + serialized_end=296, +) + +_USERINTERESTTAXONOMYTYPEENUM_USERINTERESTTAXONOMYTYPE.containing_type = _USERINTERESTTAXONOMYTYPEENUM +DESCRIPTOR.message_types_by_name['UserInterestTaxonomyTypeEnum'] = _USERINTERESTTAXONOMYTYPEENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserInterestTaxonomyTypeEnum = _reflection.GeneratedProtocolMessageType('UserInterestTaxonomyTypeEnum', (_message.Message,), dict( + DESCRIPTOR = _USERINTERESTTAXONOMYTYPEENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.user_interest_taxonomy_type_pb2' + , + __doc__ = """Message describing a UserInterestTaxonomyType. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.UserInterestTaxonomyTypeEnum) + )) +_sym_db.RegisterMessage(UserInterestTaxonomyTypeEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\035UserInterestTaxonomyTypeProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/user_interest_taxonomy_type_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/user_interest_taxonomy_type_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_interest_taxonomy_type_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/user_list_access_status_pb2.py b/google/ads/google_ads/v0/proto/enums/user_list_access_status_pb2.py new file mode 100644 index 000000000..97849bd9b --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_access_status_pb2.py @@ -0,0 +1,99 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/user_list_access_status.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/user_list_access_status.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nAgoogle/ads/googleads_v0/proto/enums/user_list_access_status.proto\x12\x1dgoogle.ads.googleads.v0.enums\"k\n\x18UserListAccessStatusEnum\"O\n\x14UserListAccessStatus\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0b\n\x07\x45NABLED\x10\x02\x12\x0c\n\x08\x44ISABLED\x10\x03\x42\xca\x01\n!com.google.ads.googleads.v0.enumsB\x19UserListAccessStatusProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_USERLISTACCESSSTATUSENUM_USERLISTACCESSSTATUS = _descriptor.EnumDescriptor( + name='UserListAccessStatus', + full_name='google.ads.googleads.v0.enums.UserListAccessStatusEnum.UserListAccessStatus', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ENABLED', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DISABLED', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=128, + serialized_end=207, +) +_sym_db.RegisterEnumDescriptor(_USERLISTACCESSSTATUSENUM_USERLISTACCESSSTATUS) + + +_USERLISTACCESSSTATUSENUM = _descriptor.Descriptor( + name='UserListAccessStatusEnum', + full_name='google.ads.googleads.v0.enums.UserListAccessStatusEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _USERLISTACCESSSTATUSENUM_USERLISTACCESSSTATUS, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=100, + serialized_end=207, +) + +_USERLISTACCESSSTATUSENUM_USERLISTACCESSSTATUS.containing_type = _USERLISTACCESSSTATUSENUM +DESCRIPTOR.message_types_by_name['UserListAccessStatusEnum'] = _USERLISTACCESSSTATUSENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserListAccessStatusEnum = _reflection.GeneratedProtocolMessageType('UserListAccessStatusEnum', (_message.Message,), dict( + DESCRIPTOR = _USERLISTACCESSSTATUSENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.user_list_access_status_pb2' + , + __doc__ = """Indicates if this client still has access to the list. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.UserListAccessStatusEnum) + )) +_sym_db.RegisterMessage(UserListAccessStatusEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\031UserListAccessStatusProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/user_list_access_status_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/user_list_access_status_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_access_status_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/user_list_closing_reason_pb2.py b/google/ads/google_ads/v0/proto/enums/user_list_closing_reason_pb2.py new file mode 100644 index 000000000..a073351b2 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_closing_reason_pb2.py @@ -0,0 +1,96 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/user_list_closing_reason.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/user_list_closing_reason.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nBgoogle/ads/googleads_v0/proto/enums/user_list_closing_reason.proto\x12\x1dgoogle.ads.googleads.v0.enums\"^\n\x19UserListClosingReasonEnum\"A\n\x15UserListClosingReason\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\n\n\x06UNUSED\x10\x02\x42\xcb\x01\n!com.google.ads.googleads.v0.enumsB\x1aUserListClosingReasonProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_USERLISTCLOSINGREASONENUM_USERLISTCLOSINGREASON = _descriptor.EnumDescriptor( + name='UserListClosingReason', + full_name='google.ads.googleads.v0.enums.UserListClosingReasonEnum.UserListClosingReason', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNUSED', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=130, + serialized_end=195, +) +_sym_db.RegisterEnumDescriptor(_USERLISTCLOSINGREASONENUM_USERLISTCLOSINGREASON) + + +_USERLISTCLOSINGREASONENUM = _descriptor.Descriptor( + name='UserListClosingReasonEnum', + full_name='google.ads.googleads.v0.enums.UserListClosingReasonEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _USERLISTCLOSINGREASONENUM_USERLISTCLOSINGREASON, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=101, + serialized_end=195, +) + +_USERLISTCLOSINGREASONENUM_USERLISTCLOSINGREASON.containing_type = _USERLISTCLOSINGREASONENUM +DESCRIPTOR.message_types_by_name['UserListClosingReasonEnum'] = _USERLISTCLOSINGREASONENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserListClosingReasonEnum = _reflection.GeneratedProtocolMessageType('UserListClosingReasonEnum', (_message.Message,), dict( + DESCRIPTOR = _USERLISTCLOSINGREASONENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.user_list_closing_reason_pb2' + , + __doc__ = """Indicates the reason why the userlist was closed. This enum is only used + when a list is auto-closed by the system. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.UserListClosingReasonEnum) + )) +_sym_db.RegisterMessage(UserListClosingReasonEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\032UserListClosingReasonProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/user_list_closing_reason_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/user_list_closing_reason_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_closing_reason_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/user_list_crm_data_source_type_pb2.py b/google/ads/google_ads/v0/proto/enums/user_list_crm_data_source_type_pb2.py new file mode 100644 index 000000000..a00c9bc5d --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_crm_data_source_type_pb2.py @@ -0,0 +1,103 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/user_list_crm_data_source_type.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/user_list_crm_data_source_type.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nHgoogle/ads/googleads_v0/proto/enums/user_list_crm_data_source_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xa7\x01\n\x1dUserListCrmDataSourceTypeEnum\"\x85\x01\n\x19UserListCrmDataSourceType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0f\n\x0b\x46IRST_PARTY\x10\x02\x12\x1d\n\x19THIRD_PARTY_CREDIT_BUREAU\x10\x03\x12\x1a\n\x16THIRD_PARTY_VOTER_FILE\x10\x04\x42\xcf\x01\n!com.google.ads.googleads.v0.enumsB\x1eUserListCrmDataSourceTypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_USERLISTCRMDATASOURCETYPEENUM_USERLISTCRMDATASOURCETYPE = _descriptor.EnumDescriptor( + name='UserListCrmDataSourceType', + full_name='google.ads.googleads.v0.enums.UserListCrmDataSourceTypeEnum.UserListCrmDataSourceType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FIRST_PARTY', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='THIRD_PARTY_CREDIT_BUREAU', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='THIRD_PARTY_VOTER_FILE', index=4, number=4, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=142, + serialized_end=275, +) +_sym_db.RegisterEnumDescriptor(_USERLISTCRMDATASOURCETYPEENUM_USERLISTCRMDATASOURCETYPE) + + +_USERLISTCRMDATASOURCETYPEENUM = _descriptor.Descriptor( + name='UserListCrmDataSourceTypeEnum', + full_name='google.ads.googleads.v0.enums.UserListCrmDataSourceTypeEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _USERLISTCRMDATASOURCETYPEENUM_USERLISTCRMDATASOURCETYPE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=108, + serialized_end=275, +) + +_USERLISTCRMDATASOURCETYPEENUM_USERLISTCRMDATASOURCETYPE.containing_type = _USERLISTCRMDATASOURCETYPEENUM +DESCRIPTOR.message_types_by_name['UserListCrmDataSourceTypeEnum'] = _USERLISTCRMDATASOURCETYPEENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserListCrmDataSourceTypeEnum = _reflection.GeneratedProtocolMessageType('UserListCrmDataSourceTypeEnum', (_message.Message,), dict( + DESCRIPTOR = _USERLISTCRMDATASOURCETYPEENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.user_list_crm_data_source_type_pb2' + , + __doc__ = """Indicates source of Crm upload data. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.UserListCrmDataSourceTypeEnum) + )) +_sym_db.RegisterMessage(UserListCrmDataSourceTypeEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\036UserListCrmDataSourceTypeProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/user_list_crm_data_source_type_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/user_list_crm_data_source_type_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_crm_data_source_type_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/user_list_membership_status_pb2.py b/google/ads/google_ads/v0/proto/enums/user_list_membership_status_pb2.py new file mode 100644 index 000000000..3f2a12685 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_membership_status_pb2.py @@ -0,0 +1,101 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/user_list_membership_status.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/user_list_membership_status.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\nEgoogle/ads/googleads_v0/proto/enums/user_list_membership_status.proto\x12\x1dgoogle.ads.googleads.v0.enums\"n\n\x1cUserListMembershipStatusEnum\"N\n\x18UserListMembershipStatus\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x08\n\x04OPEN\x10\x02\x12\n\n\x06\x43LOSED\x10\x03\x42\xce\x01\n!com.google.ads.googleads.v0.enumsB\x1dUserListMembershipStatusProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_USERLISTMEMBERSHIPSTATUSENUM_USERLISTMEMBERSHIPSTATUS = _descriptor.EnumDescriptor( + name='UserListMembershipStatus', + full_name='google.ads.googleads.v0.enums.UserListMembershipStatusEnum.UserListMembershipStatus', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='OPEN', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CLOSED', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=136, + serialized_end=214, +) +_sym_db.RegisterEnumDescriptor(_USERLISTMEMBERSHIPSTATUSENUM_USERLISTMEMBERSHIPSTATUS) + + +_USERLISTMEMBERSHIPSTATUSENUM = _descriptor.Descriptor( + name='UserListMembershipStatusEnum', + full_name='google.ads.googleads.v0.enums.UserListMembershipStatusEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _USERLISTMEMBERSHIPSTATUSENUM_USERLISTMEMBERSHIPSTATUS, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=104, + serialized_end=214, +) + +_USERLISTMEMBERSHIPSTATUSENUM_USERLISTMEMBERSHIPSTATUS.containing_type = _USERLISTMEMBERSHIPSTATUSENUM +DESCRIPTOR.message_types_by_name['UserListMembershipStatusEnum'] = _USERLISTMEMBERSHIPSTATUSENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserListMembershipStatusEnum = _reflection.GeneratedProtocolMessageType('UserListMembershipStatusEnum', (_message.Message,), dict( + DESCRIPTOR = _USERLISTMEMBERSHIPSTATUSENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.user_list_membership_status_pb2' + , + __doc__ = """Membership status of this user list. Indicates whether a user list is + open or active. Only open user lists can accumulate more users and can + be used for targeting. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.UserListMembershipStatusEnum) + )) +_sym_db.RegisterMessage(UserListMembershipStatusEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\035UserListMembershipStatusProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/user_list_membership_status_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/user_list_membership_status_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_membership_status_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/user_list_size_range_pb2.py b/google/ads/google_ads/v0/proto/enums/user_list_size_range_pb2.py new file mode 100644 index 000000000..01ec2bb01 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_size_range_pb2.py @@ -0,0 +1,155 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/user_list_size_range.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/user_list_size_range.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n>google/ads/googleads_v0/proto/enums/user_list_size_range.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\x94\x05\n\x15UserListSizeRangeEnum\"\xfa\x04\n\x11UserListSizeRange\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1a\n\x16LESS_THAN_FIVE_HUNDRED\x10\x02\x12\x1a\n\x16LESS_THAN_ONE_THOUSAND\x10\x03\x12 \n\x1cONE_THOUSAND_TO_TEN_THOUSAND\x10\x04\x12\"\n\x1eTEN_THOUSAND_TO_FIFTY_THOUSAND\x10\x05\x12*\n&FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND\x10\x06\x12\x32\n.ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND\x10\x07\x12\x33\n/THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND\x10\x08\x12(\n$FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION\x10\t\x12\x1e\n\x1aONE_MILLION_TO_TWO_MILLION\x10\n\x12 \n\x1cTWO_MILLION_TO_THREE_MILLION\x10\x0b\x12!\n\x1dTHREE_MILLION_TO_FIVE_MILLION\x10\x0c\x12\x1f\n\x1b\x46IVE_MILLION_TO_TEN_MILLION\x10\r\x12!\n\x1dTEN_MILLION_TO_TWENTY_MILLION\x10\x0e\x12$\n TWENTY_MILLION_TO_THIRTY_MILLION\x10\x0f\x12#\n\x1fTHIRTY_MILLION_TO_FIFTY_MILLION\x10\x10\x12\x16\n\x12OVER_FIFTY_MILLION\x10\x11\x42\xc7\x01\n!com.google.ads.googleads.v0.enumsB\x16UserListSizeRangeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_USERLISTSIZERANGEENUM_USERLISTSIZERANGE = _descriptor.EnumDescriptor( + name='UserListSizeRange', + full_name='google.ads.googleads.v0.enums.UserListSizeRangeEnum.UserListSizeRange', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LESS_THAN_FIVE_HUNDRED', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LESS_THAN_ONE_THOUSAND', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ONE_THOUSAND_TO_TEN_THOUSAND', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TEN_THOUSAND_TO_FIFTY_THOUSAND', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ONE_MILLION_TO_TWO_MILLION', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TWO_MILLION_TO_THREE_MILLION', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='THREE_MILLION_TO_FIVE_MILLION', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FIVE_MILLION_TO_TEN_MILLION', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TEN_MILLION_TO_TWENTY_MILLION', index=14, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TWENTY_MILLION_TO_THIRTY_MILLION', index=15, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='THIRTY_MILLION_TO_FIFTY_MILLION', index=16, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='OVER_FIFTY_MILLION', index=17, number=17, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=124, + serialized_end=758, +) +_sym_db.RegisterEnumDescriptor(_USERLISTSIZERANGEENUM_USERLISTSIZERANGE) + + +_USERLISTSIZERANGEENUM = _descriptor.Descriptor( + name='UserListSizeRangeEnum', + full_name='google.ads.googleads.v0.enums.UserListSizeRangeEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _USERLISTSIZERANGEENUM_USERLISTSIZERANGE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=98, + serialized_end=758, +) + +_USERLISTSIZERANGEENUM_USERLISTSIZERANGE.containing_type = _USERLISTSIZERANGEENUM +DESCRIPTOR.message_types_by_name['UserListSizeRangeEnum'] = _USERLISTSIZERANGEENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserListSizeRangeEnum = _reflection.GeneratedProtocolMessageType('UserListSizeRangeEnum', (_message.Message,), dict( + DESCRIPTOR = _USERLISTSIZERANGEENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.user_list_size_range_pb2' + , + __doc__ = """Size range in terms of number of users of a UserList. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.UserListSizeRangeEnum) + )) +_sym_db.RegisterMessage(UserListSizeRangeEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\026UserListSizeRangeProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/user_list_size_range_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/user_list_size_range_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_size_range_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/enums/user_list_type_pb2.py b/google/ads/google_ads/v0/proto/enums/user_list_type_pb2.py new file mode 100644 index 000000000..6e1379205 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_type_pb2.py @@ -0,0 +1,115 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/enums/user_list_type.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/enums/user_list_type.proto', + package='google.ads.googleads.v0.enums', + syntax='proto3', + serialized_pb=_b('\n8google/ads/googleads_v0/proto/enums/user_list_type.proto\x12\x1dgoogle.ads.googleads.v0.enums\"\xa5\x01\n\x10UserListTypeEnum\"\x90\x01\n\x0cUserListType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x0f\n\x0bREMARKETING\x10\x02\x12\x0b\n\x07LOGICAL\x10\x03\x12\x18\n\x14\x45XTERNAL_REMARKETING\x10\x04\x12\x0e\n\nRULE_BASED\x10\x05\x12\x0b\n\x07SIMILAR\x10\x06\x12\r\n\tCRM_BASED\x10\x07\x42\xc2\x01\n!com.google.ads.googleads.v0.enumsB\x11UserListTypeProtoP\x01ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\xa2\x02\x03GAA\xaa\x02\x1dGoogle.Ads.GoogleAds.V0.Enums\xca\x02\x1dGoogle\\Ads\\GoogleAds\\V0\\Enumsb\x06proto3') +) + + + +_USERLISTTYPEENUM_USERLISTTYPE = _descriptor.EnumDescriptor( + name='UserListType', + full_name='google.ads.googleads.v0.enums.UserListTypeEnum.UserListType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='REMARKETING', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LOGICAL', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='EXTERNAL_REMARKETING', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='RULE_BASED', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SIMILAR', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CRM_BASED', index=7, number=7, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=113, + serialized_end=257, +) +_sym_db.RegisterEnumDescriptor(_USERLISTTYPEENUM_USERLISTTYPE) + + +_USERLISTTYPEENUM = _descriptor.Descriptor( + name='UserListTypeEnum', + full_name='google.ads.googleads.v0.enums.UserListTypeEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _USERLISTTYPEENUM_USERLISTTYPE, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=92, + serialized_end=257, +) + +_USERLISTTYPEENUM_USERLISTTYPE.containing_type = _USERLISTTYPEENUM +DESCRIPTOR.message_types_by_name['UserListTypeEnum'] = _USERLISTTYPEENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserListTypeEnum = _reflection.GeneratedProtocolMessageType('UserListTypeEnum', (_message.Message,), dict( + DESCRIPTOR = _USERLISTTYPEENUM, + __module__ = 'google.ads.google_ads.v0.proto.enums.user_list_type_pb2' + , + __doc__ = """The user list types. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.enums.UserListTypeEnum) + )) +_sym_db.RegisterMessage(UserListTypeEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n!com.google.ads.googleads.v0.enumsB\021UserListTypeProtoP\001ZBgoogle.golang.org/genproto/googleapis/ads/googleads/v0/enums;enums\242\002\003GAA\252\002\035Google.Ads.GoogleAds.V0.Enums\312\002\035Google\\Ads\\GoogleAds\\V0\\Enums')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/enums/user_list_type_pb2_grpc.py b/google/ads/google_ads/v0/proto/enums/user_list_type_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/enums/user_list_type_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/account_budget_proposal_error_pb2.py b/google/ads/google_ads/v0/proto/errors/account_budget_proposal_error_pb2.py index f844bdb31..17c721fe5 100644 --- a/google/ads/google_ads/v0/proto/errors/account_budget_proposal_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/account_budget_proposal_error_pb2.py @@ -165,7 +165,7 @@ AccountBudgetProposalErrorEnum = _reflection.GeneratedProtocolMessageType('AccountBudgetProposalErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ACCOUNTBUDGETPROPOSALERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.account_budget_proposal_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.account_budget_proposal_error_pb2' , __doc__ = """Container for enum describing possible account budget proposal errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/ad_customizer_error_pb2.py b/google/ads/google_ads/v0/proto/errors/ad_customizer_error_pb2.py index 4f756e777..3aff815b9 100644 --- a/google/ads/google_ads/v0/proto/errors/ad_customizer_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/ad_customizer_error_pb2.py @@ -97,7 +97,7 @@ AdCustomizerErrorEnum = _reflection.GeneratedProtocolMessageType('AdCustomizerErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ADCUSTOMIZERERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.ad_customizer_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.ad_customizer_error_pb2' , __doc__ = """Container for enum describing possible ad customizer errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/ad_error_pb2.py b/google/ads/google_ads/v0/proto/errors/ad_error_pb2.py index a7bf5be3e..1c5015843 100644 --- a/google/ads/google_ads/v0/proto/errors/ad_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/ad_error_pb2.py @@ -593,7 +593,7 @@ AdErrorEnum = _reflection.GeneratedProtocolMessageType('AdErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ADERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.ad_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.ad_error_pb2' , __doc__ = """Container for enum describing possible ad errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/ad_group_ad_error_pb2.py b/google/ads/google_ads/v0/proto/errors/ad_group_ad_error_pb2.py index 1e5705065..56d49b28c 100644 --- a/google/ads/google_ads/v0/proto/errors/ad_group_ad_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/ad_group_ad_error_pb2.py @@ -109,7 +109,7 @@ AdGroupAdErrorEnum = _reflection.GeneratedProtocolMessageType('AdGroupAdErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPADERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.ad_group_ad_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.ad_group_ad_error_pb2' , __doc__ = """Container for enum describing possible ad group ad errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/ad_group_bid_modifier_error_pb2.py b/google/ads/google_ads/v0/proto/errors/ad_group_bid_modifier_error_pb2.py index 337141238..57c92fc5d 100644 --- a/google/ads/google_ads/v0/proto/errors/ad_group_bid_modifier_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/ad_group_bid_modifier_error_pb2.py @@ -85,7 +85,7 @@ AdGroupBidModifierErrorEnum = _reflection.GeneratedProtocolMessageType('AdGroupBidModifierErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPBIDMODIFIERERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.ad_group_bid_modifier_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.ad_group_bid_modifier_error_pb2' , __doc__ = """Container for enum describing possible ad group bid modifier errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/ad_group_criterion_error_pb2.py b/google/ads/google_ads/v0/proto/errors/ad_group_criterion_error_pb2.py index cdbe9d98c..10ed88d44 100644 --- a/google/ads/google_ads/v0/proto/errors/ad_group_criterion_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/ad_group_criterion_error_pb2.py @@ -225,7 +225,7 @@ AdGroupCriterionErrorEnum = _reflection.GeneratedProtocolMessageType('AdGroupCriterionErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPCRITERIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.ad_group_criterion_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.ad_group_criterion_error_pb2' , __doc__ = """Container for enum describing possible ad group criterion errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/ad_group_error_pb2.py b/google/ads/google_ads/v0/proto/errors/ad_group_error_pb2.py index 959b063b1..3cafeeb54 100644 --- a/google/ads/google_ads/v0/proto/errors/ad_group_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/ad_group_error_pb2.py @@ -125,7 +125,7 @@ AdGroupErrorEnum = _reflection.GeneratedProtocolMessageType('AdGroupErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ADGROUPERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.ad_group_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.ad_group_error_pb2' , __doc__ = """Container for enum describing possible ad group errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/ad_group_feed_error_pb2.py b/google/ads/google_ads/v0/proto/errors/ad_group_feed_error_pb2.py new file mode 100644 index 000000000..d2298640c --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/ad_group_feed_error_pb2.py @@ -0,0 +1,119 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/ad_group_feed_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/ad_group_feed_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\n>google/ads/googleads_v0/proto/errors/ad_group_feed_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xdc\x02\n\x14\x41\x64GroupFeedErrorEnum\"\xc3\x02\n\x10\x41\x64GroupFeedError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12,\n(FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE\x10\x02\x12\"\n\x1e\x43\x41NNOT_CREATE_FOR_REMOVED_FEED\x10\x03\x12\x1f\n\x1b\x41\x44GROUP_FEED_ALREADY_EXISTS\x10\x04\x12*\n&CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED\x10\x05\x12\x1c\n\x18INVALID_PLACEHOLDER_TYPE\x10\x06\x12,\n(MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE\x10\x07\x12&\n\"NO_EXISTING_LOCATION_CUSTOMER_FEED\x10\x08\x42\xcb\x01\n\"com.google.ads.googleads.v0.errorsB\x15\x41\x64GroupFeedErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_ADGROUPFEEDERRORENUM_ADGROUPFEEDERROR = _descriptor.EnumDescriptor( + name='AdGroupFeedError', + full_name='google.ads.googleads.v0.errors.AdGroupFeedErrorEnum.AdGroupFeedError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_CREATE_FOR_REMOVED_FEED', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ADGROUP_FEED_ALREADY_EXISTS', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_PLACEHOLDER_TYPE', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NO_EXISTING_LOCATION_CUSTOMER_FEED', index=8, number=8, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=124, + serialized_end=447, +) +_sym_db.RegisterEnumDescriptor(_ADGROUPFEEDERRORENUM_ADGROUPFEEDERROR) + + +_ADGROUPFEEDERRORENUM = _descriptor.Descriptor( + name='AdGroupFeedErrorEnum', + full_name='google.ads.googleads.v0.errors.AdGroupFeedErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _ADGROUPFEEDERRORENUM_ADGROUPFEEDERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=99, + serialized_end=447, +) + +_ADGROUPFEEDERRORENUM_ADGROUPFEEDERROR.containing_type = _ADGROUPFEEDERRORENUM +DESCRIPTOR.message_types_by_name['AdGroupFeedErrorEnum'] = _ADGROUPFEEDERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +AdGroupFeedErrorEnum = _reflection.GeneratedProtocolMessageType('AdGroupFeedErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _ADGROUPFEEDERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.ad_group_feed_error_pb2' + , + __doc__ = """Container for enum describing possible ad group feed errors. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.AdGroupFeedErrorEnum) + )) +_sym_db.RegisterMessage(AdGroupFeedErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\025AdGroupFeedErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/ad_group_feed_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/ad_group_feed_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/ad_group_feed_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/ad_sharing_error_pb2.py b/google/ads/google_ads/v0/proto/errors/ad_sharing_error_pb2.py index 3a4d47e98..41a5bd165 100644 --- a/google/ads/google_ads/v0/proto/errors/ad_sharing_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/ad_sharing_error_pb2.py @@ -89,7 +89,7 @@ AdSharingErrorEnum = _reflection.GeneratedProtocolMessageType('AdSharingErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ADSHARINGERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.ad_sharing_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.ad_sharing_error_pb2' , __doc__ = """Container for enum describing possible ad sharing errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/adx_error_pb2.py b/google/ads/google_ads/v0/proto/errors/adx_error_pb2.py index d0c05bc88..bca3b9d02 100644 --- a/google/ads/google_ads/v0/proto/errors/adx_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/adx_error_pb2.py @@ -81,7 +81,7 @@ AdxErrorEnum = _reflection.GeneratedProtocolMessageType('AdxErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ADXERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.adx_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.adx_error_pb2' , __doc__ = """Container for enum describing possible adx errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/authentication_error_pb2.py b/google/ads/google_ads/v0/proto/errors/authentication_error_pb2.py index efe4c214c..51daf8698 100644 --- a/google/ads/google_ads/v0/proto/errors/authentication_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/authentication_error_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/errors/authentication_error.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\n?google/ads/googleads_v0/proto/errors/authentication_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\x8e\x05\n\x17\x41uthenticationErrorEnum\"\xf2\x04\n\x13\x41uthenticationError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x18\n\x14\x41UTHENTICATION_ERROR\x10\x02\x12\x1e\n\x1a\x43LIENT_CUSTOMER_ID_INVALID\x10\x05\x12\x16\n\x12\x43USTOMER_NOT_FOUND\x10\x08\x12\x1a\n\x16GOOGLE_ACCOUNT_DELETED\x10\t\x12!\n\x1dGOOGLE_ACCOUNT_COOKIE_INVALID\x10\n\x12)\n%FAILED_TO_AUTHENTICATE_GOOGLE_ACCOUNT\x10\x0b\x12-\n)GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH\x10\x0c\x12\x19\n\x15LOGIN_COOKIE_REQUIRED\x10\r\x12\x10\n\x0cNOT_ADS_USER\x10\x0e\x12\x17\n\x13OAUTH_TOKEN_INVALID\x10\x0f\x12\x17\n\x13OAUTH_TOKEN_EXPIRED\x10\x10\x12\x18\n\x14OAUTH_TOKEN_DISABLED\x10\x11\x12\x17\n\x13OAUTH_TOKEN_REVOKED\x10\x12\x12\x1e\n\x1aOAUTH_TOKEN_HEADER_INVALID\x10\x13\x12\x18\n\x14LOGIN_COOKIE_INVALID\x10\x14\x12#\n\x1f\x46\x41ILED_TO_RETRIEVE_LOGIN_COOKIE\x10\x15\x12\x13\n\x0fUSER_ID_INVALID\x10\x16\x12&\n\"TWO_STEP_VERIFICATION_NOT_ENROLLED\x10\x17\x12$\n ADVANCED_PROTECTION_NOT_ENROLLED\x10\x18\x42\xce\x01\n\"com.google.ads.googleads.v0.errorsB\x18\x41uthenticationErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\n?google/ads/googleads_v0/proto/errors/authentication_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xe8\x04\n\x17\x41uthenticationErrorEnum\"\xcc\x04\n\x13\x41uthenticationError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x18\n\x14\x41UTHENTICATION_ERROR\x10\x02\x12\x1e\n\x1a\x43LIENT_CUSTOMER_ID_INVALID\x10\x05\x12\x16\n\x12\x43USTOMER_NOT_FOUND\x10\x08\x12\x1a\n\x16GOOGLE_ACCOUNT_DELETED\x10\t\x12!\n\x1dGOOGLE_ACCOUNT_COOKIE_INVALID\x10\n\x12(\n$GOOGLE_ACCOUNT_AUTHENTICATION_FAILED\x10\x19\x12-\n)GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH\x10\x0c\x12\x19\n\x15LOGIN_COOKIE_REQUIRED\x10\r\x12\x10\n\x0cNOT_ADS_USER\x10\x0e\x12\x17\n\x13OAUTH_TOKEN_INVALID\x10\x0f\x12\x17\n\x13OAUTH_TOKEN_EXPIRED\x10\x10\x12\x18\n\x14OAUTH_TOKEN_DISABLED\x10\x11\x12\x17\n\x13OAUTH_TOKEN_REVOKED\x10\x12\x12\x1e\n\x1aOAUTH_TOKEN_HEADER_INVALID\x10\x13\x12\x18\n\x14LOGIN_COOKIE_INVALID\x10\x14\x12\x13\n\x0fUSER_ID_INVALID\x10\x16\x12&\n\"TWO_STEP_VERIFICATION_NOT_ENROLLED\x10\x17\x12$\n ADVANCED_PROTECTION_NOT_ENROLLED\x10\x18\x42\xce\x01\n\"com.google.ads.googleads.v0.errorsB\x18\x41uthenticationErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') ) @@ -59,7 +59,7 @@ options=None, type=None), _descriptor.EnumValueDescriptor( - name='FAILED_TO_AUTHENTICATE_GOOGLE_ACCOUNT', index=7, number=11, + name='GOOGLE_ACCOUNT_AUTHENTICATION_FAILED', index=7, number=25, options=None, type=None), _descriptor.EnumValueDescriptor( @@ -99,26 +99,22 @@ options=None, type=None), _descriptor.EnumValueDescriptor( - name='FAILED_TO_RETRIEVE_LOGIN_COOKIE', index=17, number=21, + name='USER_ID_INVALID', index=17, number=22, options=None, type=None), _descriptor.EnumValueDescriptor( - name='USER_ID_INVALID', index=18, number=22, + name='TWO_STEP_VERIFICATION_NOT_ENROLLED', index=18, number=23, options=None, type=None), _descriptor.EnumValueDescriptor( - name='TWO_STEP_VERIFICATION_NOT_ENROLLED', index=19, number=23, - options=None, - type=None), - _descriptor.EnumValueDescriptor( - name='ADVANCED_PROTECTION_NOT_ENROLLED', index=20, number=24, + name='ADVANCED_PROTECTION_NOT_ENROLLED', index=19, number=24, options=None, type=None), ], containing_type=None, options=None, serialized_start=128, - serialized_end=754, + serialized_end=716, ) _sym_db.RegisterEnumDescriptor(_AUTHENTICATIONERRORENUM_AUTHENTICATIONERROR) @@ -144,7 +140,7 @@ oneofs=[ ], serialized_start=100, - serialized_end=754, + serialized_end=716, ) _AUTHENTICATIONERRORENUM_AUTHENTICATIONERROR.containing_type = _AUTHENTICATIONERRORENUM @@ -153,7 +149,7 @@ AuthenticationErrorEnum = _reflection.GeneratedProtocolMessageType('AuthenticationErrorEnum', (_message.Message,), dict( DESCRIPTOR = _AUTHENTICATIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.authentication_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.authentication_error_pb2' , __doc__ = """Container for enum describing possible authentication errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/authorization_error_pb2.py b/google/ads/google_ads/v0/proto/errors/authorization_error_pb2.py index 16a51c3dc..3a3ad0b45 100644 --- a/google/ads/google_ads/v0/proto/errors/authorization_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/authorization_error_pb2.py @@ -105,7 +105,7 @@ AuthorizationErrorEnum = _reflection.GeneratedProtocolMessageType('AuthorizationErrorEnum', (_message.Message,), dict( DESCRIPTOR = _AUTHORIZATIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.authorization_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.authorization_error_pb2' , __doc__ = """Container for enum describing possible authorization errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/bidding_error_pb2.py b/google/ads/google_ads/v0/proto/errors/bidding_error_pb2.py index 1a70de4b3..b795fced4 100644 --- a/google/ads/google_ads/v0/proto/errors/bidding_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/bidding_error_pb2.py @@ -157,7 +157,7 @@ BiddingErrorEnum = _reflection.GeneratedProtocolMessageType('BiddingErrorEnum', (_message.Message,), dict( DESCRIPTOR = _BIDDINGERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.bidding_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.bidding_error_pb2' , __doc__ = """Container for enum describing possible bidding errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/bidding_strategy_error_pb2.py b/google/ads/google_ads/v0/proto/errors/bidding_strategy_error_pb2.py index 20ae57c10..19a30b376 100644 --- a/google/ads/google_ads/v0/proto/errors/bidding_strategy_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/bidding_strategy_error_pb2.py @@ -93,7 +93,7 @@ BiddingStrategyErrorEnum = _reflection.GeneratedProtocolMessageType('BiddingStrategyErrorEnum', (_message.Message,), dict( DESCRIPTOR = _BIDDINGSTRATEGYERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.bidding_strategy_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.bidding_strategy_error_pb2' , __doc__ = """Container for enum describing possible bidding strategy errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/billing_setup_error_pb2.py b/google/ads/google_ads/v0/proto/errors/billing_setup_error_pb2.py index ab2776082..1c30c528c 100644 --- a/google/ads/google_ads/v0/proto/errors/billing_setup_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/billing_setup_error_pb2.py @@ -137,7 +137,7 @@ BillingSetupErrorEnum = _reflection.GeneratedProtocolMessageType('BillingSetupErrorEnum', (_message.Message,), dict( DESCRIPTOR = _BILLINGSETUPERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.billing_setup_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.billing_setup_error_pb2' , __doc__ = """Container for enum describing possible billing setup errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/campaign_budget_error_pb2.py b/google/ads/google_ads/v0/proto/errors/campaign_budget_error_pb2.py index 16de5de2e..f92db28e0 100644 --- a/google/ads/google_ads/v0/proto/errors/campaign_budget_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/campaign_budget_error_pb2.py @@ -137,7 +137,7 @@ CampaignBudgetErrorEnum = _reflection.GeneratedProtocolMessageType('CampaignBudgetErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNBUDGETERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.campaign_budget_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.campaign_budget_error_pb2' , __doc__ = """Container for enum describing possible campaign budget errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/campaign_criterion_error_pb2.py b/google/ads/google_ads/v0/proto/errors/campaign_criterion_error_pb2.py index 9823523d9..1d3cffd35 100644 --- a/google/ads/google_ads/v0/proto/errors/campaign_criterion_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/campaign_criterion_error_pb2.py @@ -121,7 +121,7 @@ CampaignCriterionErrorEnum = _reflection.GeneratedProtocolMessageType('CampaignCriterionErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNCRITERIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.campaign_criterion_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.campaign_criterion_error_pb2' , __doc__ = """Container for enum describing possible campaign criterion errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/campaign_error_pb2.py b/google/ads/google_ads/v0/proto/errors/campaign_error_pb2.py index 4974dfaa6..cc20f5d84 100644 --- a/google/ads/google_ads/v0/proto/errors/campaign_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/campaign_error_pb2.py @@ -221,7 +221,7 @@ CampaignErrorEnum = _reflection.GeneratedProtocolMessageType('CampaignErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.campaign_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.campaign_error_pb2' , __doc__ = """Container for enum describing possible campaign errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/campaign_feed_error_pb2.py b/google/ads/google_ads/v0/proto/errors/campaign_feed_error_pb2.py new file mode 100644 index 000000000..31379cae7 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/campaign_feed_error_pb2.py @@ -0,0 +1,115 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/campaign_feed_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/campaign_feed_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\n>google/ads/googleads_v0/proto/errors/campaign_feed_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xc4\x02\n\x15\x43\x61mpaignFeedErrorEnum\"\xaa\x02\n\x11\x43\x61mpaignFeedError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12,\n(FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE\x10\x02\x12\"\n\x1e\x43\x41NNOT_CREATE_FOR_REMOVED_FEED\x10\x04\x12\x30\n,CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED\x10\x05\x12\'\n#CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED\x10\x06\x12\x1c\n\x18INVALID_PLACEHOLDER_TYPE\x10\x07\x12,\n(MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE\x10\x08\x42\xcc\x01\n\"com.google.ads.googleads.v0.errorsB\x16\x43\x61mpaignFeedErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_CAMPAIGNFEEDERRORENUM_CAMPAIGNFEEDERROR = _descriptor.EnumDescriptor( + name='CampaignFeedError', + full_name='google.ads.googleads.v0.errors.CampaignFeedErrorEnum.CampaignFeedError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_CREATE_FOR_REMOVED_FEED', index=3, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED', index=4, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED', index=5, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_PLACEHOLDER_TYPE', index=6, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE', index=7, number=8, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=125, + serialized_end=423, +) +_sym_db.RegisterEnumDescriptor(_CAMPAIGNFEEDERRORENUM_CAMPAIGNFEEDERROR) + + +_CAMPAIGNFEEDERRORENUM = _descriptor.Descriptor( + name='CampaignFeedErrorEnum', + full_name='google.ads.googleads.v0.errors.CampaignFeedErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _CAMPAIGNFEEDERRORENUM_CAMPAIGNFEEDERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=99, + serialized_end=423, +) + +_CAMPAIGNFEEDERRORENUM_CAMPAIGNFEEDERROR.containing_type = _CAMPAIGNFEEDERRORENUM +DESCRIPTOR.message_types_by_name['CampaignFeedErrorEnum'] = _CAMPAIGNFEEDERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CampaignFeedErrorEnum = _reflection.GeneratedProtocolMessageType('CampaignFeedErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _CAMPAIGNFEEDERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.campaign_feed_error_pb2' + , + __doc__ = """Container for enum describing possible campaign feed errors. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.CampaignFeedErrorEnum) + )) +_sym_db.RegisterMessage(CampaignFeedErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\026CampaignFeedErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/campaign_feed_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/campaign_feed_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/campaign_feed_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/campaign_group_error_pb2.py b/google/ads/google_ads/v0/proto/errors/campaign_group_error_pb2.py index 59654204f..8283e07fb 100644 --- a/google/ads/google_ads/v0/proto/errors/campaign_group_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/campaign_group_error_pb2.py @@ -89,7 +89,7 @@ CampaignGroupErrorEnum = _reflection.GeneratedProtocolMessageType('CampaignGroupErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNGROUPERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.campaign_group_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.campaign_group_error_pb2' , __doc__ = """Container for enum describing possible campaign group errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/campaign_shared_set_error_pb2.py b/google/ads/google_ads/v0/proto/errors/campaign_shared_set_error_pb2.py index 4e8e1c609..2632fbd86 100644 --- a/google/ads/google_ads/v0/proto/errors/campaign_shared_set_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/campaign_shared_set_error_pb2.py @@ -81,7 +81,7 @@ CampaignSharedSetErrorEnum = _reflection.GeneratedProtocolMessageType('CampaignSharedSetErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNSHAREDSETERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.campaign_shared_set_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.campaign_shared_set_error_pb2' , __doc__ = """Container for enum describing possible campaign shared set errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/change_status_error_pb2.py b/google/ads/google_ads/v0/proto/errors/change_status_error_pb2.py index 866f48436..e5cf0d53f 100644 --- a/google/ads/google_ads/v0/proto/errors/change_status_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/change_status_error_pb2.py @@ -81,7 +81,7 @@ ChangeStatusErrorEnum = _reflection.GeneratedProtocolMessageType('ChangeStatusErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CHANGESTATUSERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.change_status_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.change_status_error_pb2' , __doc__ = """Container for enum describing possible change status errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/collection_size_error_pb2.py b/google/ads/google_ads/v0/proto/errors/collection_size_error_pb2.py index 16374d041..0094b7164 100644 --- a/google/ads/google_ads/v0/proto/errors/collection_size_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/collection_size_error_pb2.py @@ -85,7 +85,7 @@ CollectionSizeErrorEnum = _reflection.GeneratedProtocolMessageType('CollectionSizeErrorEnum', (_message.Message,), dict( DESCRIPTOR = _COLLECTIONSIZEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.collection_size_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.collection_size_error_pb2' , __doc__ = """Container for enum describing possible collection size errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/context_error_pb2.py b/google/ads/google_ads/v0/proto/errors/context_error_pb2.py index 873ff1b07..627c935f7 100644 --- a/google/ads/google_ads/v0/proto/errors/context_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/context_error_pb2.py @@ -85,7 +85,7 @@ ContextErrorEnum = _reflection.GeneratedProtocolMessageType('ContextErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CONTEXTERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.context_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.context_error_pb2' , __doc__ = """Container for enum describing possible context errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/conversion_action_error_pb2.py b/google/ads/google_ads/v0/proto/errors/conversion_action_error_pb2.py index 507f35a8d..cad9468e1 100644 --- a/google/ads/google_ads/v0/proto/errors/conversion_action_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/conversion_action_error_pb2.py @@ -109,7 +109,7 @@ ConversionActionErrorEnum = _reflection.GeneratedProtocolMessageType('ConversionActionErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CONVERSIONACTIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.conversion_action_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.conversion_action_error_pb2' , __doc__ = """Container for enum describing possible conversion action errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/criterion_error_pb2.py b/google/ads/google_ads/v0/proto/errors/criterion_error_pb2.py index d0aa6cb08..5896a028b 100644 --- a/google/ads/google_ads/v0/proto/errors/criterion_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/criterion_error_pb2.py @@ -409,7 +409,7 @@ CriterionErrorEnum = _reflection.GeneratedProtocolMessageType('CriterionErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CRITERIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.criterion_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.criterion_error_pb2' , __doc__ = """Container for enum describing possible criterion errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/customer_client_link_error_pb2.py b/google/ads/google_ads/v0/proto/errors/customer_client_link_error_pb2.py index 4b2f951df..8739b8f58 100644 --- a/google/ads/google_ads/v0/proto/errors/customer_client_link_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/customer_client_link_error_pb2.py @@ -105,7 +105,7 @@ CustomerClientLinkErrorEnum = _reflection.GeneratedProtocolMessageType('CustomerClientLinkErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CUSTOMERCLIENTLINKERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.customer_client_link_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.customer_client_link_error_pb2' , __doc__ = """Container for enum describing possible CustomeClientLink errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/customer_error_pb2.py b/google/ads/google_ads/v0/proto/errors/customer_error_pb2.py index 2bafaa970..869a6de45 100644 --- a/google/ads/google_ads/v0/proto/errors/customer_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/customer_error_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/errors/customer_error.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\n9google/ads/googleads_v0/proto/errors/customer_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"`\n\x11\x43ustomerErrorEnum\"K\n\rCustomerError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1c\n\x18STATUS_CHANGE_DISALLOWED\x10\x02\x42\xc8\x01\n\"com.google.ads.googleads.v0.errorsB\x12\x43ustomerErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\n9google/ads/googleads_v0/proto/errors/customer_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"x\n\x11\x43ustomerErrorEnum\"c\n\rCustomerError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1c\n\x18STATUS_CHANGE_DISALLOWED\x10\x02\x12\x16\n\x12\x41\x43\x43OUNT_NOT_SET_UP\x10\x03\x42\xc8\x01\n\"com.google.ads.googleads.v0.errorsB\x12\x43ustomerErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') ) @@ -42,11 +42,15 @@ name='STATUS_CHANGE_DISALLOWED', index=2, number=2, options=None, type=None), + _descriptor.EnumValueDescriptor( + name='ACCOUNT_NOT_SET_UP', index=3, number=3, + options=None, + type=None), ], containing_type=None, options=None, serialized_start=114, - serialized_end=189, + serialized_end=213, ) _sym_db.RegisterEnumDescriptor(_CUSTOMERERRORENUM_CUSTOMERERROR) @@ -72,7 +76,7 @@ oneofs=[ ], serialized_start=93, - serialized_end=189, + serialized_end=213, ) _CUSTOMERERRORENUM_CUSTOMERERROR.containing_type = _CUSTOMERERRORENUM @@ -81,7 +85,7 @@ CustomerErrorEnum = _reflection.GeneratedProtocolMessageType('CustomerErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CUSTOMERERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.customer_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.customer_error_pb2' , __doc__ = """Container for enum describing possible customer errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/customer_feed_error_pb2.py b/google/ads/google_ads/v0/proto/errors/customer_feed_error_pb2.py new file mode 100644 index 000000000..d240738fb --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/customer_feed_error_pb2.py @@ -0,0 +1,119 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/customer_feed_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/customer_feed_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\n>google/ads/googleads_v0/proto/errors/customer_feed_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xf7\x02\n\x15\x43ustomerFeedErrorEnum\"\xdd\x02\n\x11\x43ustomerFeedError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12,\n(FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE\x10\x02\x12\"\n\x1e\x43\x41NNOT_CREATE_FOR_REMOVED_FEED\x10\x03\x12\x30\n,CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED\x10\x04\x12\'\n#CANNOT_MODIFY_REMOVED_CUSTOMER_FEED\x10\x05\x12\x1c\n\x18INVALID_PLACEHOLDER_TYPE\x10\x06\x12,\n(MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE\x10\x07\x12\x31\n-PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED\x10\x08\x42\xcc\x01\n\"com.google.ads.googleads.v0.errorsB\x16\x43ustomerFeedErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_CUSTOMERFEEDERRORENUM_CUSTOMERFEEDERROR = _descriptor.EnumDescriptor( + name='CustomerFeedError', + full_name='google.ads.googleads.v0.errors.CustomerFeedErrorEnum.CustomerFeedError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_CREATE_FOR_REMOVED_FEED', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_MODIFY_REMOVED_CUSTOMER_FEED', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_PLACEHOLDER_TYPE', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED', index=8, number=8, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=125, + serialized_end=474, +) +_sym_db.RegisterEnumDescriptor(_CUSTOMERFEEDERRORENUM_CUSTOMERFEEDERROR) + + +_CUSTOMERFEEDERRORENUM = _descriptor.Descriptor( + name='CustomerFeedErrorEnum', + full_name='google.ads.googleads.v0.errors.CustomerFeedErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _CUSTOMERFEEDERRORENUM_CUSTOMERFEEDERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=99, + serialized_end=474, +) + +_CUSTOMERFEEDERRORENUM_CUSTOMERFEEDERROR.containing_type = _CUSTOMERFEEDERRORENUM +DESCRIPTOR.message_types_by_name['CustomerFeedErrorEnum'] = _CUSTOMERFEEDERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CustomerFeedErrorEnum = _reflection.GeneratedProtocolMessageType('CustomerFeedErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _CUSTOMERFEEDERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.customer_feed_error_pb2' + , + __doc__ = """Container for enum describing possible customer feed errors. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.CustomerFeedErrorEnum) + )) +_sym_db.RegisterMessage(CustomerFeedErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\026CustomerFeedErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/customer_feed_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/customer_feed_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/customer_feed_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/customer_manager_link_error_pb2.py b/google/ads/google_ads/v0/proto/errors/customer_manager_link_error_pb2.py index d2e2b0858..584c2dcb8 100644 --- a/google/ads/google_ads/v0/proto/errors/customer_manager_link_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/customer_manager_link_error_pb2.py @@ -109,7 +109,7 @@ CustomerManagerLinkErrorEnum = _reflection.GeneratedProtocolMessageType('CustomerManagerLinkErrorEnum', (_message.Message,), dict( DESCRIPTOR = _CUSTOMERMANAGERLINKERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.customer_manager_link_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.customer_manager_link_error_pb2' , __doc__ = """Container for enum describing possible CustomerManagerLink errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/database_error_pb2.py b/google/ads/google_ads/v0/proto/errors/database_error_pb2.py index 85fca566c..dafa1f31e 100644 --- a/google/ads/google_ads/v0/proto/errors/database_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/database_error_pb2.py @@ -81,7 +81,7 @@ DatabaseErrorEnum = _reflection.GeneratedProtocolMessageType('DatabaseErrorEnum', (_message.Message,), dict( DESCRIPTOR = _DATABASEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.database_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.database_error_pb2' , __doc__ = """Container for enum describing possible database errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/date_error_pb2.py b/google/ads/google_ads/v0/proto/errors/date_error_pb2.py index 8f17a0e83..eff9fc885 100644 --- a/google/ads/google_ads/v0/proto/errors/date_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/date_error_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/errors/date_error.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\n5google/ads/googleads_v0/proto/errors/date_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xe0\x02\n\rDateErrorEnum\"\xce\x02\n\tDateError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12 \n\x1cINVALID_FIELD_VALUES_IN_DATE\x10\x02\x12%\n!INVALID_FIELD_VALUES_IN_DATE_TIME\x10\x03\x12\x17\n\x13INVALID_STRING_DATE\x10\x04\x12\x1c\n\x18INVALID_STRING_DATE_TIME\x10\x06\x12\x1d\n\x19\x45\x41RLIER_THAN_MINIMUM_DATE\x10\x07\x12\x1b\n\x17LATER_THAN_MAXIMUM_DATE\x10\x08\x12\x33\n/DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE\x10\t\x12\x32\n.DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL\x10\nB\xc4\x01\n\"com.google.ads.googleads.v0.errorsB\x0e\x44\x61teErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\n5google/ads/googleads_v0/proto/errors/date_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\x8d\x03\n\rDateErrorEnum\"\xfb\x02\n\tDateError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12 \n\x1cINVALID_FIELD_VALUES_IN_DATE\x10\x02\x12%\n!INVALID_FIELD_VALUES_IN_DATE_TIME\x10\x03\x12\x17\n\x13INVALID_STRING_DATE\x10\x04\x12#\n\x1fINVALID_STRING_DATE_TIME_MICROS\x10\x06\x12$\n INVALID_STRING_DATE_TIME_SECONDS\x10\x0b\x12\x1d\n\x19\x45\x41RLIER_THAN_MINIMUM_DATE\x10\x07\x12\x1b\n\x17LATER_THAN_MAXIMUM_DATE\x10\x08\x12\x33\n/DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE\x10\t\x12\x32\n.DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL\x10\nB\xc4\x01\n\"com.google.ads.googleads.v0.errorsB\x0e\x44\x61teErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') ) @@ -51,30 +51,34 @@ options=None, type=None), _descriptor.EnumValueDescriptor( - name='INVALID_STRING_DATE_TIME', index=5, number=6, + name='INVALID_STRING_DATE_TIME_MICROS', index=5, number=6, options=None, type=None), _descriptor.EnumValueDescriptor( - name='EARLIER_THAN_MINIMUM_DATE', index=6, number=7, + name='INVALID_STRING_DATE_TIME_SECONDS', index=6, number=11, options=None, type=None), _descriptor.EnumValueDescriptor( - name='LATER_THAN_MAXIMUM_DATE', index=7, number=8, + name='EARLIER_THAN_MINIMUM_DATE', index=7, number=7, options=None, type=None), _descriptor.EnumValueDescriptor( - name='DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE', index=8, number=9, + name='LATER_THAN_MAXIMUM_DATE', index=8, number=8, options=None, type=None), _descriptor.EnumValueDescriptor( - name='DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL', index=9, number=10, + name='DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL', index=10, number=10, options=None, type=None), ], containing_type=None, options=None, serialized_start=108, - serialized_end=442, + serialized_end=487, ) _sym_db.RegisterEnumDescriptor(_DATEERRORENUM_DATEERROR) @@ -100,7 +104,7 @@ oneofs=[ ], serialized_start=90, - serialized_end=442, + serialized_end=487, ) _DATEERRORENUM_DATEERROR.containing_type = _DATEERRORENUM @@ -109,7 +113,7 @@ DateErrorEnum = _reflection.GeneratedProtocolMessageType('DateErrorEnum', (_message.Message,), dict( DESCRIPTOR = _DATEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.date_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.date_error_pb2' , __doc__ = """Container for enum describing possible date errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/date_range_error_pb2.py b/google/ads/google_ads/v0/proto/errors/date_range_error_pb2.py index 4fd26b63b..09d9c3291 100644 --- a/google/ads/google_ads/v0/proto/errors/date_range_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/date_range_error_pb2.py @@ -97,7 +97,7 @@ DateRangeErrorEnum = _reflection.GeneratedProtocolMessageType('DateRangeErrorEnum', (_message.Message,), dict( DESCRIPTOR = _DATERANGEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.date_range_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.date_range_error_pb2' , __doc__ = """Container for enum describing possible date range errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/distinct_error_pb2.py b/google/ads/google_ads/v0/proto/errors/distinct_error_pb2.py index 65fb5577c..55e092f32 100644 --- a/google/ads/google_ads/v0/proto/errors/distinct_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/distinct_error_pb2.py @@ -85,7 +85,7 @@ DistinctErrorEnum = _reflection.GeneratedProtocolMessageType('DistinctErrorEnum', (_message.Message,), dict( DESCRIPTOR = _DISTINCTERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.distinct_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.distinct_error_pb2' , __doc__ = """Container for enum describing possible distinct errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/enum_error_pb2.py b/google/ads/google_ads/v0/proto/errors/enum_error_pb2.py index a1f85bd71..7433de691 100644 --- a/google/ads/google_ads/v0/proto/errors/enum_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/enum_error_pb2.py @@ -81,7 +81,7 @@ EnumErrorEnum = _reflection.GeneratedProtocolMessageType('EnumErrorEnum', (_message.Message,), dict( DESCRIPTOR = _ENUMERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.enum_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.enum_error_pb2' , __doc__ = """Container for enum describing possible enum errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/errors_pb2.py b/google/ads/google_ads/v0/proto/errors/errors_pb2.py index 9355cc262..3702f926b 100644 --- a/google/ads/google_ads/v0/proto/errors/errors_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/errors_pb2.py @@ -22,6 +22,7 @@ from google.ads.google_ads.v0.proto.errors import ad_group_bid_modifier_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__bid__modifier__error__pb2 from google.ads.google_ads.v0.proto.errors import ad_group_criterion_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__criterion__error__pb2 from google.ads.google_ads.v0.proto.errors import ad_group_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__error__pb2 +from google.ads.google_ads.v0.proto.errors import ad_group_feed_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__feed__error__pb2 from google.ads.google_ads.v0.proto.errors import ad_sharing_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__sharing__error__pb2 from google.ads.google_ads.v0.proto.errors import adx_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_adx__error__pb2 from google.ads.google_ads.v0.proto.errors import authentication_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_authentication__error__pb2 @@ -32,6 +33,7 @@ from google.ads.google_ads.v0.proto.errors import campaign_budget_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__budget__error__pb2 from google.ads.google_ads.v0.proto.errors import campaign_criterion_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__criterion__error__pb2 from google.ads.google_ads.v0.proto.errors import campaign_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__error__pb2 +from google.ads.google_ads.v0.proto.errors import campaign_feed_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__feed__error__pb2 from google.ads.google_ads.v0.proto.errors import campaign_group_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__group__error__pb2 from google.ads.google_ads.v0.proto.errors import campaign_shared_set_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__shared__set__error__pb2 from google.ads.google_ads.v0.proto.errors import change_status_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_change__status__error__pb2 @@ -41,6 +43,7 @@ from google.ads.google_ads.v0.proto.errors import criterion_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_criterion__error__pb2 from google.ads.google_ads.v0.proto.errors import customer_client_link_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__client__link__error__pb2 from google.ads.google_ads.v0.proto.errors import customer_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__error__pb2 +from google.ads.google_ads.v0.proto.errors import customer_feed_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__feed__error__pb2 from google.ads.google_ads.v0.proto.errors import customer_manager_link_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__manager__link__error__pb2 from google.ads.google_ads.v0.proto.errors import database_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_database__error__pb2 from google.ads.google_ads.v0.proto.errors import date_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_date__error__pb2 @@ -48,6 +51,9 @@ from google.ads.google_ads.v0.proto.errors import distinct_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_distinct__error__pb2 from google.ads.google_ads.v0.proto.errors import enum_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_enum__error__pb2 from google.ads.google_ads.v0.proto.errors import feed_attribute_reference_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__attribute__reference__error__pb2 +from google.ads.google_ads.v0.proto.errors import feed_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__error__pb2 +from google.ads.google_ads.v0.proto.errors import feed_item_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__item__error__pb2 +from google.ads.google_ads.v0.proto.errors import feed_mapping_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__mapping__error__pb2 from google.ads.google_ads.v0.proto.errors import field_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_field__error__pb2 from google.ads.google_ads.v0.proto.errors import field_mask_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_field__mask__error__pb2 from google.ads.google_ads.v0.proto.errors import function_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_function__error__pb2 @@ -57,6 +63,12 @@ from google.ads.google_ads.v0.proto.errors import id_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_id__error__pb2 from google.ads.google_ads.v0.proto.errors import image_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_image__error__pb2 from google.ads.google_ads.v0.proto.errors import internal_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_internal__error__pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_ad_group_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__ad__group__error__pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_campaign_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__campaign__error__pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__error__pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_idea_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__idea__error__pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_keyword_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__keyword__error__pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_negative_keyword_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__negative__keyword__error__pb2 from google.ads.google_ads.v0.proto.errors import list_operation_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_list__operation__error__pb2 from google.ads.google_ads.v0.proto.errors import media_bundle_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_media__bundle__error__pb2 from google.ads.google_ads.v0.proto.errors import media_file_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_media__file__error__pb2 @@ -82,6 +94,7 @@ from google.ads.google_ads.v0.proto.errors import string_format_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_string__format__error__pb2 from google.ads.google_ads.v0.proto.errors import string_length_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_string__length__error__pb2 from google.ads.google_ads.v0.proto.errors import url_field_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_url__field__error__pb2 +from google.ads.google_ads.v0.proto.errors import user_list_error_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_user__list__error__pb2 from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 @@ -89,9 +102,9 @@ name='google/ads/googleads_v0/proto/errors/errors.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\n1google/ads/googleads_v0/proto/errors/errors.proto\x12\x1egoogle.ads.googleads.v0.errors\x1a\x31google/ads/googleads_v0/proto/common/policy.proto\x1a\x30google/ads/googleads_v0/proto/common/value.proto\x1aHgoogle/ads/googleads_v0/proto/errors/account_budget_proposal_error.proto\x1a>google/ads/googleads_v0/proto/errors/ad_customizer_error.proto\x1a\x33google/ads/googleads_v0/proto/errors/ad_error.proto\x1agoogle/ads/googleads_v0/proto/errors/authorization_error.proto\x1a\x38google/ads/googleads_v0/proto/errors/bidding_error.proto\x1a\x41google/ads/googleads_v0/proto/errors/bidding_strategy_error.proto\x1a>google/ads/googleads_v0/proto/errors/billing_setup_error.proto\x1a@google/ads/googleads_v0/proto/errors/campaign_budget_error.proto\x1a\x43google/ads/googleads_v0/proto/errors/campaign_criterion_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/campaign_error.proto\x1a?google/ads/googleads_v0/proto/errors/campaign_group_error.proto\x1a\x44google/ads/googleads_v0/proto/errors/campaign_shared_set_error.proto\x1a>google/ads/googleads_v0/proto/errors/change_status_error.proto\x1a@google/ads/googleads_v0/proto/errors/collection_size_error.proto\x1a\x38google/ads/googleads_v0/proto/errors/context_error.proto\x1a\x42google/ads/googleads_v0/proto/errors/conversion_action_error.proto\x1a:google/ads/googleads_v0/proto/errors/criterion_error.proto\x1a\x45google/ads/googleads_v0/proto/errors/customer_client_link_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/customer_error.proto\x1a\x46google/ads/googleads_v0/proto/errors/customer_manager_link_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/database_error.proto\x1a\x35google/ads/googleads_v0/proto/errors/date_error.proto\x1a;google/ads/googleads_v0/proto/errors/date_range_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/distinct_error.proto\x1a\x35google/ads/googleads_v0/proto/errors/enum_error.proto\x1aIgoogle/ads/googleads_v0/proto/errors/feed_attribute_reference_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/field_error.proto\x1a;google/ads/googleads_v0/proto/errors/field_mask_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/function_error.proto\x1a\x41google/ads/googleads_v0/proto/errors/function_parsing_error.proto\x1aOgoogle/ads/googleads_v0/proto/errors/geo_target_constant_suggestion_error.proto\x1a\x37google/ads/googleads_v0/proto/errors/header_error.proto\x1a\x33google/ads/googleads_v0/proto/errors/id_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/image_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/internal_error.proto\x1a?google/ads/googleads_v0/proto/errors/list_operation_error.proto\x1a=google/ads/googleads_v0/proto/errors/media_bundle_error.proto\x1a;google/ads/googleads_v0/proto/errors/media_file_error.proto\x1a;google/ads/googleads_v0/proto/errors/multiplier_error.proto\x1a\x37google/ads/googleads_v0/proto/errors/mutate_error.proto\x1a\x46google/ads/googleads_v0/proto/errors/new_resource_creation_error.proto\x1a:google/ads/googleads_v0/proto/errors/not_empty_error.proto\x1a\x35google/ads/googleads_v0/proto/errors/null_error.proto\x1aHgoogle/ads/googleads_v0/proto/errors/operation_access_denied_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/operator_error.proto\x1a?google/ads/googleads_v0/proto/errors/policy_finding_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/query_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/quota_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/range_error.proto\x1a?google/ads/googleads_v0/proto/errors/recommendation_error.proto\x1agoogle/ads/googleads_v0/proto/errors/string_format_error.proto\x1a>google/ads/googleads_v0/proto/errors/string_length_error.proto\x1a:google/ads/googleads_v0/proto/errors/url_field_error.proto\x1a\x1egoogle/protobuf/wrappers.proto\"R\n\x10GoogleAdsFailure\x12>\n\x06\x65rrors\x18\x01 \x03(\x0b\x32..google.ads.googleads.v0.errors.GoogleAdsError\"\x98\x02\n\x0eGoogleAdsError\x12=\n\nerror_code\x18\x01 \x01(\x0b\x32).google.ads.googleads.v0.errors.ErrorCode\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x36\n\x07trigger\x18\x03 \x01(\x0b\x32%.google.ads.googleads.v0.common.Value\x12?\n\x08location\x18\x04 \x01(\x0b\x32-.google.ads.googleads.v0.errors.ErrorLocation\x12=\n\x07\x64\x65tails\x18\x05 \x01(\x0b\x32,.google.ads.googleads.v0.errors.ErrorDetails\"\x9e\x35\n\tErrorCode\x12V\n\rrequest_error\x18\x01 \x01(\x0e\x32=.google.ads.googleads.v0.errors.RequestErrorEnum.RequestErrorH\x00\x12o\n\x16\x62idding_strategy_error\x18\x02 \x01(\x0e\x32M.google.ads.googleads.v0.errors.BiddingStrategyErrorEnum.BiddingStrategyErrorH\x00\x12Z\n\x0furl_field_error\x18\x03 \x01(\x0e\x32?.google.ads.googleads.v0.errors.UrlFieldErrorEnum.UrlFieldErrorH\x00\x12i\n\x14list_operation_error\x18\x04 \x01(\x0e\x32I.google.ads.googleads.v0.errors.ListOperationErrorEnum.ListOperationErrorH\x00\x12P\n\x0bquery_error\x18\x05 \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.QueryErrorEnum.QueryErrorH\x00\x12S\n\x0cmutate_error\x18\x07 \x01(\x0e\x32;.google.ads.googleads.v0.errors.MutateErrorEnum.MutateErrorH\x00\x12]\n\x10\x66ield_mask_error\x18\x08 \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.FieldMaskErrorEnum.FieldMaskErrorH\x00\x12h\n\x13\x61uthorization_error\x18\t \x01(\x0e\x32I.google.ads.googleads.v0.errors.AuthorizationErrorEnum.AuthorizationErrorH\x00\x12Y\n\x0einternal_error\x18\n \x01(\x0e\x32?.google.ads.googleads.v0.errors.InternalErrorEnum.InternalErrorH\x00\x12P\n\x0bquota_error\x18\x0b \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.QuotaErrorEnum.QuotaErrorH\x00\x12G\n\x08\x61\x64_error\x18\x0c \x01(\x0e\x32\x33.google.ads.googleads.v0.errors.AdErrorEnum.AdErrorH\x00\x12W\n\x0e\x61\x64_group_error\x18\r \x01(\x0e\x32=.google.ads.googleads.v0.errors.AdGroupErrorEnum.AdGroupErrorH\x00\x12l\n\x15\x63\x61mpaign_budget_error\x18\x0e \x01(\x0e\x32K.google.ads.googleads.v0.errors.CampaignBudgetErrorEnum.CampaignBudgetErrorH\x00\x12Y\n\x0e\x63\x61mpaign_error\x18\x0f \x01(\x0e\x32?.google.ads.googleads.v0.errors.CampaignErrorEnum.CampaignErrorH\x00\x12k\n\x14\x61uthentication_error\x18\x11 \x01(\x0e\x32K.google.ads.googleads.v0.errors.AuthenticationErrorEnum.AuthenticationErrorH\x00\x12s\n\x18\x61\x64_group_criterion_error\x18\x12 \x01(\x0e\x32O.google.ads.googleads.v0.errors.AdGroupCriterionErrorEnum.AdGroupCriterionErrorH\x00\x12\x66\n\x13\x61\x64_customizer_error\x18\x13 \x01(\x0e\x32G.google.ads.googleads.v0.errors.AdCustomizerErrorEnum.AdCustomizerErrorH\x00\x12^\n\x11\x61\x64_group_ad_error\x18\x15 \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.AdGroupAdErrorEnum.AdGroupAdErrorH\x00\x12]\n\x10\x61\x64_sharing_error\x18\x18 \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.AdSharingErrorEnum.AdSharingErrorH\x00\x12J\n\tadx_error\x18\x19 \x01(\x0e\x32\x35.google.ads.googleads.v0.errors.AdxErrorEnum.AdxErrorH\x00\x12V\n\rbidding_error\x18\x1a \x01(\x0e\x32=.google.ads.googleads.v0.errors.BiddingErrorEnum.BiddingErrorH\x00\x12u\n\x18\x63\x61mpaign_criterion_error\x18\x1d \x01(\x0e\x32Q.google.ads.googleads.v0.errors.CampaignCriterionErrorEnum.CampaignCriterionErrorH\x00\x12l\n\x15\x63ollection_size_error\x18\x1f \x01(\x0e\x32K.google.ads.googleads.v0.errors.CollectionSizeErrorEnum.CollectionSizeErrorH\x00\x12\\\n\x0f\x63riterion_error\x18 \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.CriterionErrorEnum.CriterionErrorH\x00\x12Y\n\x0e\x63ustomer_error\x18Z \x01(\x0e\x32?.google.ads.googleads.v0.errors.CustomerErrorEnum.CustomerErrorH\x00\x12M\n\ndate_error\x18! \x01(\x0e\x32\x37.google.ads.googleads.v0.errors.DateErrorEnum.DateErrorH\x00\x12]\n\x10\x64\x61te_range_error\x18\" \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.DateRangeErrorEnum.DateRangeErrorH\x00\x12Y\n\x0e\x64istinct_error\x18# \x01(\x0e\x32?.google.ads.googleads.v0.errors.DistinctErrorEnum.DistinctErrorH\x00\x12\x85\x01\n\x1e\x66\x65\x65\x64_attribute_reference_error\x18$ \x01(\x0e\x32[.google.ads.googleads.v0.errors.FeedAttributeReferenceErrorEnum.FeedAttributeReferenceErrorH\x00\x12Y\n\x0e\x66unction_error\x18% \x01(\x0e\x32?.google.ads.googleads.v0.errors.FunctionErrorEnum.FunctionErrorH\x00\x12o\n\x16\x66unction_parsing_error\x18& \x01(\x0e\x32M.google.ads.googleads.v0.errors.FunctionParsingErrorEnum.FunctionParsingErrorH\x00\x12G\n\x08id_error\x18\' \x01(\x0e\x32\x33.google.ads.googleads.v0.errors.IdErrorEnum.IdErrorH\x00\x12P\n\x0bimage_error\x18( \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.ImageErrorEnum.ImageErrorH\x00\x12\x63\n\x12media_bundle_error\x18* \x01(\x0e\x32\x45.google.ads.googleads.v0.errors.MediaBundleErrorEnum.MediaBundleErrorH\x00\x12]\n\x10media_file_error\x18V \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.MediaFileErrorEnum.MediaFileErrorH\x00\x12_\n\x10multiplier_error\x18, \x01(\x0e\x32\x43.google.ads.googleads.v0.errors.MultiplierErrorEnum.MultiplierErrorH\x00\x12|\n\x1bnew_resource_creation_error\x18- \x01(\x0e\x32U.google.ads.googleads.v0.errors.NewResourceCreationErrorEnum.NewResourceCreationErrorH\x00\x12Z\n\x0fnot_empty_error\x18. \x01(\x0e\x32?.google.ads.googleads.v0.errors.NotEmptyErrorEnum.NotEmptyErrorH\x00\x12M\n\nnull_error\x18/ \x01(\x0e\x32\x37.google.ads.googleads.v0.errors.NullErrorEnum.NullErrorH\x00\x12Y\n\x0eoperator_error\x18\x30 \x01(\x0e\x32?.google.ads.googleads.v0.errors.OperatorErrorEnum.OperatorErrorH\x00\x12P\n\x0brange_error\x18\x31 \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.RangeErrorEnum.RangeErrorH\x00\x12k\n\x14recommendation_error\x18: \x01(\x0e\x32K.google.ads.googleads.v0.errors.RecommendationErrorEnum.RecommendationErrorH\x00\x12`\n\x11region_code_error\x18\x33 \x01(\x0e\x32\x43.google.ads.googleads.v0.errors.RegionCodeErrorEnum.RegionCodeErrorH\x00\x12V\n\rsetting_error\x18\x34 \x01(\x0e\x32=.google.ads.googleads.v0.errors.SettingErrorEnum.SettingErrorH\x00\x12\x66\n\x13string_format_error\x18\x35 \x01(\x0e\x32G.google.ads.googleads.v0.errors.StringFormatErrorEnum.StringFormatErrorH\x00\x12\x66\n\x13string_length_error\x18\x36 \x01(\x0e\x32G.google.ads.googleads.v0.errors.StringLengthErrorEnum.StringLengthErrorH\x00\x12\x82\x01\n\x1doperation_access_denied_error\x18\x37 \x01(\x0e\x32Y.google.ads.googleads.v0.errors.OperationAccessDeniedErrorEnum.OperationAccessDeniedErrorH\x00\x12\x7f\n\x1cresource_access_denied_error\x18\x38 \x01(\x0e\x32W.google.ads.googleads.v0.errors.ResourceAccessDeniedErrorEnum.ResourceAccessDeniedErrorH\x00\x12\x92\x01\n#resource_count_limit_exceeded_error\x18\x39 \x01(\x0e\x32\x63.google.ads.googleads.v0.errors.ResourceCountLimitExceededErrorEnum.ResourceCountLimitExceededErrorH\x00\x12z\n\x1b\x61\x64_group_bid_modifier_error\x18; \x01(\x0e\x32S.google.ads.googleads.v0.errors.AdGroupBidModifierErrorEnum.AdGroupBidModifierErrorH\x00\x12V\n\rcontext_error\x18< \x01(\x0e\x32=.google.ads.googleads.v0.errors.ContextErrorEnum.ContextErrorH\x00\x12P\n\x0b\x66ield_error\x18= \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.FieldErrorEnum.FieldErrorH\x00\x12]\n\x10shared_set_error\x18> \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.SharedSetErrorEnum.SharedSetErrorH\x00\x12o\n\x16shared_criterion_error\x18? \x01(\x0e\x32M.google.ads.googleads.v0.errors.SharedCriterionErrorEnum.SharedCriterionErrorH\x00\x12v\n\x19\x63\x61mpaign_shared_set_error\x18@ \x01(\x0e\x32Q.google.ads.googleads.v0.errors.CampaignSharedSetErrorEnum.CampaignSharedSetErrorH\x00\x12r\n\x17\x63onversion_action_error\x18\x41 \x01(\x0e\x32O.google.ads.googleads.v0.errors.ConversionActionErrorEnum.ConversionActionErrorH\x00\x12S\n\x0cheader_error\x18\x42 \x01(\x0e\x32;.google.ads.googleads.v0.errors.HeaderErrorEnum.HeaderErrorH\x00\x12Y\n\x0e\x64\x61tabase_error\x18\x43 \x01(\x0e\x32?.google.ads.googleads.v0.errors.DatabaseErrorEnum.DatabaseErrorH\x00\x12i\n\x14policy_finding_error\x18\x44 \x01(\x0e\x32I.google.ads.googleads.v0.errors.PolicyFindingErrorEnum.PolicyFindingErrorH\x00\x12i\n\x14\x63\x61mpaign_group_error\x18\x45 \x01(\x0e\x32I.google.ads.googleads.v0.errors.CampaignGroupErrorEnum.CampaignGroupErrorH\x00\x12M\n\nenum_error\x18\x46 \x01(\x0e\x32\x37.google.ads.googleads.v0.errors.EnumErrorEnum.EnumErrorH\x00\x12\x82\x01\n\x1d\x61\x63\x63ount_budget_proposal_error\x18M \x01(\x0e\x32Y.google.ads.googleads.v0.errors.AccountBudgetProposalErrorEnum.AccountBudgetProposalErrorH\x00\x12\x66\n\x13\x63hange_status_error\x18O \x01(\x0e\x32G.google.ads.googleads.v0.errors.ChangeStatusErrorEnum.ChangeStatusErrorH\x00\x12\x95\x01\n$geo_target_constant_suggestion_error\x18Q \x01(\x0e\x32\x65.google.ads.googleads.v0.errors.GeoTargetConstantSuggestionErrorEnum.GeoTargetConstantSuggestionErrorH\x00\x12\x66\n\x13\x62illing_setup_error\x18W \x01(\x0e\x32G.google.ads.googleads.v0.errors.BillingSetupErrorEnum.BillingSetupErrorH\x00\x12y\n\x1a\x63ustomer_client_link_error\x18X \x01(\x0e\x32S.google.ads.googleads.v0.errors.CustomerClientLinkErrorEnum.CustomerClientLinkErrorH\x00\x12|\n\x1b\x63ustomer_manager_link_error\x18[ \x01(\x0e\x32U.google.ads.googleads.v0.errors.CustomerManagerLinkErrorEnum.CustomerManagerLinkErrorH\x00\x42\x0c\n\nerror_code\"\xf6\x01\n\rErrorLocation\x12\x34\n\x0foperation_index\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12[\n\x13\x66ield_path_elements\x18\x02 \x03(\x0b\x32>.google.ads.googleads.v0.errors.ErrorLocation.FieldPathElement\x1aR\n\x10\x46ieldPathElement\x12\x12\n\nfield_name\x18\x01 \x01(\t\x12*\n\x05index\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"\xde\x01\n\x0c\x45rrorDetails\x12\x1e\n\x16unpublished_error_code\x18\x01 \x01(\t\x12X\n\x18policy_violation_details\x18\x02 \x01(\x0b\x32\x36.google.ads.googleads.v0.errors.PolicyViolationDetails\x12T\n\x16policy_finding_details\x18\x03 \x01(\x0b\x32\x34.google.ads.googleads.v0.errors.PolicyFindingDetails\"\xb3\x01\n\x16PolicyViolationDetails\x12#\n\x1b\x65xternal_policy_description\x18\x02 \x01(\t\x12?\n\x03key\x18\x04 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.PolicyViolationKey\x12\x1c\n\x14\x65xternal_policy_name\x18\x05 \x01(\t\x12\x15\n\ris_exemptible\x18\x06 \x01(\x08\"f\n\x14PolicyFindingDetails\x12N\n\x14policy_topic_entries\x18\x01 \x03(\x0b\x32\x30.google.ads.googleads.v0.common.PolicyTopicEntryB\xc1\x01\n\"com.google.ads.googleads.v0.errorsB\x0b\x45rrorsProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\n1google/ads/googleads_v0/proto/errors/errors.proto\x12\x1egoogle.ads.googleads.v0.errors\x1a\x31google/ads/googleads_v0/proto/common/policy.proto\x1a\x30google/ads/googleads_v0/proto/common/value.proto\x1aHgoogle/ads/googleads_v0/proto/errors/account_budget_proposal_error.proto\x1a>google/ads/googleads_v0/proto/errors/ad_customizer_error.proto\x1a\x33google/ads/googleads_v0/proto/errors/ad_error.proto\x1agoogle/ads/googleads_v0/proto/errors/ad_group_feed_error.proto\x1a;google/ads/googleads_v0/proto/errors/ad_sharing_error.proto\x1a\x34google/ads/googleads_v0/proto/errors/adx_error.proto\x1a?google/ads/googleads_v0/proto/errors/authentication_error.proto\x1a>google/ads/googleads_v0/proto/errors/authorization_error.proto\x1a\x38google/ads/googleads_v0/proto/errors/bidding_error.proto\x1a\x41google/ads/googleads_v0/proto/errors/bidding_strategy_error.proto\x1a>google/ads/googleads_v0/proto/errors/billing_setup_error.proto\x1a@google/ads/googleads_v0/proto/errors/campaign_budget_error.proto\x1a\x43google/ads/googleads_v0/proto/errors/campaign_criterion_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/campaign_error.proto\x1a>google/ads/googleads_v0/proto/errors/campaign_feed_error.proto\x1a?google/ads/googleads_v0/proto/errors/campaign_group_error.proto\x1a\x44google/ads/googleads_v0/proto/errors/campaign_shared_set_error.proto\x1a>google/ads/googleads_v0/proto/errors/change_status_error.proto\x1a@google/ads/googleads_v0/proto/errors/collection_size_error.proto\x1a\x38google/ads/googleads_v0/proto/errors/context_error.proto\x1a\x42google/ads/googleads_v0/proto/errors/conversion_action_error.proto\x1a:google/ads/googleads_v0/proto/errors/criterion_error.proto\x1a\x45google/ads/googleads_v0/proto/errors/customer_client_link_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/customer_error.proto\x1a>google/ads/googleads_v0/proto/errors/customer_feed_error.proto\x1a\x46google/ads/googleads_v0/proto/errors/customer_manager_link_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/database_error.proto\x1a\x35google/ads/googleads_v0/proto/errors/date_error.proto\x1a;google/ads/googleads_v0/proto/errors/date_range_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/distinct_error.proto\x1a\x35google/ads/googleads_v0/proto/errors/enum_error.proto\x1aIgoogle/ads/googleads_v0/proto/errors/feed_attribute_reference_error.proto\x1a\x35google/ads/googleads_v0/proto/errors/feed_error.proto\x1a:google/ads/googleads_v0/proto/errors/feed_item_error.proto\x1a=google/ads/googleads_v0/proto/errors/feed_mapping_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/field_error.proto\x1a;google/ads/googleads_v0/proto/errors/field_mask_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/function_error.proto\x1a\x41google/ads/googleads_v0/proto/errors/function_parsing_error.proto\x1aOgoogle/ads/googleads_v0/proto/errors/geo_target_constant_suggestion_error.proto\x1a\x37google/ads/googleads_v0/proto/errors/header_error.proto\x1a\x33google/ads/googleads_v0/proto/errors/id_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/image_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/internal_error.proto\x1a\x46google/ads/googleads_v0/proto/errors/keyword_plan_ad_group_error.proto\x1a\x46google/ads/googleads_v0/proto/errors/keyword_plan_campaign_error.proto\x1a=google/ads/googleads_v0/proto/errors/keyword_plan_error.proto\x1a\x42google/ads/googleads_v0/proto/errors/keyword_plan_idea_error.proto\x1a\x45google/ads/googleads_v0/proto/errors/keyword_plan_keyword_error.proto\x1aNgoogle/ads/googleads_v0/proto/errors/keyword_plan_negative_keyword_error.proto\x1a?google/ads/googleads_v0/proto/errors/list_operation_error.proto\x1a=google/ads/googleads_v0/proto/errors/media_bundle_error.proto\x1a;google/ads/googleads_v0/proto/errors/media_file_error.proto\x1a;google/ads/googleads_v0/proto/errors/multiplier_error.proto\x1a\x37google/ads/googleads_v0/proto/errors/mutate_error.proto\x1a\x46google/ads/googleads_v0/proto/errors/new_resource_creation_error.proto\x1a:google/ads/googleads_v0/proto/errors/not_empty_error.proto\x1a\x35google/ads/googleads_v0/proto/errors/null_error.proto\x1aHgoogle/ads/googleads_v0/proto/errors/operation_access_denied_error.proto\x1a\x39google/ads/googleads_v0/proto/errors/operator_error.proto\x1a?google/ads/googleads_v0/proto/errors/policy_finding_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/query_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/quota_error.proto\x1a\x36google/ads/googleads_v0/proto/errors/range_error.proto\x1a?google/ads/googleads_v0/proto/errors/recommendation_error.proto\x1agoogle/ads/googleads_v0/proto/errors/string_format_error.proto\x1a>google/ads/googleads_v0/proto/errors/string_length_error.proto\x1a:google/ads/googleads_v0/proto/errors/url_field_error.proto\x1a:google/ads/googleads_v0/proto/errors/user_list_error.proto\x1a\x1egoogle/protobuf/wrappers.proto\"R\n\x10GoogleAdsFailure\x12>\n\x06\x65rrors\x18\x01 \x03(\x0b\x32..google.ads.googleads.v0.errors.GoogleAdsError\"\x98\x02\n\x0eGoogleAdsError\x12=\n\nerror_code\x18\x01 \x01(\x0b\x32).google.ads.googleads.v0.errors.ErrorCode\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x36\n\x07trigger\x18\x03 \x01(\x0b\x32%.google.ads.googleads.v0.common.Value\x12?\n\x08location\x18\x04 \x01(\x0b\x32-.google.ads.googleads.v0.errors.ErrorLocation\x12=\n\x07\x64\x65tails\x18\x05 \x01(\x0b\x32,.google.ads.googleads.v0.errors.ErrorDetails\"\xa1@\n\tErrorCode\x12V\n\rrequest_error\x18\x01 \x01(\x0e\x32=.google.ads.googleads.v0.errors.RequestErrorEnum.RequestErrorH\x00\x12o\n\x16\x62idding_strategy_error\x18\x02 \x01(\x0e\x32M.google.ads.googleads.v0.errors.BiddingStrategyErrorEnum.BiddingStrategyErrorH\x00\x12Z\n\x0furl_field_error\x18\x03 \x01(\x0e\x32?.google.ads.googleads.v0.errors.UrlFieldErrorEnum.UrlFieldErrorH\x00\x12i\n\x14list_operation_error\x18\x04 \x01(\x0e\x32I.google.ads.googleads.v0.errors.ListOperationErrorEnum.ListOperationErrorH\x00\x12P\n\x0bquery_error\x18\x05 \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.QueryErrorEnum.QueryErrorH\x00\x12S\n\x0cmutate_error\x18\x07 \x01(\x0e\x32;.google.ads.googleads.v0.errors.MutateErrorEnum.MutateErrorH\x00\x12]\n\x10\x66ield_mask_error\x18\x08 \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.FieldMaskErrorEnum.FieldMaskErrorH\x00\x12h\n\x13\x61uthorization_error\x18\t \x01(\x0e\x32I.google.ads.googleads.v0.errors.AuthorizationErrorEnum.AuthorizationErrorH\x00\x12Y\n\x0einternal_error\x18\n \x01(\x0e\x32?.google.ads.googleads.v0.errors.InternalErrorEnum.InternalErrorH\x00\x12P\n\x0bquota_error\x18\x0b \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.QuotaErrorEnum.QuotaErrorH\x00\x12G\n\x08\x61\x64_error\x18\x0c \x01(\x0e\x32\x33.google.ads.googleads.v0.errors.AdErrorEnum.AdErrorH\x00\x12W\n\x0e\x61\x64_group_error\x18\r \x01(\x0e\x32=.google.ads.googleads.v0.errors.AdGroupErrorEnum.AdGroupErrorH\x00\x12l\n\x15\x63\x61mpaign_budget_error\x18\x0e \x01(\x0e\x32K.google.ads.googleads.v0.errors.CampaignBudgetErrorEnum.CampaignBudgetErrorH\x00\x12Y\n\x0e\x63\x61mpaign_error\x18\x0f \x01(\x0e\x32?.google.ads.googleads.v0.errors.CampaignErrorEnum.CampaignErrorH\x00\x12k\n\x14\x61uthentication_error\x18\x11 \x01(\x0e\x32K.google.ads.googleads.v0.errors.AuthenticationErrorEnum.AuthenticationErrorH\x00\x12s\n\x18\x61\x64_group_criterion_error\x18\x12 \x01(\x0e\x32O.google.ads.googleads.v0.errors.AdGroupCriterionErrorEnum.AdGroupCriterionErrorH\x00\x12\x66\n\x13\x61\x64_customizer_error\x18\x13 \x01(\x0e\x32G.google.ads.googleads.v0.errors.AdCustomizerErrorEnum.AdCustomizerErrorH\x00\x12^\n\x11\x61\x64_group_ad_error\x18\x15 \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.AdGroupAdErrorEnum.AdGroupAdErrorH\x00\x12]\n\x10\x61\x64_sharing_error\x18\x18 \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.AdSharingErrorEnum.AdSharingErrorH\x00\x12J\n\tadx_error\x18\x19 \x01(\x0e\x32\x35.google.ads.googleads.v0.errors.AdxErrorEnum.AdxErrorH\x00\x12V\n\rbidding_error\x18\x1a \x01(\x0e\x32=.google.ads.googleads.v0.errors.BiddingErrorEnum.BiddingErrorH\x00\x12u\n\x18\x63\x61mpaign_criterion_error\x18\x1d \x01(\x0e\x32Q.google.ads.googleads.v0.errors.CampaignCriterionErrorEnum.CampaignCriterionErrorH\x00\x12l\n\x15\x63ollection_size_error\x18\x1f \x01(\x0e\x32K.google.ads.googleads.v0.errors.CollectionSizeErrorEnum.CollectionSizeErrorH\x00\x12\\\n\x0f\x63riterion_error\x18 \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.CriterionErrorEnum.CriterionErrorH\x00\x12Y\n\x0e\x63ustomer_error\x18Z \x01(\x0e\x32?.google.ads.googleads.v0.errors.CustomerErrorEnum.CustomerErrorH\x00\x12M\n\ndate_error\x18! \x01(\x0e\x32\x37.google.ads.googleads.v0.errors.DateErrorEnum.DateErrorH\x00\x12]\n\x10\x64\x61te_range_error\x18\" \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.DateRangeErrorEnum.DateRangeErrorH\x00\x12Y\n\x0e\x64istinct_error\x18# \x01(\x0e\x32?.google.ads.googleads.v0.errors.DistinctErrorEnum.DistinctErrorH\x00\x12\x85\x01\n\x1e\x66\x65\x65\x64_attribute_reference_error\x18$ \x01(\x0e\x32[.google.ads.googleads.v0.errors.FeedAttributeReferenceErrorEnum.FeedAttributeReferenceErrorH\x00\x12Y\n\x0e\x66unction_error\x18% \x01(\x0e\x32?.google.ads.googleads.v0.errors.FunctionErrorEnum.FunctionErrorH\x00\x12o\n\x16\x66unction_parsing_error\x18& \x01(\x0e\x32M.google.ads.googleads.v0.errors.FunctionParsingErrorEnum.FunctionParsingErrorH\x00\x12G\n\x08id_error\x18\' \x01(\x0e\x32\x33.google.ads.googleads.v0.errors.IdErrorEnum.IdErrorH\x00\x12P\n\x0bimage_error\x18( \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.ImageErrorEnum.ImageErrorH\x00\x12\x63\n\x12media_bundle_error\x18* \x01(\x0e\x32\x45.google.ads.googleads.v0.errors.MediaBundleErrorEnum.MediaBundleErrorH\x00\x12]\n\x10media_file_error\x18V \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.MediaFileErrorEnum.MediaFileErrorH\x00\x12_\n\x10multiplier_error\x18, \x01(\x0e\x32\x43.google.ads.googleads.v0.errors.MultiplierErrorEnum.MultiplierErrorH\x00\x12|\n\x1bnew_resource_creation_error\x18- \x01(\x0e\x32U.google.ads.googleads.v0.errors.NewResourceCreationErrorEnum.NewResourceCreationErrorH\x00\x12Z\n\x0fnot_empty_error\x18. \x01(\x0e\x32?.google.ads.googleads.v0.errors.NotEmptyErrorEnum.NotEmptyErrorH\x00\x12M\n\nnull_error\x18/ \x01(\x0e\x32\x37.google.ads.googleads.v0.errors.NullErrorEnum.NullErrorH\x00\x12Y\n\x0eoperator_error\x18\x30 \x01(\x0e\x32?.google.ads.googleads.v0.errors.OperatorErrorEnum.OperatorErrorH\x00\x12P\n\x0brange_error\x18\x31 \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.RangeErrorEnum.RangeErrorH\x00\x12k\n\x14recommendation_error\x18: \x01(\x0e\x32K.google.ads.googleads.v0.errors.RecommendationErrorEnum.RecommendationErrorH\x00\x12`\n\x11region_code_error\x18\x33 \x01(\x0e\x32\x43.google.ads.googleads.v0.errors.RegionCodeErrorEnum.RegionCodeErrorH\x00\x12V\n\rsetting_error\x18\x34 \x01(\x0e\x32=.google.ads.googleads.v0.errors.SettingErrorEnum.SettingErrorH\x00\x12\x66\n\x13string_format_error\x18\x35 \x01(\x0e\x32G.google.ads.googleads.v0.errors.StringFormatErrorEnum.StringFormatErrorH\x00\x12\x66\n\x13string_length_error\x18\x36 \x01(\x0e\x32G.google.ads.googleads.v0.errors.StringLengthErrorEnum.StringLengthErrorH\x00\x12\x82\x01\n\x1doperation_access_denied_error\x18\x37 \x01(\x0e\x32Y.google.ads.googleads.v0.errors.OperationAccessDeniedErrorEnum.OperationAccessDeniedErrorH\x00\x12\x7f\n\x1cresource_access_denied_error\x18\x38 \x01(\x0e\x32W.google.ads.googleads.v0.errors.ResourceAccessDeniedErrorEnum.ResourceAccessDeniedErrorH\x00\x12\x92\x01\n#resource_count_limit_exceeded_error\x18\x39 \x01(\x0e\x32\x63.google.ads.googleads.v0.errors.ResourceCountLimitExceededErrorEnum.ResourceCountLimitExceededErrorH\x00\x12z\n\x1b\x61\x64_group_bid_modifier_error\x18; \x01(\x0e\x32S.google.ads.googleads.v0.errors.AdGroupBidModifierErrorEnum.AdGroupBidModifierErrorH\x00\x12V\n\rcontext_error\x18< \x01(\x0e\x32=.google.ads.googleads.v0.errors.ContextErrorEnum.ContextErrorH\x00\x12P\n\x0b\x66ield_error\x18= \x01(\x0e\x32\x39.google.ads.googleads.v0.errors.FieldErrorEnum.FieldErrorH\x00\x12]\n\x10shared_set_error\x18> \x01(\x0e\x32\x41.google.ads.googleads.v0.errors.SharedSetErrorEnum.SharedSetErrorH\x00\x12o\n\x16shared_criterion_error\x18? \x01(\x0e\x32M.google.ads.googleads.v0.errors.SharedCriterionErrorEnum.SharedCriterionErrorH\x00\x12v\n\x19\x63\x61mpaign_shared_set_error\x18@ \x01(\x0e\x32Q.google.ads.googleads.v0.errors.CampaignSharedSetErrorEnum.CampaignSharedSetErrorH\x00\x12r\n\x17\x63onversion_action_error\x18\x41 \x01(\x0e\x32O.google.ads.googleads.v0.errors.ConversionActionErrorEnum.ConversionActionErrorH\x00\x12S\n\x0cheader_error\x18\x42 \x01(\x0e\x32;.google.ads.googleads.v0.errors.HeaderErrorEnum.HeaderErrorH\x00\x12Y\n\x0e\x64\x61tabase_error\x18\x43 \x01(\x0e\x32?.google.ads.googleads.v0.errors.DatabaseErrorEnum.DatabaseErrorH\x00\x12i\n\x14policy_finding_error\x18\x44 \x01(\x0e\x32I.google.ads.googleads.v0.errors.PolicyFindingErrorEnum.PolicyFindingErrorH\x00\x12i\n\x14\x63\x61mpaign_group_error\x18\x45 \x01(\x0e\x32I.google.ads.googleads.v0.errors.CampaignGroupErrorEnum.CampaignGroupErrorH\x00\x12M\n\nenum_error\x18\x46 \x01(\x0e\x32\x37.google.ads.googleads.v0.errors.EnumErrorEnum.EnumErrorH\x00\x12\x63\n\x12keyword_plan_error\x18G \x01(\x0e\x32\x45.google.ads.googleads.v0.errors.KeywordPlanErrorEnum.KeywordPlanErrorH\x00\x12|\n\x1bkeyword_plan_campaign_error\x18H \x01(\x0e\x32U.google.ads.googleads.v0.errors.KeywordPlanCampaignErrorEnum.KeywordPlanCampaignErrorH\x00\x12\x92\x01\n#keyword_plan_negative_keyword_error\x18I \x01(\x0e\x32\x63.google.ads.googleads.v0.errors.KeywordPlanNegativeKeywordErrorEnum.KeywordPlanNegativeKeywordErrorH\x00\x12z\n\x1bkeyword_plan_ad_group_error\x18J \x01(\x0e\x32S.google.ads.googleads.v0.errors.KeywordPlanAdGroupErrorEnum.KeywordPlanAdGroupErrorH\x00\x12y\n\x1akeyword_plan_keyword_error\x18K \x01(\x0e\x32S.google.ads.googleads.v0.errors.KeywordPlanKeywordErrorEnum.KeywordPlanKeywordErrorH\x00\x12p\n\x17keyword_plan_idea_error\x18L \x01(\x0e\x32M.google.ads.googleads.v0.errors.KeywordPlanIdeaErrorEnum.KeywordPlanIdeaErrorH\x00\x12\x82\x01\n\x1d\x61\x63\x63ount_budget_proposal_error\x18M \x01(\x0e\x32Y.google.ads.googleads.v0.errors.AccountBudgetProposalErrorEnum.AccountBudgetProposalErrorH\x00\x12Z\n\x0fuser_list_error\x18N \x01(\x0e\x32?.google.ads.googleads.v0.errors.UserListErrorEnum.UserListErrorH\x00\x12\x66\n\x13\x63hange_status_error\x18O \x01(\x0e\x32G.google.ads.googleads.v0.errors.ChangeStatusErrorEnum.ChangeStatusErrorH\x00\x12M\n\nfeed_error\x18P \x01(\x0e\x32\x37.google.ads.googleads.v0.errors.FeedErrorEnum.FeedErrorH\x00\x12\x95\x01\n$geo_target_constant_suggestion_error\x18Q \x01(\x0e\x32\x65.google.ads.googleads.v0.errors.GeoTargetConstantSuggestionErrorEnum.GeoTargetConstantSuggestionErrorH\x00\x12Z\n\x0f\x66\x65\x65\x64_item_error\x18S \x01(\x0e\x32?.google.ads.googleads.v0.errors.FeedItemErrorEnum.FeedItemErrorH\x00\x12\x66\n\x13\x62illing_setup_error\x18W \x01(\x0e\x32G.google.ads.googleads.v0.errors.BillingSetupErrorEnum.BillingSetupErrorH\x00\x12y\n\x1a\x63ustomer_client_link_error\x18X \x01(\x0e\x32S.google.ads.googleads.v0.errors.CustomerClientLinkErrorEnum.CustomerClientLinkErrorH\x00\x12|\n\x1b\x63ustomer_manager_link_error\x18[ \x01(\x0e\x32U.google.ads.googleads.v0.errors.CustomerManagerLinkErrorEnum.CustomerManagerLinkErrorH\x00\x12\x63\n\x12\x66\x65\x65\x64_mapping_error\x18\\ \x01(\x0e\x32\x45.google.ads.googleads.v0.errors.FeedMappingErrorEnum.FeedMappingErrorH\x00\x12\x66\n\x13\x63ustomer_feed_error\x18] \x01(\x0e\x32G.google.ads.googleads.v0.errors.CustomerFeedErrorEnum.CustomerFeedErrorH\x00\x12\x64\n\x13\x61\x64_group_feed_error\x18^ \x01(\x0e\x32\x45.google.ads.googleads.v0.errors.AdGroupFeedErrorEnum.AdGroupFeedErrorH\x00\x12\x66\n\x13\x63\x61mpaign_feed_error\x18` \x01(\x0e\x32G.google.ads.googleads.v0.errors.CampaignFeedErrorEnum.CampaignFeedErrorH\x00\x42\x0c\n\nerror_code\"\xf6\x01\n\rErrorLocation\x12\x34\n\x0foperation_index\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12[\n\x13\x66ield_path_elements\x18\x02 \x03(\x0b\x32>.google.ads.googleads.v0.errors.ErrorLocation.FieldPathElement\x1aR\n\x10\x46ieldPathElement\x12\x12\n\nfield_name\x18\x01 \x01(\t\x12*\n\x05index\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"\xde\x01\n\x0c\x45rrorDetails\x12\x1e\n\x16unpublished_error_code\x18\x01 \x01(\t\x12X\n\x18policy_violation_details\x18\x02 \x01(\x0b\x32\x36.google.ads.googleads.v0.errors.PolicyViolationDetails\x12T\n\x16policy_finding_details\x18\x03 \x01(\x0b\x32\x34.google.ads.googleads.v0.errors.PolicyFindingDetails\"\xb3\x01\n\x16PolicyViolationDetails\x12#\n\x1b\x65xternal_policy_description\x18\x02 \x01(\t\x12?\n\x03key\x18\x04 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.PolicyViolationKey\x12\x1c\n\x14\x65xternal_policy_name\x18\x05 \x01(\t\x12\x15\n\ris_exemptible\x18\x06 \x01(\x08\"f\n\x14PolicyFindingDetails\x12N\n\x14policy_topic_entries\x18\x01 \x03(\x0b\x32\x30.google.ads.googleads.v0.common.PolicyTopicEntryB\xc1\x01\n\"com.google.ads.googleads.v0.errorsB\x0b\x45rrorsProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') , - dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_policy__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_value__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_account__budget__proposal__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__customizer__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__ad__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__bid__modifier__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__criterion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__sharing__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_adx__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_authentication__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_authorization__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_bidding__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_bidding__strategy__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_billing__setup__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__budget__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__criterion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__group__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__shared__set__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_change__status__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_collection__size__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_context__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_conversion__action__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_criterion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__client__link__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__manager__link__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_database__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_date__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_date__range__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_distinct__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_enum__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__attribute__reference__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_field__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_field__mask__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_function__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_function__parsing__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_geo__target__constant__suggestion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_header__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_id__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_image__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_internal__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_list__operation__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_media__bundle__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_media__file__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_multiplier__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_mutate__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_new__resource__creation__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_not__empty__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_null__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_operation__access__denied__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_operator__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_policy__finding__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_query__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_quota__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_range__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_recommendation__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_region__code__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_request__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_resource__access__denied__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_resource__count__limit__exceeded__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_setting__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_shared__criterion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_shared__set__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_string__format__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_string__length__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_url__field__error__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_policy__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_value__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_account__budget__proposal__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__customizer__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__ad__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__bid__modifier__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__criterion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__feed__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__sharing__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_adx__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_authentication__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_authorization__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_bidding__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_bidding__strategy__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_billing__setup__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__budget__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__criterion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__feed__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__group__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__shared__set__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_change__status__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_collection__size__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_context__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_conversion__action__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_criterion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__client__link__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__feed__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__manager__link__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_database__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_date__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_date__range__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_distinct__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_enum__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__attribute__reference__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__item__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__mapping__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_field__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_field__mask__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_function__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_function__parsing__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_geo__target__constant__suggestion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_header__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_id__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_image__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_internal__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__ad__group__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__campaign__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__idea__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__keyword__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__negative__keyword__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_list__operation__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_media__bundle__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_media__file__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_multiplier__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_mutate__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_new__resource__creation__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_not__empty__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_null__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_operation__access__denied__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_operator__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_policy__finding__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_query__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_quota__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_range__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_recommendation__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_region__code__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_request__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_resource__access__denied__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_resource__count__limit__exceeded__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_setting__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_shared__criterion__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_shared__set__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_string__format__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_string__length__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_url__field__error__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_user__list__error__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -122,8 +135,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4436, - serialized_end=4518, + serialized_start=5292, + serialized_end=5374, ) @@ -181,8 +194,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4521, - serialized_end=4801, + serialized_start=5377, + serialized_end=5657, ) @@ -621,47 +634,138 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='account_budget_proposal_error', full_name='google.ads.googleads.v0.errors.ErrorCode.account_budget_proposal_error', index=61, + name='keyword_plan_error', full_name='google.ads.googleads.v0.errors.ErrorCode.keyword_plan_error', index=61, + number=71, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_campaign_error', full_name='google.ads.googleads.v0.errors.ErrorCode.keyword_plan_campaign_error', index=62, + number=72, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_negative_keyword_error', full_name='google.ads.googleads.v0.errors.ErrorCode.keyword_plan_negative_keyword_error', index=63, + number=73, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_ad_group_error', full_name='google.ads.googleads.v0.errors.ErrorCode.keyword_plan_ad_group_error', index=64, + number=74, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_keyword_error', full_name='google.ads.googleads.v0.errors.ErrorCode.keyword_plan_keyword_error', index=65, + number=75, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_idea_error', full_name='google.ads.googleads.v0.errors.ErrorCode.keyword_plan_idea_error', index=66, + number=76, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='account_budget_proposal_error', full_name='google.ads.googleads.v0.errors.ErrorCode.account_budget_proposal_error', index=67, number=77, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='change_status_error', full_name='google.ads.googleads.v0.errors.ErrorCode.change_status_error', index=62, + name='user_list_error', full_name='google.ads.googleads.v0.errors.ErrorCode.user_list_error', index=68, + number=78, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='change_status_error', full_name='google.ads.googleads.v0.errors.ErrorCode.change_status_error', index=69, number=79, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='geo_target_constant_suggestion_error', full_name='google.ads.googleads.v0.errors.ErrorCode.geo_target_constant_suggestion_error', index=63, + name='feed_error', full_name='google.ads.googleads.v0.errors.ErrorCode.feed_error', index=70, + number=80, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='geo_target_constant_suggestion_error', full_name='google.ads.googleads.v0.errors.ErrorCode.geo_target_constant_suggestion_error', index=71, number=81, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='billing_setup_error', full_name='google.ads.googleads.v0.errors.ErrorCode.billing_setup_error', index=64, + name='feed_item_error', full_name='google.ads.googleads.v0.errors.ErrorCode.feed_item_error', index=72, + number=83, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='billing_setup_error', full_name='google.ads.googleads.v0.errors.ErrorCode.billing_setup_error', index=73, number=87, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='customer_client_link_error', full_name='google.ads.googleads.v0.errors.ErrorCode.customer_client_link_error', index=65, + name='customer_client_link_error', full_name='google.ads.googleads.v0.errors.ErrorCode.customer_client_link_error', index=74, number=88, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='customer_manager_link_error', full_name='google.ads.googleads.v0.errors.ErrorCode.customer_manager_link_error', index=66, + name='customer_manager_link_error', full_name='google.ads.googleads.v0.errors.ErrorCode.customer_manager_link_error', index=75, number=91, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='feed_mapping_error', full_name='google.ads.googleads.v0.errors.ErrorCode.feed_mapping_error', index=76, + number=92, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='customer_feed_error', full_name='google.ads.googleads.v0.errors.ErrorCode.customer_feed_error', index=77, + number=93, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_feed_error', full_name='google.ads.googleads.v0.errors.ErrorCode.ad_group_feed_error', index=78, + number=94, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_feed_error', full_name='google.ads.googleads.v0.errors.ErrorCode.campaign_feed_error', index=79, + number=96, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -677,8 +781,8 @@ name='error_code', full_name='google.ads.googleads.v0.errors.ErrorCode.error_code', index=0, containing_type=None, fields=[]), ], - serialized_start=4804, - serialized_end=11618, + serialized_start=5660, + serialized_end=13885, ) @@ -715,8 +819,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11785, - serialized_end=11867, + serialized_start=14052, + serialized_end=14134, ) _ERRORLOCATION = _descriptor.Descriptor( @@ -752,8 +856,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11621, - serialized_end=11867, + serialized_start=13888, + serialized_end=14134, ) @@ -797,8 +901,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11870, - serialized_end=12092, + serialized_start=14137, + serialized_end=14359, ) @@ -849,8 +953,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=12095, - serialized_end=12274, + serialized_start=14362, + serialized_end=14541, ) @@ -880,8 +984,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=12276, - serialized_end=12378, + serialized_start=14543, + serialized_end=14645, ) _GOOGLEADSFAILURE.fields_by_name['errors'].message_type = _GOOGLEADSERROR @@ -950,12 +1054,25 @@ _ERRORCODE.fields_by_name['policy_finding_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_policy__finding__error__pb2._POLICYFINDINGERRORENUM_POLICYFINDINGERROR _ERRORCODE.fields_by_name['campaign_group_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__group__error__pb2._CAMPAIGNGROUPERRORENUM_CAMPAIGNGROUPERROR _ERRORCODE.fields_by_name['enum_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_enum__error__pb2._ENUMERRORENUM_ENUMERROR +_ERRORCODE.fields_by_name['keyword_plan_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__error__pb2._KEYWORDPLANERRORENUM_KEYWORDPLANERROR +_ERRORCODE.fields_by_name['keyword_plan_campaign_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__campaign__error__pb2._KEYWORDPLANCAMPAIGNERRORENUM_KEYWORDPLANCAMPAIGNERROR +_ERRORCODE.fields_by_name['keyword_plan_negative_keyword_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__negative__keyword__error__pb2._KEYWORDPLANNEGATIVEKEYWORDERRORENUM_KEYWORDPLANNEGATIVEKEYWORDERROR +_ERRORCODE.fields_by_name['keyword_plan_ad_group_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__ad__group__error__pb2._KEYWORDPLANADGROUPERRORENUM_KEYWORDPLANADGROUPERROR +_ERRORCODE.fields_by_name['keyword_plan_keyword_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__keyword__error__pb2._KEYWORDPLANKEYWORDERRORENUM_KEYWORDPLANKEYWORDERROR +_ERRORCODE.fields_by_name['keyword_plan_idea_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_keyword__plan__idea__error__pb2._KEYWORDPLANIDEAERRORENUM_KEYWORDPLANIDEAERROR _ERRORCODE.fields_by_name['account_budget_proposal_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_account__budget__proposal__error__pb2._ACCOUNTBUDGETPROPOSALERRORENUM_ACCOUNTBUDGETPROPOSALERROR +_ERRORCODE.fields_by_name['user_list_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_user__list__error__pb2._USERLISTERRORENUM_USERLISTERROR _ERRORCODE.fields_by_name['change_status_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_change__status__error__pb2._CHANGESTATUSERRORENUM_CHANGESTATUSERROR +_ERRORCODE.fields_by_name['feed_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__error__pb2._FEEDERRORENUM_FEEDERROR _ERRORCODE.fields_by_name['geo_target_constant_suggestion_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_geo__target__constant__suggestion__error__pb2._GEOTARGETCONSTANTSUGGESTIONERRORENUM_GEOTARGETCONSTANTSUGGESTIONERROR +_ERRORCODE.fields_by_name['feed_item_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__item__error__pb2._FEEDITEMERRORENUM_FEEDITEMERROR _ERRORCODE.fields_by_name['billing_setup_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_billing__setup__error__pb2._BILLINGSETUPERRORENUM_BILLINGSETUPERROR _ERRORCODE.fields_by_name['customer_client_link_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__client__link__error__pb2._CUSTOMERCLIENTLINKERRORENUM_CUSTOMERCLIENTLINKERROR _ERRORCODE.fields_by_name['customer_manager_link_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__manager__link__error__pb2._CUSTOMERMANAGERLINKERRORENUM_CUSTOMERMANAGERLINKERROR +_ERRORCODE.fields_by_name['feed_mapping_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_feed__mapping__error__pb2._FEEDMAPPINGERRORENUM_FEEDMAPPINGERROR +_ERRORCODE.fields_by_name['customer_feed_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_customer__feed__error__pb2._CUSTOMERFEEDERRORENUM_CUSTOMERFEEDERROR +_ERRORCODE.fields_by_name['ad_group_feed_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_ad__group__feed__error__pb2._ADGROUPFEEDERRORENUM_ADGROUPFEEDERROR +_ERRORCODE.fields_by_name['campaign_feed_error'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_errors_dot_campaign__feed__error__pb2._CAMPAIGNFEEDERRORENUM_CAMPAIGNFEEDERROR _ERRORCODE.oneofs_by_name['error_code'].fields.append( _ERRORCODE.fields_by_name['request_error']) _ERRORCODE.fields_by_name['request_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] @@ -1139,15 +1256,42 @@ _ERRORCODE.oneofs_by_name['error_code'].fields.append( _ERRORCODE.fields_by_name['enum_error']) _ERRORCODE.fields_by_name['enum_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['keyword_plan_error']) +_ERRORCODE.fields_by_name['keyword_plan_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['keyword_plan_campaign_error']) +_ERRORCODE.fields_by_name['keyword_plan_campaign_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['keyword_plan_negative_keyword_error']) +_ERRORCODE.fields_by_name['keyword_plan_negative_keyword_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['keyword_plan_ad_group_error']) +_ERRORCODE.fields_by_name['keyword_plan_ad_group_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['keyword_plan_keyword_error']) +_ERRORCODE.fields_by_name['keyword_plan_keyword_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['keyword_plan_idea_error']) +_ERRORCODE.fields_by_name['keyword_plan_idea_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] _ERRORCODE.oneofs_by_name['error_code'].fields.append( _ERRORCODE.fields_by_name['account_budget_proposal_error']) _ERRORCODE.fields_by_name['account_budget_proposal_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['user_list_error']) +_ERRORCODE.fields_by_name['user_list_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] _ERRORCODE.oneofs_by_name['error_code'].fields.append( _ERRORCODE.fields_by_name['change_status_error']) _ERRORCODE.fields_by_name['change_status_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['feed_error']) +_ERRORCODE.fields_by_name['feed_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] _ERRORCODE.oneofs_by_name['error_code'].fields.append( _ERRORCODE.fields_by_name['geo_target_constant_suggestion_error']) _ERRORCODE.fields_by_name['geo_target_constant_suggestion_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['feed_item_error']) +_ERRORCODE.fields_by_name['feed_item_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] _ERRORCODE.oneofs_by_name['error_code'].fields.append( _ERRORCODE.fields_by_name['billing_setup_error']) _ERRORCODE.fields_by_name['billing_setup_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] @@ -1157,6 +1301,18 @@ _ERRORCODE.oneofs_by_name['error_code'].fields.append( _ERRORCODE.fields_by_name['customer_manager_link_error']) _ERRORCODE.fields_by_name['customer_manager_link_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['feed_mapping_error']) +_ERRORCODE.fields_by_name['feed_mapping_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['customer_feed_error']) +_ERRORCODE.fields_by_name['customer_feed_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['ad_group_feed_error']) +_ERRORCODE.fields_by_name['ad_group_feed_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] +_ERRORCODE.oneofs_by_name['error_code'].fields.append( + _ERRORCODE.fields_by_name['campaign_feed_error']) +_ERRORCODE.fields_by_name['campaign_feed_error'].containing_oneof = _ERRORCODE.oneofs_by_name['error_code'] _ERRORLOCATION_FIELDPATHELEMENT.fields_by_name['index'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE _ERRORLOCATION_FIELDPATHELEMENT.containing_type = _ERRORLOCATION _ERRORLOCATION.fields_by_name['operation_index'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE @@ -1176,7 +1332,7 @@ GoogleAdsFailure = _reflection.GeneratedProtocolMessageType('GoogleAdsFailure', (_message.Message,), dict( DESCRIPTOR = _GOOGLEADSFAILURE, - __module__ = 'google.ads.googleads_v0.proto.errors.errors_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.errors_pb2' , __doc__ = """Describes how a GoogleAds API call failed. It's returned inside google.rpc.Status.details when a call fails. @@ -1192,7 +1348,7 @@ GoogleAdsError = _reflection.GeneratedProtocolMessageType('GoogleAdsError', (_message.Message,), dict( DESCRIPTOR = _GOOGLEADSERROR, - __module__ = 'google.ads.googleads_v0.proto.errors.errors_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.errors_pb2' , __doc__ = """GoogleAds-specific error. @@ -1216,7 +1372,7 @@ ErrorCode = _reflection.GeneratedProtocolMessageType('ErrorCode', (_message.Message,), dict( DESCRIPTOR = _ERRORCODE, - __module__ = 'google.ads.googleads_v0.proto.errors.errors_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.errors_pb2' , __doc__ = """The error reason represented by type and enum. @@ -1346,18 +1502,44 @@ The reasons for campaign group error. enum_error: The reason for enum error. + keyword_plan_error: + The reason for keyword plan error. + keyword_plan_campaign_error: + The reason for keyword plan campaign error. + keyword_plan_negative_keyword_error: + The reason for keyword plan negative keyword error. + keyword_plan_ad_group_error: + The reason for keyword plan ad group error. + keyword_plan_keyword_error: + The reason for keyword plan keyword error. + keyword_plan_idea_error: + The reason for keyword idea error. account_budget_proposal_error: The reasons for account budget proposal errors. + user_list_error: + The reasons for the user list error change_status_error: The reasons for the change status error + feed_error: + The reasons for the feed error geo_target_constant_suggestion_error: The reasons for the geo target constant suggestion error. + feed_item_error: + The reasons for the feed item error billing_setup_error: The reasons for the billing setup error customer_client_link_error: The reasons for the customer client link error customer_manager_link_error: The reasons for the customer manager link error + feed_mapping_error: + The reasons for the feed mapping error + customer_feed_error: + The reasons for the customer feed error + ad_group_feed_error: + The reasons for the ad group feed error + campaign_feed_error: + The reasons for the campaign feed error """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.ErrorCode) )) @@ -1367,22 +1549,23 @@ FieldPathElement = _reflection.GeneratedProtocolMessageType('FieldPathElement', (_message.Message,), dict( DESCRIPTOR = _ERRORLOCATION_FIELDPATHELEMENT, - __module__ = 'google.ads.googleads_v0.proto.errors.errors_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.errors_pb2' , __doc__ = """A part of a field path. Attributes: field_name: - The name of a field + The name of a field or a oneof index: - If field\_name is a list, this is the element that failed + If field\_name is a repeated field, this is the element that + failed """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.ErrorLocation.FieldPathElement) )) , DESCRIPTOR = _ERRORLOCATION, - __module__ = 'google.ads.googleads_v0.proto.errors.errors_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.errors_pb2' , __doc__ = """Describes the part of the request proto that caused the error. @@ -1392,7 +1575,7 @@ The mutate operation that failed field_path_elements: A field path that indicates which field was invalid in the - resource being mutated. + request. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.ErrorLocation) )) @@ -1401,7 +1584,7 @@ ErrorDetails = _reflection.GeneratedProtocolMessageType('ErrorDetails', (_message.Message,), dict( DESCRIPTOR = _ERRORDETAILS, - __module__ = 'google.ads.googleads_v0.proto.errors.errors_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.errors_pb2' , __doc__ = """Additional error details. @@ -1422,7 +1605,7 @@ PolicyViolationDetails = _reflection.GeneratedProtocolMessageType('PolicyViolationDetails', (_message.Message,), dict( DESCRIPTOR = _POLICYVIOLATIONDETAILS, - __module__ = 'google.ads.googleads_v0.proto.errors.errors_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.errors_pb2' , __doc__ = """Error returned as part of a mutate response. This error indicates single policy violation by some text in one of the fields. @@ -1445,7 +1628,7 @@ PolicyFindingDetails = _reflection.GeneratedProtocolMessageType('PolicyFindingDetails', (_message.Message,), dict( DESCRIPTOR = _POLICYFINDINGDETAILS, - __module__ = 'google.ads.googleads_v0.proto.errors.errors_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.errors_pb2' , __doc__ = """Error returned as part of a mutate response. This error indicates one or more policy findings in the fields of a resource. diff --git a/google/ads/google_ads/v0/proto/errors/feed_attribute_reference_error_pb2.py b/google/ads/google_ads/v0/proto/errors/feed_attribute_reference_error_pb2.py index 8e7aa3d78..581a887c3 100644 --- a/google/ads/google_ads/v0/proto/errors/feed_attribute_reference_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/feed_attribute_reference_error_pb2.py @@ -89,7 +89,7 @@ FeedAttributeReferenceErrorEnum = _reflection.GeneratedProtocolMessageType('FeedAttributeReferenceErrorEnum', (_message.Message,), dict( DESCRIPTOR = _FEEDATTRIBUTEREFERENCEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.feed_attribute_reference_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.feed_attribute_reference_error_pb2' , __doc__ = """Container for enum describing possible feed attribute reference errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/feed_error_pb2.py b/google/ads/google_ads/v0/proto/errors/feed_error_pb2.py new file mode 100644 index 000000000..328677e8e --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/feed_error_pb2.py @@ -0,0 +1,167 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/feed_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/feed_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\n5google/ads/googleads_v0/proto/errors/feed_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xde\x05\n\rFeedErrorEnum\"\xcc\x05\n\tFeedError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1e\n\x1a\x41TTRIBUTE_NAMES_NOT_UNIQUE\x10\x02\x12/\n+ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES\x10\x03\x12.\n*CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED\x10\x04\x12\x34\n0CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED\x10\x05\x12\x32\n.CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED\x10\x06\x12\x34\n0CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE\x10\x07\x12\x10\n\x0c\x46\x45\x45\x44_REMOVED\x10\x08\x12\x18\n\x14INVALID_ORIGIN_VALUE\x10\t\x12\x1b\n\x17\x46\x45\x45\x44_ORIGIN_IS_NOT_USER\x10\n\x12 \n\x1cINVALID_AUTH_TOKEN_FOR_EMAIL\x10\x0b\x12\x11\n\rINVALID_EMAIL\x10\x0c\x12\x17\n\x13\x44UPLICATE_FEED_NAME\x10\r\x12\x15\n\x11INVALID_FEED_NAME\x10\x0e\x12\x16\n\x12MISSING_OAUTH_INFO\x10\x0f\x12.\n*NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY\x10\x10\x12\x17\n\x13TOO_MANY_ATTRIBUTES\x10\x11\x12\x1c\n\x18INVALID_BUSINESS_ACCOUNT\x10\x12\x12\x33\n/BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT\x10\x13\x12\x1e\n\x1aINVALID_AFFILIATE_CHAIN_ID\x10\x14\x42\xc4\x01\n\"com.google.ads.googleads.v0.errorsB\x0e\x46\x65\x65\x64\x45rrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_FEEDERRORENUM_FEEDERROR = _descriptor.EnumDescriptor( + name='FeedError', + full_name='google.ads.googleads.v0.errors.FeedErrorEnum.FeedError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ATTRIBUTE_NAMES_NOT_UNIQUE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FEED_REMOVED', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_ORIGIN_VALUE', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FEED_ORIGIN_IS_NOT_USER', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_AUTH_TOKEN_FOR_EMAIL', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_EMAIL', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DUPLICATE_FEED_NAME', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_FEED_NAME', index=14, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MISSING_OAUTH_INFO', index=15, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY', index=16, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TOO_MANY_ATTRIBUTES', index=17, number=17, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_BUSINESS_ACCOUNT', index=18, number=18, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT', index=19, number=19, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_AFFILIATE_CHAIN_ID', index=20, number=20, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=108, + serialized_end=824, +) +_sym_db.RegisterEnumDescriptor(_FEEDERRORENUM_FEEDERROR) + + +_FEEDERRORENUM = _descriptor.Descriptor( + name='FeedErrorEnum', + full_name='google.ads.googleads.v0.errors.FeedErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _FEEDERRORENUM_FEEDERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=90, + serialized_end=824, +) + +_FEEDERRORENUM_FEEDERROR.containing_type = _FEEDERRORENUM +DESCRIPTOR.message_types_by_name['FeedErrorEnum'] = _FEEDERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +FeedErrorEnum = _reflection.GeneratedProtocolMessageType('FeedErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _FEEDERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.feed_error_pb2' + , + __doc__ = """Container for enum describing possible feed errors. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.FeedErrorEnum) + )) +_sym_db.RegisterMessage(FeedErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\016FeedErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/feed_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/feed_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/feed_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/feed_item_error_pb2.py b/google/ads/google_ads/v0/proto/errors/feed_item_error_pb2.py new file mode 100644 index 000000000..992d899b6 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/feed_item_error_pb2.py @@ -0,0 +1,127 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/feed_item_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/feed_item_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\n:google/ads/googleads_v0/proto/errors/feed_item_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\x87\x03\n\x11\x46\x65\x65\x64ItemErrorEnum\"\xf1\x02\n\rFeedItemError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12.\n*CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING\x10\x02\x12\'\n#CANNOT_OPERATE_ON_REMOVED_FEED_ITEM\x10\x03\x12*\n&DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE\x10\x04\x12\x1c\n\x18KEY_ATTRIBUTES_NOT_FOUND\x10\x05\x12\x0f\n\x0bINVALID_URL\x10\x06\x12\x1a\n\x16MISSING_KEY_ATTRIBUTES\x10\x07\x12\x1d\n\x19KEY_ATTRIBUTES_NOT_UNIQUE\x10\x08\x12%\n!CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE\x10\t\x12,\n(SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE\x10\nB\xc8\x01\n\"com.google.ads.googleads.v0.errorsB\x12\x46\x65\x65\x64ItemErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_FEEDITEMERRORENUM_FEEDITEMERROR = _descriptor.EnumDescriptor( + name='FeedItemError', + full_name='google.ads.googleads.v0.errors.FeedItemErrorEnum.FeedItemError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_OPERATE_ON_REMOVED_FEED_ITEM', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEY_ATTRIBUTES_NOT_FOUND', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_URL', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MISSING_KEY_ATTRIBUTES', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEY_ATTRIBUTES_NOT_UNIQUE', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE', index=10, number=10, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=117, + serialized_end=486, +) +_sym_db.RegisterEnumDescriptor(_FEEDITEMERRORENUM_FEEDITEMERROR) + + +_FEEDITEMERRORENUM = _descriptor.Descriptor( + name='FeedItemErrorEnum', + full_name='google.ads.googleads.v0.errors.FeedItemErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _FEEDITEMERRORENUM_FEEDITEMERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=95, + serialized_end=486, +) + +_FEEDITEMERRORENUM_FEEDITEMERROR.containing_type = _FEEDITEMERRORENUM +DESCRIPTOR.message_types_by_name['FeedItemErrorEnum'] = _FEEDITEMERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +FeedItemErrorEnum = _reflection.GeneratedProtocolMessageType('FeedItemErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _FEEDITEMERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.feed_item_error_pb2' + , + __doc__ = """Container for enum describing possible feed item errors. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.FeedItemErrorEnum) + )) +_sym_db.RegisterMessage(FeedItemErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\022FeedItemErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/feed_item_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/feed_item_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/feed_item_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/feed_mapping_error_pb2.py b/google/ads/google_ads/v0/proto/errors/feed_mapping_error_pb2.py new file mode 100644 index 000000000..628426ac0 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/feed_mapping_error_pb2.py @@ -0,0 +1,155 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/feed_mapping_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/feed_mapping_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\n=google/ads/googleads_v0/proto/errors/feed_mapping_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xe7\x05\n\x14\x46\x65\x65\x64MappingErrorEnum\"\xce\x05\n\x10\x46\x65\x65\x64MappingError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1d\n\x19INVALID_PLACEHOLDER_FIELD\x10\x02\x12\x1b\n\x17INVALID_CRITERION_FIELD\x10\x03\x12\x1c\n\x18INVALID_PLACEHOLDER_TYPE\x10\x04\x12\x1a\n\x16INVALID_CRITERION_TYPE\x10\x05\x12\x1f\n\x1bNO_ATTRIBUTE_FIELD_MAPPINGS\x10\x07\x12 \n\x1c\x46\x45\x45\x44_ATTRIBUTE_TYPE_MISMATCH\x10\x08\x12\x38\n4CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED\x10\t\x12*\n&MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE\x10\n\x12(\n$MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE\x10\x0b\x12+\n\'MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD\x10\x0c\x12)\n%MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD\x10\r\x12\'\n#UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS\x10\x0e\x12.\n*LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS\x10\x0f\x12)\n%CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED\x10\x10\x12:\n6INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED\x10\x11\x12;\n7INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE\x10\x12\x42\xcb\x01\n\"com.google.ads.googleads.v0.errorsB\x15\x46\x65\x65\x64MappingErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_FEEDMAPPINGERRORENUM_FEEDMAPPINGERROR = _descriptor.EnumDescriptor( + name='FeedMappingError', + full_name='google.ads.googleads.v0.errors.FeedMappingErrorEnum.FeedMappingError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_PLACEHOLDER_FIELD', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_CRITERION_FIELD', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_PLACEHOLDER_TYPE', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_CRITERION_TYPE', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NO_ATTRIBUTE_FIELD_MAPPINGS', index=6, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FEED_ATTRIBUTE_TYPE_MISMATCH', index=7, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED', index=8, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE', index=9, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE', index=10, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD', index=11, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD', index=12, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS', index=13, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS', index=14, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED', index=15, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED', index=16, number=17, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE', index=17, number=18, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=123, + serialized_end=841, +) +_sym_db.RegisterEnumDescriptor(_FEEDMAPPINGERRORENUM_FEEDMAPPINGERROR) + + +_FEEDMAPPINGERRORENUM = _descriptor.Descriptor( + name='FeedMappingErrorEnum', + full_name='google.ads.googleads.v0.errors.FeedMappingErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _FEEDMAPPINGERRORENUM_FEEDMAPPINGERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=98, + serialized_end=841, +) + +_FEEDMAPPINGERRORENUM_FEEDMAPPINGERROR.containing_type = _FEEDMAPPINGERRORENUM +DESCRIPTOR.message_types_by_name['FeedMappingErrorEnum'] = _FEEDMAPPINGERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +FeedMappingErrorEnum = _reflection.GeneratedProtocolMessageType('FeedMappingErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _FEEDMAPPINGERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.feed_mapping_error_pb2' + , + __doc__ = """Container for enum describing possible feed item errors. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.FeedMappingErrorEnum) + )) +_sym_db.RegisterMessage(FeedMappingErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\025FeedMappingErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/feed_mapping_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/feed_mapping_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/feed_mapping_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/field_error_pb2.py b/google/ads/google_ads/v0/proto/errors/field_error_pb2.py index e32b00a1c..2a3cbc473 100644 --- a/google/ads/google_ads/v0/proto/errors/field_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/field_error_pb2.py @@ -101,7 +101,7 @@ FieldErrorEnum = _reflection.GeneratedProtocolMessageType('FieldErrorEnum', (_message.Message,), dict( DESCRIPTOR = _FIELDERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.field_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.field_error_pb2' , __doc__ = """Container for enum describing possible field errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/field_mask_error_pb2.py b/google/ads/google_ads/v0/proto/errors/field_mask_error_pb2.py index 76ec0433c..9afc4b90c 100644 --- a/google/ads/google_ads/v0/proto/errors/field_mask_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/field_mask_error_pb2.py @@ -93,7 +93,7 @@ FieldMaskErrorEnum = _reflection.GeneratedProtocolMessageType('FieldMaskErrorEnum', (_message.Message,), dict( DESCRIPTOR = _FIELDMASKERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.field_mask_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.field_mask_error_pb2' , __doc__ = """Container for enum describing possible field mask errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/function_error_pb2.py b/google/ads/google_ads/v0/proto/errors/function_error_pb2.py index f3dfe726b..cb868d12d 100644 --- a/google/ads/google_ads/v0/proto/errors/function_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/function_error_pb2.py @@ -141,7 +141,7 @@ FunctionErrorEnum = _reflection.GeneratedProtocolMessageType('FunctionErrorEnum', (_message.Message,), dict( DESCRIPTOR = _FUNCTIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.function_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.function_error_pb2' , __doc__ = """Container for enum describing possible function errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/function_parsing_error_pb2.py b/google/ads/google_ads/v0/proto/errors/function_parsing_error_pb2.py index 312b3e586..313337499 100644 --- a/google/ads/google_ads/v0/proto/errors/function_parsing_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/function_parsing_error_pb2.py @@ -121,7 +121,7 @@ FunctionParsingErrorEnum = _reflection.GeneratedProtocolMessageType('FunctionParsingErrorEnum', (_message.Message,), dict( DESCRIPTOR = _FUNCTIONPARSINGERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.function_parsing_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.function_parsing_error_pb2' , __doc__ = """Container for enum describing possible function parsing errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/geo_target_constant_suggestion_error_pb2.py b/google/ads/google_ads/v0/proto/errors/geo_target_constant_suggestion_error_pb2.py index 45a7e1486..f39acc873 100644 --- a/google/ads/google_ads/v0/proto/errors/geo_target_constant_suggestion_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/geo_target_constant_suggestion_error_pb2.py @@ -93,7 +93,7 @@ GeoTargetConstantSuggestionErrorEnum = _reflection.GeneratedProtocolMessageType('GeoTargetConstantSuggestionErrorEnum', (_message.Message,), dict( DESCRIPTOR = _GEOTARGETCONSTANTSUGGESTIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.geo_target_constant_suggestion_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.geo_target_constant_suggestion_error_pb2' , __doc__ = """Container for enum describing possible geo target constant suggestion errors. diff --git a/google/ads/google_ads/v0/proto/errors/header_error_pb2.py b/google/ads/google_ads/v0/proto/errors/header_error_pb2.py index ed96bdff7..274ca561e 100644 --- a/google/ads/google_ads/v0/proto/errors/header_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/header_error_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/errors/header_error.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\n7google/ads/googleads_v0/proto/errors/header_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"]\n\x0fHeaderErrorEnum\"J\n\x0bHeaderError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1d\n\x19INVALID_LOGIN_CUSTOMER_ID\x10\x03\x42\xc6\x01\n\"com.google.ads.googleads.v0.errorsB\x10HeaderErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\n7google/ads/googleads_v0/proto/errors/header_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"v\n\x0fHeaderErrorEnum\"c\n\x0bHeaderError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1d\n\x19INVALID_LOGIN_CUSTOMER_ID\x10\x03\x12\x17\n\x13MALFORMED_TASK_INFO\x10\x04\x42\xc6\x01\n\"com.google.ads.googleads.v0.errorsB\x10HeaderErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') ) @@ -42,11 +42,15 @@ name='INVALID_LOGIN_CUSTOMER_ID', index=2, number=3, options=None, type=None), + _descriptor.EnumValueDescriptor( + name='MALFORMED_TASK_INFO', index=3, number=4, + options=None, + type=None), ], containing_type=None, options=None, serialized_start=110, - serialized_end=184, + serialized_end=209, ) _sym_db.RegisterEnumDescriptor(_HEADERERRORENUM_HEADERERROR) @@ -72,7 +76,7 @@ oneofs=[ ], serialized_start=91, - serialized_end=184, + serialized_end=209, ) _HEADERERRORENUM_HEADERERROR.containing_type = _HEADERERRORENUM @@ -81,7 +85,7 @@ HeaderErrorEnum = _reflection.GeneratedProtocolMessageType('HeaderErrorEnum', (_message.Message,), dict( DESCRIPTOR = _HEADERERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.header_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.header_error_pb2' , __doc__ = """Container for enum describing possible header errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/id_error_pb2.py b/google/ads/google_ads/v0/proto/errors/id_error_pb2.py index 28dadf3b8..266569c13 100644 --- a/google/ads/google_ads/v0/proto/errors/id_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/id_error_pb2.py @@ -81,7 +81,7 @@ IdErrorEnum = _reflection.GeneratedProtocolMessageType('IdErrorEnum', (_message.Message,), dict( DESCRIPTOR = _IDERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.id_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.id_error_pb2' , __doc__ = """Container for enum describing possible id errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/image_error_pb2.py b/google/ads/google_ads/v0/proto/errors/image_error_pb2.py index 6eafbf5d8..bb579cd3c 100644 --- a/google/ads/google_ads/v0/proto/errors/image_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/image_error_pb2.py @@ -225,7 +225,7 @@ ImageErrorEnum = _reflection.GeneratedProtocolMessageType('ImageErrorEnum', (_message.Message,), dict( DESCRIPTOR = _IMAGEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.image_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.image_error_pb2' , __doc__ = """Container for enum describing possible image errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/internal_error_pb2.py b/google/ads/google_ads/v0/proto/errors/internal_error_pb2.py index d6e647251..e407e3b74 100644 --- a/google/ads/google_ads/v0/proto/errors/internal_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/internal_error_pb2.py @@ -89,7 +89,7 @@ InternalErrorEnum = _reflection.GeneratedProtocolMessageType('InternalErrorEnum', (_message.Message,), dict( DESCRIPTOR = _INTERNALERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.internal_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.internal_error_pb2' , __doc__ = """Container for enum describing possible internal errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_ad_group_error_pb2.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_ad_group_error_pb2.py new file mode 100644 index 000000000..1546882e2 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_ad_group_error_pb2.py @@ -0,0 +1,100 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/keyword_plan_ad_group_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/keyword_plan_ad_group_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\nFgoogle/ads/googleads_v0/proto/errors/keyword_plan_ad_group_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"|\n\x1bKeywordPlanAdGroupErrorEnum\"]\n\x17KeywordPlanAdGroupError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x10\n\x0cINVALID_NAME\x10\x02\x12\x12\n\x0e\x44UPLICATE_NAME\x10\x03\x42\xd2\x01\n\"com.google.ads.googleads.v0.errorsB\x1cKeywordPlanAdGroupErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_KEYWORDPLANADGROUPERRORENUM_KEYWORDPLANADGROUPERROR = _descriptor.EnumDescriptor( + name='KeywordPlanAdGroupError', + full_name='google.ads.googleads.v0.errors.KeywordPlanAdGroupErrorEnum.KeywordPlanAdGroupError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_NAME', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DUPLICATE_NAME', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=137, + serialized_end=230, +) +_sym_db.RegisterEnumDescriptor(_KEYWORDPLANADGROUPERRORENUM_KEYWORDPLANADGROUPERROR) + + +_KEYWORDPLANADGROUPERRORENUM = _descriptor.Descriptor( + name='KeywordPlanAdGroupErrorEnum', + full_name='google.ads.googleads.v0.errors.KeywordPlanAdGroupErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _KEYWORDPLANADGROUPERRORENUM_KEYWORDPLANADGROUPERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=106, + serialized_end=230, +) + +_KEYWORDPLANADGROUPERRORENUM_KEYWORDPLANADGROUPERROR.containing_type = _KEYWORDPLANADGROUPERRORENUM +DESCRIPTOR.message_types_by_name['KeywordPlanAdGroupErrorEnum'] = _KEYWORDPLANADGROUPERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanAdGroupErrorEnum = _reflection.GeneratedProtocolMessageType('KeywordPlanAdGroupErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANADGROUPERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.keyword_plan_ad_group_error_pb2' + , + __doc__ = """Container for enum describing possible errors from applying a keyword + plan ad group. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.KeywordPlanAdGroupErrorEnum) + )) +_sym_db.RegisterMessage(KeywordPlanAdGroupErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\034KeywordPlanAdGroupErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_ad_group_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_ad_group_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_ad_group_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_campaign_error_pb2.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_campaign_error_pb2.py new file mode 100644 index 000000000..3a38951f1 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_campaign_error_pb2.py @@ -0,0 +1,112 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/keyword_plan_campaign_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/keyword_plan_campaign_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\nFgoogle/ads/googleads_v0/proto/errors/keyword_plan_campaign_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xbf\x01\n\x1cKeywordPlanCampaignErrorEnum\"\x9e\x01\n\x18KeywordPlanCampaignError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x10\n\x0cINVALID_NAME\x10\x02\x12\x15\n\x11INVALID_LANGUAGES\x10\x03\x12\x10\n\x0cINVALID_GEOS\x10\x04\x12\x12\n\x0e\x44UPLICATE_NAME\x10\x05\x12\x15\n\x11MAX_GEOS_EXCEEDED\x10\x06\x42\xd3\x01\n\"com.google.ads.googleads.v0.errorsB\x1dKeywordPlanCampaignErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_KEYWORDPLANCAMPAIGNERRORENUM_KEYWORDPLANCAMPAIGNERROR = _descriptor.EnumDescriptor( + name='KeywordPlanCampaignError', + full_name='google.ads.googleads.v0.errors.KeywordPlanCampaignErrorEnum.KeywordPlanCampaignError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_NAME', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_LANGUAGES', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_GEOS', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DUPLICATE_NAME', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MAX_GEOS_EXCEEDED', index=6, number=6, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=140, + serialized_end=298, +) +_sym_db.RegisterEnumDescriptor(_KEYWORDPLANCAMPAIGNERRORENUM_KEYWORDPLANCAMPAIGNERROR) + + +_KEYWORDPLANCAMPAIGNERRORENUM = _descriptor.Descriptor( + name='KeywordPlanCampaignErrorEnum', + full_name='google.ads.googleads.v0.errors.KeywordPlanCampaignErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _KEYWORDPLANCAMPAIGNERRORENUM_KEYWORDPLANCAMPAIGNERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=107, + serialized_end=298, +) + +_KEYWORDPLANCAMPAIGNERRORENUM_KEYWORDPLANCAMPAIGNERROR.containing_type = _KEYWORDPLANCAMPAIGNERRORENUM +DESCRIPTOR.message_types_by_name['KeywordPlanCampaignErrorEnum'] = _KEYWORDPLANCAMPAIGNERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanCampaignErrorEnum = _reflection.GeneratedProtocolMessageType('KeywordPlanCampaignErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANCAMPAIGNERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.keyword_plan_campaign_error_pb2' + , + __doc__ = """Container for enum describing possible errors from applying a keyword + plan campaign. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.KeywordPlanCampaignErrorEnum) + )) +_sym_db.RegisterMessage(KeywordPlanCampaignErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\035KeywordPlanCampaignErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_campaign_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_campaign_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_campaign_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_error_pb2.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_error_pb2.py new file mode 100644 index 000000000..dd814acba --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_error_pb2.py @@ -0,0 +1,149 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/keyword_plan_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/keyword_plan_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\n=google/ads/googleads_v0/proto/errors/keyword_plan_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xc8\x03\n\x14KeywordPlanErrorEnum\"\xaf\x03\n\x10KeywordPlanError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1f\n\x1b\x42ID_MULTIPLIER_OUT_OF_RANGE\x10\x02\x12\x10\n\x0c\x42ID_TOO_HIGH\x10\x03\x12\x0f\n\x0b\x42ID_TOO_LOW\x10\x04\x12\"\n\x1e\x42ID_TOO_MANY_FRACTIONAL_DIGITS\x10\x05\x12\x18\n\x14\x44\x41ILY_BUDGET_TOO_LOW\x10\x06\x12+\n\'DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS\x10\x07\x12\x11\n\rINVALID_VALUE\x10\x08\x12 \n\x1cKEYWORD_PLAN_HAS_NO_KEYWORDS\x10\t\x12\x1c\n\x18KEYWORD_PLAN_NOT_ENABLED\x10\n\x12\x1a\n\x16KEYWORD_PLAN_NOT_FOUND\x10\x0b\x12\x0f\n\x0bMISSING_BID\x10\r\x12\x1b\n\x17MISSING_FORECAST_PERIOD\x10\x0e\x12\x1f\n\x1bINVALID_FORECAST_DATE_RANGE\x10\x0f\x12\x10\n\x0cINVALID_NAME\x10\x10\x42\xcb\x01\n\"com.google.ads.googleads.v0.errorsB\x15KeywordPlanErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_KEYWORDPLANERRORENUM_KEYWORDPLANERROR = _descriptor.EnumDescriptor( + name='KeywordPlanError', + full_name='google.ads.googleads.v0.errors.KeywordPlanErrorEnum.KeywordPlanError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BID_MULTIPLIER_OUT_OF_RANGE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BID_TOO_HIGH', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BID_TOO_LOW', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BID_TOO_MANY_FRACTIONAL_DIGITS', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DAILY_BUDGET_TOO_LOW', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_VALUE', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEYWORD_PLAN_HAS_NO_KEYWORDS', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEYWORD_PLAN_NOT_ENABLED', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEYWORD_PLAN_NOT_FOUND', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MISSING_BID', index=12, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MISSING_FORECAST_PERIOD', index=13, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_FORECAST_DATE_RANGE', index=14, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_NAME', index=15, number=16, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=123, + serialized_end=554, +) +_sym_db.RegisterEnumDescriptor(_KEYWORDPLANERRORENUM_KEYWORDPLANERROR) + + +_KEYWORDPLANERRORENUM = _descriptor.Descriptor( + name='KeywordPlanErrorEnum', + full_name='google.ads.googleads.v0.errors.KeywordPlanErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _KEYWORDPLANERRORENUM_KEYWORDPLANERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=98, + serialized_end=554, +) + +_KEYWORDPLANERRORENUM_KEYWORDPLANERROR.containing_type = _KEYWORDPLANERRORENUM +DESCRIPTOR.message_types_by_name['KeywordPlanErrorEnum'] = _KEYWORDPLANERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanErrorEnum = _reflection.GeneratedProtocolMessageType('KeywordPlanErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.keyword_plan_error_pb2' + , + __doc__ = """Container for enum describing possible errors from applying a keyword + plan resource (keyword plan, keyword plan campaign, keyword plan ad + group or keyword plan keyword) or KeywordPlanService RPC. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.KeywordPlanErrorEnum) + )) +_sym_db.RegisterMessage(KeywordPlanErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\025KeywordPlanErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_idea_error_pb2.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_idea_error_pb2.py new file mode 100644 index 000000000..ed3a639d1 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_idea_error_pb2.py @@ -0,0 +1,100 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/keyword_plan_idea_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/keyword_plan_idea_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\nBgoogle/ads/googleads_v0/proto/errors/keyword_plan_idea_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"x\n\x18KeywordPlanIdeaErrorEnum\"\\\n\x14KeywordPlanIdeaError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x13\n\x0fURL_CRAWL_ERROR\x10\x02\x12\x11\n\rINVALID_VALUE\x10\x03\x42\xcf\x01\n\"com.google.ads.googleads.v0.errorsB\x19KeywordPlanIdeaErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_KEYWORDPLANIDEAERRORENUM_KEYWORDPLANIDEAERROR = _descriptor.EnumDescriptor( + name='KeywordPlanIdeaError', + full_name='google.ads.googleads.v0.errors.KeywordPlanIdeaErrorEnum.KeywordPlanIdeaError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='URL_CRAWL_ERROR', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_VALUE', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=130, + serialized_end=222, +) +_sym_db.RegisterEnumDescriptor(_KEYWORDPLANIDEAERRORENUM_KEYWORDPLANIDEAERROR) + + +_KEYWORDPLANIDEAERRORENUM = _descriptor.Descriptor( + name='KeywordPlanIdeaErrorEnum', + full_name='google.ads.googleads.v0.errors.KeywordPlanIdeaErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _KEYWORDPLANIDEAERRORENUM_KEYWORDPLANIDEAERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=102, + serialized_end=222, +) + +_KEYWORDPLANIDEAERRORENUM_KEYWORDPLANIDEAERROR.containing_type = _KEYWORDPLANIDEAERRORENUM +DESCRIPTOR.message_types_by_name['KeywordPlanIdeaErrorEnum'] = _KEYWORDPLANIDEAERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanIdeaErrorEnum = _reflection.GeneratedProtocolMessageType('KeywordPlanIdeaErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANIDEAERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.keyword_plan_idea_error_pb2' + , + __doc__ = """Container for enum describing possible errors from + KeywordPlanIdeaService. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.KeywordPlanIdeaErrorEnum) + )) +_sym_db.RegisterMessage(KeywordPlanIdeaErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\031KeywordPlanIdeaErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_idea_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_idea_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_idea_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_keyword_error_pb2.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_keyword_error_pb2.py new file mode 100644 index 000000000..d7c8e46a6 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_keyword_error_pb2.py @@ -0,0 +1,116 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/keyword_plan_keyword_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/keyword_plan_keyword_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\nEgoogle/ads/googleads_v0/proto/errors/keyword_plan_keyword_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\x82\x02\n\x1bKeywordPlanKeywordErrorEnum\"\xe2\x01\n\x17KeywordPlanKeywordError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1e\n\x1aINVALID_KEYWORD_MATCH_TYPE\x10\x02\x12\x15\n\x11\x44UPLICATE_KEYWORD\x10\x03\x12\x19\n\x15KEYWORD_TEXT_TOO_LONG\x10\x04\x12\x1d\n\x19KEYWORD_HAS_INVALID_CHARS\x10\x05\x12\x1e\n\x1aKEYWORD_HAS_TOO_MANY_WORDS\x10\x06\x12\x18\n\x14INVALID_KEYWORD_TEXT\x10\x07\x42\xd2\x01\n\"com.google.ads.googleads.v0.errorsB\x1cKeywordPlanKeywordErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_KEYWORDPLANKEYWORDERRORENUM_KEYWORDPLANKEYWORDERROR = _descriptor.EnumDescriptor( + name='KeywordPlanKeywordError', + full_name='google.ads.googleads.v0.errors.KeywordPlanKeywordErrorEnum.KeywordPlanKeywordError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_KEYWORD_MATCH_TYPE', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DUPLICATE_KEYWORD', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEYWORD_TEXT_TOO_LONG', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEYWORD_HAS_INVALID_CHARS', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='KEYWORD_HAS_TOO_MANY_WORDS', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_KEYWORD_TEXT', index=7, number=7, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=138, + serialized_end=364, +) +_sym_db.RegisterEnumDescriptor(_KEYWORDPLANKEYWORDERRORENUM_KEYWORDPLANKEYWORDERROR) + + +_KEYWORDPLANKEYWORDERRORENUM = _descriptor.Descriptor( + name='KeywordPlanKeywordErrorEnum', + full_name='google.ads.googleads.v0.errors.KeywordPlanKeywordErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _KEYWORDPLANKEYWORDERRORENUM_KEYWORDPLANKEYWORDERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=106, + serialized_end=364, +) + +_KEYWORDPLANKEYWORDERRORENUM_KEYWORDPLANKEYWORDERROR.containing_type = _KEYWORDPLANKEYWORDERRORENUM +DESCRIPTOR.message_types_by_name['KeywordPlanKeywordErrorEnum'] = _KEYWORDPLANKEYWORDERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanKeywordErrorEnum = _reflection.GeneratedProtocolMessageType('KeywordPlanKeywordErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANKEYWORDERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.keyword_plan_keyword_error_pb2' + , + __doc__ = """Container for enum describing possible errors from applying a keyword or + a negative keyword from a keyword plan. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.KeywordPlanKeywordErrorEnum) + )) +_sym_db.RegisterMessage(KeywordPlanKeywordErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\034KeywordPlanKeywordErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_keyword_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_keyword_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_keyword_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_negative_keyword_error_pb2.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_negative_keyword_error_pb2.py new file mode 100644 index 000000000..473b163ed --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_negative_keyword_error_pb2.py @@ -0,0 +1,92 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/keyword_plan_negative_keyword_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/keyword_plan_negative_keyword_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\nNgoogle/ads/googleads_v0/proto/errors/keyword_plan_negative_keyword_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"f\n#KeywordPlanNegativeKeywordErrorEnum\"?\n\x1fKeywordPlanNegativeKeywordError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x42\xda\x01\n\"com.google.ads.googleads.v0.errorsB$KeywordPlanNegativeKeywordErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_KEYWORDPLANNEGATIVEKEYWORDERRORENUM_KEYWORDPLANNEGATIVEKEYWORDERROR = _descriptor.EnumDescriptor( + name='KeywordPlanNegativeKeywordError', + full_name='google.ads.googleads.v0.errors.KeywordPlanNegativeKeywordErrorEnum.KeywordPlanNegativeKeywordError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=153, + serialized_end=216, +) +_sym_db.RegisterEnumDescriptor(_KEYWORDPLANNEGATIVEKEYWORDERRORENUM_KEYWORDPLANNEGATIVEKEYWORDERROR) + + +_KEYWORDPLANNEGATIVEKEYWORDERRORENUM = _descriptor.Descriptor( + name='KeywordPlanNegativeKeywordErrorEnum', + full_name='google.ads.googleads.v0.errors.KeywordPlanNegativeKeywordErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _KEYWORDPLANNEGATIVEKEYWORDERRORENUM_KEYWORDPLANNEGATIVEKEYWORDERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=114, + serialized_end=216, +) + +_KEYWORDPLANNEGATIVEKEYWORDERRORENUM_KEYWORDPLANNEGATIVEKEYWORDERROR.containing_type = _KEYWORDPLANNEGATIVEKEYWORDERRORENUM +DESCRIPTOR.message_types_by_name['KeywordPlanNegativeKeywordErrorEnum'] = _KEYWORDPLANNEGATIVEKEYWORDERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanNegativeKeywordErrorEnum = _reflection.GeneratedProtocolMessageType('KeywordPlanNegativeKeywordErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANNEGATIVEKEYWORDERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.keyword_plan_negative_keyword_error_pb2' + , + __doc__ = """Container for enum describing possible errors from applying a keyword + plan negative keyword. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.KeywordPlanNegativeKeywordErrorEnum) + )) +_sym_db.RegisterMessage(KeywordPlanNegativeKeywordErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB$KeywordPlanNegativeKeywordErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/keyword_plan_negative_keyword_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/keyword_plan_negative_keyword_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/keyword_plan_negative_keyword_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/errors/list_operation_error_pb2.py b/google/ads/google_ads/v0/proto/errors/list_operation_error_pb2.py index fda007e39..0bf079104 100644 --- a/google/ads/google_ads/v0/proto/errors/list_operation_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/list_operation_error_pb2.py @@ -85,7 +85,7 @@ ListOperationErrorEnum = _reflection.GeneratedProtocolMessageType('ListOperationErrorEnum', (_message.Message,), dict( DESCRIPTOR = _LISTOPERATIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.list_operation_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.list_operation_error_pb2' , __doc__ = """Container for enum describing possible list operation errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/media_bundle_error_pb2.py b/google/ads/google_ads/v0/proto/errors/media_bundle_error_pb2.py index c86b447c0..f932e7a8b 100644 --- a/google/ads/google_ads/v0/proto/errors/media_bundle_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/media_bundle_error_pb2.py @@ -165,7 +165,7 @@ MediaBundleErrorEnum = _reflection.GeneratedProtocolMessageType('MediaBundleErrorEnum', (_message.Message,), dict( DESCRIPTOR = _MEDIABUNDLEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.media_bundle_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.media_bundle_error_pb2' , __doc__ = """Container for enum describing possible media bundle errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/media_file_error_pb2.py b/google/ads/google_ads/v0/proto/errors/media_file_error_pb2.py index edfb6f966..ee4435ae6 100644 --- a/google/ads/google_ads/v0/proto/errors/media_file_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/media_file_error_pb2.py @@ -169,7 +169,7 @@ MediaFileErrorEnum = _reflection.GeneratedProtocolMessageType('MediaFileErrorEnum', (_message.Message,), dict( DESCRIPTOR = _MEDIAFILEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.media_file_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.media_file_error_pb2' , __doc__ = """Container for enum describing possible media file errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/multiplier_error_pb2.py b/google/ads/google_ads/v0/proto/errors/multiplier_error_pb2.py index a9a68cd60..7b8ae7194 100644 --- a/google/ads/google_ads/v0/proto/errors/multiplier_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/multiplier_error_pb2.py @@ -125,7 +125,7 @@ MultiplierErrorEnum = _reflection.GeneratedProtocolMessageType('MultiplierErrorEnum', (_message.Message,), dict( DESCRIPTOR = _MULTIPLIERERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.multiplier_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.multiplier_error_pb2' , __doc__ = """Container for enum describing possible multiplier errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/mutate_error_pb2.py b/google/ads/google_ads/v0/proto/errors/mutate_error_pb2.py index 1ffc878d9..d6ae32d8a 100644 --- a/google/ads/google_ads/v0/proto/errors/mutate_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/mutate_error_pb2.py @@ -93,7 +93,7 @@ MutateErrorEnum = _reflection.GeneratedProtocolMessageType('MutateErrorEnum', (_message.Message,), dict( DESCRIPTOR = _MUTATEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.mutate_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.mutate_error_pb2' , __doc__ = """Container for enum describing possible mutate errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/new_resource_creation_error_pb2.py b/google/ads/google_ads/v0/proto/errors/new_resource_creation_error_pb2.py index cb0751ab9..0e5db05d0 100644 --- a/google/ads/google_ads/v0/proto/errors/new_resource_creation_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/new_resource_creation_error_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/errors/new_resource_creation_error.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\nFgoogle/ads/googleads_v0/proto/errors/new_resource_creation_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xad\x01\n\x1cNewResourceCreationErrorEnum\"\x8c\x01\n\x18NewResourceCreationError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x19\n\x15\x43\x41NNOT_SET_ID_FOR_ADD\x10\x02\x12\x16\n\x12\x44UPLICATE_TEMP_IDS\x10\x03\x12\x1f\n\x1bTEMP_ID_RESOURCE_HAD_ERRORS\x10\x04\x42\xd3\x01\n\"com.google.ads.googleads.v0.errorsB\x1dNewResourceCreationErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\nFgoogle/ads/googleads_v0/proto/errors/new_resource_creation_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xb0\x01\n\x1cNewResourceCreationErrorEnum\"\x8f\x01\n\x18NewResourceCreationError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1c\n\x18\x43\x41NNOT_SET_ID_FOR_CREATE\x10\x02\x12\x16\n\x12\x44UPLICATE_TEMP_IDS\x10\x03\x12\x1f\n\x1bTEMP_ID_RESOURCE_HAD_ERRORS\x10\x04\x42\xd3\x01\n\"com.google.ads.googleads.v0.errorsB\x1dNewResourceCreationErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') ) @@ -39,7 +39,7 @@ options=None, type=None), _descriptor.EnumValueDescriptor( - name='CANNOT_SET_ID_FOR_ADD', index=2, number=2, + name='CANNOT_SET_ID_FOR_CREATE', index=2, number=2, options=None, type=None), _descriptor.EnumValueDescriptor( @@ -54,7 +54,7 @@ containing_type=None, options=None, serialized_start=140, - serialized_end=280, + serialized_end=283, ) _sym_db.RegisterEnumDescriptor(_NEWRESOURCECREATIONERRORENUM_NEWRESOURCECREATIONERROR) @@ -80,7 +80,7 @@ oneofs=[ ], serialized_start=107, - serialized_end=280, + serialized_end=283, ) _NEWRESOURCECREATIONERRORENUM_NEWRESOURCECREATIONERROR.containing_type = _NEWRESOURCECREATIONERRORENUM @@ -89,7 +89,7 @@ NewResourceCreationErrorEnum = _reflection.GeneratedProtocolMessageType('NewResourceCreationErrorEnum', (_message.Message,), dict( DESCRIPTOR = _NEWRESOURCECREATIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.new_resource_creation_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.new_resource_creation_error_pb2' , __doc__ = """Container for enum describing possible new resource creation errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/not_empty_error_pb2.py b/google/ads/google_ads/v0/proto/errors/not_empty_error_pb2.py index 0a68c0826..89ad2e8e4 100644 --- a/google/ads/google_ads/v0/proto/errors/not_empty_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/not_empty_error_pb2.py @@ -81,7 +81,7 @@ NotEmptyErrorEnum = _reflection.GeneratedProtocolMessageType('NotEmptyErrorEnum', (_message.Message,), dict( DESCRIPTOR = _NOTEMPTYERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.not_empty_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.not_empty_error_pb2' , __doc__ = """Container for enum describing possible not empty errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/null_error_pb2.py b/google/ads/google_ads/v0/proto/errors/null_error_pb2.py index ebfddf76d..214065c68 100644 --- a/google/ads/google_ads/v0/proto/errors/null_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/null_error_pb2.py @@ -81,7 +81,7 @@ NullErrorEnum = _reflection.GeneratedProtocolMessageType('NullErrorEnum', (_message.Message,), dict( DESCRIPTOR = _NULLERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.null_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.null_error_pb2' , __doc__ = """Container for enum describing possible null errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/operation_access_denied_error_pb2.py b/google/ads/google_ads/v0/proto/errors/operation_access_denied_error_pb2.py index 0e31d0d9d..d44d0c642 100644 --- a/google/ads/google_ads/v0/proto/errors/operation_access_denied_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/operation_access_denied_error_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/errors/operation_access_denied_error.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\nHgoogle/ads/googleads_v0/proto/errors/operation_access_denied_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xc4\x03\n\x1eOperationAccessDeniedErrorEnum\"\xa1\x03\n\x1aOperationAccessDeniedError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x18\n\x14\x41\x43TION_NOT_PERMITTED\x10\x02\x12\"\n\x1e\x43REATE_OPERATION_NOT_PERMITTED\x10\x03\x12\"\n\x1eREMOVE_OPERATION_NOT_PERMITTED\x10\x04\x12\"\n\x1eUPDATE_OPERATION_NOT_PERMITTED\x10\x05\x12*\n&MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT\x10\x06\x12-\n)OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE\x10\x07\x12#\n\x1f\x43REATE_AS_REMOVED_NOT_PERMITTED\x10\x08\x12\x30\n,OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE\x10\t\x12-\n)OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE\x10\nB\xd5\x01\n\"com.google.ads.googleads.v0.errorsB\x1fOperationAccessDeniedErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\nHgoogle/ads/googleads_v0/proto/errors/operation_access_denied_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xeb\x03\n\x1eOperationAccessDeniedErrorEnum\"\xc8\x03\n\x1aOperationAccessDeniedError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x18\n\x14\x41\x43TION_NOT_PERMITTED\x10\x02\x12\"\n\x1e\x43REATE_OPERATION_NOT_PERMITTED\x10\x03\x12\"\n\x1eREMOVE_OPERATION_NOT_PERMITTED\x10\x04\x12\"\n\x1eUPDATE_OPERATION_NOT_PERMITTED\x10\x05\x12*\n&MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT\x10\x06\x12-\n)OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE\x10\x07\x12#\n\x1f\x43REATE_AS_REMOVED_NOT_PERMITTED\x10\x08\x12\x30\n,OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE\x10\t\x12-\n)OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE\x10\n\x12%\n!MUTATE_NOT_PERMITTED_FOR_CUSTOMER\x10\x0b\x42\xd5\x01\n\"com.google.ads.googleads.v0.errorsB\x1fOperationAccessDeniedErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') ) @@ -74,11 +74,15 @@ name='OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE', index=10, number=10, options=None, type=None), + _descriptor.EnumValueDescriptor( + name='MUTATE_NOT_PERMITTED_FOR_CUSTOMER', index=11, number=11, + options=None, + type=None), ], containing_type=None, options=None, serialized_start=144, - serialized_end=561, + serialized_end=600, ) _sym_db.RegisterEnumDescriptor(_OPERATIONACCESSDENIEDERRORENUM_OPERATIONACCESSDENIEDERROR) @@ -104,7 +108,7 @@ oneofs=[ ], serialized_start=109, - serialized_end=561, + serialized_end=600, ) _OPERATIONACCESSDENIEDERRORENUM_OPERATIONACCESSDENIEDERROR.containing_type = _OPERATIONACCESSDENIEDERRORENUM @@ -113,7 +117,7 @@ OperationAccessDeniedErrorEnum = _reflection.GeneratedProtocolMessageType('OperationAccessDeniedErrorEnum', (_message.Message,), dict( DESCRIPTOR = _OPERATIONACCESSDENIEDERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.operation_access_denied_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.operation_access_denied_error_pb2' , __doc__ = """Container for enum describing possible operation access denied errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/operator_error_pb2.py b/google/ads/google_ads/v0/proto/errors/operator_error_pb2.py index d7ed6b850..8c5216a33 100644 --- a/google/ads/google_ads/v0/proto/errors/operator_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/operator_error_pb2.py @@ -81,7 +81,7 @@ OperatorErrorEnum = _reflection.GeneratedProtocolMessageType('OperatorErrorEnum', (_message.Message,), dict( DESCRIPTOR = _OPERATORERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.operator_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.operator_error_pb2' , __doc__ = """Container for enum describing possible operator errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/policy_finding_error_pb2.py b/google/ads/google_ads/v0/proto/errors/policy_finding_error_pb2.py index 564f23adc..c3ac0dbb0 100644 --- a/google/ads/google_ads/v0/proto/errors/policy_finding_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/policy_finding_error_pb2.py @@ -85,7 +85,7 @@ PolicyFindingErrorEnum = _reflection.GeneratedProtocolMessageType('PolicyFindingErrorEnum', (_message.Message,), dict( DESCRIPTOR = _POLICYFINDINGERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.policy_finding_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.policy_finding_error_pb2' , __doc__ = """Container for enum describing possible policy finding errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/query_error_pb2.py b/google/ads/google_ads/v0/proto/errors/query_error_pb2.py index 42d1d6eb0..2c4e8e017 100644 --- a/google/ads/google_ads/v0/proto/errors/query_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/query_error_pb2.py @@ -273,7 +273,7 @@ QueryErrorEnum = _reflection.GeneratedProtocolMessageType('QueryErrorEnum', (_message.Message,), dict( DESCRIPTOR = _QUERYERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.query_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.query_error_pb2' , __doc__ = """Container for enum describing possible query errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/quota_error_pb2.py b/google/ads/google_ads/v0/proto/errors/quota_error_pb2.py index 85331baae..e0c6ce85f 100644 --- a/google/ads/google_ads/v0/proto/errors/quota_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/quota_error_pb2.py @@ -89,7 +89,7 @@ QuotaErrorEnum = _reflection.GeneratedProtocolMessageType('QuotaErrorEnum', (_message.Message,), dict( DESCRIPTOR = _QUOTAERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.quota_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.quota_error_pb2' , __doc__ = """Container for enum describing possible quota errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/range_error_pb2.py b/google/ads/google_ads/v0/proto/errors/range_error_pb2.py index 21d3ed61d..596f0a1c0 100644 --- a/google/ads/google_ads/v0/proto/errors/range_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/range_error_pb2.py @@ -85,7 +85,7 @@ RangeErrorEnum = _reflection.GeneratedProtocolMessageType('RangeErrorEnum', (_message.Message,), dict( DESCRIPTOR = _RANGEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.range_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.range_error_pb2' , __doc__ = """Container for enum describing possible range errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/recommendation_error_pb2.py b/google/ads/google_ads/v0/proto/errors/recommendation_error_pb2.py index 4705fe2bb..3b2e53236 100644 --- a/google/ads/google_ads/v0/proto/errors/recommendation_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/recommendation_error_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/errors/recommendation_error.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\n?google/ads/googleads_v0/proto/errors/recommendation_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xad\x02\n\x17RecommendationErrorEnum\"\x91\x02\n\x13RecommendationError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1b\n\x17\x42UDGET_AMOUNT_TOO_SMALL\x10\x02\x12\x1b\n\x17\x42UDGET_AMOUNT_TOO_LARGE\x10\x03\x12\x19\n\x15INVALID_BUDGET_AMOUNT\x10\x04\x12\x10\n\x0cPOLICY_ERROR\x10\x05\x12\x16\n\x12INVALID_BID_AMOUNT\x10\x06\x12\x19\n\x15\x41\x44GROUP_KEYWORD_LIMIT\x10\x07\x12\"\n\x1eRECOMMENDATION_ALREADY_APPLIED\x10\x08\x12\x1e\n\x1aRECOMMENDATION_INVALIDATED\x10\tB\xce\x01\n\"com.google.ads.googleads.v0.errorsB\x18RecommendationErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\n?google/ads/googleads_v0/proto/errors/recommendation_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xbf\x03\n\x17RecommendationErrorEnum\"\xa3\x03\n\x13RecommendationError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x1b\n\x17\x42UDGET_AMOUNT_TOO_SMALL\x10\x02\x12\x1b\n\x17\x42UDGET_AMOUNT_TOO_LARGE\x10\x03\x12\x19\n\x15INVALID_BUDGET_AMOUNT\x10\x04\x12\x10\n\x0cPOLICY_ERROR\x10\x05\x12\x16\n\x12INVALID_BID_AMOUNT\x10\x06\x12\x19\n\x15\x41\x44GROUP_KEYWORD_LIMIT\x10\x07\x12\"\n\x1eRECOMMENDATION_ALREADY_APPLIED\x10\x08\x12\x1e\n\x1aRECOMMENDATION_INVALIDATED\x10\t\x12\x17\n\x13TOO_MANY_OPERATIONS\x10\n\x12\x11\n\rNO_OPERATIONS\x10\x0b\x12!\n\x1d\x44IFFERENT_TYPES_NOT_SUPPORTED\x10\x0c\x12\x1b\n\x17\x44UPLICATE_RESOURCE_NAME\x10\r\x12$\n RECOMMENDATION_ALREADY_DISMISSED\x10\x0e\x42\xce\x01\n\"com.google.ads.googleads.v0.errorsB\x18RecommendationErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') ) @@ -70,11 +70,31 @@ name='RECOMMENDATION_INVALIDATED', index=9, number=9, options=None, type=None), + _descriptor.EnumValueDescriptor( + name='TOO_MANY_OPERATIONS', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NO_OPERATIONS', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DIFFERENT_TYPES_NOT_SUPPORTED', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DUPLICATE_RESOURCE_NAME', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='RECOMMENDATION_ALREADY_DISMISSED', index=14, number=14, + options=None, + type=None), ], containing_type=None, options=None, serialized_start=128, - serialized_end=401, + serialized_end=547, ) _sym_db.RegisterEnumDescriptor(_RECOMMENDATIONERRORENUM_RECOMMENDATIONERROR) @@ -100,7 +120,7 @@ oneofs=[ ], serialized_start=100, - serialized_end=401, + serialized_end=547, ) _RECOMMENDATIONERRORENUM_RECOMMENDATIONERROR.containing_type = _RECOMMENDATIONERRORENUM @@ -109,7 +129,7 @@ RecommendationErrorEnum = _reflection.GeneratedProtocolMessageType('RecommendationErrorEnum', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.recommendation_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.recommendation_error_pb2' , __doc__ = """Container for enum describing possible errors from applying a recommendation. diff --git a/google/ads/google_ads/v0/proto/errors/region_code_error_pb2.py b/google/ads/google_ads/v0/proto/errors/region_code_error_pb2.py index c5e75438b..975d8516c 100644 --- a/google/ads/google_ads/v0/proto/errors/region_code_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/region_code_error_pb2.py @@ -81,7 +81,7 @@ RegionCodeErrorEnum = _reflection.GeneratedProtocolMessageType('RegionCodeErrorEnum', (_message.Message,), dict( DESCRIPTOR = _REGIONCODEERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.region_code_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.region_code_error_pb2' , __doc__ = """Container for enum describing possible region code errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/request_error_pb2.py b/google/ads/google_ads/v0/proto/errors/request_error_pb2.py index b578deefe..5056d8928 100644 --- a/google/ads/google_ads/v0/proto/errors/request_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/request_error_pb2.py @@ -141,7 +141,7 @@ RequestErrorEnum = _reflection.GeneratedProtocolMessageType('RequestErrorEnum', (_message.Message,), dict( DESCRIPTOR = _REQUESTERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.request_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.request_error_pb2' , __doc__ = """Container for enum describing possible request errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/resource_access_denied_error_pb2.py b/google/ads/google_ads/v0/proto/errors/resource_access_denied_error_pb2.py index 3f055992b..1d2723f69 100644 --- a/google/ads/google_ads/v0/proto/errors/resource_access_denied_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/resource_access_denied_error_pb2.py @@ -81,7 +81,7 @@ ResourceAccessDeniedErrorEnum = _reflection.GeneratedProtocolMessageType('ResourceAccessDeniedErrorEnum', (_message.Message,), dict( DESCRIPTOR = _RESOURCEACCESSDENIEDERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.resource_access_denied_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.resource_access_denied_error_pb2' , __doc__ = """Container for enum describing possible resource access denied errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/resource_count_limit_exceeded_error_pb2.py b/google/ads/google_ads/v0/proto/errors/resource_count_limit_exceeded_error_pb2.py index 90c18f3f8..225ca59c2 100644 --- a/google/ads/google_ads/v0/proto/errors/resource_count_limit_exceeded_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/resource_count_limit_exceeded_error_pb2.py @@ -109,7 +109,7 @@ ResourceCountLimitExceededErrorEnum = _reflection.GeneratedProtocolMessageType('ResourceCountLimitExceededErrorEnum', (_message.Message,), dict( DESCRIPTOR = _RESOURCECOUNTLIMITEXCEEDEDERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.resource_count_limit_exceeded_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.resource_count_limit_exceeded_error_pb2' , __doc__ = """Container for enum describing possible resource count limit exceeded errors. diff --git a/google/ads/google_ads/v0/proto/errors/setting_error_pb2.py b/google/ads/google_ads/v0/proto/errors/setting_error_pb2.py index 08dfd628b..1d3205be3 100644 --- a/google/ads/google_ads/v0/proto/errors/setting_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/setting_error_pb2.py @@ -145,7 +145,7 @@ SettingErrorEnum = _reflection.GeneratedProtocolMessageType('SettingErrorEnum', (_message.Message,), dict( DESCRIPTOR = _SETTINGERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.setting_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.setting_error_pb2' , __doc__ = """Container for enum describing possible setting errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/shared_criterion_error_pb2.py b/google/ads/google_ads/v0/proto/errors/shared_criterion_error_pb2.py index b5e66f403..d5c2d8824 100644 --- a/google/ads/google_ads/v0/proto/errors/shared_criterion_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/shared_criterion_error_pb2.py @@ -81,7 +81,7 @@ SharedCriterionErrorEnum = _reflection.GeneratedProtocolMessageType('SharedCriterionErrorEnum', (_message.Message,), dict( DESCRIPTOR = _SHAREDCRITERIONERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.shared_criterion_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.shared_criterion_error_pb2' , __doc__ = """Container for enum describing possible shared criterion errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/shared_set_error_pb2.py b/google/ads/google_ads/v0/proto/errors/shared_set_error_pb2.py index 1cc819225..03d8cd269 100644 --- a/google/ads/google_ads/v0/proto/errors/shared_set_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/shared_set_error_pb2.py @@ -93,7 +93,7 @@ SharedSetErrorEnum = _reflection.GeneratedProtocolMessageType('SharedSetErrorEnum', (_message.Message,), dict( DESCRIPTOR = _SHAREDSETERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.shared_set_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.shared_set_error_pb2' , __doc__ = """Container for enum describing possible shared set errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/string_format_error_pb2.py b/google/ads/google_ads/v0/proto/errors/string_format_error_pb2.py index f63f0a9b9..5b4b1d69b 100644 --- a/google/ads/google_ads/v0/proto/errors/string_format_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/string_format_error_pb2.py @@ -85,7 +85,7 @@ StringFormatErrorEnum = _reflection.GeneratedProtocolMessageType('StringFormatErrorEnum', (_message.Message,), dict( DESCRIPTOR = _STRINGFORMATERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.string_format_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.string_format_error_pb2' , __doc__ = """Container for enum describing possible string format errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/string_length_error_pb2.py b/google/ads/google_ads/v0/proto/errors/string_length_error_pb2.py index c1f47772a..54fbdff0a 100644 --- a/google/ads/google_ads/v0/proto/errors/string_length_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/string_length_error_pb2.py @@ -85,7 +85,7 @@ StringLengthErrorEnum = _reflection.GeneratedProtocolMessageType('StringLengthErrorEnum', (_message.Message,), dict( DESCRIPTOR = _STRINGLENGTHERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.string_length_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.string_length_error_pb2' , __doc__ = """Container for enum describing possible string length errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/url_field_error_pb2.py b/google/ads/google_ads/v0/proto/errors/url_field_error_pb2.py index 83ec62b84..8e9359143 100644 --- a/google/ads/google_ads/v0/proto/errors/url_field_error_pb2.py +++ b/google/ads/google_ads/v0/proto/errors/url_field_error_pb2.py @@ -19,7 +19,7 @@ name='google/ads/googleads_v0/proto/errors/url_field_error.proto', package='google.ads.googleads.v0.errors', syntax='proto3', - serialized_pb=_b('\n:google/ads/googleads_v0/proto/errors/url_field_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\x9c\r\n\x11UrlFieldErrorEnum\"\x86\r\n\rUrlFieldError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12!\n\x1dINVALID_TRACKING_URL_TEMPLATE\x10\x02\x12(\n$INVALID_TAG_IN_TRACKING_URL_TEMPLATE\x10\x03\x12%\n!MISSING_TRACKING_URL_TEMPLATE_TAG\x10\x04\x12-\n)MISSING_PROTOCOL_IN_TRACKING_URL_TEMPLATE\x10\x05\x12-\n)INVALID_PROTOCOL_IN_TRACKING_URL_TEMPLATE\x10\x06\x12#\n\x1fMALFORMED_TRACKING_URL_TEMPLATE\x10\x07\x12)\n%MISSING_HOST_IN_TRACKING_URL_TEMPLATE\x10\x08\x12(\n$INVALID_TLD_IN_TRACKING_URL_TEMPLATE\x10\t\x12.\n*REDUNDANT_NESTED_TRACKING_URL_TEMPLATE_TAG\x10\n\x12\x15\n\x11INVALID_FINAL_URL\x10\x0b\x12\x1c\n\x18INVALID_TAG_IN_FINAL_URL\x10\x0c\x12\"\n\x1eREDUNDANT_NESTED_FINAL_URL_TAG\x10\r\x12!\n\x1dMISSING_PROTOCOL_IN_FINAL_URL\x10\x0e\x12!\n\x1dINVALID_PROTOCOL_IN_FINAL_URL\x10\x0f\x12\x17\n\x13MALFORMED_FINAL_URL\x10\x10\x12\x1d\n\x19MISSING_HOST_IN_FINAL_URL\x10\x11\x12\x1c\n\x18INVALID_TLD_IN_FINAL_URL\x10\x12\x12\x1c\n\x18INVALID_FINAL_MOBILE_URL\x10\x13\x12#\n\x1fINVALID_TAG_IN_FINAL_MOBILE_URL\x10\x14\x12)\n%REDUNDANT_NESTED_FINAL_MOBILE_URL_TAG\x10\x15\x12(\n$MISSING_PROTOCOL_IN_FINAL_MOBILE_URL\x10\x16\x12(\n$INVALID_PROTOCOL_IN_FINAL_MOBILE_URL\x10\x17\x12\x1e\n\x1aMALFORMED_FINAL_MOBILE_URL\x10\x18\x12$\n MISSING_HOST_IN_FINAL_MOBILE_URL\x10\x19\x12#\n\x1fINVALID_TLD_IN_FINAL_MOBILE_URL\x10\x1a\x12\x19\n\x15INVALID_FINAL_APP_URL\x10\x1b\x12 \n\x1cINVALID_TAG_IN_FINAL_APP_URL\x10\x1c\x12&\n\"REDUNDANT_NESTED_FINAL_APP_URL_TAG\x10\x1d\x12 \n\x1cMULTIPLE_APP_URLS_FOR_OSTYPE\x10\x1e\x12\x12\n\x0eINVALID_OSTYPE\x10\x1f\x12 \n\x1cINVALID_PROTOCOL_FOR_APP_URL\x10 \x12\"\n\x1eINVALID_PACKAGE_ID_FOR_APP_URL\x10!\x12-\n)URL_CUSTOM_PARAMETERS_COUNT_EXCEEDS_LIMIT\x10\"\x12\x32\n.INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_KEY\x10\'\x12\x34\n0INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_VALUE\x10(\x12-\n)INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE\x10)\x12-\n)REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG\x10*\x12\x14\n\x10MISSING_PROTOCOL\x10+\x12\x0f\n\x0bINVALID_URL\x10,\x12\x1e\n\x1a\x44\x45STINATION_URL_DEPRECATED\x10-\x12\x16\n\x12INVALID_TAG_IN_URL\x10.\x12\x13\n\x0fMISSING_URL_TAG\x10/\x12\x14\n\x10\x44UPLICATE_URL_ID\x10\x30\x12\x12\n\x0eINVALID_URL_ID\x10\x31\x12\x1e\n\x1a\x46INAL_URL_SUFFIX_MALFORMED\x10\x32\x12#\n\x1fINVALID_TAG_IN_FINAL_URL_SUFFIX\x10\x33\x42\xc8\x01\n\"com.google.ads.googleads.v0.errorsB\x12UrlFieldErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') + serialized_pb=_b('\n:google/ads/googleads_v0/proto/errors/url_field_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\x95\x0e\n\x11UrlFieldErrorEnum\"\xff\r\n\rUrlFieldError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12!\n\x1dINVALID_TRACKING_URL_TEMPLATE\x10\x02\x12(\n$INVALID_TAG_IN_TRACKING_URL_TEMPLATE\x10\x03\x12%\n!MISSING_TRACKING_URL_TEMPLATE_TAG\x10\x04\x12-\n)MISSING_PROTOCOL_IN_TRACKING_URL_TEMPLATE\x10\x05\x12-\n)INVALID_PROTOCOL_IN_TRACKING_URL_TEMPLATE\x10\x06\x12#\n\x1fMALFORMED_TRACKING_URL_TEMPLATE\x10\x07\x12)\n%MISSING_HOST_IN_TRACKING_URL_TEMPLATE\x10\x08\x12(\n$INVALID_TLD_IN_TRACKING_URL_TEMPLATE\x10\t\x12.\n*REDUNDANT_NESTED_TRACKING_URL_TEMPLATE_TAG\x10\n\x12\x15\n\x11INVALID_FINAL_URL\x10\x0b\x12\x1c\n\x18INVALID_TAG_IN_FINAL_URL\x10\x0c\x12\"\n\x1eREDUNDANT_NESTED_FINAL_URL_TAG\x10\r\x12!\n\x1dMISSING_PROTOCOL_IN_FINAL_URL\x10\x0e\x12!\n\x1dINVALID_PROTOCOL_IN_FINAL_URL\x10\x0f\x12\x17\n\x13MALFORMED_FINAL_URL\x10\x10\x12\x1d\n\x19MISSING_HOST_IN_FINAL_URL\x10\x11\x12\x1c\n\x18INVALID_TLD_IN_FINAL_URL\x10\x12\x12\x1c\n\x18INVALID_FINAL_MOBILE_URL\x10\x13\x12#\n\x1fINVALID_TAG_IN_FINAL_MOBILE_URL\x10\x14\x12)\n%REDUNDANT_NESTED_FINAL_MOBILE_URL_TAG\x10\x15\x12(\n$MISSING_PROTOCOL_IN_FINAL_MOBILE_URL\x10\x16\x12(\n$INVALID_PROTOCOL_IN_FINAL_MOBILE_URL\x10\x17\x12\x1e\n\x1aMALFORMED_FINAL_MOBILE_URL\x10\x18\x12$\n MISSING_HOST_IN_FINAL_MOBILE_URL\x10\x19\x12#\n\x1fINVALID_TLD_IN_FINAL_MOBILE_URL\x10\x1a\x12\x19\n\x15INVALID_FINAL_APP_URL\x10\x1b\x12 \n\x1cINVALID_TAG_IN_FINAL_APP_URL\x10\x1c\x12&\n\"REDUNDANT_NESTED_FINAL_APP_URL_TAG\x10\x1d\x12 \n\x1cMULTIPLE_APP_URLS_FOR_OSTYPE\x10\x1e\x12\x12\n\x0eINVALID_OSTYPE\x10\x1f\x12 \n\x1cINVALID_PROTOCOL_FOR_APP_URL\x10 \x12\"\n\x1eINVALID_PACKAGE_ID_FOR_APP_URL\x10!\x12-\n)URL_CUSTOM_PARAMETERS_COUNT_EXCEEDS_LIMIT\x10\"\x12\x32\n.INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_KEY\x10\'\x12\x34\n0INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_VALUE\x10(\x12-\n)INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE\x10)\x12-\n)REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG\x10*\x12\x14\n\x10MISSING_PROTOCOL\x10+\x12\x14\n\x10INVALID_PROTOCOL\x10\x34\x12\x0f\n\x0bINVALID_URL\x10,\x12\x1e\n\x1a\x44\x45STINATION_URL_DEPRECATED\x10-\x12\x16\n\x12INVALID_TAG_IN_URL\x10.\x12\x13\n\x0fMISSING_URL_TAG\x10/\x12\x14\n\x10\x44UPLICATE_URL_ID\x10\x30\x12\x12\n\x0eINVALID_URL_ID\x10\x31\x12\x1e\n\x1a\x46INAL_URL_SUFFIX_MALFORMED\x10\x32\x12#\n\x1fINVALID_TAG_IN_FINAL_URL_SUFFIX\x10\x33\x12\x1c\n\x18INVALID_TOP_LEVEL_DOMAIN\x10\x35\x12\x1e\n\x1aMALFORMED_TOP_LEVEL_DOMAIN\x10\x36\x12\x11\n\rMALFORMED_URL\x10\x37\x12\x10\n\x0cMISSING_HOST\x10\x38\x42\xc8\x01\n\"com.google.ads.googleads.v0.errorsB\x12UrlFieldErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') ) @@ -191,42 +191,62 @@ options=None, type=None), _descriptor.EnumValueDescriptor( - name='INVALID_URL', index=40, number=44, + name='INVALID_PROTOCOL', index=40, number=52, options=None, type=None), _descriptor.EnumValueDescriptor( - name='DESTINATION_URL_DEPRECATED', index=41, number=45, + name='INVALID_URL', index=41, number=44, options=None, type=None), _descriptor.EnumValueDescriptor( - name='INVALID_TAG_IN_URL', index=42, number=46, + name='DESTINATION_URL_DEPRECATED', index=42, number=45, options=None, type=None), _descriptor.EnumValueDescriptor( - name='MISSING_URL_TAG', index=43, number=47, + name='INVALID_TAG_IN_URL', index=43, number=46, options=None, type=None), _descriptor.EnumValueDescriptor( - name='DUPLICATE_URL_ID', index=44, number=48, + name='MISSING_URL_TAG', index=44, number=47, options=None, type=None), _descriptor.EnumValueDescriptor( - name='INVALID_URL_ID', index=45, number=49, + name='DUPLICATE_URL_ID', index=45, number=48, options=None, type=None), _descriptor.EnumValueDescriptor( - name='FINAL_URL_SUFFIX_MALFORMED', index=46, number=50, + name='INVALID_URL_ID', index=46, number=49, options=None, type=None), _descriptor.EnumValueDescriptor( - name='INVALID_TAG_IN_FINAL_URL_SUFFIX', index=47, number=51, + name='FINAL_URL_SUFFIX_MALFORMED', index=47, number=50, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_TAG_IN_FINAL_URL_SUFFIX', index=48, number=51, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_TOP_LEVEL_DOMAIN', index=49, number=53, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MALFORMED_TOP_LEVEL_DOMAIN', index=50, number=54, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MALFORMED_URL', index=51, number=55, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MISSING_HOST', index=52, number=56, options=None, type=None), ], containing_type=None, options=None, serialized_start=117, - serialized_end=1787, + serialized_end=1908, ) _sym_db.RegisterEnumDescriptor(_URLFIELDERRORENUM_URLFIELDERROR) @@ -252,7 +272,7 @@ oneofs=[ ], serialized_start=95, - serialized_end=1787, + serialized_end=1908, ) _URLFIELDERRORENUM_URLFIELDERROR.containing_type = _URLFIELDERRORENUM @@ -261,7 +281,7 @@ UrlFieldErrorEnum = _reflection.GeneratedProtocolMessageType('UrlFieldErrorEnum', (_message.Message,), dict( DESCRIPTOR = _URLFIELDERRORENUM, - __module__ = 'google.ads.googleads_v0.proto.errors.url_field_error_pb2' + __module__ = 'google.ads.google_ads.v0.proto.errors.url_field_error_pb2' , __doc__ = """Container for enum describing possible url field errors. """, diff --git a/google/ads/google_ads/v0/proto/errors/user_list_error_pb2.py b/google/ads/google_ads/v0/proto/errors/user_list_error_pb2.py new file mode 100644 index 000000000..5b80d6008 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/user_list_error_pb2.py @@ -0,0 +1,183 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/errors/user_list_error.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/errors/user_list_error.proto', + package='google.ads.googleads.v0.errors', + syntax='proto3', + serialized_pb=_b('\n:google/ads/googleads_v0/proto/errors/user_list_error.proto\x12\x1egoogle.ads.googleads.v0.errors\"\xd4\x06\n\x11UserListErrorEnum\"\xbe\x06\n\rUserListError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x37\n3EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED\x10\x02\x12\x1a\n\x16\x43ONCRETE_TYPE_REQUIRED\x10\x03\x12\x1f\n\x1b\x43ONVERSION_TYPE_ID_REQUIRED\x10\x04\x12\x1e\n\x1a\x44UPLICATE_CONVERSION_TYPES\x10\x05\x12\x1b\n\x17INVALID_CONVERSION_TYPE\x10\x06\x12\x17\n\x13INVALID_DESCRIPTION\x10\x07\x12\x10\n\x0cINVALID_NAME\x10\x08\x12\x10\n\x0cINVALID_TYPE\x10\t\x12\x34\n0CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND\x10\n\x12*\n&INVALID_USER_LIST_LOGICAL_RULE_OPERAND\x10\x0b\x12\x15\n\x11NAME_ALREADY_USED\x10\x0c\x12%\n!NEW_CONVERSION_TYPE_NAME_REQUIRED\x10\r\x12%\n!CONVERSION_TYPE_NAME_ALREADY_USED\x10\x0e\x12\x1e\n\x1aOWNERSHIP_REQUIRED_FOR_SET\x10\x0f\x12\"\n\x1eUSER_LIST_MUTATE_NOT_SUPPORTED\x10\x10\x12\x10\n\x0cINVALID_RULE\x10\x11\x12\x16\n\x12INVALID_DATE_RANGE\x10\x1b\x12%\n!CAN_NOT_MUTATE_SENSITIVE_USERLIST\x10\x1c\x12\x1f\n\x1bMAX_NUM_RULEBASED_USERLISTS\x10\x1d\x12\'\n#CANNOT_MODIFY_BILLABLE_RECORD_COUNT\x10\x1e\x12\x12\n\x0e\x41PP_ID_NOT_SET\x10\x1f\x12-\n)USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST\x10 \x12\x36\n2ADVERTISER_NOT_WHITELISTED_FOR_USING_UPLOADED_DATA\x10!B\xc8\x01\n\"com.google.ads.googleads.v0.errorsB\x12UserListErrorProtoP\x01ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\xa2\x02\x03GAA\xaa\x02\x1eGoogle.Ads.GoogleAds.V0.Errors\xca\x02\x1eGoogle\\Ads\\GoogleAds\\V0\\Errorsb\x06proto3') +) + + + +_USERLISTERRORENUM_USERLISTERROR = _descriptor.EnumDescriptor( + name='UserListError', + full_name='google.ads.googleads.v0.errors.UserListErrorEnum.UserListError', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONCRETE_TYPE_REQUIRED', index=3, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONVERSION_TYPE_ID_REQUIRED', index=4, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DUPLICATE_CONVERSION_TYPES', index=5, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_CONVERSION_TYPE', index=6, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_DESCRIPTION', index=7, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_NAME', index=8, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_TYPE', index=9, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND', index=10, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_USER_LIST_LOGICAL_RULE_OPERAND', index=11, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NAME_ALREADY_USED', index=12, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NEW_CONVERSION_TYPE_NAME_REQUIRED', index=13, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONVERSION_TYPE_NAME_ALREADY_USED', index=14, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='OWNERSHIP_REQUIRED_FOR_SET', index=15, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='USER_LIST_MUTATE_NOT_SUPPORTED', index=16, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_RULE', index=17, number=17, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INVALID_DATE_RANGE', index=18, number=27, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAN_NOT_MUTATE_SENSITIVE_USERLIST', index=19, number=28, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MAX_NUM_RULEBASED_USERLISTS', index=20, number=29, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CANNOT_MODIFY_BILLABLE_RECORD_COUNT', index=21, number=30, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='APP_ID_NOT_SET', index=22, number=31, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST', index=23, number=32, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ADVERTISER_NOT_WHITELISTED_FOR_USING_UPLOADED_DATA', index=24, number=33, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=117, + serialized_end=947, +) +_sym_db.RegisterEnumDescriptor(_USERLISTERRORENUM_USERLISTERROR) + + +_USERLISTERRORENUM = _descriptor.Descriptor( + name='UserListErrorEnum', + full_name='google.ads.googleads.v0.errors.UserListErrorEnum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _USERLISTERRORENUM_USERLISTERROR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=95, + serialized_end=947, +) + +_USERLISTERRORENUM_USERLISTERROR.containing_type = _USERLISTERRORENUM +DESCRIPTOR.message_types_by_name['UserListErrorEnum'] = _USERLISTERRORENUM +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserListErrorEnum = _reflection.GeneratedProtocolMessageType('UserListErrorEnum', (_message.Message,), dict( + DESCRIPTOR = _USERLISTERRORENUM, + __module__ = 'google.ads.google_ads.v0.proto.errors.user_list_error_pb2' + , + __doc__ = """Container for enum describing possible user list errors. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.errors.UserListErrorEnum) + )) +_sym_db.RegisterMessage(UserListErrorEnum) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\"com.google.ads.googleads.v0.errorsB\022UserListErrorProtoP\001ZDgoogle.golang.org/genproto/googleapis/ads/googleads/v0/errors;errors\242\002\003GAA\252\002\036Google.Ads.GoogleAds.V0.Errors\312\002\036Google\\Ads\\GoogleAds\\V0\\Errors')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/errors/user_list_error_pb2_grpc.py b/google/ads/google_ads/v0/proto/errors/user_list_error_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/errors/user_list_error_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/account_budget_pb2.py b/google/ads/google_ads/v0/proto/resources/account_budget_pb2.py index 704271830..209a3c530 100644 --- a/google/ads/google_ads/v0/proto/resources/account_budget_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/account_budget_pb2.py @@ -411,7 +411,7 @@ PendingAccountBudgetProposal = _reflection.GeneratedProtocolMessageType('PendingAccountBudgetProposal', (_message.Message,), dict( DESCRIPTOR = _ACCOUNTBUDGET_PENDINGACCOUNTBUDGETPROPOSAL, - __module__ = 'google.ads.googleads_v0.proto.resources.account_budget_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.account_budget_pb2' , __doc__ = """A pending proposal associated with the enclosing account-level budget, if applicable. @@ -455,7 +455,7 @@ )) , DESCRIPTOR = _ACCOUNTBUDGET, - __module__ = 'google.ads.googleads_v0.proto.resources.account_budget_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.account_budget_pb2' , __doc__ = """An account-level budget. It contains information about the budget itself, as well as the most recently approved changes to the budget and diff --git a/google/ads/google_ads/v0/proto/resources/account_budget_proposal_pb2.py b/google/ads/google_ads/v0/proto/resources/account_budget_proposal_pb2.py index 7c6a6ec6e..dbcefcaf7 100644 --- a/google/ads/google_ads/v0/proto/resources/account_budget_proposal_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/account_budget_proposal_pb2.py @@ -279,7 +279,7 @@ AccountBudgetProposal = _reflection.GeneratedProtocolMessageType('AccountBudgetProposal', (_message.Message,), dict( DESCRIPTOR = _ACCOUNTBUDGETPROPOSAL, - __module__ = 'google.ads.googleads_v0.proto.resources.account_budget_proposal_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.account_budget_proposal_pb2' , __doc__ = """An account-level budget proposal. @@ -314,7 +314,7 @@ proposed_name: The name to assign to the account-level budget. approved_start_date_time: - The approved start date time in yyyy-MM-dd HH:mm:ss format. + The approved start date time in yyyy-mm-dd hh:mm:ss format. proposed_purchase_order_number: A purchase order number is a value that enables the user to help them reference this budget in their monthly invoices. @@ -331,21 +331,21 @@ The proposed start date time of the account-level budget, which cannot be in the past. proposed_start_date_time: - The proposed start date time in yyyy-MM-dd HH:mm:ss format. + The proposed start date time in yyyy-mm-dd hh:mm:ss format. proposed_start_time_type: The proposed start date time as a well-defined type, e.g. NOW. proposed_end_time: The proposed end date time of the account-level budget, which cannot be in the past. proposed_end_date_time: - The proposed end date time in yyyy-MM-dd HH:mm:ss format. + The proposed end date time in yyyy-mm-dd hh:mm:ss format. proposed_end_time_type: The proposed end date time as a well-defined type, e.g. FOREVER. approved_end_time: The approved end date time of the account-level budget. approved_end_date_time: - The approved end date time in yyyy-MM-dd HH:mm:ss format. + The approved end date time in yyyy-mm-dd hh:mm:ss format. approved_end_time_type: The approved end date time as a well-defined type, e.g. FOREVER. diff --git a/google/ads/google_ads/v0/proto/resources/ad_group_ad_pb2.py b/google/ads/google_ads/v0/proto/resources/ad_group_ad_pb2.py index 203b55f46..12a9e1f18 100644 --- a/google/ads/google_ads/v0/proto/resources/ad_group_ad_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/ad_group_ad_pb2.py @@ -148,7 +148,7 @@ AdGroupAd = _reflection.GeneratedProtocolMessageType('AdGroupAd', (_message.Message,), dict( DESCRIPTOR = _ADGROUPAD, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_group_ad_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_group_ad_pb2' , __doc__ = """An ad group ad. @@ -173,7 +173,7 @@ AdGroupAdPolicySummary = _reflection.GeneratedProtocolMessageType('AdGroupAdPolicySummary', (_message.Message,), dict( DESCRIPTOR = _ADGROUPADPOLICYSUMMARY, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_group_ad_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_group_ad_pb2' , __doc__ = """Contains policy information for an ad. diff --git a/google/ads/google_ads/v0/proto/resources/ad_group_audience_view_pb2.py b/google/ads/google_ads/v0/proto/resources/ad_group_audience_view_pb2.py index 2c27fc814..e2f6ee6b2 100644 --- a/google/ads/google_ads/v0/proto/resources/ad_group_audience_view_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/ad_group_audience_view_pb2.py @@ -60,7 +60,7 @@ AdGroupAudienceView = _reflection.GeneratedProtocolMessageType('AdGroupAudienceView', (_message.Message,), dict( DESCRIPTOR = _ADGROUPAUDIENCEVIEW, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_group_audience_view_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_group_audience_view_pb2' , __doc__ = """An ad group audience view. Includes performance data from interests and remarketing lists for Display Network and YouTube Network ads, and diff --git a/google/ads/google_ads/v0/proto/resources/ad_group_bid_modifier_pb2.py b/google/ads/google_ads/v0/proto/resources/ad_group_bid_modifier_pb2.py index f3e2c5e7d..29ddac33b 100644 --- a/google/ads/google_ads/v0/proto/resources/ad_group_bid_modifier_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/ad_group_bid_modifier_pb2.py @@ -22,7 +22,7 @@ name='google/ads/googleads_v0/proto/resources/ad_group_bid_modifier.proto', package='google.ads.googleads.v0.resources', syntax='proto3', - serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/resources/ad_group_bid_modifier.proto\x12!google.ads.googleads.v0.resources\x1a\x33google/ads/googleads_v0/proto/common/criteria.proto\x1a=google/ads/googleads_v0/proto/enums/bid_modifier_source.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\x99\x06\n\x12\x41\x64GroupBidModifier\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12.\n\x08\x61\x64_group\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0c\x63riterion_id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x32\n\x0c\x62id_modifier\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x33\n\rbase_ad_group\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x63\n\x13\x62id_modifier_source\x18\n \x01(\x0e\x32\x46.google.ads.googleads.v0.enums.BidModifierSourceEnum.BidModifierSource\x12_\n\x19hotel_date_selection_type\x18\x05 \x01(\x0b\x32:.google.ads.googleads.v0.common.HotelDateSelectionTypeInfoH\x00\x12\x65\n\x1chotel_advance_booking_window\x18\x06 \x01(\x0b\x32=.google.ads.googleads.v0.common.HotelAdvanceBookingWindowInfoH\x00\x12U\n\x14hotel_length_of_stay\x18\x07 \x01(\x0b\x32\x35.google.ads.googleads.v0.common.HotelLengthOfStayInfoH\x00\x12Q\n\x12hotel_check_in_day\x18\x08 \x01(\x0b\x32\x33.google.ads.googleads.v0.common.HotelCheckInDayInfoH\x00\x12<\n\x06\x64\x65vice\x18\x0b \x01(\x0b\x32*.google.ads.googleads.v0.common.DeviceInfoH\x00\x42\x0b\n\tcriterionB\xdc\x01\n%com.google.ads.googleads.v0.resourcesB\x17\x41\x64GroupBidModifierProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/resources/ad_group_bid_modifier.proto\x12!google.ads.googleads.v0.resources\x1a\x33google/ads/googleads_v0/proto/common/criteria.proto\x1a=google/ads/googleads_v0/proto/enums/bid_modifier_source.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xec\x06\n\x12\x41\x64GroupBidModifier\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12.\n\x08\x61\x64_group\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0c\x63riterion_id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x32\n\x0c\x62id_modifier\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x33\n\rbase_ad_group\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x63\n\x13\x62id_modifier_source\x18\n \x01(\x0e\x32\x46.google.ads.googleads.v0.enums.BidModifierSourceEnum.BidModifierSource\x12_\n\x19hotel_date_selection_type\x18\x05 \x01(\x0b\x32:.google.ads.googleads.v0.common.HotelDateSelectionTypeInfoH\x00\x12\x65\n\x1chotel_advance_booking_window\x18\x06 \x01(\x0b\x32=.google.ads.googleads.v0.common.HotelAdvanceBookingWindowInfoH\x00\x12U\n\x14hotel_length_of_stay\x18\x07 \x01(\x0b\x32\x35.google.ads.googleads.v0.common.HotelLengthOfStayInfoH\x00\x12Q\n\x12hotel_check_in_day\x18\x08 \x01(\x0b\x32\x33.google.ads.googleads.v0.common.HotelCheckInDayInfoH\x00\x12<\n\x06\x64\x65vice\x18\x0b \x01(\x0b\x32*.google.ads.googleads.v0.common.DeviceInfoH\x00\x12Q\n\x11preferred_content\x18\x0c \x01(\x0b\x32\x34.google.ads.googleads.v0.common.PreferredContentInfoH\x00\x42\x0b\n\tcriterionB\xdc\x01\n%com.google.ads.googleads.v0.resourcesB\x17\x41\x64GroupBidModifierProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') , dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_bid__modifier__source__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -113,6 +113,13 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='preferred_content', full_name='google.ads.googleads.v0.resources.AdGroupBidModifier.preferred_content', index=11, + number=12, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -129,7 +136,7 @@ index=0, containing_type=None, fields=[]), ], serialized_start=255, - serialized_end=1048, + serialized_end=1131, ) _ADGROUPBIDMODIFIER.fields_by_name['ad_group'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE @@ -142,6 +149,7 @@ _ADGROUPBIDMODIFIER.fields_by_name['hotel_length_of_stay'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._HOTELLENGTHOFSTAYINFO _ADGROUPBIDMODIFIER.fields_by_name['hotel_check_in_day'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._HOTELCHECKINDAYINFO _ADGROUPBIDMODIFIER.fields_by_name['device'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._DEVICEINFO +_ADGROUPBIDMODIFIER.fields_by_name['preferred_content'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._PREFERREDCONTENTINFO _ADGROUPBIDMODIFIER.oneofs_by_name['criterion'].fields.append( _ADGROUPBIDMODIFIER.fields_by_name['hotel_date_selection_type']) _ADGROUPBIDMODIFIER.fields_by_name['hotel_date_selection_type'].containing_oneof = _ADGROUPBIDMODIFIER.oneofs_by_name['criterion'] @@ -157,12 +165,15 @@ _ADGROUPBIDMODIFIER.oneofs_by_name['criterion'].fields.append( _ADGROUPBIDMODIFIER.fields_by_name['device']) _ADGROUPBIDMODIFIER.fields_by_name['device'].containing_oneof = _ADGROUPBIDMODIFIER.oneofs_by_name['criterion'] +_ADGROUPBIDMODIFIER.oneofs_by_name['criterion'].fields.append( + _ADGROUPBIDMODIFIER.fields_by_name['preferred_content']) +_ADGROUPBIDMODIFIER.fields_by_name['preferred_content'].containing_oneof = _ADGROUPBIDMODIFIER.oneofs_by_name['criterion'] DESCRIPTOR.message_types_by_name['AdGroupBidModifier'] = _ADGROUPBIDMODIFIER _sym_db.RegisterFileDescriptor(DESCRIPTOR) AdGroupBidModifier = _reflection.GeneratedProtocolMessageType('AdGroupBidModifier', (_message.Message,), dict( DESCRIPTOR = _ADGROUPBIDMODIFIER, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_group_bid_modifier_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_group_bid_modifier_pb2' , __doc__ = """Represents an ad group bid modifier. @@ -203,6 +214,8 @@ Criterion for day of the week the booking is for. device: A device criterion. + preferred_content: + A preferred content criterion. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.AdGroupBidModifier) )) diff --git a/google/ads/google_ads/v0/proto/resources/ad_group_criterion_pb2.py b/google/ads/google_ads/v0/proto/resources/ad_group_criterion_pb2.py index 0170ec665..25011d984 100644 --- a/google/ads/google_ads/v0/proto/resources/ad_group_criterion_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/ad_group_criterion_pb2.py @@ -26,7 +26,7 @@ name='google/ads/googleads_v0/proto/resources/ad_group_criterion.proto', package='google.ads.googleads.v0.resources', syntax='proto3', - serialized_pb=_b('\n@google/ads/googleads_v0/proto/resources/ad_group_criterion.proto\x12!google.ads.googleads.v0.resources\x1a\x33google/ads/googleads_v0/proto/common/criteria.proto\x1a;google/ads/googleads_v0/proto/common/custom_parameter.proto\x1a\x43google/ads/googleads_v0/proto/enums/ad_group_criterion_status.proto\x1a\x38google/ads/googleads_v0/proto/enums/bidding_source.proto\x1a\x38google/ads/googleads_v0/proto/enums/criterion_type.proto\x1a>google/ads/googleads_v0/proto/enums/quality_score_bucket.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xa3\x17\n\x10\x41\x64GroupCriterion\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\x31\n\x0c\x63riterion_id\x18\x1a \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12`\n\x06status\x18\x03 \x01(\x0e\x32P.google.ads.googleads.v0.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus\x12U\n\x0cquality_info\x18\x04 \x01(\x0b\x32?.google.ads.googleads.v0.resources.AdGroupCriterion.QualityInfo\x12.\n\x08\x61\x64_group\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12L\n\x04type\x18\x19 \x01(\x0e\x32>.google.ads.googleads.v0.enums.CriterionTypeEnum.CriterionType\x12,\n\x08negative\x18\x1f \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x32\n\x0c\x62id_modifier\x18, \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x33\n\x0e\x63pc_bid_micros\x18\x10 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pm_bid_micros\x18\x11 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pv_bid_micros\x18\x18 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12;\n\x16percent_cpc_bid_micros\x18! \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12=\n\x18\x65\x66\x66\x65\x63tive_cpc_bid_micros\x18\x12 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12=\n\x18\x65\x66\x66\x65\x63tive_cpm_bid_micros\x18\x13 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12=\n\x18\x65\x66\x66\x65\x63tive_cpv_bid_micros\x18\x14 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x45\n effective_percent_cpc_bid_micros\x18\" \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12`\n\x18\x65\x66\x66\x65\x63tive_cpc_bid_source\x18\x15 \x01(\x0e\x32>.google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource\x12`\n\x18\x65\x66\x66\x65\x63tive_cpm_bid_source\x18\x16 \x01(\x0e\x32>.google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource\x12`\n\x18\x65\x66\x66\x65\x63tive_cpv_bid_source\x18\x17 \x01(\x0e\x32>.google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource\x12h\n effective_percent_cpc_bid_source\x18# \x01(\x0e\x32>.google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource\x12\x61\n\x12position_estimates\x18\n \x01(\x0b\x32\x45.google.ads.googleads.v0.resources.AdGroupCriterion.PositionEstimates\x12\x30\n\nfinal_urls\x18\x0b \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x15tracking_url_template\x18\r \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12N\n\x15url_custom_parameters\x18\x0e \x03(\x0b\x32/.google.ads.googleads.v0.common.CustomParameter\x12>\n\x07keyword\x18\x1b \x01(\x0b\x32+.google.ads.googleads.v0.common.KeywordInfoH\x00\x12\x42\n\tplacement\x18\x1c \x01(\x0b\x32-.google.ads.googleads.v0.common.PlacementInfoH\x00\x12I\n\rlisting_group\x18 \x01(\x0b\x32\x30.google.ads.googleads.v0.common.ListingGroupInfoH\x00\x12\x41\n\tage_range\x18$ \x01(\x0b\x32,.google.ads.googleads.v0.common.AgeRangeInfoH\x00\x12<\n\x06gender\x18% \x01(\x0b\x32*.google.ads.googleads.v0.common.GenderInfoH\x00\x12G\n\x0cincome_range\x18& \x01(\x0b\x32/.google.ads.googleads.v0.common.IncomeRangeInfoH\x00\x12M\n\x0fparental_status\x18\' \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ParentalStatusInfoH\x00\x12I\n\ryoutube_video\x18( \x01(\x0b\x32\x30.google.ads.googleads.v0.common.YouTubeVideoInfoH\x00\x12M\n\x0fyoutube_channel\x18) \x01(\x0b\x32\x32.google.ads.googleads.v0.common.YouTubeChannelInfoH\x00\x12:\n\x05topic\x18+ \x01(\x0b\x32).google.ads.googleads.v0.common.TopicInfoH\x00\x1a\xff\x02\n\x0bQualityInfo\x12\x32\n\rquality_score\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12h\n\x16\x63reative_quality_score\x18\x02 \x01(\x0e\x32H.google.ads.googleads.v0.enums.QualityScoreBucketEnum.QualityScoreBucket\x12j\n\x18post_click_quality_score\x18\x03 \x01(\x0e\x32H.google.ads.googleads.v0.enums.QualityScoreBucketEnum.QualityScoreBucket\x12\x66\n\x14search_predicted_ctr\x18\x04 \x01(\x0e\x32H.google.ads.googleads.v0.enums.QualityScoreBucketEnum.QualityScoreBucket\x1a\xcc\x01\n\x11PositionEstimates\x12:\n\x15\x66irst_page_cpc_micros\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12>\n\x19\x66irst_position_cpc_micros\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12;\n\x16top_of_page_cpc_micros\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\x0b\n\tcriterionB\xda\x01\n%com.google.ads.googleads.v0.resourcesB\x15\x41\x64GroupCriterionProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + serialized_pb=_b('\n@google/ads/googleads_v0/proto/resources/ad_group_criterion.proto\x12!google.ads.googleads.v0.resources\x1a\x33google/ads/googleads_v0/proto/common/criteria.proto\x1a;google/ads/googleads_v0/proto/common/custom_parameter.proto\x1a\x43google/ads/googleads_v0/proto/enums/ad_group_criterion_status.proto\x1a\x38google/ads/googleads_v0/proto/enums/bidding_source.proto\x1a\x38google/ads/googleads_v0/proto/enums/criterion_type.proto\x1a>google/ads/googleads_v0/proto/enums/quality_score_bucket.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xb1\x18\n\x10\x41\x64GroupCriterion\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\x31\n\x0c\x63riterion_id\x18\x1a \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12`\n\x06status\x18\x03 \x01(\x0e\x32P.google.ads.googleads.v0.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus\x12U\n\x0cquality_info\x18\x04 \x01(\x0b\x32?.google.ads.googleads.v0.resources.AdGroupCriterion.QualityInfo\x12.\n\x08\x61\x64_group\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12L\n\x04type\x18\x19 \x01(\x0e\x32>.google.ads.googleads.v0.enums.CriterionTypeEnum.CriterionType\x12,\n\x08negative\x18\x1f \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x32\n\x0c\x62id_modifier\x18, \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x33\n\x0e\x63pc_bid_micros\x18\x10 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pm_bid_micros\x18\x11 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pv_bid_micros\x18\x18 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12;\n\x16percent_cpc_bid_micros\x18! \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12=\n\x18\x65\x66\x66\x65\x63tive_cpc_bid_micros\x18\x12 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12=\n\x18\x65\x66\x66\x65\x63tive_cpm_bid_micros\x18\x13 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12=\n\x18\x65\x66\x66\x65\x63tive_cpv_bid_micros\x18\x14 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x45\n effective_percent_cpc_bid_micros\x18\" \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12`\n\x18\x65\x66\x66\x65\x63tive_cpc_bid_source\x18\x15 \x01(\x0e\x32>.google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource\x12`\n\x18\x65\x66\x66\x65\x63tive_cpm_bid_source\x18\x16 \x01(\x0e\x32>.google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource\x12`\n\x18\x65\x66\x66\x65\x63tive_cpv_bid_source\x18\x17 \x01(\x0e\x32>.google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource\x12h\n effective_percent_cpc_bid_source\x18# \x01(\x0e\x32>.google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource\x12\x61\n\x12position_estimates\x18\n \x01(\x0b\x32\x45.google.ads.googleads.v0.resources.AdGroupCriterion.PositionEstimates\x12\x30\n\nfinal_urls\x18\x0b \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x15tracking_url_template\x18\r \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12N\n\x15url_custom_parameters\x18\x0e \x03(\x0b\x32/.google.ads.googleads.v0.common.CustomParameter\x12>\n\x07keyword\x18\x1b \x01(\x0b\x32+.google.ads.googleads.v0.common.KeywordInfoH\x00\x12\x42\n\tplacement\x18\x1c \x01(\x0b\x32-.google.ads.googleads.v0.common.PlacementInfoH\x00\x12I\n\rlisting_group\x18 \x01(\x0b\x32\x30.google.ads.googleads.v0.common.ListingGroupInfoH\x00\x12\x41\n\tage_range\x18$ \x01(\x0b\x32,.google.ads.googleads.v0.common.AgeRangeInfoH\x00\x12<\n\x06gender\x18% \x01(\x0b\x32*.google.ads.googleads.v0.common.GenderInfoH\x00\x12G\n\x0cincome_range\x18& \x01(\x0b\x32/.google.ads.googleads.v0.common.IncomeRangeInfoH\x00\x12M\n\x0fparental_status\x18\' \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ParentalStatusInfoH\x00\x12\x41\n\tuser_list\x18* \x01(\x0b\x32,.google.ads.googleads.v0.common.UserListInfoH\x00\x12I\n\ryoutube_video\x18( \x01(\x0b\x32\x30.google.ads.googleads.v0.common.YouTubeVideoInfoH\x00\x12M\n\x0fyoutube_channel\x18) \x01(\x0b\x32\x32.google.ads.googleads.v0.common.YouTubeChannelInfoH\x00\x12:\n\x05topic\x18+ \x01(\x0b\x32).google.ads.googleads.v0.common.TopicInfoH\x00\x12I\n\ruser_interest\x18- \x01(\x0b\x32\x30.google.ads.googleads.v0.common.UserInterestInfoH\x00\x1a\xff\x02\n\x0bQualityInfo\x12\x32\n\rquality_score\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12h\n\x16\x63reative_quality_score\x18\x02 \x01(\x0e\x32H.google.ads.googleads.v0.enums.QualityScoreBucketEnum.QualityScoreBucket\x12j\n\x18post_click_quality_score\x18\x03 \x01(\x0e\x32H.google.ads.googleads.v0.enums.QualityScoreBucketEnum.QualityScoreBucket\x12\x66\n\x14search_predicted_ctr\x18\x04 \x01(\x0e\x32H.google.ads.googleads.v0.enums.QualityScoreBucketEnum.QualityScoreBucket\x1a\xcc\x01\n\x11PositionEstimates\x12:\n\x15\x66irst_page_cpc_micros\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12>\n\x19\x66irst_position_cpc_micros\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12;\n\x16top_of_page_cpc_micros\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\x0b\n\tcriterionB\xda\x01\n%com.google.ads.googleads.v0.resourcesB\x15\x41\x64GroupCriterionProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') , dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_custom__parameter__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__group__criterion__status__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_bidding__source__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_criterion__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_quality__score__bucket__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -80,8 +80,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2875, - serialized_end=3258, + serialized_start=3017, + serialized_end=3400, ) _ADGROUPCRITERION_POSITIONESTIMATES = _descriptor.Descriptor( @@ -124,8 +124,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3261, - serialized_end=3465, + serialized_start=3403, + serialized_end=3607, ) _ADGROUPCRITERION = _descriptor.Descriptor( @@ -353,26 +353,40 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='youtube_video', full_name='google.ads.googleads.v0.resources.AdGroupCriterion.youtube_video', index=31, + name='user_list', full_name='google.ads.googleads.v0.resources.AdGroupCriterion.user_list', index=31, + number=42, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='youtube_video', full_name='google.ads.googleads.v0.resources.AdGroupCriterion.youtube_video', index=32, number=40, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='youtube_channel', full_name='google.ads.googleads.v0.resources.AdGroupCriterion.youtube_channel', index=32, + name='youtube_channel', full_name='google.ads.googleads.v0.resources.AdGroupCriterion.youtube_channel', index=33, number=41, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='topic', full_name='google.ads.googleads.v0.resources.AdGroupCriterion.topic', index=33, + name='topic', full_name='google.ads.googleads.v0.resources.AdGroupCriterion.topic', index=34, number=43, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='user_interest', full_name='google.ads.googleads.v0.resources.AdGroupCriterion.user_interest', index=35, + number=45, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -389,7 +403,7 @@ index=0, containing_type=None, fields=[]), ], serialized_start=499, - serialized_end=3478, + serialized_end=3620, ) _ADGROUPCRITERION_QUALITYINFO.fields_by_name['quality_score'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT32VALUE @@ -431,9 +445,11 @@ _ADGROUPCRITERION.fields_by_name['gender'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._GENDERINFO _ADGROUPCRITERION.fields_by_name['income_range'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._INCOMERANGEINFO _ADGROUPCRITERION.fields_by_name['parental_status'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._PARENTALSTATUSINFO +_ADGROUPCRITERION.fields_by_name['user_list'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._USERLISTINFO _ADGROUPCRITERION.fields_by_name['youtube_video'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._YOUTUBEVIDEOINFO _ADGROUPCRITERION.fields_by_name['youtube_channel'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._YOUTUBECHANNELINFO _ADGROUPCRITERION.fields_by_name['topic'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._TOPICINFO +_ADGROUPCRITERION.fields_by_name['user_interest'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._USERINTERESTINFO _ADGROUPCRITERION.oneofs_by_name['criterion'].fields.append( _ADGROUPCRITERION.fields_by_name['keyword']) _ADGROUPCRITERION.fields_by_name['keyword'].containing_oneof = _ADGROUPCRITERION.oneofs_by_name['criterion'] @@ -455,6 +471,9 @@ _ADGROUPCRITERION.oneofs_by_name['criterion'].fields.append( _ADGROUPCRITERION.fields_by_name['parental_status']) _ADGROUPCRITERION.fields_by_name['parental_status'].containing_oneof = _ADGROUPCRITERION.oneofs_by_name['criterion'] +_ADGROUPCRITERION.oneofs_by_name['criterion'].fields.append( + _ADGROUPCRITERION.fields_by_name['user_list']) +_ADGROUPCRITERION.fields_by_name['user_list'].containing_oneof = _ADGROUPCRITERION.oneofs_by_name['criterion'] _ADGROUPCRITERION.oneofs_by_name['criterion'].fields.append( _ADGROUPCRITERION.fields_by_name['youtube_video']) _ADGROUPCRITERION.fields_by_name['youtube_video'].containing_oneof = _ADGROUPCRITERION.oneofs_by_name['criterion'] @@ -464,6 +483,9 @@ _ADGROUPCRITERION.oneofs_by_name['criterion'].fields.append( _ADGROUPCRITERION.fields_by_name['topic']) _ADGROUPCRITERION.fields_by_name['topic'].containing_oneof = _ADGROUPCRITERION.oneofs_by_name['criterion'] +_ADGROUPCRITERION.oneofs_by_name['criterion'].fields.append( + _ADGROUPCRITERION.fields_by_name['user_interest']) +_ADGROUPCRITERION.fields_by_name['user_interest'].containing_oneof = _ADGROUPCRITERION.oneofs_by_name['criterion'] DESCRIPTOR.message_types_by_name['AdGroupCriterion'] = _ADGROUPCRITERION _sym_db.RegisterFileDescriptor(DESCRIPTOR) @@ -471,7 +493,7 @@ QualityInfo = _reflection.GeneratedProtocolMessageType('QualityInfo', (_message.Message,), dict( DESCRIPTOR = _ADGROUPCRITERION_QUALITYINFO, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_group_criterion_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_group_criterion_pb2' , __doc__ = """A container for ad group criterion quality information. @@ -493,7 +515,7 @@ PositionEstimates = _reflection.GeneratedProtocolMessageType('PositionEstimates', (_message.Message,), dict( DESCRIPTOR = _ADGROUPCRITERION_POSITIONESTIMATES, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_group_criterion_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_group_criterion_pb2' , __doc__ = """Estimates for criterion bids at various positions. @@ -514,7 +536,7 @@ )) , DESCRIPTOR = _ADGROUPCRITERION, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_group_criterion_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_group_criterion_pb2' , __doc__ = """An ad group criterion. @@ -597,12 +619,16 @@ Income range. parental_status: Parental status. + user_list: + User List. youtube_video: YouTube Video. youtube_channel: YouTube Channel. topic: Topic. + user_interest: + User Interest. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.AdGroupCriterion) )) diff --git a/google/ads/google_ads/v0/proto/resources/ad_group_feed_pb2.py b/google/ads/google_ads/v0/proto/resources/ad_group_feed_pb2.py new file mode 100644 index 000000000..d587b4eab --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/ad_group_feed_pb2.py @@ -0,0 +1,139 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/ad_group_feed.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.common import matching_function_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_matching__function__pb2 +from google.ads.google_ads.v0.proto.enums import feed_link_status_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__link__status__pb2 +from google.ads.google_ads.v0.proto.enums import placeholder_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_placeholder__type__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/ad_group_feed.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\n;google/ads/googleads_v0/proto/resources/ad_group_feed.proto\x12!google.ads.googleads.v0.resources\x1a.google.ads.googleads.v0.enums.AdGroupStatusEnum.AdGroupStatus\x12H\n\x04type\x18\x0c \x01(\x0e\x32:.google.ads.googleads.v0.enums.AdGroupTypeEnum.AdGroupType\x12h\n\x10\x61\x64_rotation_mode\x18\x16 \x01(\x0e\x32N.google.ads.googleads.v0.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode\x12;\n\x15tracking_url_template\x18\r \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12N\n\x15url_custom_parameters\x18\x06 \x03(\x0b\x32/.google.ads.googleads.v0.common.CustomParameter\x12.\n\x08\x63\x61mpaign\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\x0e\x63pc_bid_micros\x18\x0e \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pm_bid_micros\x18\x0f \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pa_bid_micros\x18\x10 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pv_bid_micros\x18\x11 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12:\n\x14target_roas_override\x18\x13 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12;\n\x16percent_cpc_bid_micros\x18\x14 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\xd1\x01\n%com.google.ads.googleads.v0.resourcesB\x0c\x41\x64GroupProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + serialized_pb=_b('\n6google/ads/googleads_v0/proto/resources/ad_group.proto\x12!google.ads.googleads.v0.resources\x1a;google/ads/googleads_v0/proto/common/custom_parameter.proto\x1aJgoogle/ads/googleads_v0/proto/common/explorer_auto_optimizer_setting.proto\x1a\x43google/ads/googleads_v0/proto/enums/ad_group_ad_rotation_mode.proto\x1a\x39google/ads/googleads_v0/proto/enums/ad_group_status.proto\x1a\x37google/ads/googleads_v0/proto/enums/ad_group_type.proto\x1a=google/ads/googleads_v0/proto/enums/targeting_dimension.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\x92\t\n\x07\x41\x64Group\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\'\n\x02id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12*\n\x04name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12N\n\x06status\x18\x05 \x01(\x0e\x32>.google.ads.googleads.v0.enums.AdGroupStatusEnum.AdGroupStatus\x12H\n\x04type\x18\x0c \x01(\x0e\x32:.google.ads.googleads.v0.enums.AdGroupTypeEnum.AdGroupType\x12h\n\x10\x61\x64_rotation_mode\x18\x16 \x01(\x0e\x32N.google.ads.googleads.v0.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode\x12;\n\x15tracking_url_template\x18\r \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12N\n\x15url_custom_parameters\x18\x06 \x03(\x0b\x32/.google.ads.googleads.v0.common.CustomParameter\x12.\n\x08\x63\x61mpaign\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\x0e\x63pc_bid_micros\x18\x0e \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pm_bid_micros\x18\x0f \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pa_bid_micros\x18\x10 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x33\n\x0e\x63pv_bid_micros\x18\x11 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12:\n\x14target_roas_override\x18\x13 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12;\n\x16percent_cpc_bid_micros\x18\x14 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x65\n\x1f\x65xplorer_auto_optimizer_setting\x18\x15 \x01(\x0b\x32<.google.ads.googleads.v0.common.ExplorerAutoOptimizerSetting\x12n\n\x1c\x64isplay_custom_bid_dimension\x18\x17 \x01(\x0e\x32H.google.ads.googleads.v0.enums.TargetingDimensionEnum.TargetingDimension\x12\x36\n\x10\x66inal_url_suffix\x18\x18 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\xd1\x01\n%com.google.ads.googleads.v0.resourcesB\x0c\x41\x64GroupProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') , - dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_custom__parameter__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__group__ad__rotation__mode__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__group__status__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__group__type__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_custom__parameter__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_explorer__auto__optimizer__setting__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__group__ad__rotation__mode__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__group__status__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__group__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_targeting__dimension__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -143,6 +145,27 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='explorer_auto_optimizer_setting', full_name='google.ads.googleads.v0.resources.AdGroup.explorer_auto_optimizer_setting', index=15, + number=21, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='display_custom_bid_dimension', full_name='google.ads.googleads.v0.resources.AdGroup.display_custom_bid_dimension', index=16, + number=23, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='final_url_suffix', full_name='google.ads.googleads.v0.resources.AdGroup.final_url_suffix', index=17, + number=24, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -155,8 +178,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=372, - serialized_end=1271, + serialized_start=511, + serialized_end=1681, ) _ADGROUP.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE @@ -173,12 +196,15 @@ _ADGROUP.fields_by_name['cpv_bid_micros'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE _ADGROUP.fields_by_name['target_roas_override'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE _ADGROUP.fields_by_name['percent_cpc_bid_micros'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_ADGROUP.fields_by_name['explorer_auto_optimizer_setting'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_explorer__auto__optimizer__setting__pb2._EXPLORERAUTOOPTIMIZERSETTING +_ADGROUP.fields_by_name['display_custom_bid_dimension'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_targeting__dimension__pb2._TARGETINGDIMENSIONENUM_TARGETINGDIMENSION +_ADGROUP.fields_by_name['final_url_suffix'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE DESCRIPTOR.message_types_by_name['AdGroup'] = _ADGROUP _sym_db.RegisterFileDescriptor(DESCRIPTOR) AdGroup = _reflection.GeneratedProtocolMessageType('AdGroup', (_message.Message,), dict( DESCRIPTOR = _ADGROUP, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_group_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_group_pb2' , __doc__ = """An ad group. @@ -229,6 +255,15 @@ advertised price for some good or service. The valid range for the fraction is [0,1) and the value stored here is 1,000,000 \* [fraction]. + explorer_auto_optimizer_setting: + Settings for the Display Campaign Optimizer, initially termed + "Explorer". + display_custom_bid_dimension: + Allows advertisers to specify a targeting dimension on which + to place absolute bids. This is only applicable for campaigns + that target only the display network and not search. + final_url_suffix: + URL template for appending params to Final URL. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.AdGroup) )) diff --git a/google/ads/google_ads/v0/proto/resources/ad_pb2.py b/google/ads/google_ads/v0/proto/resources/ad_pb2.py index 091a67492..0b4489e14 100644 --- a/google/ads/google_ads/v0/proto/resources/ad_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/ad_pb2.py @@ -24,7 +24,7 @@ name='google/ads/googleads_v0/proto/resources/ad.proto', package='google.ads.googleads.v0.resources', syntax='proto3', - serialized_pb=_b('\n0google/ads/googleads_v0/proto/resources/ad.proto\x12!google.ads.googleads.v0.resources\x1a\x38google/ads/googleads_v0/proto/common/ad_type_infos.proto\x1a;google/ads/googleads_v0/proto/common/custom_parameter.proto\x1a\x31google/ads/googleads_v0/proto/enums/ad_type.proto\x1a\x30google/ads/googleads_v0/proto/enums/device.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xf8\t\n\x02\x41\x64\x12\'\n\x02id\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x30\n\nfinal_urls\x18\x02 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12\x37\n\x11\x66inal_mobile_urls\x18\x10 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x15tracking_url_template\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12N\n\x15url_custom_parameters\x18\n \x03(\x0b\x32/.google.ads.googleads.v0.common.CustomParameter\x12\x31\n\x0b\x64isplay_url\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12>\n\x04type\x18\x05 \x01(\x0e\x32\x30.google.ads.googleads.v0.enums.AdTypeEnum.AdType\x12\x37\n\x13\x61\x64\x64\x65\x64_by_google_ads\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12K\n\x11\x64\x65vice_preference\x18\x14 \x01(\x0e\x32\x30.google.ads.googleads.v0.enums.DeviceEnum.Device\x12=\n\x07text_ad\x18\x06 \x01(\x0b\x32*.google.ads.googleads.v0.common.TextAdInfoH\x00\x12N\n\x10\x65xpanded_text_ad\x18\x07 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ExpandedTextAdInfoH\x00\x12P\n\x11\x64ynamic_search_ad\x18\x08 \x01(\x0b\x32\x33.google.ads.googleads.v0.common.DynamicSearchAdInfoH\x00\x12X\n\x15responsive_display_ad\x18\t \x01(\x0b\x32\x37.google.ads.googleads.v0.common.ResponsiveDisplayAdInfoH\x00\x12\x46\n\x0c\x63\x61ll_only_ad\x18\r \x01(\x0b\x32..google.ads.googleads.v0.common.CallOnlyAdInfoH\x00\x12\x61\n\x1a\x65xpanded_dynamic_search_ad\x18\x0e \x01(\x0b\x32;.google.ads.googleads.v0.common.ExpandedDynamicSearchAdInfoH\x00\x12?\n\x08hotel_ad\x18\x0f \x01(\x0b\x32+.google.ads.googleads.v0.common.HotelAdInfoH\x00\x12P\n\x11shopping_smart_ad\x18\x11 \x01(\x0b\x32\x33.google.ads.googleads.v0.common.ShoppingSmartAdInfoH\x00\x12T\n\x13shopping_product_ad\x18\x12 \x01(\x0b\x32\x35.google.ads.googleads.v0.common.ShoppingProductAdInfoH\x00\x42\t\n\x07\x61\x64_dataB\xcc\x01\n%com.google.ads.googleads.v0.resourcesB\x07\x41\x64ProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + serialized_pb=_b('\n0google/ads/googleads_v0/proto/resources/ad.proto\x12!google.ads.googleads.v0.resources\x1a\x38google/ads/googleads_v0/proto/common/ad_type_infos.proto\x1a;google/ads/googleads_v0/proto/common/custom_parameter.proto\x1a\x31google/ads/googleads_v0/proto/enums/ad_type.proto\x1a\x30google/ads/googleads_v0/proto/enums/device.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xa6\x0b\n\x02\x41\x64\x12\'\n\x02id\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x30\n\nfinal_urls\x18\x02 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12\x37\n\x11\x66inal_mobile_urls\x18\x10 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x15tracking_url_template\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12N\n\x15url_custom_parameters\x18\n \x03(\x0b\x32/.google.ads.googleads.v0.common.CustomParameter\x12\x31\n\x0b\x64isplay_url\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12>\n\x04type\x18\x05 \x01(\x0e\x32\x30.google.ads.googleads.v0.enums.AdTypeEnum.AdType\x12\x37\n\x13\x61\x64\x64\x65\x64_by_google_ads\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12K\n\x11\x64\x65vice_preference\x18\x14 \x01(\x0e\x32\x30.google.ads.googleads.v0.enums.DeviceEnum.Device\x12*\n\x04name\x18\x17 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12=\n\x07text_ad\x18\x06 \x01(\x0b\x32*.google.ads.googleads.v0.common.TextAdInfoH\x00\x12N\n\x10\x65xpanded_text_ad\x18\x07 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ExpandedTextAdInfoH\x00\x12P\n\x11\x64ynamic_search_ad\x18\x08 \x01(\x0b\x32\x33.google.ads.googleads.v0.common.DynamicSearchAdInfoH\x00\x12X\n\x15responsive_display_ad\x18\t \x01(\x0b\x32\x37.google.ads.googleads.v0.common.ResponsiveDisplayAdInfoH\x00\x12\x46\n\x0c\x63\x61ll_only_ad\x18\r \x01(\x0b\x32..google.ads.googleads.v0.common.CallOnlyAdInfoH\x00\x12\x61\n\x1a\x65xpanded_dynamic_search_ad\x18\x0e \x01(\x0b\x32;.google.ads.googleads.v0.common.ExpandedDynamicSearchAdInfoH\x00\x12?\n\x08hotel_ad\x18\x0f \x01(\x0b\x32+.google.ads.googleads.v0.common.HotelAdInfoH\x00\x12P\n\x11shopping_smart_ad\x18\x11 \x01(\x0b\x32\x33.google.ads.googleads.v0.common.ShoppingSmartAdInfoH\x00\x12T\n\x13shopping_product_ad\x18\x12 \x01(\x0b\x32\x35.google.ads.googleads.v0.common.ShoppingProductAdInfoH\x00\x12?\n\x08gmail_ad\x18\x15 \x01(\x0b\x32+.google.ads.googleads.v0.common.GmailAdInfoH\x00\x12?\n\x08image_ad\x18\x16 \x01(\x0b\x32+.google.ads.googleads.v0.common.ImageAdInfoH\x00\x42\t\n\x07\x61\x64_dataB\xcc\x01\n%com.google.ads.googleads.v0.resourcesB\x07\x41\x64ProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') , dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_custom__parameter__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -102,68 +102,89 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='text_ad', full_name='google.ads.googleads.v0.resources.Ad.text_ad', index=9, + name='name', full_name='google.ads.googleads.v0.resources.Ad.name', index=9, + number=23, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='text_ad', full_name='google.ads.googleads.v0.resources.Ad.text_ad', index=10, number=6, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='expanded_text_ad', full_name='google.ads.googleads.v0.resources.Ad.expanded_text_ad', index=10, + name='expanded_text_ad', full_name='google.ads.googleads.v0.resources.Ad.expanded_text_ad', index=11, number=7, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='dynamic_search_ad', full_name='google.ads.googleads.v0.resources.Ad.dynamic_search_ad', index=11, + name='dynamic_search_ad', full_name='google.ads.googleads.v0.resources.Ad.dynamic_search_ad', index=12, number=8, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='responsive_display_ad', full_name='google.ads.googleads.v0.resources.Ad.responsive_display_ad', index=12, + name='responsive_display_ad', full_name='google.ads.googleads.v0.resources.Ad.responsive_display_ad', index=13, number=9, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='call_only_ad', full_name='google.ads.googleads.v0.resources.Ad.call_only_ad', index=13, + name='call_only_ad', full_name='google.ads.googleads.v0.resources.Ad.call_only_ad', index=14, number=13, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='expanded_dynamic_search_ad', full_name='google.ads.googleads.v0.resources.Ad.expanded_dynamic_search_ad', index=14, + name='expanded_dynamic_search_ad', full_name='google.ads.googleads.v0.resources.Ad.expanded_dynamic_search_ad', index=15, number=14, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='hotel_ad', full_name='google.ads.googleads.v0.resources.Ad.hotel_ad', index=15, + name='hotel_ad', full_name='google.ads.googleads.v0.resources.Ad.hotel_ad', index=16, number=15, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='shopping_smart_ad', full_name='google.ads.googleads.v0.resources.Ad.shopping_smart_ad', index=16, + name='shopping_smart_ad', full_name='google.ads.googleads.v0.resources.Ad.shopping_smart_ad', index=17, number=17, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='shopping_product_ad', full_name='google.ads.googleads.v0.resources.Ad.shopping_product_ad', index=17, + name='shopping_product_ad', full_name='google.ads.googleads.v0.resources.Ad.shopping_product_ad', index=18, number=18, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='gmail_ad', full_name='google.ads.googleads.v0.resources.Ad.gmail_ad', index=19, + number=21, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='image_ad', full_name='google.ads.googleads.v0.resources.Ad.image_ad', index=20, + number=22, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -180,7 +201,7 @@ index=0, containing_type=None, fields=[]), ], serialized_start=340, - serialized_end=1612, + serialized_end=1786, ) _AD.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE @@ -192,6 +213,7 @@ _AD.fields_by_name['type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__type__pb2._ADTYPEENUM_ADTYPE _AD.fields_by_name['added_by_google_ads'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE _AD.fields_by_name['device_preference'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2._DEVICEENUM_DEVICE +_AD.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _AD.fields_by_name['text_ad'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2._TEXTADINFO _AD.fields_by_name['expanded_text_ad'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2._EXPANDEDTEXTADINFO _AD.fields_by_name['dynamic_search_ad'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2._DYNAMICSEARCHADINFO @@ -201,6 +223,8 @@ _AD.fields_by_name['hotel_ad'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2._HOTELADINFO _AD.fields_by_name['shopping_smart_ad'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2._SHOPPINGSMARTADINFO _AD.fields_by_name['shopping_product_ad'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2._SHOPPINGPRODUCTADINFO +_AD.fields_by_name['gmail_ad'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2._GMAILADINFO +_AD.fields_by_name['image_ad'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_ad__type__infos__pb2._IMAGEADINFO _AD.oneofs_by_name['ad_data'].fields.append( _AD.fields_by_name['text_ad']) _AD.fields_by_name['text_ad'].containing_oneof = _AD.oneofs_by_name['ad_data'] @@ -228,12 +252,18 @@ _AD.oneofs_by_name['ad_data'].fields.append( _AD.fields_by_name['shopping_product_ad']) _AD.fields_by_name['shopping_product_ad'].containing_oneof = _AD.oneofs_by_name['ad_data'] +_AD.oneofs_by_name['ad_data'].fields.append( + _AD.fields_by_name['gmail_ad']) +_AD.fields_by_name['gmail_ad'].containing_oneof = _AD.oneofs_by_name['ad_data'] +_AD.oneofs_by_name['ad_data'].fields.append( + _AD.fields_by_name['image_ad']) +_AD.fields_by_name['image_ad'].containing_oneof = _AD.oneofs_by_name['ad_data'] DESCRIPTOR.message_types_by_name['Ad'] = _AD _sym_db.RegisterFileDescriptor(DESCRIPTOR) Ad = _reflection.GeneratedProtocolMessageType('Ad', (_message.Message,), dict( DESCRIPTOR = _AD, - __module__ = 'google.ads.googleads_v0.proto.resources.ad_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.ad_pb2' , __doc__ = """An ad. @@ -271,6 +301,10 @@ types, e.g. if no other ads are available. If unspecified (no device preference), all devices are targeted. This is only supported by some ad types. + name: + The name of the ad. This is only used to be able to identify + the ad. It does not need to be unique and does not affect the + served ad. ad_data: Details pertinent to the ad type. Exactly one value must be set. @@ -296,6 +330,10 @@ Details pertaining to a Smart Shopping ad. shopping_product_ad: Details pertaining to a Shopping product ad. + gmail_ad: + Details pertaining to a Gmail ad. + image_ad: + Details pertaining to an Image ad. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.Ad) )) diff --git a/google/ads/google_ads/v0/proto/resources/age_range_view_pb2.py b/google/ads/google_ads/v0/proto/resources/age_range_view_pb2.py index 1d62a363e..cdf9cdefa 100644 --- a/google/ads/google_ads/v0/proto/resources/age_range_view_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/age_range_view_pb2.py @@ -60,7 +60,7 @@ AgeRangeView = _reflection.GeneratedProtocolMessageType('AgeRangeView', (_message.Message,), dict( DESCRIPTOR = _AGERANGEVIEW, - __module__ = 'google.ads.googleads_v0.proto.resources.age_range_view_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.age_range_view_pb2' , __doc__ = """An age range view. diff --git a/google/ads/google_ads/v0/proto/resources/bidding_strategy_pb2.py b/google/ads/google_ads/v0/proto/resources/bidding_strategy_pb2.py index 61cc5c1c1..493b4ff8d 100644 --- a/google/ads/google_ads/v0/proto/resources/bidding_strategy_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/bidding_strategy_pb2.py @@ -157,7 +157,7 @@ BiddingStrategy = _reflection.GeneratedProtocolMessageType('BiddingStrategy', (_message.Message,), dict( DESCRIPTOR = _BIDDINGSTRATEGY, - __module__ = 'google.ads.googleads_v0.proto.resources.bidding_strategy_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.bidding_strategy_pb2' , __doc__ = """A bidding strategy. diff --git a/google/ads/google_ads/v0/proto/resources/billing_setup_pb2.py b/google/ads/google_ads/v0/proto/resources/billing_setup_pb2.py index 0932fd017..7ae73f795 100644 --- a/google/ads/google_ads/v0/proto/resources/billing_setup_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/billing_setup_pb2.py @@ -22,7 +22,7 @@ name='google/ads/googleads_v0/proto/resources/billing_setup.proto', package='google.ads.googleads.v0.resources', syntax='proto3', - serialized_pb=_b('\n;google/ads/googleads_v0/proto/resources/billing_setup.proto\x12!google.ads.googleads.v0.resources\x1a>google/ads/googleads_v0/proto/enums/billing_setup_status.proto\x1a\x33google/ads/googleads_v0/proto/enums/time_type.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xa9\x06\n\x0c\x42illingSetup\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\'\n\x02id\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12X\n\x06status\x18\x03 \x01(\x0e\x32H.google.ads.googleads.v0.enums.BillingSetupStatusEnum.BillingSetupStatus\x12\x36\n\x10payments_account\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x62\n\x15payments_account_info\x18\x0c \x01(\x0b\x32\x43.google.ads.googleads.v0.resources.BillingSetup.PaymentsAccountInfo\x12\x37\n\x0fstart_date_time\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x00\x12O\n\x0fstart_time_type\x18\n \x01(\x0e\x32\x34.google.ads.googleads.v0.enums.TimeTypeEnum.TimeTypeH\x00\x1a\xca\x02\n\x13PaymentsAccountInfo\x12\x39\n\x13payments_account_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x15payments_account_name\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x39\n\x13payments_profile_id\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x15payments_profile_name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x43\n\x1dsecondary_payments_profile_id\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\x0c\n\nstart_timeB\xd6\x01\n%com.google.ads.googleads.v0.resourcesB\x11\x42illingSetupProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + serialized_pb=_b('\n;google/ads/googleads_v0/proto/resources/billing_setup.proto\x12!google.ads.googleads.v0.resources\x1a>google/ads/googleads_v0/proto/enums/billing_setup_status.proto\x1a\x33google/ads/googleads_v0/proto/enums/time_type.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xbb\x07\n\x0c\x42illingSetup\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\'\n\x02id\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12X\n\x06status\x18\x03 \x01(\x0e\x32H.google.ads.googleads.v0.enums.BillingSetupStatusEnum.BillingSetupStatus\x12\x36\n\x10payments_account\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x62\n\x15payments_account_info\x18\x0c \x01(\x0b\x32\x43.google.ads.googleads.v0.resources.BillingSetup.PaymentsAccountInfo\x12\x37\n\x0fstart_date_time\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x00\x12O\n\x0fstart_time_type\x18\n \x01(\x0e\x32\x34.google.ads.googleads.v0.enums.TimeTypeEnum.TimeTypeH\x00\x12\x35\n\rend_date_time\x18\r \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x01\x12M\n\rend_time_type\x18\x0e \x01(\x0e\x32\x34.google.ads.googleads.v0.enums.TimeTypeEnum.TimeTypeH\x01\x1a\xca\x02\n\x13PaymentsAccountInfo\x12\x39\n\x13payments_account_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x15payments_account_name\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x39\n\x13payments_profile_id\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x15payments_profile_name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x43\n\x1dsecondary_payments_profile_id\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\x0c\n\nstart_timeB\n\n\x08\x65nd_timeB\xd6\x01\n%com.google.ads.googleads.v0.resourcesB\x11\x42illingSetupProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') , dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_billing__setup__status__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_time__type__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -83,8 +83,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=713, - serialized_end=1043, + serialized_start=847, + serialized_end=1177, ) _BILLINGSETUP = _descriptor.Descriptor( @@ -143,6 +143,20 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='end_date_time', full_name='google.ads.googleads.v0.resources.BillingSetup.end_date_time', index=7, + number=13, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='end_time_type', full_name='google.ads.googleads.v0.resources.BillingSetup.end_time_type', index=8, + number=14, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -157,9 +171,12 @@ _descriptor.OneofDescriptor( name='start_time', full_name='google.ads.googleads.v0.resources.BillingSetup.start_time', index=0, containing_type=None, fields=[]), + _descriptor.OneofDescriptor( + name='end_time', full_name='google.ads.googleads.v0.resources.BillingSetup.end_time', + index=1, containing_type=None, fields=[]), ], serialized_start=248, - serialized_end=1057, + serialized_end=1203, ) _BILLINGSETUP_PAYMENTSACCOUNTINFO.fields_by_name['payments_account_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE @@ -174,12 +191,20 @@ _BILLINGSETUP.fields_by_name['payments_account_info'].message_type = _BILLINGSETUP_PAYMENTSACCOUNTINFO _BILLINGSETUP.fields_by_name['start_date_time'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _BILLINGSETUP.fields_by_name['start_time_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_time__type__pb2._TIMETYPEENUM_TIMETYPE +_BILLINGSETUP.fields_by_name['end_date_time'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_BILLINGSETUP.fields_by_name['end_time_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_time__type__pb2._TIMETYPEENUM_TIMETYPE _BILLINGSETUP.oneofs_by_name['start_time'].fields.append( _BILLINGSETUP.fields_by_name['start_date_time']) _BILLINGSETUP.fields_by_name['start_date_time'].containing_oneof = _BILLINGSETUP.oneofs_by_name['start_time'] _BILLINGSETUP.oneofs_by_name['start_time'].fields.append( _BILLINGSETUP.fields_by_name['start_time_type']) _BILLINGSETUP.fields_by_name['start_time_type'].containing_oneof = _BILLINGSETUP.oneofs_by_name['start_time'] +_BILLINGSETUP.oneofs_by_name['end_time'].fields.append( + _BILLINGSETUP.fields_by_name['end_date_time']) +_BILLINGSETUP.fields_by_name['end_date_time'].containing_oneof = _BILLINGSETUP.oneofs_by_name['end_time'] +_BILLINGSETUP.oneofs_by_name['end_time'].fields.append( + _BILLINGSETUP.fields_by_name['end_time_type']) +_BILLINGSETUP.fields_by_name['end_time_type'].containing_oneof = _BILLINGSETUP.oneofs_by_name['end_time'] DESCRIPTOR.message_types_by_name['BillingSetup'] = _BILLINGSETUP _sym_db.RegisterFileDescriptor(DESCRIPTOR) @@ -187,7 +212,7 @@ PaymentsAccountInfo = _reflection.GeneratedProtocolMessageType('PaymentsAccountInfo', (_message.Message,), dict( DESCRIPTOR = _BILLINGSETUP_PAYMENTSACCOUNTINFO, - __module__ = 'google.ads.googleads_v0.proto.resources.billing_setup_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.billing_setup_pb2' , __doc__ = """Container of Payments account information for this billing. @@ -218,7 +243,7 @@ )) , DESCRIPTOR = _BILLINGSETUP, - __module__ = 'google.ads.googleads_v0.proto.resources.billing_setup_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.billing_setup_pb2' , __doc__ = """A billing setup across Ads and Payments systems; an association between a Payments account and an advertiser. A billing setup is specific to one @@ -261,6 +286,13 @@ format. Only a future time is allowed. start_time_type: The start time as a type. Only NOW is allowed. + end_time: + When the billing setup ends / ended. This is either FOREVER or + the start time of the next scheduled billing setup. + end_date_time: + The end date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. + end_time_type: + The end time as a type. The only possible value is FOREVER. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.BillingSetup) )) diff --git a/google/ads/google_ads/v0/proto/resources/campaign_audience_view_pb2.py b/google/ads/google_ads/v0/proto/resources/campaign_audience_view_pb2.py new file mode 100644 index 000000000..9de4ad58b --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/campaign_audience_view_pb2.py @@ -0,0 +1,85 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/campaign_audience_view.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/campaign_audience_view.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\nDgoogle/ads/googleads_v0/proto/resources/campaign_audience_view.proto\x12!google.ads.googleads.v0.resources\"-\n\x14\x43\x61mpaignAudienceView\x12\x15\n\rresource_name\x18\x01 \x01(\tB\xde\x01\n%com.google.ads.googleads.v0.resourcesB\x19\x43\x61mpaignAudienceViewProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') +) + + + + +_CAMPAIGNAUDIENCEVIEW = _descriptor.Descriptor( + name='CampaignAudienceView', + full_name='google.ads.googleads.v0.resources.CampaignAudienceView', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.CampaignAudienceView.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=107, + serialized_end=152, +) + +DESCRIPTOR.message_types_by_name['CampaignAudienceView'] = _CAMPAIGNAUDIENCEVIEW +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CampaignAudienceView = _reflection.GeneratedProtocolMessageType('CampaignAudienceView', (_message.Message,), dict( + DESCRIPTOR = _CAMPAIGNAUDIENCEVIEW, + __module__ = 'google.ads.google_ads.v0.proto.resources.campaign_audience_view_pb2' + , + __doc__ = """A campaign audience view. Includes performance data from interests and + remarketing lists for Display Network and YouTube Network ads, and + remarketing lists for search ads (RLSA), aggregated by campaign and + audience criterion. This view only includes audiences attached at the + campaign level. + + + Attributes: + resource_name: + The resource name of the campaign audience view. Campaign + audience view resource names have the form: ``customers/{cust + omer_id}/campaignAudienceViews/{campaign_id}_{criterion_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.CampaignAudienceView) + )) +_sym_db.RegisterMessage(CampaignAudienceView) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\031CampaignAudienceViewProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/campaign_audience_view_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/campaign_audience_view_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/campaign_audience_view_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/campaign_bid_modifier_pb2.py b/google/ads/google_ads/v0/proto/resources/campaign_bid_modifier_pb2.py index 25f05964c..98f4e7677 100644 --- a/google/ads/google_ads/v0/proto/resources/campaign_bid_modifier_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/campaign_bid_modifier_pb2.py @@ -101,7 +101,7 @@ CampaignBidModifier = _reflection.GeneratedProtocolMessageType('CampaignBidModifier', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNBIDMODIFIER, - __module__ = 'google.ads.googleads_v0.proto.resources.campaign_bid_modifier_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.campaign_bid_modifier_pb2' , __doc__ = """Represents a bid-modifiable only criterion at the campaign level. diff --git a/google/ads/google_ads/v0/proto/resources/campaign_budget_pb2.py b/google/ads/google_ads/v0/proto/resources/campaign_budget_pb2.py index e828ac1cd..a6c1b572a 100644 --- a/google/ads/google_ads/v0/proto/resources/campaign_budget_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/campaign_budget_pb2.py @@ -22,7 +22,7 @@ name='google/ads/googleads_v0/proto/resources/campaign_budget.proto', package='google.ads.googleads.v0.resources', syntax='proto3', - serialized_pb=_b('\n=google/ads/googleads_v0/proto/resources/campaign_budget.proto\x12!google.ads.googleads.v0.resources\x1a@google/ads/googleads_v0/proto/enums/budget_delivery_method.proto\x1a\x37google/ads/googleads_v0/proto/enums/budget_status.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xd2\x03\n\x0e\x43\x61mpaignBudget\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\'\n\x02id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12*\n\x04name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\ramount_micros\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12L\n\x06status\x18\x06 \x01(\x0e\x32<.google.ads.googleads.v0.enums.BudgetStatusEnum.BudgetStatus\x12\x65\n\x0f\x64\x65livery_method\x18\x07 \x01(\x0e\x32L.google.ads.googleads.v0.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod\x12\x35\n\x11\x65xplicitly_shared\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x34\n\x0freference_count\x18\t \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\xd8\x01\n%com.google.ads.googleads.v0.resourcesB\x13\x43\x61mpaignBudgetProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + serialized_pb=_b('\n=google/ads/googleads_v0/proto/resources/campaign_budget.proto\x12!google.ads.googleads.v0.resources\x1a@google/ads/googleads_v0/proto/enums/budget_delivery_method.proto\x1a\x37google/ads/googleads_v0/proto/enums/budget_status.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\x8c\x04\n\x0e\x43\x61mpaignBudget\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\'\n\x02id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12*\n\x04name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\ramount_micros\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x38\n\x13total_amount_micros\x18\n \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12L\n\x06status\x18\x06 \x01(\x0e\x32<.google.ads.googleads.v0.enums.BudgetStatusEnum.BudgetStatus\x12\x65\n\x0f\x64\x65livery_method\x18\x07 \x01(\x0e\x32L.google.ads.googleads.v0.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod\x12\x35\n\x11\x65xplicitly_shared\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x34\n\x0freference_count\x18\t \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\xd8\x01\n%com.google.ads.googleads.v0.resourcesB\x13\x43\x61mpaignBudgetProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') , dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_budget__delivery__method__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_budget__status__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -65,28 +65,35 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='status', full_name='google.ads.googleads.v0.resources.CampaignBudget.status', index=4, + name='total_amount_micros', full_name='google.ads.googleads.v0.resources.CampaignBudget.total_amount_micros', index=4, + number=10, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='status', full_name='google.ads.googleads.v0.resources.CampaignBudget.status', index=5, number=6, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='delivery_method', full_name='google.ads.googleads.v0.resources.CampaignBudget.delivery_method', index=5, + name='delivery_method', full_name='google.ads.googleads.v0.resources.CampaignBudget.delivery_method', index=6, number=7, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='explicitly_shared', full_name='google.ads.googleads.v0.resources.CampaignBudget.explicitly_shared', index=6, + name='explicitly_shared', full_name='google.ads.googleads.v0.resources.CampaignBudget.explicitly_shared', index=7, number=8, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='reference_count', full_name='google.ads.googleads.v0.resources.CampaignBudget.reference_count', index=7, + name='reference_count', full_name='google.ads.googleads.v0.resources.CampaignBudget.reference_count', index=8, number=9, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -105,12 +112,13 @@ oneofs=[ ], serialized_start=256, - serialized_end=722, + serialized_end=780, ) _CAMPAIGNBUDGET.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE _CAMPAIGNBUDGET.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _CAMPAIGNBUDGET.fields_by_name['amount_micros'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_CAMPAIGNBUDGET.fields_by_name['total_amount_micros'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE _CAMPAIGNBUDGET.fields_by_name['status'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_budget__status__pb2._BUDGETSTATUSENUM_BUDGETSTATUS _CAMPAIGNBUDGET.fields_by_name['delivery_method'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_budget__delivery__method__pb2._BUDGETDELIVERYMETHODENUM_BUDGETDELIVERYMETHOD _CAMPAIGNBUDGET.fields_by_name['explicitly_shared'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE @@ -120,7 +128,7 @@ CampaignBudget = _reflection.GeneratedProtocolMessageType('CampaignBudget', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNBUDGET, - __module__ = 'google.ads.googleads_v0.proto.resources.campaign_budget_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.campaign_budget_pb2' , __doc__ = """A campaign budget. @@ -148,6 +156,10 @@ The amount of the budget, in the local currency for the account. Amount is specified in micros, where one million is equivalent to one currency unit. + total_amount_micros: + The lifetime amount of the budget, in the local currency for + the account. Amount is specified in micros, where one million + is equivalent to one currency unit. status: The status of this campaign budget. This field is read-only. delivery_method: diff --git a/google/ads/google_ads/v0/proto/resources/campaign_criterion_pb2.py b/google/ads/google_ads/v0/proto/resources/campaign_criterion_pb2.py index ef45a8bad..a354f1ea1 100644 --- a/google/ads/google_ads/v0/proto/resources/campaign_criterion_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/campaign_criterion_pb2.py @@ -22,7 +22,7 @@ name='google/ads/googleads_v0/proto/resources/campaign_criterion.proto', package='google.ads.googleads.v0.resources', syntax='proto3', - serialized_pb=_b('\n@google/ads/googleads_v0/proto/resources/campaign_criterion.proto\x12!google.ads.googleads.v0.resources\x1a\x33google/ads/googleads_v0/proto/common/criteria.proto\x1a\x38google/ads/googleads_v0/proto/enums/criterion_type.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xc7\t\n\x11\x43\x61mpaignCriterion\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12.\n\x08\x63\x61mpaign\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0c\x63riterion_id\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x31\n\x0c\x62id_modifier\x18\x0e \x01(\x0b\x32\x1b.google.protobuf.FloatValue\x12,\n\x08negative\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12L\n\x04type\x18\x06 \x01(\x0e\x32>.google.ads.googleads.v0.enums.CriterionTypeEnum.CriterionType\x12>\n\x07keyword\x18\x08 \x01(\x0b\x32+.google.ads.googleads.v0.common.KeywordInfoH\x00\x12\x42\n\tplacement\x18\t \x01(\x0b\x32-.google.ads.googleads.v0.common.PlacementInfoH\x00\x12@\n\x08location\x18\x0c \x01(\x0b\x32,.google.ads.googleads.v0.common.LocationInfoH\x00\x12<\n\x06\x64\x65vice\x18\r \x01(\x0b\x32*.google.ads.googleads.v0.common.DeviceInfoH\x00\x12\x45\n\x0b\x61\x64_schedule\x18\x0f \x01(\x0b\x32..google.ads.googleads.v0.common.AdScheduleInfoH\x00\x12\x41\n\tage_range\x18\x10 \x01(\x0b\x32,.google.ads.googleads.v0.common.AgeRangeInfoH\x00\x12<\n\x06gender\x18\x11 \x01(\x0b\x32*.google.ads.googleads.v0.common.GenderInfoH\x00\x12G\n\x0cincome_range\x18\x12 \x01(\x0b\x32/.google.ads.googleads.v0.common.IncomeRangeInfoH\x00\x12M\n\x0fparental_status\x18\x13 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ParentalStatusInfoH\x00\x12I\n\ryoutube_video\x18\x14 \x01(\x0b\x32\x30.google.ads.googleads.v0.common.YouTubeVideoInfoH\x00\x12M\n\x0fyoutube_channel\x18\x15 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.YouTubeChannelInfoH\x00\x12\x42\n\tproximity\x18\x17 \x01(\x0b\x32-.google.ads.googleads.v0.common.ProximityInfoH\x00\x12:\n\x05topic\x18\x18 \x01(\x0b\x32).google.ads.googleads.v0.common.TopicInfoH\x00\x42\x0b\n\tcriterionB\xdb\x01\n%com.google.ads.googleads.v0.resourcesB\x16\x43\x61mpaignCriterionProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + serialized_pb=_b('\n@google/ads/googleads_v0/proto/resources/campaign_criterion.proto\x12!google.ads.googleads.v0.resources\x1a\x33google/ads/googleads_v0/proto/common/criteria.proto\x1a\x38google/ads/googleads_v0/proto/enums/criterion_type.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xae\r\n\x11\x43\x61mpaignCriterion\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12.\n\x08\x63\x61mpaign\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0c\x63riterion_id\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x31\n\x0c\x62id_modifier\x18\x0e \x01(\x0b\x32\x1b.google.protobuf.FloatValue\x12,\n\x08negative\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12L\n\x04type\x18\x06 \x01(\x0e\x32>.google.ads.googleads.v0.enums.CriterionTypeEnum.CriterionType\x12>\n\x07keyword\x18\x08 \x01(\x0b\x32+.google.ads.googleads.v0.common.KeywordInfoH\x00\x12\x42\n\tplacement\x18\t \x01(\x0b\x32-.google.ads.googleads.v0.common.PlacementInfoH\x00\x12@\n\x08location\x18\x0c \x01(\x0b\x32,.google.ads.googleads.v0.common.LocationInfoH\x00\x12<\n\x06\x64\x65vice\x18\r \x01(\x0b\x32*.google.ads.googleads.v0.common.DeviceInfoH\x00\x12\x45\n\x0b\x61\x64_schedule\x18\x0f \x01(\x0b\x32..google.ads.googleads.v0.common.AdScheduleInfoH\x00\x12\x41\n\tage_range\x18\x10 \x01(\x0b\x32,.google.ads.googleads.v0.common.AgeRangeInfoH\x00\x12<\n\x06gender\x18\x11 \x01(\x0b\x32*.google.ads.googleads.v0.common.GenderInfoH\x00\x12G\n\x0cincome_range\x18\x12 \x01(\x0b\x32/.google.ads.googleads.v0.common.IncomeRangeInfoH\x00\x12M\n\x0fparental_status\x18\x13 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.ParentalStatusInfoH\x00\x12\x41\n\tuser_list\x18\x16 \x01(\x0b\x32,.google.ads.googleads.v0.common.UserListInfoH\x00\x12I\n\ryoutube_video\x18\x14 \x01(\x0b\x32\x30.google.ads.googleads.v0.common.YouTubeVideoInfoH\x00\x12M\n\x0fyoutube_channel\x18\x15 \x01(\x0b\x32\x32.google.ads.googleads.v0.common.YouTubeChannelInfoH\x00\x12\x42\n\tproximity\x18\x17 \x01(\x0b\x32-.google.ads.googleads.v0.common.ProximityInfoH\x00\x12:\n\x05topic\x18\x18 \x01(\x0b\x32).google.ads.googleads.v0.common.TopicInfoH\x00\x12I\n\rlisting_scope\x18\x19 \x01(\x0b\x32\x30.google.ads.googleads.v0.common.ListingScopeInfoH\x00\x12@\n\x08language\x18\x1a \x01(\x0b\x32,.google.ads.googleads.v0.common.LanguageInfoH\x00\x12?\n\x08ip_block\x18\x1b \x01(\x0b\x32+.google.ads.googleads.v0.common.IpBlockInfoH\x00\x12I\n\rcontent_label\x18\x1c \x01(\x0b\x32\x30.google.ads.googleads.v0.common.ContentLabelInfoH\x00\x12>\n\x07\x63\x61rrier\x18\x1d \x01(\x0b\x32+.google.ads.googleads.v0.common.CarrierInfoH\x00\x12I\n\ruser_interest\x18\x1e \x01(\x0b\x32\x30.google.ads.googleads.v0.common.UserInterestInfoH\x00\x42\x0b\n\tcriterionB\xdb\x01\n%com.google.ads.googleads.v0.resourcesB\x16\x43\x61mpaignCriterionProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') , dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_criterion__type__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -142,33 +142,82 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='youtube_video', full_name='google.ads.googleads.v0.resources.CampaignCriterion.youtube_video', index=15, + name='user_list', full_name='google.ads.googleads.v0.resources.CampaignCriterion.user_list', index=15, + number=22, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='youtube_video', full_name='google.ads.googleads.v0.resources.CampaignCriterion.youtube_video', index=16, number=20, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='youtube_channel', full_name='google.ads.googleads.v0.resources.CampaignCriterion.youtube_channel', index=16, + name='youtube_channel', full_name='google.ads.googleads.v0.resources.CampaignCriterion.youtube_channel', index=17, number=21, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='proximity', full_name='google.ads.googleads.v0.resources.CampaignCriterion.proximity', index=17, + name='proximity', full_name='google.ads.googleads.v0.resources.CampaignCriterion.proximity', index=18, number=23, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='topic', full_name='google.ads.googleads.v0.resources.CampaignCriterion.topic', index=18, + name='topic', full_name='google.ads.googleads.v0.resources.CampaignCriterion.topic', index=19, number=24, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='listing_scope', full_name='google.ads.googleads.v0.resources.CampaignCriterion.listing_scope', index=20, + number=25, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='language', full_name='google.ads.googleads.v0.resources.CampaignCriterion.language', index=21, + number=26, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ip_block', full_name='google.ads.googleads.v0.resources.CampaignCriterion.ip_block', index=22, + number=27, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='content_label', full_name='google.ads.googleads.v0.resources.CampaignCriterion.content_label', index=23, + number=28, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='carrier', full_name='google.ads.googleads.v0.resources.CampaignCriterion.carrier', index=24, + number=29, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='user_interest', full_name='google.ads.googleads.v0.resources.CampaignCriterion.user_interest', index=25, + number=30, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -185,7 +234,7 @@ index=0, containing_type=None, fields=[]), ], serialized_start=247, - serialized_end=1470, + serialized_end=1957, ) _CAMPAIGNCRITERION.fields_by_name['campaign'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE @@ -202,10 +251,17 @@ _CAMPAIGNCRITERION.fields_by_name['gender'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._GENDERINFO _CAMPAIGNCRITERION.fields_by_name['income_range'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._INCOMERANGEINFO _CAMPAIGNCRITERION.fields_by_name['parental_status'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._PARENTALSTATUSINFO +_CAMPAIGNCRITERION.fields_by_name['user_list'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._USERLISTINFO _CAMPAIGNCRITERION.fields_by_name['youtube_video'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._YOUTUBEVIDEOINFO _CAMPAIGNCRITERION.fields_by_name['youtube_channel'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._YOUTUBECHANNELINFO _CAMPAIGNCRITERION.fields_by_name['proximity'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._PROXIMITYINFO _CAMPAIGNCRITERION.fields_by_name['topic'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._TOPICINFO +_CAMPAIGNCRITERION.fields_by_name['listing_scope'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._LISTINGSCOPEINFO +_CAMPAIGNCRITERION.fields_by_name['language'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._LANGUAGEINFO +_CAMPAIGNCRITERION.fields_by_name['ip_block'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._IPBLOCKINFO +_CAMPAIGNCRITERION.fields_by_name['content_label'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._CONTENTLABELINFO +_CAMPAIGNCRITERION.fields_by_name['carrier'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._CARRIERINFO +_CAMPAIGNCRITERION.fields_by_name['user_interest'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criteria__pb2._USERINTERESTINFO _CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( _CAMPAIGNCRITERION.fields_by_name['keyword']) _CAMPAIGNCRITERION.fields_by_name['keyword'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] @@ -233,6 +289,9 @@ _CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( _CAMPAIGNCRITERION.fields_by_name['parental_status']) _CAMPAIGNCRITERION.fields_by_name['parental_status'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] +_CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( + _CAMPAIGNCRITERION.fields_by_name['user_list']) +_CAMPAIGNCRITERION.fields_by_name['user_list'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] _CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( _CAMPAIGNCRITERION.fields_by_name['youtube_video']) _CAMPAIGNCRITERION.fields_by_name['youtube_video'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] @@ -245,12 +304,30 @@ _CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( _CAMPAIGNCRITERION.fields_by_name['topic']) _CAMPAIGNCRITERION.fields_by_name['topic'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] +_CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( + _CAMPAIGNCRITERION.fields_by_name['listing_scope']) +_CAMPAIGNCRITERION.fields_by_name['listing_scope'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] +_CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( + _CAMPAIGNCRITERION.fields_by_name['language']) +_CAMPAIGNCRITERION.fields_by_name['language'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] +_CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( + _CAMPAIGNCRITERION.fields_by_name['ip_block']) +_CAMPAIGNCRITERION.fields_by_name['ip_block'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] +_CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( + _CAMPAIGNCRITERION.fields_by_name['content_label']) +_CAMPAIGNCRITERION.fields_by_name['content_label'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] +_CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( + _CAMPAIGNCRITERION.fields_by_name['carrier']) +_CAMPAIGNCRITERION.fields_by_name['carrier'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] +_CAMPAIGNCRITERION.oneofs_by_name['criterion'].fields.append( + _CAMPAIGNCRITERION.fields_by_name['user_interest']) +_CAMPAIGNCRITERION.fields_by_name['user_interest'].containing_oneof = _CAMPAIGNCRITERION.oneofs_by_name['criterion'] DESCRIPTOR.message_types_by_name['CampaignCriterion'] = _CAMPAIGNCRITERION _sym_db.RegisterFileDescriptor(DESCRIPTOR) CampaignCriterion = _reflection.GeneratedProtocolMessageType('CampaignCriterion', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNCRITERION, - __module__ = 'google.ads.googleads_v0.proto.resources.campaign_criterion_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.campaign_criterion_pb2' , __doc__ = """A campaign criterion. @@ -294,6 +371,8 @@ Income range. parental_status: Parental status. + user_list: + User List. youtube_video: YouTube Video. youtube_channel: @@ -302,6 +381,18 @@ Proximity. topic: Topic. + listing_scope: + Listing scope. + language: + Language. + ip_block: + IpBlock. + content_label: + ContentLabel. + carrier: + Carrier. + user_interest: + User Interest. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.CampaignCriterion) )) diff --git a/google/ads/google_ads/v0/proto/resources/campaign_feed_pb2.py b/google/ads/google_ads/v0/proto/resources/campaign_feed_pb2.py new file mode 100644 index 000000000..8e96ebdc7 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/campaign_feed_pb2.py @@ -0,0 +1,139 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/campaign_feed.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.common import matching_function_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_matching__function__pb2 +from google.ads.google_ads.v0.proto.enums import feed_link_status_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__link__status__pb2 +from google.ads.google_ads.v0.proto.enums import placeholder_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_placeholder__type__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/campaign_feed.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\n;google/ads/googleads_v0/proto/resources/campaign_feed.proto\x12!google.ads.googleads.v0.resources\x1agoogle/ads/googleads_v0/proto/resources/carrier_constant.proto\x12!google.ads.googleads.v0.resources\x1a\x1egoogle/protobuf/wrappers.proto\"\xb1\x01\n\x0f\x43\x61rrierConstant\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\'\n\x02id\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12*\n\x04name\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x63ountry_code\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\xd9\x01\n%com.google.ads.googleads.v0.resourcesB\x14\x43\x61rrierConstantProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_CARRIERCONSTANT = _descriptor.Descriptor( + name='CarrierConstant', + full_name='google.ads.googleads.v0.resources.CarrierConstant', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.CarrierConstant.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='id', full_name='google.ads.googleads.v0.resources.CarrierConstant.id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.resources.CarrierConstant.name', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='country_code', full_name='google.ads.googleads.v0.resources.CarrierConstant.country_code', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=134, + serialized_end=311, +) + +_CARRIERCONSTANT.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_CARRIERCONSTANT.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_CARRIERCONSTANT.fields_by_name['country_code'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +DESCRIPTOR.message_types_by_name['CarrierConstant'] = _CARRIERCONSTANT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CarrierConstant = _reflection.GeneratedProtocolMessageType('CarrierConstant', (_message.Message,), dict( + DESCRIPTOR = _CARRIERCONSTANT, + __module__ = 'google.ads.google_ads.v0.proto.resources.carrier_constant_pb2' + , + __doc__ = """A carrier criterion that can be used in campaign targeting. + + + Attributes: + resource_name: + The resource name of the carrier criterion. Carrier criterion + resource names have the form: + ``carrierConstants/{criterion_id}`` + id: + The ID of the carrier criterion. + name: + The full name of the carrier in English. + country_code: + The country code of the country where the carrier is located, + e.g., "AR", "FR", etc. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.CarrierConstant) + )) +_sym_db.RegisterMessage(CarrierConstant) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\024CarrierConstantProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/carrier_constant_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/carrier_constant_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/carrier_constant_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/change_status_pb2.py b/google/ads/google_ads/v0/proto/resources/change_status_pb2.py index 3682ba496..2e0462c1e 100644 --- a/google/ads/google_ads/v0/proto/resources/change_status_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/change_status_pb2.py @@ -128,7 +128,7 @@ ChangeStatus = _reflection.GeneratedProtocolMessageType('ChangeStatus', (_message.Message,), dict( DESCRIPTOR = _CHANGESTATUS, - __module__ = 'google.ads.googleads_v0.proto.resources.change_status_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.change_status_pb2' , __doc__ = """Describes the status of returned resource. diff --git a/google/ads/google_ads/v0/proto/resources/conversion_action_pb2.py b/google/ads/google_ads/v0/proto/resources/conversion_action_pb2.py index cd613488a..5fe3eb037 100644 --- a/google/ads/google_ads/v0/proto/resources/conversion_action_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/conversion_action_pb2.py @@ -279,7 +279,7 @@ AttributionModelSettings = _reflection.GeneratedProtocolMessageType('AttributionModelSettings', (_message.Message,), dict( DESCRIPTOR = _CONVERSIONACTION_ATTRIBUTIONMODELSETTINGS, - __module__ = 'google.ads.googleads_v0.proto.resources.conversion_action_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.conversion_action_pb2' , __doc__ = """Settings related to this conversion action's attribution model. @@ -297,7 +297,7 @@ ValueSettings = _reflection.GeneratedProtocolMessageType('ValueSettings', (_message.Message,), dict( DESCRIPTOR = _CONVERSIONACTION_VALUESETTINGS, - __module__ = 'google.ads.googleads_v0.proto.resources.conversion_action_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.conversion_action_pb2' , __doc__ = """Settings related to the value for conversion events associated with this conversion action. @@ -323,7 +323,7 @@ )) , DESCRIPTOR = _CONVERSIONACTION, - __module__ = 'google.ads.googleads_v0.proto.resources.conversion_action_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.conversion_action_pb2' , __doc__ = """A conversion action. diff --git a/google/ads/google_ads/v0/proto/resources/customer_client_link_pb2.py b/google/ads/google_ads/v0/proto/resources/customer_client_link_pb2.py index c6be29e2d..c58dff867 100644 --- a/google/ads/google_ads/v0/proto/resources/customer_client_link_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/customer_client_link_pb2.py @@ -95,7 +95,7 @@ CustomerClientLink = _reflection.GeneratedProtocolMessageType('CustomerClientLink', (_message.Message,), dict( DESCRIPTOR = _CUSTOMERCLIENTLINK, - __module__ = 'google.ads.googleads_v0.proto.resources.customer_client_link_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.customer_client_link_pb2' , __doc__ = """Represents customer client link relationship. diff --git a/google/ads/google_ads/v0/proto/resources/customer_client_pb2.py b/google/ads/google_ads/v0/proto/resources/customer_client_pb2.py new file mode 100644 index 000000000..ef40acf74 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/customer_client_pb2.py @@ -0,0 +1,115 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/customer_client.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/customer_client.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\n=google/ads/googleads_v0/proto/resources/customer_client.proto\x12!google.ads.googleads.v0.resources\x1a\x1egoogle/protobuf/wrappers.proto\"\xb6\x01\n\x0e\x43ustomerClient\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\x35\n\x0f\x63lient_customer\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12*\n\x06hidden\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12*\n\x05level\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\xd8\x01\n%com.google.ads.googleads.v0.resourcesB\x13\x43ustomerClientProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_CUSTOMERCLIENT = _descriptor.Descriptor( + name='CustomerClient', + full_name='google.ads.googleads.v0.resources.CustomerClient', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.CustomerClient.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='client_customer', full_name='google.ads.googleads.v0.resources.CustomerClient.client_customer', index=1, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hidden', full_name='google.ads.googleads.v0.resources.CustomerClient.hidden', index=2, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='level', full_name='google.ads.googleads.v0.resources.CustomerClient.level', index=3, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=133, + serialized_end=315, +) + +_CUSTOMERCLIENT.fields_by_name['client_customer'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_CUSTOMERCLIENT.fields_by_name['hidden'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +_CUSTOMERCLIENT.fields_by_name['level'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +DESCRIPTOR.message_types_by_name['CustomerClient'] = _CUSTOMERCLIENT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CustomerClient = _reflection.GeneratedProtocolMessageType('CustomerClient', (_message.Message,), dict( + DESCRIPTOR = _CUSTOMERCLIENT, + __module__ = 'google.ads.google_ads.v0.proto.resources.customer_client_pb2' + , + __doc__ = """For a manager, it returns all the customers in its hierarchy and self. + + + Attributes: + resource_name: + The resource name of the customer client. CustomerClient + resource names have the form: ``customers/{customer_id}/custom + erClients/{client_customer_id}`` + client_customer: + The client customer linked to this customer. Read only. + hidden: + Whether the client is hidden or not. Default value is false. + Read only. + level: + Distance between customer and client. For self link, the level + value will be 0. Read only. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.CustomerClient) + )) +_sym_db.RegisterMessage(CustomerClient) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\023CustomerClientProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/customer_client_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/customer_client_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/customer_client_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/customer_feed_pb2.py b/google/ads/google_ads/v0/proto/resources/customer_feed_pb2.py new file mode 100644 index 000000000..8acfa97eb --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/customer_feed_pb2.py @@ -0,0 +1,129 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/customer_feed.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.common import matching_function_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_matching__function__pb2 +from google.ads.google_ads.v0.proto.enums import feed_link_status_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__link__status__pb2 +from google.ads.google_ads.v0.proto.enums import placeholder_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_placeholder__type__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/customer_feed.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\n;google/ads/googleads_v0/proto/resources/customer_feed.proto\x12!google.ads.googleads.v0.resources\x1a.google.ads.googleads.v0.resources.Feed.PlacesLocationFeedDataH\x00\x12i\n\x1c\x61\x66\x66iliate_location_feed_data\x18\x07 \x01(\x0b\x32\x41.google.ads.googleads.v0.resources.Feed.AffiliateLocationFeedDataH\x00\x1a\xd1\x04\n\x16PlacesLocationFeedData\x12\\\n\noauth_info\x18\x01 \x01(\x0b\x32H.google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.OAuthInfo\x12\x33\n\remail_address\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x41\n\x1b\x62usiness_account_identifier\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12:\n\x14\x62usiness_name_filter\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x36\n\x10\x63\x61tegory_filters\x18\x05 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rlabel_filters\x18\x06 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x1a\xb7\x01\n\tOAuthInfo\x12\x31\n\x0bhttp_method\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x36\n\x10http_request_url\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12?\n\x19http_authorization_header\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x1a\xd7\x01\n\x19\x41\x66\x66iliateLocationFeedData\x12.\n\tchain_ids\x18\x01 \x03(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x89\x01\n\x11relationship_type\x18\x02 \x01(\x0e\x32n.google.ads.googleads.v0.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipTypeB\x1d\n\x1bsystem_feed_generation_data\"\xee\x01\n\rFeedAttribute\x12\'\n\x02id\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12*\n\x04name\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12T\n\x04type\x18\x03 \x01(\x0e\x32\x46.google.ads.googleads.v0.enums.FeedAttributeTypeEnum.FeedAttributeType\x12\x32\n\x0eis_part_of_key\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\"\xe2\x01\n\x16\x46\x65\x65\x64\x41ttributeOperation\x12T\n\x08operator\x18\x01 \x01(\x0e\x32\x42.google.ads.googleads.v0.resources.FeedAttributeOperation.Operator\x12?\n\x05value\x18\x02 \x01(\x0b\x32\x30.google.ads.googleads.v0.resources.FeedAttribute\"1\n\x08Operator\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0b\n\x07UNKNOWN\x10\x01\x12\x07\n\x03\x41\x44\x44\x10\x02\x42\xce\x01\n%com.google.ads.googleads.v0.resourcesB\tFeedProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_affiliate__location__feed__relationship__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__attribute__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__origin__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__status__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + +_FEEDATTRIBUTEOPERATION_OPERATOR = _descriptor.EnumDescriptor( + name='Operator', + full_name='google.ads.googleads.v0.resources.FeedAttributeOperation.Operator', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='UNSPECIFIED', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='UNKNOWN', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ADD', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=2275, + serialized_end=2324, +) +_sym_db.RegisterEnumDescriptor(_FEEDATTRIBUTEOPERATION_OPERATOR) + + +_FEED_PLACESLOCATIONFEEDDATA_OAUTHINFO = _descriptor.Descriptor( + name='OAuthInfo', + full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.OAuthInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='http_method', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.OAuthInfo.http_method', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='http_request_url', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.OAuthInfo.http_request_url', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='http_authorization_header', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.OAuthInfo.http_authorization_header', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1422, + serialized_end=1605, +) + +_FEED_PLACESLOCATIONFEEDDATA = _descriptor.Descriptor( + name='PlacesLocationFeedData', + full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='oauth_info', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.oauth_info', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='email_address', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.email_address', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='business_account_identifier', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.business_account_identifier', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='business_name_filter', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.business_name_filter', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='category_filters', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.category_filters', index=4, + number=5, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='label_filters', full_name='google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.label_filters', index=5, + number=6, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[_FEED_PLACESLOCATIONFEEDDATA_OAUTHINFO, ], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1012, + serialized_end=1605, +) + +_FEED_AFFILIATELOCATIONFEEDDATA = _descriptor.Descriptor( + name='AffiliateLocationFeedData', + full_name='google.ads.googleads.v0.resources.Feed.AffiliateLocationFeedData', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='chain_ids', full_name='google.ads.googleads.v0.resources.Feed.AffiliateLocationFeedData.chain_ids', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='relationship_type', full_name='google.ads.googleads.v0.resources.Feed.AffiliateLocationFeedData.relationship_type', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1608, + serialized_end=1823, +) + +_FEED = _descriptor.Descriptor( + name='Feed', + full_name='google.ads.googleads.v0.resources.Feed', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.Feed.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='id', full_name='google.ads.googleads.v0.resources.Feed.id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.resources.Feed.name', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='attributes', full_name='google.ads.googleads.v0.resources.Feed.attributes', index=3, + number=4, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='attribute_operations', full_name='google.ads.googleads.v0.resources.Feed.attribute_operations', index=4, + number=9, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='origin', full_name='google.ads.googleads.v0.resources.Feed.origin', index=5, + number=5, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='status', full_name='google.ads.googleads.v0.resources.Feed.status', index=6, + number=8, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='places_location_feed_data', full_name='google.ads.googleads.v0.resources.Feed.places_location_feed_data', index=7, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='affiliate_location_feed_data', full_name='google.ads.googleads.v0.resources.Feed.affiliate_location_feed_data', index=8, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[_FEED_PLACESLOCATIONFEEDDATA, _FEED_AFFILIATELOCATIONFEEDDATA, ], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='system_feed_generation_data', full_name='google.ads.googleads.v0.resources.Feed.system_feed_generation_data', + index=0, containing_type=None, fields=[]), + ], + serialized_start=380, + serialized_end=1854, +) + + +_FEEDATTRIBUTE = _descriptor.Descriptor( + name='FeedAttribute', + full_name='google.ads.googleads.v0.resources.FeedAttribute', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='id', full_name='google.ads.googleads.v0.resources.FeedAttribute.id', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.resources.FeedAttribute.name', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='type', full_name='google.ads.googleads.v0.resources.FeedAttribute.type', index=2, + number=3, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='is_part_of_key', full_name='google.ads.googleads.v0.resources.FeedAttribute.is_part_of_key', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1857, + serialized_end=2095, +) + + +_FEEDATTRIBUTEOPERATION = _descriptor.Descriptor( + name='FeedAttributeOperation', + full_name='google.ads.googleads.v0.resources.FeedAttributeOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='operator', full_name='google.ads.googleads.v0.resources.FeedAttributeOperation.operator', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='value', full_name='google.ads.googleads.v0.resources.FeedAttributeOperation.value', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _FEEDATTRIBUTEOPERATION_OPERATOR, + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2098, + serialized_end=2324, +) + +_FEED_PLACESLOCATIONFEEDDATA_OAUTHINFO.fields_by_name['http_method'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED_PLACESLOCATIONFEEDDATA_OAUTHINFO.fields_by_name['http_request_url'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED_PLACESLOCATIONFEEDDATA_OAUTHINFO.fields_by_name['http_authorization_header'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED_PLACESLOCATIONFEEDDATA_OAUTHINFO.containing_type = _FEED_PLACESLOCATIONFEEDDATA +_FEED_PLACESLOCATIONFEEDDATA.fields_by_name['oauth_info'].message_type = _FEED_PLACESLOCATIONFEEDDATA_OAUTHINFO +_FEED_PLACESLOCATIONFEEDDATA.fields_by_name['email_address'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED_PLACESLOCATIONFEEDDATA.fields_by_name['business_account_identifier'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED_PLACESLOCATIONFEEDDATA.fields_by_name['business_name_filter'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED_PLACESLOCATIONFEEDDATA.fields_by_name['category_filters'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED_PLACESLOCATIONFEEDDATA.fields_by_name['label_filters'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED_PLACESLOCATIONFEEDDATA.containing_type = _FEED +_FEED_AFFILIATELOCATIONFEEDDATA.fields_by_name['chain_ids'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_FEED_AFFILIATELOCATIONFEEDDATA.fields_by_name['relationship_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_affiliate__location__feed__relationship__type__pb2._AFFILIATELOCATIONFEEDRELATIONSHIPTYPEENUM_AFFILIATELOCATIONFEEDRELATIONSHIPTYPE +_FEED_AFFILIATELOCATIONFEEDDATA.containing_type = _FEED +_FEED.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_FEED.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEED.fields_by_name['attributes'].message_type = _FEEDATTRIBUTE +_FEED.fields_by_name['attribute_operations'].message_type = _FEEDATTRIBUTEOPERATION +_FEED.fields_by_name['origin'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__origin__pb2._FEEDORIGINENUM_FEEDORIGIN +_FEED.fields_by_name['status'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__status__pb2._FEEDSTATUSENUM_FEEDSTATUS +_FEED.fields_by_name['places_location_feed_data'].message_type = _FEED_PLACESLOCATIONFEEDDATA +_FEED.fields_by_name['affiliate_location_feed_data'].message_type = _FEED_AFFILIATELOCATIONFEEDDATA +_FEED.oneofs_by_name['system_feed_generation_data'].fields.append( + _FEED.fields_by_name['places_location_feed_data']) +_FEED.fields_by_name['places_location_feed_data'].containing_oneof = _FEED.oneofs_by_name['system_feed_generation_data'] +_FEED.oneofs_by_name['system_feed_generation_data'].fields.append( + _FEED.fields_by_name['affiliate_location_feed_data']) +_FEED.fields_by_name['affiliate_location_feed_data'].containing_oneof = _FEED.oneofs_by_name['system_feed_generation_data'] +_FEEDATTRIBUTE.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_FEEDATTRIBUTE.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_FEEDATTRIBUTE.fields_by_name['type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_feed__attribute__type__pb2._FEEDATTRIBUTETYPEENUM_FEEDATTRIBUTETYPE +_FEEDATTRIBUTE.fields_by_name['is_part_of_key'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +_FEEDATTRIBUTEOPERATION.fields_by_name['operator'].enum_type = _FEEDATTRIBUTEOPERATION_OPERATOR +_FEEDATTRIBUTEOPERATION.fields_by_name['value'].message_type = _FEEDATTRIBUTE +_FEEDATTRIBUTEOPERATION_OPERATOR.containing_type = _FEEDATTRIBUTEOPERATION +DESCRIPTOR.message_types_by_name['Feed'] = _FEED +DESCRIPTOR.message_types_by_name['FeedAttribute'] = _FEEDATTRIBUTE +DESCRIPTOR.message_types_by_name['FeedAttributeOperation'] = _FEEDATTRIBUTEOPERATION +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +Feed = _reflection.GeneratedProtocolMessageType('Feed', (_message.Message,), dict( + + PlacesLocationFeedData = _reflection.GeneratedProtocolMessageType('PlacesLocationFeedData', (_message.Message,), dict( + + OAuthInfo = _reflection.GeneratedProtocolMessageType('OAuthInfo', (_message.Message,), dict( + DESCRIPTOR = _FEED_PLACESLOCATIONFEEDDATA_OAUTHINFO, + __module__ = 'google.ads.google_ads.v0.proto.resources.feed_pb2' + , + __doc__ = """Data used for authorization using OAuth. + + + Attributes: + http_method: + The HTTP method used to obtain authorization. + http_request_url: + The HTTP request URL used to obtain authorization. + http_authorization_header: + The HTTP authorization header used to obtain authorization. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData.OAuthInfo) + )) + , + DESCRIPTOR = _FEED_PLACESLOCATIONFEEDDATA, + __module__ = 'google.ads.google_ads.v0.proto.resources.feed_pb2' + , + __doc__ = """Data used to configure a location feed populated from Google My Business + Locations. + + + Attributes: + oauth_info: + Required authentication token (from OAuth API) for the email. + email_address: + Email address of a Google My Business account or email address + of a manager of the Google My Business account. Required. + business_account_identifier: + Plus page ID of the managed business whose locations should be + used. If this field is not set, then all businesses accessible + by the user (specified by email\_address) are used. + business_name_filter: + Used to filter Google My Business listings by business name. + If business\_name\_filter is set, only listings with a + matching business name are candidates to be sync'd into + FeedItems. + category_filters: + Used to filter Google My Business listings by categories. If + entries exist in category\_filters, only listings that belong + to any of the categories are candidates to be sync'd into + FeedItems. If no entries exist in category\_filters, then all + listings are candidates for syncing. + label_filters: + Used to filter Google My Business listings by labels. If + entries exist in label\_filters, only listings that has any of + the labels set are candidates to be synchronized into + FeedItems. If no entries exist in label\_filters, then all + listings are candidates for syncing. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.Feed.PlacesLocationFeedData) + )) + , + + AffiliateLocationFeedData = _reflection.GeneratedProtocolMessageType('AffiliateLocationFeedData', (_message.Message,), dict( + DESCRIPTOR = _FEED_AFFILIATELOCATIONFEEDDATA, + __module__ = 'google.ads.google_ads.v0.proto.resources.feed_pb2' + , + __doc__ = """Data used to configure an affiliate location feed populated with the + specified chains. + + + Attributes: + chain_ids: + The list of chains that the affiliate location feed will sync + the locations from. + relationship_type: + The relationship the chains have with the advertiser. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.Feed.AffiliateLocationFeedData) + )) + , + DESCRIPTOR = _FEED, + __module__ = 'google.ads.google_ads.v0.proto.resources.feed_pb2' + , + __doc__ = """A feed. + + + Attributes: + resource_name: + The resource name of the feed. Feed resource names have the + form: ``customers/{customer_id}/feeds/{feed_id}`` + id: + The ID of the feed. This field is read-only. + name: + Name of the feed. Required. + attributes: + The Feed's attributes. Required on CREATE. Disallowed on + UPDATE. Use attribute\_operations to add new attributes. + attribute_operations: + The list of operations changing the feed attributes. + Attributes can only be added, not removed. + origin: + Specifies who manages the FeedAttributes for the Feed. + status: + Status of the feed. This field is read-only. + system_feed_generation_data: + The system data for the Feed. This data specifies information + for generating the feed items of the system generated feed. + places_location_feed_data: + Data used to configure a location feed populated from Google + My Business Locations. + affiliate_location_feed_data: + Data used to configure an affiliate location feed populated + with the specified chains. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.Feed) + )) +_sym_db.RegisterMessage(Feed) +_sym_db.RegisterMessage(Feed.PlacesLocationFeedData) +_sym_db.RegisterMessage(Feed.PlacesLocationFeedData.OAuthInfo) +_sym_db.RegisterMessage(Feed.AffiliateLocationFeedData) + +FeedAttribute = _reflection.GeneratedProtocolMessageType('FeedAttribute', (_message.Message,), dict( + DESCRIPTOR = _FEEDATTRIBUTE, + __module__ = 'google.ads.google_ads.v0.proto.resources.feed_pb2' + , + __doc__ = """FeedAttributes define the types of data expected to be present in a + Feed. A single FeedAttribute specifies the expected type of the + FeedItemAttributes with the same FeedAttributeId. Optionally, a + FeedAttribute can be marked as being part of a FeedItem's unique key. + + + Attributes: + id: + ID of the attribute. + name: + The name of the attribute. Required. + type: + Data type for feed attribute. Required. + is_part_of_key: + Indicates that data corresponding to this attribute is part of + a FeedItem's unique key. It defaults to false if it is + unspecified. Note that a unique key is not required in a + Feed's schema, in which case the FeedItems must be referenced + by their feed\_item\_id. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.FeedAttribute) + )) +_sym_db.RegisterMessage(FeedAttribute) + +FeedAttributeOperation = _reflection.GeneratedProtocolMessageType('FeedAttributeOperation', (_message.Message,), dict( + DESCRIPTOR = _FEEDATTRIBUTEOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.resources.feed_pb2' + , + __doc__ = """Operation to be performed on a feed attribute list in a mutate. + + + Attributes: + operator: + Type of list operation to perform. + value: + The feed attribute being added to the list. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.FeedAttributeOperation) + )) +_sym_db.RegisterMessage(FeedAttributeOperation) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\tFeedProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/feed_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/feed_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/feed_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/gender_view_pb2.py b/google/ads/google_ads/v0/proto/resources/gender_view_pb2.py index aa3f4b8ed..b9a1c11ed 100644 --- a/google/ads/google_ads/v0/proto/resources/gender_view_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/gender_view_pb2.py @@ -60,7 +60,7 @@ GenderView = _reflection.GeneratedProtocolMessageType('GenderView', (_message.Message,), dict( DESCRIPTOR = _GENDERVIEW, - __module__ = 'google.ads.googleads_v0.proto.resources.gender_view_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.gender_view_pb2' , __doc__ = """A gender view. diff --git a/google/ads/google_ads/v0/proto/resources/geo_target_constant_pb2.py b/google/ads/google_ads/v0/proto/resources/geo_target_constant_pb2.py index 8abd08417..f30b2bba3 100644 --- a/google/ads/google_ads/v0/proto/resources/geo_target_constant_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/geo_target_constant_pb2.py @@ -103,7 +103,7 @@ GeoTargetConstant = _reflection.GeneratedProtocolMessageType('GeoTargetConstant', (_message.Message,), dict( DESCRIPTOR = _GEOTARGETCONSTANT, - __module__ = 'google.ads.googleads_v0.proto.resources.geo_target_constant_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.geo_target_constant_pb2' , __doc__ = """A geo target constant. diff --git a/google/ads/google_ads/v0/proto/resources/google_ads_field_pb2.py b/google/ads/google_ads/v0/proto/resources/google_ads_field_pb2.py index 7318441cc..c64a5d058 100644 --- a/google/ads/google_ads/v0/proto/resources/google_ads_field_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/google_ads_field_pb2.py @@ -168,7 +168,7 @@ GoogleAdsField = _reflection.GeneratedProtocolMessageType('GoogleAdsField', (_message.Message,), dict( DESCRIPTOR = _GOOGLEADSFIELD, - __module__ = 'google.ads.googleads_v0.proto.resources.google_ads_field_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.google_ads_field_pb2' , __doc__ = """A field or resource (artifact) used by GoogleAdsService. diff --git a/google/ads/google_ads/v0/proto/resources/hotel_group_view_pb2.py b/google/ads/google_ads/v0/proto/resources/hotel_group_view_pb2.py index 19c956942..8327c502f 100644 --- a/google/ads/google_ads/v0/proto/resources/hotel_group_view_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/hotel_group_view_pb2.py @@ -60,7 +60,7 @@ HotelGroupView = _reflection.GeneratedProtocolMessageType('HotelGroupView', (_message.Message,), dict( DESCRIPTOR = _HOTELGROUPVIEW, - __module__ = 'google.ads.googleads_v0.proto.resources.hotel_group_view_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.hotel_group_view_pb2' , __doc__ = """A hotel group view. diff --git a/google/ads/google_ads/v0/proto/resources/hotel_performance_view_pb2.py b/google/ads/google_ads/v0/proto/resources/hotel_performance_view_pb2.py new file mode 100644 index 000000000..d85182b85 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/hotel_performance_view_pb2.py @@ -0,0 +1,81 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/hotel_performance_view.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/hotel_performance_view.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\nDgoogle/ads/googleads_v0/proto/resources/hotel_performance_view.proto\x12!google.ads.googleads.v0.resources\"-\n\x14HotelPerformanceView\x12\x15\n\rresource_name\x18\x01 \x01(\tB\xde\x01\n%com.google.ads.googleads.v0.resourcesB\x19HotelPerformanceViewProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') +) + + + + +_HOTELPERFORMANCEVIEW = _descriptor.Descriptor( + name='HotelPerformanceView', + full_name='google.ads.googleads.v0.resources.HotelPerformanceView', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.HotelPerformanceView.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=107, + serialized_end=152, +) + +DESCRIPTOR.message_types_by_name['HotelPerformanceView'] = _HOTELPERFORMANCEVIEW +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +HotelPerformanceView = _reflection.GeneratedProtocolMessageType('HotelPerformanceView', (_message.Message,), dict( + DESCRIPTOR = _HOTELPERFORMANCEVIEW, + __module__ = 'google.ads.google_ads.v0.proto.resources.hotel_performance_view_pb2' + , + __doc__ = """A hotel performance view. + + + Attributes: + resource_name: + The resource name of the hotel performance view. Hotel + performance view resource names have the form: + ``customers/{customer_id}/hotelPerformanceView`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.HotelPerformanceView) + )) +_sym_db.RegisterMessage(HotelPerformanceView) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\031HotelPerformanceViewProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/hotel_performance_view_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/hotel_performance_view_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/hotel_performance_view_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/keyword_plan_ad_group_pb2.py b/google/ads/google_ads/v0/proto/resources/keyword_plan_ad_group_pb2.py new file mode 100644 index 000000000..8fd409a85 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/keyword_plan_ad_group_pb2.py @@ -0,0 +1,126 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/keyword_plan_ad_group.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/keyword_plan_ad_group.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/resources/keyword_plan_ad_group.proto\x12!google.ads.googleads.v0.resources\x1a\x1egoogle/protobuf/wrappers.proto\"\xf2\x01\n\x12KeywordPlanAdGroup\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12;\n\x15keyword_plan_campaign\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\'\n\x02id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12*\n\x04name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\x0e\x63pc_bid_micros\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\xdc\x01\n%com.google.ads.googleads.v0.resourcesB\x17KeywordPlanAdGroupProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_KEYWORDPLANADGROUP = _descriptor.Descriptor( + name='KeywordPlanAdGroup', + full_name='google.ads.googleads.v0.resources.KeywordPlanAdGroup', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.KeywordPlanAdGroup.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_campaign', full_name='google.ads.googleads.v0.resources.KeywordPlanAdGroup.keyword_plan_campaign', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='id', full_name='google.ads.googleads.v0.resources.KeywordPlanAdGroup.id', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.resources.KeywordPlanAdGroup.name', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='cpc_bid_micros', full_name='google.ads.googleads.v0.resources.KeywordPlanAdGroup.cpc_bid_micros', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=139, + serialized_end=381, +) + +_KEYWORDPLANADGROUP.fields_by_name['keyword_plan_campaign'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANADGROUP.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_KEYWORDPLANADGROUP.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANADGROUP.fields_by_name['cpc_bid_micros'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +DESCRIPTOR.message_types_by_name['KeywordPlanAdGroup'] = _KEYWORDPLANADGROUP +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanAdGroup = _reflection.GeneratedProtocolMessageType('KeywordPlanAdGroup', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANADGROUP, + __module__ = 'google.ads.google_ads.v0.proto.resources.keyword_plan_ad_group_pb2' + , + __doc__ = """A Keyword Planner ad group. + + + Attributes: + resource_name: + The resource name of the Keyword Planner ad group. + KeywordPlanAdGroup resource names have the form: ``customers/ + {customer_id}/keywordPlanAdGroups/{kp_ad_group_id}`` + keyword_plan_campaign: + The keyword plan campaign to which this ad group belongs. + id: + The ID of the keyword plan ad group. + name: + The name of the keyword plan ad group. This field is required + and should not be empty when creating keyword plan ad group. + cpc_bid_micros: + A default ad group max cpc bid in micros in account currency + for all biddable keywords under the keyword plan ad group. If + not set, will inherit from parent campaign. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.KeywordPlanAdGroup) + )) +_sym_db.RegisterMessage(KeywordPlanAdGroup) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\027KeywordPlanAdGroupProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/keyword_plan_ad_group_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/keyword_plan_ad_group_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/keyword_plan_ad_group_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/keyword_plan_campaign_pb2.py b/google/ads/google_ads/v0/proto/resources/keyword_plan_campaign_pb2.py new file mode 100644 index 000000000..1961bad19 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/keyword_plan_campaign_pb2.py @@ -0,0 +1,206 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/keyword_plan_campaign.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.enums import keyword_plan_network_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__network__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/keyword_plan_campaign.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/resources/keyword_plan_campaign.proto\x12!google.ads.googleads.v0.resources\x1a>google/ads/googleads_v0/proto/enums/keyword_plan_network.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xda\x03\n\x13KeywordPlanCampaign\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\x32\n\x0ckeyword_plan\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\'\n\x02id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12*\n\x04name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x38\n\x12language_constants\x18\x05 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12\x66\n\x14keyword_plan_network\x18\x06 \x01(\x0e\x32H.google.ads.googleads.v0.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork\x12\x33\n\x0e\x63pc_bid_micros\x18\x07 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12L\n\x0bgeo_targets\x18\x08 \x03(\x0b\x32\x37.google.ads.googleads.v0.resources.KeywordPlanGeoTarget\"Q\n\x14KeywordPlanGeoTarget\x12\x39\n\x13geo_target_constant\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\xdd\x01\n%com.google.ads.googleads.v0.resourcesB\x18KeywordPlanCampaignProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__network__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_KEYWORDPLANCAMPAIGN = _descriptor.Descriptor( + name='KeywordPlanCampaign', + full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan', full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign.keyword_plan', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='id', full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign.id', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign.name', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='language_constants', full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign.language_constants', index=4, + number=5, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_network', full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign.keyword_plan_network', index=5, + number=6, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='cpc_bid_micros', full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign.cpc_bid_micros', index=6, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='geo_targets', full_name='google.ads.googleads.v0.resources.KeywordPlanCampaign.geo_targets', index=7, + number=8, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=203, + serialized_end=677, +) + + +_KEYWORDPLANGEOTARGET = _descriptor.Descriptor( + name='KeywordPlanGeoTarget', + full_name='google.ads.googleads.v0.resources.KeywordPlanGeoTarget', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='geo_target_constant', full_name='google.ads.googleads.v0.resources.KeywordPlanGeoTarget.geo_target_constant', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=679, + serialized_end=760, +) + +_KEYWORDPLANCAMPAIGN.fields_by_name['keyword_plan'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANCAMPAIGN.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_KEYWORDPLANCAMPAIGN.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANCAMPAIGN.fields_by_name['language_constants'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANCAMPAIGN.fields_by_name['keyword_plan_network'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__network__pb2._KEYWORDPLANNETWORKENUM_KEYWORDPLANNETWORK +_KEYWORDPLANCAMPAIGN.fields_by_name['cpc_bid_micros'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_KEYWORDPLANCAMPAIGN.fields_by_name['geo_targets'].message_type = _KEYWORDPLANGEOTARGET +_KEYWORDPLANGEOTARGET.fields_by_name['geo_target_constant'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +DESCRIPTOR.message_types_by_name['KeywordPlanCampaign'] = _KEYWORDPLANCAMPAIGN +DESCRIPTOR.message_types_by_name['KeywordPlanGeoTarget'] = _KEYWORDPLANGEOTARGET +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +KeywordPlanCampaign = _reflection.GeneratedProtocolMessageType('KeywordPlanCampaign', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANCAMPAIGN, + __module__ = 'google.ads.google_ads.v0.proto.resources.keyword_plan_campaign_pb2' + , + __doc__ = """A Keyword Plan campaign. + + + Attributes: + resource_name: + The resource name of the Keyword Plan campaign. + KeywordPlanCampaign resource names have the form: ``customers + /{customer_id}/keywordPlanCampaigns/{kp_campaign_id}`` + keyword_plan: + The keyword plan this campaign belongs to. + id: + The ID of the Keyword Plan campaign. + name: + The name of the Keyword Plan campaign. This field is required + and should not be empty when creating Keyword Plan campaigns. + language_constants: + The languages targeted for the Keyword Plan campaign. + keyword_plan_network: + Targeting network. This field is required and should not be + empty when creating Keyword Plan campaigns. + cpc_bid_micros: + A default max cpc bid in micros, and in the account currency, + for all ad groups under the campaign. This field is required + and should not be empty when creating Keyword Plan campaigns. + geo_targets: + The geo targets. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.KeywordPlanCampaign) + )) +_sym_db.RegisterMessage(KeywordPlanCampaign) + +KeywordPlanGeoTarget = _reflection.GeneratedProtocolMessageType('KeywordPlanGeoTarget', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANGEOTARGET, + __module__ = 'google.ads.google_ads.v0.proto.resources.keyword_plan_campaign_pb2' + , + __doc__ = """A geo target. Next ID: 3 + + + Attributes: + geo_target_constant: + Required. The resource name of the geo target. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.KeywordPlanGeoTarget) + )) +_sym_db.RegisterMessage(KeywordPlanGeoTarget) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\030KeywordPlanCampaignProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/keyword_plan_campaign_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/keyword_plan_campaign_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/keyword_plan_campaign_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/keyword_plan_keyword_pb2.py b/google/ads/google_ads/v0/proto/resources/keyword_plan_keyword_pb2.py new file mode 100644 index 000000000..464cd66e8 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/keyword_plan_keyword_pb2.py @@ -0,0 +1,135 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/keyword_plan_keyword.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.enums import keyword_match_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__match__type__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/keyword_plan_keyword.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\nBgoogle/ads/googleads_v0/proto/resources/keyword_plan_keyword.proto\x12!google.ads.googleads.v0.resources\x1agoogle/ads/googleads_v0/proto/resources/payments_account.proto\x12!google.ads.googleads.v0.resources\x1a\x1egoogle/protobuf/wrappers.proto\"\xc4\x02\n\x0fPaymentsAccount\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\x39\n\x13payments_account_id\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12*\n\x04name\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\rcurrency_code\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x39\n\x13payments_profile_id\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x43\n\x1dsecondary_payments_profile_id\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValueB\xd9\x01\n%com.google.ads.googleads.v0.resourcesB\x14PaymentsAccountProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_PAYMENTSACCOUNT = _descriptor.Descriptor( + name='PaymentsAccount', + full_name='google.ads.googleads.v0.resources.PaymentsAccount', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.PaymentsAccount.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='payments_account_id', full_name='google.ads.googleads.v0.resources.PaymentsAccount.payments_account_id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.resources.PaymentsAccount.name', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='currency_code', full_name='google.ads.googleads.v0.resources.PaymentsAccount.currency_code', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='payments_profile_id', full_name='google.ads.googleads.v0.resources.PaymentsAccount.payments_profile_id', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='secondary_payments_profile_id', full_name='google.ads.googleads.v0.resources.PaymentsAccount.secondary_payments_profile_id', index=5, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=134, + serialized_end=458, +) + +_PAYMENTSACCOUNT.fields_by_name['payments_account_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_PAYMENTSACCOUNT.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_PAYMENTSACCOUNT.fields_by_name['currency_code'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_PAYMENTSACCOUNT.fields_by_name['payments_profile_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_PAYMENTSACCOUNT.fields_by_name['secondary_payments_profile_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +DESCRIPTOR.message_types_by_name['PaymentsAccount'] = _PAYMENTSACCOUNT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +PaymentsAccount = _reflection.GeneratedProtocolMessageType('PaymentsAccount', (_message.Message,), dict( + DESCRIPTOR = _PAYMENTSACCOUNT, + __module__ = 'google.ads.google_ads.v0.proto.resources.payments_account_pb2' + , + __doc__ = """A Payments account, which can be used to set up billing for an Ads + customer. + + + Attributes: + resource_name: + The resource name of the Payments account. PaymentsAccount + resource names have the form: + ``customers/{customer_id}/paymentsAccounts/ + {payments_profile_id}_{payments_account_id}`` + payments_account_id: + A 16 digit ID used to identify a Payments account. + name: + The name of the Payments account. + currency_code: + The currency code of the Payments account. A subset of the + currency codes derived from the ISO 4217 standard is + supported. + payments_profile_id: + A 12 digit ID used to identify the Payments profile associated + with the Payments account. + secondary_payments_profile_id: + A secondary Payments profile ID present in uncommon + situations, e.g. when a sequential liability agreement has + been arranged. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.PaymentsAccount) + )) +_sym_db.RegisterMessage(PaymentsAccount) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\024PaymentsAccountProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/payments_account_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/payments_account_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/payments_account_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/product_group_view_pb2.py b/google/ads/google_ads/v0/proto/resources/product_group_view_pb2.py index bec1d674a..8a5657cbe 100644 --- a/google/ads/google_ads/v0/proto/resources/product_group_view_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/product_group_view_pb2.py @@ -60,7 +60,7 @@ ProductGroupView = _reflection.GeneratedProtocolMessageType('ProductGroupView', (_message.Message,), dict( DESCRIPTOR = _PRODUCTGROUPVIEW, - __module__ = 'google.ads.googleads_v0.proto.resources.product_group_view_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.product_group_view_pb2' , __doc__ = """A product group view. diff --git a/google/ads/google_ads/v0/proto/resources/recommendation_pb2.py b/google/ads/google_ads/v0/proto/resources/recommendation_pb2.py index 809f63d1f..9864ca2a5 100644 --- a/google/ads/google_ads/v0/proto/resources/recommendation_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/recommendation_pb2.py @@ -730,7 +730,7 @@ RecommendationImpact = _reflection.GeneratedProtocolMessageType('RecommendationImpact', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_RECOMMENDATIONIMPACT, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The impact of making the change as described in the recommendation. Some types of recommendations may not have impact information. @@ -748,7 +748,7 @@ RecommendationMetrics = _reflection.GeneratedProtocolMessageType('RecommendationMetrics', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_RECOMMENDATIONMETRICS, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """Weekly account performance metrics. For some recommendation types, these are averaged over the past 90-day period and hence can be fractional. @@ -775,7 +775,7 @@ CampaignBudgetRecommendationOption = _reflection.GeneratedProtocolMessageType('CampaignBudgetRecommendationOption', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_CAMPAIGNBUDGETRECOMMENDATION_CAMPAIGNBUDGETRECOMMENDATIONOPTION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The impact estimates for a given budget amount. @@ -791,7 +791,7 @@ )) , DESCRIPTOR = _RECOMMENDATION_CAMPAIGNBUDGETRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The budget recommendation for budget constrained campaigns. @@ -811,7 +811,7 @@ KeywordRecommendation = _reflection.GeneratedProtocolMessageType('KeywordRecommendation', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_KEYWORDRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The keyword recommendation. @@ -828,7 +828,7 @@ TextAdRecommendation = _reflection.GeneratedProtocolMessageType('TextAdRecommendation', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_TEXTADRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The text ad recommendation. @@ -851,7 +851,7 @@ TargetCpaOptInRecommendationOption = _reflection.GeneratedProtocolMessageType('TargetCpaOptInRecommendationOption', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_TARGETCPAOPTINRECOMMENDATION_TARGETCPAOPTINRECOMMENDATIONOPTION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The Target CPA opt-in option with impact estimate. @@ -873,7 +873,7 @@ )) , DESCRIPTOR = _RECOMMENDATION_TARGETCPAOPTINRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The Target CPA opt-in recommendation. @@ -892,7 +892,7 @@ MaximizeConversionsOptInRecommendation = _reflection.GeneratedProtocolMessageType('MaximizeConversionsOptInRecommendation', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_MAXIMIZECONVERSIONSOPTINRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The Maximize Conversions Opt-In recommendation. @@ -907,7 +907,7 @@ EnhancedCpcOptInRecommendation = _reflection.GeneratedProtocolMessageType('EnhancedCpcOptInRecommendation', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_ENHANCEDCPCOPTINRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The Enhanced Cost-Per-Click Opt-In recommendation. """, @@ -917,7 +917,7 @@ SearchPartnersOptInRecommendation = _reflection.GeneratedProtocolMessageType('SearchPartnersOptInRecommendation', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_SEARCHPARTNERSOPTINRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The Search Partners Opt-In recommendation. """, @@ -927,7 +927,7 @@ MaximizeClicksOptInRecommendation = _reflection.GeneratedProtocolMessageType('MaximizeClicksOptInRecommendation', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_MAXIMIZECLICKSOPTINRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The Maximize Clicks opt-in recommendation. @@ -943,7 +943,7 @@ OptimizeAdRotationRecommendation = _reflection.GeneratedProtocolMessageType('OptimizeAdRotationRecommendation', (_message.Message,), dict( DESCRIPTOR = _RECOMMENDATION_OPTIMIZEADROTATIONRECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """The Optimize Ad Rotation recommendation. """, @@ -951,7 +951,7 @@ )) , DESCRIPTOR = _RECOMMENDATION, - __module__ = 'google.ads.googleads_v0.proto.resources.recommendation_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.recommendation_pb2' , __doc__ = """A recommendation. diff --git a/google/ads/google_ads/v0/proto/resources/search_term_view_pb2.py b/google/ads/google_ads/v0/proto/resources/search_term_view_pb2.py new file mode 100644 index 000000000..8e3636b7c --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/search_term_view_pb2.py @@ -0,0 +1,117 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/search_term_view.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.enums import search_term_targeting_status_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_search__term__targeting__status__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/search_term_view.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\n>google/ads/googleads_v0/proto/resources/search_term_view.proto\x12!google.ads.googleads.v0.resources\x1a\x46google/ads/googleads_v0/proto/enums/search_term_targeting_status.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xf2\x01\n\x0eSearchTermView\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\x31\n\x0bsearch_term\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12.\n\x08\x61\x64_group\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x66\n\x06status\x18\x04 \x01(\x0e\x32V.google.ads.googleads.v0.enums.SearchTermTargetingStatusEnum.SearchTermTargetingStatusB\xd8\x01\n%com.google.ads.googleads.v0.resourcesB\x13SearchTermViewProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_search__term__targeting__status__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_SEARCHTERMVIEW = _descriptor.Descriptor( + name='SearchTermView', + full_name='google.ads.googleads.v0.resources.SearchTermView', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.SearchTermView.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='search_term', full_name='google.ads.googleads.v0.resources.SearchTermView.search_term', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group', full_name='google.ads.googleads.v0.resources.SearchTermView.ad_group', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='status', full_name='google.ads.googleads.v0.resources.SearchTermView.status', index=3, + number=4, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=206, + serialized_end=448, +) + +_SEARCHTERMVIEW.fields_by_name['search_term'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_SEARCHTERMVIEW.fields_by_name['ad_group'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_SEARCHTERMVIEW.fields_by_name['status'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_search__term__targeting__status__pb2._SEARCHTERMTARGETINGSTATUSENUM_SEARCHTERMTARGETINGSTATUS +DESCRIPTOR.message_types_by_name['SearchTermView'] = _SEARCHTERMVIEW +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +SearchTermView = _reflection.GeneratedProtocolMessageType('SearchTermView', (_message.Message,), dict( + DESCRIPTOR = _SEARCHTERMVIEW, + __module__ = 'google.ads.google_ads.v0.proto.resources.search_term_view_pb2' + , + __doc__ = """A search term view with metrics aggregated by search term at the ad + group level. + + + Attributes: + resource_name: + The resource name of the search term view. Search term view + resource names have the form: ``customers/{customer_id}/searc + hTermViews/{campaign_id}_{ad_group_id}_ {URL-base64 search + term}`` + search_term: + The search term. + ad_group: + The ad group the search term served in. + status: + Indicates whether the search term is currently one of your + targeted or excluded keywords. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.SearchTermView) + )) +_sym_db.RegisterMessage(SearchTermView) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\023SearchTermViewProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/search_term_view_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/search_term_view_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/search_term_view_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/shared_criterion_pb2.py b/google/ads/google_ads/v0/proto/resources/shared_criterion_pb2.py index 95b6b0210..a10326f3d 100644 --- a/google/ads/google_ads/v0/proto/resources/shared_criterion_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/shared_criterion_pb2.py @@ -135,7 +135,7 @@ SharedCriterion = _reflection.GeneratedProtocolMessageType('SharedCriterion', (_message.Message,), dict( DESCRIPTOR = _SHAREDCRITERION, - __module__ = 'google.ads.googleads_v0.proto.resources.shared_criterion_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.shared_criterion_pb2' , __doc__ = """A criterion belonging to a shared set. diff --git a/google/ads/google_ads/v0/proto/resources/shared_set_pb2.py b/google/ads/google_ads/v0/proto/resources/shared_set_pb2.py index a2e369a34..e1a301c06 100644 --- a/google/ads/google_ads/v0/proto/resources/shared_set_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/shared_set_pb2.py @@ -112,7 +112,7 @@ SharedSet = _reflection.GeneratedProtocolMessageType('SharedSet', (_message.Message,), dict( DESCRIPTOR = _SHAREDSET, - __module__ = 'google.ads.googleads_v0.proto.resources.shared_set_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.shared_set_pb2' , __doc__ = """SharedSets are used for sharing criterion exclusions across multiple campaigns. diff --git a/google/ads/google_ads/v0/proto/resources/topic_constant_pb2.py b/google/ads/google_ads/v0/proto/resources/topic_constant_pb2.py index a187fbb3c..ed65b5f0c 100644 --- a/google/ads/google_ads/v0/proto/resources/topic_constant_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/topic_constant_pb2.py @@ -86,7 +86,7 @@ TopicConstant = _reflection.GeneratedProtocolMessageType('TopicConstant', (_message.Message,), dict( DESCRIPTOR = _TOPICCONSTANT, - __module__ = 'google.ads.googleads_v0.proto.resources.topic_constant_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.topic_constant_pb2' , __doc__ = """Use topics to target or exclude placements in the Google Display Network based on the category into which the placement falls (for example, "Pets diff --git a/google/ads/google_ads/v0/proto/resources/topic_view_pb2.py b/google/ads/google_ads/v0/proto/resources/topic_view_pb2.py index 8f98c4306..1ca56f923 100644 --- a/google/ads/google_ads/v0/proto/resources/topic_view_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/topic_view_pb2.py @@ -60,7 +60,7 @@ TopicView = _reflection.GeneratedProtocolMessageType('TopicView', (_message.Message,), dict( DESCRIPTOR = _TOPICVIEW, - __module__ = 'google.ads.googleads_v0.proto.resources.topic_view_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.topic_view_pb2' , __doc__ = """A topic view. diff --git a/google/ads/google_ads/v0/proto/resources/user_interest_pb2.py b/google/ads/google_ads/v0/proto/resources/user_interest_pb2.py new file mode 100644 index 000000000..926ff8d3a --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/user_interest_pb2.py @@ -0,0 +1,146 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/user_interest.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.common import criterion_category_availability_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criterion__category__availability__pb2 +from google.ads.google_ads.v0.proto.enums import user_interest_taxonomy_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__interest__taxonomy__type__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/user_interest.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\n;google/ads/googleads_v0/proto/resources/user_interest.proto\x12!google.ads.googleads.v0.resources\x1aJgoogle/ads/googleads_v0/proto/common/criterion_category_availability.proto\x1a\x45google/ads/googleads_v0/proto/enums/user_interest_taxonomy_type.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xbd\x03\n\x0cUserInterest\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12k\n\rtaxonomy_type\x18\x02 \x01(\x0e\x32T.google.ads.googleads.v0.enums.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType\x12\x35\n\x10user_interest_id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12*\n\x04name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12:\n\x14user_interest_parent\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x33\n\x0flaunched_to_all\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12U\n\x0e\x61vailabilities\x18\x07 \x03(\x0b\x32=.google.ads.googleads.v0.common.CriterionCategoryAvailabilityB\xd6\x01\n%com.google.ads.googleads.v0.resourcesB\x11UserInterestProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criterion__category__availability__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__interest__taxonomy__type__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_USERINTEREST = _descriptor.Descriptor( + name='UserInterest', + full_name='google.ads.googleads.v0.resources.UserInterest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.UserInterest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='taxonomy_type', full_name='google.ads.googleads.v0.resources.UserInterest.taxonomy_type', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='user_interest_id', full_name='google.ads.googleads.v0.resources.UserInterest.user_interest_id', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.resources.UserInterest.name', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='user_interest_parent', full_name='google.ads.googleads.v0.resources.UserInterest.user_interest_parent', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='launched_to_all', full_name='google.ads.googleads.v0.resources.UserInterest.launched_to_all', index=5, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='availabilities', full_name='google.ads.googleads.v0.resources.UserInterest.availabilities', index=6, + number=7, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=278, + serialized_end=723, +) + +_USERINTEREST.fields_by_name['taxonomy_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__interest__taxonomy__type__pb2._USERINTERESTTAXONOMYTYPEENUM_USERINTERESTTAXONOMYTYPE +_USERINTEREST.fields_by_name['user_interest_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_USERINTEREST.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_USERINTEREST.fields_by_name['user_interest_parent'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_USERINTEREST.fields_by_name['launched_to_all'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +_USERINTEREST.fields_by_name['availabilities'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_criterion__category__availability__pb2._CRITERIONCATEGORYAVAILABILITY +DESCRIPTOR.message_types_by_name['UserInterest'] = _USERINTEREST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserInterest = _reflection.GeneratedProtocolMessageType('UserInterest', (_message.Message,), dict( + DESCRIPTOR = _USERINTEREST, + __module__ = 'google.ads.google_ads.v0.proto.resources.user_interest_pb2' + , + __doc__ = """A user interest: a particular interest-based vertical to be targeted. + + + Attributes: + resource_name: + The resource name of the user interest. User interest resource + names have the form: + ``customers/{customer_id}/userInterests/{user_interest_id}`` + taxonomy_type: + Taxonomy type of the user interest. + user_interest_id: + The ID of the user interest. + name: + The name of the user interest. + user_interest_parent: + The parent of the user interest. + launched_to_all: + True if the user interest is launched to all channels and + locales. + availabilities: + Availability information of the user interest. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.UserInterest) + )) +_sym_db.RegisterMessage(UserInterest) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\021UserInterestProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/user_interest_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/user_interest_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/user_interest_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/user_list_pb2.py b/google/ads/google_ads/v0/proto/resources/user_list_pb2.py new file mode 100644 index 000000000..5f1275e6d --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/user_list_pb2.py @@ -0,0 +1,321 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/resources/user_list.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.common import user_lists_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_user__lists__pb2 +from google.ads.google_ads.v0.proto.enums import access_reason_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_access__reason__pb2 +from google.ads.google_ads.v0.proto.enums import user_list_access_status_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__access__status__pb2 +from google.ads.google_ads.v0.proto.enums import user_list_closing_reason_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__closing__reason__pb2 +from google.ads.google_ads.v0.proto.enums import user_list_membership_status_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__membership__status__pb2 +from google.ads.google_ads.v0.proto.enums import user_list_size_range_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__size__range__pb2 +from google.ads.google_ads.v0.proto.enums import user_list_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__type__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/resources/user_list.proto', + package='google.ads.googleads.v0.resources', + syntax='proto3', + serialized_pb=_b('\n7google/ads/googleads_v0/proto/resources/user_list.proto\x12!google.ads.googleads.v0.resources\x1a\x35google/ads/googleads_v0/proto/common/user_lists.proto\x1a\x37google/ads/googleads_v0/proto/enums/access_reason.proto\x1a\x41google/ads/googleads_v0/proto/enums/user_list_access_status.proto\x1a\x42google/ads/googleads_v0/proto/enums/user_list_closing_reason.proto\x1a\x45google/ads/googleads_v0/proto/enums/user_list_membership_status.proto\x1a>google/ads/googleads_v0/proto/enums/user_list_size_range.proto\x1a\x38google/ads/googleads_v0/proto/enums/user_list_type.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\x98\x0b\n\x08UserList\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12\'\n\x02id\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12-\n\tread_only\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12*\n\x04name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64\x65scription\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12o\n\x11membership_status\x18\x06 \x01(\x0e\x32T.google.ads.googleads.v0.enums.UserListMembershipStatusEnum.UserListMembershipStatus\x12\x36\n\x10integration_code\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x39\n\x14membership_life_span\x18\x08 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x35\n\x10size_for_display\x18\t \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x66\n\x16size_range_for_display\x18\n \x01(\x0e\x32\x46.google.ads.googleads.v0.enums.UserListSizeRangeEnum.UserListSizeRange\x12\x34\n\x0fsize_for_search\x18\x0b \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x65\n\x15size_range_for_search\x18\x0c \x01(\x0e\x32\x46.google.ads.googleads.v0.enums.UserListSizeRangeEnum.UserListSizeRange\x12J\n\x04type\x18\r \x01(\x0e\x32<.google.ads.googleads.v0.enums.UserListTypeEnum.UserListType\x12\x66\n\x0e\x63losing_reason\x18\x0e \x01(\x0e\x32N.google.ads.googleads.v0.enums.UserListClosingReasonEnum.UserListClosingReason\x12S\n\raccess_reason\x18\x0f \x01(\x0e\x32<.google.ads.googleads.v0.enums.AccessReasonEnum.AccessReason\x12n\n\x18\x61\x63\x63ount_user_list_status\x18\x10 \x01(\x0e\x32L.google.ads.googleads.v0.enums.UserListAccessStatusEnum.UserListAccessStatus\x12\x37\n\x13\x65ligible_for_search\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x38\n\x14\x65ligible_for_display\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12S\n\x13\x63rm_based_user_list\x18\x13 \x01(\x0b\x32\x34.google.ads.googleads.v0.common.CrmBasedUserListInfoH\x00\x12P\n\x11similar_user_list\x18\x14 \x01(\x0b\x32\x33.google.ads.googleads.v0.common.SimilarUserListInfoH\x00\x42\x0b\n\tuser_listB\xd2\x01\n%com.google.ads.googleads.v0.resourcesB\rUserListProtoP\x01ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\xa2\x02\x03GAA\xaa\x02!Google.Ads.GoogleAds.V0.Resources\xca\x02!Google\\Ads\\GoogleAds\\V0\\Resourcesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_user__lists__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_access__reason__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__access__status__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__closing__reason__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__membership__status__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__size__range__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__type__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_USERLIST = _descriptor.Descriptor( + name='UserList', + full_name='google.ads.googleads.v0.resources.UserList', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.resources.UserList.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='id', full_name='google.ads.googleads.v0.resources.UserList.id', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='read_only', full_name='google.ads.googleads.v0.resources.UserList.read_only', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='name', full_name='google.ads.googleads.v0.resources.UserList.name', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='description', full_name='google.ads.googleads.v0.resources.UserList.description', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='membership_status', full_name='google.ads.googleads.v0.resources.UserList.membership_status', index=5, + number=6, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='integration_code', full_name='google.ads.googleads.v0.resources.UserList.integration_code', index=6, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='membership_life_span', full_name='google.ads.googleads.v0.resources.UserList.membership_life_span', index=7, + number=8, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='size_for_display', full_name='google.ads.googleads.v0.resources.UserList.size_for_display', index=8, + number=9, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='size_range_for_display', full_name='google.ads.googleads.v0.resources.UserList.size_range_for_display', index=9, + number=10, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='size_for_search', full_name='google.ads.googleads.v0.resources.UserList.size_for_search', index=10, + number=11, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='size_range_for_search', full_name='google.ads.googleads.v0.resources.UserList.size_range_for_search', index=11, + number=12, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='type', full_name='google.ads.googleads.v0.resources.UserList.type', index=12, + number=13, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='closing_reason', full_name='google.ads.googleads.v0.resources.UserList.closing_reason', index=13, + number=14, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='access_reason', full_name='google.ads.googleads.v0.resources.UserList.access_reason', index=14, + number=15, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='account_user_list_status', full_name='google.ads.googleads.v0.resources.UserList.account_user_list_status', index=15, + number=16, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='eligible_for_search', full_name='google.ads.googleads.v0.resources.UserList.eligible_for_search', index=16, + number=17, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='eligible_for_display', full_name='google.ads.googleads.v0.resources.UserList.eligible_for_display', index=17, + number=18, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='crm_based_user_list', full_name='google.ads.googleads.v0.resources.UserList.crm_based_user_list', index=18, + number=19, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='similar_user_list', full_name='google.ads.googleads.v0.resources.UserList.similar_user_list', index=19, + number=20, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='user_list', full_name='google.ads.googleads.v0.resources.UserList.user_list', + index=0, containing_type=None, fields=[]), + ], + serialized_start=567, + serialized_end=1999, +) + +_USERLIST.fields_by_name['id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_USERLIST.fields_by_name['read_only'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +_USERLIST.fields_by_name['name'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_USERLIST.fields_by_name['description'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_USERLIST.fields_by_name['membership_status'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__membership__status__pb2._USERLISTMEMBERSHIPSTATUSENUM_USERLISTMEMBERSHIPSTATUS +_USERLIST.fields_by_name['integration_code'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_USERLIST.fields_by_name['membership_life_span'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_USERLIST.fields_by_name['size_for_display'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_USERLIST.fields_by_name['size_range_for_display'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__size__range__pb2._USERLISTSIZERANGEENUM_USERLISTSIZERANGE +_USERLIST.fields_by_name['size_for_search'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_USERLIST.fields_by_name['size_range_for_search'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__size__range__pb2._USERLISTSIZERANGEENUM_USERLISTSIZERANGE +_USERLIST.fields_by_name['type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__type__pb2._USERLISTTYPEENUM_USERLISTTYPE +_USERLIST.fields_by_name['closing_reason'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__closing__reason__pb2._USERLISTCLOSINGREASONENUM_USERLISTCLOSINGREASON +_USERLIST.fields_by_name['access_reason'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_access__reason__pb2._ACCESSREASONENUM_ACCESSREASON +_USERLIST.fields_by_name['account_user_list_status'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_user__list__access__status__pb2._USERLISTACCESSSTATUSENUM_USERLISTACCESSSTATUS +_USERLIST.fields_by_name['eligible_for_search'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +_USERLIST.fields_by_name['eligible_for_display'].message_type = google_dot_protobuf_dot_wrappers__pb2._BOOLVALUE +_USERLIST.fields_by_name['crm_based_user_list'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_user__lists__pb2._CRMBASEDUSERLISTINFO +_USERLIST.fields_by_name['similar_user_list'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_user__lists__pb2._SIMILARUSERLISTINFO +_USERLIST.oneofs_by_name['user_list'].fields.append( + _USERLIST.fields_by_name['crm_based_user_list']) +_USERLIST.fields_by_name['crm_based_user_list'].containing_oneof = _USERLIST.oneofs_by_name['user_list'] +_USERLIST.oneofs_by_name['user_list'].fields.append( + _USERLIST.fields_by_name['similar_user_list']) +_USERLIST.fields_by_name['similar_user_list'].containing_oneof = _USERLIST.oneofs_by_name['user_list'] +DESCRIPTOR.message_types_by_name['UserList'] = _USERLIST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +UserList = _reflection.GeneratedProtocolMessageType('UserList', (_message.Message,), dict( + DESCRIPTOR = _USERLIST, + __module__ = 'google.ads.google_ads.v0.proto.resources.user_list_pb2' + , + __doc__ = """A user list. This is a list of users a customer may target. + + + Attributes: + resource_name: + The resource name of the user list. User list resource names + have the form: + ``customers/{customer_id}/userLists/{user_list_id}`` + id: + Id of the user list. + read_only: + A flag that indicates if a user may edit a list. Depends on + the list ownership and list type. For example, external + remarketing user lists are not editable. This field is read- + only. + name: + Name of this user list. Depending on its access\_reason, the + user list name may not be unique (e.g. if + access\_reason=SHARED) + description: + Description of this user list. + membership_status: + Membership status of this user list. Indicates whether a user + list is open or active. Only open user lists can accumulate + more users and can be targeted to. + integration_code: + An ID from external system. It is used by user list sellers to + correlate IDs on their systems. + membership_life_span: + Number of days a user's cookie stays on your list since its + most recent addition to the list. This field must be between 0 + and 540 inclusive. However, for CRM based userlists, this + field can be set to 10000 which means no expiration. It'll be + ignored for logical\_user\_list. + size_for_display: + Estimated number of users in this user list, on the Google + Display Network. This value is null if the number of users has + not yet been determined. This field is read-only. + size_range_for_display: + Size range in terms of number of users of the UserList, on the + Google Display Network. This field is read-only. + size_for_search: + Estimated number of users in this user list in the google.com + domain. These are the users available for targeting in Search + campaigns. This value is null if the number of users has not + yet been determined. This field is read-only. + size_range_for_search: + Size range in terms of number of users of the UserList, for + Search ads. This field is read-only. + type: + Type of this list. This field is read-only. + closing_reason: + Indicating the reason why this user list membership status is + closed. It is only populated on lists that were automatically + closed due to inactivity, and will be cleared once the list + membership status becomes open. + access_reason: + Indicates the reason this account has been granted access to + the list. The reason can be SHARED, OWNED, LICENSED or + SUBSCRIBED. This field is read-only. + account_user_list_status: + Indicates if this share is still enabled. When a UserList is + shared with the user this field is set to ENABLED. Later the + userList owner can decide to revoke the share and make it + DISABLED. The default value of this field is set to ENABLED. + eligible_for_search: + Indicates if this user list is eligible for Google Search + Network. + eligible_for_display: + Indicates this user list is eligible for Google Display + Network. This field is read-only. + user_list: + The user list. Exactly one must be set. + crm_based_user_list: + User list of CRM users provided by the advertiser. + similar_user_list: + User list which are similar to users from another UserList. + These lists are readonly and automatically created by google. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.resources.UserList) + )) +_sym_db.RegisterMessage(UserList) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n%com.google.ads.googleads.v0.resourcesB\rUserListProtoP\001ZJgoogle.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources\242\002\003GAA\252\002!Google.Ads.GoogleAds.V0.Resources\312\002!Google\\Ads\\GoogleAds\\V0\\Resources')) +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/resources/user_list_pb2_grpc.py b/google/ads/google_ads/v0/proto/resources/user_list_pb2_grpc.py new file mode 100644 index 000000000..a89435267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/resources/user_list_pb2_grpc.py @@ -0,0 +1,3 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + diff --git a/google/ads/google_ads/v0/proto/resources/video_pb2.py b/google/ads/google_ads/v0/proto/resources/video_pb2.py index 43b170e68..dd258acc6 100644 --- a/google/ads/google_ads/v0/proto/resources/video_pb2.py +++ b/google/ads/google_ads/v0/proto/resources/video_pb2.py @@ -94,7 +94,7 @@ Video = _reflection.GeneratedProtocolMessageType('Video', (_message.Message,), dict( DESCRIPTOR = _VIDEO, - __module__ = 'google.ads.googleads_v0.proto.resources.video_pb2' + __module__ = 'google.ads.google_ads.v0.proto.resources.video_pb2' , __doc__ = """A video. diff --git a/google/ads/google_ads/v0/proto/services/account_budget_proposal_service_pb2.py b/google/ads/google_ads/v0/proto/services/account_budget_proposal_service_pb2.py index bf8cbf738..b59b107ee 100644 --- a/google/ads/google_ads/v0/proto/services/account_budget_proposal_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/account_budget_proposal_service_pb2.py @@ -226,7 +226,7 @@ GetAccountBudgetProposalRequest = _reflection.GeneratedProtocolMessageType('GetAccountBudgetProposalRequest', (_message.Message,), dict( DESCRIPTOR = _GETACCOUNTBUDGETPROPOSALREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.account_budget_proposal_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.account_budget_proposal_service_pb2' , __doc__ = """Request message for [AccountBudgetProposalService.GetAccountBudgetProposal][google.ads.googleads.v0.services.AccountBudgetProposalService.GetAccountBudgetProposal]. @@ -243,7 +243,7 @@ MutateAccountBudgetProposalRequest = _reflection.GeneratedProtocolMessageType('MutateAccountBudgetProposalRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATEACCOUNTBUDGETPROPOSALREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.account_budget_proposal_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.account_budget_proposal_service_pb2' , __doc__ = """Request message for [AccountBudgetProposalService.MutateAccountBudgetProposal][google.ads.googleads.v0.services.AccountBudgetProposalService.MutateAccountBudgetProposal]. @@ -262,7 +262,7 @@ AccountBudgetProposalOperation = _reflection.GeneratedProtocolMessageType('AccountBudgetProposalOperation', (_message.Message,), dict( DESCRIPTOR = _ACCOUNTBUDGETPROPOSALOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.account_budget_proposal_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.account_budget_proposal_service_pb2' , __doc__ = """A single operation to propose the creation of a new account-level budget or edit/end/remove an existing one. @@ -295,7 +295,7 @@ MutateAccountBudgetProposalResponse = _reflection.GeneratedProtocolMessageType('MutateAccountBudgetProposalResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATEACCOUNTBUDGETPROPOSALRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.account_budget_proposal_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.account_budget_proposal_service_pb2' , __doc__ = """Response message for account-level budget mutate operations. @@ -310,7 +310,7 @@ MutateAccountBudgetProposalResult = _reflection.GeneratedProtocolMessageType('MutateAccountBudgetProposalResult', (_message.Message,), dict( DESCRIPTOR = _MUTATEACCOUNTBUDGETPROPOSALRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.account_budget_proposal_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.account_budget_proposal_service_pb2' , __doc__ = """The result for the account budget proposal mutate. diff --git a/google/ads/google_ads/v0/proto/services/account_budget_service_pb2.py b/google/ads/google_ads/v0/proto/services/account_budget_service_pb2.py index 5785abd77..d54d166a2 100644 --- a/google/ads/google_ads/v0/proto/services/account_budget_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/account_budget_service_pb2.py @@ -63,7 +63,7 @@ GetAccountBudgetRequest = _reflection.GeneratedProtocolMessageType('GetAccountBudgetRequest', (_message.Message,), dict( DESCRIPTOR = _GETACCOUNTBUDGETREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.account_budget_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.account_budget_service_pb2' , __doc__ = """Request message for [AccountBudgetService.GetAccountBudget][google.ads.googleads.v0.services.AccountBudgetService.GetAccountBudget]. diff --git a/google/ads/google_ads/v0/proto/services/ad_group_ad_service_pb2.py b/google/ads/google_ads/v0/proto/services/ad_group_ad_service_pb2.py index 32c10d856..49808c66d 100644 --- a/google/ads/google_ads/v0/proto/services/ad_group_ad_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/ad_group_ad_service_pb2.py @@ -246,7 +246,7 @@ GetAdGroupAdRequest = _reflection.GeneratedProtocolMessageType('GetAdGroupAdRequest', (_message.Message,), dict( DESCRIPTOR = _GETADGROUPADREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_ad_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_ad_service_pb2' , __doc__ = """Request message for [AdGroupAdService.GetAdGroupAd][google.ads.googleads.v0.services.AdGroupAdService.GetAdGroupAd]. @@ -262,7 +262,7 @@ MutateAdGroupAdsRequest = _reflection.GeneratedProtocolMessageType('MutateAdGroupAdsRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPADSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_ad_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_ad_service_pb2' , __doc__ = """Request message for [AdGroupAdService.MutateAdGroupAds][google.ads.googleads.v0.services.AdGroupAdService.MutateAdGroupAds]. @@ -280,7 +280,7 @@ AdGroupAdOperation = _reflection.GeneratedProtocolMessageType('AdGroupAdOperation', (_message.Message,), dict( DESCRIPTOR = _ADGROUPADOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_ad_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_ad_service_pb2' , __doc__ = """A single operation (create, update, remove) on an ad group ad. @@ -309,7 +309,7 @@ MutateAdGroupAdsResponse = _reflection.GeneratedProtocolMessageType('MutateAdGroupAdsResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPADSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_ad_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_ad_service_pb2' , __doc__ = """Response message for an ad group ad mutate. @@ -324,7 +324,7 @@ MutateAdGroupAdResult = _reflection.GeneratedProtocolMessageType('MutateAdGroupAdResult', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPADRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_ad_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_ad_service_pb2' , __doc__ = """The result for the ad mutate. diff --git a/google/ads/google_ads/v0/proto/services/ad_group_audience_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/ad_group_audience_view_service_pb2.py index 08d4cb92d..cc51f3ccb 100644 --- a/google/ads/google_ads/v0/proto/services/ad_group_audience_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/ad_group_audience_view_service_pb2.py @@ -63,7 +63,7 @@ GetAdGroupAudienceViewRequest = _reflection.GeneratedProtocolMessageType('GetAdGroupAudienceViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETADGROUPAUDIENCEVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_audience_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_audience_view_service_pb2' , __doc__ = """Request message for [AdGroupAudienceViewService.GetAdGoupAudienceView][]. diff --git a/google/ads/google_ads/v0/proto/services/ad_group_bid_modifier_service_pb2.py b/google/ads/google_ads/v0/proto/services/ad_group_bid_modifier_service_pb2.py index 418c7ca85..361b07129 100644 --- a/google/ads/google_ads/v0/proto/services/ad_group_bid_modifier_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/ad_group_bid_modifier_service_pb2.py @@ -237,7 +237,7 @@ GetAdGroupBidModifierRequest = _reflection.GeneratedProtocolMessageType('GetAdGroupBidModifierRequest', (_message.Message,), dict( DESCRIPTOR = _GETADGROUPBIDMODIFIERREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_bid_modifier_service_pb2' , __doc__ = """Request message for [AdGroupBidModifierService.GetAdGroupBidModifier][google.ads.googleads.v0.services.AdGroupBidModifierService.GetAdGroupBidModifier]. @@ -253,7 +253,7 @@ MutateAdGroupBidModifiersRequest = _reflection.GeneratedProtocolMessageType('MutateAdGroupBidModifiersRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPBIDMODIFIERSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_bid_modifier_service_pb2' , __doc__ = """Request message for [AdGroupBidModifierService.MutateAdGroupBidModifiers][google.ads.googleads.v0.services.AdGroupBidModifierService.MutateAdGroupBidModifiers]. @@ -273,7 +273,7 @@ AdGroupBidModifierOperation = _reflection.GeneratedProtocolMessageType('AdGroupBidModifierOperation', (_message.Message,), dict( DESCRIPTOR = _ADGROUPBIDMODIFIEROPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_bid_modifier_service_pb2' , __doc__ = """A single operation (create, remove, update) on an ad group bid modifier. @@ -301,7 +301,7 @@ MutateAdGroupBidModifiersResponse = _reflection.GeneratedProtocolMessageType('MutateAdGroupBidModifiersResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPBIDMODIFIERSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_bid_modifier_service_pb2' , __doc__ = """Response message for ad group bid modifiers mutate. @@ -316,7 +316,7 @@ MutateAdGroupBidModifierResult = _reflection.GeneratedProtocolMessageType('MutateAdGroupBidModifierResult', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPBIDMODIFIERRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_bid_modifier_service_pb2' , __doc__ = """The result for the criterion mutate. diff --git a/google/ads/google_ads/v0/proto/services/ad_group_criterion_service_pb2.py b/google/ads/google_ads/v0/proto/services/ad_group_criterion_service_pb2.py index 8291f225c..0a66afa2a 100644 --- a/google/ads/google_ads/v0/proto/services/ad_group_criterion_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/ad_group_criterion_service_pb2.py @@ -237,7 +237,7 @@ GetAdGroupCriterionRequest = _reflection.GeneratedProtocolMessageType('GetAdGroupCriterionRequest', (_message.Message,), dict( DESCRIPTOR = _GETADGROUPCRITERIONREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_criterion_service_pb2' , __doc__ = """Request message for [AdGroupCriterionService.GetAdGroupCriterion][google.ads.googleads.v0.services.AdGroupCriterionService.GetAdGroupCriterion]. @@ -253,7 +253,7 @@ MutateAdGroupCriteriaRequest = _reflection.GeneratedProtocolMessageType('MutateAdGroupCriteriaRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPCRITERIAREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_criterion_service_pb2' , __doc__ = """Request message for [AdGroupCriterionService.MutateAdGroupCriteria][google.ads.googleads.v0.services.AdGroupCriterionService.MutateAdGroupCriteria]. @@ -271,7 +271,7 @@ AdGroupCriterionOperation = _reflection.GeneratedProtocolMessageType('AdGroupCriterionOperation', (_message.Message,), dict( DESCRIPTOR = _ADGROUPCRITERIONOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_criterion_service_pb2' , __doc__ = """A single operation (create, remove, update) on an ad group criterion. @@ -299,7 +299,7 @@ MutateAdGroupCriteriaResponse = _reflection.GeneratedProtocolMessageType('MutateAdGroupCriteriaResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPCRITERIARESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_criterion_service_pb2' , __doc__ = """Response message for an ad group criterion mutate. @@ -314,7 +314,7 @@ MutateAdGroupCriterionResult = _reflection.GeneratedProtocolMessageType('MutateAdGroupCriterionResult', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPCRITERIONRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_criterion_service_pb2' , __doc__ = """The result for the criterion mutate. diff --git a/google/ads/google_ads/v0/proto/services/ad_group_feed_service_pb2.py b/google/ads/google_ads/v0/proto/services/ad_group_feed_service_pb2.py new file mode 100644 index 000000000..238d66336 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/ad_group_feed_service_pb2.py @@ -0,0 +1,368 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/ad_group_feed_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import ad_group_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/ad_group_feed_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nBgoogle/ads/googleads_v0/proto/services/ad_group_feed_service.proto\x12 google.ads.googleads.v0.services\x1a;google/ads/googleads_v0/proto/resources/ad_group_feed.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\".\n\x15GetAdGroupFeedRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"|\n\x19MutateAdGroupFeedsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12J\n\noperations\x18\x02 \x03(\x0b\x32\x36.google.ads.googleads.v0.services.AdGroupFeedOperation\"\xea\x01\n\x14\x41\x64GroupFeedOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12@\n\x06\x63reate\x18\x01 \x01(\x0b\x32..google.ads.googleads.v0.resources.AdGroupFeedH\x00\x12@\n\x06update\x18\x02 \x01(\x0b\x32..google.ads.googleads.v0.resources.AdGroupFeedH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"h\n\x1aMutateAdGroupFeedsResponse\x12J\n\x07results\x18\x02 \x03(\x0b\x32\x39.google.ads.googleads.v0.services.MutateAdGroupFeedResult\"0\n\x17MutateAdGroupFeedResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\x98\x03\n\x12\x41\x64GroupFeedService\x12\xb1\x01\n\x0eGetAdGroupFeed\x12\x37.google.ads.googleads.v0.services.GetAdGroupFeedRequest\x1a..google.ads.googleads.v0.resources.AdGroupFeed\"6\x82\xd3\xe4\x93\x02\x30\x12./v0/{resource_name=customers/*/adGroupFeeds/*}\x12\xcd\x01\n\x12MutateAdGroupFeeds\x12;.google.ads.googleads.v0.services.MutateAdGroupFeedsRequest\x1a<.google.ads.googleads.v0.services.MutateAdGroupFeedsResponse\"<\x82\xd3\xe4\x93\x02\x36\"1/v0/customers/{customer_id=*}/adGroupFeeds:mutate:\x01*B\xd7\x01\n$com.google.ads.googleads.v0.servicesB\x17\x41\x64GroupFeedServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETADGROUPFEEDREQUEST = _descriptor.Descriptor( + name='GetAdGroupFeedRequest', + full_name='google.ads.googleads.v0.services.GetAdGroupFeedRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetAdGroupFeedRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=229, + serialized_end=275, +) + + +_MUTATEADGROUPFEEDSREQUEST = _descriptor.Descriptor( + name='MutateAdGroupFeedsRequest', + full_name='google.ads.googleads.v0.services.MutateAdGroupFeedsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateAdGroupFeedsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateAdGroupFeedsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=277, + serialized_end=401, +) + + +_ADGROUPFEEDOPERATION = _descriptor.Descriptor( + name='AdGroupFeedOperation', + full_name='google.ads.googleads.v0.services.AdGroupFeedOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.AdGroupFeedOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.AdGroupFeedOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.AdGroupFeedOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.AdGroupFeedOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.AdGroupFeedOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=404, + serialized_end=638, +) + + +_MUTATEADGROUPFEEDSRESPONSE = _descriptor.Descriptor( + name='MutateAdGroupFeedsResponse', + full_name='google.ads.googleads.v0.services.MutateAdGroupFeedsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateAdGroupFeedsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=640, + serialized_end=744, +) + + +_MUTATEADGROUPFEEDRESULT = _descriptor.Descriptor( + name='MutateAdGroupFeedResult', + full_name='google.ads.googleads.v0.services.MutateAdGroupFeedResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateAdGroupFeedResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=746, + serialized_end=794, +) + +_MUTATEADGROUPFEEDSREQUEST.fields_by_name['operations'].message_type = _ADGROUPFEEDOPERATION +_ADGROUPFEEDOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_ADGROUPFEEDOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2._ADGROUPFEED +_ADGROUPFEEDOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2._ADGROUPFEED +_ADGROUPFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _ADGROUPFEEDOPERATION.fields_by_name['create']) +_ADGROUPFEEDOPERATION.fields_by_name['create'].containing_oneof = _ADGROUPFEEDOPERATION.oneofs_by_name['operation'] +_ADGROUPFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _ADGROUPFEEDOPERATION.fields_by_name['update']) +_ADGROUPFEEDOPERATION.fields_by_name['update'].containing_oneof = _ADGROUPFEEDOPERATION.oneofs_by_name['operation'] +_ADGROUPFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _ADGROUPFEEDOPERATION.fields_by_name['remove']) +_ADGROUPFEEDOPERATION.fields_by_name['remove'].containing_oneof = _ADGROUPFEEDOPERATION.oneofs_by_name['operation'] +_MUTATEADGROUPFEEDSRESPONSE.fields_by_name['results'].message_type = _MUTATEADGROUPFEEDRESULT +DESCRIPTOR.message_types_by_name['GetAdGroupFeedRequest'] = _GETADGROUPFEEDREQUEST +DESCRIPTOR.message_types_by_name['MutateAdGroupFeedsRequest'] = _MUTATEADGROUPFEEDSREQUEST +DESCRIPTOR.message_types_by_name['AdGroupFeedOperation'] = _ADGROUPFEEDOPERATION +DESCRIPTOR.message_types_by_name['MutateAdGroupFeedsResponse'] = _MUTATEADGROUPFEEDSRESPONSE +DESCRIPTOR.message_types_by_name['MutateAdGroupFeedResult'] = _MUTATEADGROUPFEEDRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetAdGroupFeedRequest = _reflection.GeneratedProtocolMessageType('GetAdGroupFeedRequest', (_message.Message,), dict( + DESCRIPTOR = _GETADGROUPFEEDREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_feed_service_pb2' + , + __doc__ = """Request message for + [AdGroupFeedService.GetAdGroupFeed][google.ads.googleads.v0.services.AdGroupFeedService.GetAdGroupFeed]. + + + Attributes: + resource_name: + The resource name of the ad group feed to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetAdGroupFeedRequest) + )) +_sym_db.RegisterMessage(GetAdGroupFeedRequest) + +MutateAdGroupFeedsRequest = _reflection.GeneratedProtocolMessageType('MutateAdGroupFeedsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEADGROUPFEEDSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_feed_service_pb2' + , + __doc__ = """Request message for + [AdGroupFeedService.MutateAdGroupFeeds][google.ads.googleads.v0.services.AdGroupFeedService.MutateAdGroupFeeds]. + + + Attributes: + customer_id: + The ID of the customer whose ad group feeds are being + modified. + operations: + The list of operations to perform on individual ad group + feeds. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateAdGroupFeedsRequest) + )) +_sym_db.RegisterMessage(MutateAdGroupFeedsRequest) + +AdGroupFeedOperation = _reflection.GeneratedProtocolMessageType('AdGroupFeedOperation', (_message.Message,), dict( + DESCRIPTOR = _ADGROUPFEEDOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_feed_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on an ad group feed. + + + Attributes: + update_mask: + FieldMask that determines which resource fields are modified + in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new ad + group feed. + update: + Update operation: The ad group feed is expected to have a + valid resource name. + remove: + Remove operation: A resource name for the removed ad group + feed is expected, in this format: ``customers/{customer_id}/a + dGroupFeeds/{ad_group_id}_{feed_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.AdGroupFeedOperation) + )) +_sym_db.RegisterMessage(AdGroupFeedOperation) + +MutateAdGroupFeedsResponse = _reflection.GeneratedProtocolMessageType('MutateAdGroupFeedsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEADGROUPFEEDSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_feed_service_pb2' + , + __doc__ = """Response message for an ad group feed mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateAdGroupFeedsResponse) + )) +_sym_db.RegisterMessage(MutateAdGroupFeedsResponse) + +MutateAdGroupFeedResult = _reflection.GeneratedProtocolMessageType('MutateAdGroupFeedResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEADGROUPFEEDRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_feed_service_pb2' + , + __doc__ = """The result for the ad group feed mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateAdGroupFeedResult) + )) +_sym_db.RegisterMessage(MutateAdGroupFeedResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\027AdGroupFeedServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_ADGROUPFEEDSERVICE = _descriptor.ServiceDescriptor( + name='AdGroupFeedService', + full_name='google.ads.googleads.v0.services.AdGroupFeedService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=797, + serialized_end=1205, + methods=[ + _descriptor.MethodDescriptor( + name='GetAdGroupFeed', + full_name='google.ads.googleads.v0.services.AdGroupFeedService.GetAdGroupFeed', + index=0, + containing_service=None, + input_type=_GETADGROUPFEEDREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2._ADGROUPFEED, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0020\022./v0/{resource_name=customers/*/adGroupFeeds/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateAdGroupFeeds', + full_name='google.ads.googleads.v0.services.AdGroupFeedService.MutateAdGroupFeeds', + index=1, + containing_service=None, + input_type=_MUTATEADGROUPFEEDSREQUEST, + output_type=_MUTATEADGROUPFEEDSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0026\"1/v0/customers/{customer_id=*}/adGroupFeeds:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_ADGROUPFEEDSERVICE) + +DESCRIPTOR.services_by_name['AdGroupFeedService'] = _ADGROUPFEEDSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/ad_group_feed_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/ad_group_feed_service_pb2_grpc.py new file mode 100644 index 000000000..a517e1948 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/ad_group_feed_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import ad_group_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2 +from google.ads.google_ads.v0.proto.services import ad_group_feed_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__feed__service__pb2 + + +class AdGroupFeedServiceStub(object): + """Service to manage ad group feeds. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetAdGroupFeed = channel.unary_unary( + '/google.ads.googleads.v0.services.AdGroupFeedService/GetAdGroupFeed', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__feed__service__pb2.GetAdGroupFeedRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2.AdGroupFeed.FromString, + ) + self.MutateAdGroupFeeds = channel.unary_unary( + '/google.ads.googleads.v0.services.AdGroupFeedService/MutateAdGroupFeeds', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__feed__service__pb2.MutateAdGroupFeedsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__feed__service__pb2.MutateAdGroupFeedsResponse.FromString, + ) + + +class AdGroupFeedServiceServicer(object): + """Service to manage ad group feeds. + """ + + def GetAdGroupFeed(self, request, context): + """Returns the requested ad group feed in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateAdGroupFeeds(self, request, context): + """Creates, updates, or removes ad group feeds. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_AdGroupFeedServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetAdGroupFeed': grpc.unary_unary_rpc_method_handler( + servicer.GetAdGroupFeed, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__feed__service__pb2.GetAdGroupFeedRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2.AdGroupFeed.SerializeToString, + ), + 'MutateAdGroupFeeds': grpc.unary_unary_rpc_method_handler( + servicer.MutateAdGroupFeeds, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__feed__service__pb2.MutateAdGroupFeedsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__feed__service__pb2.MutateAdGroupFeedsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.AdGroupFeedService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/ad_group_service_pb2.py b/google/ads/google_ads/v0/proto/services/ad_group_service_pb2.py index 34641d8dd..bbbc98ff2 100644 --- a/google/ads/google_ads/v0/proto/services/ad_group_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/ad_group_service_pb2.py @@ -237,7 +237,7 @@ GetAdGroupRequest = _reflection.GeneratedProtocolMessageType('GetAdGroupRequest', (_message.Message,), dict( DESCRIPTOR = _GETADGROUPREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_service_pb2' , __doc__ = """Request message for [AdGroupService.GetAdGroup][google.ads.googleads.v0.services.AdGroupService.GetAdGroup]. @@ -253,7 +253,7 @@ MutateAdGroupsRequest = _reflection.GeneratedProtocolMessageType('MutateAdGroupsRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_service_pb2' , __doc__ = """Request message for [AdGroupService.MutateAdGroups][google.ads.googleads.v0.services.AdGroupService.MutateAdGroups]. @@ -271,7 +271,7 @@ AdGroupOperation = _reflection.GeneratedProtocolMessageType('AdGroupOperation', (_message.Message,), dict( DESCRIPTOR = _ADGROUPOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_service_pb2' , __doc__ = """A single operation (create, update, remove) on an ad group. @@ -299,7 +299,7 @@ MutateAdGroupsResponse = _reflection.GeneratedProtocolMessageType('MutateAdGroupsResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_service_pb2' , __doc__ = """Response message for an ad group mutate. @@ -314,7 +314,7 @@ MutateAdGroupResult = _reflection.GeneratedProtocolMessageType('MutateAdGroupResult', (_message.Message,), dict( DESCRIPTOR = _MUTATEADGROUPRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.ad_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.ad_group_service_pb2' , __doc__ = """The result for the ad group mutate. diff --git a/google/ads/google_ads/v0/proto/services/age_range_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/age_range_view_service_pb2.py index 1f0dbff62..64fb28c91 100644 --- a/google/ads/google_ads/v0/proto/services/age_range_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/age_range_view_service_pb2.py @@ -63,7 +63,7 @@ GetAgeRangeViewRequest = _reflection.GeneratedProtocolMessageType('GetAgeRangeViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETAGERANGEVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.age_range_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.age_range_view_service_pb2' , __doc__ = """Request message for [AgeRangeViewService.GetAgeRangeView][google.ads.googleads.v0.services.AgeRangeViewService.GetAgeRangeView]. diff --git a/google/ads/google_ads/v0/proto/services/bidding_strategy_service_pb2.py b/google/ads/google_ads/v0/proto/services/bidding_strategy_service_pb2.py index 1097b38db..e3b9b9d7a 100644 --- a/google/ads/google_ads/v0/proto/services/bidding_strategy_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/bidding_strategy_service_pb2.py @@ -237,7 +237,7 @@ GetBiddingStrategyRequest = _reflection.GeneratedProtocolMessageType('GetBiddingStrategyRequest', (_message.Message,), dict( DESCRIPTOR = _GETBIDDINGSTRATEGYREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.bidding_strategy_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.bidding_strategy_service_pb2' , __doc__ = """Request message for [BiddingStrategyService.GetBiddingStrategy][google.ads.googleads.v0.services.BiddingStrategyService.GetBiddingStrategy]. @@ -253,7 +253,7 @@ MutateBiddingStrategiesRequest = _reflection.GeneratedProtocolMessageType('MutateBiddingStrategiesRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATEBIDDINGSTRATEGIESREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.bidding_strategy_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.bidding_strategy_service_pb2' , __doc__ = """Request message for [BiddingStrategyService.MutateBiddingStrategies][google.ads.googleads.v0.services.BiddingStrategyService.MutateBiddingStrategies]. @@ -273,7 +273,7 @@ BiddingStrategyOperation = _reflection.GeneratedProtocolMessageType('BiddingStrategyOperation', (_message.Message,), dict( DESCRIPTOR = _BIDDINGSTRATEGYOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.bidding_strategy_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.bidding_strategy_service_pb2' , __doc__ = """A single operation (create, update, remove) on a bidding strategy. @@ -301,7 +301,7 @@ MutateBiddingStrategiesResponse = _reflection.GeneratedProtocolMessageType('MutateBiddingStrategiesResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATEBIDDINGSTRATEGIESRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.bidding_strategy_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.bidding_strategy_service_pb2' , __doc__ = """Response message for bidding strategy mutate. @@ -316,7 +316,7 @@ MutateBiddingStrategyResult = _reflection.GeneratedProtocolMessageType('MutateBiddingStrategyResult', (_message.Message,), dict( DESCRIPTOR = _MUTATEBIDDINGSTRATEGYRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.bidding_strategy_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.bidding_strategy_service_pb2' , __doc__ = """The result for the bidding strategy mutate. diff --git a/google/ads/google_ads/v0/proto/services/billing_setup_service_pb2.py b/google/ads/google_ads/v0/proto/services/billing_setup_service_pb2.py index 6236bf9fe..29a5c99e6 100644 --- a/google/ads/google_ads/v0/proto/services/billing_setup_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/billing_setup_service_pb2.py @@ -217,7 +217,7 @@ GetBillingSetupRequest = _reflection.GeneratedProtocolMessageType('GetBillingSetupRequest', (_message.Message,), dict( DESCRIPTOR = _GETBILLINGSETUPREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.billing_setup_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.billing_setup_service_pb2' , __doc__ = """Request message for [BillingSetupService.GetBillingSetup][google.ads.googleads.v0.services.BillingSetupService.GetBillingSetup]. @@ -233,7 +233,7 @@ MutateBillingSetupRequest = _reflection.GeneratedProtocolMessageType('MutateBillingSetupRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATEBILLINGSETUPREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.billing_setup_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.billing_setup_service_pb2' , __doc__ = """Request message for billing setup mutate operations. @@ -251,7 +251,7 @@ BillingSetupOperation = _reflection.GeneratedProtocolMessageType('BillingSetupOperation', (_message.Message,), dict( DESCRIPTOR = _BILLINGSETUPOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.billing_setup_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.billing_setup_service_pb2' , __doc__ = """A single operation on a billing setup, which describes the cancellation of an existing billing setup. @@ -276,7 +276,7 @@ MutateBillingSetupResponse = _reflection.GeneratedProtocolMessageType('MutateBillingSetupResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATEBILLINGSETUPRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.billing_setup_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.billing_setup_service_pb2' , __doc__ = """Response message for a billing setup operation. @@ -292,7 +292,7 @@ MutateBillingSetupResult = _reflection.GeneratedProtocolMessageType('MutateBillingSetupResult', (_message.Message,), dict( DESCRIPTOR = _MUTATEBILLINGSETUPRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.billing_setup_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.billing_setup_service_pb2' , __doc__ = """Result for a single billing setup mutate. diff --git a/google/ads/google_ads/v0/proto/services/campaign_audience_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/campaign_audience_view_service_pb2.py new file mode 100644 index 000000000..dd1ee78d4 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/campaign_audience_view_service_pb2.py @@ -0,0 +1,107 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/campaign_audience_view_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import campaign_audience_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/campaign_audience_view_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nKgoogle/ads/googleads_v0/proto/services/campaign_audience_view_service.proto\x12 google.ads.googleads.v0.services\x1a\x44google/ads/googleads_v0/proto/resources/campaign_audience_view.proto\x1a\x1cgoogle/api/annotations.proto\"7\n\x1eGetCampaignAudienceViewRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xf5\x01\n\x1b\x43\x61mpaignAudienceViewService\x12\xd5\x01\n\x17GetCampaignAudienceView\x12@.google.ads.googleads.v0.services.GetCampaignAudienceViewRequest\x1a\x37.google.ads.googleads.v0.resources.CampaignAudienceView\"?\x82\xd3\xe4\x93\x02\x39\x12\x37/v0/{resource_name=customers/*/campaignAudienceViews/*}B\xe0\x01\n$com.google.ads.googleads.v0.servicesB CampaignAudienceViewServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_GETCAMPAIGNAUDIENCEVIEWREQUEST = _descriptor.Descriptor( + name='GetCampaignAudienceViewRequest', + full_name='google.ads.googleads.v0.services.GetCampaignAudienceViewRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetCampaignAudienceViewRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=213, + serialized_end=268, +) + +DESCRIPTOR.message_types_by_name['GetCampaignAudienceViewRequest'] = _GETCAMPAIGNAUDIENCEVIEWREQUEST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetCampaignAudienceViewRequest = _reflection.GeneratedProtocolMessageType('GetCampaignAudienceViewRequest', (_message.Message,), dict( + DESCRIPTOR = _GETCAMPAIGNAUDIENCEVIEWREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_audience_view_service_pb2' + , + __doc__ = """Request message for + [CampaignAudienceViewService.GetCampaignAudienceView][google.ads.googleads.v0.services.CampaignAudienceViewService.GetCampaignAudienceView]. + + + Attributes: + resource_name: + The resource name of the campaign audience view to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetCampaignAudienceViewRequest) + )) +_sym_db.RegisterMessage(GetCampaignAudienceViewRequest) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB CampaignAudienceViewServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_CAMPAIGNAUDIENCEVIEWSERVICE = _descriptor.ServiceDescriptor( + name='CampaignAudienceViewService', + full_name='google.ads.googleads.v0.services.CampaignAudienceViewService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=271, + serialized_end=516, + methods=[ + _descriptor.MethodDescriptor( + name='GetCampaignAudienceView', + full_name='google.ads.googleads.v0.services.CampaignAudienceViewService.GetCampaignAudienceView', + index=0, + containing_service=None, + input_type=_GETCAMPAIGNAUDIENCEVIEWREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2._CAMPAIGNAUDIENCEVIEW, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0029\0227/v0/{resource_name=customers/*/campaignAudienceViews/*}')), + ), +]) +_sym_db.RegisterServiceDescriptor(_CAMPAIGNAUDIENCEVIEWSERVICE) + +DESCRIPTOR.services_by_name['CampaignAudienceViewService'] = _CAMPAIGNAUDIENCEVIEWSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/campaign_audience_view_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/campaign_audience_view_service_pb2_grpc.py new file mode 100644 index 000000000..2b9c4429d --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/campaign_audience_view_service_pb2_grpc.py @@ -0,0 +1,47 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import campaign_audience_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2 +from google.ads.google_ads.v0.proto.services import campaign_audience_view_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__audience__view__service__pb2 + + +class CampaignAudienceViewServiceStub(object): + """Service to manage campaign audience views. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetCampaignAudienceView = channel.unary_unary( + '/google.ads.googleads.v0.services.CampaignAudienceViewService/GetCampaignAudienceView', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__audience__view__service__pb2.GetCampaignAudienceViewRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2.CampaignAudienceView.FromString, + ) + + +class CampaignAudienceViewServiceServicer(object): + """Service to manage campaign audience views. + """ + + def GetCampaignAudienceView(self, request, context): + """Returns the requested campaign audience view in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_CampaignAudienceViewServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetCampaignAudienceView': grpc.unary_unary_rpc_method_handler( + servicer.GetCampaignAudienceView, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__audience__view__service__pb2.GetCampaignAudienceViewRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2.CampaignAudienceView.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.CampaignAudienceViewService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/campaign_bid_modifier_service_pb2.py b/google/ads/google_ads/v0/proto/services/campaign_bid_modifier_service_pb2.py index a3fb6c0cb..0dbda3e9c 100644 --- a/google/ads/google_ads/v0/proto/services/campaign_bid_modifier_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/campaign_bid_modifier_service_pb2.py @@ -237,7 +237,7 @@ GetCampaignBidModifierRequest = _reflection.GeneratedProtocolMessageType('GetCampaignBidModifierRequest', (_message.Message,), dict( DESCRIPTOR = _GETCAMPAIGNBIDMODIFIERREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_bid_modifier_service_pb2' , __doc__ = """Request message for [CampaignBidModifierService.GetCampaignBidModifier][google.ads.googleads.v0.services.CampaignBidModifierService.GetCampaignBidModifier]. @@ -253,7 +253,7 @@ MutateCampaignBidModifiersRequest = _reflection.GeneratedProtocolMessageType('MutateCampaignBidModifiersRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNBIDMODIFIERSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_bid_modifier_service_pb2' , __doc__ = """Request message for [CampaignBidModifierService.MutateCampaignBidModifier][]. @@ -273,7 +273,7 @@ CampaignBidModifierOperation = _reflection.GeneratedProtocolMessageType('CampaignBidModifierOperation', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNBIDMODIFIEROPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_bid_modifier_service_pb2' , __doc__ = """A single operation (create, remove, update) on a campaign bid modifier. @@ -301,7 +301,7 @@ MutateCampaignBidModifiersResponse = _reflection.GeneratedProtocolMessageType('MutateCampaignBidModifiersResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNBIDMODIFIERSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_bid_modifier_service_pb2' , __doc__ = """Response message for campaign bid modifiers mutate. @@ -316,7 +316,7 @@ MutateCampaignBidModifierResult = _reflection.GeneratedProtocolMessageType('MutateCampaignBidModifierResult', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNBIDMODIFIERRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_bid_modifier_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_bid_modifier_service_pb2' , __doc__ = """The result for the criterion mutate. diff --git a/google/ads/google_ads/v0/proto/services/campaign_budget_service_pb2.py b/google/ads/google_ads/v0/proto/services/campaign_budget_service_pb2.py index 0833f69a3..38a29db2c 100644 --- a/google/ads/google_ads/v0/proto/services/campaign_budget_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/campaign_budget_service_pb2.py @@ -237,7 +237,7 @@ GetCampaignBudgetRequest = _reflection.GeneratedProtocolMessageType('GetCampaignBudgetRequest', (_message.Message,), dict( DESCRIPTOR = _GETCAMPAIGNBUDGETREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_budget_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_budget_service_pb2' , __doc__ = """Request message for [CampaignBudgetService.GetCampaignBudget][google.ads.googleads.v0.services.CampaignBudgetService.GetCampaignBudget]. @@ -253,7 +253,7 @@ MutateCampaignBudgetsRequest = _reflection.GeneratedProtocolMessageType('MutateCampaignBudgetsRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNBUDGETSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_budget_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_budget_service_pb2' , __doc__ = """Request message for [CampaignBudgetService.MutateCampaignBudgets][google.ads.googleads.v0.services.CampaignBudgetService.MutateCampaignBudgets]. @@ -273,7 +273,7 @@ CampaignBudgetOperation = _reflection.GeneratedProtocolMessageType('CampaignBudgetOperation', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNBUDGETOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_budget_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_budget_service_pb2' , __doc__ = """A single operation (create, update, remove) on a campaign budget. @@ -301,7 +301,7 @@ MutateCampaignBudgetsResponse = _reflection.GeneratedProtocolMessageType('MutateCampaignBudgetsResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNBUDGETSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_budget_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_budget_service_pb2' , __doc__ = """Response message for campaign budget mutate. @@ -316,7 +316,7 @@ MutateCampaignBudgetResult = _reflection.GeneratedProtocolMessageType('MutateCampaignBudgetResult', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNBUDGETRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_budget_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_budget_service_pb2' , __doc__ = """The result for the campaign budget mutate. diff --git a/google/ads/google_ads/v0/proto/services/campaign_criterion_service_pb2.py b/google/ads/google_ads/v0/proto/services/campaign_criterion_service_pb2.py index 4dde29c6c..5f93f45a0 100644 --- a/google/ads/google_ads/v0/proto/services/campaign_criterion_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/campaign_criterion_service_pb2.py @@ -237,7 +237,7 @@ GetCampaignCriterionRequest = _reflection.GeneratedProtocolMessageType('GetCampaignCriterionRequest', (_message.Message,), dict( DESCRIPTOR = _GETCAMPAIGNCRITERIONREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_criterion_service_pb2' , __doc__ = """Request message for [CampaignCriterionService.GetCampaignCriterion][google.ads.googleads.v0.services.CampaignCriterionService.GetCampaignCriterion]. @@ -253,7 +253,7 @@ MutateCampaignCriteriaRequest = _reflection.GeneratedProtocolMessageType('MutateCampaignCriteriaRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNCRITERIAREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_criterion_service_pb2' , __doc__ = """Request message for [CampaignCriterionService.MutateCampaignCriteria][google.ads.googleads.v0.services.CampaignCriterionService.MutateCampaignCriteria]. @@ -271,7 +271,7 @@ CampaignCriterionOperation = _reflection.GeneratedProtocolMessageType('CampaignCriterionOperation', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNCRITERIONOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_criterion_service_pb2' , __doc__ = """A single operation (create, update, remove) on a campaign criterion. @@ -299,7 +299,7 @@ MutateCampaignCriteriaResponse = _reflection.GeneratedProtocolMessageType('MutateCampaignCriteriaResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNCRITERIARESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_criterion_service_pb2' , __doc__ = """Response message for campaign criterion mutate. @@ -314,7 +314,7 @@ MutateCampaignCriterionResult = _reflection.GeneratedProtocolMessageType('MutateCampaignCriterionResult', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNCRITERIONRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_criterion_service_pb2' , __doc__ = """The result for the criterion mutate. diff --git a/google/ads/google_ads/v0/proto/services/campaign_feed_service_pb2.py b/google/ads/google_ads/v0/proto/services/campaign_feed_service_pb2.py new file mode 100644 index 000000000..8a34e20d6 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/campaign_feed_service_pb2.py @@ -0,0 +1,368 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/campaign_feed_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import campaign_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/campaign_feed_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nBgoogle/ads/googleads_v0/proto/services/campaign_feed_service.proto\x12 google.ads.googleads.v0.services\x1a;google/ads/googleads_v0/proto/resources/campaign_feed.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"/\n\x16GetCampaignFeedRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"~\n\x1aMutateCampaignFeedsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12K\n\noperations\x18\x02 \x03(\x0b\x32\x37.google.ads.googleads.v0.services.CampaignFeedOperation\"\xed\x01\n\x15\x43\x61mpaignFeedOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x41\n\x06\x63reate\x18\x01 \x01(\x0b\x32/.google.ads.googleads.v0.resources.CampaignFeedH\x00\x12\x41\n\x06update\x18\x02 \x01(\x0b\x32/.google.ads.googleads.v0.resources.CampaignFeedH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"j\n\x1bMutateCampaignFeedsResponse\x12K\n\x07results\x18\x02 \x03(\x0b\x32:.google.ads.googleads.v0.services.MutateCampaignFeedResult\"1\n\x18MutateCampaignFeedResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xa1\x03\n\x13\x43\x61mpaignFeedService\x12\xb5\x01\n\x0fGetCampaignFeed\x12\x38.google.ads.googleads.v0.services.GetCampaignFeedRequest\x1a/.google.ads.googleads.v0.resources.CampaignFeed\"7\x82\xd3\xe4\x93\x02\x31\x12//v0/{resource_name=customers/*/campaignFeeds/*}\x12\xd1\x01\n\x13MutateCampaignFeeds\x12<.google.ads.googleads.v0.services.MutateCampaignFeedsRequest\x1a=.google.ads.googleads.v0.services.MutateCampaignFeedsResponse\"=\x82\xd3\xe4\x93\x02\x37\"2/v0/customers/{customer_id=*}/campaignFeeds:mutate:\x01*B\xd8\x01\n$com.google.ads.googleads.v0.servicesB\x18\x43\x61mpaignFeedServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETCAMPAIGNFEEDREQUEST = _descriptor.Descriptor( + name='GetCampaignFeedRequest', + full_name='google.ads.googleads.v0.services.GetCampaignFeedRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetCampaignFeedRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=229, + serialized_end=276, +) + + +_MUTATECAMPAIGNFEEDSREQUEST = _descriptor.Descriptor( + name='MutateCampaignFeedsRequest', + full_name='google.ads.googleads.v0.services.MutateCampaignFeedsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateCampaignFeedsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateCampaignFeedsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=278, + serialized_end=404, +) + + +_CAMPAIGNFEEDOPERATION = _descriptor.Descriptor( + name='CampaignFeedOperation', + full_name='google.ads.googleads.v0.services.CampaignFeedOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.CampaignFeedOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.CampaignFeedOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.CampaignFeedOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.CampaignFeedOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.CampaignFeedOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=407, + serialized_end=644, +) + + +_MUTATECAMPAIGNFEEDSRESPONSE = _descriptor.Descriptor( + name='MutateCampaignFeedsResponse', + full_name='google.ads.googleads.v0.services.MutateCampaignFeedsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateCampaignFeedsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=646, + serialized_end=752, +) + + +_MUTATECAMPAIGNFEEDRESULT = _descriptor.Descriptor( + name='MutateCampaignFeedResult', + full_name='google.ads.googleads.v0.services.MutateCampaignFeedResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateCampaignFeedResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=754, + serialized_end=803, +) + +_MUTATECAMPAIGNFEEDSREQUEST.fields_by_name['operations'].message_type = _CAMPAIGNFEEDOPERATION +_CAMPAIGNFEEDOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_CAMPAIGNFEEDOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2._CAMPAIGNFEED +_CAMPAIGNFEEDOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2._CAMPAIGNFEED +_CAMPAIGNFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _CAMPAIGNFEEDOPERATION.fields_by_name['create']) +_CAMPAIGNFEEDOPERATION.fields_by_name['create'].containing_oneof = _CAMPAIGNFEEDOPERATION.oneofs_by_name['operation'] +_CAMPAIGNFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _CAMPAIGNFEEDOPERATION.fields_by_name['update']) +_CAMPAIGNFEEDOPERATION.fields_by_name['update'].containing_oneof = _CAMPAIGNFEEDOPERATION.oneofs_by_name['operation'] +_CAMPAIGNFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _CAMPAIGNFEEDOPERATION.fields_by_name['remove']) +_CAMPAIGNFEEDOPERATION.fields_by_name['remove'].containing_oneof = _CAMPAIGNFEEDOPERATION.oneofs_by_name['operation'] +_MUTATECAMPAIGNFEEDSRESPONSE.fields_by_name['results'].message_type = _MUTATECAMPAIGNFEEDRESULT +DESCRIPTOR.message_types_by_name['GetCampaignFeedRequest'] = _GETCAMPAIGNFEEDREQUEST +DESCRIPTOR.message_types_by_name['MutateCampaignFeedsRequest'] = _MUTATECAMPAIGNFEEDSREQUEST +DESCRIPTOR.message_types_by_name['CampaignFeedOperation'] = _CAMPAIGNFEEDOPERATION +DESCRIPTOR.message_types_by_name['MutateCampaignFeedsResponse'] = _MUTATECAMPAIGNFEEDSRESPONSE +DESCRIPTOR.message_types_by_name['MutateCampaignFeedResult'] = _MUTATECAMPAIGNFEEDRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetCampaignFeedRequest = _reflection.GeneratedProtocolMessageType('GetCampaignFeedRequest', (_message.Message,), dict( + DESCRIPTOR = _GETCAMPAIGNFEEDREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_feed_service_pb2' + , + __doc__ = """Request message for + [CampaignFeedService.GetCampaignFeed][google.ads.googleads.v0.services.CampaignFeedService.GetCampaignFeed]. + + + Attributes: + resource_name: + The resource name of the campaign feed to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetCampaignFeedRequest) + )) +_sym_db.RegisterMessage(GetCampaignFeedRequest) + +MutateCampaignFeedsRequest = _reflection.GeneratedProtocolMessageType('MutateCampaignFeedsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATECAMPAIGNFEEDSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_feed_service_pb2' + , + __doc__ = """Request message for + [CampaignFeedService.MutateCampaignFeeds][google.ads.googleads.v0.services.CampaignFeedService.MutateCampaignFeeds]. + + + Attributes: + customer_id: + The ID of the customer whose campaign feeds are being + modified. + operations: + The list of operations to perform on individual campaign + feeds. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCampaignFeedsRequest) + )) +_sym_db.RegisterMessage(MutateCampaignFeedsRequest) + +CampaignFeedOperation = _reflection.GeneratedProtocolMessageType('CampaignFeedOperation', (_message.Message,), dict( + DESCRIPTOR = _CAMPAIGNFEEDOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_feed_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on a campaign feed. + + + Attributes: + update_mask: + FieldMask that determines which resource fields are modified + in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + campaign feed. + update: + Update operation: The campaign feed is expected to have a + valid resource name. + remove: + Remove operation: A resource name for the removed campaign + feed is expected, in this format: ``customers/{customer_id}/c + ampaignFeeds/{campaign_id}_{feed_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.CampaignFeedOperation) + )) +_sym_db.RegisterMessage(CampaignFeedOperation) + +MutateCampaignFeedsResponse = _reflection.GeneratedProtocolMessageType('MutateCampaignFeedsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATECAMPAIGNFEEDSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_feed_service_pb2' + , + __doc__ = """Response message for a campaign feed mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCampaignFeedsResponse) + )) +_sym_db.RegisterMessage(MutateCampaignFeedsResponse) + +MutateCampaignFeedResult = _reflection.GeneratedProtocolMessageType('MutateCampaignFeedResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATECAMPAIGNFEEDRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_feed_service_pb2' + , + __doc__ = """The result for the campaign feed mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCampaignFeedResult) + )) +_sym_db.RegisterMessage(MutateCampaignFeedResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\030CampaignFeedServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_CAMPAIGNFEEDSERVICE = _descriptor.ServiceDescriptor( + name='CampaignFeedService', + full_name='google.ads.googleads.v0.services.CampaignFeedService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=806, + serialized_end=1223, + methods=[ + _descriptor.MethodDescriptor( + name='GetCampaignFeed', + full_name='google.ads.googleads.v0.services.CampaignFeedService.GetCampaignFeed', + index=0, + containing_service=None, + input_type=_GETCAMPAIGNFEEDREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2._CAMPAIGNFEED, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0021\022//v0/{resource_name=customers/*/campaignFeeds/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateCampaignFeeds', + full_name='google.ads.googleads.v0.services.CampaignFeedService.MutateCampaignFeeds', + index=1, + containing_service=None, + input_type=_MUTATECAMPAIGNFEEDSREQUEST, + output_type=_MUTATECAMPAIGNFEEDSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0027\"2/v0/customers/{customer_id=*}/campaignFeeds:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_CAMPAIGNFEEDSERVICE) + +DESCRIPTOR.services_by_name['CampaignFeedService'] = _CAMPAIGNFEEDSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/campaign_feed_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/campaign_feed_service_pb2_grpc.py new file mode 100644 index 000000000..4d289b660 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/campaign_feed_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import campaign_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2 +from google.ads.google_ads.v0.proto.services import campaign_feed_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__feed__service__pb2 + + +class CampaignFeedServiceStub(object): + """Service to manage campaign feeds. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetCampaignFeed = channel.unary_unary( + '/google.ads.googleads.v0.services.CampaignFeedService/GetCampaignFeed', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__feed__service__pb2.GetCampaignFeedRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2.CampaignFeed.FromString, + ) + self.MutateCampaignFeeds = channel.unary_unary( + '/google.ads.googleads.v0.services.CampaignFeedService/MutateCampaignFeeds', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__feed__service__pb2.MutateCampaignFeedsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__feed__service__pb2.MutateCampaignFeedsResponse.FromString, + ) + + +class CampaignFeedServiceServicer(object): + """Service to manage campaign feeds. + """ + + def GetCampaignFeed(self, request, context): + """Returns the requested campaign feed in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateCampaignFeeds(self, request, context): + """Creates, updates, or removes campaign feeds. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_CampaignFeedServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetCampaignFeed': grpc.unary_unary_rpc_method_handler( + servicer.GetCampaignFeed, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__feed__service__pb2.GetCampaignFeedRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2.CampaignFeed.SerializeToString, + ), + 'MutateCampaignFeeds': grpc.unary_unary_rpc_method_handler( + servicer.MutateCampaignFeeds, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__feed__service__pb2.MutateCampaignFeedsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__feed__service__pb2.MutateCampaignFeedsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.CampaignFeedService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/campaign_group_service_pb2.py b/google/ads/google_ads/v0/proto/services/campaign_group_service_pb2.py index 485035236..05a4c5acd 100644 --- a/google/ads/google_ads/v0/proto/services/campaign_group_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/campaign_group_service_pb2.py @@ -237,7 +237,7 @@ GetCampaignGroupRequest = _reflection.GeneratedProtocolMessageType('GetCampaignGroupRequest', (_message.Message,), dict( DESCRIPTOR = _GETCAMPAIGNGROUPREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_group_service_pb2' , __doc__ = """Request message for [CampaignGroupService.GetCampaignGroup][google.ads.googleads.v0.services.CampaignGroupService.GetCampaignGroup]. @@ -253,7 +253,7 @@ MutateCampaignGroupsRequest = _reflection.GeneratedProtocolMessageType('MutateCampaignGroupsRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNGROUPSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_group_service_pb2' , __doc__ = """Request message for [CampaignGroupService.MutateCampaignGroups][google.ads.googleads.v0.services.CampaignGroupService.MutateCampaignGroups]. @@ -273,7 +273,7 @@ CampaignGroupOperation = _reflection.GeneratedProtocolMessageType('CampaignGroupOperation', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNGROUPOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_group_service_pb2' , __doc__ = """A single operation (create, update, remove) on a campaign group. @@ -301,7 +301,7 @@ MutateCampaignGroupsResponse = _reflection.GeneratedProtocolMessageType('MutateCampaignGroupsResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNGROUPSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_group_service_pb2' , __doc__ = """Response message for campaign group mutate. @@ -316,7 +316,7 @@ MutateCampaignGroupResult = _reflection.GeneratedProtocolMessageType('MutateCampaignGroupResult', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNGROUPRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_group_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_group_service_pb2' , __doc__ = """The result for the campaign group mutate. diff --git a/google/ads/google_ads/v0/proto/services/campaign_service_pb2.py b/google/ads/google_ads/v0/proto/services/campaign_service_pb2.py index 4f1013572..69c0cf61f 100644 --- a/google/ads/google_ads/v0/proto/services/campaign_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/campaign_service_pb2.py @@ -237,7 +237,7 @@ GetCampaignRequest = _reflection.GeneratedProtocolMessageType('GetCampaignRequest', (_message.Message,), dict( DESCRIPTOR = _GETCAMPAIGNREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_service_pb2' , __doc__ = """Request message for [CampaignService.GetCampaign][google.ads.googleads.v0.services.CampaignService.GetCampaign]. @@ -253,7 +253,7 @@ MutateCampaignsRequest = _reflection.GeneratedProtocolMessageType('MutateCampaignsRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_service_pb2' , __doc__ = """Request message for [CampaignService.MutateCampaigns][google.ads.googleads.v0.services.CampaignService.MutateCampaigns]. @@ -271,7 +271,7 @@ CampaignOperation = _reflection.GeneratedProtocolMessageType('CampaignOperation', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_service_pb2' , __doc__ = """A single operation (create, update, remove) on a campaign. @@ -299,7 +299,7 @@ MutateCampaignsResponse = _reflection.GeneratedProtocolMessageType('MutateCampaignsResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_service_pb2' , __doc__ = """Response message for campaign mutate. @@ -314,7 +314,7 @@ MutateCampaignResult = _reflection.GeneratedProtocolMessageType('MutateCampaignResult', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_service_pb2' , __doc__ = """The result for the campaign mutate. diff --git a/google/ads/google_ads/v0/proto/services/campaign_shared_set_service_pb2.py b/google/ads/google_ads/v0/proto/services/campaign_shared_set_service_pb2.py index ace47df02..ee5145814 100644 --- a/google/ads/google_ads/v0/proto/services/campaign_shared_set_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/campaign_shared_set_service_pb2.py @@ -217,7 +217,7 @@ GetCampaignSharedSetRequest = _reflection.GeneratedProtocolMessageType('GetCampaignSharedSetRequest', (_message.Message,), dict( DESCRIPTOR = _GETCAMPAIGNSHAREDSETREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_shared_set_service_pb2' , __doc__ = """Request message for [CampaignSharedSetService.GetCampaignSharedSet][google.ads.googleads.v0.services.CampaignSharedSetService.GetCampaignSharedSet]. @@ -233,7 +233,7 @@ MutateCampaignSharedSetsRequest = _reflection.GeneratedProtocolMessageType('MutateCampaignSharedSetsRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNSHAREDSETSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_shared_set_service_pb2' , __doc__ = """Request message for [CampaignSharedSetService.MutateCampaignSharedSets][google.ads.googleads.v0.services.CampaignSharedSetService.MutateCampaignSharedSets]. @@ -253,7 +253,7 @@ CampaignSharedSetOperation = _reflection.GeneratedProtocolMessageType('CampaignSharedSetOperation', (_message.Message,), dict( DESCRIPTOR = _CAMPAIGNSHAREDSETOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_shared_set_service_pb2' , __doc__ = """A single operation (create, remove) on an campaign shared set. @@ -275,7 +275,7 @@ MutateCampaignSharedSetsResponse = _reflection.GeneratedProtocolMessageType('MutateCampaignSharedSetsResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNSHAREDSETSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_shared_set_service_pb2' , __doc__ = """Response message for a campaign shared set mutate. @@ -290,7 +290,7 @@ MutateCampaignSharedSetResult = _reflection.GeneratedProtocolMessageType('MutateCampaignSharedSetResult', (_message.Message,), dict( DESCRIPTOR = _MUTATECAMPAIGNSHAREDSETRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.campaign_shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.campaign_shared_set_service_pb2' , __doc__ = """The result for the campaign shared set mutate. diff --git a/google/ads/google_ads/v0/proto/services/carrier_constant_service_pb2.py b/google/ads/google_ads/v0/proto/services/carrier_constant_service_pb2.py new file mode 100644 index 000000000..0f076afb8 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/carrier_constant_service_pb2.py @@ -0,0 +1,107 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/carrier_constant_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import carrier_constant_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/carrier_constant_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nEgoogle/ads/googleads_v0/proto/services/carrier_constant_service.proto\x12 google.ads.googleads.v0.services\x1a>google/ads/googleads_v0/proto/resources/carrier_constant.proto\x1a\x1cgoogle/api/annotations.proto\"2\n\x19GetCarrierConstantRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xd0\x01\n\x16\x43\x61rrierConstantService\x12\xb5\x01\n\x12GetCarrierConstant\x12;.google.ads.googleads.v0.services.GetCarrierConstantRequest\x1a\x32.google.ads.googleads.v0.resources.CarrierConstant\".\x82\xd3\xe4\x93\x02(\x12&/v0/{resource_name=carrierConstants/*}B\xdb\x01\n$com.google.ads.googleads.v0.servicesB\x1b\x43\x61rrierConstantServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_GETCARRIERCONSTANTREQUEST = _descriptor.Descriptor( + name='GetCarrierConstantRequest', + full_name='google.ads.googleads.v0.services.GetCarrierConstantRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetCarrierConstantRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=201, + serialized_end=251, +) + +DESCRIPTOR.message_types_by_name['GetCarrierConstantRequest'] = _GETCARRIERCONSTANTREQUEST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetCarrierConstantRequest = _reflection.GeneratedProtocolMessageType('GetCarrierConstantRequest', (_message.Message,), dict( + DESCRIPTOR = _GETCARRIERCONSTANTREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.carrier_constant_service_pb2' + , + __doc__ = """Request message for + [CarrierConstantService.GetCarrierConstant][google.ads.googleads.v0.services.CarrierConstantService.GetCarrierConstant]. + + + Attributes: + resource_name: + Resource name of the carrier constant to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetCarrierConstantRequest) + )) +_sym_db.RegisterMessage(GetCarrierConstantRequest) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\033CarrierConstantServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_CARRIERCONSTANTSERVICE = _descriptor.ServiceDescriptor( + name='CarrierConstantService', + full_name='google.ads.googleads.v0.services.CarrierConstantService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=254, + serialized_end=462, + methods=[ + _descriptor.MethodDescriptor( + name='GetCarrierConstant', + full_name='google.ads.googleads.v0.services.CarrierConstantService.GetCarrierConstant', + index=0, + containing_service=None, + input_type=_GETCARRIERCONSTANTREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2._CARRIERCONSTANT, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002(\022&/v0/{resource_name=carrierConstants/*}')), + ), +]) +_sym_db.RegisterServiceDescriptor(_CARRIERCONSTANTSERVICE) + +DESCRIPTOR.services_by_name['CarrierConstantService'] = _CARRIERCONSTANTSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/carrier_constant_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/carrier_constant_service_pb2_grpc.py new file mode 100644 index 000000000..b7aba33b5 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/carrier_constant_service_pb2_grpc.py @@ -0,0 +1,47 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import carrier_constant_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2 +from google.ads.google_ads.v0.proto.services import carrier_constant_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_carrier__constant__service__pb2 + + +class CarrierConstantServiceStub(object): + """Service to fetch carrier constants. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetCarrierConstant = channel.unary_unary( + '/google.ads.googleads.v0.services.CarrierConstantService/GetCarrierConstant', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_carrier__constant__service__pb2.GetCarrierConstantRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2.CarrierConstant.FromString, + ) + + +class CarrierConstantServiceServicer(object): + """Service to fetch carrier constants. + """ + + def GetCarrierConstant(self, request, context): + """Returns the requested carrier constant in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_CarrierConstantServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetCarrierConstant': grpc.unary_unary_rpc_method_handler( + servicer.GetCarrierConstant, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_carrier__constant__service__pb2.GetCarrierConstantRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2.CarrierConstant.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.CarrierConstantService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/change_status_service_pb2.py b/google/ads/google_ads/v0/proto/services/change_status_service_pb2.py index ecd0ef430..06ffdbe60 100644 --- a/google/ads/google_ads/v0/proto/services/change_status_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/change_status_service_pb2.py @@ -63,7 +63,7 @@ GetChangeStatusRequest = _reflection.GeneratedProtocolMessageType('GetChangeStatusRequest', (_message.Message,), dict( DESCRIPTOR = _GETCHANGESTATUSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.change_status_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.change_status_service_pb2' , __doc__ = """Request message for '[ChangeStatusService.GetChangeStatus][google.ads.googleads.v0.services.ChangeStatusService.GetChangeStatus]'. diff --git a/google/ads/google_ads/v0/proto/services/conversion_action_service_pb2.py b/google/ads/google_ads/v0/proto/services/conversion_action_service_pb2.py index 91f624b1f..ff7ce2cbe 100644 --- a/google/ads/google_ads/v0/proto/services/conversion_action_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/conversion_action_service_pb2.py @@ -237,7 +237,7 @@ GetConversionActionRequest = _reflection.GeneratedProtocolMessageType('GetConversionActionRequest', (_message.Message,), dict( DESCRIPTOR = _GETCONVERSIONACTIONREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.conversion_action_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.conversion_action_service_pb2' , __doc__ = """Request message for [ConversionActionService.GetConversionAction]. @@ -252,7 +252,7 @@ MutateConversionActionsRequest = _reflection.GeneratedProtocolMessageType('MutateConversionActionsRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATECONVERSIONACTIONSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.conversion_action_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.conversion_action_service_pb2' , __doc__ = """Request message for [ConversionActionService.MutateConversionActions]. @@ -271,7 +271,7 @@ ConversionActionOperation = _reflection.GeneratedProtocolMessageType('ConversionActionOperation', (_message.Message,), dict( DESCRIPTOR = _CONVERSIONACTIONOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.conversion_action_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.conversion_action_service_pb2' , __doc__ = """A single operation (create, update, remove) on a conversion action. @@ -299,7 +299,7 @@ MutateConversionActionsResponse = _reflection.GeneratedProtocolMessageType('MutateConversionActionsResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATECONVERSIONACTIONSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.conversion_action_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.conversion_action_service_pb2' , __doc__ = """Response message for conversion action mutate. @@ -314,7 +314,7 @@ MutateConversionActionResult = _reflection.GeneratedProtocolMessageType('MutateConversionActionResult', (_message.Message,), dict( DESCRIPTOR = _MUTATECONVERSIONACTIONRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.conversion_action_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.conversion_action_service_pb2' , __doc__ = """The result for the conversion action mutate. diff --git a/google/ads/google_ads/v0/proto/services/customer_client_link_service_pb2.py b/google/ads/google_ads/v0/proto/services/customer_client_link_service_pb2.py index 9a2b02328..25ae41ef7 100644 --- a/google/ads/google_ads/v0/proto/services/customer_client_link_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/customer_client_link_service_pb2.py @@ -63,7 +63,7 @@ GetCustomerClientLinkRequest = _reflection.GeneratedProtocolMessageType('GetCustomerClientLinkRequest', (_message.Message,), dict( DESCRIPTOR = _GETCUSTOMERCLIENTLINKREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.customer_client_link_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.customer_client_link_service_pb2' , __doc__ = """Request message for [CustomerClientLinkService.GetCustomerClientLink][google.ads.googleads.v0.services.CustomerClientLinkService.GetCustomerClientLink]. diff --git a/google/ads/google_ads/v0/proto/services/customer_client_service_pb2.py b/google/ads/google_ads/v0/proto/services/customer_client_service_pb2.py new file mode 100644 index 000000000..2fa4af3a1 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/customer_client_service_pb2.py @@ -0,0 +1,107 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/customer_client_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import customer_client_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/customer_client_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nDgoogle/ads/googleads_v0/proto/services/customer_client_service.proto\x12 google.ads.googleads.v0.services\x1a=google/ads/googleads_v0/proto/resources/customer_client.proto\x1a\x1cgoogle/api/annotations.proto\"1\n\x18GetCustomerClientRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xd7\x01\n\x15\x43ustomerClientService\x12\xbd\x01\n\x11GetCustomerClient\x12:.google.ads.googleads.v0.services.GetCustomerClientRequest\x1a\x31.google.ads.googleads.v0.resources.CustomerClient\"9\x82\xd3\xe4\x93\x02\x33\x12\x31/v0/{resource_name=customers/*/customerClients/*}B\xda\x01\n$com.google.ads.googleads.v0.servicesB\x1a\x43ustomerClientServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_GETCUSTOMERCLIENTREQUEST = _descriptor.Descriptor( + name='GetCustomerClientRequest', + full_name='google.ads.googleads.v0.services.GetCustomerClientRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetCustomerClientRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=199, + serialized_end=248, +) + +DESCRIPTOR.message_types_by_name['GetCustomerClientRequest'] = _GETCUSTOMERCLIENTREQUEST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetCustomerClientRequest = _reflection.GeneratedProtocolMessageType('GetCustomerClientRequest', (_message.Message,), dict( + DESCRIPTOR = _GETCUSTOMERCLIENTREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_client_service_pb2' + , + __doc__ = """Request message for + [CustomerClientService.GetCustomerClient][google.ads.googleads.v0.services.CustomerClientService.GetCustomerClient]. + + + Attributes: + resource_name: + The resource name of the customer client to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetCustomerClientRequest) + )) +_sym_db.RegisterMessage(GetCustomerClientRequest) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\032CustomerClientServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_CUSTOMERCLIENTSERVICE = _descriptor.ServiceDescriptor( + name='CustomerClientService', + full_name='google.ads.googleads.v0.services.CustomerClientService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=251, + serialized_end=466, + methods=[ + _descriptor.MethodDescriptor( + name='GetCustomerClient', + full_name='google.ads.googleads.v0.services.CustomerClientService.GetCustomerClient', + index=0, + containing_service=None, + input_type=_GETCUSTOMERCLIENTREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2._CUSTOMERCLIENT, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0023\0221/v0/{resource_name=customers/*/customerClients/*}')), + ), +]) +_sym_db.RegisterServiceDescriptor(_CUSTOMERCLIENTSERVICE) + +DESCRIPTOR.services_by_name['CustomerClientService'] = _CUSTOMERCLIENTSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/customer_client_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/customer_client_service_pb2_grpc.py new file mode 100644 index 000000000..adb1f867c --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/customer_client_service_pb2_grpc.py @@ -0,0 +1,47 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import customer_client_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2 +from google.ads.google_ads.v0.proto.services import customer_client_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__client__service__pb2 + + +class CustomerClientServiceStub(object): + """Service to manage customer clients in a manager hierarchy. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetCustomerClient = channel.unary_unary( + '/google.ads.googleads.v0.services.CustomerClientService/GetCustomerClient', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__client__service__pb2.GetCustomerClientRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2.CustomerClient.FromString, + ) + + +class CustomerClientServiceServicer(object): + """Service to manage customer clients in a manager hierarchy. + """ + + def GetCustomerClient(self, request, context): + """Returns the requested customer client in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_CustomerClientServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetCustomerClient': grpc.unary_unary_rpc_method_handler( + servicer.GetCustomerClient, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__client__service__pb2.GetCustomerClientRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2.CustomerClient.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.CustomerClientService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/customer_feed_service_pb2.py b/google/ads/google_ads/v0/proto/services/customer_feed_service_pb2.py new file mode 100644 index 000000000..19f3cd16d --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/customer_feed_service_pb2.py @@ -0,0 +1,368 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/customer_feed_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import customer_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/customer_feed_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nBgoogle/ads/googleads_v0/proto/services/customer_feed_service.proto\x12 google.ads.googleads.v0.services\x1a;google/ads/googleads_v0/proto/resources/customer_feed.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"/\n\x16GetCustomerFeedRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"~\n\x1aMutateCustomerFeedsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12K\n\noperations\x18\x02 \x03(\x0b\x32\x37.google.ads.googleads.v0.services.CustomerFeedOperation\"\xed\x01\n\x15\x43ustomerFeedOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x41\n\x06\x63reate\x18\x01 \x01(\x0b\x32/.google.ads.googleads.v0.resources.CustomerFeedH\x00\x12\x41\n\x06update\x18\x02 \x01(\x0b\x32/.google.ads.googleads.v0.resources.CustomerFeedH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"j\n\x1bMutateCustomerFeedsResponse\x12K\n\x07results\x18\x02 \x03(\x0b\x32:.google.ads.googleads.v0.services.MutateCustomerFeedResult\"1\n\x18MutateCustomerFeedResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xa1\x03\n\x13\x43ustomerFeedService\x12\xb5\x01\n\x0fGetCustomerFeed\x12\x38.google.ads.googleads.v0.services.GetCustomerFeedRequest\x1a/.google.ads.googleads.v0.resources.CustomerFeed\"7\x82\xd3\xe4\x93\x02\x31\x12//v0/{resource_name=customers/*/customerFeeds/*}\x12\xd1\x01\n\x13MutateCustomerFeeds\x12<.google.ads.googleads.v0.services.MutateCustomerFeedsRequest\x1a=.google.ads.googleads.v0.services.MutateCustomerFeedsResponse\"=\x82\xd3\xe4\x93\x02\x37\"2/v0/customers/{customer_id=*}/customerFeeds:mutate:\x01*B\xd8\x01\n$com.google.ads.googleads.v0.servicesB\x18\x43ustomerFeedServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETCUSTOMERFEEDREQUEST = _descriptor.Descriptor( + name='GetCustomerFeedRequest', + full_name='google.ads.googleads.v0.services.GetCustomerFeedRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetCustomerFeedRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=229, + serialized_end=276, +) + + +_MUTATECUSTOMERFEEDSREQUEST = _descriptor.Descriptor( + name='MutateCustomerFeedsRequest', + full_name='google.ads.googleads.v0.services.MutateCustomerFeedsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateCustomerFeedsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateCustomerFeedsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=278, + serialized_end=404, +) + + +_CUSTOMERFEEDOPERATION = _descriptor.Descriptor( + name='CustomerFeedOperation', + full_name='google.ads.googleads.v0.services.CustomerFeedOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.CustomerFeedOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.CustomerFeedOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.CustomerFeedOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.CustomerFeedOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.CustomerFeedOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=407, + serialized_end=644, +) + + +_MUTATECUSTOMERFEEDSRESPONSE = _descriptor.Descriptor( + name='MutateCustomerFeedsResponse', + full_name='google.ads.googleads.v0.services.MutateCustomerFeedsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateCustomerFeedsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=646, + serialized_end=752, +) + + +_MUTATECUSTOMERFEEDRESULT = _descriptor.Descriptor( + name='MutateCustomerFeedResult', + full_name='google.ads.googleads.v0.services.MutateCustomerFeedResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateCustomerFeedResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=754, + serialized_end=803, +) + +_MUTATECUSTOMERFEEDSREQUEST.fields_by_name['operations'].message_type = _CUSTOMERFEEDOPERATION +_CUSTOMERFEEDOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_CUSTOMERFEEDOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2._CUSTOMERFEED +_CUSTOMERFEEDOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2._CUSTOMERFEED +_CUSTOMERFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _CUSTOMERFEEDOPERATION.fields_by_name['create']) +_CUSTOMERFEEDOPERATION.fields_by_name['create'].containing_oneof = _CUSTOMERFEEDOPERATION.oneofs_by_name['operation'] +_CUSTOMERFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _CUSTOMERFEEDOPERATION.fields_by_name['update']) +_CUSTOMERFEEDOPERATION.fields_by_name['update'].containing_oneof = _CUSTOMERFEEDOPERATION.oneofs_by_name['operation'] +_CUSTOMERFEEDOPERATION.oneofs_by_name['operation'].fields.append( + _CUSTOMERFEEDOPERATION.fields_by_name['remove']) +_CUSTOMERFEEDOPERATION.fields_by_name['remove'].containing_oneof = _CUSTOMERFEEDOPERATION.oneofs_by_name['operation'] +_MUTATECUSTOMERFEEDSRESPONSE.fields_by_name['results'].message_type = _MUTATECUSTOMERFEEDRESULT +DESCRIPTOR.message_types_by_name['GetCustomerFeedRequest'] = _GETCUSTOMERFEEDREQUEST +DESCRIPTOR.message_types_by_name['MutateCustomerFeedsRequest'] = _MUTATECUSTOMERFEEDSREQUEST +DESCRIPTOR.message_types_by_name['CustomerFeedOperation'] = _CUSTOMERFEEDOPERATION +DESCRIPTOR.message_types_by_name['MutateCustomerFeedsResponse'] = _MUTATECUSTOMERFEEDSRESPONSE +DESCRIPTOR.message_types_by_name['MutateCustomerFeedResult'] = _MUTATECUSTOMERFEEDRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetCustomerFeedRequest = _reflection.GeneratedProtocolMessageType('GetCustomerFeedRequest', (_message.Message,), dict( + DESCRIPTOR = _GETCUSTOMERFEEDREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_feed_service_pb2' + , + __doc__ = """Request message for + [CustomerFeedService.GetCustomerFeed][google.ads.googleads.v0.services.CustomerFeedService.GetCustomerFeed]. + + + Attributes: + resource_name: + The resource name of the customer feed to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetCustomerFeedRequest) + )) +_sym_db.RegisterMessage(GetCustomerFeedRequest) + +MutateCustomerFeedsRequest = _reflection.GeneratedProtocolMessageType('MutateCustomerFeedsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATECUSTOMERFEEDSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_feed_service_pb2' + , + __doc__ = """Request message for + [CustomerFeedService.MutateCustomerFeeds][google.ads.googleads.v0.services.CustomerFeedService.MutateCustomerFeeds]. + + + Attributes: + customer_id: + The ID of the customer whose customer feeds are being + modified. + operations: + The list of operations to perform on individual customer + feeds. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCustomerFeedsRequest) + )) +_sym_db.RegisterMessage(MutateCustomerFeedsRequest) + +CustomerFeedOperation = _reflection.GeneratedProtocolMessageType('CustomerFeedOperation', (_message.Message,), dict( + DESCRIPTOR = _CUSTOMERFEEDOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_feed_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on a customer feed. + + + Attributes: + update_mask: + FieldMask that determines which resource fields are modified + in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + customer feed. + update: + Update operation: The customer feed is expected to have a + valid resource name. + remove: + Remove operation: A resource name for the removed customer + feed is expected, in this format: + ``customers/{customer_id}/customerFeeds/{feed_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.CustomerFeedOperation) + )) +_sym_db.RegisterMessage(CustomerFeedOperation) + +MutateCustomerFeedsResponse = _reflection.GeneratedProtocolMessageType('MutateCustomerFeedsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATECUSTOMERFEEDSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_feed_service_pb2' + , + __doc__ = """Response message for a customer feed mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCustomerFeedsResponse) + )) +_sym_db.RegisterMessage(MutateCustomerFeedsResponse) + +MutateCustomerFeedResult = _reflection.GeneratedProtocolMessageType('MutateCustomerFeedResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATECUSTOMERFEEDRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_feed_service_pb2' + , + __doc__ = """The result for the customer feed mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCustomerFeedResult) + )) +_sym_db.RegisterMessage(MutateCustomerFeedResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\030CustomerFeedServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_CUSTOMERFEEDSERVICE = _descriptor.ServiceDescriptor( + name='CustomerFeedService', + full_name='google.ads.googleads.v0.services.CustomerFeedService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=806, + serialized_end=1223, + methods=[ + _descriptor.MethodDescriptor( + name='GetCustomerFeed', + full_name='google.ads.googleads.v0.services.CustomerFeedService.GetCustomerFeed', + index=0, + containing_service=None, + input_type=_GETCUSTOMERFEEDREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2._CUSTOMERFEED, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0021\022//v0/{resource_name=customers/*/customerFeeds/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateCustomerFeeds', + full_name='google.ads.googleads.v0.services.CustomerFeedService.MutateCustomerFeeds', + index=1, + containing_service=None, + input_type=_MUTATECUSTOMERFEEDSREQUEST, + output_type=_MUTATECUSTOMERFEEDSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0027\"2/v0/customers/{customer_id=*}/customerFeeds:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_CUSTOMERFEEDSERVICE) + +DESCRIPTOR.services_by_name['CustomerFeedService'] = _CUSTOMERFEEDSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/customer_feed_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/customer_feed_service_pb2_grpc.py new file mode 100644 index 000000000..1987d35fc --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/customer_feed_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import customer_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2 +from google.ads.google_ads.v0.proto.services import customer_feed_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__feed__service__pb2 + + +class CustomerFeedServiceStub(object): + """Service to manage customer feeds. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetCustomerFeed = channel.unary_unary( + '/google.ads.googleads.v0.services.CustomerFeedService/GetCustomerFeed', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__feed__service__pb2.GetCustomerFeedRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2.CustomerFeed.FromString, + ) + self.MutateCustomerFeeds = channel.unary_unary( + '/google.ads.googleads.v0.services.CustomerFeedService/MutateCustomerFeeds', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__feed__service__pb2.MutateCustomerFeedsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__feed__service__pb2.MutateCustomerFeedsResponse.FromString, + ) + + +class CustomerFeedServiceServicer(object): + """Service to manage customer feeds. + """ + + def GetCustomerFeed(self, request, context): + """Returns the requested customer feed in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateCustomerFeeds(self, request, context): + """Creates, updates, or removes customer feeds. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_CustomerFeedServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetCustomerFeed': grpc.unary_unary_rpc_method_handler( + servicer.GetCustomerFeed, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__feed__service__pb2.GetCustomerFeedRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2.CustomerFeed.SerializeToString, + ), + 'MutateCustomerFeeds': grpc.unary_unary_rpc_method_handler( + servicer.MutateCustomerFeeds, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__feed__service__pb2.MutateCustomerFeedsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__feed__service__pb2.MutateCustomerFeedsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.CustomerFeedService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/customer_manager_link_service_pb2.py b/google/ads/google_ads/v0/proto/services/customer_manager_link_service_pb2.py index 9b1326e85..e956376a7 100644 --- a/google/ads/google_ads/v0/proto/services/customer_manager_link_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/customer_manager_link_service_pb2.py @@ -63,7 +63,7 @@ GetCustomerManagerLinkRequest = _reflection.GeneratedProtocolMessageType('GetCustomerManagerLinkRequest', (_message.Message,), dict( DESCRIPTOR = _GETCUSTOMERMANAGERLINKREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.customer_manager_link_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.customer_manager_link_service_pb2' , __doc__ = """Request message for [CustomerManagerLinkService.GetCustomerManagerLink][google.ads.googleads.v0.services.CustomerManagerLinkService.GetCustomerManagerLink]. diff --git a/google/ads/google_ads/v0/proto/services/customer_service_pb2.py b/google/ads/google_ads/v0/proto/services/customer_service_pb2.py index 08fd8caec..6ffab7c85 100644 --- a/google/ads/google_ads/v0/proto/services/customer_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/customer_service_pb2.py @@ -15,6 +15,7 @@ from google.ads.google_ads.v0.proto.resources import customer_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2 from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 @@ -22,9 +23,9 @@ name='google/ads/googleads_v0/proto/services/customer_service.proto', package='google.ads.googleads.v0.services', syntax='proto3', - serialized_pb=_b('\n=google/ads/googleads_v0/proto/services/customer_service.proto\x12 google.ads.googleads.v0.services\x1a\x36google/ads/googleads_v0/proto/resources/customer.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1egoogle/protobuf/wrappers.proto\"+\n\x12GetCustomerRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\" \n\x1eListAccessibleCustomersRequest\"9\n\x1fListAccessibleCustomersResponse\x12\x16\n\x0eresource_names\x18\x01 \x03(\t2\xfd\x02\n\x0f\x43ustomerService\x12\x99\x01\n\x0bGetCustomer\x12\x34.google.ads.googleads.v0.services.GetCustomerRequest\x1a+.google.ads.googleads.v0.resources.Customer\"\'\x82\xd3\xe4\x93\x02!\x12\x1f/v0/{resource_name=customers/*}\x12\xcd\x01\n\x17ListAccessibleCustomers\x12@.google.ads.googleads.v0.services.ListAccessibleCustomersRequest\x1a\x41.google.ads.googleads.v0.services.ListAccessibleCustomersResponse\"-\x82\xd3\xe4\x93\x02\'\x12%/v0/customers:listAccessibleCustomersB\xd4\x01\n$com.google.ads.googleads.v0.servicesB\x14\x43ustomerServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + serialized_pb=_b('\n=google/ads/googleads_v0/proto/services/customer_service.proto\x12 google.ads.googleads.v0.services\x1a\x36google/ads/googleads_v0/proto/resources/customer.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a\x1egoogle/protobuf/wrappers.proto\"+\n\x12GetCustomerRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"t\n\x15MutateCustomerRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12\x46\n\toperation\x18\x04 \x01(\x0b\x32\x33.google.ads.googleads.v0.services.CustomerOperation\"x\n\x1b\x43reateCustomerClientRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12\x44\n\x0f\x63ustomer_client\x18\x02 \x01(\x0b\x32+.google.ads.googleads.v0.resources.Customer\"\x81\x01\n\x11\x43ustomerOperation\x12;\n\x06update\x18\x01 \x01(\x0b\x32+.google.ads.googleads.v0.resources.Customer\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"5\n\x1c\x43reateCustomerClientResponse\x12\x15\n\rresource_name\x18\x02 \x01(\t\"`\n\x16MutateCustomerResponse\x12\x46\n\x06result\x18\x02 \x01(\x0b\x32\x36.google.ads.googleads.v0.services.MutateCustomerResult\"-\n\x14MutateCustomerResult\x12\x15\n\rresource_name\x18\x01 \x01(\t\" \n\x1eListAccessibleCustomersRequest\"9\n\x1fListAccessibleCustomersResponse\x12\x16\n\x0eresource_names\x18\x01 \x03(\t2\x8b\x06\n\x0f\x43ustomerService\x12\x99\x01\n\x0bGetCustomer\x12\x34.google.ads.googleads.v0.services.GetCustomerRequest\x1a+.google.ads.googleads.v0.resources.Customer\"\'\x82\xd3\xe4\x93\x02!\x12\x1f/v0/{resource_name=customers/*}\x12\xb4\x01\n\x0eMutateCustomer\x12\x37.google.ads.googleads.v0.services.MutateCustomerRequest\x1a\x38.google.ads.googleads.v0.services.MutateCustomerResponse\"/\x82\xd3\xe4\x93\x02)\"$/v0/customers/{customer_id=*}:mutate:\x01*\x12\xcd\x01\n\x17ListAccessibleCustomers\x12@.google.ads.googleads.v0.services.ListAccessibleCustomersRequest\x1a\x41.google.ads.googleads.v0.services.ListAccessibleCustomersResponse\"-\x82\xd3\xe4\x93\x02\'\x12%/v0/customers:listAccessibleCustomers\x12\xd4\x01\n\x14\x43reateCustomerClient\x12=.google.ads.googleads.v0.services.CreateCustomerClientRequest\x1a>.google.ads.googleads.v0.services.CreateCustomerClientResponse\"=\x82\xd3\xe4\x93\x02\x37\"2/v0/customers/{customer_id=*}:createCustomerClient:\x01*B\xd4\x01\n$com.google.ads.googleads.v0.servicesB\x14\x43ustomerServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') , - dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -55,8 +56,215 @@ extension_ranges=[], oneofs=[ ], - serialized_start=217, - serialized_end=260, + serialized_start=251, + serialized_end=294, +) + + +_MUTATECUSTOMERREQUEST = _descriptor.Descriptor( + name='MutateCustomerRequest', + full_name='google.ads.googleads.v0.services.MutateCustomerRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateCustomerRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.MutateCustomerRequest.operation', index=1, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=296, + serialized_end=412, +) + + +_CREATECUSTOMERCLIENTREQUEST = _descriptor.Descriptor( + name='CreateCustomerClientRequest', + full_name='google.ads.googleads.v0.services.CreateCustomerClientRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.CreateCustomerClientRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='customer_client', full_name='google.ads.googleads.v0.services.CreateCustomerClientRequest.customer_client', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=414, + serialized_end=534, +) + + +_CUSTOMEROPERATION = _descriptor.Descriptor( + name='CustomerOperation', + full_name='google.ads.googleads.v0.services.CustomerOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.CustomerOperation.update', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.CustomerOperation.update_mask', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=537, + serialized_end=666, +) + + +_CREATECUSTOMERCLIENTRESPONSE = _descriptor.Descriptor( + name='CreateCustomerClientResponse', + full_name='google.ads.googleads.v0.services.CreateCustomerClientResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.CreateCustomerClientResponse.resource_name', index=0, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=668, + serialized_end=721, +) + + +_MUTATECUSTOMERRESPONSE = _descriptor.Descriptor( + name='MutateCustomerResponse', + full_name='google.ads.googleads.v0.services.MutateCustomerResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='result', full_name='google.ads.googleads.v0.services.MutateCustomerResponse.result', index=0, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=723, + serialized_end=819, +) + + +_MUTATECUSTOMERRESULT = _descriptor.Descriptor( + name='MutateCustomerResult', + full_name='google.ads.googleads.v0.services.MutateCustomerResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateCustomerResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=821, + serialized_end=866, ) @@ -79,8 +287,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=262, - serialized_end=294, + serialized_start=868, + serialized_end=900, ) @@ -110,18 +318,29 @@ extension_ranges=[], oneofs=[ ], - serialized_start=296, - serialized_end=353, + serialized_start=902, + serialized_end=959, ) +_MUTATECUSTOMERREQUEST.fields_by_name['operation'].message_type = _CUSTOMEROPERATION +_CREATECUSTOMERCLIENTREQUEST.fields_by_name['customer_client'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2._CUSTOMER +_CUSTOMEROPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2._CUSTOMER +_CUSTOMEROPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_MUTATECUSTOMERRESPONSE.fields_by_name['result'].message_type = _MUTATECUSTOMERRESULT DESCRIPTOR.message_types_by_name['GetCustomerRequest'] = _GETCUSTOMERREQUEST +DESCRIPTOR.message_types_by_name['MutateCustomerRequest'] = _MUTATECUSTOMERREQUEST +DESCRIPTOR.message_types_by_name['CreateCustomerClientRequest'] = _CREATECUSTOMERCLIENTREQUEST +DESCRIPTOR.message_types_by_name['CustomerOperation'] = _CUSTOMEROPERATION +DESCRIPTOR.message_types_by_name['CreateCustomerClientResponse'] = _CREATECUSTOMERCLIENTRESPONSE +DESCRIPTOR.message_types_by_name['MutateCustomerResponse'] = _MUTATECUSTOMERRESPONSE +DESCRIPTOR.message_types_by_name['MutateCustomerResult'] = _MUTATECUSTOMERRESULT DESCRIPTOR.message_types_by_name['ListAccessibleCustomersRequest'] = _LISTACCESSIBLECUSTOMERSREQUEST DESCRIPTOR.message_types_by_name['ListAccessibleCustomersResponse'] = _LISTACCESSIBLECUSTOMERSRESPONSE _sym_db.RegisterFileDescriptor(DESCRIPTOR) GetCustomerRequest = _reflection.GeneratedProtocolMessageType('GetCustomerRequest', (_message.Message,), dict( DESCRIPTOR = _GETCUSTOMERREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.customer_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' , __doc__ = """Request message for [CustomerService.GetCustomer][google.ads.googleads.v0.services.CustomerService.GetCustomer]. @@ -135,9 +354,110 @@ )) _sym_db.RegisterMessage(GetCustomerRequest) +MutateCustomerRequest = _reflection.GeneratedProtocolMessageType('MutateCustomerRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATECUSTOMERREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' + , + __doc__ = """Request message for + [CustomerService.MutateCustomer][google.ads.googleads.v0.services.CustomerService.MutateCustomer]. + + + Attributes: + customer_id: + The ID of the customer being modified. + operation: + The operation to perform on the customer + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCustomerRequest) + )) +_sym_db.RegisterMessage(MutateCustomerRequest) + +CreateCustomerClientRequest = _reflection.GeneratedProtocolMessageType('CreateCustomerClientRequest', (_message.Message,), dict( + DESCRIPTOR = _CREATECUSTOMERCLIENTREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' + , + __doc__ = """Request message for + [CustomerService.CreateCustomerClient][google.ads.googleads.v0.services.CustomerService.CreateCustomerClient]. + + + Attributes: + customer_id: + The ID of the Manager under whom client customer is being + created. + customer_client: + The new client customer to create. The resource name on this + customer will be ignored. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.CreateCustomerClientRequest) + )) +_sym_db.RegisterMessage(CreateCustomerClientRequest) + +CustomerOperation = _reflection.GeneratedProtocolMessageType('CustomerOperation', (_message.Message,), dict( + DESCRIPTOR = _CUSTOMEROPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' + , + __doc__ = """A single update on a customer. + + + Attributes: + update: + Mutate operation. Only updates are supported for customer. + update_mask: + FieldMask that determines which resource fields are modified + in an update. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.CustomerOperation) + )) +_sym_db.RegisterMessage(CustomerOperation) + +CreateCustomerClientResponse = _reflection.GeneratedProtocolMessageType('CreateCustomerClientResponse', (_message.Message,), dict( + DESCRIPTOR = _CREATECUSTOMERCLIENTRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' + , + __doc__ = """Response message for CreateCustomerClient mutate. + + + Attributes: + resource_name: + The resource name of the newly created customer client. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.CreateCustomerClientResponse) + )) +_sym_db.RegisterMessage(CreateCustomerClientResponse) + +MutateCustomerResponse = _reflection.GeneratedProtocolMessageType('MutateCustomerResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATECUSTOMERRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' + , + __doc__ = """Response message for customer mutate. + + + Attributes: + result: + Result for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCustomerResponse) + )) +_sym_db.RegisterMessage(MutateCustomerResponse) + +MutateCustomerResult = _reflection.GeneratedProtocolMessageType('MutateCustomerResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATECUSTOMERRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' + , + __doc__ = """The result for the customer mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateCustomerResult) + )) +_sym_db.RegisterMessage(MutateCustomerResult) + ListAccessibleCustomersRequest = _reflection.GeneratedProtocolMessageType('ListAccessibleCustomersRequest', (_message.Message,), dict( DESCRIPTOR = _LISTACCESSIBLECUSTOMERSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.customer_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' , __doc__ = """Request message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v0.services.CustomerService.ListAccessibleCustomers]. @@ -148,7 +468,7 @@ ListAccessibleCustomersResponse = _reflection.GeneratedProtocolMessageType('ListAccessibleCustomersResponse', (_message.Message,), dict( DESCRIPTOR = _LISTACCESSIBLECUSTOMERSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.customer_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.customer_service_pb2' , __doc__ = """Response message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v0.services.CustomerService.ListAccessibleCustomers]. @@ -173,8 +493,8 @@ file=DESCRIPTOR, index=0, options=None, - serialized_start=356, - serialized_end=737, + serialized_start=962, + serialized_end=1741, methods=[ _descriptor.MethodDescriptor( name='GetCustomer', @@ -185,15 +505,33 @@ output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2._CUSTOMER, options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002!\022\037/v0/{resource_name=customers/*}')), ), + _descriptor.MethodDescriptor( + name='MutateCustomer', + full_name='google.ads.googleads.v0.services.CustomerService.MutateCustomer', + index=1, + containing_service=None, + input_type=_MUTATECUSTOMERREQUEST, + output_type=_MUTATECUSTOMERRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002)\"$/v0/customers/{customer_id=*}:mutate:\001*')), + ), _descriptor.MethodDescriptor( name='ListAccessibleCustomers', full_name='google.ads.googleads.v0.services.CustomerService.ListAccessibleCustomers', - index=1, + index=2, containing_service=None, input_type=_LISTACCESSIBLECUSTOMERSREQUEST, output_type=_LISTACCESSIBLECUSTOMERSRESPONSE, options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002\'\022%/v0/customers:listAccessibleCustomers')), ), + _descriptor.MethodDescriptor( + name='CreateCustomerClient', + full_name='google.ads.googleads.v0.services.CustomerService.CreateCustomerClient', + index=3, + containing_service=None, + input_type=_CREATECUSTOMERCLIENTREQUEST, + output_type=_CREATECUSTOMERCLIENTRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0027\"2/v0/customers/{customer_id=*}:createCustomerClient:\001*')), + ), ]) _sym_db.RegisterServiceDescriptor(_CUSTOMERSERVICE) diff --git a/google/ads/google_ads/v0/proto/services/customer_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/customer_service_pb2_grpc.py index 56c011da8..994132d99 100644 --- a/google/ads/google_ads/v0/proto/services/customer_service_pb2_grpc.py +++ b/google/ads/google_ads/v0/proto/services/customer_service_pb2_grpc.py @@ -20,11 +20,21 @@ def __init__(self, channel): request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.GetCustomerRequest.SerializeToString, response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2.Customer.FromString, ) + self.MutateCustomer = channel.unary_unary( + '/google.ads.googleads.v0.services.CustomerService/MutateCustomer', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.MutateCustomerRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.MutateCustomerResponse.FromString, + ) self.ListAccessibleCustomers = channel.unary_unary( '/google.ads.googleads.v0.services.CustomerService/ListAccessibleCustomers', request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.ListAccessibleCustomersRequest.SerializeToString, response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.ListAccessibleCustomersResponse.FromString, ) + self.CreateCustomerClient = channel.unary_unary( + '/google.ads.googleads.v0.services.CustomerService/CreateCustomerClient', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.CreateCustomerClientRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.CreateCustomerClientResponse.FromString, + ) class CustomerServiceServicer(object): @@ -38,6 +48,13 @@ def GetCustomer(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def MutateCustomer(self, request, context): + """Updates a customer. Operation statuses are returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def ListAccessibleCustomers(self, request, context): """Returns resource names of customers directly accessible by the user authenticating the call. @@ -46,6 +63,13 @@ def ListAccessibleCustomers(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def CreateCustomerClient(self, request, context): + """Creates a new client under manager. The new client customer is returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def add_CustomerServiceServicer_to_server(servicer, server): rpc_method_handlers = { @@ -54,11 +78,21 @@ def add_CustomerServiceServicer_to_server(servicer, server): request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.GetCustomerRequest.FromString, response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2.Customer.SerializeToString, ), + 'MutateCustomer': grpc.unary_unary_rpc_method_handler( + servicer.MutateCustomer, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.MutateCustomerRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.MutateCustomerResponse.SerializeToString, + ), 'ListAccessibleCustomers': grpc.unary_unary_rpc_method_handler( servicer.ListAccessibleCustomers, request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.ListAccessibleCustomersRequest.FromString, response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.ListAccessibleCustomersResponse.SerializeToString, ), + 'CreateCustomerClient': grpc.unary_unary_rpc_method_handler( + servicer.CreateCustomerClient, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.CreateCustomerClientRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_customer__service__pb2.CreateCustomerClientResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( 'google.ads.googleads.v0.services.CustomerService', rpc_method_handlers) diff --git a/google/ads/google_ads/v0/proto/services/display_keyword_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/display_keyword_view_service_pb2.py index d1a32ab2a..c4826d074 100644 --- a/google/ads/google_ads/v0/proto/services/display_keyword_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/display_keyword_view_service_pb2.py @@ -63,7 +63,7 @@ GetDisplayKeywordViewRequest = _reflection.GeneratedProtocolMessageType('GetDisplayKeywordViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETDISPLAYKEYWORDVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.display_keyword_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.display_keyword_view_service_pb2' , __doc__ = """Request message for [DisplayKeywordViewService.GetDisplayKeywordView][google.ads.googleads.v0.services.DisplayKeywordViewService.GetDisplayKeywordView]. diff --git a/google/ads/google_ads/v0/proto/services/feed_item_service_pb2.py b/google/ads/google_ads/v0/proto/services/feed_item_service_pb2.py new file mode 100644 index 000000000..642562947 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/feed_item_service_pb2.py @@ -0,0 +1,366 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/feed_item_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import feed_item_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/feed_item_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\n>google/ads/googleads_v0/proto/services/feed_item_service.proto\x12 google.ads.googleads.v0.services\x1a\x37google/ads/googleads_v0/proto/resources/feed_item.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"+\n\x12GetFeedItemRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"v\n\x16MutateFeedItemsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12G\n\noperations\x18\x02 \x03(\x0b\x32\x33.google.ads.googleads.v0.services.FeedItemOperation\"\xe1\x01\n\x11\x46\x65\x65\x64ItemOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12=\n\x06\x63reate\x18\x01 \x01(\x0b\x32+.google.ads.googleads.v0.resources.FeedItemH\x00\x12=\n\x06update\x18\x02 \x01(\x0b\x32+.google.ads.googleads.v0.resources.FeedItemH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"b\n\x17MutateFeedItemsResponse\x12G\n\x07results\x18\x02 \x03(\x0b\x32\x36.google.ads.googleads.v0.services.MutateFeedItemResult\"-\n\x14MutateFeedItemResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xfd\x02\n\x0f\x46\x65\x65\x64ItemService\x12\xa5\x01\n\x0bGetFeedItem\x12\x34.google.ads.googleads.v0.services.GetFeedItemRequest\x1a+.google.ads.googleads.v0.resources.FeedItem\"3\x82\xd3\xe4\x93\x02-\x12+/v0/{resource_name=customers/*/feedItems/*}\x12\xc1\x01\n\x0fMutateFeedItems\x12\x38.google.ads.googleads.v0.services.MutateFeedItemsRequest\x1a\x39.google.ads.googleads.v0.services.MutateFeedItemsResponse\"9\x82\xd3\xe4\x93\x02\x33\"./v0/customers/{customer_id=*}/feedItems:mutate:\x01*B\xd4\x01\n$com.google.ads.googleads.v0.servicesB\x14\x46\x65\x65\x64ItemServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETFEEDITEMREQUEST = _descriptor.Descriptor( + name='GetFeedItemRequest', + full_name='google.ads.googleads.v0.services.GetFeedItemRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetFeedItemRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=221, + serialized_end=264, +) + + +_MUTATEFEEDITEMSREQUEST = _descriptor.Descriptor( + name='MutateFeedItemsRequest', + full_name='google.ads.googleads.v0.services.MutateFeedItemsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateFeedItemsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateFeedItemsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=266, + serialized_end=384, +) + + +_FEEDITEMOPERATION = _descriptor.Descriptor( + name='FeedItemOperation', + full_name='google.ads.googleads.v0.services.FeedItemOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.FeedItemOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.FeedItemOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.FeedItemOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.FeedItemOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.FeedItemOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=387, + serialized_end=612, +) + + +_MUTATEFEEDITEMSRESPONSE = _descriptor.Descriptor( + name='MutateFeedItemsResponse', + full_name='google.ads.googleads.v0.services.MutateFeedItemsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateFeedItemsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=614, + serialized_end=712, +) + + +_MUTATEFEEDITEMRESULT = _descriptor.Descriptor( + name='MutateFeedItemResult', + full_name='google.ads.googleads.v0.services.MutateFeedItemResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateFeedItemResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=714, + serialized_end=759, +) + +_MUTATEFEEDITEMSREQUEST.fields_by_name['operations'].message_type = _FEEDITEMOPERATION +_FEEDITEMOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_FEEDITEMOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2._FEEDITEM +_FEEDITEMOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2._FEEDITEM +_FEEDITEMOPERATION.oneofs_by_name['operation'].fields.append( + _FEEDITEMOPERATION.fields_by_name['create']) +_FEEDITEMOPERATION.fields_by_name['create'].containing_oneof = _FEEDITEMOPERATION.oneofs_by_name['operation'] +_FEEDITEMOPERATION.oneofs_by_name['operation'].fields.append( + _FEEDITEMOPERATION.fields_by_name['update']) +_FEEDITEMOPERATION.fields_by_name['update'].containing_oneof = _FEEDITEMOPERATION.oneofs_by_name['operation'] +_FEEDITEMOPERATION.oneofs_by_name['operation'].fields.append( + _FEEDITEMOPERATION.fields_by_name['remove']) +_FEEDITEMOPERATION.fields_by_name['remove'].containing_oneof = _FEEDITEMOPERATION.oneofs_by_name['operation'] +_MUTATEFEEDITEMSRESPONSE.fields_by_name['results'].message_type = _MUTATEFEEDITEMRESULT +DESCRIPTOR.message_types_by_name['GetFeedItemRequest'] = _GETFEEDITEMREQUEST +DESCRIPTOR.message_types_by_name['MutateFeedItemsRequest'] = _MUTATEFEEDITEMSREQUEST +DESCRIPTOR.message_types_by_name['FeedItemOperation'] = _FEEDITEMOPERATION +DESCRIPTOR.message_types_by_name['MutateFeedItemsResponse'] = _MUTATEFEEDITEMSRESPONSE +DESCRIPTOR.message_types_by_name['MutateFeedItemResult'] = _MUTATEFEEDITEMRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetFeedItemRequest = _reflection.GeneratedProtocolMessageType('GetFeedItemRequest', (_message.Message,), dict( + DESCRIPTOR = _GETFEEDITEMREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_item_service_pb2' + , + __doc__ = """Request message for + [FeedItemService.GetFeedItem][google.ads.googleads.v0.services.FeedItemService.GetFeedItem]. + + + Attributes: + resource_name: + The resource name of the feed item to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetFeedItemRequest) + )) +_sym_db.RegisterMessage(GetFeedItemRequest) + +MutateFeedItemsRequest = _reflection.GeneratedProtocolMessageType('MutateFeedItemsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDITEMSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_item_service_pb2' + , + __doc__ = """Request message for + [FeedItemService.MutateFeedItems][google.ads.googleads.v0.services.FeedItemService.MutateFeedItems]. + + + Attributes: + customer_id: + The ID of the customer whose feed items are being modified. + operations: + The list of operations to perform on individual feed items. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedItemsRequest) + )) +_sym_db.RegisterMessage(MutateFeedItemsRequest) + +FeedItemOperation = _reflection.GeneratedProtocolMessageType('FeedItemOperation', (_message.Message,), dict( + DESCRIPTOR = _FEEDITEMOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_item_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on an feed item. + + + Attributes: + update_mask: + FieldMask that determines which resource fields are modified + in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + feed item. + update: + Update operation: The feed item is expected to have a valid + resource name. + remove: + Remove operation: A resource name for the removed feed item is + expected, in this format: + ``customers/{customer_id}/feedItems/{feed_id}_{feed_item_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.FeedItemOperation) + )) +_sym_db.RegisterMessage(FeedItemOperation) + +MutateFeedItemsResponse = _reflection.GeneratedProtocolMessageType('MutateFeedItemsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDITEMSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_item_service_pb2' + , + __doc__ = """Response message for an feed item mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedItemsResponse) + )) +_sym_db.RegisterMessage(MutateFeedItemsResponse) + +MutateFeedItemResult = _reflection.GeneratedProtocolMessageType('MutateFeedItemResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDITEMRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_item_service_pb2' + , + __doc__ = """The result for the feed item mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedItemResult) + )) +_sym_db.RegisterMessage(MutateFeedItemResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\024FeedItemServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_FEEDITEMSERVICE = _descriptor.ServiceDescriptor( + name='FeedItemService', + full_name='google.ads.googleads.v0.services.FeedItemService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=762, + serialized_end=1143, + methods=[ + _descriptor.MethodDescriptor( + name='GetFeedItem', + full_name='google.ads.googleads.v0.services.FeedItemService.GetFeedItem', + index=0, + containing_service=None, + input_type=_GETFEEDITEMREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2._FEEDITEM, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002-\022+/v0/{resource_name=customers/*/feedItems/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateFeedItems', + full_name='google.ads.googleads.v0.services.FeedItemService.MutateFeedItems', + index=1, + containing_service=None, + input_type=_MUTATEFEEDITEMSREQUEST, + output_type=_MUTATEFEEDITEMSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0023\"./v0/customers/{customer_id=*}/feedItems:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_FEEDITEMSERVICE) + +DESCRIPTOR.services_by_name['FeedItemService'] = _FEEDITEMSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/feed_item_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/feed_item_service_pb2_grpc.py new file mode 100644 index 000000000..673a50a55 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/feed_item_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import feed_item_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2 +from google.ads.google_ads.v0.proto.services import feed_item_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__item__service__pb2 + + +class FeedItemServiceStub(object): + """Service to manage feed items. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetFeedItem = channel.unary_unary( + '/google.ads.googleads.v0.services.FeedItemService/GetFeedItem', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__item__service__pb2.GetFeedItemRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2.FeedItem.FromString, + ) + self.MutateFeedItems = channel.unary_unary( + '/google.ads.googleads.v0.services.FeedItemService/MutateFeedItems', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__item__service__pb2.MutateFeedItemsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__item__service__pb2.MutateFeedItemsResponse.FromString, + ) + + +class FeedItemServiceServicer(object): + """Service to manage feed items. + """ + + def GetFeedItem(self, request, context): + """Returns the requested feed item in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateFeedItems(self, request, context): + """Creates, updates, or removes feed items. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_FeedItemServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetFeedItem': grpc.unary_unary_rpc_method_handler( + servicer.GetFeedItem, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__item__service__pb2.GetFeedItemRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2.FeedItem.SerializeToString, + ), + 'MutateFeedItems': grpc.unary_unary_rpc_method_handler( + servicer.MutateFeedItems, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__item__service__pb2.MutateFeedItemsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__item__service__pb2.MutateFeedItemsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.FeedItemService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/feed_mapping_service_pb2.py b/google/ads/google_ads/v0/proto/services/feed_mapping_service_pb2.py new file mode 100644 index 000000000..d300db130 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/feed_mapping_service_pb2.py @@ -0,0 +1,340 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/feed_mapping_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import feed_mapping_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/feed_mapping_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nAgoogle/ads/googleads_v0/proto/services/feed_mapping_service.proto\x12 google.ads.googleads.v0.services\x1a:google/ads/googleads_v0/proto/resources/feed_mapping.proto\x1a\x1cgoogle/api/annotations.proto\".\n\x15GetFeedMappingRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"|\n\x19MutateFeedMappingsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12J\n\noperations\x18\x02 \x03(\x0b\x32\x36.google.ads.googleads.v0.services.FeedMappingOperation\"w\n\x14\x46\x65\x65\x64MappingOperation\x12@\n\x06\x63reate\x18\x01 \x01(\x0b\x32..google.ads.googleads.v0.resources.FeedMappingH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"h\n\x1aMutateFeedMappingsResponse\x12J\n\x07results\x18\x02 \x03(\x0b\x32\x39.google.ads.googleads.v0.services.MutateFeedMappingResult\"0\n\x17MutateFeedMappingResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\x98\x03\n\x12\x46\x65\x65\x64MappingService\x12\xb1\x01\n\x0eGetFeedMapping\x12\x37.google.ads.googleads.v0.services.GetFeedMappingRequest\x1a..google.ads.googleads.v0.resources.FeedMapping\"6\x82\xd3\xe4\x93\x02\x30\x12./v0/{resource_name=customers/*/feedMappings/*}\x12\xcd\x01\n\x12MutateFeedMappings\x12;.google.ads.googleads.v0.services.MutateFeedMappingsRequest\x1a<.google.ads.googleads.v0.services.MutateFeedMappingsResponse\"<\x82\xd3\xe4\x93\x02\x36\"1/v0/customers/{customer_id=*}/feedMappings:mutate:\x01*B\xd7\x01\n$com.google.ads.googleads.v0.servicesB\x17\x46\x65\x65\x64MappingServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_GETFEEDMAPPINGREQUEST = _descriptor.Descriptor( + name='GetFeedMappingRequest', + full_name='google.ads.googleads.v0.services.GetFeedMappingRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetFeedMappingRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=193, + serialized_end=239, +) + + +_MUTATEFEEDMAPPINGSREQUEST = _descriptor.Descriptor( + name='MutateFeedMappingsRequest', + full_name='google.ads.googleads.v0.services.MutateFeedMappingsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateFeedMappingsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateFeedMappingsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=241, + serialized_end=365, +) + + +_FEEDMAPPINGOPERATION = _descriptor.Descriptor( + name='FeedMappingOperation', + full_name='google.ads.googleads.v0.services.FeedMappingOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.FeedMappingOperation.create', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.FeedMappingOperation.remove', index=1, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.FeedMappingOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=367, + serialized_end=486, +) + + +_MUTATEFEEDMAPPINGSRESPONSE = _descriptor.Descriptor( + name='MutateFeedMappingsResponse', + full_name='google.ads.googleads.v0.services.MutateFeedMappingsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateFeedMappingsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=488, + serialized_end=592, +) + + +_MUTATEFEEDMAPPINGRESULT = _descriptor.Descriptor( + name='MutateFeedMappingResult', + full_name='google.ads.googleads.v0.services.MutateFeedMappingResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateFeedMappingResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=594, + serialized_end=642, +) + +_MUTATEFEEDMAPPINGSREQUEST.fields_by_name['operations'].message_type = _FEEDMAPPINGOPERATION +_FEEDMAPPINGOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2._FEEDMAPPING +_FEEDMAPPINGOPERATION.oneofs_by_name['operation'].fields.append( + _FEEDMAPPINGOPERATION.fields_by_name['create']) +_FEEDMAPPINGOPERATION.fields_by_name['create'].containing_oneof = _FEEDMAPPINGOPERATION.oneofs_by_name['operation'] +_FEEDMAPPINGOPERATION.oneofs_by_name['operation'].fields.append( + _FEEDMAPPINGOPERATION.fields_by_name['remove']) +_FEEDMAPPINGOPERATION.fields_by_name['remove'].containing_oneof = _FEEDMAPPINGOPERATION.oneofs_by_name['operation'] +_MUTATEFEEDMAPPINGSRESPONSE.fields_by_name['results'].message_type = _MUTATEFEEDMAPPINGRESULT +DESCRIPTOR.message_types_by_name['GetFeedMappingRequest'] = _GETFEEDMAPPINGREQUEST +DESCRIPTOR.message_types_by_name['MutateFeedMappingsRequest'] = _MUTATEFEEDMAPPINGSREQUEST +DESCRIPTOR.message_types_by_name['FeedMappingOperation'] = _FEEDMAPPINGOPERATION +DESCRIPTOR.message_types_by_name['MutateFeedMappingsResponse'] = _MUTATEFEEDMAPPINGSRESPONSE +DESCRIPTOR.message_types_by_name['MutateFeedMappingResult'] = _MUTATEFEEDMAPPINGRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetFeedMappingRequest = _reflection.GeneratedProtocolMessageType('GetFeedMappingRequest', (_message.Message,), dict( + DESCRIPTOR = _GETFEEDMAPPINGREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_mapping_service_pb2' + , + __doc__ = """Request message for + [FeedMappingService.GetFeedMapping][google.ads.googleads.v0.services.FeedMappingService.GetFeedMapping]. + + + Attributes: + resource_name: + The resource name of the feed mapping to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetFeedMappingRequest) + )) +_sym_db.RegisterMessage(GetFeedMappingRequest) + +MutateFeedMappingsRequest = _reflection.GeneratedProtocolMessageType('MutateFeedMappingsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDMAPPINGSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_mapping_service_pb2' + , + __doc__ = """Request message for + [FeedMappingService.MutateFeedMappings][google.ads.googleads.v0.services.FeedMappingService.MutateFeedMappings]. + + + Attributes: + customer_id: + The ID of the customer whose feed mappings are being modified. + operations: + The list of operations to perform on individual feed mappings. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedMappingsRequest) + )) +_sym_db.RegisterMessage(MutateFeedMappingsRequest) + +FeedMappingOperation = _reflection.GeneratedProtocolMessageType('FeedMappingOperation', (_message.Message,), dict( + DESCRIPTOR = _FEEDMAPPINGOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_mapping_service_pb2' + , + __doc__ = """A single operation (create, remove) on a feed mapping. + + + Attributes: + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + feed mapping. + remove: + Remove operation: A resource name for the removed feed mapping + is expected, in this format: ``customers/{customer_id}/feedMa + ppings/{feed_id}_{feed_mapping_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.FeedMappingOperation) + )) +_sym_db.RegisterMessage(FeedMappingOperation) + +MutateFeedMappingsResponse = _reflection.GeneratedProtocolMessageType('MutateFeedMappingsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDMAPPINGSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_mapping_service_pb2' + , + __doc__ = """Response message for a feed mapping mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedMappingsResponse) + )) +_sym_db.RegisterMessage(MutateFeedMappingsResponse) + +MutateFeedMappingResult = _reflection.GeneratedProtocolMessageType('MutateFeedMappingResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDMAPPINGRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_mapping_service_pb2' + , + __doc__ = """The result for the feed mapping mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedMappingResult) + )) +_sym_db.RegisterMessage(MutateFeedMappingResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\027FeedMappingServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_FEEDMAPPINGSERVICE = _descriptor.ServiceDescriptor( + name='FeedMappingService', + full_name='google.ads.googleads.v0.services.FeedMappingService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=645, + serialized_end=1053, + methods=[ + _descriptor.MethodDescriptor( + name='GetFeedMapping', + full_name='google.ads.googleads.v0.services.FeedMappingService.GetFeedMapping', + index=0, + containing_service=None, + input_type=_GETFEEDMAPPINGREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2._FEEDMAPPING, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0020\022./v0/{resource_name=customers/*/feedMappings/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateFeedMappings', + full_name='google.ads.googleads.v0.services.FeedMappingService.MutateFeedMappings', + index=1, + containing_service=None, + input_type=_MUTATEFEEDMAPPINGSREQUEST, + output_type=_MUTATEFEEDMAPPINGSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0026\"1/v0/customers/{customer_id=*}/feedMappings:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_FEEDMAPPINGSERVICE) + +DESCRIPTOR.services_by_name['FeedMappingService'] = _FEEDMAPPINGSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/feed_mapping_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/feed_mapping_service_pb2_grpc.py new file mode 100644 index 000000000..8bc279bd7 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/feed_mapping_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import feed_mapping_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2 +from google.ads.google_ads.v0.proto.services import feed_mapping_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__mapping__service__pb2 + + +class FeedMappingServiceStub(object): + """Service to manage feed mappings. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetFeedMapping = channel.unary_unary( + '/google.ads.googleads.v0.services.FeedMappingService/GetFeedMapping', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__mapping__service__pb2.GetFeedMappingRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2.FeedMapping.FromString, + ) + self.MutateFeedMappings = channel.unary_unary( + '/google.ads.googleads.v0.services.FeedMappingService/MutateFeedMappings', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__mapping__service__pb2.MutateFeedMappingsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__mapping__service__pb2.MutateFeedMappingsResponse.FromString, + ) + + +class FeedMappingServiceServicer(object): + """Service to manage feed mappings. + """ + + def GetFeedMapping(self, request, context): + """Returns the requested feed mapping in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateFeedMappings(self, request, context): + """Creates or removes feed mappings. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_FeedMappingServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetFeedMapping': grpc.unary_unary_rpc_method_handler( + servicer.GetFeedMapping, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__mapping__service__pb2.GetFeedMappingRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2.FeedMapping.SerializeToString, + ), + 'MutateFeedMappings': grpc.unary_unary_rpc_method_handler( + servicer.MutateFeedMappings, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__mapping__service__pb2.MutateFeedMappingsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__mapping__service__pb2.MutateFeedMappingsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.FeedMappingService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/feed_service_pb2.py b/google/ads/google_ads/v0/proto/services/feed_service_pb2.py new file mode 100644 index 000000000..f348e516c --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/feed_service_pb2.py @@ -0,0 +1,366 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/feed_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/feed_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\n9google/ads/googleads_v0/proto/services/feed_service.proto\x12 google.ads.googleads.v0.services\x1a\x32google/ads/googleads_v0/proto/resources/feed.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"\'\n\x0eGetFeedRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"n\n\x12MutateFeedsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12\x43\n\noperations\x18\x02 \x03(\x0b\x32/.google.ads.googleads.v0.services.FeedOperation\"\xd5\x01\n\rFeedOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x39\n\x06\x63reate\x18\x01 \x01(\x0b\x32\'.google.ads.googleads.v0.resources.FeedH\x00\x12\x39\n\x06update\x18\x02 \x01(\x0b\x32\'.google.ads.googleads.v0.resources.FeedH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"Z\n\x13MutateFeedsResponse\x12\x43\n\x07results\x18\x02 \x03(\x0b\x32\x32.google.ads.googleads.v0.services.MutateFeedResult\")\n\x10MutateFeedResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xd9\x02\n\x0b\x46\x65\x65\x64Service\x12\x95\x01\n\x07GetFeed\x12\x30.google.ads.googleads.v0.services.GetFeedRequest\x1a\'.google.ads.googleads.v0.resources.Feed\"/\x82\xd3\xe4\x93\x02)\x12\'/v0/{resource_name=customers/*/feeds/*}\x12\xb1\x01\n\x0bMutateFeeds\x12\x34.google.ads.googleads.v0.services.MutateFeedsRequest\x1a\x35.google.ads.googleads.v0.services.MutateFeedsResponse\"5\x82\xd3\xe4\x93\x02/\"*/v0/customers/{customer_id=*}/feeds:mutate:\x01*B\xd0\x01\n$com.google.ads.googleads.v0.servicesB\x10\x46\x65\x65\x64ServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETFEEDREQUEST = _descriptor.Descriptor( + name='GetFeedRequest', + full_name='google.ads.googleads.v0.services.GetFeedRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetFeedRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=211, + serialized_end=250, +) + + +_MUTATEFEEDSREQUEST = _descriptor.Descriptor( + name='MutateFeedsRequest', + full_name='google.ads.googleads.v0.services.MutateFeedsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateFeedsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateFeedsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=252, + serialized_end=362, +) + + +_FEEDOPERATION = _descriptor.Descriptor( + name='FeedOperation', + full_name='google.ads.googleads.v0.services.FeedOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.FeedOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.FeedOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.FeedOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.FeedOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.FeedOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=365, + serialized_end=578, +) + + +_MUTATEFEEDSRESPONSE = _descriptor.Descriptor( + name='MutateFeedsResponse', + full_name='google.ads.googleads.v0.services.MutateFeedsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateFeedsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=580, + serialized_end=670, +) + + +_MUTATEFEEDRESULT = _descriptor.Descriptor( + name='MutateFeedResult', + full_name='google.ads.googleads.v0.services.MutateFeedResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateFeedResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=672, + serialized_end=713, +) + +_MUTATEFEEDSREQUEST.fields_by_name['operations'].message_type = _FEEDOPERATION +_FEEDOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_FEEDOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2._FEED +_FEEDOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2._FEED +_FEEDOPERATION.oneofs_by_name['operation'].fields.append( + _FEEDOPERATION.fields_by_name['create']) +_FEEDOPERATION.fields_by_name['create'].containing_oneof = _FEEDOPERATION.oneofs_by_name['operation'] +_FEEDOPERATION.oneofs_by_name['operation'].fields.append( + _FEEDOPERATION.fields_by_name['update']) +_FEEDOPERATION.fields_by_name['update'].containing_oneof = _FEEDOPERATION.oneofs_by_name['operation'] +_FEEDOPERATION.oneofs_by_name['operation'].fields.append( + _FEEDOPERATION.fields_by_name['remove']) +_FEEDOPERATION.fields_by_name['remove'].containing_oneof = _FEEDOPERATION.oneofs_by_name['operation'] +_MUTATEFEEDSRESPONSE.fields_by_name['results'].message_type = _MUTATEFEEDRESULT +DESCRIPTOR.message_types_by_name['GetFeedRequest'] = _GETFEEDREQUEST +DESCRIPTOR.message_types_by_name['MutateFeedsRequest'] = _MUTATEFEEDSREQUEST +DESCRIPTOR.message_types_by_name['FeedOperation'] = _FEEDOPERATION +DESCRIPTOR.message_types_by_name['MutateFeedsResponse'] = _MUTATEFEEDSRESPONSE +DESCRIPTOR.message_types_by_name['MutateFeedResult'] = _MUTATEFEEDRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetFeedRequest = _reflection.GeneratedProtocolMessageType('GetFeedRequest', (_message.Message,), dict( + DESCRIPTOR = _GETFEEDREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_service_pb2' + , + __doc__ = """Request message for + [FeedService.GetFeed][google.ads.googleads.v0.services.FeedService.GetFeed]. + + + Attributes: + resource_name: + The resource name of the feed to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetFeedRequest) + )) +_sym_db.RegisterMessage(GetFeedRequest) + +MutateFeedsRequest = _reflection.GeneratedProtocolMessageType('MutateFeedsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_service_pb2' + , + __doc__ = """Request message for + [FeedService.MutateFeeds][google.ads.googleads.v0.services.FeedService.MutateFeeds]. + + + Attributes: + customer_id: + The ID of the customer whose feeds are being modified. + operations: + The list of operations to perform on individual feeds. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedsRequest) + )) +_sym_db.RegisterMessage(MutateFeedsRequest) + +FeedOperation = _reflection.GeneratedProtocolMessageType('FeedOperation', (_message.Message,), dict( + DESCRIPTOR = _FEEDOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on an feed. + + + Attributes: + update_mask: + FieldMask that determines which resource fields are modified + in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + feed. + update: + Update operation: The feed is expected to have a valid + resource name. + remove: + Remove operation: A resource name for the removed feed is + expected, in this format: + ``customers/{customer_id}/feeds/{feed_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.FeedOperation) + )) +_sym_db.RegisterMessage(FeedOperation) + +MutateFeedsResponse = _reflection.GeneratedProtocolMessageType('MutateFeedsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_service_pb2' + , + __doc__ = """Response message for an feed mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedsResponse) + )) +_sym_db.RegisterMessage(MutateFeedsResponse) + +MutateFeedResult = _reflection.GeneratedProtocolMessageType('MutateFeedResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEFEEDRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.feed_service_pb2' + , + __doc__ = """The result for the feed mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateFeedResult) + )) +_sym_db.RegisterMessage(MutateFeedResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\020FeedServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_FEEDSERVICE = _descriptor.ServiceDescriptor( + name='FeedService', + full_name='google.ads.googleads.v0.services.FeedService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=716, + serialized_end=1061, + methods=[ + _descriptor.MethodDescriptor( + name='GetFeed', + full_name='google.ads.googleads.v0.services.FeedService.GetFeed', + index=0, + containing_service=None, + input_type=_GETFEEDREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2._FEED, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002)\022\'/v0/{resource_name=customers/*/feeds/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateFeeds', + full_name='google.ads.googleads.v0.services.FeedService.MutateFeeds', + index=1, + containing_service=None, + input_type=_MUTATEFEEDSREQUEST, + output_type=_MUTATEFEEDSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002/\"*/v0/customers/{customer_id=*}/feeds:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_FEEDSERVICE) + +DESCRIPTOR.services_by_name['FeedService'] = _FEEDSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/feed_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/feed_service_pb2_grpc.py new file mode 100644 index 000000000..3adb4abb3 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/feed_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2 +from google.ads.google_ads.v0.proto.services import feed_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__service__pb2 + + +class FeedServiceStub(object): + """Service to manage feeds. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetFeed = channel.unary_unary( + '/google.ads.googleads.v0.services.FeedService/GetFeed', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__service__pb2.GetFeedRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2.Feed.FromString, + ) + self.MutateFeeds = channel.unary_unary( + '/google.ads.googleads.v0.services.FeedService/MutateFeeds', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__service__pb2.MutateFeedsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__service__pb2.MutateFeedsResponse.FromString, + ) + + +class FeedServiceServicer(object): + """Service to manage feeds. + """ + + def GetFeed(self, request, context): + """Returns the requested feed in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateFeeds(self, request, context): + """Creates, updates, or removes feeds. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_FeedServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetFeed': grpc.unary_unary_rpc_method_handler( + servicer.GetFeed, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__service__pb2.GetFeedRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2.Feed.SerializeToString, + ), + 'MutateFeeds': grpc.unary_unary_rpc_method_handler( + servicer.MutateFeeds, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__service__pb2.MutateFeedsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_feed__service__pb2.MutateFeedsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.FeedService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/gender_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/gender_view_service_pb2.py index 8ad9d100c..5aa2c6956 100644 --- a/google/ads/google_ads/v0/proto/services/gender_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/gender_view_service_pb2.py @@ -63,7 +63,7 @@ GetGenderViewRequest = _reflection.GeneratedProtocolMessageType('GetGenderViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETGENDERVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.gender_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.gender_view_service_pb2' , __doc__ = """Request message for [GenderViewService.GetGenderView][google.ads.googleads.v0.services.GenderViewService.GetGenderView]. diff --git a/google/ads/google_ads/v0/proto/services/geo_target_constant_service_pb2.py b/google/ads/google_ads/v0/proto/services/geo_target_constant_service_pb2.py index 457f9fdfe..a5adf9b0e 100644 --- a/google/ads/google_ads/v0/proto/services/geo_target_constant_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/geo_target_constant_service_pb2.py @@ -22,7 +22,7 @@ name='google/ads/googleads_v0/proto/services/geo_target_constant_service.proto', package='google.ads.googleads.v0.services', syntax='proto3', - serialized_pb=_b('\nHgoogle/ads/googleads_v0/proto/services/geo_target_constant_service.proto\x12 google.ads.googleads.v0.services\x1a\x41google/ads/googleads_v0/proto/resources/geo_target_constant.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1egoogle/protobuf/wrappers.proto\"4\n\x1bGetGeoTargetConstantRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"\xb3\x03\n SuggestGeoTargetConstantsRequest\x12,\n\x06locale\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12j\n\x0elocation_names\x18\x01 \x01(\x0b\x32P.google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.LocationNamesH\x00\x12\x64\n\x0bgeo_targets\x18\x02 \x01(\x0b\x32M.google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.GeoTargetsH\x00\x1a<\n\rLocationNames\x12+\n\x05names\x18\x01 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x1aH\n\nGeoTargets\x12:\n\x14geo_target_constants\x18\x01 \x03(\x0b\x32\x1c.google.protobuf.StringValueB\x07\n\x05query\"\x8b\x01\n!SuggestGeoTargetConstantsResponse\x12\x66\n\x1fgeo_target_constant_suggestions\x18\x01 \x03(\x0b\x32=.google.ads.googleads.v0.services.GeoTargetConstantSuggestion\"\xd8\x02\n\x1bGeoTargetConstantSuggestion\x12,\n\x06locale\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12*\n\x05reach\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x31\n\x0bsearch_term\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12Q\n\x13geo_target_constant\x18\x04 \x01(\x0b\x32\x34.google.ads.googleads.v0.resources.GeoTargetConstant\x12Y\n\x1bgeo_target_constant_parents\x18\x05 \x03(\x0b\x32\x34.google.ads.googleads.v0.resources.GeoTargetConstant2\xac\x03\n\x18GeoTargetConstantService\x12\xbd\x01\n\x14GetGeoTargetConstant\x12=.google.ads.googleads.v0.services.GetGeoTargetConstantRequest\x1a\x34.google.ads.googleads.v0.resources.GeoTargetConstant\"0\x82\xd3\xe4\x93\x02*\x12(/v0/{resource_name=geoTargetConstants/*}\x12\xcf\x01\n\x19SuggestGeoTargetConstants\x12\x42.google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest\x1a\x43.google.ads.googleads.v0.services.SuggestGeoTargetConstantsResponse\")\x82\xd3\xe4\x93\x02#\"\x1e/v0/geoTargetConstants:suggest:\x01*B\xdd\x01\n$com.google.ads.googleads.v0.servicesB\x1dGeoTargetConstantServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + serialized_pb=_b('\nHgoogle/ads/googleads_v0/proto/services/geo_target_constant_service.proto\x12 google.ads.googleads.v0.services\x1a\x41google/ads/googleads_v0/proto/resources/geo_target_constant.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1egoogle/protobuf/wrappers.proto\"4\n\x1bGetGeoTargetConstantRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"\xe7\x03\n SuggestGeoTargetConstantsRequest\x12,\n\x06locale\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x63ountry_code\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12j\n\x0elocation_names\x18\x01 \x01(\x0b\x32P.google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.LocationNamesH\x00\x12\x64\n\x0bgeo_targets\x18\x02 \x01(\x0b\x32M.google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.GeoTargetsH\x00\x1a<\n\rLocationNames\x12+\n\x05names\x18\x01 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x1aH\n\nGeoTargets\x12:\n\x14geo_target_constants\x18\x01 \x03(\x0b\x32\x1c.google.protobuf.StringValueB\x07\n\x05query\"\x8b\x01\n!SuggestGeoTargetConstantsResponse\x12\x66\n\x1fgeo_target_constant_suggestions\x18\x01 \x03(\x0b\x32=.google.ads.googleads.v0.services.GeoTargetConstantSuggestion\"\xd8\x02\n\x1bGeoTargetConstantSuggestion\x12,\n\x06locale\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12*\n\x05reach\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x31\n\x0bsearch_term\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12Q\n\x13geo_target_constant\x18\x04 \x01(\x0b\x32\x34.google.ads.googleads.v0.resources.GeoTargetConstant\x12Y\n\x1bgeo_target_constant_parents\x18\x05 \x03(\x0b\x32\x34.google.ads.googleads.v0.resources.GeoTargetConstant2\xac\x03\n\x18GeoTargetConstantService\x12\xbd\x01\n\x14GetGeoTargetConstant\x12=.google.ads.googleads.v0.services.GetGeoTargetConstantRequest\x1a\x34.google.ads.googleads.v0.resources.GeoTargetConstant\"0\x82\xd3\xe4\x93\x02*\x12(/v0/{resource_name=geoTargetConstants/*}\x12\xcf\x01\n\x19SuggestGeoTargetConstants\x12\x42.google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest\x1a\x43.google.ads.googleads.v0.services.SuggestGeoTargetConstantsResponse\")\x82\xd3\xe4\x93\x02#\"\x1e/v0/geoTargetConstants:suggest:\x01*B\xdd\x01\n$com.google.ads.googleads.v0.servicesB\x1dGeoTargetConstantServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') , dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_geo__target__constant__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -86,8 +86,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=586, - serialized_end=646, + serialized_start=638, + serialized_end=698, ) _SUGGESTGEOTARGETCONSTANTSREQUEST_GEOTARGETS = _descriptor.Descriptor( @@ -116,8 +116,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=648, - serialized_end=720, + serialized_start=700, + serialized_end=772, ) _SUGGESTGEOTARGETCONSTANTSREQUEST = _descriptor.Descriptor( @@ -135,14 +135,21 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='location_names', full_name='google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.location_names', index=1, + name='country_code', full_name='google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.country_code', index=1, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='location_names', full_name='google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.location_names', index=2, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='geo_targets', full_name='google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.geo_targets', index=2, + name='geo_targets', full_name='google.ads.googleads.v0.services.SuggestGeoTargetConstantsRequest.geo_targets', index=3, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -164,7 +171,7 @@ index=0, containing_type=None, fields=[]), ], serialized_start=294, - serialized_end=729, + serialized_end=781, ) @@ -194,8 +201,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=732, - serialized_end=871, + serialized_start=784, + serialized_end=923, ) @@ -253,8 +260,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=874, - serialized_end=1218, + serialized_start=926, + serialized_end=1270, ) _SUGGESTGEOTARGETCONSTANTSREQUEST_LOCATIONNAMES.fields_by_name['names'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE @@ -262,6 +269,7 @@ _SUGGESTGEOTARGETCONSTANTSREQUEST_GEOTARGETS.fields_by_name['geo_target_constants'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _SUGGESTGEOTARGETCONSTANTSREQUEST_GEOTARGETS.containing_type = _SUGGESTGEOTARGETCONSTANTSREQUEST _SUGGESTGEOTARGETCONSTANTSREQUEST.fields_by_name['locale'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_SUGGESTGEOTARGETCONSTANTSREQUEST.fields_by_name['country_code'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _SUGGESTGEOTARGETCONSTANTSREQUEST.fields_by_name['location_names'].message_type = _SUGGESTGEOTARGETCONSTANTSREQUEST_LOCATIONNAMES _SUGGESTGEOTARGETCONSTANTSREQUEST.fields_by_name['geo_targets'].message_type = _SUGGESTGEOTARGETCONSTANTSREQUEST_GEOTARGETS _SUGGESTGEOTARGETCONSTANTSREQUEST.oneofs_by_name['query'].fields.append( @@ -284,7 +292,7 @@ GetGeoTargetConstantRequest = _reflection.GeneratedProtocolMessageType('GetGeoTargetConstantRequest', (_message.Message,), dict( DESCRIPTOR = _GETGEOTARGETCONSTANTREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.geo_target_constant_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.geo_target_constant_service_pb2' , __doc__ = """Request message for [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v0.services.GeoTargetConstantService.GetGeoTargetConstant]. @@ -302,7 +310,7 @@ LocationNames = _reflection.GeneratedProtocolMessageType('LocationNames', (_message.Message,), dict( DESCRIPTOR = _SUGGESTGEOTARGETCONSTANTSREQUEST_LOCATIONNAMES, - __module__ = 'google.ads.googleads_v0.proto.services.geo_target_constant_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.geo_target_constant_service_pb2' , __doc__ = """A list of location names. @@ -317,7 +325,7 @@ GeoTargets = _reflection.GeneratedProtocolMessageType('GeoTargets', (_message.Message,), dict( DESCRIPTOR = _SUGGESTGEOTARGETCONSTANTSREQUEST_GEOTARGETS, - __module__ = 'google.ads.googleads_v0.proto.services.geo_target_constant_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.geo_target_constant_service_pb2' , __doc__ = """A list of geo target constant resource names. @@ -330,7 +338,7 @@ )) , DESCRIPTOR = _SUGGESTGEOTARGETCONSTANTSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.geo_target_constant_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.geo_target_constant_service_pb2' , __doc__ = """Request message for [GeoTargetConstantService.SuggestGeoTargetConstantsRequest][]. @@ -341,6 +349,8 @@ If possible, returned geo targets are translated using this locale. If not, en is used by default. This is also used as a hint for returned geo targets. + country_code: + Returned geo targets are restricted to this country code. query: Required. A selector of geo target constants. location_names: @@ -356,7 +366,7 @@ SuggestGeoTargetConstantsResponse = _reflection.GeneratedProtocolMessageType('SuggestGeoTargetConstantsResponse', (_message.Message,), dict( DESCRIPTOR = _SUGGESTGEOTARGETCONSTANTSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.geo_target_constant_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.geo_target_constant_service_pb2' , __doc__ = """Response message for [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v0.services.GeoTargetConstantService.SuggestGeoTargetConstants] @@ -372,7 +382,7 @@ GeoTargetConstantSuggestion = _reflection.GeneratedProtocolMessageType('GeoTargetConstantSuggestion', (_message.Message,), dict( DESCRIPTOR = _GEOTARGETCONSTANTSUGGESTION, - __module__ = 'google.ads.googleads_v0.proto.services.geo_target_constant_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.geo_target_constant_service_pb2' , __doc__ = """A geo target constant suggestion. @@ -409,8 +419,8 @@ file=DESCRIPTOR, index=0, options=None, - serialized_start=1221, - serialized_end=1649, + serialized_start=1273, + serialized_end=1701, methods=[ _descriptor.MethodDescriptor( name='GetGeoTargetConstant', diff --git a/google/ads/google_ads/v0/proto/services/google_ads_field_service_pb2.py b/google/ads/google_ads/v0/proto/services/google_ads_field_service_pb2.py index 6d5f4e9ca..4e559a2b5 100644 --- a/google/ads/google_ads/v0/proto/services/google_ads_field_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/google_ads_field_service_pb2.py @@ -156,7 +156,7 @@ GetGoogleAdsFieldRequest = _reflection.GeneratedProtocolMessageType('GetGoogleAdsFieldRequest', (_message.Message,), dict( DESCRIPTOR = _GETGOOGLEADSFIELDREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.google_ads_field_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_field_service_pb2' , __doc__ = """Request message for [GoogleAdsFieldService.GetGoogleAdsField][google.ads.googleads.v0.services.GoogleAdsFieldService.GetGoogleAdsField]. @@ -172,7 +172,7 @@ SearchGoogleAdsFieldsRequest = _reflection.GeneratedProtocolMessageType('SearchGoogleAdsFieldsRequest', (_message.Message,), dict( DESCRIPTOR = _SEARCHGOOGLEADSFIELDSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.google_ads_field_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_field_service_pb2' , __doc__ = """Request message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v0.services.GoogleAdsFieldService.SearchGoogleAdsFields]. @@ -197,7 +197,7 @@ SearchGoogleAdsFieldsResponse = _reflection.GeneratedProtocolMessageType('SearchGoogleAdsFieldsResponse', (_message.Message,), dict( DESCRIPTOR = _SEARCHGOOGLEADSFIELDSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.google_ads_field_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_field_service_pb2' , __doc__ = """Response message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v0.services.GoogleAdsFieldService.SearchGoogleAdsFields]. diff --git a/google/ads/google_ads/v0/proto/services/google_ads_service_pb2.py b/google/ads/google_ads/v0/proto/services/google_ads_service_pb2.py index f5b60f4fc..c3c2deecc 100644 --- a/google/ads/google_ads/v0/proto/services/google_ads_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/google_ads_service_pb2.py @@ -17,7 +17,10 @@ from google.ads.google_ads.v0.proto.enums import ad_network_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__network__type__pb2 from google.ads.google_ads.v0.proto.enums import day_of_week_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_day__of__week__pb2 from google.ads.google_ads.v0.proto.enums import device_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2 +from google.ads.google_ads.v0.proto.enums import hotel_date_selection_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_hotel__date__selection__type__pb2 from google.ads.google_ads.v0.proto.enums import month_of_year_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_month__of__year__pb2 +from google.ads.google_ads.v0.proto.enums import placeholder_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_placeholder__type__pb2 +from google.ads.google_ads.v0.proto.enums import search_term_match_type_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_search__term__match__type__pb2 from google.ads.google_ads.v0.proto.enums import slot_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_slot__pb2 from google.ads.google_ads.v0.proto.resources import account_budget_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_account__budget__pb2 from google.ads.google_ads.v0.proto.resources import account_budget_proposal_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_account__budget__proposal__pb2 @@ -26,33 +29,67 @@ from google.ads.google_ads.v0.proto.resources import ad_group_audience_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__audience__view__pb2 from google.ads.google_ads.v0.proto.resources import ad_group_bid_modifier_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__bid__modifier__pb2 from google.ads.google_ads.v0.proto.resources import ad_group_criterion_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__criterion__pb2 +from google.ads.google_ads.v0.proto.resources import ad_group_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2 from google.ads.google_ads.v0.proto.resources import age_range_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_age__range__view__pb2 from google.ads.google_ads.v0.proto.resources import bidding_strategy_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_bidding__strategy__pb2 from google.ads.google_ads.v0.proto.resources import billing_setup_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_billing__setup__pb2 from google.ads.google_ads.v0.proto.resources import campaign_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__pb2 +from google.ads.google_ads.v0.proto.resources import campaign_audience_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2 from google.ads.google_ads.v0.proto.resources import campaign_bid_modifier_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__bid__modifier__pb2 from google.ads.google_ads.v0.proto.resources import campaign_budget_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__budget__pb2 from google.ads.google_ads.v0.proto.resources import campaign_criterion_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__criterion__pb2 +from google.ads.google_ads.v0.proto.resources import campaign_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2 from google.ads.google_ads.v0.proto.resources import campaign_group_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__group__pb2 from google.ads.google_ads.v0.proto.resources import campaign_shared_set_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__shared__set__pb2 +from google.ads.google_ads.v0.proto.resources import carrier_constant_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2 from google.ads.google_ads.v0.proto.resources import change_status_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_change__status__pb2 from google.ads.google_ads.v0.proto.resources import customer_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2 +from google.ads.google_ads.v0.proto.resources import customer_client_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2 from google.ads.google_ads.v0.proto.resources import customer_client_link_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__link__pb2 +from google.ads.google_ads.v0.proto.resources import customer_feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2 from google.ads.google_ads.v0.proto.resources import customer_manager_link_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__manager__link__pb2 from google.ads.google_ads.v0.proto.resources import display_keyword_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_display__keyword__view__pb2 +from google.ads.google_ads.v0.proto.resources import feed_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2 +from google.ads.google_ads.v0.proto.resources import feed_item_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2 +from google.ads.google_ads.v0.proto.resources import feed_mapping_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2 from google.ads.google_ads.v0.proto.resources import gender_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_gender__view__pb2 from google.ads.google_ads.v0.proto.resources import geo_target_constant_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_geo__target__constant__pb2 from google.ads.google_ads.v0.proto.resources import hotel_group_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__group__view__pb2 +from google.ads.google_ads.v0.proto.resources import hotel_performance_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_ad_group_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_campaign_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_keyword_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_negative_keyword_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2 from google.ads.google_ads.v0.proto.resources import keyword_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__view__pb2 +from google.ads.google_ads.v0.proto.resources import language_constant_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2 from google.ads.google_ads.v0.proto.resources import managed_placement_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_managed__placement__view__pb2 from google.ads.google_ads.v0.proto.resources import parental_status_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_parental__status__view__pb2 from google.ads.google_ads.v0.proto.resources import product_group_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_product__group__view__pb2 from google.ads.google_ads.v0.proto.resources import recommendation_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_recommendation__pb2 +from google.ads.google_ads.v0.proto.resources import search_term_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2 from google.ads.google_ads.v0.proto.resources import shared_criterion_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_shared__criterion__pb2 from google.ads.google_ads.v0.proto.resources import shared_set_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_shared__set__pb2 from google.ads.google_ads.v0.proto.resources import topic_constant_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_topic__constant__pb2 from google.ads.google_ads.v0.proto.resources import topic_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_topic__view__pb2 +from google.ads.google_ads.v0.proto.resources import user_interest_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2 +from google.ads.google_ads.v0.proto.resources import user_list_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2 from google.ads.google_ads.v0.proto.resources import video_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_video__pb2 +from google.ads.google_ads.v0.proto.services import ad_group_ad_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__ad__service__pb2 +from google.ads.google_ads.v0.proto.services import ad_group_bid_modifier_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__bid__modifier__service__pb2 +from google.ads.google_ads.v0.proto.services import ad_group_criterion_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__criterion__service__pb2 +from google.ads.google_ads.v0.proto.services import ad_group_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__service__pb2 +from google.ads.google_ads.v0.proto.services import bidding_strategy_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_bidding__strategy__service__pb2 +from google.ads.google_ads.v0.proto.services import campaign_bid_modifier_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__bid__modifier__service__pb2 +from google.ads.google_ads.v0.proto.services import campaign_budget_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__budget__service__pb2 +from google.ads.google_ads.v0.proto.services import campaign_criterion_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__criterion__service__pb2 +from google.ads.google_ads.v0.proto.services import campaign_group_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__group__service__pb2 +from google.ads.google_ads.v0.proto.services import campaign_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__service__pb2 +from google.ads.google_ads.v0.proto.services import campaign_shared_set_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__shared__set__service__pb2 +from google.ads.google_ads.v0.proto.services import conversion_action_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_conversion__action__service__pb2 +from google.ads.google_ads.v0.proto.services import shared_criterion_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_shared__criterion__service__pb2 +from google.ads.google_ads.v0.proto.services import shared_set_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_shared__set__service__pb2 +from google.ads.google_ads.v0.proto.services import user_list_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2 from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 @@ -62,9 +99,9 @@ name='google/ads/googleads_v0/proto/services/google_ads_service.proto', package='google.ads.googleads.v0.services', syntax='proto3', - serialized_pb=_b('\n?google/ads/googleads_v0/proto/services/google_ads_service.proto\x12 google.ads.googleads.v0.services\x1a\x32google/ads/googleads_v0/proto/common/metrics.proto\x1a\x39google/ads/googleads_v0/proto/enums/ad_network_type.proto\x1a\x35google/ads/googleads_v0/proto/enums/day_of_week.proto\x1a\x30google/ads/googleads_v0/proto/enums/device.proto\x1a\x37google/ads/googleads_v0/proto/enums/month_of_year.proto\x1a.google/ads/googleads_v0/proto/enums/slot.proto\x1agoogle/ads/googleads_v0/proto/resources/bidding_strategy.proto\x1a;google/ads/googleads_v0/proto/resources/billing_setup.proto\x1a\x36google/ads/googleads_v0/proto/resources/campaign.proto\x1a\x43google/ads/googleads_v0/proto/resources/campaign_bid_modifier.proto\x1a=google/ads/googleads_v0/proto/resources/campaign_budget.proto\x1a@google/ads/googleads_v0/proto/resources/campaign_criterion.proto\x1agoogle/ads/googleads_v0/proto/resources/hotel_group_view.proto\x1a:google/ads/googleads_v0/proto/resources/keyword_view.proto\x1a\x44google/ads/googleads_v0/proto/resources/managed_placement_view.proto\x1a\x42google/ads/googleads_v0/proto/resources/parental_status_view.proto\x1a@google/ads/googleads_v0/proto/resources/product_group_view.proto\x1agoogle/ads/googleads_v0/proto/resources/shared_criterion.proto\x1a\x38google/ads/googleads_v0/proto/resources/shared_set.proto\x1a \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.CustomerClientLink\x12S\n\x14\x64isplay_keyword_view\x18/ \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.DisplayKeywordView\x12\x42\n\x0bgender_view\x18( \x01(\x0b\x32-.google.ads.googleads.v0.resources.GenderView\x12Q\n\x13geo_target_constant\x18\x17 \x01(\x0b\x32\x34.google.ads.googleads.v0.resources.GeoTargetConstant\x12K\n\x10hotel_group_view\x18\x33 \x01(\x0b\x32\x31.google.ads.googleads.v0.resources.HotelGroupView\x12\x44\n\x0ckeyword_view\x18\x15 \x01(\x0b\x32..google.ads.googleads.v0.resources.KeywordView\x12W\n\x16managed_placement_view\x18\x35 \x01(\x0b\x32\x37.google.ads.googleads.v0.resources.ManagedPlacementView\x12S\n\x14parental_status_view\x18- \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.ParentalStatusView\x12O\n\x12product_group_view\x18\x36 \x01(\x0b\x32\x33.google.ads.googleads.v0.resources.ProductGroupView\x12I\n\x0erecommendation\x18\x16 \x01(\x0b\x32\x31.google.ads.googleads.v0.resources.Recommendation\x12L\n\x10shared_criterion\x18\x1d \x01(\x0b\x32\x32.google.ads.googleads.v0.resources.SharedCriterion\x12@\n\nshared_set\x18\x1b \x01(\x0b\x32,.google.ads.googleads.v0.resources.SharedSet\x12@\n\ntopic_view\x18, \x01(\x0b\x32,.google.ads.googleads.v0.resources.TopicView\x12H\n\x0etopic_constant\x18\x1f \x01(\x0b\x32\x30.google.ads.googleads.v0.resources.TopicConstant\x12\x37\n\x05video\x18\' \x01(\x0b\x32(.google.ads.googleads.v0.resources.Video\x12\x38\n\x07metrics\x18\x04 \x01(\x0b\x32\'.google.ads.googleads.v0.common.Metrics\x12W\n\x0f\x61\x64_network_type\x18\x05 \x01(\x0e\x32>.google.ads.googleads.v0.enums.AdNetworkTypeEnum.AdNetworkType\x12*\n\x04\x64\x61te\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12K\n\x0b\x64\x61y_of_week\x18\x07 \x01(\x0e\x32\x36.google.ads.googleads.v0.enums.DayOfWeekEnum.DayOfWeek\x12@\n\x06\x64\x65vice\x18\x08 \x01(\x0e\x32\x30.google.ads.googleads.v0.enums.DeviceEnum.Device\x12)\n\x04hour\x18\t \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12+\n\x05month\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12Q\n\rmonth_of_year\x18\x1c \x01(\x0e\x32:.google.ads.googleads.v0.enums.MonthOfYearEnum.MonthOfYear\x12-\n\x07quarter\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12:\n\x04slot\x18\r \x01(\x0e\x32,.google.ads.googleads.v0.enums.SlotEnum.Slot\x12*\n\x04week\x18\x0e \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x04year\x18\x0f \x01(\x0b\x32\x1b.google.protobuf.Int32Value2\xcd\x01\n\x10GoogleAdsService\x12\xb8\x01\n\x06Search\x12\x38.google.ads.googleads.v0.services.SearchGoogleAdsRequest\x1a\x39.google.ads.googleads.v0.services.SearchGoogleAdsResponse\"9\x82\xd3\xe4\x93\x02\x33\"./v0/customers/{customer_id=*}/googleAds:search:\x01*B\xd5\x01\n$com.google.ads.googleads.v0.servicesB\x15GoogleAdsServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + serialized_pb=_b('\n?google/ads/googleads_v0/proto/services/google_ads_service.proto\x12 google.ads.googleads.v0.services\x1a\x32google/ads/googleads_v0/proto/common/metrics.proto\x1a\x39google/ads/googleads_v0/proto/enums/ad_network_type.proto\x1a\x35google/ads/googleads_v0/proto/enums/day_of_week.proto\x1a\x30google/ads/googleads_v0/proto/enums/device.proto\x1a\x43google/ads/googleads_v0/proto/enums/hotel_date_selection_type.proto\x1a\x37google/ads/googleads_v0/proto/enums/month_of_year.proto\x1a:google/ads/googleads_v0/proto/enums/placeholder_type.proto\x1a@google/ads/googleads_v0/proto/enums/search_term_match_type.proto\x1a.google/ads/googleads_v0/proto/enums/slot.proto\x1agoogle/ads/googleads_v0/proto/resources/bidding_strategy.proto\x1a;google/ads/googleads_v0/proto/resources/billing_setup.proto\x1a\x36google/ads/googleads_v0/proto/resources/campaign.proto\x1a\x44google/ads/googleads_v0/proto/resources/campaign_audience_view.proto\x1a\x43google/ads/googleads_v0/proto/resources/campaign_bid_modifier.proto\x1a=google/ads/googleads_v0/proto/resources/campaign_budget.proto\x1a@google/ads/googleads_v0/proto/resources/campaign_criterion.proto\x1a;google/ads/googleads_v0/proto/resources/campaign_feed.proto\x1agoogle/ads/googleads_v0/proto/resources/carrier_constant.proto\x1a;google/ads/googleads_v0/proto/resources/change_status.proto\x1a\x36google/ads/googleads_v0/proto/resources/customer.proto\x1a=google/ads/googleads_v0/proto/resources/customer_client.proto\x1a\x42google/ads/googleads_v0/proto/resources/customer_client_link.proto\x1a;google/ads/googleads_v0/proto/resources/customer_feed.proto\x1a\x43google/ads/googleads_v0/proto/resources/customer_manager_link.proto\x1a\x42google/ads/googleads_v0/proto/resources/display_keyword_view.proto\x1a\x32google/ads/googleads_v0/proto/resources/feed.proto\x1a\x37google/ads/googleads_v0/proto/resources/feed_item.proto\x1a:google/ads/googleads_v0/proto/resources/feed_mapping.proto\x1a\x39google/ads/googleads_v0/proto/resources/gender_view.proto\x1a\x41google/ads/googleads_v0/proto/resources/geo_target_constant.proto\x1a>google/ads/googleads_v0/proto/resources/hotel_group_view.proto\x1a\x44google/ads/googleads_v0/proto/resources/hotel_performance_view.proto\x1a:google/ads/googleads_v0/proto/resources/keyword_plan.proto\x1a\x43google/ads/googleads_v0/proto/resources/keyword_plan_ad_group.proto\x1a\x43google/ads/googleads_v0/proto/resources/keyword_plan_campaign.proto\x1a\x42google/ads/googleads_v0/proto/resources/keyword_plan_keyword.proto\x1aKgoogle/ads/googleads_v0/proto/resources/keyword_plan_negative_keyword.proto\x1a:google/ads/googleads_v0/proto/resources/keyword_view.proto\x1a?google/ads/googleads_v0/proto/resources/language_constant.proto\x1a\x44google/ads/googleads_v0/proto/resources/managed_placement_view.proto\x1a\x42google/ads/googleads_v0/proto/resources/parental_status_view.proto\x1a@google/ads/googleads_v0/proto/resources/product_group_view.proto\x1agoogle/ads/googleads_v0/proto/resources/search_term_view.proto\x1a>google/ads/googleads_v0/proto/resources/shared_criterion.proto\x1a\x38google/ads/googleads_v0/proto/resources/shared_set.proto\x1agoogle/ads/googleads_v0/proto/services/user_list_service.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a\x1egoogle/protobuf/wrappers.proto\"c\n\x16SearchGoogleAdsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x11\n\tpage_size\x18\x04 \x01(\x05\"\xc0\x01\n\x17SearchGoogleAdsResponse\x12?\n\x07results\x18\x01 \x03(\x0b\x32..google.ads.googleads.v0.services.GoogleAdsRow\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x1b\n\x13total_results_count\x18\x03 \x01(\x03\x12.\n\nfield_mask\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"\xad,\n\x0cGoogleAdsRow\x12H\n\x0e\x61\x63\x63ount_budget\x18* \x01(\x0b\x32\x30.google.ads.googleads.v0.resources.AccountBudget\x12Y\n\x17\x61\x63\x63ount_budget_proposal\x18+ \x01(\x0b\x32\x38.google.ads.googleads.v0.resources.AccountBudgetProposal\x12<\n\x08\x61\x64_group\x18\x03 \x01(\x0b\x32*.google.ads.googleads.v0.resources.AdGroup\x12\x41\n\x0b\x61\x64_group_ad\x18\x10 \x01(\x0b\x32,.google.ads.googleads.v0.resources.AdGroupAd\x12V\n\x16\x61\x64_group_audience_view\x18\x39 \x01(\x0b\x32\x36.google.ads.googleads.v0.resources.AdGroupAudienceView\x12T\n\x15\x61\x64_group_bid_modifier\x18\x18 \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.AdGroupBidModifier\x12O\n\x12\x61\x64_group_criterion\x18\x11 \x01(\x0b\x32\x33.google.ads.googleads.v0.resources.AdGroupCriterion\x12\x45\n\rad_group_feed\x18\x43 \x01(\x0b\x32..google.ads.googleads.v0.resources.AdGroupFeed\x12G\n\x0e\x61ge_range_view\x18\x30 \x01(\x0b\x32/.google.ads.googleads.v0.resources.AgeRangeView\x12L\n\x10\x62idding_strategy\x18\x12 \x01(\x0b\x32\x32.google.ads.googleads.v0.resources.BiddingStrategy\x12\x46\n\rbilling_setup\x18) \x01(\x0b\x32/.google.ads.googleads.v0.resources.BillingSetup\x12J\n\x0f\x63\x61mpaign_budget\x18\x13 \x01(\x0b\x32\x31.google.ads.googleads.v0.resources.CampaignBudget\x12=\n\x08\x63\x61mpaign\x18\x02 \x01(\x0b\x32+.google.ads.googleads.v0.resources.Campaign\x12W\n\x16\x63\x61mpaign_audience_view\x18\x45 \x01(\x0b\x32\x37.google.ads.googleads.v0.resources.CampaignAudienceView\x12U\n\x15\x63\x61mpaign_bid_modifier\x18\x1a \x01(\x0b\x32\x36.google.ads.googleads.v0.resources.CampaignBidModifier\x12P\n\x12\x63\x61mpaign_criterion\x18\x14 \x01(\x0b\x32\x34.google.ads.googleads.v0.resources.CampaignCriterion\x12\x46\n\rcampaign_feed\x18? \x01(\x0b\x32/.google.ads.googleads.v0.resources.CampaignFeed\x12H\n\x0e\x63\x61mpaign_group\x18\x19 \x01(\x0b\x32\x30.google.ads.googleads.v0.resources.CampaignGroup\x12Q\n\x13\x63\x61mpaign_shared_set\x18\x1e \x01(\x0b\x32\x34.google.ads.googleads.v0.resources.CampaignSharedSet\x12L\n\x10\x63\x61rrier_constant\x18\x42 \x01(\x0b\x32\x32.google.ads.googleads.v0.resources.CarrierConstant\x12\x46\n\rchange_status\x18% \x01(\x0b\x32/.google.ads.googleads.v0.resources.ChangeStatus\x12=\n\x08\x63ustomer\x18\x01 \x01(\x0b\x32+.google.ads.googleads.v0.resources.Customer\x12U\n\x15\x63ustomer_manager_link\x18= \x01(\x0b\x32\x36.google.ads.googleads.v0.resources.CustomerManagerLink\x12S\n\x14\x63ustomer_client_link\x18> \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.CustomerClientLink\x12J\n\x0f\x63ustomer_client\x18\x46 \x01(\x0b\x32\x31.google.ads.googleads.v0.resources.CustomerClient\x12\x46\n\rcustomer_feed\x18@ \x01(\x0b\x32/.google.ads.googleads.v0.resources.CustomerFeed\x12S\n\x14\x64isplay_keyword_view\x18/ \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.DisplayKeywordView\x12\x35\n\x04\x66\x65\x65\x64\x18. \x01(\x0b\x32\'.google.ads.googleads.v0.resources.Feed\x12>\n\tfeed_item\x18\x32 \x01(\x0b\x32+.google.ads.googleads.v0.resources.FeedItem\x12\x44\n\x0c\x66\x65\x65\x64_mapping\x18: \x01(\x0b\x32..google.ads.googleads.v0.resources.FeedMapping\x12\x42\n\x0bgender_view\x18( \x01(\x0b\x32-.google.ads.googleads.v0.resources.GenderView\x12Q\n\x13geo_target_constant\x18\x17 \x01(\x0b\x32\x34.google.ads.googleads.v0.resources.GeoTargetConstant\x12K\n\x10hotel_group_view\x18\x33 \x01(\x0b\x32\x31.google.ads.googleads.v0.resources.HotelGroupView\x12W\n\x16hotel_performance_view\x18G \x01(\x0b\x32\x37.google.ads.googleads.v0.resources.HotelPerformanceView\x12\x44\n\x0ckeyword_view\x18\x15 \x01(\x0b\x32..google.ads.googleads.v0.resources.KeywordView\x12\x44\n\x0ckeyword_plan\x18 \x01(\x0b\x32..google.ads.googleads.v0.resources.KeywordPlan\x12U\n\x15keyword_plan_campaign\x18! \x01(\x0b\x32\x36.google.ads.googleads.v0.resources.KeywordPlanCampaign\x12\x64\n\x1dkeyword_plan_negative_keyword\x18\" \x01(\x0b\x32=.google.ads.googleads.v0.resources.KeywordPlanNegativeKeyword\x12T\n\x15keyword_plan_ad_group\x18# \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.KeywordPlanAdGroup\x12S\n\x14keyword_plan_keyword\x18$ \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.KeywordPlanKeyword\x12N\n\x11language_constant\x18\x37 \x01(\x0b\x32\x33.google.ads.googleads.v0.resources.LanguageConstant\x12W\n\x16managed_placement_view\x18\x35 \x01(\x0b\x32\x37.google.ads.googleads.v0.resources.ManagedPlacementView\x12S\n\x14parental_status_view\x18- \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.ParentalStatusView\x12O\n\x12product_group_view\x18\x36 \x01(\x0b\x32\x33.google.ads.googleads.v0.resources.ProductGroupView\x12I\n\x0erecommendation\x18\x16 \x01(\x0b\x32\x31.google.ads.googleads.v0.resources.Recommendation\x12K\n\x10search_term_view\x18\x44 \x01(\x0b\x32\x31.google.ads.googleads.v0.resources.SearchTermView\x12L\n\x10shared_criterion\x18\x1d \x01(\x0b\x32\x32.google.ads.googleads.v0.resources.SharedCriterion\x12@\n\nshared_set\x18\x1b \x01(\x0b\x32,.google.ads.googleads.v0.resources.SharedSet\x12@\n\ntopic_view\x18, \x01(\x0b\x32,.google.ads.googleads.v0.resources.TopicView\x12\x46\n\ruser_interest\x18; \x01(\x0b\x32/.google.ads.googleads.v0.resources.UserInterest\x12>\n\tuser_list\x18& \x01(\x0b\x32+.google.ads.googleads.v0.resources.UserList\x12H\n\x0etopic_constant\x18\x1f \x01(\x0b\x32\x30.google.ads.googleads.v0.resources.TopicConstant\x12\x37\n\x05video\x18\' \x01(\x0b\x32(.google.ads.googleads.v0.resources.Video\x12\x38\n\x07metrics\x18\x04 \x01(\x0b\x32\'.google.ads.googleads.v0.common.Metrics\x12W\n\x0f\x61\x64_network_type\x18\x05 \x01(\x0e\x32>.google.ads.googleads.v0.enums.AdNetworkTypeEnum.AdNetworkType\x12*\n\x04\x64\x61te\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12K\n\x0b\x64\x61y_of_week\x18\x07 \x01(\x0e\x32\x36.google.ads.googleads.v0.enums.DayOfWeekEnum.DayOfWeek\x12@\n\x06\x64\x65vice\x18\x08 \x01(\x0e\x32\x30.google.ads.googleads.v0.enums.DeviceEnum.Device\x12>\n\x19hotel_booking_window_days\x18S \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x34\n\x0fhotel_center_id\x18H \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x39\n\x13hotel_check_in_date\x18I \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12Z\n\x1ahotel_check_in_day_of_week\x18J \x01(\x0e\x32\x36.google.ads.googleads.v0.enums.DayOfWeekEnum.DayOfWeek\x12\x30\n\nhotel_city\x18K \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\x0bhotel_class\x18L \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12\x33\n\rhotel_country\x18M \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12s\n\x19hotel_date_selection_type\x18N \x01(\x0e\x32P.google.ads.googleads.v0.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType\x12\x39\n\x14hotel_length_of_stay\x18O \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12\x31\n\x0bhotel_state\x18Q \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x04hour\x18\t \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12+\n\x05month\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12Q\n\rmonth_of_year\x18\x1c \x01(\x0e\x32:.google.ads.googleads.v0.enums.MonthOfYearEnum.MonthOfYear\x12\x36\n\x10partner_hotel_id\x18R \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\\\n\x10placeholder_type\x18\x41 \x01(\x0e\x32\x42.google.ads.googleads.v0.enums.PlaceholderTypeEnum.PlaceholderType\x12-\n\x07quarter\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12j\n\x16search_term_match_type\x18\x38 \x01(\x0e\x32J.google.ads.googleads.v0.enums.SearchTermMatchTypeEnum.SearchTermMatchType\x12:\n\x04slot\x18\r \x01(\x0e\x32,.google.ads.googleads.v0.enums.SlotEnum.Slot\x12*\n\x04week\x18\x0e \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x04year\x18\x0f \x01(\x0b\x32\x1b.google.protobuf.Int32Value\"{\n\x16MutateGoogleAdsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12L\n\x11mutate_operations\x18\x02 \x03(\x0b\x32\x31.google.ads.googleads.v0.services.MutateOperation\"x\n\x17MutateGoogleAdsResponse\x12]\n\x1amutate_operation_responses\x18\x01 \x03(\x0b\x32\x39.google.ads.googleads.v0.services.MutateOperationResponse\"\xb1\x0b\n\x0fMutateOperation\x12U\n\x15\x61\x64_group_ad_operation\x18\x01 \x01(\x0b\x32\x34.google.ads.googleads.v0.services.AdGroupAdOperationH\x00\x12h\n\x1f\x61\x64_group_bid_modifier_operation\x18\x02 \x01(\x0b\x32=.google.ads.googleads.v0.services.AdGroupBidModifierOperationH\x00\x12\x63\n\x1c\x61\x64_group_criterion_operation\x18\x03 \x01(\x0b\x32;.google.ads.googleads.v0.services.AdGroupCriterionOperationH\x00\x12P\n\x12\x61\x64_group_operation\x18\x05 \x01(\x0b\x32\x32.google.ads.googleads.v0.services.AdGroupOperationH\x00\x12`\n\x1a\x62idding_strategy_operation\x18\x06 \x01(\x0b\x32:.google.ads.googleads.v0.services.BiddingStrategyOperationH\x00\x12i\n\x1f\x63\x61mpaign_bid_modifier_operation\x18\x07 \x01(\x0b\x32>.google.ads.googleads.v0.services.CampaignBidModifierOperationH\x00\x12^\n\x19\x63\x61mpaign_budget_operation\x18\x08 \x01(\x0b\x32\x39.google.ads.googleads.v0.services.CampaignBudgetOperationH\x00\x12\\\n\x18\x63\x61mpaign_group_operation\x18\t \x01(\x0b\x32\x38.google.ads.googleads.v0.services.CampaignGroupOperationH\x00\x12Q\n\x12\x63\x61mpaign_operation\x18\n \x01(\x0b\x32\x33.google.ads.googleads.v0.services.CampaignOperationH\x00\x12\x65\n\x1d\x63\x61mpaign_shared_set_operation\x18\x0b \x01(\x0b\x32<.google.ads.googleads.v0.services.CampaignSharedSetOperationH\x00\x12\x62\n\x1b\x63onversion_action_operation\x18\x0c \x01(\x0b\x32;.google.ads.googleads.v0.services.ConversionActionOperationH\x00\x12\x64\n\x1c\x63\x61mpaign_criterion_operation\x18\r \x01(\x0b\x32<.google.ads.googleads.v0.services.CampaignCriterionOperationH\x00\x12`\n\x1ashared_criterion_operation\x18\x0e \x01(\x0b\x32:.google.ads.googleads.v0.services.SharedCriterionOperationH\x00\x12T\n\x14shared_set_operation\x18\x0f \x01(\x0b\x32\x34.google.ads.googleads.v0.services.SharedSetOperationH\x00\x12R\n\x13user_list_operation\x18\x10 \x01(\x0b\x32\x33.google.ads.googleads.v0.services.UserListOperationH\x00\x42\x0b\n\toperation\"\xb8\x0b\n\x17MutateOperationResponse\x12U\n\x12\x61\x64_group_ad_result\x18\x01 \x01(\x0b\x32\x37.google.ads.googleads.v0.services.MutateAdGroupAdResultH\x00\x12h\n\x1c\x61\x64_group_bid_modifier_result\x18\x02 \x01(\x0b\x32@.google.ads.googleads.v0.services.MutateAdGroupBidModifierResultH\x00\x12\x63\n\x19\x61\x64_group_criterion_result\x18\x03 \x01(\x0b\x32>.google.ads.googleads.v0.services.MutateAdGroupCriterionResultH\x00\x12P\n\x0f\x61\x64_group_result\x18\x05 \x01(\x0b\x32\x35.google.ads.googleads.v0.services.MutateAdGroupResultH\x00\x12`\n\x17\x62idding_strategy_result\x18\x06 \x01(\x0b\x32=.google.ads.googleads.v0.services.MutateBiddingStrategyResultH\x00\x12i\n\x1c\x63\x61mpaign_bid_modifier_result\x18\x07 \x01(\x0b\x32\x41.google.ads.googleads.v0.services.MutateCampaignBidModifierResultH\x00\x12^\n\x16\x63\x61mpaign_budget_result\x18\x08 \x01(\x0b\x32<.google.ads.googleads.v0.services.MutateCampaignBudgetResultH\x00\x12\\\n\x15\x63\x61mpaign_group_result\x18\t \x01(\x0b\x32;.google.ads.googleads.v0.services.MutateCampaignGroupResultH\x00\x12Q\n\x0f\x63\x61mpaign_result\x18\n \x01(\x0b\x32\x36.google.ads.googleads.v0.services.MutateCampaignResultH\x00\x12\x65\n\x1a\x63\x61mpaign_shared_set_result\x18\x0b \x01(\x0b\x32?.google.ads.googleads.v0.services.MutateCampaignSharedSetResultH\x00\x12\x62\n\x18\x63onversion_action_result\x18\x0c \x01(\x0b\x32>.google.ads.googleads.v0.services.MutateConversionActionResultH\x00\x12\x64\n\x19\x63\x61mpaign_criterion_result\x18\r \x01(\x0b\x32?.google.ads.googleads.v0.services.MutateCampaignCriterionResultH\x00\x12`\n\x17shared_criterion_result\x18\x0e \x01(\x0b\x32=.google.ads.googleads.v0.services.MutateSharedCriterionResultH\x00\x12T\n\x11shared_set_result\x18\x0f \x01(\x0b\x32\x37.google.ads.googleads.v0.services.MutateSharedSetResultH\x00\x12R\n\x10user_list_result\x18\x10 \x01(\x0b\x32\x36.google.ads.googleads.v0.services.MutateUserListResultH\x00\x42\n\n\x08response2\x88\x03\n\x10GoogleAdsService\x12\xb8\x01\n\x06Search\x12\x38.google.ads.googleads.v0.services.SearchGoogleAdsRequest\x1a\x39.google.ads.googleads.v0.services.SearchGoogleAdsResponse\"9\x82\xd3\xe4\x93\x02\x33\"./v0/customers/{customer_id=*}/googleAds:search:\x01*\x12\xb8\x01\n\x06Mutate\x12\x38.google.ads.googleads.v0.services.MutateGoogleAdsRequest\x1a\x39.google.ads.googleads.v0.services.MutateGoogleAdsResponse\"9\x82\xd3\xe4\x93\x02\x33\"./v0/customers/{customer_id=*}/googleAds:mutate:\x01*B\xd5\x01\n$com.google.ads.googleads.v0.servicesB\x15GoogleAdsServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') , - dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_metrics__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__network__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_day__of__week__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_month__of__year__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_slot__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_account__budget__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_account__budget__proposal__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__ad__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__audience__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__bid__modifier__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__criterion__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_age__range__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_bidding__strategy__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_billing__setup__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__bid__modifier__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__budget__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__criterion__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__group__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__shared__set__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_change__status__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__link__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__manager__link__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_display__keyword__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_gender__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_geo__target__constant__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__group__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_managed__placement__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_parental__status__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_product__group__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_recommendation__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_shared__criterion__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_shared__set__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_topic__constant__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_topic__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_video__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_metrics__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_ad__network__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_day__of__week__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_hotel__date__selection__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_month__of__year__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_placeholder__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_search__term__match__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_slot__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_account__budget__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_account__budget__proposal__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__ad__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__audience__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__bid__modifier__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__criterion__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_age__range__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_bidding__strategy__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_billing__setup__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__bid__modifier__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__budget__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__criterion__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__group__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__shared__set__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_change__status__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__link__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__manager__link__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_display__keyword__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_gender__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_geo__target__constant__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__group__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_managed__placement__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_parental__status__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_product__group__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_recommendation__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_shared__criterion__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_shared__set__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_topic__constant__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_topic__view__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_video__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__ad__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__bid__modifier__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__criterion__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_bidding__strategy__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__bid__modifier__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__budget__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__criterion__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__group__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__shared__set__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_conversion__action__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_shared__criterion__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_shared__set__service__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) @@ -116,8 +153,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2674, - serialized_end=2773, + serialized_start=5124, + serialized_end=5223, ) @@ -168,8 +205,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2776, - serialized_end=2968, + serialized_start=5226, + serialized_end=5418, ) @@ -230,273 +267,497 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='age_range_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.age_range_view', index=7, + name='ad_group_feed', full_name='google.ads.googleads.v0.services.GoogleAdsRow.ad_group_feed', index=7, + number=67, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='age_range_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.age_range_view', index=8, number=48, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='bidding_strategy', full_name='google.ads.googleads.v0.services.GoogleAdsRow.bidding_strategy', index=8, + name='bidding_strategy', full_name='google.ads.googleads.v0.services.GoogleAdsRow.bidding_strategy', index=9, number=18, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='billing_setup', full_name='google.ads.googleads.v0.services.GoogleAdsRow.billing_setup', index=9, + name='billing_setup', full_name='google.ads.googleads.v0.services.GoogleAdsRow.billing_setup', index=10, number=41, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='campaign_budget', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_budget', index=10, + name='campaign_budget', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_budget', index=11, number=19, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='campaign', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign', index=11, + name='campaign', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign', index=12, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='campaign_bid_modifier', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_bid_modifier', index=12, + name='campaign_audience_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_audience_view', index=13, + number=69, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_bid_modifier', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_bid_modifier', index=14, number=26, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='campaign_criterion', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_criterion', index=13, + name='campaign_criterion', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_criterion', index=15, number=20, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='campaign_group', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_group', index=14, + name='campaign_feed', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_feed', index=16, + number=63, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_group', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_group', index=17, number=25, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='campaign_shared_set', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_shared_set', index=15, + name='campaign_shared_set', full_name='google.ads.googleads.v0.services.GoogleAdsRow.campaign_shared_set', index=18, number=30, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='change_status', full_name='google.ads.googleads.v0.services.GoogleAdsRow.change_status', index=16, + name='carrier_constant', full_name='google.ads.googleads.v0.services.GoogleAdsRow.carrier_constant', index=19, + number=66, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='change_status', full_name='google.ads.googleads.v0.services.GoogleAdsRow.change_status', index=20, number=37, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='customer', full_name='google.ads.googleads.v0.services.GoogleAdsRow.customer', index=17, + name='customer', full_name='google.ads.googleads.v0.services.GoogleAdsRow.customer', index=21, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='customer_manager_link', full_name='google.ads.googleads.v0.services.GoogleAdsRow.customer_manager_link', index=18, + name='customer_manager_link', full_name='google.ads.googleads.v0.services.GoogleAdsRow.customer_manager_link', index=22, number=61, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='customer_client_link', full_name='google.ads.googleads.v0.services.GoogleAdsRow.customer_client_link', index=19, + name='customer_client_link', full_name='google.ads.googleads.v0.services.GoogleAdsRow.customer_client_link', index=23, number=62, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='display_keyword_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.display_keyword_view', index=20, + name='customer_client', full_name='google.ads.googleads.v0.services.GoogleAdsRow.customer_client', index=24, + number=70, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='customer_feed', full_name='google.ads.googleads.v0.services.GoogleAdsRow.customer_feed', index=25, + number=64, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='display_keyword_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.display_keyword_view', index=26, number=47, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='gender_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.gender_view', index=21, + name='feed', full_name='google.ads.googleads.v0.services.GoogleAdsRow.feed', index=27, + number=46, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='feed_item', full_name='google.ads.googleads.v0.services.GoogleAdsRow.feed_item', index=28, + number=50, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='feed_mapping', full_name='google.ads.googleads.v0.services.GoogleAdsRow.feed_mapping', index=29, + number=58, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='gender_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.gender_view', index=30, number=40, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='geo_target_constant', full_name='google.ads.googleads.v0.services.GoogleAdsRow.geo_target_constant', index=22, + name='geo_target_constant', full_name='google.ads.googleads.v0.services.GoogleAdsRow.geo_target_constant', index=31, number=23, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='hotel_group_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_group_view', index=23, + name='hotel_group_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_group_view', index=32, number=51, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='keyword_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.keyword_view', index=24, + name='hotel_performance_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_performance_view', index=33, + number=71, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.keyword_view', index=34, number=21, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='managed_placement_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.managed_placement_view', index=25, + name='keyword_plan', full_name='google.ads.googleads.v0.services.GoogleAdsRow.keyword_plan', index=35, + number=32, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_campaign', full_name='google.ads.googleads.v0.services.GoogleAdsRow.keyword_plan_campaign', index=36, + number=33, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_negative_keyword', full_name='google.ads.googleads.v0.services.GoogleAdsRow.keyword_plan_negative_keyword', index=37, + number=34, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_ad_group', full_name='google.ads.googleads.v0.services.GoogleAdsRow.keyword_plan_ad_group', index=38, + number=35, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_keyword', full_name='google.ads.googleads.v0.services.GoogleAdsRow.keyword_plan_keyword', index=39, + number=36, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='language_constant', full_name='google.ads.googleads.v0.services.GoogleAdsRow.language_constant', index=40, + number=55, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='managed_placement_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.managed_placement_view', index=41, number=53, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='parental_status_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.parental_status_view', index=26, + name='parental_status_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.parental_status_view', index=42, number=45, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='product_group_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.product_group_view', index=27, + name='product_group_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.product_group_view', index=43, number=54, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='recommendation', full_name='google.ads.googleads.v0.services.GoogleAdsRow.recommendation', index=28, + name='recommendation', full_name='google.ads.googleads.v0.services.GoogleAdsRow.recommendation', index=44, number=22, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='shared_criterion', full_name='google.ads.googleads.v0.services.GoogleAdsRow.shared_criterion', index=29, + name='search_term_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.search_term_view', index=45, + number=68, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='shared_criterion', full_name='google.ads.googleads.v0.services.GoogleAdsRow.shared_criterion', index=46, number=29, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='shared_set', full_name='google.ads.googleads.v0.services.GoogleAdsRow.shared_set', index=30, + name='shared_set', full_name='google.ads.googleads.v0.services.GoogleAdsRow.shared_set', index=47, number=27, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='topic_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.topic_view', index=31, + name='topic_view', full_name='google.ads.googleads.v0.services.GoogleAdsRow.topic_view', index=48, number=44, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='topic_constant', full_name='google.ads.googleads.v0.services.GoogleAdsRow.topic_constant', index=32, + name='user_interest', full_name='google.ads.googleads.v0.services.GoogleAdsRow.user_interest', index=49, + number=59, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='user_list', full_name='google.ads.googleads.v0.services.GoogleAdsRow.user_list', index=50, + number=38, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='topic_constant', full_name='google.ads.googleads.v0.services.GoogleAdsRow.topic_constant', index=51, number=31, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='video', full_name='google.ads.googleads.v0.services.GoogleAdsRow.video', index=33, + name='video', full_name='google.ads.googleads.v0.services.GoogleAdsRow.video', index=52, number=39, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='metrics', full_name='google.ads.googleads.v0.services.GoogleAdsRow.metrics', index=34, + name='metrics', full_name='google.ads.googleads.v0.services.GoogleAdsRow.metrics', index=53, number=4, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='ad_network_type', full_name='google.ads.googleads.v0.services.GoogleAdsRow.ad_network_type', index=35, + name='ad_network_type', full_name='google.ads.googleads.v0.services.GoogleAdsRow.ad_network_type', index=54, number=5, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='date', full_name='google.ads.googleads.v0.services.GoogleAdsRow.date', index=36, + name='date', full_name='google.ads.googleads.v0.services.GoogleAdsRow.date', index=55, number=6, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='day_of_week', full_name='google.ads.googleads.v0.services.GoogleAdsRow.day_of_week', index=37, + name='day_of_week', full_name='google.ads.googleads.v0.services.GoogleAdsRow.day_of_week', index=56, number=7, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='device', full_name='google.ads.googleads.v0.services.GoogleAdsRow.device', index=38, + name='device', full_name='google.ads.googleads.v0.services.GoogleAdsRow.device', index=57, number=8, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='hour', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hour', index=39, + name='hotel_booking_window_days', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_booking_window_days', index=58, + number=83, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_center_id', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_center_id', index=59, + number=72, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_check_in_date', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_check_in_date', index=60, + number=73, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_check_in_day_of_week', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_check_in_day_of_week', index=61, + number=74, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_city', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_city', index=62, + number=75, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_class', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_class', index=63, + number=76, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_country', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_country', index=64, + number=77, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_date_selection_type', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_date_selection_type', index=65, + number=78, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_length_of_stay', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_length_of_stay', index=66, + number=79, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hotel_state', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hotel_state', index=67, + number=81, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hour', full_name='google.ads.googleads.v0.services.GoogleAdsRow.hour', index=68, number=9, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='month', full_name='google.ads.googleads.v0.services.GoogleAdsRow.month', index=40, + name='month', full_name='google.ads.googleads.v0.services.GoogleAdsRow.month', index=69, number=10, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='month_of_year', full_name='google.ads.googleads.v0.services.GoogleAdsRow.month_of_year', index=41, + name='month_of_year', full_name='google.ads.googleads.v0.services.GoogleAdsRow.month_of_year', index=70, number=28, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='quarter', full_name='google.ads.googleads.v0.services.GoogleAdsRow.quarter', index=42, + name='partner_hotel_id', full_name='google.ads.googleads.v0.services.GoogleAdsRow.partner_hotel_id', index=71, + number=82, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='placeholder_type', full_name='google.ads.googleads.v0.services.GoogleAdsRow.placeholder_type', index=72, + number=65, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='quarter', full_name='google.ads.googleads.v0.services.GoogleAdsRow.quarter', index=73, number=12, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='slot', full_name='google.ads.googleads.v0.services.GoogleAdsRow.slot', index=43, + name='search_term_match_type', full_name='google.ads.googleads.v0.services.GoogleAdsRow.search_term_match_type', index=74, + number=56, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='slot', full_name='google.ads.googleads.v0.services.GoogleAdsRow.slot', index=75, number=13, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='week', full_name='google.ads.googleads.v0.services.GoogleAdsRow.week', index=44, + name='week', full_name='google.ads.googleads.v0.services.GoogleAdsRow.week', index=76, number=14, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='year', full_name='google.ads.googleads.v0.services.GoogleAdsRow.year', index=45, + name='year', full_name='google.ads.googleads.v0.services.GoogleAdsRow.year', index=77, number=15, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -514,8 +775,341 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2971, - serialized_end=6282, + serialized_start=5421, + serialized_end=11098, +) + + +_MUTATEGOOGLEADSREQUEST = _descriptor.Descriptor( + name='MutateGoogleAdsRequest', + full_name='google.ads.googleads.v0.services.MutateGoogleAdsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateGoogleAdsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='mutate_operations', full_name='google.ads.googleads.v0.services.MutateGoogleAdsRequest.mutate_operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=11100, + serialized_end=11223, +) + + +_MUTATEGOOGLEADSRESPONSE = _descriptor.Descriptor( + name='MutateGoogleAdsResponse', + full_name='google.ads.googleads.v0.services.MutateGoogleAdsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='mutate_operation_responses', full_name='google.ads.googleads.v0.services.MutateGoogleAdsResponse.mutate_operation_responses', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=11225, + serialized_end=11345, +) + + +_MUTATEOPERATION = _descriptor.Descriptor( + name='MutateOperation', + full_name='google.ads.googleads.v0.services.MutateOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='ad_group_ad_operation', full_name='google.ads.googleads.v0.services.MutateOperation.ad_group_ad_operation', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_bid_modifier_operation', full_name='google.ads.googleads.v0.services.MutateOperation.ad_group_bid_modifier_operation', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_criterion_operation', full_name='google.ads.googleads.v0.services.MutateOperation.ad_group_criterion_operation', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_operation', full_name='google.ads.googleads.v0.services.MutateOperation.ad_group_operation', index=3, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='bidding_strategy_operation', full_name='google.ads.googleads.v0.services.MutateOperation.bidding_strategy_operation', index=4, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_bid_modifier_operation', full_name='google.ads.googleads.v0.services.MutateOperation.campaign_bid_modifier_operation', index=5, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_budget_operation', full_name='google.ads.googleads.v0.services.MutateOperation.campaign_budget_operation', index=6, + number=8, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_group_operation', full_name='google.ads.googleads.v0.services.MutateOperation.campaign_group_operation', index=7, + number=9, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_operation', full_name='google.ads.googleads.v0.services.MutateOperation.campaign_operation', index=8, + number=10, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_shared_set_operation', full_name='google.ads.googleads.v0.services.MutateOperation.campaign_shared_set_operation', index=9, + number=11, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='conversion_action_operation', full_name='google.ads.googleads.v0.services.MutateOperation.conversion_action_operation', index=10, + number=12, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_criterion_operation', full_name='google.ads.googleads.v0.services.MutateOperation.campaign_criterion_operation', index=11, + number=13, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='shared_criterion_operation', full_name='google.ads.googleads.v0.services.MutateOperation.shared_criterion_operation', index=12, + number=14, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='shared_set_operation', full_name='google.ads.googleads.v0.services.MutateOperation.shared_set_operation', index=13, + number=15, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='user_list_operation', full_name='google.ads.googleads.v0.services.MutateOperation.user_list_operation', index=14, + number=16, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.MutateOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=11348, + serialized_end=12805, +) + + +_MUTATEOPERATIONRESPONSE = _descriptor.Descriptor( + name='MutateOperationResponse', + full_name='google.ads.googleads.v0.services.MutateOperationResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='ad_group_ad_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.ad_group_ad_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_bid_modifier_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.ad_group_bid_modifier_result', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_criterion_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.ad_group_criterion_result', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.ad_group_result', index=3, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='bidding_strategy_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.bidding_strategy_result', index=4, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_bid_modifier_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.campaign_bid_modifier_result', index=5, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_budget_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.campaign_budget_result', index=6, + number=8, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_group_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.campaign_group_result', index=7, + number=9, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.campaign_result', index=8, + number=10, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_shared_set_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.campaign_shared_set_result', index=9, + number=11, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='conversion_action_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.conversion_action_result', index=10, + number=12, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_criterion_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.campaign_criterion_result', index=11, + number=13, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='shared_criterion_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.shared_criterion_result', index=12, + number=14, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='shared_set_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.shared_set_result', index=13, + number=15, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='user_list_result', full_name='google.ads.googleads.v0.services.MutateOperationResponse.user_list_result', index=14, + number=16, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='response', full_name='google.ads.googleads.v0.services.MutateOperationResponse.response', + index=0, containing_type=None, fields=[]), + ], + serialized_start=12808, + serialized_end=14272, ) _SEARCHGOOGLEADSRESPONSE.fields_by_name['results'].message_type = _GOOGLEADSROW @@ -527,31 +1121,50 @@ _GOOGLEADSROW.fields_by_name['ad_group_audience_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__audience__view__pb2._ADGROUPAUDIENCEVIEW _GOOGLEADSROW.fields_by_name['ad_group_bid_modifier'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__bid__modifier__pb2._ADGROUPBIDMODIFIER _GOOGLEADSROW.fields_by_name['ad_group_criterion'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__criterion__pb2._ADGROUPCRITERION +_GOOGLEADSROW.fields_by_name['ad_group_feed'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__group__feed__pb2._ADGROUPFEED _GOOGLEADSROW.fields_by_name['age_range_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_age__range__view__pb2._AGERANGEVIEW _GOOGLEADSROW.fields_by_name['bidding_strategy'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_bidding__strategy__pb2._BIDDINGSTRATEGY _GOOGLEADSROW.fields_by_name['billing_setup'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_billing__setup__pb2._BILLINGSETUP _GOOGLEADSROW.fields_by_name['campaign_budget'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__budget__pb2._CAMPAIGNBUDGET _GOOGLEADSROW.fields_by_name['campaign'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__pb2._CAMPAIGN +_GOOGLEADSROW.fields_by_name['campaign_audience_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__audience__view__pb2._CAMPAIGNAUDIENCEVIEW _GOOGLEADSROW.fields_by_name['campaign_bid_modifier'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__bid__modifier__pb2._CAMPAIGNBIDMODIFIER _GOOGLEADSROW.fields_by_name['campaign_criterion'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__criterion__pb2._CAMPAIGNCRITERION +_GOOGLEADSROW.fields_by_name['campaign_feed'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__feed__pb2._CAMPAIGNFEED _GOOGLEADSROW.fields_by_name['campaign_group'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__group__pb2._CAMPAIGNGROUP _GOOGLEADSROW.fields_by_name['campaign_shared_set'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_campaign__shared__set__pb2._CAMPAIGNSHAREDSET +_GOOGLEADSROW.fields_by_name['carrier_constant'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_carrier__constant__pb2._CARRIERCONSTANT _GOOGLEADSROW.fields_by_name['change_status'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_change__status__pb2._CHANGESTATUS _GOOGLEADSROW.fields_by_name['customer'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__pb2._CUSTOMER _GOOGLEADSROW.fields_by_name['customer_manager_link'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__manager__link__pb2._CUSTOMERMANAGERLINK _GOOGLEADSROW.fields_by_name['customer_client_link'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__link__pb2._CUSTOMERCLIENTLINK +_GOOGLEADSROW.fields_by_name['customer_client'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__client__pb2._CUSTOMERCLIENT +_GOOGLEADSROW.fields_by_name['customer_feed'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_customer__feed__pb2._CUSTOMERFEED _GOOGLEADSROW.fields_by_name['display_keyword_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_display__keyword__view__pb2._DISPLAYKEYWORDVIEW +_GOOGLEADSROW.fields_by_name['feed'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__pb2._FEED +_GOOGLEADSROW.fields_by_name['feed_item'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__item__pb2._FEEDITEM +_GOOGLEADSROW.fields_by_name['feed_mapping'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_feed__mapping__pb2._FEEDMAPPING _GOOGLEADSROW.fields_by_name['gender_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_gender__view__pb2._GENDERVIEW _GOOGLEADSROW.fields_by_name['geo_target_constant'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_geo__target__constant__pb2._GEOTARGETCONSTANT _GOOGLEADSROW.fields_by_name['hotel_group_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__group__view__pb2._HOTELGROUPVIEW +_GOOGLEADSROW.fields_by_name['hotel_performance_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2._HOTELPERFORMANCEVIEW _GOOGLEADSROW.fields_by_name['keyword_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__view__pb2._KEYWORDVIEW +_GOOGLEADSROW.fields_by_name['keyword_plan'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2._KEYWORDPLAN +_GOOGLEADSROW.fields_by_name['keyword_plan_campaign'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2._KEYWORDPLANCAMPAIGN +_GOOGLEADSROW.fields_by_name['keyword_plan_negative_keyword'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2._KEYWORDPLANNEGATIVEKEYWORD +_GOOGLEADSROW.fields_by_name['keyword_plan_ad_group'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2._KEYWORDPLANADGROUP +_GOOGLEADSROW.fields_by_name['keyword_plan_keyword'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2._KEYWORDPLANKEYWORD +_GOOGLEADSROW.fields_by_name['language_constant'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2._LANGUAGECONSTANT _GOOGLEADSROW.fields_by_name['managed_placement_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_managed__placement__view__pb2._MANAGEDPLACEMENTVIEW _GOOGLEADSROW.fields_by_name['parental_status_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_parental__status__view__pb2._PARENTALSTATUSVIEW _GOOGLEADSROW.fields_by_name['product_group_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_product__group__view__pb2._PRODUCTGROUPVIEW _GOOGLEADSROW.fields_by_name['recommendation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_recommendation__pb2._RECOMMENDATION +_GOOGLEADSROW.fields_by_name['search_term_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2._SEARCHTERMVIEW _GOOGLEADSROW.fields_by_name['shared_criterion'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_shared__criterion__pb2._SHAREDCRITERION _GOOGLEADSROW.fields_by_name['shared_set'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_shared__set__pb2._SHAREDSET _GOOGLEADSROW.fields_by_name['topic_view'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_topic__view__pb2._TOPICVIEW +_GOOGLEADSROW.fields_by_name['user_interest'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2._USERINTEREST +_GOOGLEADSROW.fields_by_name['user_list'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2._USERLIST _GOOGLEADSROW.fields_by_name['topic_constant'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_topic__constant__pb2._TOPICCONSTANT _GOOGLEADSROW.fields_by_name['video'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_video__pb2._VIDEO _GOOGLEADSROW.fields_by_name['metrics'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_metrics__pb2._METRICS @@ -559,21 +1172,160 @@ _GOOGLEADSROW.fields_by_name['date'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _GOOGLEADSROW.fields_by_name['day_of_week'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_day__of__week__pb2._DAYOFWEEKENUM_DAYOFWEEK _GOOGLEADSROW.fields_by_name['device'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_device__pb2._DEVICEENUM_DEVICE +_GOOGLEADSROW.fields_by_name['hotel_booking_window_days'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_GOOGLEADSROW.fields_by_name['hotel_center_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_GOOGLEADSROW.fields_by_name['hotel_check_in_date'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GOOGLEADSROW.fields_by_name['hotel_check_in_day_of_week'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_day__of__week__pb2._DAYOFWEEKENUM_DAYOFWEEK +_GOOGLEADSROW.fields_by_name['hotel_city'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GOOGLEADSROW.fields_by_name['hotel_class'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT32VALUE +_GOOGLEADSROW.fields_by_name['hotel_country'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GOOGLEADSROW.fields_by_name['hotel_date_selection_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_hotel__date__selection__type__pb2._HOTELDATESELECTIONTYPEENUM_HOTELDATESELECTIONTYPE +_GOOGLEADSROW.fields_by_name['hotel_length_of_stay'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT32VALUE +_GOOGLEADSROW.fields_by_name['hotel_state'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _GOOGLEADSROW.fields_by_name['hour'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT32VALUE _GOOGLEADSROW.fields_by_name['month'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _GOOGLEADSROW.fields_by_name['month_of_year'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_month__of__year__pb2._MONTHOFYEARENUM_MONTHOFYEAR +_GOOGLEADSROW.fields_by_name['partner_hotel_id'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GOOGLEADSROW.fields_by_name['placeholder_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_placeholder__type__pb2._PLACEHOLDERTYPEENUM_PLACEHOLDERTYPE _GOOGLEADSROW.fields_by_name['quarter'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GOOGLEADSROW.fields_by_name['search_term_match_type'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_search__term__match__type__pb2._SEARCHTERMMATCHTYPEENUM_SEARCHTERMMATCHTYPE _GOOGLEADSROW.fields_by_name['slot'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_slot__pb2._SLOTENUM_SLOT _GOOGLEADSROW.fields_by_name['week'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE _GOOGLEADSROW.fields_by_name['year'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT32VALUE +_MUTATEGOOGLEADSREQUEST.fields_by_name['mutate_operations'].message_type = _MUTATEOPERATION +_MUTATEGOOGLEADSRESPONSE.fields_by_name['mutate_operation_responses'].message_type = _MUTATEOPERATIONRESPONSE +_MUTATEOPERATION.fields_by_name['ad_group_ad_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__ad__service__pb2._ADGROUPADOPERATION +_MUTATEOPERATION.fields_by_name['ad_group_bid_modifier_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__bid__modifier__service__pb2._ADGROUPBIDMODIFIEROPERATION +_MUTATEOPERATION.fields_by_name['ad_group_criterion_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__criterion__service__pb2._ADGROUPCRITERIONOPERATION +_MUTATEOPERATION.fields_by_name['ad_group_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__service__pb2._ADGROUPOPERATION +_MUTATEOPERATION.fields_by_name['bidding_strategy_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_bidding__strategy__service__pb2._BIDDINGSTRATEGYOPERATION +_MUTATEOPERATION.fields_by_name['campaign_bid_modifier_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__bid__modifier__service__pb2._CAMPAIGNBIDMODIFIEROPERATION +_MUTATEOPERATION.fields_by_name['campaign_budget_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__budget__service__pb2._CAMPAIGNBUDGETOPERATION +_MUTATEOPERATION.fields_by_name['campaign_group_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__group__service__pb2._CAMPAIGNGROUPOPERATION +_MUTATEOPERATION.fields_by_name['campaign_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__service__pb2._CAMPAIGNOPERATION +_MUTATEOPERATION.fields_by_name['campaign_shared_set_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__shared__set__service__pb2._CAMPAIGNSHAREDSETOPERATION +_MUTATEOPERATION.fields_by_name['conversion_action_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_conversion__action__service__pb2._CONVERSIONACTIONOPERATION +_MUTATEOPERATION.fields_by_name['campaign_criterion_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__criterion__service__pb2._CAMPAIGNCRITERIONOPERATION +_MUTATEOPERATION.fields_by_name['shared_criterion_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_shared__criterion__service__pb2._SHAREDCRITERIONOPERATION +_MUTATEOPERATION.fields_by_name['shared_set_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_shared__set__service__pb2._SHAREDSETOPERATION +_MUTATEOPERATION.fields_by_name['user_list_operation'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2._USERLISTOPERATION +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['ad_group_ad_operation']) +_MUTATEOPERATION.fields_by_name['ad_group_ad_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['ad_group_bid_modifier_operation']) +_MUTATEOPERATION.fields_by_name['ad_group_bid_modifier_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['ad_group_criterion_operation']) +_MUTATEOPERATION.fields_by_name['ad_group_criterion_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['ad_group_operation']) +_MUTATEOPERATION.fields_by_name['ad_group_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['bidding_strategy_operation']) +_MUTATEOPERATION.fields_by_name['bidding_strategy_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['campaign_bid_modifier_operation']) +_MUTATEOPERATION.fields_by_name['campaign_bid_modifier_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['campaign_budget_operation']) +_MUTATEOPERATION.fields_by_name['campaign_budget_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['campaign_group_operation']) +_MUTATEOPERATION.fields_by_name['campaign_group_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['campaign_operation']) +_MUTATEOPERATION.fields_by_name['campaign_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['campaign_shared_set_operation']) +_MUTATEOPERATION.fields_by_name['campaign_shared_set_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['conversion_action_operation']) +_MUTATEOPERATION.fields_by_name['conversion_action_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['campaign_criterion_operation']) +_MUTATEOPERATION.fields_by_name['campaign_criterion_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['shared_criterion_operation']) +_MUTATEOPERATION.fields_by_name['shared_criterion_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['shared_set_operation']) +_MUTATEOPERATION.fields_by_name['shared_set_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATION.oneofs_by_name['operation'].fields.append( + _MUTATEOPERATION.fields_by_name['user_list_operation']) +_MUTATEOPERATION.fields_by_name['user_list_operation'].containing_oneof = _MUTATEOPERATION.oneofs_by_name['operation'] +_MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_ad_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__ad__service__pb2._MUTATEADGROUPADRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_bid_modifier_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__bid__modifier__service__pb2._MUTATEADGROUPBIDMODIFIERRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_criterion_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__criterion__service__pb2._MUTATEADGROUPCRITERIONRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_ad__group__service__pb2._MUTATEADGROUPRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['bidding_strategy_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_bidding__strategy__service__pb2._MUTATEBIDDINGSTRATEGYRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_bid_modifier_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__bid__modifier__service__pb2._MUTATECAMPAIGNBIDMODIFIERRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_budget_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__budget__service__pb2._MUTATECAMPAIGNBUDGETRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_group_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__group__service__pb2._MUTATECAMPAIGNGROUPRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__service__pb2._MUTATECAMPAIGNRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_shared_set_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__shared__set__service__pb2._MUTATECAMPAIGNSHAREDSETRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['conversion_action_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_conversion__action__service__pb2._MUTATECONVERSIONACTIONRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_criterion_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_campaign__criterion__service__pb2._MUTATECAMPAIGNCRITERIONRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['shared_criterion_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_shared__criterion__service__pb2._MUTATESHAREDCRITERIONRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['shared_set_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_shared__set__service__pb2._MUTATESHAREDSETRESULT +_MUTATEOPERATIONRESPONSE.fields_by_name['user_list_result'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2._MUTATEUSERLISTRESULT +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_ad_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_ad_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_bid_modifier_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_bid_modifier_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_criterion_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_criterion_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['ad_group_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['bidding_strategy_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['bidding_strategy_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['campaign_bid_modifier_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_bid_modifier_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['campaign_budget_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_budget_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['campaign_group_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_group_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['campaign_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['campaign_shared_set_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_shared_set_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['conversion_action_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['conversion_action_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['campaign_criterion_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['campaign_criterion_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['shared_criterion_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['shared_criterion_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['shared_set_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['shared_set_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] +_MUTATEOPERATIONRESPONSE.oneofs_by_name['response'].fields.append( + _MUTATEOPERATIONRESPONSE.fields_by_name['user_list_result']) +_MUTATEOPERATIONRESPONSE.fields_by_name['user_list_result'].containing_oneof = _MUTATEOPERATIONRESPONSE.oneofs_by_name['response'] DESCRIPTOR.message_types_by_name['SearchGoogleAdsRequest'] = _SEARCHGOOGLEADSREQUEST DESCRIPTOR.message_types_by_name['SearchGoogleAdsResponse'] = _SEARCHGOOGLEADSRESPONSE DESCRIPTOR.message_types_by_name['GoogleAdsRow'] = _GOOGLEADSROW +DESCRIPTOR.message_types_by_name['MutateGoogleAdsRequest'] = _MUTATEGOOGLEADSREQUEST +DESCRIPTOR.message_types_by_name['MutateGoogleAdsResponse'] = _MUTATEGOOGLEADSRESPONSE +DESCRIPTOR.message_types_by_name['MutateOperation'] = _MUTATEOPERATION +DESCRIPTOR.message_types_by_name['MutateOperationResponse'] = _MUTATEOPERATIONRESPONSE _sym_db.RegisterFileDescriptor(DESCRIPTOR) SearchGoogleAdsRequest = _reflection.GeneratedProtocolMessageType('SearchGoogleAdsRequest', (_message.Message,), dict( DESCRIPTOR = _SEARCHGOOGLEADSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.google_ads_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_service_pb2' , __doc__ = """Request message for [GoogleAdsService.Search][google.ads.googleads.v0.services.GoogleAdsService.Search]. @@ -600,7 +1352,7 @@ SearchGoogleAdsResponse = _reflection.GeneratedProtocolMessageType('SearchGoogleAdsResponse', (_message.Message,), dict( DESCRIPTOR = _SEARCHGOOGLEADSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.google_ads_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_service_pb2' , __doc__ = """Response message for [GoogleAdsService.Search][google.ads.googleads.v0.services.GoogleAdsService.Search]. @@ -627,7 +1379,7 @@ GoogleAdsRow = _reflection.GeneratedProtocolMessageType('GoogleAdsRow', (_message.Message,), dict( DESCRIPTOR = _GOOGLEADSROW, - __module__ = 'google.ads.googleads_v0.proto.services.google_ads_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_service_pb2' , __doc__ = """A returned row from the query. @@ -647,6 +1399,8 @@ The bid modifier referenced in the query. ad_group_criterion: The criterion referenced in the query. + ad_group_feed: + The ad group feed referenced in the query. age_range_view: The age range view referenced in the query. bidding_strategy: @@ -657,14 +1411,20 @@ The campaign budget referenced in the query. campaign: The campaign referenced in the query. + campaign_audience_view: + The campaign audience view referenced in the query. campaign_bid_modifier: The campaign bid modifier referenced in the query. campaign_criterion: The campaign criterion referenced in the query. + campaign_feed: + The campaign feed referenced in the query. campaign_group: Campaign Group referenced in AWQL query. campaign_shared_set: Campaign Shared Set referenced in AWQL query. + carrier_constant: + The carrier constant referenced in the query. change_status: The ChangeStatus referenced in the query. customer: @@ -673,16 +1433,40 @@ The CustomerManagerLink referenced in the query. customer_client_link: The CustomerClientLink referenced in the query. + customer_client: + The CustomerClient referenced in the query. + customer_feed: + The customer feed referenced in the query. display_keyword_view: The display keyword view referenced in the query. + feed: + The feed referenced in the query. + feed_item: + The feed item referenced in the query. + feed_mapping: + The feed mapping referenced in the query. gender_view: The gender view referenced in the query. geo_target_constant: The geo target constant referenced in the query. hotel_group_view: The hotel group view referenced in the query. + hotel_performance_view: + The hotel performance view referenced in the query. keyword_view: The keyword view referenced in the query. + keyword_plan: + The keyword plan referenced in the query. + keyword_plan_campaign: + The keyword plan campaign referenced in the query. + keyword_plan_negative_keyword: + The keyword plan negative keyword referenced in the query. + keyword_plan_ad_group: + The keyword plan ad group referenced in the query. + keyword_plan_keyword: + The keyword plan keyword referenced in the query. + language_constant: + The language constant referenced in the query. managed_placement_view: The managed placement view referenced in the query. parental_status_view: @@ -691,12 +1475,18 @@ The product group view referenced in the query. recommendation: The recommendation referenced in the query. + search_term_view: + The search term view referenced in the query. shared_criterion: The shared set referenced in the query. shared_set: The shared set referenced in the query. topic_view: The topic view referenced in the query. + user_interest: + The user interest referenced in the query. + user_list: + The user list referenced in the query. topic_constant: The topic constant referenced in the query. video: @@ -712,6 +1502,26 @@ Day of the week, e.g., MONDAY. device: Device to which metrics apply. + hotel_booking_window_days: + Hotel booking window in days. + hotel_center_id: + Hotel center ID. + hotel_check_in_date: + Hotel check-in date. Formatted as yyyy-MM-dd. + hotel_check_in_day_of_week: + Hotel check-in day of week. + hotel_city: + Hotel city. + hotel_class: + Hotel class. + hotel_country: + Hotel country. + hotel_date_selection_type: + Hotel date selection type. + hotel_length_of_stay: + Hotel length of stay. + hotel_state: + Hotel state. hour: Hour of day as a number between 0 and 23, inclusive. month: @@ -719,10 +1529,17 @@ Formatted as yyyy-MM-dd. month_of_year: Month of the year, e.g., January. + partner_hotel_id: + Partner hotel ID. + placeholder_type: + Placeholder type. This is only used with feed item metrics. quarter: Quarter as represented by the date of the first day of a quarter. Uses the calendar year for quarters, e.g., the second quarter of 2018 starts on 2018-04-01. Formatted as yyyy-MM-dd. + search_term_match_type: + Match type of the keyword that triggered the ad, including + variants. slot: Position of the ad. week: @@ -735,6 +1552,130 @@ )) _sym_db.RegisterMessage(GoogleAdsRow) +MutateGoogleAdsRequest = _reflection.GeneratedProtocolMessageType('MutateGoogleAdsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEGOOGLEADSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_service_pb2' + , + __doc__ = """Request message for + [GoogleAdsService.Mutate][google.ads.googleads.v0.services.GoogleAdsService.Mutate]. + + + Attributes: + customer_id: + The ID of the customer whose resources are being modified. + mutate_operations: + The list of operations to perform on individual resources. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateGoogleAdsRequest) + )) +_sym_db.RegisterMessage(MutateGoogleAdsRequest) + +MutateGoogleAdsResponse = _reflection.GeneratedProtocolMessageType('MutateGoogleAdsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEGOOGLEADSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_service_pb2' + , + __doc__ = """Response message for + [GoogleAdsService.Mutate][google.ads.googleads.v0.services.GoogleAdsService.Mutate]. + + + Attributes: + mutate_operation_responses: + All responses for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateGoogleAdsResponse) + )) +_sym_db.RegisterMessage(MutateGoogleAdsResponse) + +MutateOperation = _reflection.GeneratedProtocolMessageType('MutateOperation', (_message.Message,), dict( + DESCRIPTOR = _MUTATEOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on a resource. + + + Attributes: + operation: + The mutate operation. + ad_group_ad_operation: + An ad group ad mutate operation. + ad_group_bid_modifier_operation: + An ad group bid modifier mutate operation. + ad_group_criterion_operation: + An ad group criterion mutate operation. + ad_group_operation: + An ad group mutate operation. + bidding_strategy_operation: + A bidding strategy mutate operation. + campaign_bid_modifier_operation: + A campaign bid modifier mutate operation. + campaign_budget_operation: + A campaign budget mutate operation. + campaign_group_operation: + A campaign group mutate operation. + campaign_operation: + A campaign mutate operation. + campaign_shared_set_operation: + A campaign shared set mutate operation. + conversion_action_operation: + A conversion action mutate operation. + campaign_criterion_operation: + A campaign criterion mutate operation. + shared_criterion_operation: + A shared criterion mutate operation. + shared_set_operation: + A shared set mutate operation. + user_list_operation: + A user list mutate operation. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateOperation) + )) +_sym_db.RegisterMessage(MutateOperation) + +MutateOperationResponse = _reflection.GeneratedProtocolMessageType('MutateOperationResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEOPERATIONRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.google_ads_service_pb2' + , + __doc__ = """Response message for the resource mutate. + + + Attributes: + response: + The mutate response + ad_group_ad_result: + The result for the ad group ad mutate. + ad_group_bid_modifier_result: + The result for the ad group bid modifier mutate. + ad_group_criterion_result: + The result for the ad group criterion mutate. + ad_group_result: + The result for the ad group mutate. + bidding_strategy_result: + The result for the bidding strategy mutate. + campaign_bid_modifier_result: + The result for the campaign bid modifier mutate. + campaign_budget_result: + The result for the campaign budget mutate. + campaign_group_result: + The result for the campaign group mutate. + campaign_result: + The result for the campaign mutate. + campaign_shared_set_result: + The result for the campaign shared set mutate. + conversion_action_result: + The result for the conversion action mutate. + campaign_criterion_result: + The result for the campaign criterion mutate. + shared_criterion_result: + The result for the shared criterion mutate. + shared_set_result: + The result for the shared set mutate. + user_list_result: + The result for the user list mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateOperationResponse) + )) +_sym_db.RegisterMessage(MutateOperationResponse) + DESCRIPTOR.has_options = True DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\025GoogleAdsServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) @@ -745,8 +1686,8 @@ file=DESCRIPTOR, index=0, options=None, - serialized_start=6285, - serialized_end=6490, + serialized_start=14275, + serialized_end=14667, methods=[ _descriptor.MethodDescriptor( name='Search', @@ -757,6 +1698,15 @@ output_type=_SEARCHGOOGLEADSRESPONSE, options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0023\"./v0/customers/{customer_id=*}/googleAds:search:\001*')), ), + _descriptor.MethodDescriptor( + name='Mutate', + full_name='google.ads.googleads.v0.services.GoogleAdsService.Mutate', + index=1, + containing_service=None, + input_type=_MUTATEGOOGLEADSREQUEST, + output_type=_MUTATEGOOGLEADSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0023\"./v0/customers/{customer_id=*}/googleAds:mutate:\001*')), + ), ]) _sym_db.RegisterServiceDescriptor(_GOOGLEADSSERVICE) diff --git a/google/ads/google_ads/v0/proto/services/google_ads_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/google_ads_service_pb2_grpc.py index c20496af3..3d5265ee5 100644 --- a/google/ads/google_ads/v0/proto/services/google_ads_service_pb2_grpc.py +++ b/google/ads/google_ads/v0/proto/services/google_ads_service_pb2_grpc.py @@ -19,6 +19,11 @@ def __init__(self, channel): request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_google__ads__service__pb2.SearchGoogleAdsRequest.SerializeToString, response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_google__ads__service__pb2.SearchGoogleAdsResponse.FromString, ) + self.Mutate = channel.unary_unary( + '/google.ads.googleads.v0.services.GoogleAdsService/Mutate', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_google__ads__service__pb2.MutateGoogleAdsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_google__ads__service__pb2.MutateGoogleAdsResponse.FromString, + ) class GoogleAdsServiceServicer(object): @@ -32,6 +37,13 @@ def Search(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def Mutate(self, request, context): + """Creates, updates, or removes resources. Operation statuses are returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def add_GoogleAdsServiceServicer_to_server(servicer, server): rpc_method_handlers = { @@ -40,6 +52,11 @@ def add_GoogleAdsServiceServicer_to_server(servicer, server): request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_google__ads__service__pb2.SearchGoogleAdsRequest.FromString, response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_google__ads__service__pb2.SearchGoogleAdsResponse.SerializeToString, ), + 'Mutate': grpc.unary_unary_rpc_method_handler( + servicer.Mutate, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_google__ads__service__pb2.MutateGoogleAdsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_google__ads__service__pb2.MutateGoogleAdsResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( 'google.ads.googleads.v0.services.GoogleAdsService', rpc_method_handlers) diff --git a/google/ads/google_ads/v0/proto/services/hotel_group_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/hotel_group_view_service_pb2.py index 22c1ac0b4..5a5abacb8 100644 --- a/google/ads/google_ads/v0/proto/services/hotel_group_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/hotel_group_view_service_pb2.py @@ -63,7 +63,7 @@ GetHotelGroupViewRequest = _reflection.GeneratedProtocolMessageType('GetHotelGroupViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETHOTELGROUPVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.hotel_group_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.hotel_group_view_service_pb2' , __doc__ = """Request message for [HotelGroupViewService.GetHotelGroupView][google.ads.googleads.v0.services.HotelGroupViewService.GetHotelGroupView]. diff --git a/google/ads/google_ads/v0/proto/services/hotel_performance_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/hotel_performance_view_service_pb2.py new file mode 100644 index 000000000..11e952d01 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/hotel_performance_view_service_pb2.py @@ -0,0 +1,107 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/hotel_performance_view_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import hotel_performance_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/hotel_performance_view_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nKgoogle/ads/googleads_v0/proto/services/hotel_performance_view_service.proto\x12 google.ads.googleads.v0.services\x1a\x44google/ads/googleads_v0/proto/resources/hotel_performance_view.proto\x1a\x1cgoogle/api/annotations.proto\"7\n\x1eGetHotelPerformanceViewRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xf2\x01\n\x1bHotelPerformanceViewService\x12\xd2\x01\n\x17GetHotelPerformanceView\x12@.google.ads.googleads.v0.services.GetHotelPerformanceViewRequest\x1a\x37.google.ads.googleads.v0.resources.HotelPerformanceView\"<\x82\xd3\xe4\x93\x02\x36\x12\x34/v0/{resource_name=customers/*/hotelPerformanceView}B\xe0\x01\n$com.google.ads.googleads.v0.servicesB HotelPerformanceViewServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_GETHOTELPERFORMANCEVIEWREQUEST = _descriptor.Descriptor( + name='GetHotelPerformanceViewRequest', + full_name='google.ads.googleads.v0.services.GetHotelPerformanceViewRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetHotelPerformanceViewRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=213, + serialized_end=268, +) + +DESCRIPTOR.message_types_by_name['GetHotelPerformanceViewRequest'] = _GETHOTELPERFORMANCEVIEWREQUEST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetHotelPerformanceViewRequest = _reflection.GeneratedProtocolMessageType('GetHotelPerformanceViewRequest', (_message.Message,), dict( + DESCRIPTOR = _GETHOTELPERFORMANCEVIEWREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.hotel_performance_view_service_pb2' + , + __doc__ = """Request message for + [HotelPerformanceViewService.GetHotelPerformanceView][google.ads.googleads.v0.services.HotelPerformanceViewService.GetHotelPerformanceView]. + + + Attributes: + resource_name: + Resource name of the Hotel Performance View to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetHotelPerformanceViewRequest) + )) +_sym_db.RegisterMessage(GetHotelPerformanceViewRequest) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB HotelPerformanceViewServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_HOTELPERFORMANCEVIEWSERVICE = _descriptor.ServiceDescriptor( + name='HotelPerformanceViewService', + full_name='google.ads.googleads.v0.services.HotelPerformanceViewService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=271, + serialized_end=513, + methods=[ + _descriptor.MethodDescriptor( + name='GetHotelPerformanceView', + full_name='google.ads.googleads.v0.services.HotelPerformanceViewService.GetHotelPerformanceView', + index=0, + containing_service=None, + input_type=_GETHOTELPERFORMANCEVIEWREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2._HOTELPERFORMANCEVIEW, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0026\0224/v0/{resource_name=customers/*/hotelPerformanceView}')), + ), +]) +_sym_db.RegisterServiceDescriptor(_HOTELPERFORMANCEVIEWSERVICE) + +DESCRIPTOR.services_by_name['HotelPerformanceViewService'] = _HOTELPERFORMANCEVIEWSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/hotel_performance_view_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/hotel_performance_view_service_pb2_grpc.py new file mode 100644 index 000000000..54ca077d5 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/hotel_performance_view_service_pb2_grpc.py @@ -0,0 +1,47 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import hotel_performance_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2 +from google.ads.google_ads.v0.proto.services import hotel_performance_view_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_hotel__performance__view__service__pb2 + + +class HotelPerformanceViewServiceStub(object): + """Service to manage Hotel Performance Views. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetHotelPerformanceView = channel.unary_unary( + '/google.ads.googleads.v0.services.HotelPerformanceViewService/GetHotelPerformanceView', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_hotel__performance__view__service__pb2.GetHotelPerformanceViewRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2.HotelPerformanceView.FromString, + ) + + +class HotelPerformanceViewServiceServicer(object): + """Service to manage Hotel Performance Views. + """ + + def GetHotelPerformanceView(self, request, context): + """Returns the requested Hotel Performance View in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_HotelPerformanceViewServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetHotelPerformanceView': grpc.unary_unary_rpc_method_handler( + servicer.GetHotelPerformanceView, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_hotel__performance__view__service__pb2.GetHotelPerformanceViewRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_hotel__performance__view__pb2.HotelPerformanceView.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.HotelPerformanceViewService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_ad_group_service_pb2.py b/google/ads/google_ads/v0/proto/services/keyword_plan_ad_group_service_pb2.py new file mode 100644 index 000000000..b02788125 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_ad_group_service_pb2.py @@ -0,0 +1,368 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/keyword_plan_ad_group_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import keyword_plan_ad_group_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/keyword_plan_ad_group_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nJgoogle/ads/googleads_v0/proto/services/keyword_plan_ad_group_service.proto\x12 google.ads.googleads.v0.services\x1a\x43google/ads/googleads_v0/proto/resources/keyword_plan_ad_group.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"5\n\x1cGetKeywordPlanAdGroupRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"\x8a\x01\n MutateKeywordPlanAdGroupsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12Q\n\noperations\x18\x02 \x03(\x0b\x32=.google.ads.googleads.v0.services.KeywordPlanAdGroupOperation\"\xff\x01\n\x1bKeywordPlanAdGroupOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12G\n\x06\x63reate\x18\x01 \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.KeywordPlanAdGroupH\x00\x12G\n\x06update\x18\x02 \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.KeywordPlanAdGroupH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"v\n!MutateKeywordPlanAdGroupsResponse\x12Q\n\x07results\x18\x02 \x03(\x0b\x32@.google.ads.googleads.v0.services.MutateKeywordPlanAdGroupResult\"7\n\x1eMutateKeywordPlanAdGroupResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xd7\x03\n\x19KeywordPlanAdGroupService\x12\xcd\x01\n\x15GetKeywordPlanAdGroup\x12>.google.ads.googleads.v0.services.GetKeywordPlanAdGroupRequest\x1a\x35.google.ads.googleads.v0.resources.KeywordPlanAdGroup\"=\x82\xd3\xe4\x93\x02\x37\x12\x35/v0/{resource_name=customers/*/keywordPlanAdGroups/*}\x12\xe9\x01\n\x19MutateKeywordPlanAdGroups\x12\x42.google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsRequest\x1a\x43.google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsResponse\"C\x82\xd3\xe4\x93\x02=\"8/v0/customers/{customer_id=*}/keywordPlanAdGroups:mutate:\x01*B\xde\x01\n$com.google.ads.googleads.v0.servicesB\x1eKeywordPlanAdGroupServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETKEYWORDPLANADGROUPREQUEST = _descriptor.Descriptor( + name='GetKeywordPlanAdGroupRequest', + full_name='google.ads.googleads.v0.services.GetKeywordPlanAdGroupRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetKeywordPlanAdGroupRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=245, + serialized_end=298, +) + + +_MUTATEKEYWORDPLANADGROUPSREQUEST = _descriptor.Descriptor( + name='MutateKeywordPlanAdGroupsRequest', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=301, + serialized_end=439, +) + + +_KEYWORDPLANADGROUPOPERATION = _descriptor.Descriptor( + name='KeywordPlanAdGroupOperation', + full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=442, + serialized_end=697, +) + + +_MUTATEKEYWORDPLANADGROUPSRESPONSE = _descriptor.Descriptor( + name='MutateKeywordPlanAdGroupsResponse', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=699, + serialized_end=817, +) + + +_MUTATEKEYWORDPLANADGROUPRESULT = _descriptor.Descriptor( + name='MutateKeywordPlanAdGroupResult', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanAdGroupResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateKeywordPlanAdGroupResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=819, + serialized_end=874, +) + +_MUTATEKEYWORDPLANADGROUPSREQUEST.fields_by_name['operations'].message_type = _KEYWORDPLANADGROUPOPERATION +_KEYWORDPLANADGROUPOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_KEYWORDPLANADGROUPOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2._KEYWORDPLANADGROUP +_KEYWORDPLANADGROUPOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2._KEYWORDPLANADGROUP +_KEYWORDPLANADGROUPOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANADGROUPOPERATION.fields_by_name['create']) +_KEYWORDPLANADGROUPOPERATION.fields_by_name['create'].containing_oneof = _KEYWORDPLANADGROUPOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANADGROUPOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANADGROUPOPERATION.fields_by_name['update']) +_KEYWORDPLANADGROUPOPERATION.fields_by_name['update'].containing_oneof = _KEYWORDPLANADGROUPOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANADGROUPOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANADGROUPOPERATION.fields_by_name['remove']) +_KEYWORDPLANADGROUPOPERATION.fields_by_name['remove'].containing_oneof = _KEYWORDPLANADGROUPOPERATION.oneofs_by_name['operation'] +_MUTATEKEYWORDPLANADGROUPSRESPONSE.fields_by_name['results'].message_type = _MUTATEKEYWORDPLANADGROUPRESULT +DESCRIPTOR.message_types_by_name['GetKeywordPlanAdGroupRequest'] = _GETKEYWORDPLANADGROUPREQUEST +DESCRIPTOR.message_types_by_name['MutateKeywordPlanAdGroupsRequest'] = _MUTATEKEYWORDPLANADGROUPSREQUEST +DESCRIPTOR.message_types_by_name['KeywordPlanAdGroupOperation'] = _KEYWORDPLANADGROUPOPERATION +DESCRIPTOR.message_types_by_name['MutateKeywordPlanAdGroupsResponse'] = _MUTATEKEYWORDPLANADGROUPSRESPONSE +DESCRIPTOR.message_types_by_name['MutateKeywordPlanAdGroupResult'] = _MUTATEKEYWORDPLANADGROUPRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetKeywordPlanAdGroupRequest = _reflection.GeneratedProtocolMessageType('GetKeywordPlanAdGroupRequest', (_message.Message,), dict( + DESCRIPTOR = _GETKEYWORDPLANADGROUPREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_ad_group_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanAdGroupService.GetKeywordPlanAdGroup][google.ads.googleads.v0.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup]. + + + Attributes: + resource_name: + The resource name of the Keyword Plan ad group to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetKeywordPlanAdGroupRequest) + )) +_sym_db.RegisterMessage(GetKeywordPlanAdGroupRequest) + +MutateKeywordPlanAdGroupsRequest = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanAdGroupsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANADGROUPSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_ad_group_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanAdGroupService.MutateKeywordPlanAdGroups][google.ads.googleads.v0.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups]. + + + Attributes: + customer_id: + The ID of the customer whose Keyword Plan ad groups are being + modified. + operations: + The list of operations to perform on individual Keyword Plan + ad groups. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsRequest) + )) +_sym_db.RegisterMessage(MutateKeywordPlanAdGroupsRequest) + +KeywordPlanAdGroupOperation = _reflection.GeneratedProtocolMessageType('KeywordPlanAdGroupOperation', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANADGROUPOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_ad_group_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on a Keyword Plan ad group. + + + Attributes: + update_mask: + The FieldMask that determines which resource fields are + modified in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + Keyword Plan ad group. + update: + Update operation: The Keyword Plan ad group is expected to + have a valid resource name. + remove: + Remove operation: A resource name for the removed Keyword Plan + ad group is expected, in this format: ``customers/{customer_i + d}/keywordPlanAdGroups/{kp_ad_group_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanAdGroupOperation) + )) +_sym_db.RegisterMessage(KeywordPlanAdGroupOperation) + +MutateKeywordPlanAdGroupsResponse = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanAdGroupsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANADGROUPSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_ad_group_service_pb2' + , + __doc__ = """Response message for a Keyword Plan ad group mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanAdGroupsResponse) + )) +_sym_db.RegisterMessage(MutateKeywordPlanAdGroupsResponse) + +MutateKeywordPlanAdGroupResult = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanAdGroupResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANADGROUPRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_ad_group_service_pb2' + , + __doc__ = """The result for the Keyword Plan ad group mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanAdGroupResult) + )) +_sym_db.RegisterMessage(MutateKeywordPlanAdGroupResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\036KeywordPlanAdGroupServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_KEYWORDPLANADGROUPSERVICE = _descriptor.ServiceDescriptor( + name='KeywordPlanAdGroupService', + full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=877, + serialized_end=1348, + methods=[ + _descriptor.MethodDescriptor( + name='GetKeywordPlanAdGroup', + full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup', + index=0, + containing_service=None, + input_type=_GETKEYWORDPLANADGROUPREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2._KEYWORDPLANADGROUP, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0027\0225/v0/{resource_name=customers/*/keywordPlanAdGroups/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateKeywordPlanAdGroups', + full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups', + index=1, + containing_service=None, + input_type=_MUTATEKEYWORDPLANADGROUPSREQUEST, + output_type=_MUTATEKEYWORDPLANADGROUPSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002=\"8/v0/customers/{customer_id=*}/keywordPlanAdGroups:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_KEYWORDPLANADGROUPSERVICE) + +DESCRIPTOR.services_by_name['KeywordPlanAdGroupService'] = _KEYWORDPLANADGROUPSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_ad_group_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/keyword_plan_ad_group_service_pb2_grpc.py new file mode 100644 index 000000000..8104b25dc --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_ad_group_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import keyword_plan_ad_group_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_ad_group_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__ad__group__service__pb2 + + +class KeywordPlanAdGroupServiceStub(object): + """Service to manage Keyword Plan ad groups. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetKeywordPlanAdGroup = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanAdGroupService/GetKeywordPlanAdGroup', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__ad__group__service__pb2.GetKeywordPlanAdGroupRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2.KeywordPlanAdGroup.FromString, + ) + self.MutateKeywordPlanAdGroups = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanAdGroupService/MutateKeywordPlanAdGroups', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__ad__group__service__pb2.MutateKeywordPlanAdGroupsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__ad__group__service__pb2.MutateKeywordPlanAdGroupsResponse.FromString, + ) + + +class KeywordPlanAdGroupServiceServicer(object): + """Service to manage Keyword Plan ad groups. + """ + + def GetKeywordPlanAdGroup(self, request, context): + """Returns the requested Keyword Plan ad group in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateKeywordPlanAdGroups(self, request, context): + """Creates, updates, or removes Keyword Plan ad groups. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_KeywordPlanAdGroupServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetKeywordPlanAdGroup': grpc.unary_unary_rpc_method_handler( + servicer.GetKeywordPlanAdGroup, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__ad__group__service__pb2.GetKeywordPlanAdGroupRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__ad__group__pb2.KeywordPlanAdGroup.SerializeToString, + ), + 'MutateKeywordPlanAdGroups': grpc.unary_unary_rpc_method_handler( + servicer.MutateKeywordPlanAdGroups, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__ad__group__service__pb2.MutateKeywordPlanAdGroupsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__ad__group__service__pb2.MutateKeywordPlanAdGroupsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.KeywordPlanAdGroupService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_campaign_service_pb2.py b/google/ads/google_ads/v0/proto/services/keyword_plan_campaign_service_pb2.py new file mode 100644 index 000000000..5b28712bc --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_campaign_service_pb2.py @@ -0,0 +1,368 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/keyword_plan_campaign_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import keyword_plan_campaign_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/keyword_plan_campaign_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nJgoogle/ads/googleads_v0/proto/services/keyword_plan_campaign_service.proto\x12 google.ads.googleads.v0.services\x1a\x43google/ads/googleads_v0/proto/resources/keyword_plan_campaign.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"6\n\x1dGetKeywordPlanCampaignRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"\x8c\x01\n!MutateKeywordPlanCampaignsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12R\n\noperations\x18\x02 \x03(\x0b\x32>.google.ads.googleads.v0.services.KeywordPlanCampaignOperation\"\x82\x02\n\x1cKeywordPlanCampaignOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12H\n\x06\x63reate\x18\x01 \x01(\x0b\x32\x36.google.ads.googleads.v0.resources.KeywordPlanCampaignH\x00\x12H\n\x06update\x18\x02 \x01(\x0b\x32\x36.google.ads.googleads.v0.resources.KeywordPlanCampaignH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"x\n\"MutateKeywordPlanCampaignsResponse\x12R\n\x07results\x18\x02 \x03(\x0b\x32\x41.google.ads.googleads.v0.services.MutateKeywordPlanCampaignResult\"8\n\x1fMutateKeywordPlanCampaignResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xe0\x03\n\x1aKeywordPlanCampaignService\x12\xd1\x01\n\x16GetKeywordPlanCampaign\x12?.google.ads.googleads.v0.services.GetKeywordPlanCampaignRequest\x1a\x36.google.ads.googleads.v0.resources.KeywordPlanCampaign\">\x82\xd3\xe4\x93\x02\x38\x12\x36/v0/{resource_name=customers/*/keywordPlanCampaigns/*}\x12\xed\x01\n\x1aMutateKeywordPlanCampaigns\x12\x43.google.ads.googleads.v0.services.MutateKeywordPlanCampaignsRequest\x1a\x44.google.ads.googleads.v0.services.MutateKeywordPlanCampaignsResponse\"D\x82\xd3\xe4\x93\x02>\"9/v0/customers/{customer_id=*}/keywordPlanCampaigns:mutate:\x01*B\xdf\x01\n$com.google.ads.googleads.v0.servicesB\x1fKeywordPlanCampaignServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETKEYWORDPLANCAMPAIGNREQUEST = _descriptor.Descriptor( + name='GetKeywordPlanCampaignRequest', + full_name='google.ads.googleads.v0.services.GetKeywordPlanCampaignRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetKeywordPlanCampaignRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=245, + serialized_end=299, +) + + +_MUTATEKEYWORDPLANCAMPAIGNSREQUEST = _descriptor.Descriptor( + name='MutateKeywordPlanCampaignsRequest', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanCampaignsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateKeywordPlanCampaignsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateKeywordPlanCampaignsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=302, + serialized_end=442, +) + + +_KEYWORDPLANCAMPAIGNOPERATION = _descriptor.Descriptor( + name='KeywordPlanCampaignOperation', + full_name='google.ads.googleads.v0.services.KeywordPlanCampaignOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.KeywordPlanCampaignOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.KeywordPlanCampaignOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.KeywordPlanCampaignOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.KeywordPlanCampaignOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.KeywordPlanCampaignOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=445, + serialized_end=703, +) + + +_MUTATEKEYWORDPLANCAMPAIGNSRESPONSE = _descriptor.Descriptor( + name='MutateKeywordPlanCampaignsResponse', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanCampaignsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateKeywordPlanCampaignsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=705, + serialized_end=825, +) + + +_MUTATEKEYWORDPLANCAMPAIGNRESULT = _descriptor.Descriptor( + name='MutateKeywordPlanCampaignResult', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanCampaignResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateKeywordPlanCampaignResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=827, + serialized_end=883, +) + +_MUTATEKEYWORDPLANCAMPAIGNSREQUEST.fields_by_name['operations'].message_type = _KEYWORDPLANCAMPAIGNOPERATION +_KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2._KEYWORDPLANCAMPAIGN +_KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2._KEYWORDPLANCAMPAIGN +_KEYWORDPLANCAMPAIGNOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['create']) +_KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['create'].containing_oneof = _KEYWORDPLANCAMPAIGNOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANCAMPAIGNOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['update']) +_KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['update'].containing_oneof = _KEYWORDPLANCAMPAIGNOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANCAMPAIGNOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['remove']) +_KEYWORDPLANCAMPAIGNOPERATION.fields_by_name['remove'].containing_oneof = _KEYWORDPLANCAMPAIGNOPERATION.oneofs_by_name['operation'] +_MUTATEKEYWORDPLANCAMPAIGNSRESPONSE.fields_by_name['results'].message_type = _MUTATEKEYWORDPLANCAMPAIGNRESULT +DESCRIPTOR.message_types_by_name['GetKeywordPlanCampaignRequest'] = _GETKEYWORDPLANCAMPAIGNREQUEST +DESCRIPTOR.message_types_by_name['MutateKeywordPlanCampaignsRequest'] = _MUTATEKEYWORDPLANCAMPAIGNSREQUEST +DESCRIPTOR.message_types_by_name['KeywordPlanCampaignOperation'] = _KEYWORDPLANCAMPAIGNOPERATION +DESCRIPTOR.message_types_by_name['MutateKeywordPlanCampaignsResponse'] = _MUTATEKEYWORDPLANCAMPAIGNSRESPONSE +DESCRIPTOR.message_types_by_name['MutateKeywordPlanCampaignResult'] = _MUTATEKEYWORDPLANCAMPAIGNRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetKeywordPlanCampaignRequest = _reflection.GeneratedProtocolMessageType('GetKeywordPlanCampaignRequest', (_message.Message,), dict( + DESCRIPTOR = _GETKEYWORDPLANCAMPAIGNREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_campaign_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanCampaignService.GetKeywordPlanCampaign][google.ads.googleads.v0.services.KeywordPlanCampaignService.GetKeywordPlanCampaign]. + + + Attributes: + resource_name: + The resource name of the Keyword Plan campaign to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetKeywordPlanCampaignRequest) + )) +_sym_db.RegisterMessage(GetKeywordPlanCampaignRequest) + +MutateKeywordPlanCampaignsRequest = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanCampaignsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANCAMPAIGNSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_campaign_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanCampaignService.MutateKeywordPlanCampaigns][google.ads.googleads.v0.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns]. + + + Attributes: + customer_id: + The ID of the customer whose Keyword Plan campaigns are being + modified. + operations: + The list of operations to perform on individual Keyword Plan + campaigns. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanCampaignsRequest) + )) +_sym_db.RegisterMessage(MutateKeywordPlanCampaignsRequest) + +KeywordPlanCampaignOperation = _reflection.GeneratedProtocolMessageType('KeywordPlanCampaignOperation', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANCAMPAIGNOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_campaign_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on a Keyword Plan campaign. + + + Attributes: + update_mask: + The FieldMask that determines which resource fields are + modified in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + Keyword Plan campaign. + update: + Update operation: The Keyword Plan campaign is expected to + have a valid resource name. + remove: + Remove operation: A resource name for the removed Keyword Plan + campaign is expected, in this format: ``customers/{customer_i + d}/keywordPlanCampaigns/{keywordPlan_campaign_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanCampaignOperation) + )) +_sym_db.RegisterMessage(KeywordPlanCampaignOperation) + +MutateKeywordPlanCampaignsResponse = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanCampaignsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANCAMPAIGNSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_campaign_service_pb2' + , + __doc__ = """Response message for a Keyword Plan campaign mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanCampaignsResponse) + )) +_sym_db.RegisterMessage(MutateKeywordPlanCampaignsResponse) + +MutateKeywordPlanCampaignResult = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanCampaignResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANCAMPAIGNRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_campaign_service_pb2' + , + __doc__ = """The result for the Keyword Plan campaign mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanCampaignResult) + )) +_sym_db.RegisterMessage(MutateKeywordPlanCampaignResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\037KeywordPlanCampaignServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_KEYWORDPLANCAMPAIGNSERVICE = _descriptor.ServiceDescriptor( + name='KeywordPlanCampaignService', + full_name='google.ads.googleads.v0.services.KeywordPlanCampaignService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=886, + serialized_end=1366, + methods=[ + _descriptor.MethodDescriptor( + name='GetKeywordPlanCampaign', + full_name='google.ads.googleads.v0.services.KeywordPlanCampaignService.GetKeywordPlanCampaign', + index=0, + containing_service=None, + input_type=_GETKEYWORDPLANCAMPAIGNREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2._KEYWORDPLANCAMPAIGN, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0028\0226/v0/{resource_name=customers/*/keywordPlanCampaigns/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateKeywordPlanCampaigns', + full_name='google.ads.googleads.v0.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns', + index=1, + containing_service=None, + input_type=_MUTATEKEYWORDPLANCAMPAIGNSREQUEST, + output_type=_MUTATEKEYWORDPLANCAMPAIGNSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002>\"9/v0/customers/{customer_id=*}/keywordPlanCampaigns:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_KEYWORDPLANCAMPAIGNSERVICE) + +DESCRIPTOR.services_by_name['KeywordPlanCampaignService'] = _KEYWORDPLANCAMPAIGNSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_campaign_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/keyword_plan_campaign_service_pb2_grpc.py new file mode 100644 index 000000000..9619130c6 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_campaign_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import keyword_plan_campaign_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_campaign_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__campaign__service__pb2 + + +class KeywordPlanCampaignServiceStub(object): + """Service to manage Keyword Plan campaigns. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetKeywordPlanCampaign = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanCampaignService/GetKeywordPlanCampaign', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__campaign__service__pb2.GetKeywordPlanCampaignRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2.KeywordPlanCampaign.FromString, + ) + self.MutateKeywordPlanCampaigns = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanCampaignService/MutateKeywordPlanCampaigns', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__campaign__service__pb2.MutateKeywordPlanCampaignsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__campaign__service__pb2.MutateKeywordPlanCampaignsResponse.FromString, + ) + + +class KeywordPlanCampaignServiceServicer(object): + """Service to manage Keyword Plan campaigns. + """ + + def GetKeywordPlanCampaign(self, request, context): + """Returns the requested Keyword Plan campaign in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateKeywordPlanCampaigns(self, request, context): + """Creates, updates, or removes Keyword Plan campaigns. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_KeywordPlanCampaignServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetKeywordPlanCampaign': grpc.unary_unary_rpc_method_handler( + servicer.GetKeywordPlanCampaign, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__campaign__service__pb2.GetKeywordPlanCampaignRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__campaign__pb2.KeywordPlanCampaign.SerializeToString, + ), + 'MutateKeywordPlanCampaigns': grpc.unary_unary_rpc_method_handler( + servicer.MutateKeywordPlanCampaigns, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__campaign__service__pb2.MutateKeywordPlanCampaignsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__campaign__service__pb2.MutateKeywordPlanCampaignsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.KeywordPlanCampaignService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_idea_service_pb2.py b/google/ads/google_ads/v0/proto/services/keyword_plan_idea_service_pb2.py new file mode 100644 index 000000000..00ac8e46b --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_idea_service_pb2.py @@ -0,0 +1,448 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/keyword_plan_idea_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.common import keyword_plan_common_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_keyword__plan__common__pb2 +from google.ads.google_ads.v0.proto.enums import keyword_plan_network_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__network__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/keyword_plan_idea_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nFgoogle/ads/googleads_v0/proto/services/keyword_plan_idea_service.proto\x12 google.ads.googleads.v0.services\x1a>google/ads/googleads_v0/proto/common/keyword_plan_common.proto\x1a>google/ads/googleads_v0/proto/enums/keyword_plan_network.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xe9\x03\n\x1bGenerateKeywordIdeasRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12.\n\x08language\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12:\n\x14geo_target_constants\x18\x08 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12\x66\n\x14keyword_plan_network\x18\t \x01(\x0e\x32H.google.ads.googleads.v0.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork\x12S\n\x14keyword_and_url_seed\x18\x02 \x01(\x0b\x32\x33.google.ads.googleads.v0.services.KeywordAndUrlSeedH\x00\x12\x45\n\x0ckeyword_seed\x18\x03 \x01(\x0b\x32-.google.ads.googleads.v0.services.KeywordSeedH\x00\x12=\n\x08url_seed\x18\x05 \x01(\x0b\x32).google.ads.googleads.v0.services.UrlSeedH\x00\x42\x06\n\x04seed\"n\n\x11KeywordAndUrlSeed\x12)\n\x03url\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12.\n\x08keywords\x18\x02 \x03(\x0b\x32\x1c.google.protobuf.StringValue\"=\n\x0bKeywordSeed\x12.\n\x08keywords\x18\x01 \x03(\x0b\x32\x1c.google.protobuf.StringValue\"4\n\x07UrlSeed\x12)\n\x03url\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"k\n\x1bGenerateKeywordIdeaResponse\x12L\n\x07results\x18\x01 \x03(\x0b\x32;.google.ads.googleads.v0.services.GenerateKeywordIdeaResult\"\xa3\x01\n\x19GenerateKeywordIdeaResult\x12*\n\x04text\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12Z\n\x14keyword_idea_metrics\x18\x03 \x01(\x0b\x32<.google.ads.googleads.v0.common.KeywordPlanHistoricalMetrics2\xee\x01\n\x16KeywordPlanIdeaService\x12\xd3\x01\n\x14GenerateKeywordIdeas\x12=.google.ads.googleads.v0.services.GenerateKeywordIdeasRequest\x1a=.google.ads.googleads.v0.services.GenerateKeywordIdeaResponse\"=\x82\xd3\xe4\x93\x02\x37\"2/v0/customers/{customer_id=*}:generateKeywordIdeas:\x01*B\xdb\x01\n$com.google.ads.googleads.v0.servicesB\x1bKeywordPlanIdeaServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_keyword__plan__common__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__network__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_GENERATEKEYWORDIDEASREQUEST = _descriptor.Descriptor( + name='GenerateKeywordIdeasRequest', + full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='language', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest.language', index=1, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='geo_target_constants', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest.geo_target_constants', index=2, + number=8, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_plan_network', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest.keyword_plan_network', index=3, + number=9, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_and_url_seed', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest.keyword_and_url_seed', index=4, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_seed', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest.keyword_seed', index=5, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='url_seed', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest.url_seed', index=6, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='seed', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeasRequest.seed', + index=0, containing_type=None, fields=[]), + ], + serialized_start=299, + serialized_end=788, +) + + +_KEYWORDANDURLSEED = _descriptor.Descriptor( + name='KeywordAndUrlSeed', + full_name='google.ads.googleads.v0.services.KeywordAndUrlSeed', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='url', full_name='google.ads.googleads.v0.services.KeywordAndUrlSeed.url', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keywords', full_name='google.ads.googleads.v0.services.KeywordAndUrlSeed.keywords', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=790, + serialized_end=900, +) + + +_KEYWORDSEED = _descriptor.Descriptor( + name='KeywordSeed', + full_name='google.ads.googleads.v0.services.KeywordSeed', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='keywords', full_name='google.ads.googleads.v0.services.KeywordSeed.keywords', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=902, + serialized_end=963, +) + + +_URLSEED = _descriptor.Descriptor( + name='UrlSeed', + full_name='google.ads.googleads.v0.services.UrlSeed', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='url', full_name='google.ads.googleads.v0.services.UrlSeed.url', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=965, + serialized_end=1017, +) + + +_GENERATEKEYWORDIDEARESPONSE = _descriptor.Descriptor( + name='GenerateKeywordIdeaResponse', + full_name='google.ads.googleads.v0.services.GenerateKeywordIdeaResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeaResponse.results', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1019, + serialized_end=1126, +) + + +_GENERATEKEYWORDIDEARESULT = _descriptor.Descriptor( + name='GenerateKeywordIdeaResult', + full_name='google.ads.googleads.v0.services.GenerateKeywordIdeaResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='text', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeaResult.text', index=0, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_idea_metrics', full_name='google.ads.googleads.v0.services.GenerateKeywordIdeaResult.keyword_idea_metrics', index=1, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1129, + serialized_end=1292, +) + +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['language'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['geo_target_constants'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['keyword_plan_network'].enum_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__plan__network__pb2._KEYWORDPLANNETWORKENUM_KEYWORDPLANNETWORK +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['keyword_and_url_seed'].message_type = _KEYWORDANDURLSEED +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['keyword_seed'].message_type = _KEYWORDSEED +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['url_seed'].message_type = _URLSEED +_GENERATEKEYWORDIDEASREQUEST.oneofs_by_name['seed'].fields.append( + _GENERATEKEYWORDIDEASREQUEST.fields_by_name['keyword_and_url_seed']) +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['keyword_and_url_seed'].containing_oneof = _GENERATEKEYWORDIDEASREQUEST.oneofs_by_name['seed'] +_GENERATEKEYWORDIDEASREQUEST.oneofs_by_name['seed'].fields.append( + _GENERATEKEYWORDIDEASREQUEST.fields_by_name['keyword_seed']) +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['keyword_seed'].containing_oneof = _GENERATEKEYWORDIDEASREQUEST.oneofs_by_name['seed'] +_GENERATEKEYWORDIDEASREQUEST.oneofs_by_name['seed'].fields.append( + _GENERATEKEYWORDIDEASREQUEST.fields_by_name['url_seed']) +_GENERATEKEYWORDIDEASREQUEST.fields_by_name['url_seed'].containing_oneof = _GENERATEKEYWORDIDEASREQUEST.oneofs_by_name['seed'] +_KEYWORDANDURLSEED.fields_by_name['url'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDANDURLSEED.fields_by_name['keywords'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDSEED.fields_by_name['keywords'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_URLSEED.fields_by_name['url'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GENERATEKEYWORDIDEARESPONSE.fields_by_name['results'].message_type = _GENERATEKEYWORDIDEARESULT +_GENERATEKEYWORDIDEARESULT.fields_by_name['text'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_GENERATEKEYWORDIDEARESULT.fields_by_name['keyword_idea_metrics'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_keyword__plan__common__pb2._KEYWORDPLANHISTORICALMETRICS +DESCRIPTOR.message_types_by_name['GenerateKeywordIdeasRequest'] = _GENERATEKEYWORDIDEASREQUEST +DESCRIPTOR.message_types_by_name['KeywordAndUrlSeed'] = _KEYWORDANDURLSEED +DESCRIPTOR.message_types_by_name['KeywordSeed'] = _KEYWORDSEED +DESCRIPTOR.message_types_by_name['UrlSeed'] = _URLSEED +DESCRIPTOR.message_types_by_name['GenerateKeywordIdeaResponse'] = _GENERATEKEYWORDIDEARESPONSE +DESCRIPTOR.message_types_by_name['GenerateKeywordIdeaResult'] = _GENERATEKEYWORDIDEARESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GenerateKeywordIdeasRequest = _reflection.GeneratedProtocolMessageType('GenerateKeywordIdeasRequest', (_message.Message,), dict( + DESCRIPTOR = _GENERATEKEYWORDIDEASREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_idea_service_pb2' + , + __doc__ = """Request message for [KeywordIdeaService.GenerateKeywordIdeas][]. + + + Attributes: + customer_id: + The ID of the customer with the recommendation. + language: + The resource name of the language to target. Required + geo_target_constants: + The resource names of the location to target. Max 10 + keyword_plan_network: + Targeting network. + seed: + The type of seed to generate keyword ideas. + keyword_and_url_seed: + A Keyword and a specific Url to generate ideas from e.g. cars, + www.example.com/cars. + keyword_seed: + A Keyword or phrase to generate ideas from, e.g. cars. + url_seed: + A specific url to generate ideas from, e.g. + www.example.com/cars. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GenerateKeywordIdeasRequest) + )) +_sym_db.RegisterMessage(GenerateKeywordIdeasRequest) + +KeywordAndUrlSeed = _reflection.GeneratedProtocolMessageType('KeywordAndUrlSeed', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDANDURLSEED, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_idea_service_pb2' + , + __doc__ = """Keyword And Url Seed + + + Attributes: + url: + The URL to crawl in order to generate keyword ideas. + keywords: + Requires at least one keyword. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordAndUrlSeed) + )) +_sym_db.RegisterMessage(KeywordAndUrlSeed) + +KeywordSeed = _reflection.GeneratedProtocolMessageType('KeywordSeed', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDSEED, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_idea_service_pb2' + , + __doc__ = """Keyword Seed + + + Attributes: + keywords: + Requires at least one keyword. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordSeed) + )) +_sym_db.RegisterMessage(KeywordSeed) + +UrlSeed = _reflection.GeneratedProtocolMessageType('UrlSeed', (_message.Message,), dict( + DESCRIPTOR = _URLSEED, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_idea_service_pb2' + , + __doc__ = """Url Seed + + + Attributes: + url: + The URL to crawl in order to generate keyword ideas. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.UrlSeed) + )) +_sym_db.RegisterMessage(UrlSeed) + +GenerateKeywordIdeaResponse = _reflection.GeneratedProtocolMessageType('GenerateKeywordIdeaResponse', (_message.Message,), dict( + DESCRIPTOR = _GENERATEKEYWORDIDEARESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_idea_service_pb2' + , + __doc__ = """Response message for [KeywordIdeaService.GenerateKeywordIdeas][]. + + + Attributes: + results: + Results of generating keyword ideas. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GenerateKeywordIdeaResponse) + )) +_sym_db.RegisterMessage(GenerateKeywordIdeaResponse) + +GenerateKeywordIdeaResult = _reflection.GeneratedProtocolMessageType('GenerateKeywordIdeaResult', (_message.Message,), dict( + DESCRIPTOR = _GENERATEKEYWORDIDEARESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_idea_service_pb2' + , + __doc__ = """The result of generating keyword ideas. + + + Attributes: + text: + Text of the keyword idea. As in Keyword Plan historical + metrics, this text may not be an actual keyword, but the + canonical form of multiple keywords. See + KeywordPlanKeywordHistoricalMetrics message in + KeywordPlanService. + keyword_idea_metrics: + The historical metrics for the keyword + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GenerateKeywordIdeaResult) + )) +_sym_db.RegisterMessage(GenerateKeywordIdeaResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\033KeywordPlanIdeaServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_KEYWORDPLANIDEASERVICE = _descriptor.ServiceDescriptor( + name='KeywordPlanIdeaService', + full_name='google.ads.googleads.v0.services.KeywordPlanIdeaService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=1295, + serialized_end=1533, + methods=[ + _descriptor.MethodDescriptor( + name='GenerateKeywordIdeas', + full_name='google.ads.googleads.v0.services.KeywordPlanIdeaService.GenerateKeywordIdeas', + index=0, + containing_service=None, + input_type=_GENERATEKEYWORDIDEASREQUEST, + output_type=_GENERATEKEYWORDIDEARESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0027\"2/v0/customers/{customer_id=*}:generateKeywordIdeas:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_KEYWORDPLANIDEASERVICE) + +DESCRIPTOR.services_by_name['KeywordPlanIdeaService'] = _KEYWORDPLANIDEASERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_idea_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/keyword_plan_idea_service_pb2_grpc.py new file mode 100644 index 000000000..db06b2809 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_idea_service_pb2_grpc.py @@ -0,0 +1,46 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.services import keyword_plan_idea_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__idea__service__pb2 + + +class KeywordPlanIdeaServiceStub(object): + """Service to generate keyword ideas. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GenerateKeywordIdeas = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanIdeaService/GenerateKeywordIdeas', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__idea__service__pb2.GenerateKeywordIdeasRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__idea__service__pb2.GenerateKeywordIdeaResponse.FromString, + ) + + +class KeywordPlanIdeaServiceServicer(object): + """Service to generate keyword ideas. + """ + + def GenerateKeywordIdeas(self, request, context): + """Returns a list of keyword ideas. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_KeywordPlanIdeaServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GenerateKeywordIdeas': grpc.unary_unary_rpc_method_handler( + servicer.GenerateKeywordIdeas, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__idea__service__pb2.GenerateKeywordIdeasRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__idea__service__pb2.GenerateKeywordIdeaResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.KeywordPlanIdeaService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_keyword_service_pb2.py b/google/ads/google_ads/v0/proto/services/keyword_plan_keyword_service_pb2.py new file mode 100644 index 000000000..132a52b8f --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_keyword_service_pb2.py @@ -0,0 +1,368 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/keyword_plan_keyword_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import keyword_plan_keyword_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/keyword_plan_keyword_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nIgoogle/ads/googleads_v0/proto/services/keyword_plan_keyword_service.proto\x12 google.ads.googleads.v0.services\x1a\x42google/ads/googleads_v0/proto/resources/keyword_plan_keyword.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"5\n\x1cGetKeywordPlanKeywordRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"\x8a\x01\n MutateKeywordPlanKeywordsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12Q\n\noperations\x18\x02 \x03(\x0b\x32=.google.ads.googleads.v0.services.KeywordPlanKeywordOperation\"\xff\x01\n\x1bKeywordPlanKeywordOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12G\n\x06\x63reate\x18\x01 \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.KeywordPlanKeywordH\x00\x12G\n\x06update\x18\x02 \x01(\x0b\x32\x35.google.ads.googleads.v0.resources.KeywordPlanKeywordH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"v\n!MutateKeywordPlanKeywordsResponse\x12Q\n\x07results\x18\x02 \x03(\x0b\x32@.google.ads.googleads.v0.services.MutateKeywordPlanKeywordResult\"7\n\x1eMutateKeywordPlanKeywordResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xd7\x03\n\x19KeywordPlanKeywordService\x12\xcd\x01\n\x15GetKeywordPlanKeyword\x12>.google.ads.googleads.v0.services.GetKeywordPlanKeywordRequest\x1a\x35.google.ads.googleads.v0.resources.KeywordPlanKeyword\"=\x82\xd3\xe4\x93\x02\x37\x12\x35/v0/{resource_name=customers/*/keywordPlanKeywords/*}\x12\xe9\x01\n\x19MutateKeywordPlanKeywords\x12\x42.google.ads.googleads.v0.services.MutateKeywordPlanKeywordsRequest\x1a\x43.google.ads.googleads.v0.services.MutateKeywordPlanKeywordsResponse\"C\x82\xd3\xe4\x93\x02=\"8/v0/customers/{customer_id=*}/keywordPlanKeywords:mutate:\x01*B\xde\x01\n$com.google.ads.googleads.v0.servicesB\x1eKeywordPlanKeywordServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETKEYWORDPLANKEYWORDREQUEST = _descriptor.Descriptor( + name='GetKeywordPlanKeywordRequest', + full_name='google.ads.googleads.v0.services.GetKeywordPlanKeywordRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetKeywordPlanKeywordRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=243, + serialized_end=296, +) + + +_MUTATEKEYWORDPLANKEYWORDSREQUEST = _descriptor.Descriptor( + name='MutateKeywordPlanKeywordsRequest', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanKeywordsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateKeywordPlanKeywordsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateKeywordPlanKeywordsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=299, + serialized_end=437, +) + + +_KEYWORDPLANKEYWORDOPERATION = _descriptor.Descriptor( + name='KeywordPlanKeywordOperation', + full_name='google.ads.googleads.v0.services.KeywordPlanKeywordOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=440, + serialized_end=695, +) + + +_MUTATEKEYWORDPLANKEYWORDSRESPONSE = _descriptor.Descriptor( + name='MutateKeywordPlanKeywordsResponse', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanKeywordsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateKeywordPlanKeywordsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=697, + serialized_end=815, +) + + +_MUTATEKEYWORDPLANKEYWORDRESULT = _descriptor.Descriptor( + name='MutateKeywordPlanKeywordResult', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanKeywordResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateKeywordPlanKeywordResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=817, + serialized_end=872, +) + +_MUTATEKEYWORDPLANKEYWORDSREQUEST.fields_by_name['operations'].message_type = _KEYWORDPLANKEYWORDOPERATION +_KEYWORDPLANKEYWORDOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_KEYWORDPLANKEYWORDOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2._KEYWORDPLANKEYWORD +_KEYWORDPLANKEYWORDOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2._KEYWORDPLANKEYWORD +_KEYWORDPLANKEYWORDOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANKEYWORDOPERATION.fields_by_name['create']) +_KEYWORDPLANKEYWORDOPERATION.fields_by_name['create'].containing_oneof = _KEYWORDPLANKEYWORDOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANKEYWORDOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANKEYWORDOPERATION.fields_by_name['update']) +_KEYWORDPLANKEYWORDOPERATION.fields_by_name['update'].containing_oneof = _KEYWORDPLANKEYWORDOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANKEYWORDOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANKEYWORDOPERATION.fields_by_name['remove']) +_KEYWORDPLANKEYWORDOPERATION.fields_by_name['remove'].containing_oneof = _KEYWORDPLANKEYWORDOPERATION.oneofs_by_name['operation'] +_MUTATEKEYWORDPLANKEYWORDSRESPONSE.fields_by_name['results'].message_type = _MUTATEKEYWORDPLANKEYWORDRESULT +DESCRIPTOR.message_types_by_name['GetKeywordPlanKeywordRequest'] = _GETKEYWORDPLANKEYWORDREQUEST +DESCRIPTOR.message_types_by_name['MutateKeywordPlanKeywordsRequest'] = _MUTATEKEYWORDPLANKEYWORDSREQUEST +DESCRIPTOR.message_types_by_name['KeywordPlanKeywordOperation'] = _KEYWORDPLANKEYWORDOPERATION +DESCRIPTOR.message_types_by_name['MutateKeywordPlanKeywordsResponse'] = _MUTATEKEYWORDPLANKEYWORDSRESPONSE +DESCRIPTOR.message_types_by_name['MutateKeywordPlanKeywordResult'] = _MUTATEKEYWORDPLANKEYWORDRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetKeywordPlanKeywordRequest = _reflection.GeneratedProtocolMessageType('GetKeywordPlanKeywordRequest', (_message.Message,), dict( + DESCRIPTOR = _GETKEYWORDPLANKEYWORDREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_keyword_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanKeywordService.GetKeywordPlanKeyword][google.ads.googleads.v0.services.KeywordPlanKeywordService.GetKeywordPlanKeyword]. + + + Attributes: + resource_name: + The resource name of the ad group keyword to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetKeywordPlanKeywordRequest) + )) +_sym_db.RegisterMessage(GetKeywordPlanKeywordRequest) + +MutateKeywordPlanKeywordsRequest = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanKeywordsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANKEYWORDSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_keyword_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanKeywordService.MutateKeywordPlanKeywords][google.ads.googleads.v0.services.KeywordPlanKeywordService.MutateKeywordPlanKeywords]. + + + Attributes: + customer_id: + The ID of the customer whose Keyword Plan keywords are being + modified. + operations: + The list of operations to perform on individual Keyword Plan + keywords. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanKeywordsRequest) + )) +_sym_db.RegisterMessage(MutateKeywordPlanKeywordsRequest) + +KeywordPlanKeywordOperation = _reflection.GeneratedProtocolMessageType('KeywordPlanKeywordOperation', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANKEYWORDOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_keyword_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on a Keyword Plan keyword. + + + Attributes: + update_mask: + The FieldMask that determines which resource fields are + modified in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + Keyword Plan ad group keyword. + update: + Update operation: The Keyword Plan keyword is expected to have + a valid resource name. + remove: + Remove operation: A resource name for the removed Keyword Plan + keyword is expected, in this format: ``customers/{customer_id + }/keywordPlanKeywords/{kp_ad_group_keyword_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanKeywordOperation) + )) +_sym_db.RegisterMessage(KeywordPlanKeywordOperation) + +MutateKeywordPlanKeywordsResponse = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanKeywordsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANKEYWORDSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_keyword_service_pb2' + , + __doc__ = """Response message for a Keyword Plan keyword mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanKeywordsResponse) + )) +_sym_db.RegisterMessage(MutateKeywordPlanKeywordsResponse) + +MutateKeywordPlanKeywordResult = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanKeywordResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANKEYWORDRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_keyword_service_pb2' + , + __doc__ = """The result for the Keyword Plan keyword mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanKeywordResult) + )) +_sym_db.RegisterMessage(MutateKeywordPlanKeywordResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\036KeywordPlanKeywordServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_KEYWORDPLANKEYWORDSERVICE = _descriptor.ServiceDescriptor( + name='KeywordPlanKeywordService', + full_name='google.ads.googleads.v0.services.KeywordPlanKeywordService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=875, + serialized_end=1346, + methods=[ + _descriptor.MethodDescriptor( + name='GetKeywordPlanKeyword', + full_name='google.ads.googleads.v0.services.KeywordPlanKeywordService.GetKeywordPlanKeyword', + index=0, + containing_service=None, + input_type=_GETKEYWORDPLANKEYWORDREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2._KEYWORDPLANKEYWORD, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0027\0225/v0/{resource_name=customers/*/keywordPlanKeywords/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateKeywordPlanKeywords', + full_name='google.ads.googleads.v0.services.KeywordPlanKeywordService.MutateKeywordPlanKeywords', + index=1, + containing_service=None, + input_type=_MUTATEKEYWORDPLANKEYWORDSREQUEST, + output_type=_MUTATEKEYWORDPLANKEYWORDSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002=\"8/v0/customers/{customer_id=*}/keywordPlanKeywords:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_KEYWORDPLANKEYWORDSERVICE) + +DESCRIPTOR.services_by_name['KeywordPlanKeywordService'] = _KEYWORDPLANKEYWORDSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_keyword_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/keyword_plan_keyword_service_pb2_grpc.py new file mode 100644 index 000000000..b996855a1 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_keyword_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import keyword_plan_keyword_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_keyword_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__keyword__service__pb2 + + +class KeywordPlanKeywordServiceStub(object): + """Service to manage Keyword Plan ad group keywords. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetKeywordPlanKeyword = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanKeywordService/GetKeywordPlanKeyword', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__keyword__service__pb2.GetKeywordPlanKeywordRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2.KeywordPlanKeyword.FromString, + ) + self.MutateKeywordPlanKeywords = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanKeywordService/MutateKeywordPlanKeywords', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__keyword__service__pb2.MutateKeywordPlanKeywordsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__keyword__service__pb2.MutateKeywordPlanKeywordsResponse.FromString, + ) + + +class KeywordPlanKeywordServiceServicer(object): + """Service to manage Keyword Plan ad group keywords. + """ + + def GetKeywordPlanKeyword(self, request, context): + """Returns the requested Keyword Plan keyword in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateKeywordPlanKeywords(self, request, context): + """Creates, updates, or removes Keyword Plan keywords. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_KeywordPlanKeywordServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetKeywordPlanKeyword': grpc.unary_unary_rpc_method_handler( + servicer.GetKeywordPlanKeyword, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__keyword__service__pb2.GetKeywordPlanKeywordRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__keyword__pb2.KeywordPlanKeyword.SerializeToString, + ), + 'MutateKeywordPlanKeywords': grpc.unary_unary_rpc_method_handler( + servicer.MutateKeywordPlanKeywords, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__keyword__service__pb2.MutateKeywordPlanKeywordsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__keyword__service__pb2.MutateKeywordPlanKeywordsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.KeywordPlanKeywordService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_negative_keyword_service_pb2.py b/google/ads/google_ads/v0/proto/services/keyword_plan_negative_keyword_service_pb2.py new file mode 100644 index 000000000..91dfe13b0 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_negative_keyword_service_pb2.py @@ -0,0 +1,369 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/keyword_plan_negative_keyword_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import keyword_plan_negative_keyword_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/keyword_plan_negative_keyword_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nRgoogle/ads/googleads_v0/proto/services/keyword_plan_negative_keyword_service.proto\x12 google.ads.googleads.v0.services\x1aKgoogle/ads/googleads_v0/proto/resources/keyword_plan_negative_keyword.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"=\n$GetKeywordPlanNegativeKeywordRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"\x9a\x01\n(MutateKeywordPlanNegativeKeywordsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12Y\n\noperations\x18\x02 \x03(\x0b\x32\x45.google.ads.googleads.v0.services.KeywordPlanNegativeKeywordOperation\"\x97\x02\n#KeywordPlanNegativeKeywordOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12O\n\x06\x63reate\x18\x01 \x01(\x0b\x32=.google.ads.googleads.v0.resources.KeywordPlanNegativeKeywordH\x00\x12O\n\x06update\x18\x02 \x01(\x0b\x32=.google.ads.googleads.v0.resources.KeywordPlanNegativeKeywordH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"\x86\x01\n)MutateKeywordPlanNegativeKeywordsResponse\x12Y\n\x07results\x18\x02 \x03(\x0b\x32H.google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordResult\"?\n&MutateKeywordPlanNegativeKeywordResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\x9f\x04\n!KeywordPlanNegativeKeywordService\x12\xed\x01\n\x1dGetKeywordPlanNegativeKeyword\x12\x46.google.ads.googleads.v0.services.GetKeywordPlanNegativeKeywordRequest\x1a=.google.ads.googleads.v0.resources.KeywordPlanNegativeKeyword\"E\x82\xd3\xe4\x93\x02?\x12=/v0/{resource_name=customers/*/keywordPlanNegativeKeywords/*}\x12\x89\x02\n!MutateKeywordPlanNegativeKeywords\x12J.google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsRequest\x1aK.google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsResponse\"K\x82\xd3\xe4\x93\x02\x45\"@/v0/customers/{customer_id=*}/keywordPlanNegativeKeywords:mutate:\x01*B\xe6\x01\n$com.google.ads.googleads.v0.servicesB&KeywordPlanNegativeKeywordServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETKEYWORDPLANNEGATIVEKEYWORDREQUEST = _descriptor.Descriptor( + name='GetKeywordPlanNegativeKeywordRequest', + full_name='google.ads.googleads.v0.services.GetKeywordPlanNegativeKeywordRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetKeywordPlanNegativeKeywordRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=261, + serialized_end=322, +) + + +_MUTATEKEYWORDPLANNEGATIVEKEYWORDSREQUEST = _descriptor.Descriptor( + name='MutateKeywordPlanNegativeKeywordsRequest', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=325, + serialized_end=479, +) + + +_KEYWORDPLANNEGATIVEKEYWORDOPERATION = _descriptor.Descriptor( + name='KeywordPlanNegativeKeywordOperation', + full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=482, + serialized_end=761, +) + + +_MUTATEKEYWORDPLANNEGATIVEKEYWORDSRESPONSE = _descriptor.Descriptor( + name='MutateKeywordPlanNegativeKeywordsResponse', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=764, + serialized_end=898, +) + + +_MUTATEKEYWORDPLANNEGATIVEKEYWORDRESULT = _descriptor.Descriptor( + name='MutateKeywordPlanNegativeKeywordResult', + full_name='google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=900, + serialized_end=963, +) + +_MUTATEKEYWORDPLANNEGATIVEKEYWORDSREQUEST.fields_by_name['operations'].message_type = _KEYWORDPLANNEGATIVEKEYWORDOPERATION +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2._KEYWORDPLANNEGATIVEKEYWORD +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2._KEYWORDPLANNEGATIVEKEYWORD +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['create']) +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['create'].containing_oneof = _KEYWORDPLANNEGATIVEKEYWORDOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['update']) +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['update'].containing_oneof = _KEYWORDPLANNEGATIVEKEYWORDOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['remove']) +_KEYWORDPLANNEGATIVEKEYWORDOPERATION.fields_by_name['remove'].containing_oneof = _KEYWORDPLANNEGATIVEKEYWORDOPERATION.oneofs_by_name['operation'] +_MUTATEKEYWORDPLANNEGATIVEKEYWORDSRESPONSE.fields_by_name['results'].message_type = _MUTATEKEYWORDPLANNEGATIVEKEYWORDRESULT +DESCRIPTOR.message_types_by_name['GetKeywordPlanNegativeKeywordRequest'] = _GETKEYWORDPLANNEGATIVEKEYWORDREQUEST +DESCRIPTOR.message_types_by_name['MutateKeywordPlanNegativeKeywordsRequest'] = _MUTATEKEYWORDPLANNEGATIVEKEYWORDSREQUEST +DESCRIPTOR.message_types_by_name['KeywordPlanNegativeKeywordOperation'] = _KEYWORDPLANNEGATIVEKEYWORDOPERATION +DESCRIPTOR.message_types_by_name['MutateKeywordPlanNegativeKeywordsResponse'] = _MUTATEKEYWORDPLANNEGATIVEKEYWORDSRESPONSE +DESCRIPTOR.message_types_by_name['MutateKeywordPlanNegativeKeywordResult'] = _MUTATEKEYWORDPLANNEGATIVEKEYWORDRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetKeywordPlanNegativeKeywordRequest = _reflection.GeneratedProtocolMessageType('GetKeywordPlanNegativeKeywordRequest', (_message.Message,), dict( + DESCRIPTOR = _GETKEYWORDPLANNEGATIVEKEYWORDREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_negative_keyword_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanNegativeKeywordService.GetKeywordPlanNegativeKeyword][google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService.GetKeywordPlanNegativeKeyword]. + + + Attributes: + resource_name: + The resource name of the plan to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetKeywordPlanNegativeKeywordRequest) + )) +_sym_db.RegisterMessage(GetKeywordPlanNegativeKeywordRequest) + +MutateKeywordPlanNegativeKeywordsRequest = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanNegativeKeywordsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANNEGATIVEKEYWORDSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_negative_keyword_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanNegativeKeywordService.MutateKeywordPlanNegativeKeywords][google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService.MutateKeywordPlanNegativeKeywords]. + + + Attributes: + customer_id: + The ID of the customer whose negative keywords are being + modified. + operations: + The list of operations to perform on individual Keyword Plan + negative keywords. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsRequest) + )) +_sym_db.RegisterMessage(MutateKeywordPlanNegativeKeywordsRequest) + +KeywordPlanNegativeKeywordOperation = _reflection.GeneratedProtocolMessageType('KeywordPlanNegativeKeywordOperation', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANNEGATIVEKEYWORDOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_negative_keyword_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on a Keyword Plan negative + keyword. + + + Attributes: + update_mask: + The FieldMask that determines which resource fields are + modified in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + Keyword Plan negative keyword. + update: + Update operation: The Keyword Plan negative keyword expected + to have a valid resource name. + remove: + Remove operation: A resource name for the removed Keyword Plan + negative keywords expected in this format: ``customers/{custo + mer_id}/keywordPlanNegativeKeywords/{kp_negative_keyword_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanNegativeKeywordOperation) + )) +_sym_db.RegisterMessage(KeywordPlanNegativeKeywordOperation) + +MutateKeywordPlanNegativeKeywordsResponse = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanNegativeKeywordsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANNEGATIVEKEYWORDSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_negative_keyword_service_pb2' + , + __doc__ = """Response message for a Keyword Plan negative keyword mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordsResponse) + )) +_sym_db.RegisterMessage(MutateKeywordPlanNegativeKeywordsResponse) + +MutateKeywordPlanNegativeKeywordResult = _reflection.GeneratedProtocolMessageType('MutateKeywordPlanNegativeKeywordResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANNEGATIVEKEYWORDRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_negative_keyword_service_pb2' + , + __doc__ = """The result for the Keyword Plan negative keyword mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlanNegativeKeywordResult) + )) +_sym_db.RegisterMessage(MutateKeywordPlanNegativeKeywordResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB&KeywordPlanNegativeKeywordServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_KEYWORDPLANNEGATIVEKEYWORDSERVICE = _descriptor.ServiceDescriptor( + name='KeywordPlanNegativeKeywordService', + full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=966, + serialized_end=1509, + methods=[ + _descriptor.MethodDescriptor( + name='GetKeywordPlanNegativeKeyword', + full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService.GetKeywordPlanNegativeKeyword', + index=0, + containing_service=None, + input_type=_GETKEYWORDPLANNEGATIVEKEYWORDREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2._KEYWORDPLANNEGATIVEKEYWORD, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002?\022=/v0/{resource_name=customers/*/keywordPlanNegativeKeywords/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateKeywordPlanNegativeKeywords', + full_name='google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService.MutateKeywordPlanNegativeKeywords', + index=1, + containing_service=None, + input_type=_MUTATEKEYWORDPLANNEGATIVEKEYWORDSREQUEST, + output_type=_MUTATEKEYWORDPLANNEGATIVEKEYWORDSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002E\"@/v0/customers/{customer_id=*}/keywordPlanNegativeKeywords:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_KEYWORDPLANNEGATIVEKEYWORDSERVICE) + +DESCRIPTOR.services_by_name['KeywordPlanNegativeKeywordService'] = _KEYWORDPLANNEGATIVEKEYWORDSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_negative_keyword_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/keyword_plan_negative_keyword_service_pb2_grpc.py new file mode 100644 index 000000000..2ed2c491b --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_negative_keyword_service_pb2_grpc.py @@ -0,0 +1,65 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import keyword_plan_negative_keyword_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_negative_keyword_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__negative__keyword__service__pb2 + + +class KeywordPlanNegativeKeywordServiceStub(object): + """Service to manage Keyword Plan negative keywords. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetKeywordPlanNegativeKeyword = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService/GetKeywordPlanNegativeKeyword', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__negative__keyword__service__pb2.GetKeywordPlanNegativeKeywordRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2.KeywordPlanNegativeKeyword.FromString, + ) + self.MutateKeywordPlanNegativeKeywords = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService/MutateKeywordPlanNegativeKeywords', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__negative__keyword__service__pb2.MutateKeywordPlanNegativeKeywordsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__negative__keyword__service__pb2.MutateKeywordPlanNegativeKeywordsResponse.FromString, + ) + + +class KeywordPlanNegativeKeywordServiceServicer(object): + """Service to manage Keyword Plan negative keywords. + """ + + def GetKeywordPlanNegativeKeyword(self, request, context): + """Returns the requested plan in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateKeywordPlanNegativeKeywords(self, request, context): + """Creates, updates, or removes Keyword Plan negative keywords. Operation + statuses are returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_KeywordPlanNegativeKeywordServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetKeywordPlanNegativeKeyword': grpc.unary_unary_rpc_method_handler( + servicer.GetKeywordPlanNegativeKeyword, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__negative__keyword__service__pb2.GetKeywordPlanNegativeKeywordRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__negative__keyword__pb2.KeywordPlanNegativeKeyword.SerializeToString, + ), + 'MutateKeywordPlanNegativeKeywords': grpc.unary_unary_rpc_method_handler( + servicer.MutateKeywordPlanNegativeKeywords, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__negative__keyword__service__pb2.MutateKeywordPlanNegativeKeywordsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__negative__keyword__service__pb2.MutateKeywordPlanNegativeKeywordsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_service_pb2.py b/google/ads/google_ads/v0/proto/services/keyword_plan_service_pb2.py new file mode 100644 index 000000000..b29abdfb6 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_service_pb2.py @@ -0,0 +1,933 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/keyword_plan_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.common import keyword_plan_common_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_keyword__plan__common__pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 +from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/keyword_plan_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nAgoogle/ads/googleads_v0/proto/services/keyword_plan_service.proto\x12 google.ads.googleads.v0.services\x1a>google/ads/googleads_v0/proto/common/keyword_plan_common.proto\x1a:google/ads/googleads_v0/proto/resources/keyword_plan.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a\x1egoogle/protobuf/wrappers.proto\".\n\x15GetKeywordPlanRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"|\n\x19MutateKeywordPlansRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12J\n\noperations\x18\x02 \x03(\x0b\x32\x36.google.ads.googleads.v0.services.KeywordPlanOperation\"\xea\x01\n\x14KeywordPlanOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12@\n\x06\x63reate\x18\x01 \x01(\x0b\x32..google.ads.googleads.v0.resources.KeywordPlanH\x00\x12@\n\x06update\x18\x02 \x01(\x0b\x32..google.ads.googleads.v0.resources.KeywordPlanH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"i\n\x1aMutateKeywordPlansResponse\x12K\n\x07results\x18\x02 \x03(\x0b\x32:.google.ads.googleads.v0.services.MutateKeywordPlansResult\"1\n\x18MutateKeywordPlansResult\x12\x15\n\rresource_name\x18\x01 \x01(\t\"6\n\x1eGenerateForecastMetricsRequest\x12\x14\n\x0ckeyword_plan\x18\x01 \x01(\t\"\xaf\x02\n\x1fGenerateForecastMetricsResponse\x12Y\n\x12\x63\x61mpaign_forecasts\x18\x01 \x03(\x0b\x32=.google.ads.googleads.v0.services.KeywordPlanCampaignForecast\x12X\n\x12\x61\x64_group_forecasts\x18\x02 \x03(\x0b\x32<.google.ads.googleads.v0.services.KeywordPlanAdGroupForecast\x12W\n\x11keyword_forecasts\x18\x03 \x03(\x0b\x32<.google.ads.googleads.v0.services.KeywordPlanKeywordForecast\"\xa8\x01\n\x1bKeywordPlanCampaignForecast\x12;\n\x15keyword_plan_campaign\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12L\n\x11\x63\x61mpaign_forecast\x18\x02 \x01(\x0b\x32\x31.google.ads.googleads.v0.services.ForecastMetrics\"\xa7\x01\n\x1aKeywordPlanAdGroupForecast\x12;\n\x15keyword_plan_ad_group\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12L\n\x11\x61\x64_group_forecast\x18\x02 \x01(\x0b\x32\x31.google.ads.googleads.v0.services.ForecastMetrics\"\xae\x01\n\x1aKeywordPlanKeywordForecast\x12\x43\n\x1dkeyword_plan_ad_group_keyword\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12K\n\x10keyword_forecast\x18\x02 \x01(\x0b\x32\x31.google.ads.googleads.v0.services.ForecastMetrics\"\x81\x02\n\x0f\x46orecastMetrics\x12\x31\n\x0bimpressions\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12)\n\x03\x63tr\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0b\x61verage_cpc\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12,\n\x06\x63licks\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x30\n\x0b\x63ost_micros\x18\x06 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"8\n GenerateHistoricalMetricsRequest\x12\x14\n\x0ckeyword_plan\x18\x01 \x01(\t\"{\n!GenerateHistoricalMetricsResponse\x12V\n\x07metrics\x18\x01 \x03(\x0b\x32\x45.google.ads.googleads.v0.services.KeywordPlanKeywordHistoricalMetrics\"\xb0\x01\n#KeywordPlanKeywordHistoricalMetrics\x12\x32\n\x0csearch_query\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12U\n\x0fkeyword_metrics\x18\x02 \x01(\x0b\x32<.google.ads.googleads.v0.common.KeywordPlanHistoricalMetrics2\x86\x07\n\x12KeywordPlanService\x12\xb1\x01\n\x0eGetKeywordPlan\x12\x37.google.ads.googleads.v0.services.GetKeywordPlanRequest\x1a..google.ads.googleads.v0.resources.KeywordPlan\"6\x82\xd3\xe4\x93\x02\x30\x12./v0/{resource_name=customers/*/keywordPlans/*}\x12\xcd\x01\n\x12MutateKeywordPlans\x12;.google.ads.googleads.v0.services.MutateKeywordPlansRequest\x1a<.google.ads.googleads.v0.services.MutateKeywordPlansResponse\"<\x82\xd3\xe4\x93\x02\x36\"1/v0/customers/{customer_id=*}/keywordPlans:mutate:\x01*\x12\xf0\x01\n\x17GenerateForecastMetrics\x12@.google.ads.googleads.v0.services.GenerateForecastMetricsRequest\x1a\x41.google.ads.googleads.v0.services.GenerateForecastMetricsResponse\"P\x82\xd3\xe4\x93\x02J\"E/v0/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics:\x01*\x12\xf8\x01\n\x19GenerateHistoricalMetrics\x12\x42.google.ads.googleads.v0.services.GenerateHistoricalMetricsRequest\x1a\x43.google.ads.googleads.v0.services.GenerateHistoricalMetricsResponse\"R\x82\xd3\xe4\x93\x02L\"G/v0/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics:\x01*B\xd7\x01\n$com.google.ads.googleads.v0.servicesB\x17KeywordPlanServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_keyword__plan__common__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,]) + + + + +_GETKEYWORDPLANREQUEST = _descriptor.Descriptor( + name='GetKeywordPlanRequest', + full_name='google.ads.googleads.v0.services.GetKeywordPlanRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetKeywordPlanRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=323, + serialized_end=369, +) + + +_MUTATEKEYWORDPLANSREQUEST = _descriptor.Descriptor( + name='MutateKeywordPlansRequest', + full_name='google.ads.googleads.v0.services.MutateKeywordPlansRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateKeywordPlansRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateKeywordPlansRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=371, + serialized_end=495, +) + + +_KEYWORDPLANOPERATION = _descriptor.Descriptor( + name='KeywordPlanOperation', + full_name='google.ads.googleads.v0.services.KeywordPlanOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.KeywordPlanOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.KeywordPlanOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.KeywordPlanOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.KeywordPlanOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.KeywordPlanOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=498, + serialized_end=732, +) + + +_MUTATEKEYWORDPLANSRESPONSE = _descriptor.Descriptor( + name='MutateKeywordPlansResponse', + full_name='google.ads.googleads.v0.services.MutateKeywordPlansResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateKeywordPlansResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=734, + serialized_end=839, +) + + +_MUTATEKEYWORDPLANSRESULT = _descriptor.Descriptor( + name='MutateKeywordPlansResult', + full_name='google.ads.googleads.v0.services.MutateKeywordPlansResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateKeywordPlansResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=841, + serialized_end=890, +) + + +_GENERATEFORECASTMETRICSREQUEST = _descriptor.Descriptor( + name='GenerateForecastMetricsRequest', + full_name='google.ads.googleads.v0.services.GenerateForecastMetricsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='keyword_plan', full_name='google.ads.googleads.v0.services.GenerateForecastMetricsRequest.keyword_plan', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=892, + serialized_end=946, +) + + +_GENERATEFORECASTMETRICSRESPONSE = _descriptor.Descriptor( + name='GenerateForecastMetricsResponse', + full_name='google.ads.googleads.v0.services.GenerateForecastMetricsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='campaign_forecasts', full_name='google.ads.googleads.v0.services.GenerateForecastMetricsResponse.campaign_forecasts', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_forecasts', full_name='google.ads.googleads.v0.services.GenerateForecastMetricsResponse.ad_group_forecasts', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_forecasts', full_name='google.ads.googleads.v0.services.GenerateForecastMetricsResponse.keyword_forecasts', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=949, + serialized_end=1252, +) + + +_KEYWORDPLANCAMPAIGNFORECAST = _descriptor.Descriptor( + name='KeywordPlanCampaignForecast', + full_name='google.ads.googleads.v0.services.KeywordPlanCampaignForecast', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='keyword_plan_campaign', full_name='google.ads.googleads.v0.services.KeywordPlanCampaignForecast.keyword_plan_campaign', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='campaign_forecast', full_name='google.ads.googleads.v0.services.KeywordPlanCampaignForecast.campaign_forecast', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1255, + serialized_end=1423, +) + + +_KEYWORDPLANADGROUPFORECAST = _descriptor.Descriptor( + name='KeywordPlanAdGroupForecast', + full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupForecast', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='keyword_plan_ad_group', full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupForecast.keyword_plan_ad_group', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ad_group_forecast', full_name='google.ads.googleads.v0.services.KeywordPlanAdGroupForecast.ad_group_forecast', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1426, + serialized_end=1593, +) + + +_KEYWORDPLANKEYWORDFORECAST = _descriptor.Descriptor( + name='KeywordPlanKeywordForecast', + full_name='google.ads.googleads.v0.services.KeywordPlanKeywordForecast', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='keyword_plan_ad_group_keyword', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordForecast.keyword_plan_ad_group_keyword', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_forecast', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordForecast.keyword_forecast', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1596, + serialized_end=1770, +) + + +_FORECASTMETRICS = _descriptor.Descriptor( + name='ForecastMetrics', + full_name='google.ads.googleads.v0.services.ForecastMetrics', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='impressions', full_name='google.ads.googleads.v0.services.ForecastMetrics.impressions', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='ctr', full_name='google.ads.googleads.v0.services.ForecastMetrics.ctr', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='average_cpc', full_name='google.ads.googleads.v0.services.ForecastMetrics.average_cpc', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='clicks', full_name='google.ads.googleads.v0.services.ForecastMetrics.clicks', index=3, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='cost_micros', full_name='google.ads.googleads.v0.services.ForecastMetrics.cost_micros', index=4, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1773, + serialized_end=2030, +) + + +_GENERATEHISTORICALMETRICSREQUEST = _descriptor.Descriptor( + name='GenerateHistoricalMetricsRequest', + full_name='google.ads.googleads.v0.services.GenerateHistoricalMetricsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='keyword_plan', full_name='google.ads.googleads.v0.services.GenerateHistoricalMetricsRequest.keyword_plan', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2032, + serialized_end=2088, +) + + +_GENERATEHISTORICALMETRICSRESPONSE = _descriptor.Descriptor( + name='GenerateHistoricalMetricsResponse', + full_name='google.ads.googleads.v0.services.GenerateHistoricalMetricsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='metrics', full_name='google.ads.googleads.v0.services.GenerateHistoricalMetricsResponse.metrics', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2090, + serialized_end=2213, +) + + +_KEYWORDPLANKEYWORDHISTORICALMETRICS = _descriptor.Descriptor( + name='KeywordPlanKeywordHistoricalMetrics', + full_name='google.ads.googleads.v0.services.KeywordPlanKeywordHistoricalMetrics', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='search_query', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordHistoricalMetrics.search_query', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='keyword_metrics', full_name='google.ads.googleads.v0.services.KeywordPlanKeywordHistoricalMetrics.keyword_metrics', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2216, + serialized_end=2392, +) + +_MUTATEKEYWORDPLANSREQUEST.fields_by_name['operations'].message_type = _KEYWORDPLANOPERATION +_KEYWORDPLANOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_KEYWORDPLANOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2._KEYWORDPLAN +_KEYWORDPLANOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2._KEYWORDPLAN +_KEYWORDPLANOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANOPERATION.fields_by_name['create']) +_KEYWORDPLANOPERATION.fields_by_name['create'].containing_oneof = _KEYWORDPLANOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANOPERATION.fields_by_name['update']) +_KEYWORDPLANOPERATION.fields_by_name['update'].containing_oneof = _KEYWORDPLANOPERATION.oneofs_by_name['operation'] +_KEYWORDPLANOPERATION.oneofs_by_name['operation'].fields.append( + _KEYWORDPLANOPERATION.fields_by_name['remove']) +_KEYWORDPLANOPERATION.fields_by_name['remove'].containing_oneof = _KEYWORDPLANOPERATION.oneofs_by_name['operation'] +_MUTATEKEYWORDPLANSRESPONSE.fields_by_name['results'].message_type = _MUTATEKEYWORDPLANSRESULT +_GENERATEFORECASTMETRICSRESPONSE.fields_by_name['campaign_forecasts'].message_type = _KEYWORDPLANCAMPAIGNFORECAST +_GENERATEFORECASTMETRICSRESPONSE.fields_by_name['ad_group_forecasts'].message_type = _KEYWORDPLANADGROUPFORECAST +_GENERATEFORECASTMETRICSRESPONSE.fields_by_name['keyword_forecasts'].message_type = _KEYWORDPLANKEYWORDFORECAST +_KEYWORDPLANCAMPAIGNFORECAST.fields_by_name['keyword_plan_campaign'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANCAMPAIGNFORECAST.fields_by_name['campaign_forecast'].message_type = _FORECASTMETRICS +_KEYWORDPLANADGROUPFORECAST.fields_by_name['keyword_plan_ad_group'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANADGROUPFORECAST.fields_by_name['ad_group_forecast'].message_type = _FORECASTMETRICS +_KEYWORDPLANKEYWORDFORECAST.fields_by_name['keyword_plan_ad_group_keyword'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANKEYWORDFORECAST.fields_by_name['keyword_forecast'].message_type = _FORECASTMETRICS +_FORECASTMETRICS.fields_by_name['impressions'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE +_FORECASTMETRICS.fields_by_name['ctr'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE +_FORECASTMETRICS.fields_by_name['average_cpc'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_FORECASTMETRICS.fields_by_name['clicks'].message_type = google_dot_protobuf_dot_wrappers__pb2._DOUBLEVALUE +_FORECASTMETRICS.fields_by_name['cost_micros'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT64VALUE +_GENERATEHISTORICALMETRICSRESPONSE.fields_by_name['metrics'].message_type = _KEYWORDPLANKEYWORDHISTORICALMETRICS +_KEYWORDPLANKEYWORDHISTORICALMETRICS.fields_by_name['search_query'].message_type = google_dot_protobuf_dot_wrappers__pb2._STRINGVALUE +_KEYWORDPLANKEYWORDHISTORICALMETRICS.fields_by_name['keyword_metrics'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_common_dot_keyword__plan__common__pb2._KEYWORDPLANHISTORICALMETRICS +DESCRIPTOR.message_types_by_name['GetKeywordPlanRequest'] = _GETKEYWORDPLANREQUEST +DESCRIPTOR.message_types_by_name['MutateKeywordPlansRequest'] = _MUTATEKEYWORDPLANSREQUEST +DESCRIPTOR.message_types_by_name['KeywordPlanOperation'] = _KEYWORDPLANOPERATION +DESCRIPTOR.message_types_by_name['MutateKeywordPlansResponse'] = _MUTATEKEYWORDPLANSRESPONSE +DESCRIPTOR.message_types_by_name['MutateKeywordPlansResult'] = _MUTATEKEYWORDPLANSRESULT +DESCRIPTOR.message_types_by_name['GenerateForecastMetricsRequest'] = _GENERATEFORECASTMETRICSREQUEST +DESCRIPTOR.message_types_by_name['GenerateForecastMetricsResponse'] = _GENERATEFORECASTMETRICSRESPONSE +DESCRIPTOR.message_types_by_name['KeywordPlanCampaignForecast'] = _KEYWORDPLANCAMPAIGNFORECAST +DESCRIPTOR.message_types_by_name['KeywordPlanAdGroupForecast'] = _KEYWORDPLANADGROUPFORECAST +DESCRIPTOR.message_types_by_name['KeywordPlanKeywordForecast'] = _KEYWORDPLANKEYWORDFORECAST +DESCRIPTOR.message_types_by_name['ForecastMetrics'] = _FORECASTMETRICS +DESCRIPTOR.message_types_by_name['GenerateHistoricalMetricsRequest'] = _GENERATEHISTORICALMETRICSREQUEST +DESCRIPTOR.message_types_by_name['GenerateHistoricalMetricsResponse'] = _GENERATEHISTORICALMETRICSRESPONSE +DESCRIPTOR.message_types_by_name['KeywordPlanKeywordHistoricalMetrics'] = _KEYWORDPLANKEYWORDHISTORICALMETRICS +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetKeywordPlanRequest = _reflection.GeneratedProtocolMessageType('GetKeywordPlanRequest', (_message.Message,), dict( + DESCRIPTOR = _GETKEYWORDPLANREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanService.GetKeywordPlan][google.ads.googleads.v0.services.KeywordPlanService.GetKeywordPlan]. + + + Attributes: + resource_name: + The resource name of the plan to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetKeywordPlanRequest) + )) +_sym_db.RegisterMessage(GetKeywordPlanRequest) + +MutateKeywordPlansRequest = _reflection.GeneratedProtocolMessageType('MutateKeywordPlansRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanService.MutateKeywordPlans][google.ads.googleads.v0.services.KeywordPlanService.MutateKeywordPlans]. + + + Attributes: + customer_id: + The ID of the customer whose keyword plans are being modified. + operations: + The list of operations to perform on individual keyword plans. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlansRequest) + )) +_sym_db.RegisterMessage(MutateKeywordPlansRequest) + +KeywordPlanOperation = _reflection.GeneratedProtocolMessageType('KeywordPlanOperation', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """A single operation (create, update, remove) on a keyword plan. + + + Attributes: + update_mask: + The FieldMask that determines which resource fields are + modified in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + keyword plan. + update: + Update operation: The keyword plan is expected to have a valid + resource name. + remove: + Remove operation: A resource name for the removed keyword plan + is expected in this format: + ``customers/{customer_id}/keywordPlans/{keyword_plan_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanOperation) + )) +_sym_db.RegisterMessage(KeywordPlanOperation) + +MutateKeywordPlansResponse = _reflection.GeneratedProtocolMessageType('MutateKeywordPlansResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """Response message for a keyword plan mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlansResponse) + )) +_sym_db.RegisterMessage(MutateKeywordPlansResponse) + +MutateKeywordPlansResult = _reflection.GeneratedProtocolMessageType('MutateKeywordPlansResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEKEYWORDPLANSRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """The result for the keyword plan mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateKeywordPlansResult) + )) +_sym_db.RegisterMessage(MutateKeywordPlansResult) + +GenerateForecastMetricsRequest = _reflection.GeneratedProtocolMessageType('GenerateForecastMetricsRequest', (_message.Message,), dict( + DESCRIPTOR = _GENERATEFORECASTMETRICSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v0.services.KeywordPlanService.GenerateForecastMetrics]. + + + Attributes: + keyword_plan: + The resource name of the keyword plan to be forecasted. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GenerateForecastMetricsRequest) + )) +_sym_db.RegisterMessage(GenerateForecastMetricsRequest) + +GenerateForecastMetricsResponse = _reflection.GeneratedProtocolMessageType('GenerateForecastMetricsResponse', (_message.Message,), dict( + DESCRIPTOR = _GENERATEFORECASTMETRICSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """Response message for + [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v0.services.KeywordPlanService.GenerateForecastMetrics]. + + + Attributes: + campaign_forecasts: + List of campaign forecasts. One maximum. + ad_group_forecasts: + List of ad group forecasts. + keyword_forecasts: + List of keyword forecasts. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GenerateForecastMetricsResponse) + )) +_sym_db.RegisterMessage(GenerateForecastMetricsResponse) + +KeywordPlanCampaignForecast = _reflection.GeneratedProtocolMessageType('KeywordPlanCampaignForecast', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANCAMPAIGNFORECAST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """A campaign forecast. + + + Attributes: + keyword_plan_campaign: + The resource name of the Keyword Plan campaign related to the + forecast. ``customers/{customer_id}/keywordPlanCampaigns/{key + word+plan_campaign_id}`` + campaign_forecast: + The forecast for the Keyword Plan campaign. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanCampaignForecast) + )) +_sym_db.RegisterMessage(KeywordPlanCampaignForecast) + +KeywordPlanAdGroupForecast = _reflection.GeneratedProtocolMessageType('KeywordPlanAdGroupForecast', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANADGROUPFORECAST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """An ad group forecast. + + + Attributes: + keyword_plan_ad_group: + The resource name of the Keyword Plan ad group related to the + forecast. ``customers/{customer_id}/keywordPlanAdGroups/{keyw + ord_plan_ad_group_id}`` + ad_group_forecast: + The forecast for the Keyword Plan ad group. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanAdGroupForecast) + )) +_sym_db.RegisterMessage(KeywordPlanAdGroupForecast) + +KeywordPlanKeywordForecast = _reflection.GeneratedProtocolMessageType('KeywordPlanKeywordForecast', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANKEYWORDFORECAST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """A keyword forecast. + + + Attributes: + keyword_plan_ad_group_keyword: + The resource name of the Keyword Plan keyword related to the + forecast. ``customers/{customer_id}/keywordPlanAdGroupKeyword + s/{keyword_plan_ad_group_keyword_id}`` + keyword_forecast: + The forecast for the Keyword Plan keyword. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanKeywordForecast) + )) +_sym_db.RegisterMessage(KeywordPlanKeywordForecast) + +ForecastMetrics = _reflection.GeneratedProtocolMessageType('ForecastMetrics', (_message.Message,), dict( + DESCRIPTOR = _FORECASTMETRICS, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """Forecast metrics. + + + Attributes: + impressions: + Impressions + ctr: + Ctr + average_cpc: + AVG cpc + clicks: + Clicks + cost_micros: + Cost + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.ForecastMetrics) + )) +_sym_db.RegisterMessage(ForecastMetrics) + +GenerateHistoricalMetricsRequest = _reflection.GeneratedProtocolMessageType('GenerateHistoricalMetricsRequest', (_message.Message,), dict( + DESCRIPTOR = _GENERATEHISTORICALMETRICSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """Request message for + [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v0.services.KeywordPlanService.GenerateHistoricalMetrics]. + + + Attributes: + keyword_plan: + The resource name of the keyword plan of which historical + metrics are requested. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GenerateHistoricalMetricsRequest) + )) +_sym_db.RegisterMessage(GenerateHistoricalMetricsRequest) + +GenerateHistoricalMetricsResponse = _reflection.GeneratedProtocolMessageType('GenerateHistoricalMetricsResponse', (_message.Message,), dict( + DESCRIPTOR = _GENERATEHISTORICALMETRICSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """Response message for + [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v0.services.KeywordPlanService.GenerateHistoricalMetrics]. + + + Attributes: + metrics: + List of keyword historical metrics. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GenerateHistoricalMetricsResponse) + )) +_sym_db.RegisterMessage(GenerateHistoricalMetricsResponse) + +KeywordPlanKeywordHistoricalMetrics = _reflection.GeneratedProtocolMessageType('KeywordPlanKeywordHistoricalMetrics', (_message.Message,), dict( + DESCRIPTOR = _KEYWORDPLANKEYWORDHISTORICALMETRICS, + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_plan_service_pb2' + , + __doc__ = """A keyword historical metrics. + + + Attributes: + search_query: + The text of the query associated with one or more + ad\_group\_keywords in the plan. Note that we de-dupe your + keywords list, eliminating close variants before returning the + plan's keywords as text. For example, if your plan originally + contained the keywords 'car' and 'cars', the returned search + query will only contain 'car'. + keyword_metrics: + The historical metrics for the query associated with one or + more ad\_group\_keywords in the plan. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.KeywordPlanKeywordHistoricalMetrics) + )) +_sym_db.RegisterMessage(KeywordPlanKeywordHistoricalMetrics) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\027KeywordPlanServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_KEYWORDPLANSERVICE = _descriptor.ServiceDescriptor( + name='KeywordPlanService', + full_name='google.ads.googleads.v0.services.KeywordPlanService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=2395, + serialized_end=3297, + methods=[ + _descriptor.MethodDescriptor( + name='GetKeywordPlan', + full_name='google.ads.googleads.v0.services.KeywordPlanService.GetKeywordPlan', + index=0, + containing_service=None, + input_type=_GETKEYWORDPLANREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2._KEYWORDPLAN, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0020\022./v0/{resource_name=customers/*/keywordPlans/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateKeywordPlans', + full_name='google.ads.googleads.v0.services.KeywordPlanService.MutateKeywordPlans', + index=1, + containing_service=None, + input_type=_MUTATEKEYWORDPLANSREQUEST, + output_type=_MUTATEKEYWORDPLANSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0026\"1/v0/customers/{customer_id=*}/keywordPlans:mutate:\001*')), + ), + _descriptor.MethodDescriptor( + name='GenerateForecastMetrics', + full_name='google.ads.googleads.v0.services.KeywordPlanService.GenerateForecastMetrics', + index=2, + containing_service=None, + input_type=_GENERATEFORECASTMETRICSREQUEST, + output_type=_GENERATEFORECASTMETRICSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002J\"E/v0/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics:\001*')), + ), + _descriptor.MethodDescriptor( + name='GenerateHistoricalMetrics', + full_name='google.ads.googleads.v0.services.KeywordPlanService.GenerateHistoricalMetrics', + index=3, + containing_service=None, + input_type=_GENERATEHISTORICALMETRICSREQUEST, + output_type=_GENERATEHISTORICALMETRICSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002L\"G/v0/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_KEYWORDPLANSERVICE) + +DESCRIPTOR.services_by_name['KeywordPlanService'] = _KEYWORDPLANSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/keyword_plan_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/keyword_plan_service_pb2_grpc.py new file mode 100644 index 000000000..42436ec3d --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/keyword_plan_service_pb2_grpc.py @@ -0,0 +1,99 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import keyword_plan_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2 + + +class KeywordPlanServiceStub(object): + """Service to manage keyword plans. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetKeywordPlan = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanService/GetKeywordPlan', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GetKeywordPlanRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2.KeywordPlan.FromString, + ) + self.MutateKeywordPlans = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanService/MutateKeywordPlans', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.MutateKeywordPlansRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.MutateKeywordPlansResponse.FromString, + ) + self.GenerateForecastMetrics = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanService/GenerateForecastMetrics', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GenerateForecastMetricsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GenerateForecastMetricsResponse.FromString, + ) + self.GenerateHistoricalMetrics = channel.unary_unary( + '/google.ads.googleads.v0.services.KeywordPlanService/GenerateHistoricalMetrics', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GenerateHistoricalMetricsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GenerateHistoricalMetricsResponse.FromString, + ) + + +class KeywordPlanServiceServicer(object): + """Service to manage keyword plans. + """ + + def GetKeywordPlan(self, request, context): + """Returns the requested plan in full detail. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateKeywordPlans(self, request, context): + """Creates, updates, or removes keyword plans. Operation statuses are + returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GenerateForecastMetrics(self, request, context): + """Returns the requested Keyword Plan forecasts. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GenerateHistoricalMetrics(self, request, context): + """Returns the requested Keyword Plan historical metrics. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_KeywordPlanServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetKeywordPlan': grpc.unary_unary_rpc_method_handler( + servicer.GetKeywordPlan, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GetKeywordPlanRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_keyword__plan__pb2.KeywordPlan.SerializeToString, + ), + 'MutateKeywordPlans': grpc.unary_unary_rpc_method_handler( + servicer.MutateKeywordPlans, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.MutateKeywordPlansRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.MutateKeywordPlansResponse.SerializeToString, + ), + 'GenerateForecastMetrics': grpc.unary_unary_rpc_method_handler( + servicer.GenerateForecastMetrics, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GenerateForecastMetricsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GenerateForecastMetricsResponse.SerializeToString, + ), + 'GenerateHistoricalMetrics': grpc.unary_unary_rpc_method_handler( + servicer.GenerateHistoricalMetrics, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GenerateHistoricalMetricsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_keyword__plan__service__pb2.GenerateHistoricalMetricsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.KeywordPlanService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/keyword_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/keyword_view_service_pb2.py index 04d83ba20..aa53f5bae 100644 --- a/google/ads/google_ads/v0/proto/services/keyword_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/keyword_view_service_pb2.py @@ -63,7 +63,7 @@ GetKeywordViewRequest = _reflection.GeneratedProtocolMessageType('GetKeywordViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETKEYWORDVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.keyword_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.keyword_view_service_pb2' , __doc__ = """Request message for [KeywordViewService.GetKeywordView][google.ads.googleads.v0.services.KeywordViewService.GetKeywordView]. diff --git a/google/ads/google_ads/v0/proto/services/language_constant_service_pb2.py b/google/ads/google_ads/v0/proto/services/language_constant_service_pb2.py new file mode 100644 index 000000000..285678a2b --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/language_constant_service_pb2.py @@ -0,0 +1,107 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/language_constant_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import language_constant_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/language_constant_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nFgoogle/ads/googleads_v0/proto/services/language_constant_service.proto\x12 google.ads.googleads.v0.services\x1a?google/ads/googleads_v0/proto/resources/language_constant.proto\x1a\x1cgoogle/api/annotations.proto\"3\n\x1aGetLanguageConstantRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xd5\x01\n\x17LanguageConstantService\x12\xb9\x01\n\x13GetLanguageConstant\x12<.google.ads.googleads.v0.services.GetLanguageConstantRequest\x1a\x33.google.ads.googleads.v0.resources.LanguageConstant\"/\x82\xd3\xe4\x93\x02)\x12\'/v0/{resource_name=languageConstants/*}B\xdc\x01\n$com.google.ads.googleads.v0.servicesB\x1cLanguageConstantServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_GETLANGUAGECONSTANTREQUEST = _descriptor.Descriptor( + name='GetLanguageConstantRequest', + full_name='google.ads.googleads.v0.services.GetLanguageConstantRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetLanguageConstantRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=203, + serialized_end=254, +) + +DESCRIPTOR.message_types_by_name['GetLanguageConstantRequest'] = _GETLANGUAGECONSTANTREQUEST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetLanguageConstantRequest = _reflection.GeneratedProtocolMessageType('GetLanguageConstantRequest', (_message.Message,), dict( + DESCRIPTOR = _GETLANGUAGECONSTANTREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.language_constant_service_pb2' + , + __doc__ = """Request message for + [LanguageConstantService.GetLanguageConstant][google.ads.googleads.v0.services.LanguageConstantService.GetLanguageConstant]. + + + Attributes: + resource_name: + Resource name of the language constant to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetLanguageConstantRequest) + )) +_sym_db.RegisterMessage(GetLanguageConstantRequest) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\034LanguageConstantServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_LANGUAGECONSTANTSERVICE = _descriptor.ServiceDescriptor( + name='LanguageConstantService', + full_name='google.ads.googleads.v0.services.LanguageConstantService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=257, + serialized_end=470, + methods=[ + _descriptor.MethodDescriptor( + name='GetLanguageConstant', + full_name='google.ads.googleads.v0.services.LanguageConstantService.GetLanguageConstant', + index=0, + containing_service=None, + input_type=_GETLANGUAGECONSTANTREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2._LANGUAGECONSTANT, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002)\022\'/v0/{resource_name=languageConstants/*}')), + ), +]) +_sym_db.RegisterServiceDescriptor(_LANGUAGECONSTANTSERVICE) + +DESCRIPTOR.services_by_name['LanguageConstantService'] = _LANGUAGECONSTANTSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/language_constant_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/language_constant_service_pb2_grpc.py new file mode 100644 index 000000000..a95a9795c --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/language_constant_service_pb2_grpc.py @@ -0,0 +1,47 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import language_constant_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2 +from google.ads.google_ads.v0.proto.services import language_constant_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_language__constant__service__pb2 + + +class LanguageConstantServiceStub(object): + """Service to fetch language constants. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetLanguageConstant = channel.unary_unary( + '/google.ads.googleads.v0.services.LanguageConstantService/GetLanguageConstant', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_language__constant__service__pb2.GetLanguageConstantRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2.LanguageConstant.FromString, + ) + + +class LanguageConstantServiceServicer(object): + """Service to fetch language constants. + """ + + def GetLanguageConstant(self, request, context): + """Returns the requested language constant. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_LanguageConstantServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetLanguageConstant': grpc.unary_unary_rpc_method_handler( + servicer.GetLanguageConstant, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_language__constant__service__pb2.GetLanguageConstantRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_language__constant__pb2.LanguageConstant.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.LanguageConstantService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/managed_placement_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/managed_placement_view_service_pb2.py index 58e281bbe..f43804c2d 100644 --- a/google/ads/google_ads/v0/proto/services/managed_placement_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/managed_placement_view_service_pb2.py @@ -63,7 +63,7 @@ GetManagedPlacementViewRequest = _reflection.GeneratedProtocolMessageType('GetManagedPlacementViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETMANAGEDPLACEMENTVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.managed_placement_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.managed_placement_view_service_pb2' , __doc__ = """Request message for [ManagedPlacementViewService.GetManagedPlacementView][google.ads.googleads.v0.services.ManagedPlacementViewService.GetManagedPlacementView]. diff --git a/google/ads/google_ads/v0/proto/services/media_file_service_pb2.py b/google/ads/google_ads/v0/proto/services/media_file_service_pb2.py index 891504b9f..41d1ccf94 100644 --- a/google/ads/google_ads/v0/proto/services/media_file_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/media_file_service_pb2.py @@ -207,7 +207,7 @@ GetMediaFileRequest = _reflection.GeneratedProtocolMessageType('GetMediaFileRequest', (_message.Message,), dict( DESCRIPTOR = _GETMEDIAFILEREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.media_file_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.media_file_service_pb2' , __doc__ = """Request message for [MediaFileService.GetMediaFile][google.ads.googleads.v0.services.MediaFileService.GetMediaFile] @@ -223,7 +223,7 @@ MutateMediaFilesRequest = _reflection.GeneratedProtocolMessageType('MutateMediaFilesRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATEMEDIAFILESREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.media_file_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.media_file_service_pb2' , __doc__ = """Request message for [MediaFileService.MutateMediaFiles][google.ads.googleads.v0.services.MediaFileService.MutateMediaFiles] @@ -241,7 +241,7 @@ MediaFileOperation = _reflection.GeneratedProtocolMessageType('MediaFileOperation', (_message.Message,), dict( DESCRIPTOR = _MEDIAFILEOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.media_file_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.media_file_service_pb2' , __doc__ = """A single operation to create media file. @@ -259,7 +259,7 @@ MutateMediaFilesResponse = _reflection.GeneratedProtocolMessageType('MutateMediaFilesResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATEMEDIAFILESRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.media_file_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.media_file_service_pb2' , __doc__ = """Response message for a media file mutate. @@ -274,7 +274,7 @@ MutateMediaFileResult = _reflection.GeneratedProtocolMessageType('MutateMediaFileResult', (_message.Message,), dict( DESCRIPTOR = _MUTATEMEDIAFILERESULT, - __module__ = 'google.ads.googleads_v0.proto.services.media_file_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.media_file_service_pb2' , __doc__ = """The result for the media file mutate. diff --git a/google/ads/google_ads/v0/proto/services/parental_status_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/parental_status_view_service_pb2.py index c13d8b374..d393643fc 100644 --- a/google/ads/google_ads/v0/proto/services/parental_status_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/parental_status_view_service_pb2.py @@ -63,7 +63,7 @@ GetParentalStatusViewRequest = _reflection.GeneratedProtocolMessageType('GetParentalStatusViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETPARENTALSTATUSVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.parental_status_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.parental_status_view_service_pb2' , __doc__ = """Request message for [ParentalStatusViewService.GetParentalStatusView][google.ads.googleads.v0.services.ParentalStatusViewService.GetParentalStatusView]. diff --git a/google/ads/google_ads/v0/proto/services/payments_account_service_pb2.py b/google/ads/google_ads/v0/proto/services/payments_account_service_pb2.py new file mode 100644 index 000000000..1fdee24e8 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/payments_account_service_pb2.py @@ -0,0 +1,156 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/payments_account_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import payments_account_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_payments__account__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/payments_account_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nEgoogle/ads/googleads_v0/proto/services/payments_account_service.proto\x12 google.ads.googleads.v0.services\x1a>google/ads/googleads_v0/proto/resources/payments_account.proto\x1a\x1cgoogle/api/annotations.proto\"2\n\x1bListPaymentsAccountsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\"m\n\x1cListPaymentsAccountsResponse\x12M\n\x11payments_accounts\x18\x01 \x03(\x0b\x32\x32.google.ads.googleads.v0.resources.PaymentsAccount2\xe8\x01\n\x16PaymentsAccountService\x12\xcd\x01\n\x14ListPaymentsAccounts\x12=.google.ads.googleads.v0.services.ListPaymentsAccountsRequest\x1a>.google.ads.googleads.v0.services.ListPaymentsAccountsResponse\"6\x82\xd3\xe4\x93\x02\x30\x12./v0/customers/{customer_id=*}/paymentsAccountsB\xdb\x01\n$com.google.ads.googleads.v0.servicesB\x1bPaymentsAccountServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_payments__account__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_LISTPAYMENTSACCOUNTSREQUEST = _descriptor.Descriptor( + name='ListPaymentsAccountsRequest', + full_name='google.ads.googleads.v0.services.ListPaymentsAccountsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.ListPaymentsAccountsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=201, + serialized_end=251, +) + + +_LISTPAYMENTSACCOUNTSRESPONSE = _descriptor.Descriptor( + name='ListPaymentsAccountsResponse', + full_name='google.ads.googleads.v0.services.ListPaymentsAccountsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='payments_accounts', full_name='google.ads.googleads.v0.services.ListPaymentsAccountsResponse.payments_accounts', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=253, + serialized_end=362, +) + +_LISTPAYMENTSACCOUNTSRESPONSE.fields_by_name['payments_accounts'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_payments__account__pb2._PAYMENTSACCOUNT +DESCRIPTOR.message_types_by_name['ListPaymentsAccountsRequest'] = _LISTPAYMENTSACCOUNTSREQUEST +DESCRIPTOR.message_types_by_name['ListPaymentsAccountsResponse'] = _LISTPAYMENTSACCOUNTSRESPONSE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +ListPaymentsAccountsRequest = _reflection.GeneratedProtocolMessageType('ListPaymentsAccountsRequest', (_message.Message,), dict( + DESCRIPTOR = _LISTPAYMENTSACCOUNTSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.payments_account_service_pb2' + , + __doc__ = """Request message for fetching all accessible Payments accounts. + + + Attributes: + customer_id: + The ID of the customer to apply the PaymentsAccount list + operation to. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.ListPaymentsAccountsRequest) + )) +_sym_db.RegisterMessage(ListPaymentsAccountsRequest) + +ListPaymentsAccountsResponse = _reflection.GeneratedProtocolMessageType('ListPaymentsAccountsResponse', (_message.Message,), dict( + DESCRIPTOR = _LISTPAYMENTSACCOUNTSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.payments_account_service_pb2' + , + __doc__ = """Response message for + [PaymentsAccountService.ListPaymentsAccounts][google.ads.googleads.v0.services.PaymentsAccountService.ListPaymentsAccounts]. + + + Attributes: + payments_accounts: + The list of accessible Payments accounts. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.ListPaymentsAccountsResponse) + )) +_sym_db.RegisterMessage(ListPaymentsAccountsResponse) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\033PaymentsAccountServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_PAYMENTSACCOUNTSERVICE = _descriptor.ServiceDescriptor( + name='PaymentsAccountService', + full_name='google.ads.googleads.v0.services.PaymentsAccountService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=365, + serialized_end=597, + methods=[ + _descriptor.MethodDescriptor( + name='ListPaymentsAccounts', + full_name='google.ads.googleads.v0.services.PaymentsAccountService.ListPaymentsAccounts', + index=0, + containing_service=None, + input_type=_LISTPAYMENTSACCOUNTSREQUEST, + output_type=_LISTPAYMENTSACCOUNTSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0020\022./v0/customers/{customer_id=*}/paymentsAccounts')), + ), +]) +_sym_db.RegisterServiceDescriptor(_PAYMENTSACCOUNTSERVICE) + +DESCRIPTOR.services_by_name['PaymentsAccountService'] = _PAYMENTSACCOUNTSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/payments_account_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/payments_account_service_pb2_grpc.py new file mode 100644 index 000000000..633a7bb2e --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/payments_account_service_pb2_grpc.py @@ -0,0 +1,50 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.services import payments_account_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_payments__account__service__pb2 + + +class PaymentsAccountServiceStub(object): + """Service to provide Payments accounts that can be used to set up consolidated + billing. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.ListPaymentsAccounts = channel.unary_unary( + '/google.ads.googleads.v0.services.PaymentsAccountService/ListPaymentsAccounts', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_payments__account__service__pb2.ListPaymentsAccountsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_payments__account__service__pb2.ListPaymentsAccountsResponse.FromString, + ) + + +class PaymentsAccountServiceServicer(object): + """Service to provide Payments accounts that can be used to set up consolidated + billing. + """ + + def ListPaymentsAccounts(self, request, context): + """Returns all Payments accounts associated with all managers + between the login customer ID and specified serving customer in the + hierarchy, inclusive. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_PaymentsAccountServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'ListPaymentsAccounts': grpc.unary_unary_rpc_method_handler( + servicer.ListPaymentsAccounts, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_payments__account__service__pb2.ListPaymentsAccountsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_payments__account__service__pb2.ListPaymentsAccountsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.PaymentsAccountService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/product_group_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/product_group_view_service_pb2.py index cd9ebcfad..a133c3655 100644 --- a/google/ads/google_ads/v0/proto/services/product_group_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/product_group_view_service_pb2.py @@ -63,7 +63,7 @@ GetProductGroupViewRequest = _reflection.GeneratedProtocolMessageType('GetProductGroupViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETPRODUCTGROUPVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.product_group_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.product_group_view_service_pb2' , __doc__ = """Request message for [ProductGroupViewService.GetProductGroupView][google.ads.googleads.v0.services.ProductGroupViewService.GetProductGroupView]. diff --git a/google/ads/google_ads/v0/proto/services/recommendation_service_pb2.py b/google/ads/google_ads/v0/proto/services/recommendation_service_pb2.py index 768757b1c..26e97919e 100644 --- a/google/ads/google_ads/v0/proto/services/recommendation_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/recommendation_service_pb2.py @@ -25,7 +25,7 @@ name='google/ads/googleads_v0/proto/services/recommendation_service.proto', package='google.ads.googleads.v0.services', syntax='proto3', - serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/services/recommendation_service.proto\x12 google.ads.googleads.v0.services\x1a.google.ads.googleads.v0.services.ApplyRecommendationOperation\"\x90\x08\n\x1c\x41pplyRecommendationOperation\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12r\n\x0f\x63\x61mpaign_budget\x18\x02 \x01(\x0b\x32W.google.ads.googleads.v0.services.ApplyRecommendationOperation.CampaignBudgetParametersH\x00\x12\x62\n\x07text_ad\x18\x03 \x01(\x0b\x32O.google.ads.googleads.v0.services.ApplyRecommendationOperation.TextAdParametersH\x00\x12\x63\n\x07keyword\x18\x04 \x01(\x0b\x32P.google.ads.googleads.v0.services.ApplyRecommendationOperation.KeywordParametersH\x00\x12t\n\x11target_cpa_opt_in\x18\x05 \x01(\x0b\x32W.google.ads.googleads.v0.services.ApplyRecommendationOperation.TargetCpaOptInParametersH\x00\x1aY\n\x18\x43\x61mpaignBudgetParameters\x12=\n\x18new_budget_amount_micros\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x1a\x45\n\x10TextAdParameters\x12\x31\n\x02\x61\x64\x18\x01 \x01(\x0b\x32%.google.ads.googleads.v0.resources.Ad\x1a\xd2\x01\n\x11KeywordParameters\x12.\n\x08\x61\x64_group\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12X\n\nmatch_type\x18\x02 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.KeywordMatchTypeEnum.KeywordMatchType\x12\x33\n\x0e\x63pc_bid_micros\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x1a\x9a\x01\n\x18TargetCpaOptInParameters\x12\x36\n\x11target_cpa_micros\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x46\n!new_campaign_budget_amount_micros\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\x12\n\x10\x61pply_parameters\"k\n\x1b\x41pplyRecommendationResponse\x12L\n\x07results\x18\x01 \x03(\x0b\x32;.google.ads.googleads.v0.services.ApplyRecommendationResult\"d\n\x19\x41pplyRecommendationResult\x12\x17\n\rresource_name\x18\x01 \x01(\tH\x00\x12$\n\x06status\x18\x02 \x01(\x0b\x32\x12.google.rpc.StatusH\x00\x42\x08\n\x06result2\xac\x03\n\x15RecommendationService\x12\xbd\x01\n\x11GetRecommendation\x12:.google.ads.googleads.v0.services.GetRecommendationRequest\x1a\x31.google.ads.googleads.v0.resources.Recommendation\"9\x82\xd3\xe4\x93\x02\x33\x12\x31/v0/{resource_name=customers/*/recommendations/*}\x12\xd2\x01\n\x13\x41pplyRecommendation\x12<.google.ads.googleads.v0.services.ApplyRecommendationRequest\x1a=.google.ads.googleads.v0.services.ApplyRecommendationResponse\">\x82\xd3\xe4\x93\x02\x38\"3/v0/customers/{customer_id=*}/recommendations:apply:\x01*B\xda\x01\n$com.google.ads.googleads.v0.servicesB\x1aRecommendationServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + serialized_pb=_b('\nCgoogle/ads/googleads_v0/proto/services/recommendation_service.proto\x12 google.ads.googleads.v0.services\x1a.google.ads.googleads.v0.services.ApplyRecommendationOperation\"\x90\x08\n\x1c\x41pplyRecommendationOperation\x12\x15\n\rresource_name\x18\x01 \x01(\t\x12r\n\x0f\x63\x61mpaign_budget\x18\x02 \x01(\x0b\x32W.google.ads.googleads.v0.services.ApplyRecommendationOperation.CampaignBudgetParametersH\x00\x12\x62\n\x07text_ad\x18\x03 \x01(\x0b\x32O.google.ads.googleads.v0.services.ApplyRecommendationOperation.TextAdParametersH\x00\x12\x63\n\x07keyword\x18\x04 \x01(\x0b\x32P.google.ads.googleads.v0.services.ApplyRecommendationOperation.KeywordParametersH\x00\x12t\n\x11target_cpa_opt_in\x18\x05 \x01(\x0b\x32W.google.ads.googleads.v0.services.ApplyRecommendationOperation.TargetCpaOptInParametersH\x00\x1aY\n\x18\x43\x61mpaignBudgetParameters\x12=\n\x18new_budget_amount_micros\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x1a\x45\n\x10TextAdParameters\x12\x31\n\x02\x61\x64\x18\x01 \x01(\x0b\x32%.google.ads.googleads.v0.resources.Ad\x1a\xd2\x01\n\x11KeywordParameters\x12.\n\x08\x61\x64_group\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12X\n\nmatch_type\x18\x02 \x01(\x0e\x32\x44.google.ads.googleads.v0.enums.KeywordMatchTypeEnum.KeywordMatchType\x12\x33\n\x0e\x63pc_bid_micros\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x1a\x9a\x01\n\x18TargetCpaOptInParameters\x12\x36\n\x11target_cpa_micros\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12\x46\n!new_campaign_budget_amount_micros\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueB\x12\n\x10\x61pply_parameters\"\x9e\x01\n\x1b\x41pplyRecommendationResponse\x12L\n\x07results\x18\x01 \x03(\x0b\x32;.google.ads.googleads.v0.services.ApplyRecommendationResult\x12\x31\n\x15partial_failure_error\x18\x02 \x01(\x0b\x32\x12.google.rpc.Status\"2\n\x19\x41pplyRecommendationResult\x12\x15\n\rresource_name\x18\x01 \x01(\t\"\xf8\x01\n\x1c\x44ismissRecommendationRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12\x17\n\x0fpartial_failure\x18\x02 \x01(\x08\x12q\n\noperations\x18\x03 \x03(\x0b\x32].google.ads.googleads.v0.services.DismissRecommendationRequest.DismissRecommendationOperation\x1a\x37\n\x1e\x44ismissRecommendationOperation\x12\x15\n\rresource_name\x18\x01 \x01(\t\"\xf6\x01\n\x1d\x44ismissRecommendationResponse\x12l\n\x07results\x18\x01 \x03(\x0b\x32[.google.ads.googleads.v0.services.DismissRecommendationResponse.DismissRecommendationResult\x12\x31\n\x15partial_failure_error\x18\x02 \x01(\x0b\x32\x12.google.rpc.Status\x1a\x34\n\x1b\x44ismissRecommendationResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\x89\x05\n\x15RecommendationService\x12\xbd\x01\n\x11GetRecommendation\x12:.google.ads.googleads.v0.services.GetRecommendationRequest\x1a\x31.google.ads.googleads.v0.resources.Recommendation\"9\x82\xd3\xe4\x93\x02\x33\x12\x31/v0/{resource_name=customers/*/recommendations/*}\x12\xd2\x01\n\x13\x41pplyRecommendation\x12<.google.ads.googleads.v0.services.ApplyRecommendationRequest\x1a=.google.ads.googleads.v0.services.ApplyRecommendationResponse\">\x82\xd3\xe4\x93\x02\x38\"3/v0/customers/{customer_id=*}/recommendations:apply:\x01*\x12\xda\x01\n\x15\x44ismissRecommendation\x12>.google.ads.googleads.v0.services.DismissRecommendationRequest\x1a?.google.ads.googleads.v0.services.DismissRecommendationResponse\"@\x82\xd3\xe4\x93\x02:\"5/v0/customers/{customer_id=*}/recommendations:dismiss:\x01*B\xda\x01\n$com.google.ads.googleads.v0.servicesB\x1aRecommendationServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') , dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_enums_dot_keyword__match__type__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_ad__pb2.DESCRIPTOR,google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_recommendation__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,google_dot_rpc_dot_status__pb2.DESCRIPTOR,]) @@ -78,7 +78,14 @@ is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='operations', full_name='google.ads.googleads.v0.services.ApplyRecommendationRequest.operations', index=1, + name='partial_failure', full_name='google.ads.googleads.v0.services.ApplyRecommendationRequest.partial_failure', index=1, + number=3, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.ApplyRecommendationRequest.operations', index=2, number=2, type=11, cpp_type=10, label=3, has_default_value=False, default_value=[], message_type=None, enum_type=None, containing_type=None, @@ -97,7 +104,7 @@ oneofs=[ ], serialized_start=418, - serialized_end=551, + serialized_end=576, ) @@ -127,8 +134,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1044, - serialized_end=1133, + serialized_start=1069, + serialized_end=1158, ) _APPLYRECOMMENDATIONOPERATION_TEXTADPARAMETERS = _descriptor.Descriptor( @@ -157,8 +164,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1135, - serialized_end=1204, + serialized_start=1160, + serialized_end=1229, ) _APPLYRECOMMENDATIONOPERATION_KEYWORDPARAMETERS = _descriptor.Descriptor( @@ -201,8 +208,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1207, - serialized_end=1417, + serialized_start=1232, + serialized_end=1442, ) _APPLYRECOMMENDATIONOPERATION_TARGETCPAOPTINPARAMETERS = _descriptor.Descriptor( @@ -238,8 +245,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1420, - serialized_end=1574, + serialized_start=1445, + serialized_end=1599, ) _APPLYRECOMMENDATIONOPERATION = _descriptor.Descriptor( @@ -299,8 +306,8 @@ name='apply_parameters', full_name='google.ads.googleads.v0.services.ApplyRecommendationOperation.apply_parameters', index=0, containing_type=None, fields=[]), ], - serialized_start=554, - serialized_end=1594, + serialized_start=579, + serialized_end=1619, ) @@ -318,6 +325,13 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='partial_failure_error', full_name='google.ads.googleads.v0.services.ApplyRecommendationResponse.partial_failure_error', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -330,8 +344,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1596, - serialized_end=1703, + serialized_start=1622, + serialized_end=1780, ) @@ -349,8 +363,144 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1782, + serialized_end=1832, +) + + +_DISMISSRECOMMENDATIONREQUEST_DISMISSRECOMMENDATIONOPERATION = _descriptor.Descriptor( + name='DismissRecommendationOperation', + full_name='google.ads.googleads.v0.services.DismissRecommendationRequest.DismissRecommendationOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.DismissRecommendationRequest.DismissRecommendationOperation.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2028, + serialized_end=2083, +) + +_DISMISSRECOMMENDATIONREQUEST = _descriptor.Descriptor( + name='DismissRecommendationRequest', + full_name='google.ads.googleads.v0.services.DismissRecommendationRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.DismissRecommendationRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='partial_failure', full_name='google.ads.googleads.v0.services.DismissRecommendationRequest.partial_failure', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.DismissRecommendationRequest.operations', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[_DISMISSRECOMMENDATIONREQUEST_DISMISSRECOMMENDATIONOPERATION, ], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1835, + serialized_end=2083, +) + + +_DISMISSRECOMMENDATIONRESPONSE_DISMISSRECOMMENDATIONRESULT = _descriptor.Descriptor( + name='DismissRecommendationResult', + full_name='google.ads.googleads.v0.services.DismissRecommendationResponse.DismissRecommendationResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.DismissRecommendationResponse.DismissRecommendationResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2280, + serialized_end=2332, +) + +_DISMISSRECOMMENDATIONRESPONSE = _descriptor.Descriptor( + name='DismissRecommendationResponse', + full_name='google.ads.googleads.v0.services.DismissRecommendationResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.DismissRecommendationResponse.results', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='status', full_name='google.ads.googleads.v0.services.ApplyRecommendationResult.status', index=1, + name='partial_failure_error', full_name='google.ads.googleads.v0.services.DismissRecommendationResponse.partial_failure_error', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -359,7 +509,7 @@ ], extensions=[ ], - nested_types=[], + nested_types=[_DISMISSRECOMMENDATIONRESPONSE_DISMISSRECOMMENDATIONRESULT, ], enum_types=[ ], options=None, @@ -367,12 +517,9 @@ syntax='proto3', extension_ranges=[], oneofs=[ - _descriptor.OneofDescriptor( - name='result', full_name='google.ads.googleads.v0.services.ApplyRecommendationResult.result', - index=0, containing_type=None, fields=[]), ], - serialized_start=1705, - serialized_end=1805, + serialized_start=2086, + serialized_end=2332, ) _APPLYRECOMMENDATIONREQUEST.fields_by_name['operations'].message_type = _APPLYRECOMMENDATIONOPERATION @@ -404,23 +551,24 @@ _APPLYRECOMMENDATIONOPERATION.fields_by_name['target_cpa_opt_in']) _APPLYRECOMMENDATIONOPERATION.fields_by_name['target_cpa_opt_in'].containing_oneof = _APPLYRECOMMENDATIONOPERATION.oneofs_by_name['apply_parameters'] _APPLYRECOMMENDATIONRESPONSE.fields_by_name['results'].message_type = _APPLYRECOMMENDATIONRESULT -_APPLYRECOMMENDATIONRESULT.fields_by_name['status'].message_type = google_dot_rpc_dot_status__pb2._STATUS -_APPLYRECOMMENDATIONRESULT.oneofs_by_name['result'].fields.append( - _APPLYRECOMMENDATIONRESULT.fields_by_name['resource_name']) -_APPLYRECOMMENDATIONRESULT.fields_by_name['resource_name'].containing_oneof = _APPLYRECOMMENDATIONRESULT.oneofs_by_name['result'] -_APPLYRECOMMENDATIONRESULT.oneofs_by_name['result'].fields.append( - _APPLYRECOMMENDATIONRESULT.fields_by_name['status']) -_APPLYRECOMMENDATIONRESULT.fields_by_name['status'].containing_oneof = _APPLYRECOMMENDATIONRESULT.oneofs_by_name['result'] +_APPLYRECOMMENDATIONRESPONSE.fields_by_name['partial_failure_error'].message_type = google_dot_rpc_dot_status__pb2._STATUS +_DISMISSRECOMMENDATIONREQUEST_DISMISSRECOMMENDATIONOPERATION.containing_type = _DISMISSRECOMMENDATIONREQUEST +_DISMISSRECOMMENDATIONREQUEST.fields_by_name['operations'].message_type = _DISMISSRECOMMENDATIONREQUEST_DISMISSRECOMMENDATIONOPERATION +_DISMISSRECOMMENDATIONRESPONSE_DISMISSRECOMMENDATIONRESULT.containing_type = _DISMISSRECOMMENDATIONRESPONSE +_DISMISSRECOMMENDATIONRESPONSE.fields_by_name['results'].message_type = _DISMISSRECOMMENDATIONRESPONSE_DISMISSRECOMMENDATIONRESULT +_DISMISSRECOMMENDATIONRESPONSE.fields_by_name['partial_failure_error'].message_type = google_dot_rpc_dot_status__pb2._STATUS DESCRIPTOR.message_types_by_name['GetRecommendationRequest'] = _GETRECOMMENDATIONREQUEST DESCRIPTOR.message_types_by_name['ApplyRecommendationRequest'] = _APPLYRECOMMENDATIONREQUEST DESCRIPTOR.message_types_by_name['ApplyRecommendationOperation'] = _APPLYRECOMMENDATIONOPERATION DESCRIPTOR.message_types_by_name['ApplyRecommendationResponse'] = _APPLYRECOMMENDATIONRESPONSE DESCRIPTOR.message_types_by_name['ApplyRecommendationResult'] = _APPLYRECOMMENDATIONRESULT +DESCRIPTOR.message_types_by_name['DismissRecommendationRequest'] = _DISMISSRECOMMENDATIONREQUEST +DESCRIPTOR.message_types_by_name['DismissRecommendationResponse'] = _DISMISSRECOMMENDATIONRESPONSE _sym_db.RegisterFileDescriptor(DESCRIPTOR) GetRecommendationRequest = _reflection.GeneratedProtocolMessageType('GetRecommendationRequest', (_message.Message,), dict( DESCRIPTOR = _GETRECOMMENDATIONREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """Request message for [RecommendationService.GetRecommendation][google.ads.googleads.v0.services.RecommendationService.GetRecommendation]. @@ -436,7 +584,7 @@ ApplyRecommendationRequest = _reflection.GeneratedProtocolMessageType('ApplyRecommendationRequest', (_message.Message,), dict( DESCRIPTOR = _APPLYRECOMMENDATIONREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """Request message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v0.services.RecommendationService.ApplyRecommendation]. @@ -445,8 +593,15 @@ Attributes: customer_id: The ID of the customer with the recommendation. + partial_failure: + If true, successful operations will be carried out and invalid + operations will return errors. If false, operations will be + carried out as a transaction if and only if they are all + valid. Default is false. operations: - The list of operations to apply recommendations. + The list of operations to apply recommendations. If + partial\_failure=false all recommendations should be of the + same type There is a limit of 100 operations per request. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.ApplyRecommendationRequest) )) @@ -456,7 +611,7 @@ CampaignBudgetParameters = _reflection.GeneratedProtocolMessageType('CampaignBudgetParameters', (_message.Message,), dict( DESCRIPTOR = _APPLYRECOMMENDATIONOPERATION_CAMPAIGNBUDGETPARAMETERS, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """Parameters to use when applying a campaign budget recommendation. @@ -472,7 +627,7 @@ TextAdParameters = _reflection.GeneratedProtocolMessageType('TextAdParameters', (_message.Message,), dict( DESCRIPTOR = _APPLYRECOMMENDATIONOPERATION_TEXTADPARAMETERS, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """Parameters to use when applying a text ad recommendation. @@ -488,7 +643,7 @@ KeywordParameters = _reflection.GeneratedProtocolMessageType('KeywordParameters', (_message.Message,), dict( DESCRIPTOR = _APPLYRECOMMENDATIONOPERATION_KEYWORDPARAMETERS, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """Parameters to use when applying keyword recommendation. @@ -510,7 +665,7 @@ TargetCpaOptInParameters = _reflection.GeneratedProtocolMessageType('TargetCpaOptInParameters', (_message.Message,), dict( DESCRIPTOR = _APPLYRECOMMENDATIONOPERATION_TARGETCPAOPTINPARAMETERS, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """Parameters to use when applying Target CPA recommendation. @@ -526,7 +681,7 @@ )) , DESCRIPTOR = _APPLYRECOMMENDATIONOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """Information about the operation to apply a recommendation and any parameters to customize it. @@ -560,7 +715,7 @@ ApplyRecommendationResponse = _reflection.GeneratedProtocolMessageType('ApplyRecommendationResponse', (_message.Message,), dict( DESCRIPTOR = _APPLYRECOMMENDATIONRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """Response message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v0.services.RecommendationService.ApplyRecommendation]. @@ -569,6 +724,12 @@ Attributes: results: Results of operations to apply recommendations. + partial_failure_error: + Errors that pertain to operation failures in the partial + failure mode. Returned only when partial\_failure = true and + all errors occur inside the operations. If any errors occur + outside the operations (e.g. auth errors) we return the RPC + level error. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.ApplyRecommendationResponse) )) @@ -576,24 +737,99 @@ ApplyRecommendationResult = _reflection.GeneratedProtocolMessageType('ApplyRecommendationResult', (_message.Message,), dict( DESCRIPTOR = _APPLYRECOMMENDATIONRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.recommendation_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' , __doc__ = """The result of applying a recommendation. Attributes: - result: - One of the successfully applied recommendation resource name - or error information will be set. resource_name: Returned for successful applies. - status: - Returned for failed operations. """, # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.ApplyRecommendationResult) )) _sym_db.RegisterMessage(ApplyRecommendationResult) +DismissRecommendationRequest = _reflection.GeneratedProtocolMessageType('DismissRecommendationRequest', (_message.Message,), dict( + + DismissRecommendationOperation = _reflection.GeneratedProtocolMessageType('DismissRecommendationOperation', (_message.Message,), dict( + DESCRIPTOR = _DISMISSRECOMMENDATIONREQUEST_DISMISSRECOMMENDATIONOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' + , + __doc__ = """Operation to dismiss a single recommendation identified by + resource\_name. + + + Attributes: + resource_name: + The resource name of the recommendation to dismiss. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.DismissRecommendationRequest.DismissRecommendationOperation) + )) + , + DESCRIPTOR = _DISMISSRECOMMENDATIONREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' + , + __doc__ = """Request message for + [RecommendationService.DismissRecommendation][google.ads.googleads.v0.services.RecommendationService.DismissRecommendation]. + + + Attributes: + customer_id: + The ID of the customer with the recommendation. + partial_failure: + If true, successful operations will be carried out and invalid + operations will return errors. If false, operations will be + carried in a single transaction if and only if they are all + valid. Default is false. + operations: + The list of operations to dismiss recommendations. If + partial\_failure=false all recommendations should be of the + same type There is a limit of 100 operations per request. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.DismissRecommendationRequest) + )) +_sym_db.RegisterMessage(DismissRecommendationRequest) +_sym_db.RegisterMessage(DismissRecommendationRequest.DismissRecommendationOperation) + +DismissRecommendationResponse = _reflection.GeneratedProtocolMessageType('DismissRecommendationResponse', (_message.Message,), dict( + + DismissRecommendationResult = _reflection.GeneratedProtocolMessageType('DismissRecommendationResult', (_message.Message,), dict( + DESCRIPTOR = _DISMISSRECOMMENDATIONRESPONSE_DISMISSRECOMMENDATIONRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' + , + __doc__ = """The result of dismissing a recommendation. + + + Attributes: + resource_name: + Returned for successful dismissals. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.DismissRecommendationResponse.DismissRecommendationResult) + )) + , + DESCRIPTOR = _DISMISSRECOMMENDATIONRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.recommendation_service_pb2' + , + __doc__ = """Response message for + [RecommendationService.DismissRecommendation][google.ads.googleads.v0.services.RecommendationService.DismissRecommendation]. + + + Attributes: + results: + Results of operations to dismiss recommendations. + partial_failure_error: + Errors that pertain to operation failures in the partial + failure mode. Returned only when partial\_failure = true and + all errors occur inside the operations. If any errors occur + outside the operations (e.g. auth errors) we return the RPC + level error. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.DismissRecommendationResponse) + )) +_sym_db.RegisterMessage(DismissRecommendationResponse) +_sym_db.RegisterMessage(DismissRecommendationResponse.DismissRecommendationResult) + DESCRIPTOR.has_options = True DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\032RecommendationServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) @@ -604,8 +840,8 @@ file=DESCRIPTOR, index=0, options=None, - serialized_start=1808, - serialized_end=2236, + serialized_start=2335, + serialized_end=2984, methods=[ _descriptor.MethodDescriptor( name='GetRecommendation', @@ -625,6 +861,15 @@ output_type=_APPLYRECOMMENDATIONRESPONSE, options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0028\"3/v0/customers/{customer_id=*}/recommendations:apply:\001*')), ), + _descriptor.MethodDescriptor( + name='DismissRecommendation', + full_name='google.ads.googleads.v0.services.RecommendationService.DismissRecommendation', + index=2, + containing_service=None, + input_type=_DISMISSRECOMMENDATIONREQUEST, + output_type=_DISMISSRECOMMENDATIONRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002:\"5/v0/customers/{customer_id=*}/recommendations:dismiss:\001*')), + ), ]) _sym_db.RegisterServiceDescriptor(_RECOMMENDATIONSERVICE) diff --git a/google/ads/google_ads/v0/proto/services/recommendation_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/recommendation_service_pb2_grpc.py index 5f103ab48..8e50aee3d 100644 --- a/google/ads/google_ads/v0/proto/services/recommendation_service_pb2_grpc.py +++ b/google/ads/google_ads/v0/proto/services/recommendation_service_pb2_grpc.py @@ -25,6 +25,11 @@ def __init__(self, channel): request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_recommendation__service__pb2.ApplyRecommendationRequest.SerializeToString, response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_recommendation__service__pb2.ApplyRecommendationResponse.FromString, ) + self.DismissRecommendation = channel.unary_unary( + '/google.ads.googleads.v0.services.RecommendationService/DismissRecommendation', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_recommendation__service__pb2.DismissRecommendationRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_recommendation__service__pb2.DismissRecommendationResponse.FromString, + ) class RecommendationServiceServicer(object): @@ -45,6 +50,13 @@ def ApplyRecommendation(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def DismissRecommendation(self, request, context): + """Dismisses given recommendations. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def add_RecommendationServiceServicer_to_server(servicer, server): rpc_method_handlers = { @@ -58,6 +70,11 @@ def add_RecommendationServiceServicer_to_server(servicer, server): request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_recommendation__service__pb2.ApplyRecommendationRequest.FromString, response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_recommendation__service__pb2.ApplyRecommendationResponse.SerializeToString, ), + 'DismissRecommendation': grpc.unary_unary_rpc_method_handler( + servicer.DismissRecommendation, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_recommendation__service__pb2.DismissRecommendationRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_recommendation__service__pb2.DismissRecommendationResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( 'google.ads.googleads.v0.services.RecommendationService', rpc_method_handlers) diff --git a/google/ads/google_ads/v0/proto/services/search_term_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/search_term_view_service_pb2.py new file mode 100644 index 000000000..0c6f80267 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/search_term_view_service_pb2.py @@ -0,0 +1,107 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/search_term_view_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import search_term_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/search_term_view_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nEgoogle/ads/googleads_v0/proto/services/search_term_view_service.proto\x12 google.ads.googleads.v0.services\x1a>google/ads/googleads_v0/proto/resources/search_term_view.proto\x1a\x1cgoogle/api/annotations.proto\"1\n\x18GetSearchTermViewRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xd7\x01\n\x15SearchTermViewService\x12\xbd\x01\n\x11GetSearchTermView\x12:.google.ads.googleads.v0.services.GetSearchTermViewRequest\x1a\x31.google.ads.googleads.v0.resources.SearchTermView\"9\x82\xd3\xe4\x93\x02\x33\x12\x31/v0/{resource_name=customers/*/searchTermViews/*}B\xda\x01\n$com.google.ads.googleads.v0.servicesB\x1aSearchTermViewServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_GETSEARCHTERMVIEWREQUEST = _descriptor.Descriptor( + name='GetSearchTermViewRequest', + full_name='google.ads.googleads.v0.services.GetSearchTermViewRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetSearchTermViewRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=201, + serialized_end=250, +) + +DESCRIPTOR.message_types_by_name['GetSearchTermViewRequest'] = _GETSEARCHTERMVIEWREQUEST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetSearchTermViewRequest = _reflection.GeneratedProtocolMessageType('GetSearchTermViewRequest', (_message.Message,), dict( + DESCRIPTOR = _GETSEARCHTERMVIEWREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.search_term_view_service_pb2' + , + __doc__ = """Request message for + [SearchTermViewService.GetSearchTermView][google.ads.googleads.v0.services.SearchTermViewService.GetSearchTermView]. + + + Attributes: + resource_name: + The resource name of the search term view to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetSearchTermViewRequest) + )) +_sym_db.RegisterMessage(GetSearchTermViewRequest) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\032SearchTermViewServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_SEARCHTERMVIEWSERVICE = _descriptor.ServiceDescriptor( + name='SearchTermViewService', + full_name='google.ads.googleads.v0.services.SearchTermViewService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=253, + serialized_end=468, + methods=[ + _descriptor.MethodDescriptor( + name='GetSearchTermView', + full_name='google.ads.googleads.v0.services.SearchTermViewService.GetSearchTermView', + index=0, + containing_service=None, + input_type=_GETSEARCHTERMVIEWREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2._SEARCHTERMVIEW, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0023\0221/v0/{resource_name=customers/*/searchTermViews/*}')), + ), +]) +_sym_db.RegisterServiceDescriptor(_SEARCHTERMVIEWSERVICE) + +DESCRIPTOR.services_by_name['SearchTermViewService'] = _SEARCHTERMVIEWSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/search_term_view_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/search_term_view_service_pb2_grpc.py new file mode 100644 index 000000000..2fee699f5 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/search_term_view_service_pb2_grpc.py @@ -0,0 +1,47 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import search_term_view_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2 +from google.ads.google_ads.v0.proto.services import search_term_view_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_search__term__view__service__pb2 + + +class SearchTermViewServiceStub(object): + """Service to manage search term views. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetSearchTermView = channel.unary_unary( + '/google.ads.googleads.v0.services.SearchTermViewService/GetSearchTermView', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_search__term__view__service__pb2.GetSearchTermViewRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2.SearchTermView.FromString, + ) + + +class SearchTermViewServiceServicer(object): + """Service to manage search term views. + """ + + def GetSearchTermView(self, request, context): + """Returns the attributes of the requested search term view. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_SearchTermViewServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetSearchTermView': grpc.unary_unary_rpc_method_handler( + servicer.GetSearchTermView, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_search__term__view__service__pb2.GetSearchTermViewRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_search__term__view__pb2.SearchTermView.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.SearchTermViewService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/shared_criterion_service_pb2.py b/google/ads/google_ads/v0/proto/services/shared_criterion_service_pb2.py index 4588ce4f3..7a49ae509 100644 --- a/google/ads/google_ads/v0/proto/services/shared_criterion_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/shared_criterion_service_pb2.py @@ -217,7 +217,7 @@ GetSharedCriterionRequest = _reflection.GeneratedProtocolMessageType('GetSharedCriterionRequest', (_message.Message,), dict( DESCRIPTOR = _GETSHAREDCRITERIONREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.shared_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_criterion_service_pb2' , __doc__ = """Request message for [SharedCriterionService.GetSharedCriterion][google.ads.googleads.v0.services.SharedCriterionService.GetSharedCriterion]. @@ -233,7 +233,7 @@ MutateSharedCriteriaRequest = _reflection.GeneratedProtocolMessageType('MutateSharedCriteriaRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATESHAREDCRITERIAREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.shared_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_criterion_service_pb2' , __doc__ = """Request message for [SharedCriterionService.MutateSharedCriteria][google.ads.googleads.v0.services.SharedCriterionService.MutateSharedCriteria]. @@ -253,7 +253,7 @@ SharedCriterionOperation = _reflection.GeneratedProtocolMessageType('SharedCriterionOperation', (_message.Message,), dict( DESCRIPTOR = _SHAREDCRITERIONOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.shared_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_criterion_service_pb2' , __doc__ = """A single operation (create, remove) on an shared criterion. @@ -275,7 +275,7 @@ MutateSharedCriteriaResponse = _reflection.GeneratedProtocolMessageType('MutateSharedCriteriaResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATESHAREDCRITERIARESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.shared_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_criterion_service_pb2' , __doc__ = """Response message for a shared criterion mutate. @@ -290,7 +290,7 @@ MutateSharedCriterionResult = _reflection.GeneratedProtocolMessageType('MutateSharedCriterionResult', (_message.Message,), dict( DESCRIPTOR = _MUTATESHAREDCRITERIONRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.shared_criterion_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_criterion_service_pb2' , __doc__ = """The result for the shared criterion mutate. diff --git a/google/ads/google_ads/v0/proto/services/shared_set_service_pb2.py b/google/ads/google_ads/v0/proto/services/shared_set_service_pb2.py index a7136b39b..f820f5f68 100644 --- a/google/ads/google_ads/v0/proto/services/shared_set_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/shared_set_service_pb2.py @@ -237,7 +237,7 @@ GetSharedSetRequest = _reflection.GeneratedProtocolMessageType('GetSharedSetRequest', (_message.Message,), dict( DESCRIPTOR = _GETSHAREDSETREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_set_service_pb2' , __doc__ = """Request message for [SharedSetService.GetSharedSet][google.ads.googleads.v0.services.SharedSetService.GetSharedSet]. @@ -253,7 +253,7 @@ MutateSharedSetsRequest = _reflection.GeneratedProtocolMessageType('MutateSharedSetsRequest', (_message.Message,), dict( DESCRIPTOR = _MUTATESHAREDSETSREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_set_service_pb2' , __doc__ = """Request message for [SharedSetService.MutateSharedSets][google.ads.googleads.v0.services.SharedSetService.MutateSharedSets]. @@ -271,7 +271,7 @@ SharedSetOperation = _reflection.GeneratedProtocolMessageType('SharedSetOperation', (_message.Message,), dict( DESCRIPTOR = _SHAREDSETOPERATION, - __module__ = 'google.ads.googleads_v0.proto.services.shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_set_service_pb2' , __doc__ = """A single operation (create, update, remove) on an shared set. @@ -299,7 +299,7 @@ MutateSharedSetsResponse = _reflection.GeneratedProtocolMessageType('MutateSharedSetsResponse', (_message.Message,), dict( DESCRIPTOR = _MUTATESHAREDSETSRESPONSE, - __module__ = 'google.ads.googleads_v0.proto.services.shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_set_service_pb2' , __doc__ = """Response message for a shared set mutate. @@ -314,7 +314,7 @@ MutateSharedSetResult = _reflection.GeneratedProtocolMessageType('MutateSharedSetResult', (_message.Message,), dict( DESCRIPTOR = _MUTATESHAREDSETRESULT, - __module__ = 'google.ads.googleads_v0.proto.services.shared_set_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.shared_set_service_pb2' , __doc__ = """The result for the shared set mutate. diff --git a/google/ads/google_ads/v0/proto/services/topic_constant_service_pb2.py b/google/ads/google_ads/v0/proto/services/topic_constant_service_pb2.py index d7ad93eb7..6404cfe21 100644 --- a/google/ads/google_ads/v0/proto/services/topic_constant_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/topic_constant_service_pb2.py @@ -63,7 +63,7 @@ GetTopicConstantRequest = _reflection.GeneratedProtocolMessageType('GetTopicConstantRequest', (_message.Message,), dict( DESCRIPTOR = _GETTOPICCONSTANTREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.topic_constant_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.topic_constant_service_pb2' , __doc__ = """Request message for [TopicConstantService.GetTopicConstant][google.ads.googleads.v0.services.TopicConstantService.GetTopicConstant]. diff --git a/google/ads/google_ads/v0/proto/services/topic_view_service_pb2.py b/google/ads/google_ads/v0/proto/services/topic_view_service_pb2.py index 16fbb5337..7268679ee 100644 --- a/google/ads/google_ads/v0/proto/services/topic_view_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/topic_view_service_pb2.py @@ -63,7 +63,7 @@ GetTopicViewRequest = _reflection.GeneratedProtocolMessageType('GetTopicViewRequest', (_message.Message,), dict( DESCRIPTOR = _GETTOPICVIEWREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.topic_view_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.topic_view_service_pb2' , __doc__ = """Request message for [TopicViewService.GetTopicView][google.ads.googleads.v0.services.TopicViewService.GetTopicView]. diff --git a/google/ads/google_ads/v0/proto/services/user_interest_service_pb2.py b/google/ads/google_ads/v0/proto/services/user_interest_service_pb2.py new file mode 100644 index 000000000..c73490dae --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/user_interest_service_pb2.py @@ -0,0 +1,107 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/user_interest_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import user_interest_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/user_interest_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\nBgoogle/ads/googleads_v0/proto/services/user_interest_service.proto\x12 google.ads.googleads.v0.services\x1a;google/ads/googleads_v0/proto/resources/user_interest.proto\x1a\x1cgoogle/api/annotations.proto\"/\n\x16GetUserInterestRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xcd\x01\n\x13UserInterestService\x12\xb5\x01\n\x0fGetUserInterest\x12\x38.google.ads.googleads.v0.services.GetUserInterestRequest\x1a/.google.ads.googleads.v0.resources.UserInterest\"7\x82\xd3\xe4\x93\x02\x31\x12//v0/{resource_name=customers/*/userInterests/*}B\xd8\x01\n$com.google.ads.googleads.v0.servicesB\x18UserInterestServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,]) + + + + +_GETUSERINTERESTREQUEST = _descriptor.Descriptor( + name='GetUserInterestRequest', + full_name='google.ads.googleads.v0.services.GetUserInterestRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetUserInterestRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=195, + serialized_end=242, +) + +DESCRIPTOR.message_types_by_name['GetUserInterestRequest'] = _GETUSERINTERESTREQUEST +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetUserInterestRequest = _reflection.GeneratedProtocolMessageType('GetUserInterestRequest', (_message.Message,), dict( + DESCRIPTOR = _GETUSERINTERESTREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.user_interest_service_pb2' + , + __doc__ = """Request message for + [UserInterestService.GetUserInterest][google.ads.googleads.v0.services.UserInterestService.GetUserInterest]. + + + Attributes: + resource_name: + Resource name of the UserInterest to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetUserInterestRequest) + )) +_sym_db.RegisterMessage(GetUserInterestRequest) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\030UserInterestServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_USERINTERESTSERVICE = _descriptor.ServiceDescriptor( + name='UserInterestService', + full_name='google.ads.googleads.v0.services.UserInterestService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=245, + serialized_end=450, + methods=[ + _descriptor.MethodDescriptor( + name='GetUserInterest', + full_name='google.ads.googleads.v0.services.UserInterestService.GetUserInterest', + index=0, + containing_service=None, + input_type=_GETUSERINTERESTREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2._USERINTEREST, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0021\022//v0/{resource_name=customers/*/userInterests/*}')), + ), +]) +_sym_db.RegisterServiceDescriptor(_USERINTERESTSERVICE) + +DESCRIPTOR.services_by_name['UserInterestService'] = _USERINTERESTSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/user_interest_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/user_interest_service_pb2_grpc.py new file mode 100644 index 000000000..0825623e1 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/user_interest_service_pb2_grpc.py @@ -0,0 +1,47 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import user_interest_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2 +from google.ads.google_ads.v0.proto.services import user_interest_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__interest__service__pb2 + + +class UserInterestServiceStub(object): + """Service to fetch Google Ads User Interest. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetUserInterest = channel.unary_unary( + '/google.ads.googleads.v0.services.UserInterestService/GetUserInterest', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__interest__service__pb2.GetUserInterestRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2.UserInterest.FromString, + ) + + +class UserInterestServiceServicer(object): + """Service to fetch Google Ads User Interest. + """ + + def GetUserInterest(self, request, context): + """Returns the requested user interest in full detail + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_UserInterestServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetUserInterest': grpc.unary_unary_rpc_method_handler( + servicer.GetUserInterest, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__interest__service__pb2.GetUserInterestRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__interest__pb2.UserInterest.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.UserInterestService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/user_list_service_pb2.py b/google/ads/google_ads/v0/proto/services/user_list_service_pb2.py new file mode 100644 index 000000000..cb602e6b7 --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/user_list_service_pb2.py @@ -0,0 +1,366 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/ads/googleads_v0/proto/services/user_list_service.proto + +import sys +_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1')) +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.ads.google_ads.v0.proto.resources import user_list_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='google/ads/googleads_v0/proto/services/user_list_service.proto', + package='google.ads.googleads.v0.services', + syntax='proto3', + serialized_pb=_b('\n>google/ads/googleads_v0/proto/services/user_list_service.proto\x12 google.ads.googleads.v0.services\x1a\x37google/ads/googleads_v0/proto/resources/user_list.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"+\n\x12GetUserListRequest\x12\x15\n\rresource_name\x18\x01 \x01(\t\"v\n\x16MutateUserListsRequest\x12\x13\n\x0b\x63ustomer_id\x18\x01 \x01(\t\x12G\n\noperations\x18\x02 \x03(\x0b\x32\x33.google.ads.googleads.v0.services.UserListOperation\"\xe1\x01\n\x11UserListOperation\x12/\n\x0bupdate_mask\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12=\n\x06\x63reate\x18\x01 \x01(\x0b\x32+.google.ads.googleads.v0.resources.UserListH\x00\x12=\n\x06update\x18\x02 \x01(\x0b\x32+.google.ads.googleads.v0.resources.UserListH\x00\x12\x10\n\x06remove\x18\x03 \x01(\tH\x00\x42\x0b\n\toperation\"b\n\x17MutateUserListsResponse\x12G\n\x07results\x18\x02 \x03(\x0b\x32\x36.google.ads.googleads.v0.services.MutateUserListResult\"-\n\x14MutateUserListResult\x12\x15\n\rresource_name\x18\x01 \x01(\t2\xfd\x02\n\x0fUserListService\x12\xa5\x01\n\x0bGetUserList\x12\x34.google.ads.googleads.v0.services.GetUserListRequest\x1a+.google.ads.googleads.v0.resources.UserList\"3\x82\xd3\xe4\x93\x02-\x12+/v0/{resource_name=customers/*/userLists/*}\x12\xc1\x01\n\x0fMutateUserLists\x12\x38.google.ads.googleads.v0.services.MutateUserListsRequest\x1a\x39.google.ads.googleads.v0.services.MutateUserListsResponse\"9\x82\xd3\xe4\x93\x02\x33\"./v0/customers/{customer_id=*}/userLists:mutate:\x01*B\xd4\x01\n$com.google.ads.googleads.v0.servicesB\x14UserListServiceProtoP\x01ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\xa2\x02\x03GAA\xaa\x02 Google.Ads.GoogleAds.V0.Services\xca\x02 Google\\Ads\\GoogleAds\\V0\\Servicesb\x06proto3') + , + dependencies=[google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,]) + + + + +_GETUSERLISTREQUEST = _descriptor.Descriptor( + name='GetUserListRequest', + full_name='google.ads.googleads.v0.services.GetUserListRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.GetUserListRequest.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=221, + serialized_end=264, +) + + +_MUTATEUSERLISTSREQUEST = _descriptor.Descriptor( + name='MutateUserListsRequest', + full_name='google.ads.googleads.v0.services.MutateUserListsRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='customer_id', full_name='google.ads.googleads.v0.services.MutateUserListsRequest.customer_id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='operations', full_name='google.ads.googleads.v0.services.MutateUserListsRequest.operations', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=266, + serialized_end=384, +) + + +_USERLISTOPERATION = _descriptor.Descriptor( + name='UserListOperation', + full_name='google.ads.googleads.v0.services.UserListOperation', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='update_mask', full_name='google.ads.googleads.v0.services.UserListOperation.update_mask', index=0, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='create', full_name='google.ads.googleads.v0.services.UserListOperation.create', index=1, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='update', full_name='google.ads.googleads.v0.services.UserListOperation.update', index=2, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='remove', full_name='google.ads.googleads.v0.services.UserListOperation.remove', index=3, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + _descriptor.OneofDescriptor( + name='operation', full_name='google.ads.googleads.v0.services.UserListOperation.operation', + index=0, containing_type=None, fields=[]), + ], + serialized_start=387, + serialized_end=612, +) + + +_MUTATEUSERLISTSRESPONSE = _descriptor.Descriptor( + name='MutateUserListsResponse', + full_name='google.ads.googleads.v0.services.MutateUserListsResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='results', full_name='google.ads.googleads.v0.services.MutateUserListsResponse.results', index=0, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=614, + serialized_end=712, +) + + +_MUTATEUSERLISTRESULT = _descriptor.Descriptor( + name='MutateUserListResult', + full_name='google.ads.googleads.v0.services.MutateUserListResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='resource_name', full_name='google.ads.googleads.v0.services.MutateUserListResult.resource_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=_b("").decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None, file=DESCRIPTOR), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=714, + serialized_end=759, +) + +_MUTATEUSERLISTSREQUEST.fields_by_name['operations'].message_type = _USERLISTOPERATION +_USERLISTOPERATION.fields_by_name['update_mask'].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK +_USERLISTOPERATION.fields_by_name['create'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2._USERLIST +_USERLISTOPERATION.fields_by_name['update'].message_type = google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2._USERLIST +_USERLISTOPERATION.oneofs_by_name['operation'].fields.append( + _USERLISTOPERATION.fields_by_name['create']) +_USERLISTOPERATION.fields_by_name['create'].containing_oneof = _USERLISTOPERATION.oneofs_by_name['operation'] +_USERLISTOPERATION.oneofs_by_name['operation'].fields.append( + _USERLISTOPERATION.fields_by_name['update']) +_USERLISTOPERATION.fields_by_name['update'].containing_oneof = _USERLISTOPERATION.oneofs_by_name['operation'] +_USERLISTOPERATION.oneofs_by_name['operation'].fields.append( + _USERLISTOPERATION.fields_by_name['remove']) +_USERLISTOPERATION.fields_by_name['remove'].containing_oneof = _USERLISTOPERATION.oneofs_by_name['operation'] +_MUTATEUSERLISTSRESPONSE.fields_by_name['results'].message_type = _MUTATEUSERLISTRESULT +DESCRIPTOR.message_types_by_name['GetUserListRequest'] = _GETUSERLISTREQUEST +DESCRIPTOR.message_types_by_name['MutateUserListsRequest'] = _MUTATEUSERLISTSREQUEST +DESCRIPTOR.message_types_by_name['UserListOperation'] = _USERLISTOPERATION +DESCRIPTOR.message_types_by_name['MutateUserListsResponse'] = _MUTATEUSERLISTSRESPONSE +DESCRIPTOR.message_types_by_name['MutateUserListResult'] = _MUTATEUSERLISTRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +GetUserListRequest = _reflection.GeneratedProtocolMessageType('GetUserListRequest', (_message.Message,), dict( + DESCRIPTOR = _GETUSERLISTREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.user_list_service_pb2' + , + __doc__ = """Request message for + [UserListService.GetUserList][google.ads.googleads.v0.services.UserListService.GetUserList]. + + + Attributes: + resource_name: + The resource name of the user list to fetch. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.GetUserListRequest) + )) +_sym_db.RegisterMessage(GetUserListRequest) + +MutateUserListsRequest = _reflection.GeneratedProtocolMessageType('MutateUserListsRequest', (_message.Message,), dict( + DESCRIPTOR = _MUTATEUSERLISTSREQUEST, + __module__ = 'google.ads.google_ads.v0.proto.services.user_list_service_pb2' + , + __doc__ = """Request message for + [UserListService.MutateUserLists][google.ads.googleads.v0.services.UserListService.MutateUserLists]. + + + Attributes: + customer_id: + The ID of the customer whose user lists are being modified. + operations: + The list of operations to perform on individual user lists. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateUserListsRequest) + )) +_sym_db.RegisterMessage(MutateUserListsRequest) + +UserListOperation = _reflection.GeneratedProtocolMessageType('UserListOperation', (_message.Message,), dict( + DESCRIPTOR = _USERLISTOPERATION, + __module__ = 'google.ads.google_ads.v0.proto.services.user_list_service_pb2' + , + __doc__ = """A single operation (create, update) on a user list. + + + Attributes: + update_mask: + FieldMask that determines which resource fields are modified + in an update. + operation: + The mutate operation. + create: + Create operation: No resource name is expected for the new + user list. + update: + Update operation: The user list is expected to have a valid + resource name. + remove: + Remove operation: A resource name for the removed user list is + expected, in this format: + ``customers/{customer_id}/userLists/{user_list_id}`` + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.UserListOperation) + )) +_sym_db.RegisterMessage(UserListOperation) + +MutateUserListsResponse = _reflection.GeneratedProtocolMessageType('MutateUserListsResponse', (_message.Message,), dict( + DESCRIPTOR = _MUTATEUSERLISTSRESPONSE, + __module__ = 'google.ads.google_ads.v0.proto.services.user_list_service_pb2' + , + __doc__ = """Response message for user list mutate. + + + Attributes: + results: + All results for the mutate. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateUserListsResponse) + )) +_sym_db.RegisterMessage(MutateUserListsResponse) + +MutateUserListResult = _reflection.GeneratedProtocolMessageType('MutateUserListResult', (_message.Message,), dict( + DESCRIPTOR = _MUTATEUSERLISTRESULT, + __module__ = 'google.ads.google_ads.v0.proto.services.user_list_service_pb2' + , + __doc__ = """The result for the user list mutate. + + + Attributes: + resource_name: + Returned for successful operations. + """, + # @@protoc_insertion_point(class_scope:google.ads.googleads.v0.services.MutateUserListResult) + )) +_sym_db.RegisterMessage(MutateUserListResult) + + +DESCRIPTOR.has_options = True +DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n$com.google.ads.googleads.v0.servicesB\024UserListServiceProtoP\001ZHgoogle.golang.org/genproto/googleapis/ads/googleads/v0/services;services\242\002\003GAA\252\002 Google.Ads.GoogleAds.V0.Services\312\002 Google\\Ads\\GoogleAds\\V0\\Services')) + +_USERLISTSERVICE = _descriptor.ServiceDescriptor( + name='UserListService', + full_name='google.ads.googleads.v0.services.UserListService', + file=DESCRIPTOR, + index=0, + options=None, + serialized_start=762, + serialized_end=1143, + methods=[ + _descriptor.MethodDescriptor( + name='GetUserList', + full_name='google.ads.googleads.v0.services.UserListService.GetUserList', + index=0, + containing_service=None, + input_type=_GETUSERLISTREQUEST, + output_type=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2._USERLIST, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002-\022+/v0/{resource_name=customers/*/userLists/*}')), + ), + _descriptor.MethodDescriptor( + name='MutateUserLists', + full_name='google.ads.googleads.v0.services.UserListService.MutateUserLists', + index=1, + containing_service=None, + input_type=_MUTATEUSERLISTSREQUEST, + output_type=_MUTATEUSERLISTSRESPONSE, + options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0023\"./v0/customers/{customer_id=*}/userLists:mutate:\001*')), + ), +]) +_sym_db.RegisterServiceDescriptor(_USERLISTSERVICE) + +DESCRIPTOR.services_by_name['UserListService'] = _USERLISTSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/google/ads/google_ads/v0/proto/services/user_list_service_pb2_grpc.py b/google/ads/google_ads/v0/proto/services/user_list_service_pb2_grpc.py new file mode 100644 index 000000000..9ac89e40c --- /dev/null +++ b/google/ads/google_ads/v0/proto/services/user_list_service_pb2_grpc.py @@ -0,0 +1,64 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +import grpc + +from google.ads.google_ads.v0.proto.resources import user_list_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2 +from google.ads.google_ads.v0.proto.services import user_list_service_pb2 as google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2 + + +class UserListServiceStub(object): + """Service to manage user lists. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetUserList = channel.unary_unary( + '/google.ads.googleads.v0.services.UserListService/GetUserList', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2.GetUserListRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2.UserList.FromString, + ) + self.MutateUserLists = channel.unary_unary( + '/google.ads.googleads.v0.services.UserListService/MutateUserLists', + request_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2.MutateUserListsRequest.SerializeToString, + response_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2.MutateUserListsResponse.FromString, + ) + + +class UserListServiceServicer(object): + """Service to manage user lists. + """ + + def GetUserList(self, request, context): + """Returns the requested user list. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def MutateUserLists(self, request, context): + """Creates or updates user lists. Operation statuses are returned. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_UserListServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetUserList': grpc.unary_unary_rpc_method_handler( + servicer.GetUserList, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2.GetUserListRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_resources_dot_user__list__pb2.UserList.SerializeToString, + ), + 'MutateUserLists': grpc.unary_unary_rpc_method_handler( + servicer.MutateUserLists, + request_deserializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2.MutateUserListsRequest.FromString, + response_serializer=google_dot_ads_dot_googleads__v0_dot_proto_dot_services_dot_user__list__service__pb2.MutateUserListsResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'google.ads.googleads.v0.services.UserListService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) diff --git a/google/ads/google_ads/v0/proto/services/video_service_pb2.py b/google/ads/google_ads/v0/proto/services/video_service_pb2.py index ee0461860..a14171ce0 100644 --- a/google/ads/google_ads/v0/proto/services/video_service_pb2.py +++ b/google/ads/google_ads/v0/proto/services/video_service_pb2.py @@ -63,7 +63,7 @@ GetVideoRequest = _reflection.GeneratedProtocolMessageType('GetVideoRequest', (_message.Message,), dict( DESCRIPTOR = _GETVIDEOREQUEST, - __module__ = 'google.ads.googleads_v0.proto.services.video_service_pb2' + __module__ = 'google.ads.google_ads.v0.proto.services.video_service_pb2' , __doc__ = """Request message for [VideoService.GetVideo][google.ads.googleads.v0.services.VideoService.GetVideo]. diff --git a/google/ads/google_ads/v0/services/ad_group_feed_service_client.py b/google/ads/google_ads/v0/services/ad_group_feed_service_client.py new file mode 100644 index 000000000..15d30b7a8 --- /dev/null +++ b/google/ads/google_ads/v0/services/ad_group_feed_service_client.py @@ -0,0 +1,259 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services AdGroupFeedService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import ad_group_feed_service_client_config +from google.ads.google_ads.v0.services.transports import ad_group_feed_service_grpc_transport +from google.ads.google_ads.v0.proto.services import ad_group_feed_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class AdGroupFeedServiceClient(object): + """Service to manage ad group feeds.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.AdGroupFeedService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + AdGroupFeedServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def ad_group_feed_path(cls, customer, ad_group_feed): + """Return a fully-qualified ad_group_feed string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/adGroupFeeds/{ad_group_feed}', + customer=customer, + ad_group_feed=ad_group_feed, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=ad_group_feed_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.AdGroupFeedServiceGrpcTransport, + Callable[[~.Credentials, type], ~.AdGroupFeedServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=ad_group_feed_service_grpc_transport. + AdGroupFeedServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = ad_group_feed_service_grpc_transport.AdGroupFeedServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_ad_group_feed(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested ad group feed in full detail. + + Args: + resource_name (str): The resource name of the ad group feed to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.AdGroupFeed` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_ad_group_feed' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_ad_group_feed'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_ad_group_feed, + default_retry=self._method_configs['GetAdGroupFeed'].retry, + default_timeout=self._method_configs['GetAdGroupFeed'] + .timeout, + client_info=self._client_info, + ) + + request = ad_group_feed_service_pb2.GetAdGroupFeedRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_ad_group_feed']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_ad_group_feeds(self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes ad group feeds. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose ad group feeds are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.AdGroupFeedOperation]]): The list of operations to perform on individual ad group feeds. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.AdGroupFeedOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateAdGroupFeedsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_ad_group_feeds' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_ad_group_feeds'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_ad_group_feeds, + default_retry=self._method_configs[ + 'MutateAdGroupFeeds'].retry, + default_timeout=self._method_configs['MutateAdGroupFeeds'] + .timeout, + client_info=self._client_info, + ) + + request = ad_group_feed_service_pb2.MutateAdGroupFeedsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_ad_group_feeds']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/ad_group_feed_service_client_config.py b/google/ads/google_ads/v0/services/ad_group_feed_service_client_config.py new file mode 100644 index 000000000..97c2954dd --- /dev/null +++ b/google/ads/google_ads/v0/services/ad_group_feed_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.AdGroupFeedService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetAdGroupFeed": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateAdGroupFeeds": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/campaign_audience_view_service_client.py b/google/ads/google_ads/v0/services/campaign_audience_view_service_client.py new file mode 100644 index 000000000..5cb77e16f --- /dev/null +++ b/google/ads/google_ads/v0/services/campaign_audience_view_service_client.py @@ -0,0 +1,209 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services CampaignAudienceViewService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import campaign_audience_view_service_client_config +from google.ads.google_ads.v0.services.transports import campaign_audience_view_service_grpc_transport +from google.ads.google_ads.v0.proto.services import campaign_audience_view_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class CampaignAudienceViewServiceClient(object): + """Service to manage campaign audience views.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.CampaignAudienceViewService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + CampaignAudienceViewServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def campaign_audience_view_path(cls, customer, campaign_audience_view): + """Return a fully-qualified campaign_audience_view string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/campaignAudienceViews/{campaign_audience_view}', + customer=customer, + campaign_audience_view=campaign_audience_view, + ) + + def __init__( + self, + transport=None, + channel=None, + credentials=None, + client_config=campaign_audience_view_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.CampaignAudienceViewServiceGrpcTransport, + Callable[[~.Credentials, type], ~.CampaignAudienceViewServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=campaign_audience_view_service_grpc_transport. + CampaignAudienceViewServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = campaign_audience_view_service_grpc_transport.CampaignAudienceViewServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_campaign_audience_view( + self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested campaign audience view in full detail. + + Args: + resource_name (str): The resource name of the campaign audience view to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.CampaignAudienceView` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_campaign_audience_view' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_campaign_audience_view'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_campaign_audience_view, + default_retry=self._method_configs[ + 'GetCampaignAudienceView'].retry, + default_timeout=self._method_configs[ + 'GetCampaignAudienceView'].timeout, + client_info=self._client_info, + ) + + request = campaign_audience_view_service_pb2.GetCampaignAudienceViewRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_campaign_audience_view']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/campaign_audience_view_service_client_config.py b/google/ads/google_ads/v0/services/campaign_audience_view_service_client_config.py new file mode 100644 index 000000000..74e4410d4 --- /dev/null +++ b/google/ads/google_ads/v0/services/campaign_audience_view_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.CampaignAudienceViewService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetCampaignAudienceView": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/campaign_feed_service_client.py b/google/ads/google_ads/v0/services/campaign_feed_service_client.py new file mode 100644 index 000000000..6a6518090 --- /dev/null +++ b/google/ads/google_ads/v0/services/campaign_feed_service_client.py @@ -0,0 +1,260 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services CampaignFeedService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import campaign_feed_service_client_config +from google.ads.google_ads.v0.services.transports import campaign_feed_service_grpc_transport +from google.ads.google_ads.v0.proto.services import campaign_feed_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class CampaignFeedServiceClient(object): + """Service to manage campaign feeds.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.CampaignFeedService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + CampaignFeedServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def campaign_feed_path(cls, customer, campaign_feed): + """Return a fully-qualified campaign_feed string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/campaignFeeds/{campaign_feed}', + customer=customer, + campaign_feed=campaign_feed, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=campaign_feed_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.CampaignFeedServiceGrpcTransport, + Callable[[~.Credentials, type], ~.CampaignFeedServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=campaign_feed_service_grpc_transport. + CampaignFeedServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = campaign_feed_service_grpc_transport.CampaignFeedServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_campaign_feed(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested campaign feed in full detail. + + Args: + resource_name (str): The resource name of the campaign feed to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.CampaignFeed` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_campaign_feed' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_campaign_feed'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_campaign_feed, + default_retry=self._method_configs[ + 'GetCampaignFeed'].retry, + default_timeout=self._method_configs['GetCampaignFeed'] + .timeout, + client_info=self._client_info, + ) + + request = campaign_feed_service_pb2.GetCampaignFeedRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_campaign_feed']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_campaign_feeds(self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes campaign feeds. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose campaign feeds are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.CampaignFeedOperation]]): The list of operations to perform on individual campaign feeds. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.CampaignFeedOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateCampaignFeedsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_campaign_feeds' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_campaign_feeds'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_campaign_feeds, + default_retry=self._method_configs[ + 'MutateCampaignFeeds'].retry, + default_timeout=self._method_configs['MutateCampaignFeeds'] + .timeout, + client_info=self._client_info, + ) + + request = campaign_feed_service_pb2.MutateCampaignFeedsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_campaign_feeds']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/campaign_feed_service_client_config.py b/google/ads/google_ads/v0/services/campaign_feed_service_client_config.py new file mode 100644 index 000000000..85b759e02 --- /dev/null +++ b/google/ads/google_ads/v0/services/campaign_feed_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.CampaignFeedService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetCampaignFeed": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateCampaignFeeds": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/carrier_constant_service_client.py b/google/ads/google_ads/v0/services/carrier_constant_service_client.py new file mode 100644 index 000000000..9e5838680 --- /dev/null +++ b/google/ads/google_ads/v0/services/carrier_constant_service_client.py @@ -0,0 +1,206 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services CarrierConstantService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import carrier_constant_service_client_config +from google.ads.google_ads.v0.services.transports import carrier_constant_service_grpc_transport +from google.ads.google_ads.v0.proto.services import carrier_constant_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class CarrierConstantServiceClient(object): + """Service to fetch carrier constants.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.CarrierConstantService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + CarrierConstantServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def carrier_constant_path(cls, carrier_constant): + """Return a fully-qualified carrier_constant string.""" + return google.api_core.path_template.expand( + 'carrierConstants/{carrier_constant}', + carrier_constant=carrier_constant, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=carrier_constant_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.CarrierConstantServiceGrpcTransport, + Callable[[~.Credentials, type], ~.CarrierConstantServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=carrier_constant_service_grpc_transport. + CarrierConstantServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = carrier_constant_service_grpc_transport.CarrierConstantServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_carrier_constant(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested carrier constant in full detail. + + Args: + resource_name (str): Resource name of the carrier constant to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.CarrierConstant` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_carrier_constant' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_carrier_constant'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_carrier_constant, + default_retry=self._method_configs[ + 'GetCarrierConstant'].retry, + default_timeout=self._method_configs['GetCarrierConstant'] + .timeout, + client_info=self._client_info, + ) + + request = carrier_constant_service_pb2.GetCarrierConstantRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_carrier_constant']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/carrier_constant_service_client_config.py b/google/ads/google_ads/v0/services/carrier_constant_service_client_config.py new file mode 100644 index 000000000..a395463e4 --- /dev/null +++ b/google/ads/google_ads/v0/services/carrier_constant_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.CarrierConstantService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetCarrierConstant": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/customer_client_service_client.py b/google/ads/google_ads/v0/services/customer_client_service_client.py new file mode 100644 index 000000000..485f32342 --- /dev/null +++ b/google/ads/google_ads/v0/services/customer_client_service_client.py @@ -0,0 +1,207 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services CustomerClientService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import customer_client_service_client_config +from google.ads.google_ads.v0.services.transports import customer_client_service_grpc_transport +from google.ads.google_ads.v0.proto.services import customer_client_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class CustomerClientServiceClient(object): + """Service to manage customer clients in a manager hierarchy.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.CustomerClientService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + CustomerClientServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def customer_client_path(cls, customer, customer_client): + """Return a fully-qualified customer_client string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/customerClients/{customer_client}', + customer=customer, + customer_client=customer_client, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=customer_client_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.CustomerClientServiceGrpcTransport, + Callable[[~.Credentials, type], ~.CustomerClientServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=customer_client_service_grpc_transport. + CustomerClientServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = customer_client_service_grpc_transport.CustomerClientServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_customer_client(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested customer client in full detail. + + Args: + resource_name (str): The resource name of the customer client to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.CustomerClient` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_customer_client' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_customer_client'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_customer_client, + default_retry=self._method_configs[ + 'GetCustomerClient'].retry, + default_timeout=self._method_configs['GetCustomerClient'] + .timeout, + client_info=self._client_info, + ) + + request = customer_client_service_pb2.GetCustomerClientRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_customer_client']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/customer_client_service_client_config.py b/google/ads/google_ads/v0/services/customer_client_service_client_config.py new file mode 100644 index 000000000..c723ecc77 --- /dev/null +++ b/google/ads/google_ads/v0/services/customer_client_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.CustomerClientService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetCustomerClient": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/customer_feed_service_client.py b/google/ads/google_ads/v0/services/customer_feed_service_client.py new file mode 100644 index 000000000..762d236d9 --- /dev/null +++ b/google/ads/google_ads/v0/services/customer_feed_service_client.py @@ -0,0 +1,260 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services CustomerFeedService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import customer_feed_service_client_config +from google.ads.google_ads.v0.services.transports import customer_feed_service_grpc_transport +from google.ads.google_ads.v0.proto.services import customer_feed_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class CustomerFeedServiceClient(object): + """Service to manage customer feeds.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.CustomerFeedService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + CustomerFeedServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def customer_feed_path(cls, customer, customer_feed): + """Return a fully-qualified customer_feed string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/customerFeeds/{customer_feed}', + customer=customer, + customer_feed=customer_feed, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=customer_feed_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.CustomerFeedServiceGrpcTransport, + Callable[[~.Credentials, type], ~.CustomerFeedServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=customer_feed_service_grpc_transport. + CustomerFeedServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = customer_feed_service_grpc_transport.CustomerFeedServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_customer_feed(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested customer feed in full detail. + + Args: + resource_name (str): The resource name of the customer feed to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.CustomerFeed` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_customer_feed' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_customer_feed'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_customer_feed, + default_retry=self._method_configs[ + 'GetCustomerFeed'].retry, + default_timeout=self._method_configs['GetCustomerFeed'] + .timeout, + client_info=self._client_info, + ) + + request = customer_feed_service_pb2.GetCustomerFeedRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_customer_feed']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_customer_feeds(self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes customer feeds. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose customer feeds are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.CustomerFeedOperation]]): The list of operations to perform on individual customer feeds. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.CustomerFeedOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateCustomerFeedsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_customer_feeds' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_customer_feeds'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_customer_feeds, + default_retry=self._method_configs[ + 'MutateCustomerFeeds'].retry, + default_timeout=self._method_configs['MutateCustomerFeeds'] + .timeout, + client_info=self._client_info, + ) + + request = customer_feed_service_pb2.MutateCustomerFeedsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_customer_feeds']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/customer_feed_service_client_config.py b/google/ads/google_ads/v0/services/customer_feed_service_client_config.py new file mode 100644 index 000000000..009d9acf6 --- /dev/null +++ b/google/ads/google_ads/v0/services/customer_feed_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.CustomerFeedService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetCustomerFeed": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateCustomerFeeds": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/customer_service_client.py b/google/ads/google_ads/v0/services/customer_service_client.py index 4e4b67639..8cbd26533 100644 --- a/google/ads/google_ads/v0/services/customer_service_client.py +++ b/google/ads/google_ads/v0/services/customer_service_client.py @@ -204,6 +204,57 @@ def get_customer(self, return self._inner_api_calls['get_customer']( request, retry=retry, timeout=timeout, metadata=metadata) + def mutate_customer(self, + customer_id, + operation, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Updates a customer. Operation statuses are returned. + + Args: + customer_id (str): The ID of the customer being modified. + operation (Union[dict, ~google.ads.google_ads.v0.types.CustomerOperation]): The operation to perform on the customer + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.CustomerOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateCustomerResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_customer' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_customer'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_customer, + default_retry=self._method_configs['MutateCustomer'].retry, + default_timeout=self._method_configs['MutateCustomer'] + .timeout, + client_info=self._client_info, + ) + + request = customer_service_pb2.MutateCustomerRequest( + customer_id=customer_id, + operation=operation, + ) + return self._inner_api_calls['mutate_customer']( + request, retry=retry, timeout=timeout, metadata=metadata) + def list_accessible_customers( self, retry=google.api_core.gapic_v1.method.DEFAULT, @@ -247,3 +298,56 @@ def list_accessible_customers( request = customer_service_pb2.ListAccessibleCustomersRequest() return self._inner_api_calls['list_accessible_customers']( request, retry=retry, timeout=timeout, metadata=metadata) + + def create_customer_client(self, + customer_id, + customer_client, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates a new client under manager. The new client customer is returned. + + Args: + customer_id (str): The ID of the Manager under whom client customer is being created. + customer_client (Union[dict, ~google.ads.google_ads.v0.types.Customer]): The new client customer to create. The resource name on this customer + will be ignored. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.Customer` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.CreateCustomerClientResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'create_customer_client' not in self._inner_api_calls: + self._inner_api_calls[ + 'create_customer_client'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.create_customer_client, + default_retry=self._method_configs['CreateCustomerClient'] + .retry, + default_timeout=self._method_configs[ + 'CreateCustomerClient'].timeout, + client_info=self._client_info, + ) + + request = customer_service_pb2.CreateCustomerClientRequest( + customer_id=customer_id, + customer_client=customer_client, + ) + return self._inner_api_calls['create_customer_client']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/customer_service_client_config.py b/google/ads/google_ads/v0/services/customer_service_client_config.py index 5cc94fc17..2787a05ff 100644 --- a/google/ads/google_ads/v0/services/customer_service_client_config.py +++ b/google/ads/google_ads/v0/services/customer_service_client_config.py @@ -22,10 +22,20 @@ "retry_codes_name": "idempotent", "retry_params_name": "default" }, + "MutateCustomer": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + }, "ListAccessibleCustomers": { "timeout_millis": 60000, "retry_codes_name": "idempotent", "retry_params_name": "default" + }, + "CreateCustomerClient": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" } } } diff --git a/google/ads/google_ads/v0/services/enums.py b/google/ads/google_ads/v0/services/enums.py index 3d19e67f9..be19ccd84 100644 --- a/google/ads/google_ads/v0/services/enums.py +++ b/google/ads/google_ads/v0/services/enums.py @@ -16,6 +16,104 @@ import enum +class AdvertisingChannelSubTypeEnum(object): + class AdvertisingChannelSubType(enum.IntEnum): + """ + Enum describing the different channel subtypes. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used as a return value only. Represents value unknown in this version. + SEARCH_MOBILE_APP (int): Mobile app campaigns for Search. + DISPLAY_MOBILE_APP (int): Mobile app campaigns for Display. + SEARCH_EXPRESS (int): AdWords express campaigns for search. + DISPLAY_EXPRESS (int): AdWords Express campaigns for display. + SHOPPING_SMART_ADS (int): Smart Shopping campaigns. + DISPLAY_GMAIL_AD (int): Gmail Ad campaigns. + DISPLAY_SMART_CAMPAIGN (int): Smart display campaigns. + VIDEO_OUTSTREAM (int): Video Outstream campaigns. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + SEARCH_MOBILE_APP = 2 + DISPLAY_MOBILE_APP = 3 + SEARCH_EXPRESS = 4 + DISPLAY_EXPRESS = 5 + SHOPPING_SMART_ADS = 6 + DISPLAY_GMAIL_AD = 7 + DISPLAY_SMART_CAMPAIGN = 8 + VIDEO_OUTSTREAM = 9 + + +class AdvertisingChannelTypeEnum(object): + class AdvertisingChannelType(enum.IntEnum): + """ + Enum describing the various advertising channel types. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + SEARCH (int): Search Network. Includes display bundled, and Search+ campaigns. + DISPLAY (int): Google Display Network only. + SHOPPING (int): Shopping campaigns serve on the shopping property + and on google.com search results. + HOTEL (int): Hotel Ads campaigns. + VIDEO (int): Video campaigns. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + SEARCH = 2 + DISPLAY = 3 + SHOPPING = 4 + HOTEL = 5 + VIDEO = 6 + + +class CriterionCategoryChannelAvailabilityModeEnum(object): + class CriterionCategoryChannelAvailabilityMode(enum.IntEnum): + """ + Enum containing the possible CriterionCategoryChannelAvailabilityMode. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ALL_CHANNELS (int): The category is available to campaigns of all channel types and subtypes. + CHANNEL_TYPE_AND_ALL_SUBTYPES (int): The category is available to campaigns of a specific channel type, + including all subtypes under it. + CHANNEL_TYPE_AND_SUBSET_SUBTYPES (int): The category is available to campaigns of a specific channel type and + subtype(s). + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ALL_CHANNELS = 2 + CHANNEL_TYPE_AND_ALL_SUBTYPES = 3 + CHANNEL_TYPE_AND_SUBSET_SUBTYPES = 4 + + +class CriterionCategoryLocaleAvailabilityModeEnum(object): + class CriterionCategoryLocaleAvailabilityMode(enum.IntEnum): + """ + Enum containing the possible CriterionCategoryLocaleAvailabilityMode. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ALL_LOCALES (int): The category is available to campaigns of all locales. + COUNTRY_AND_ALL_LANGUAGES (int): The category is available to campaigns within a list of countries, + regardless of language. + LANGUAGE_AND_ALL_COUNTRIES (int): The category is available to campaigns within a list of languages, + regardless of country. + COUNTRY_AND_LANGUAGE (int): The category is available to campaigns within a list of country, language + pairs. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ALL_LOCALES = 2 + COUNTRY_AND_ALL_LANGUAGES = 3 + LANGUAGE_AND_ALL_COUNTRIES = 4 + COUNTRY_AND_LANGUAGE = 5 + + class TrackingCodePageFormatEnum(object): class TrackingCodePageFormat(enum.IntEnum): """ @@ -26,10 +124,12 @@ class TrackingCodePageFormat(enum.IntEnum): UNSPECIFIED (int): Not specified. UNKNOWN (int): Used for return value only. Represents value unknown in this version. HTML (int): Standard HTML page format. + AMP (int): Google AMP page format. """ UNSPECIFIED = 0 UNKNOWN = 1 HTML = 2 + AMP = 3 class TrackingCodeTypeEnum(object): @@ -54,6 +154,81 @@ class TrackingCodeType(enum.IntEnum): CLICK_TO_CALL = 4 +class FrequencyCapEventTypeEnum(object): + class FrequencyCapEventType(enum.IntEnum): + """ + The type of event that the cap applies to (e.g. impression). + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + IMPRESSION (int): The cap applies on ad impressions. + VIDEO_VIEW (int): The cap applies on video ad views. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + IMPRESSION = 2 + VIDEO_VIEW = 3 + + +class FrequencyCapLevelEnum(object): + class FrequencyCapLevel(enum.IntEnum): + """ + The level on which the cap is to be applied (e.g ad group ad, ad group). + Cap is applied to all the resources of this level. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + AD_GROUP_AD (int): The cap is applied at the ad group ad level. + AD_GROUP (int): The cap is applied at the ad group level. + CAMPAIGN (int): The cap is applied at the campaign level. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + AD_GROUP_AD = 2 + AD_GROUP = 3 + CAMPAIGN = 4 + + +class FrequencyCapTimeUnitEnum(object): + class FrequencyCapTimeUnit(enum.IntEnum): + """ + Unit of time the cap is defined at (e.g. day, week). + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + DAY (int): The cap would define limit per one day. + WEEK (int): The cap would define limit per one week. + MONTH (int): The cap would define limit per one month. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + DAY = 2 + WEEK = 3 + MONTH = 4 + + +class KeywordPlanCompetitionLevelEnum(object): + class KeywordPlanCompetitionLevel(enum.IntEnum): + """ + Competition level of a keyword. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): The value is unknown in this version. + LOW (int): Low competition. + MEDIUM (int): Medium competition. + HIGH (int): High competition. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + LOW = 2 + MEDIUM = 3 + HIGH = 4 + + class CallConversionReportingStateEnum(object): class CallConversionReportingState(enum.IntEnum): """ @@ -95,6 +270,45 @@ class DisplayAdFormatSetting(enum.IntEnum): NATIVE = 4 +class MimeTypeEnum(object): + class MimeType(enum.IntEnum): + """ + The mime type + + Attributes: + UNSPECIFIED (int): The mime type has not been specified. + UNKNOWN (int): The received value is not known in this version. + + This is a response-only value. + IMAGE_JPEG (int): MIME type of image/jpeg. + IMAGE_GIF (int): MIME type of image/gif. + IMAGE_PNG (int): MIME type of image/png. + FLASH (int): MIME type of application/x-shockwave-flash. + TEXT_HTML (int): MIME type of text/html. + PDF (int): MIME type of application/pdf. + MSWORD (int): MIME type of application/msword. + MSEXCEL (int): MIME type of application/vnd.ms-excel. + RTF (int): MIME type of application/rtf. + AUDIO_WAV (int): MIME type of audio/wav. + AUDIO_MP3 (int): MIME type of audio/mp3. + HTML5_AD_ZIP (int): MIME type of application/x-html5-ad-zip. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + IMAGE_JPEG = 2 + IMAGE_GIF = 3 + IMAGE_PNG = 4 + FLASH = 5 + TEXT_HTML = 6 + PDF = 7 + MSWORD = 8 + MSEXCEL = 9 + RTF = 10 + AUDIO_WAV = 11 + AUDIO_MP3 = 12 + HTML5_AD_ZIP = 13 + + class PageOnePromotedStrategyGoalEnum(object): class PageOnePromotedStrategyGoal(enum.IntEnum): """ @@ -163,6 +377,46 @@ class PolicyTopicEvidenceDestinationMismatchUrlType(enum.IntEnum): MOBILE_TRACKING_URL = 6 +class CustomerMatchUploadKeyTypeEnum(object): + class CustomerMatchUploadKeyType(enum.IntEnum): + """ + Enum describing possible customer match upload key types. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + CONTACT_INFO (int): Members are matched from customer info such as email address, phone + number or physical address. + CRM_ID (int): Members are matched from a user id generated and assigned by the + advertiser. + MOBILE_ADVERTISING_ID (int): Members are matched from mobile advertising ids. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + CONTACT_INFO = 2 + CRM_ID = 3 + MOBILE_ADVERTISING_ID = 4 + + +class UserListCrmDataSourceTypeEnum(object): + class UserListCrmDataSourceType(enum.IntEnum): + """ + Enum describing possible user list crm data source type. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + FIRST_PARTY (int): The uploaded data is first party data. + THIRD_PARTY_CREDIT_BUREAU (int): The uploaded data is from a third party credit bureau. + THIRD_PARTY_VOTER_FILE (int): The uploaded data is from a third party voter file. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + FIRST_PARTY = 2 + THIRD_PARTY_CREDIT_BUREAU = 3 + THIRD_PARTY_VOTER_FILE = 4 + + class AgeRangeTypeEnum(object): class AgeRangeType(enum.IntEnum): """ @@ -190,6 +444,49 @@ class AgeRangeType(enum.IntEnum): AGE_RANGE_UNDETERMINED = 503999 +class ContentLabelTypeEnum(object): + class ContentLabelType(enum.IntEnum): + """ + Enum listing the content label types supported by ContentLabel criterion. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + SEXUALLY_SUGGESTIVE (int): Sexually suggestive content. + BELOW_THE_FOLD (int): Below the fold placement. + PARKED_DOMAIN (int): Parked domain. + GAME (int): Game. + JUVENILE (int): Juvenile, gross & bizarre content. + PROFANITY (int): Profanity & rough language. + TRAGEDY (int): Death & tragedy. + VIDEO (int): Video. + VIDEO_RATING_DV_G (int): Content rating: G. + VIDEO_RATING_DV_PG (int): Content rating: PG. + VIDEO_RATING_DV_T (int): Content rating: T. + VIDEO_RATING_DV_MA (int): Content rating: MA. + VIDEO_NOT_YET_RATED (int): Content rating: not yet rated. + EMBEDDED_VIDEO (int): Embedded video. + LIVE_STREAMING_VIDEO (int): Live streaming video. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + SEXUALLY_SUGGESTIVE = 2 + BELOW_THE_FOLD = 3 + PARKED_DOMAIN = 4 + GAME = 5 + JUVENILE = 6 + PROFANITY = 7 + TRAGEDY = 8 + VIDEO = 9 + VIDEO_RATING_DV_G = 10 + VIDEO_RATING_DV_PG = 11 + VIDEO_RATING_DV_T = 12 + VIDEO_RATING_DV_MA = 13 + VIDEO_NOT_YET_RATED = 14 + EMBEDDED_VIDEO = 15 + LIVE_STREAMING_VIDEO = 16 + + class DayOfWeekEnum(object): class DayOfWeek(enum.IntEnum): """ @@ -415,6 +712,21 @@ class ParentalStatusType(enum.IntEnum): UNDETERMINED = 302 +class PreferredContentTypeEnum(object): + class PreferredContentType(enum.IntEnum): + """ + Enumerates preferred content criterion type. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): The value is unknown in this version. + YOUTUBE_TOP_CONTENT (int): Represents top content on YouTube. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + YOUTUBE_TOP_CONTENT = 400 + + class ProductChannelEnum(object): class ProductChannel(enum.IntEnum): """ @@ -459,14 +771,12 @@ class ProductCondition(enum.IntEnum): Attributes: UNSPECIFIED (int): Not specified. UNKNOWN (int): Used for return value only. Represents value unknown in this version. - OLD (int): The product condition is old. NEW (int): The product condition is new. REFURBISHED (int): The product condition is refurbished. USED (int): The product condition is used. """ UNSPECIFIED = 0 UNKNOWN = 1 - OLD = 2 NEW = 3 REFURBISHED = 4 USED = 5 @@ -540,6 +850,104 @@ class AdServingOptimizationStatus(enum.IntEnum): UNAVAILABLE = 6 +class CallPlaceholderFieldEnum(object): + class CallPlaceholderField(enum.IntEnum): + """ + Possible values for Call placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + PHONE_NUMBER (int): Data Type: STRING. The advertiser's phone number to append to the ad. + COUNTRY_CODE (int): Data Type: STRING. Uppercase two-letter country code of the advertiser's + phone number. + TRACKED (int): Data Type: BOOLEAN. Indicates whether call tracking is enabled. Default: + true. + CONVERSION_TYPE_ID (int): Data Type: INT64. The ID of an AdCallMetricsConversion object. This + object contains the phoneCallDurationfield which is the minimum duration + (in seconds) of a call to be considered a conversion. + CONVERSION_REPORTING_STATE (int): Data Type: STRING. Indicates whether this call extension uses its own + call conversion setting or follows the account level setting. + Valid values are: USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION and + USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + PHONE_NUMBER = 2 + COUNTRY_CODE = 3 + TRACKED = 4 + CONVERSION_TYPE_ID = 5 + CONVERSION_REPORTING_STATE = 6 + + +class FlightPlaceholderFieldEnum(object): + class FlightPlaceholderField(enum.IntEnum): + """ + Possible values for Flight placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + DESTINATION_ID (int): Data Type: STRING. Required. Destination id. Example: PAR, LON. + For feed items that only have destination id, destination id must be a + unique key. For feed items that have both destination id and origin id, + then the combination must be a unique key. + ORIGIN_ID (int): Data Type: STRING. Origin id. Example: PAR, LON. + Optional. Combination of destination id and origin id must be unique per + offer. + FLIGHT_DESCRIPTION (int): Data Type: STRING. Required. Main headline with product name to be shown + in dynamic ad. + ORIGIN_NAME (int): Data Type: STRING. Shorter names are recommended. + DESTINATION_NAME (int): Data Type: STRING. Shorter names are recommended. + FLIGHT_PRICE (int): Data Type: STRING. Price to be shown in the ad. + Example: \"100.00 USD\" + FORMATTED_PRICE (int): Data Type: STRING. Formatted price to be shown in the ad. + Example: \"Starting at $100.00 USD\", \"$80 - $100\" + FLIGHT_SALE_PRICE (int): Data Type: STRING. Sale price to be shown in the ad. + Example: \"80.00 USD\" + FORMATTED_SALE_PRICE (int): Data Type: STRING. Formatted sale price to be shown in the ad. + Example: \"On sale for $80.00\", \"$60 - $80\" + IMAGE_URL (int): Data Type: URL. Image to be displayed in the ad. + FINAL_URLS (int): Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded + URLs. User will be redirected to these URLs when they click on an ad, or + when they click on a specific flight for ads that show multiple + flights. + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + ANDROID_APP_LINK (int): Data Type: STRING. Android app link. Must be formatted as: + android-app://{package_id}/{scheme}/{host_path}. + The components are defined as follows: + package_id: app ID as specified in Google Play. + scheme: the scheme to pass to the application. Can be HTTP, or a custom + scheme. + host_path: identifies the specific content within your application. + SIMILAR_DESTINATION_IDS (int): Data Type: STRING_LIST. List of recommended destination IDs to show + together with this item. + IOS_APP_LINK (int): Data Type: STRING. iOS app link. + IOS_APP_STORE_ID (int): Data Type: INT64. iOS app store ID. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + DESTINATION_ID = 2 + ORIGIN_ID = 3 + FLIGHT_DESCRIPTION = 4 + ORIGIN_NAME = 5 + DESTINATION_NAME = 6 + FLIGHT_PRICE = 7 + FORMATTED_PRICE = 8 + FLIGHT_SALE_PRICE = 9 + FORMATTED_SALE_PRICE = 10 + IMAGE_URL = 11 + FINAL_URLS = 12 + FINAL_MOBILE_URLS = 13 + TRACKING_URL = 14 + ANDROID_APP_LINK = 15 + SIMILAR_DESTINATION_IDS = 16 + IOS_APP_LINK = 17 + IOS_APP_STORE_ID = 18 + + class TargetCpaOptInRecommendationGoalEnum(object): class TargetCpaOptInRecommendationGoal(enum.IntEnum): """ @@ -562,6 +970,23 @@ class TargetCpaOptInRecommendationGoal(enum.IntEnum): CLOSEST_CPA = 5 +class KeywordPlanNetworkEnum(object): + class KeywordPlanNetwork(enum.IntEnum): + """ + Enumerates keyword plan forecastable network types. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): The value is unknown in this version. + GOOGLE_SEARCH (int): Google Search. + GOOGLE_SEARCH_AND_PARTNERS (int): Google Search + Search partners. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + GOOGLE_SEARCH = 2 + GOOGLE_SEARCH_AND_PARTNERS = 3 + + class BiddingStrategyTypeEnum(object): class BiddingStrategyType(enum.IntEnum): """ @@ -630,6 +1055,67 @@ class CampaignGroupStatus(enum.IntEnum): REMOVED = 4 +class EducationPlaceholderFieldEnum(object): + class EducationPlaceholderField(enum.IntEnum): + """ + Possible values for Education placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + PROGRAM_ID (int): Data Type: STRING. Required. Combination of PROGRAM ID and LOCATION ID + must be unique per offer. + LOCATION_ID (int): Data Type: STRING. Combination of PROGRAM ID and LOCATION ID must be + unique per offer. + PROGRAM_NAME (int): Data Type: STRING. Required. Main headline with program name to be shown + in dynamic ad. + AREA_OF_STUDY (int): Data Type: STRING. Area of study that can be shown in dynamic ad. + PROGRAM_DESCRIPTION (int): Data Type: STRING. Description of program that can be shown in dynamic + ad. + SCHOOL_NAME (int): Data Type: STRING. Name of school that can be shown in dynamic ad. + ADDRESS (int): Data Type: STRING. Complete school address, including postal code. + THUMBNAIL_IMAGE_URL (int): Data Type: URL. Image to be displayed in ads. + ALTERNATIVE_THUMBNAIL_IMAGE_URL (int): Data Type: URL. Alternative hosted file of image to be used in the ad. + FINAL_URLS (int): Data Type: URL_LIST. Required. Final URLs to be used in ad when using + Upgraded URLs; the more specific the better (e.g. the individual URL of a + specific program and its location). + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + CONTEXTUAL_KEYWORDS (int): Data Type: STRING_LIST. Keywords used for product retrieval. + ANDROID_APP_LINK (int): Data Type: STRING. Android app link. Must be formatted as: + android-app://{package_id}/{scheme}/{host_path}. + The components are defined as follows: + package_id: app ID as specified in Google Play. + scheme: the scheme to pass to the application. Can be HTTP, or a custom + scheme. + host_path: identifies the specific content within your application. + SIMILAR_PROGRAM_IDS (int): Data Type: STRING_LIST. List of recommended program IDs to show together + with this item. + IOS_APP_LINK (int): Data Type: STRING. iOS app link. + IOS_APP_STORE_ID (int): Data Type: INT64. iOS app store ID. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + PROGRAM_ID = 2 + LOCATION_ID = 3 + PROGRAM_NAME = 4 + AREA_OF_STUDY = 5 + PROGRAM_DESCRIPTION = 6 + SCHOOL_NAME = 7 + ADDRESS = 8 + THUMBNAIL_IMAGE_URL = 9 + ALTERNATIVE_THUMBNAIL_IMAGE_URL = 10 + FINAL_URLS = 11 + FINAL_MOBILE_URLS = 12 + TRACKING_URL = 13 + CONTEXTUAL_KEYWORDS = 14 + ANDROID_APP_LINK = 15 + SIMILAR_PROGRAM_IDS = 16 + IOS_APP_LINK = 17 + IOS_APP_STORE_ID = 18 + + class GeoTargetConstantStatusEnum(object): class GeoTargetConstantStatus(enum.IntEnum): """ @@ -674,6 +1160,40 @@ class CampaignServingStatus(enum.IntEnum): SUSPENDED = 6 +class GeoTargetingRestrictionEnum(object): + class GeoTargetingRestriction(enum.IntEnum): + """ + A restriction used to determine if the request context's + geo should be matched. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + LOCATION_OF_PRESENCE (int): Indicates that request context should match the physical location of + the user. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + LOCATION_OF_PRESENCE = 2 + + +class FeedMappingCriterionTypeEnum(object): + class FeedMappingCriterionType(enum.IntEnum): + """ + Possible placeholder types for a feed mapping. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + CAMPAIGN_LOCATION_TARGETS (int): Allows campaign targeting at locations within a location feed. + DSA_PAGE_FEED (int): Allows url targeting for your dynamic search ads within a page feed. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + CAMPAIGN_LOCATION_TARGETS = 2 + DSA_PAGE_FEED = 3 + + class ChangeStatusResourceTypeEnum(object): class ChangeStatusResourceType(enum.IntEnum): """ @@ -717,6 +1237,174 @@ class QualityScoreBucket(enum.IntEnum): ABOVE_AVERAGE = 4 +class KeywordPlanForecastIntervalEnum(object): + class KeywordPlanForecastInterval(enum.IntEnum): + """ + Forecast intervals. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): The value is unknown in this version. + NEXT_WEEK (int): The next week date range for keyword plan. The next week is based + on the default locale of the user's account and is mostly SUN-SAT or + MON-SUN. + This can be different from next-7 days. + NEXT_MONTH (int): The next month date range for keyword plan. + NEXT_QUARTER (int): The next quarter date range for keyword plan. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + NEXT_WEEK = 3 + NEXT_MONTH = 4 + NEXT_QUARTER = 5 + + +class JobPlaceholderFieldEnum(object): + class JobPlaceholderField(enum.IntEnum): + """ + Possible values for Job placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + JOB_ID (int): Data Type: STRING. Required. If only JOB_ID is specified, then it must be + unique. If both JOB_ID and LOCATION_ID are specified, then the + pair must be unique. + ID) pair must be unique. + LOCATION_ID (int): Data Type: STRING. Combination of JOB_ID and LOCATION_ID must be unique + per offer. + TITLE (int): Data Type: STRING. Required. Main headline with job title to be shown in + dynamic ad. + SUBTITLE (int): Data Type: STRING. Job subtitle to be shown in dynamic ad. + DESCRIPTION (int): Data Type: STRING. Description of job to be shown in dynamic ad. + IMAGE_URL (int): Data Type: URL. Image to be displayed in the ad. Highly recommended for + image ads. + CATEGORY (int): Data Type: STRING. Category of property used to group like items together + for recommendation engine. + CONTEXTUAL_KEYWORDS (int): Data Type: STRING_LIST. Keywords used for product retrieval. + ADDRESS (int): Data Type: STRING. Complete property address, including postal code. + SALARY (int): Data Type: STRING. Salary or salary range of job to be shown in dynamic + ad. + FINAL_URLS (int): Data Type: URL_LIST. Required. Final URLs to be used in ad when using + Upgraded URLs; the more specific the better (e.g. the individual URL of a + specific job and its location). + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + ANDROID_APP_LINK (int): Data Type: STRING. Android app link. Must be formatted as: + android-app://{package_id}/{scheme}/{host_path}. + The components are defined as follows: + package_id: app ID as specified in Google Play. + scheme: the scheme to pass to the application. Can be HTTP, or a custom + scheme. + host_path: identifies the specific content within your application. + SIMILAR_JOB_IDS (int): Data Type: STRING_LIST. List of recommended job IDs to show together with + this item. + IOS_APP_LINK (int): Data Type: STRING. iOS app link. + IOS_APP_STORE_ID (int): Data Type: INT64. iOS app store ID. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + JOB_ID = 2 + LOCATION_ID = 3 + TITLE = 4 + SUBTITLE = 5 + DESCRIPTION = 6 + IMAGE_URL = 7 + CATEGORY = 8 + CONTEXTUAL_KEYWORDS = 9 + ADDRESS = 10 + SALARY = 11 + FINAL_URLS = 12 + FINAL_MOBILE_URLS = 14 + TRACKING_URL = 15 + ANDROID_APP_LINK = 16 + SIMILAR_JOB_IDS = 17 + IOS_APP_LINK = 18 + IOS_APP_STORE_ID = 19 + + +class RealEstatePlaceholderFieldEnum(object): + class RealEstatePlaceholderField(enum.IntEnum): + """ + Possible values for Real Estate placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + LISTING_ID (int): Data Type: STRING. Unique ID. + LISTING_NAME (int): Data Type: STRING. Main headline with listing name to be shown in dynamic + ad. + CITY_NAME (int): Data Type: STRING. City name to be shown in dynamic ad. + DESCRIPTION (int): Data Type: STRING. Description of listing to be shown in dynamic ad. + ADDRESS (int): Data Type: STRING. Complete listing address, including postal code. + PRICE (int): Data Type: STRING. Price to be shown in the ad. + Example: \"100.00 USD\" + FORMATTED_PRICE (int): Data Type: STRING. Formatted price to be shown in the ad. + Example: \"Starting at $100.00 USD\", \"$80 - $100\" + IMAGE_URL (int): Data Type: URL. Image to be displayed in the ad. + PROPERTY_TYPE (int): Data Type: STRING. Type of property (house, condo, apartment, etc.) used + to group like items together for recommendation engine. + LISTING_TYPE (int): Data Type: STRING. Type of listing (resale, rental, foreclosure, etc.) + used to group like items together for recommendation engine. + CONTEXTUAL_KEYWORDS (int): Data Type: STRING_LIST. Keywords used for product retrieval. + FINAL_URLS (int): Data Type: URL_LIST. Final URLs to be used in ad when using Upgraded + URLs; the more specific the better (e.g. the individual URL of a specific + listing and its location). + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + ANDROID_APP_LINK (int): Data Type: STRING. Android app link. Must be formatted as: + android-app://{package_id}/{scheme}/{host_path}. + The components are defined as follows: + package_id: app ID as specified in Google Play. + scheme: the scheme to pass to the application. Can be HTTP, or a custom + scheme. + host_path: identifies the specific content within your application. + SIMILAR_LISTING_IDS (int): Data Type: STRING_LIST. List of recommended listing IDs to show together + with this item. + IOS_APP_LINK (int): Data Type: STRING. iOS app link. + IOS_APP_STORE_ID (int): Data Type: INT64. iOS app store ID. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + LISTING_ID = 2 + LISTING_NAME = 3 + CITY_NAME = 4 + DESCRIPTION = 5 + ADDRESS = 6 + PRICE = 7 + FORMATTED_PRICE = 8 + IMAGE_URL = 9 + PROPERTY_TYPE = 10 + LISTING_TYPE = 11 + CONTEXTUAL_KEYWORDS = 12 + FINAL_URLS = 13 + FINAL_MOBILE_URLS = 14 + TRACKING_URL = 15 + ANDROID_APP_LINK = 16 + SIMILAR_LISTING_IDS = 17 + IOS_APP_LINK = 18 + IOS_APP_STORE_ID = 19 + + +class FeedLinkStatusEnum(object): + class FeedLinkStatus(enum.IntEnum): + """ + Possible statuses of a feed link. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ENABLED (int): Feed link is enabled. + REMOVED (int): Feed link has been removed. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ENABLED = 2 + REMOVED = 3 + + class AdGroupStatusEnum(object): class AdGroupStatus(enum.IntEnum): """ @@ -738,6 +1426,80 @@ class AdGroupStatus(enum.IntEnum): REMOVED = 4 +class SearchTermMatchTypeEnum(object): + class SearchTermMatchType(enum.IntEnum): + """ + Possible match types for a keyword triggering an ad, including variants. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + BROAD (int): Broad match. + EXACT (int): Exact match. + PHRASE (int): Phrase match. + NEAR_EXACT (int): Exact match (close variant). + NEAR_PHRASE (int): Phrase match (close variant). + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + BROAD = 2 + EXACT = 3 + PHRASE = 4 + NEAR_EXACT = 5 + NEAR_PHRASE = 6 + + +class PlaceholderTypeEnum(object): + class PlaceholderType(enum.IntEnum): + """ + Possible placeholder types for a feed mapping. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + SITELINK (int): Sitelink. + CALL (int): Call. + APP (int): App. + LOCATION (int): Location. + AFFILIATE_LOCATION (int): Affiliate location. + CALLOUT (int): Callout. + STRUCTURED_SNIPPET (int): Structured snippet. + MESSAGE (int): Message. + PRICE (int): Price. + PROMOTION (int): Promotion. + AD_CUSTOMIZER (int): Ad customizer. + DYNAMIC_EDUCATION (int): Dynamic education. + DYNAMIC_FLIGHT (int): Dynamic flights. + DYNAMIC_CUSTOM (int): Dynamic custom. + DYNAMIC_HOTEL (int): Dynamic hotels. + DYNAMIC_REAL_ESTATE (int): Dynamic real estate. + DYNAMIC_TRAVEL (int): Dynamic travel. + DYNAMIC_LOCAL (int): Dynamic local. + DYNAMIC_JOB (int): Dynamic jobs. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + SITELINK = 2 + CALL = 3 + APP = 4 + LOCATION = 5 + AFFILIATE_LOCATION = 6 + CALLOUT = 7 + STRUCTURED_SNIPPET = 8 + MESSAGE = 9 + PRICE = 10 + PROMOTION = 11 + AD_CUSTOMIZER = 12 + DYNAMIC_EDUCATION = 13 + DYNAMIC_FLIGHT = 14 + DYNAMIC_CUSTOM = 15 + DYNAMIC_HOTEL = 16 + DYNAMIC_REAL_ESTATE = 17 + DYNAMIC_TRAVEL = 18 + DYNAMIC_LOCAL = 19 + DYNAMIC_JOB = 20 + + class GoogleAdsFieldDataTypeEnum(object): class GoogleAdsFieldDataType(enum.IntEnum): """ @@ -794,43 +1556,189 @@ class GoogleAdsFieldDataType(enum.IntEnum): STRING = 11 -class MimeTypeEnum(object): - class MimeType(enum.IntEnum): +class AffiliateLocationFeedRelationshipTypeEnum(object): + class AffiliateLocationFeedRelationshipType(enum.IntEnum): """ - The mime type + Possible values for a relationship type for an affiliate location feed. Attributes: - UNSPECIFIED (int): The mime type has not been specified. - UNKNOWN (int): The received value is not known in this version. + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + GENERAL_RETAILER (int): General retailer relationship. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + GENERAL_RETAILER = 2 - This is a response-only value. - IMAGE_JPEG (int): MIME type of image/jpeg. - IMAGE_GIF (int): MIME type of image/gif. - IMAGE_PNG (int): MIME type of image/png. - FLASH (int): MIME type of application/x-shockwave-flash. - TEXT_HTML (int): MIME type of text/html. - PDF (int): MIME type of application/pdf. - MSWORD (int): MIME type of application/msword. - MSEXCEL (int): MIME type of application/vnd.ms-excel. - RTF (int): MIME type of application/rtf. - AUDIO_WAV (int): MIME type of audio/wav. - AUDIO_MP3 (int): MIME type of audio/mp3. - HTML5_AD_ZIP (int): MIME type of application/x-html5-ad-zip. + +class UserListClosingReasonEnum(object): + class UserListClosingReason(enum.IntEnum): + """ + Enum describing possible user list closing reasons. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + UNUSED (int): The userlist was closed because of not being used for over one year. """ UNSPECIFIED = 0 UNKNOWN = 1 - IMAGE_JPEG = 2 - IMAGE_GIF = 3 - IMAGE_PNG = 4 - FLASH = 5 - TEXT_HTML = 6 - PDF = 7 - MSWORD = 8 - MSEXCEL = 9 - RTF = 10 - AUDIO_WAV = 11 - AUDIO_MP3 = 12 - HTML5_AD_ZIP = 13 + UNUSED = 2 + + +class FeedItemStatusEnum(object): + class FeedItemStatus(enum.IntEnum): + """ + Possible statuses of a feed item. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ENABLED (int): Feed item is enabled. + REMOVED (int): Feed item has been removed. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ENABLED = 2 + REMOVED = 3 + + +class UserListSizeRangeEnum(object): + class UserListSizeRange(enum.IntEnum): + """ + Enum containing possible user list size ranges. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + LESS_THAN_FIVE_HUNDRED (int): User list has less than 500 users. + LESS_THAN_ONE_THOUSAND (int): User list has number of users in range of 500 to 1000. + ONE_THOUSAND_TO_TEN_THOUSAND (int): User list has number of users in range of 1000 to 10000. + TEN_THOUSAND_TO_FIFTY_THOUSAND (int): User list has number of users in range of 10000 to 50000. + FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND (int): User list has number of users in range of 50000 to 100000. + ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND (int): User list has number of users in range of 100000 to 300000. + THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND (int): User list has number of users in range of 300000 to 500000. + FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION (int): User list has number of users in range of 500000 to 1 million. + ONE_MILLION_TO_TWO_MILLION (int): User list has number of users in range of 1 to 2 millions. + TWO_MILLION_TO_THREE_MILLION (int): User list has number of users in range of 2 to 3 millions. + THREE_MILLION_TO_FIVE_MILLION (int): User list has number of users in range of 3 to 5 millions. + FIVE_MILLION_TO_TEN_MILLION (int): User list has number of users in range of 5 to 10 millions. + TEN_MILLION_TO_TWENTY_MILLION (int): User list has number of users in range of 10 to 20 millions. + TWENTY_MILLION_TO_THIRTY_MILLION (int): User list has number of users in range of 20 to 30 millions. + THIRTY_MILLION_TO_FIFTY_MILLION (int): User list has number of users in range of 30 to 50 millions. + OVER_FIFTY_MILLION (int): User list has over 50 million users. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + LESS_THAN_FIVE_HUNDRED = 2 + LESS_THAN_ONE_THOUSAND = 3 + ONE_THOUSAND_TO_TEN_THOUSAND = 4 + TEN_THOUSAND_TO_FIFTY_THOUSAND = 5 + FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND = 6 + ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND = 7 + THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND = 8 + FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION = 9 + ONE_MILLION_TO_TWO_MILLION = 10 + TWO_MILLION_TO_THREE_MILLION = 11 + THREE_MILLION_TO_FIVE_MILLION = 12 + FIVE_MILLION_TO_TEN_MILLION = 13 + TEN_MILLION_TO_TWENTY_MILLION = 14 + TWENTY_MILLION_TO_THIRTY_MILLION = 15 + THIRTY_MILLION_TO_FIFTY_MILLION = 16 + OVER_FIFTY_MILLION = 17 + + +class UserListTypeEnum(object): + class UserListType(enum.IntEnum): + """ + Enum containing possible user list types. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + REMARKETING (int): UserList represented as a collection of conversion types. + LOGICAL (int): UserList represented as a combination of other user lists/interests. + EXTERNAL_REMARKETING (int): UserList created in the Google Ad Manager platform. + RULE_BASED (int): UserList associated with a rule. + SIMILAR (int): UserList with users similar to users of another UserList. + CRM_BASED (int): UserList of first party CRM data provided by advertiser in the form of + emails or other formats. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + REMARKETING = 2 + LOGICAL = 3 + EXTERNAL_REMARKETING = 4 + RULE_BASED = 5 + SIMILAR = 6 + CRM_BASED = 7 + + +class LocalPlaceholderFieldEnum(object): + class LocalPlaceholderField(enum.IntEnum): + """ + Possible values for Local placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + DEAL_ID (int): Data Type: STRING. Required. Unique ID. + DEAL_NAME (int): Data Type: STRING. Required. Main headline with local deal title to be + shown in dynamic ad. + SUBTITLE (int): Data Type: STRING. Local deal subtitle to be shown in dynamic ad. + DESCRIPTION (int): Data Type: STRING. Description of local deal to be shown in dynamic ad. + PRICE (int): Data Type: STRING. Price to be shown in the ad. Highly recommended for + dynamic ads. Example: \"100.00 USD\" + FORMATTED_PRICE (int): Data Type: STRING. Formatted price to be shown in the ad. + Example: \"Starting at $100.00 USD\", \"$80 - $100\" + SALE_PRICE (int): Data Type: STRING. Sale price to be shown in the ad. + Example: \"80.00 USD\" + FORMATTED_SALE_PRICE (int): Data Type: STRING. Formatted sale price to be shown in the ad. + Example: \"On sale for $80.00\", \"$60 - $80\" + IMAGE_URL (int): Data Type: URL. Image to be displayed in the ad. + ADDRESS (int): Data Type: STRING. Complete property address, including postal code. + CATEGORY (int): Data Type: STRING. Category of local deal used to group like items + together for recommendation engine. + CONTEXTUAL_KEYWORDS (int): Data Type: STRING_LIST. Keywords used for product retrieval. + FINAL_URLS (int): Data Type: URL_LIST. Required. Final URLs to be used in ad when using + Upgraded URLs; the more specific the better (e.g. the individual URL of a + specific local deal and its location). + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + ANDROID_APP_LINK (int): Data Type: STRING. Android app link. Must be formatted as: + android-app://{package_id}/{scheme}/{host_path}. + The components are defined as follows: + package_id: app ID as specified in Google Play. + scheme: the scheme to pass to the application. Can be HTTP, or a custom + scheme. + host_path: identifies the specific content within your application. + SIMILAR_DEAL_IDS (int): Data Type: STRING_LIST. List of recommended local deal IDs to show + together with this item. + IOS_APP_LINK (int): Data Type: STRING. iOS app link. + IOS_APP_STORE_ID (int): Data Type: INT64. iOS app store ID. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + DEAL_ID = 2 + DEAL_NAME = 3 + SUBTITLE = 4 + DESCRIPTION = 5 + PRICE = 6 + FORMATTED_PRICE = 7 + SALE_PRICE = 8 + FORMATTED_SALE_PRICE = 9 + IMAGE_URL = 10 + ADDRESS = 11 + CATEGORY = 12 + CONTEXTUAL_KEYWORDS = 13 + FINAL_URLS = 14 + FINAL_MOBILE_URLS = 15 + TRACKING_URL = 16 + ANDROID_APP_LINK = 17 + SIMILAR_DEAL_IDS = 18 + IOS_APP_LINK = 19 + IOS_APP_STORE_ID = 20 class TimeTypeEnum(object): @@ -851,6 +1759,56 @@ class TimeType(enum.IntEnum): FOREVER = 3 +class PromotionPlaceholderFieldEnum(object): + class PromotionPlaceholderField(enum.IntEnum): + """ + Possible values for Promotion placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + PROMOTION_TARGET (int): Data Type: STRING. The text that appears on the ad when the extension is + shown. + DISCOUNT_MODIFIER (int): Data Type: STRING. Allows you to add \"up to\" phrase to the promotion, + in case you have variable promotion rates. + PERCENT_OFF (int): Data Type: INT64. Takes a value in micros, where 1 million micros + represents 1%, and is shown as a percentage when rendered. + MONEY_AMOUNT_OFF (int): Data Type: PRICE. Requires a currency and an amount of money. + PROMOTION_CODE (int): Data Type: STRING. A string that the user enters to get the discount. + ORDERS_OVER_AMOUNT (int): Data Type: PRICE. A minimum spend before the user qualifies for the + promotion. + PROMOTION_START (int): Data Type: DATE. The start date of the promotion. + PROMOTION_END (int): Data Type: DATE. The end date of the promotion. + OCCASION (int): Data Type: STRING. Describes the associated event for the promotion using + one of the PromotionExtensionOccasion enum values, for example NEW_YEARS. + FINAL_URLS (int): Data Type: URL_LIST. Final URLs to be used in the ad when using Upgraded + URLs. + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + LANGUAGE (int): Data Type: STRING. A string represented by a language code for the + promotion. + FINAL_URL_SUFFIX (int): Data Type: STRING. Final URL suffix for the ad when using parallel + tracking. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + PROMOTION_TARGET = 2 + DISCOUNT_MODIFIER = 3 + PERCENT_OFF = 4 + MONEY_AMOUNT_OFF = 5 + PROMOTION_CODE = 6 + ORDERS_OVER_AMOUNT = 7 + PROMOTION_START = 8 + PROMOTION_END = 9 + OCCASION = 10 + FINAL_URLS = 11 + FINAL_MOBILE_URLS = 12 + TRACKING_URL = 13 + LANGUAGE = 14 + FINAL_URL_SUFFIX = 15 + + class BudgetStatusEnum(object): class BudgetStatus(enum.IntEnum): """ @@ -868,6 +1826,99 @@ class BudgetStatus(enum.IntEnum): REMOVED = 3 +class FeedMappingStatusEnum(object): + class FeedMappingStatus(enum.IntEnum): + """ + Possible statuses of a feed mapping. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ENABLED (int): Feed mapping is enabled. + REMOVED (int): Feed mapping has been removed. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ENABLED = 2 + REMOVED = 3 + + +class CustomPlaceholderFieldEnum(object): + class CustomPlaceholderField(enum.IntEnum): + """ + Possible values for Custom placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ID (int): Data Type: STRING. Required. Combination ID and ID2 must be unique per + offer. + ID2 (int): Data Type: STRING. Combination ID and ID2 must be unique per offer. + ITEM_TITLE (int): Data Type: STRING. Required. Main headline with product name to be shown + in dynamic ad. + ITEM_SUBTITLE (int): Data Type: STRING. Optional text to be shown in the image ad. + ITEM_DESCRIPTION (int): Data Type: STRING. Optional description of the product to be shown in the + ad. + ITEM_ADDRESS (int): Data Type: STRING. Full address of your offer or service, including + postal code. This will be used to identify the closest product to the + user when there are multiple offers in the feed that are relevant to the + user. + PRICE (int): Data Type: STRING. Price to be shown in the ad. + Example: \"100.00 USD\" + FORMATTED_PRICE (int): Data Type: STRING. Formatted price to be shown in the ad. + Example: \"Starting at $100.00 USD\", \"$80 - $100\" + SALE_PRICE (int): Data Type: STRING. Sale price to be shown in the ad. + Example: \"80.00 USD\" + FORMATTED_SALE_PRICE (int): Data Type: STRING. Formatted sale price to be shown in the ad. + Example: \"On sale for $80.00\", \"$60 - $80\" + IMAGE_URL (int): Data Type: URL. Image to be displayed in the ad. Highly recommended for + image ads. + ITEM_CATEGORY (int): Data Type: STRING. Used as a recommendation engine signal to serve items + in the same category. + FINAL_URLS (int): Data Type: URL_LIST. Final URLs for the ad when using Upgraded + URLs. User will be redirected to these URLs when they click on an ad, or + when they click on a specific product for ads that have multiple + products. + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + CONTEXTUAL_KEYWORDS (int): Data Type: STRING_LIST. Keywords used for product retrieval. + ANDROID_APP_LINK (int): Data Type: STRING. Android app link. Must be formatted as: + android-app://{package_id}/{scheme}/{host_path}. + The components are defined as follows: + package_id: app ID as specified in Google Play. + scheme: the scheme to pass to the application. Can be HTTP, or a custom + scheme. + host_path: identifies the specific content within your application. + SIMILAR_IDS (int): Data Type: STRING_LIST. List of recommended IDs to show together with + this item. + IOS_APP_LINK (int): Data Type: STRING. iOS app link. + IOS_APP_STORE_ID (int): Data Type: INT64. iOS app store ID. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ID = 2 + ID2 = 3 + ITEM_TITLE = 4 + ITEM_SUBTITLE = 5 + ITEM_DESCRIPTION = 6 + ITEM_ADDRESS = 7 + PRICE = 8 + FORMATTED_PRICE = 9 + SALE_PRICE = 10 + FORMATTED_SALE_PRICE = 11 + IMAGE_URL = 12 + ITEM_CATEGORY = 13 + FINAL_URLS = 14 + FINAL_MOBILE_URLS = 15 + TRACKING_URL = 16 + CONTEXTUAL_KEYWORDS = 17 + ANDROID_APP_LINK = 18 + SIMILAR_IDS = 19 + IOS_APP_LINK = 20 + IOS_APP_STORE_ID = 21 + + class AdGroupCriterionStatusEnum(object): class AdGroupCriterionStatus(enum.IntEnum): """ @@ -889,6 +1940,23 @@ class AdGroupCriterionStatus(enum.IntEnum): REMOVED = 4 +class FeedStatusEnum(object): + class FeedStatus(enum.IntEnum): + """ + Possible statuses of a feed. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ENABLED (int): Feed is enabled. + REMOVED (int): Feed has been removed. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ENABLED = 2 + REMOVED = 3 + + class CampaignSharedSetStatusEnum(object): class CampaignSharedSetStatus(enum.IntEnum): """ @@ -967,6 +2035,29 @@ class AccountBudgetProposalStatus(enum.IntEnum): REJECTED = 6 +class StructuredSnippetPlaceholderFieldEnum(object): + class StructuredSnippetPlaceholderField(enum.IntEnum): + """ + Possible values for Structured Snippet placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + HEADER (int): Data Type: STRING. The category of snippet of your products/services. + Must match one of the predefined structured snippets headers exactly. + See + https://developers.google.com/adwords/api + /docs/appendix/structured-snippet-headers + SNIPPETS (int): Data Type: STRING_LIST. Text values that describe your products/services. + All text must be family safe. Special or non-ASCII characters are not + permitted. A snippet can be at most 25 characters. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + HEADER = 2 + SNIPPETS = 3 + + class SlotEnum(object): class Slot(enum.IntEnum): """ @@ -1050,6 +2141,112 @@ class MonthOfYear(enum.IntEnum): DECEMBER = 13 +class TravelPlaceholderFieldEnum(object): + class TravelPlaceholderField(enum.IntEnum): + """ + Possible values for Travel placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + DESTINATION_ID (int): Data Type: STRING. Required. Destination id. Example: PAR, LON. + For feed items that only have destination id, destination id must be a + unique key. For feed items that have both destination id and origin id, + then the combination must be a unique key. + ORIGIN_ID (int): Data Type: STRING. Origin id. Example: PAR, LON. + Combination of DESTINATION_ID and ORIGIN_ID must be + unique per offer. + TITLE (int): Data Type: STRING. Required. Main headline with name to be shown in + dynamic ad. + DESTINATION_NAME (int): Data Type: STRING. The destination name. Shorter names are recommended. + ORIGIN_NAME (int): Data Type: STRING. Origin name. Shorter names are recommended. + PRICE (int): Data Type: STRING. Price to be shown in the ad. Highly recommended for + dynamic ads. + Example: \"100.00 USD\" + FORMATTED_PRICE (int): Data Type: STRING. Formatted price to be shown in the ad. + Example: \"Starting at $100.00 USD\", \"$80 - $100\" + SALE_PRICE (int): Data Type: STRING. Sale price to be shown in the ad. + Example: \"80.00 USD\" + FORMATTED_SALE_PRICE (int): Data Type: STRING. Formatted sale price to be shown in the ad. + Example: \"On sale for $80.00\", \"$60 - $80\" + IMAGE_URL (int): Data Type: URL. Image to be displayed in the ad. + CATEGORY (int): Data Type: STRING. Category of travel offer used to group like items + together for recommendation engine. + CONTEXTUAL_KEYWORDS (int): Data Type: STRING_LIST. Keywords used for product retrieval. + DESTINATION_ADDRESS (int): Data Type: STRING. Address of travel offer, including postal code. + FINAL_URL (int): Data Type: URL_LIST. Required. Final URLs to be used in ad, when using + Upgraded URLs; the more specific the better (e.g. the individual URL of a + specific travel offer and its location). + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + ANDROID_APP_LINK (int): Data Type: STRING. Android app link. Must be formatted as: + android-app://{package_id}/{scheme}/{host_path}. + The components are defined as follows: + package_id: app ID as specified in Google Play. + scheme: the scheme to pass to the application. Can be HTTP, or a custom + scheme. + host_path: identifies the specific content within your application. + SIMILAR_DESTINATION_IDS (int): Data Type: STRING_LIST. List of recommended destination IDs to show + together with this item. + IOS_APP_LINK (int): Data Type: STRING. iOS app link. + IOS_APP_STORE_ID (int): Data Type: INT64. iOS app store ID. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + DESTINATION_ID = 2 + ORIGIN_ID = 3 + TITLE = 4 + DESTINATION_NAME = 5 + ORIGIN_NAME = 6 + PRICE = 7 + FORMATTED_PRICE = 8 + SALE_PRICE = 9 + FORMATTED_SALE_PRICE = 10 + IMAGE_URL = 11 + CATEGORY = 12 + CONTEXTUAL_KEYWORDS = 13 + DESTINATION_ADDRESS = 14 + FINAL_URL = 15 + FINAL_MOBILE_URLS = 16 + TRACKING_URL = 17 + ANDROID_APP_LINK = 18 + SIMILAR_DESTINATION_IDS = 19 + IOS_APP_LINK = 20 + IOS_APP_STORE_ID = 21 + + +class SitelinkPlaceholderFieldEnum(object): + class SitelinkPlaceholderField(enum.IntEnum): + """ + Possible values for Sitelink placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + TEXT (int): Data Type: STRING. The link text for your sitelink. + LINE_1 (int): Data Type: STRING. First line of the sitelink description. + LINE_2 (int): Data Type: STRING. Second line of the sitelink description. + FINAL_URLS (int): Data Type: URL_LIST. Final URLs for the sitelink when using Upgraded + URLs. + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final Mobile URLs for the sitelink when using + Upgraded URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the sitelink when using Upgraded + URLs. + FINAL_URL_SUFFIX (int): Data Type: STRING. Final URL suffix for sitelink when using parallel + tracking. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + TEXT = 2 + LINE_1 = 3 + LINE_2 = 4 + FINAL_URLS = 5 + FINAL_MOBILE_URLS = 6 + TRACKING_URL = 7 + FINAL_URL_SUFFIX = 8 + + class ConversionActionCategoryEnum(object): class ConversionActionCategory(enum.IntEnum): """ @@ -1075,6 +2272,41 @@ class ConversionActionCategory(enum.IntEnum): DOWNLOAD = 7 +class TargetingDimensionEnum(object): + class TargetingDimension(enum.IntEnum): + """ + Enum describing possible targeting dimensions. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + KEYWORD (int): Keyword criteria, e.g. 'mars cruise'. KEYWORD may be used as a custom bid + dimension. Keywords are always a targeting dimension, so may not be set + as a target \"ALL\" dimension with TargetRestriction. + AUDIENCE (int): Audience criteria, which include user list, user interest, custom + affinity, and custom in market. + TOPIC (int): Topic criteria for targeting categories of content, e.g. + 'category::Animals>Pets' Used for Display and Video targeting. + GENDER (int): Criteria for targeting gender. + AGE_RANGE (int): Criteria for targeting age ranges. + PLACEMENT (int): Placement criteria, which include websites like 'www.flowers4sale.com', + as well as mobile applications, mobile app categories, YouTube videos, + and YouTube channels. + PARENTAL_STATUS (int): Criteria for parental status targeting. + INCOME_RANGE (int): Criteria for income range targeting. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + KEYWORD = 2 + AUDIENCE = 3 + TOPIC = 4 + GENDER = 5 + AGE_RANGE = 6 + PLACEMENT = 7 + PARENTAL_STATUS = 8 + INCOME_RANGE = 9 + + class PolicyApprovalStatusEnum(object): class PolicyApprovalStatus(enum.IntEnum): """ @@ -1173,6 +2405,21 @@ class BudgetDeliveryMethod(enum.IntEnum): ACCELERATED = 3 +class CalloutPlaceholderFieldEnum(object): + class CalloutPlaceholderField(enum.IntEnum): + """ + Possible values for Callout placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + CALLOUT_TEXT (int): Data Type: STRING. Callout text. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + CALLOUT_TEXT = 2 + + class RecommendationTypeEnum(object): class RecommendationType(enum.IntEnum): """ @@ -1236,18 +2483,59 @@ class GoogleAdsFieldCategory(enum.IntEnum): class SharedSetStatusEnum(object): class SharedSetStatus(enum.IntEnum): """ - Enum listing the possible shared set statuses. + Enum listing the possible shared set statuses. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ENABLED (int): The shared set is enabled. + REMOVED (int): The shared set is removed and can no longer be used. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ENABLED = 2 + REMOVED = 3 + + +class FeedOriginEnum(object): + class FeedOrigin(enum.IntEnum): + """ + Possible values for a feed origin. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + USER (int): The FeedAttributes for this Feed are managed by the + user. Users can add FeedAttributes to this Feed. + GOOGLE (int): The FeedAttributes for an GOOGLE Feed are created by Google. A feed of + this type is maintained by Google and will have the correct attributes + for the placeholder type of the feed. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + USER = 2 + GOOGLE = 3 + + +class AdCustomizerPlaceholderFieldEnum(object): + class AdCustomizerPlaceholderField(enum.IntEnum): + """ + Possible values for Ad Customizers placeholder fields. Attributes: UNSPECIFIED (int): Not specified. UNKNOWN (int): Used for return value only. Represents value unknown in this version. - ENABLED (int): The shared set is enabled. - REMOVED (int): The shared set is removed and can no longer be used. + INTEGER (int): Data Type: INT64. Integer value to be inserted. + PRICE (int): Data Type: STRING. Price value to be inserted. + DATE (int): Data Type: DATE_TIME. Date value to be inserted. + STRING (int): Data Type: STRING. String value to be inserted. """ UNSPECIFIED = 0 UNKNOWN = 1 - ENABLED = 2 - REMOVED = 3 + INTEGER = 2 + PRICE = 3 + DATE = 4 + STRING = 5 class AccountBudgetProposalTypeEnum(object): @@ -1271,6 +2559,162 @@ class AccountBudgetProposalType(enum.IntEnum): REMOVE = 5 +class PricePlaceholderFieldEnum(object): + class PricePlaceholderField(enum.IntEnum): + """ + Possible values for Price placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + TYPE (int): Data Type: STRING. The type of your price feed. Must match one of the + predefined price feed type exactly. + PRICE_QUALIFIER (int): Data Type: STRING. The qualifier of each price. Must match one of the + predefined price qualifiers exactly. + TRACKING_TEMPLATE (int): Data Type: URL. Tracking template for the price feed when using Upgraded + URLs. + LANGUAGE (int): Data Type: STRING. Language of the price feed. Must match one of the + available available locale codes exactly. + FINAL_URL_SUFFIX (int): Data Type: STRING. Final URL suffix for the price feed when using + parallel tracking. + ITEM_1_HEADER (int): Data Type: STRING. The header of item 1 of the table. + ITEM_1_DESCRIPTION (int): Data Type: STRING. The description of item 1 of the table. + ITEM_1_PRICE (int): Data Type: PRICE. The price (money with currency) of item 1 of the table, + e.g., 30 USD. The currency must match one of the available currencies. + ITEM_1_UNIT (int): Data Type: STRING. The price unit of item 1 of the table. Must match one + of the predefined price units. + ITEM_1_FINAL_URLS (int): Data Type: URL_LIST. The final URLs of item 1 of the table when using + Upgraded URLs. + ITEM_1_FINAL_MOBILE_URLS (int): Data Type: URL_LIST. The final mobile URLs of item 1 of the table when + using Upgraded URLs. + ITEM_2_HEADER (int): Data Type: STRING. The header of item 2 of the table. + ITEM_2_DESCRIPTION (int): Data Type: STRING. The description of item 2 of the table. + ITEM_2_PRICE (int): Data Type: PRICE. The price (money with currency) of item 2 of the table, + e.g., 30 USD. The currency must match one of the available currencies. + ITEM_2_UNIT (int): Data Type: STRING. The price unit of item 2 of the table. Must match one + of the predefined price units. + ITEM_2_FINAL_URLS (int): Data Type: URL_LIST. The final URLs of item 2 of the table when using + Upgraded URLs. + ITEM_2_FINAL_MOBILE_URLS (int): Data Type: URL_LIST. The final mobile URLs of item 2 of the table when + using Upgraded URLs. + ITEM_3_HEADER (int): Data Type: STRING. The header of item 3 of the table. + ITEM_3_DESCRIPTION (int): Data Type: STRING. The description of item 3 of the table. + ITEM_3_PRICE (int): Data Type: PRICE. The price (money with currency) of item 3 of the table, + e.g., 30 USD. The currency must match one of the available currencies. + ITEM_3_UNIT (int): Data Type: STRING. The price unit of item 3 of the table. Must match one + of the predefined price units. + ITEM_3_FINAL_URLS (int): Data Type: URL_LIST. The final URLs of item 3 of the table when using + Upgraded URLs. + ITEM_3_FINAL_MOBILE_URLS (int): Data Type: URL_LIST. The final mobile URLs of item 3 of the table when + using Upgraded URLs. + ITEM_4_HEADER (int): Data Type: STRING. The header of item 4 of the table. + ITEM_4_DESCRIPTION (int): Data Type: STRING. The description of item 4 of the table. + ITEM_4_PRICE (int): Data Type: PRICE. The price (money with currency) of item 4 of the table, + e.g., 30 USD. The currency must match one of the available currencies. + ITEM_4_UNIT (int): Data Type: STRING. The price unit of item 4 of the table. Must match one + of the predefined price units. + ITEM_4_FINAL_URLS (int): Data Type: URL_LIST. The final URLs of item 4 of the table when using + Upgraded URLs. + ITEM_4_FINAL_MOBILE_URLS (int): Data Type: URL_LIST. The final mobile URLs of item 4 of the table when + using Upgraded URLs. + ITEM_5_HEADER (int): Data Type: STRING. The header of item 5 of the table. + ITEM_5_DESCRIPTION (int): Data Type: STRING. The description of item 5 of the table. + ITEM_5_PRICE (int): Data Type: PRICE. The price (money with currency) of item 5 of the table, + e.g., 30 USD. The currency must match one of the available currencies. + ITEM_5_UNIT (int): Data Type: STRING. The price unit of item 5 of the table. Must match one + of the predefined price units. + ITEM_5_FINAL_URLS (int): Data Type: URL_LIST. The final URLs of item 5 of the table when using + Upgraded URLs. + ITEM_5_FINAL_MOBILE_URLS (int): Data Type: URL_LIST. The final mobile URLs of item 5 of the table when + using Upgraded URLs. + ITEM_6_HEADER (int): Data Type: STRING. The header of item 6 of the table. + ITEM_6_DESCRIPTION (int): Data Type: STRING. The description of item 6 of the table. + ITEM_6_PRICE (int): Data Type: PRICE. The price (money with currency) of item 6 of the table, + e.g., 30 USD. The currency must match one of the available currencies. + ITEM_6_UNIT (int): Data Type: STRING. The price unit of item 6 of the table. Must match one + of the predefined price units. + ITEM_6_FINAL_URLS (int): Data Type: URL_LIST. The final URLs of item 6 of the table when using + Upgraded URLs. + ITEM_6_FINAL_MOBILE_URLS (int): Data Type: URL_LIST. The final mobile URLs of item 6 of the table when + using Upgraded URLs. + ITEM_7_HEADER (int): Data Type: STRING. The header of item 7 of the table. + ITEM_7_DESCRIPTION (int): Data Type: STRING. The description of item 7 of the table. + ITEM_7_PRICE (int): Data Type: PRICE. The price (money with currency) of item 7 of the table, + e.g., 30 USD. The currency must match one of the available currencies. + ITEM_7_UNIT (int): Data Type: STRING. The price unit of item 7 of the table. Must match one + of the predefined price units. + ITEM_7_FINAL_URLS (int): Data Type: URL_LIST. The final URLs of item 7 of the table when using + Upgraded URLs. + ITEM_7_FINAL_MOBILE_URLS (int): Data Type: URL_LIST. The final mobile URLs of item 7 of the table when + using Upgraded URLs. + ITEM_8_HEADER (int): Data Type: STRING. The header of item 8 of the table. + ITEM_8_DESCRIPTION (int): Data Type: STRING. The description of item 8 of the table. + ITEM_8_PRICE (int): Data Type: PRICE. The price (money with currency) of item 8 of the table, + e.g., 30 USD. The currency must match one of the available currencies. + ITEM_8_UNIT (int): Data Type: STRING. The price unit of item 8 of the table. Must match one + of the predefined price units. + ITEM_8_FINAL_URLS (int): Data Type: URL_LIST. The final URLs of item 8 of the table when using + Upgraded URLs. + ITEM_8_FINAL_MOBILE_URLS (int): Data Type: URL_LIST. The final mobile URLs of item 8 of the table when + using Upgraded URLs. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + TYPE = 2 + PRICE_QUALIFIER = 3 + TRACKING_TEMPLATE = 4 + LANGUAGE = 5 + FINAL_URL_SUFFIX = 6 + ITEM_1_HEADER = 100 + ITEM_1_DESCRIPTION = 101 + ITEM_1_PRICE = 102 + ITEM_1_UNIT = 103 + ITEM_1_FINAL_URLS = 104 + ITEM_1_FINAL_MOBILE_URLS = 105 + ITEM_2_HEADER = 200 + ITEM_2_DESCRIPTION = 201 + ITEM_2_PRICE = 202 + ITEM_2_UNIT = 203 + ITEM_2_FINAL_URLS = 204 + ITEM_2_FINAL_MOBILE_URLS = 205 + ITEM_3_HEADER = 300 + ITEM_3_DESCRIPTION = 301 + ITEM_3_PRICE = 302 + ITEM_3_UNIT = 303 + ITEM_3_FINAL_URLS = 304 + ITEM_3_FINAL_MOBILE_URLS = 305 + ITEM_4_HEADER = 400 + ITEM_4_DESCRIPTION = 401 + ITEM_4_PRICE = 402 + ITEM_4_UNIT = 403 + ITEM_4_FINAL_URLS = 404 + ITEM_4_FINAL_MOBILE_URLS = 405 + ITEM_5_HEADER = 500 + ITEM_5_DESCRIPTION = 501 + ITEM_5_PRICE = 502 + ITEM_5_UNIT = 503 + ITEM_5_FINAL_URLS = 504 + ITEM_5_FINAL_MOBILE_URLS = 505 + ITEM_6_HEADER = 600 + ITEM_6_DESCRIPTION = 601 + ITEM_6_PRICE = 602 + ITEM_6_UNIT = 603 + ITEM_6_FINAL_URLS = 604 + ITEM_6_FINAL_MOBILE_URLS = 605 + ITEM_7_HEADER = 700 + ITEM_7_DESCRIPTION = 701 + ITEM_7_PRICE = 702 + ITEM_7_UNIT = 703 + ITEM_7_FINAL_URLS = 704 + ITEM_7_FINAL_MOBILE_URLS = 705 + ITEM_8_HEADER = 800 + ITEM_8_DESCRIPTION = 801 + ITEM_8_PRICE = 802 + ITEM_8_UNIT = 803 + ITEM_8_FINAL_URLS = 804 + ITEM_8_FINAL_MOBILE_URLS = 805 + + class ConversionActionStatusEnum(object): class ConversionActionStatus(enum.IntEnum): """ @@ -1291,6 +2735,23 @@ class ConversionActionStatus(enum.IntEnum): HIDDEN = 4 +class UserListMembershipStatusEnum(object): + class UserListMembershipStatus(enum.IntEnum): + """ + Enum containing possible user list membership statuses. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + OPEN (int): Open status - List is accruing members and can be targeted to. + CLOSED (int): Closed status - No new members being added. Cannot be used for targeting. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + OPEN = 2 + CLOSED = 3 + + class BillingSetupStatusEnum(object): class BillingSetupStatus(enum.IntEnum): """ @@ -1351,8 +2812,15 @@ class CriterionType(enum.IntEnum): PARENTAL_STATUS (int): Parental status. YOUTUBE_VIDEO (int): YouTube Video. YOUTUBE_CHANNEL (int): YouTube Channel. + USER_LIST (int): User list. PROXIMITY (int): Proximity. - TOPIC (int): A topic target on the content network (e.g. \"Pets & Animals\"). + TOPIC (int): A topic target on the display network (e.g. \"Pets & Animals\"). + LISTING_SCOPE (int): Listing scope to target. + LANGUAGE (int): Language. + IP_BLOCK (int): IpBlock. + CONTENT_LABEL (int): Content Label for category exclusion. + CARRIER (int): Carrier. + USER_INTEREST (int): A category the user is interested in. """ UNSPECIFIED = 0 UNKNOWN = 1 @@ -1368,8 +2836,15 @@ class CriterionType(enum.IntEnum): PARENTAL_STATUS = 13 YOUTUBE_VIDEO = 14 YOUTUBE_CHANNEL = 15 + USER_LIST = 16 PROXIMITY = 17 TOPIC = 18 + LISTING_SCOPE = 19 + LANGUAGE = 20 + IP_BLOCK = 21 + CONTENT_LABEL = 22 + CARRIER = 23 + USER_INTEREST = 24 class PolicyReviewStatusEnum(object): @@ -1413,7 +2888,9 @@ class AdType(enum.IntEnum): HOTEL_AD (int): The ad is a hotel ad. SHOPPING_SMART_AD (int): The ad is a Smart Shopping ad. SHOPPING_PRODUCT_AD (int): The ad is a standard Shopping ad. - VIDEO_OUTSTREAM (int): Video outstream ad. + VIDEO_AD (int): The ad is a video ad. + GMAIL_AD (int): This ad is a Gmail ad. + IMAGE_AD (int): This ad is an Image ad. """ UNSPECIFIED = 0 UNKNOWN = 1 @@ -1426,7 +2903,9 @@ class AdType(enum.IntEnum): HOTEL_AD = 8 SHOPPING_SMART_AD = 9 SHOPPING_PRODUCT_AD = 10 - VIDEO_OUTSTREAM = 11 + VIDEO_AD = 12 + GMAIL_AD = 13 + IMAGE_AD = 14 class AdGroupTypeEnum(object): @@ -1507,6 +2986,100 @@ class ManagerLinkStatus(enum.IntEnum): CANCELED = 6 +class UserInterestTaxonomyTypeEnum(object): + class UserInterestTaxonomyType(enum.IntEnum): + """ + Enum containing the possible UserInterestTaxonomyTypes. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + AFFINITY (int): The affinity for this user interest. + IN_MARKET (int): The market for this user interest. + MOBILE_APP_INSTALL_USER (int): Users known to have installed applications in the specified categories. + VERTICAL_GEO (int): The geographical location of the interest-based vertical. + NEW_SMART_PHONE_USER (int): User interest criteria for new smart phone users. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + AFFINITY = 2 + IN_MARKET = 3 + MOBILE_APP_INSTALL_USER = 4 + VERTICAL_GEO = 5 + NEW_SMART_PHONE_USER = 6 + + +class HotelPlaceholderFieldEnum(object): + class HotelPlaceholderField(enum.IntEnum): + """ + Possible values for Hotel placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + PROPERTY_ID (int): Data Type: STRING. Required. Unique ID. + PROPERTY_NAME (int): Data Type: STRING. Required. Main headline with property name to be shown + in dynamic ad. + DESTINATION_NAME (int): Data Type: STRING. Name of destination to be shown in dynamic ad. + DESCRIPTION (int): Data Type: STRING. Description of destination to be shown in dynamic ad. + ADDRESS (int): Data Type: STRING. Complete property address, including postal code. + PRICE (int): Data Type: STRING. Price to be shown in the ad. + Example: \"100.00 USD\" + FORMATTED_PRICE (int): Data Type: STRING. Formatted price to be shown in the ad. + Example: \"Starting at $100.00 USD\", \"$80 - $100\" + SALE_PRICE (int): Data Type: STRING. Sale price to be shown in the ad. + Example: \"80.00 USD\" + FORMATTED_SALE_PRICE (int): Data Type: STRING. Formatted sale price to be shown in the ad. + Example: \"On sale for $80.00\", \"$60 - $80\" + IMAGE_URL (int): Data Type: URL. Image to be displayed in the ad. + CATEGORY (int): Data Type: STRING. Category of property used to group like items together + for recommendation engine. + STAR_RATING (int): Data Type: INT64. Star rating (1 to 5) used to group like items + together for recommendation engine. + CONTEXTUAL_KEYWORDS (int): Data Type: STRING_LIST. Keywords used for product retrieval. + FINAL_URLS (int): Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded + URLs. User will be redirected to these URLs when they click on an ad, or + when they click on a specific flight for ads that show multiple + flights. + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the ad when using Upgraded URLs. + ANDROID_APP_LINK (int): Data Type: STRING. Android app link. Must be formatted as: + android-app://{package_id}/{scheme}/{host_path}. + The components are defined as follows: + package_id: app ID as specified in Google Play. + scheme: the scheme to pass to the application. Can be HTTP, or a custom + scheme. + host_path: identifies the specific content within your application. + SIMILAR_PROPERTY_IDS (int): Data Type: STRING_LIST. List of recommended property IDs to show together + with this item. + IOS_APP_LINK (int): Data Type: STRING. iOS app link. + IOS_APP_STORE_ID (int): Data Type: INT64. iOS app store ID. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + PROPERTY_ID = 2 + PROPERTY_NAME = 3 + DESTINATION_NAME = 4 + DESCRIPTION = 5 + ADDRESS = 6 + PRICE = 7 + FORMATTED_PRICE = 8 + SALE_PRICE = 9 + FORMATTED_SALE_PRICE = 10 + IMAGE_URL = 11 + CATEGORY = 12 + STAR_RATING = 13 + CONTEXTUAL_KEYWORDS = 14 + FINAL_URLS = 15 + FINAL_MOBILE_URLS = 16 + TRACKING_URL = 17 + ANDROID_APP_LINK = 18 + SIMILAR_PROPERTY_IDS = 19 + IOS_APP_LINK = 20 + IOS_APP_STORE_ID = 21 + + class AdGroupAdRotationModeEnum(object): class AdGroupAdRotationMode(enum.IntEnum): """ @@ -1526,6 +3099,42 @@ class AdGroupAdRotationMode(enum.IntEnum): ROTATE_FOREVER = 3 +class AppPlaceholderFieldEnum(object): + class AppPlaceholderField(enum.IntEnum): + """ + Possible values for App placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + STORE (int): Data Type: INT64. The application store that the target application + belongs to. Valid values are: 1 = Apple iTunes Store; 2 = Google Play + Store. + ID (int): Data Type: STRING. The store-specific ID for the target application. + LINK_TEXT (int): Data Type: STRING. The visible text displayed when the link is rendered + in an ad. + URL (int): Data Type: STRING. The destination URL of the in-app link. + FINAL_URLS (int): Data Type: URL_LIST. Final URLs for the in-app link when using Upgraded + URLs. + FINAL_MOBILE_URLS (int): Data Type: URL_LIST. Final Mobile URLs for the in-app link when using + Upgraded URLs. + TRACKING_URL (int): Data Type: URL. Tracking template for the in-app link when using Upgraded + URLs. + FINAL_URL_SUFFIX (int): Data Type: STRING. Final URL suffix for the in-app link when using + parallel tracking. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + STORE = 2 + ID = 3 + LINK_TEXT = 4 + URL = 5 + FINAL_URLS = 6 + FINAL_MOBILE_URLS = 7 + TRACKING_URL = 8 + FINAL_URL_SUFFIX = 9 + + class SpendingLimitTypeEnum(object): class SpendingLimitType(enum.IntEnum): """ @@ -1569,6 +3178,28 @@ class DataDrivenModelStatus(enum.IntEnum): NEVER_GENERATED = 5 +class SearchTermTargetingStatusEnum(object): + class SearchTermTargetingStatus(enum.IntEnum): + """ + Indicates whether the search term is one of your targeted or excluded + keywords. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ADDED (int): Search term is added to targeted keywords. + EXCLUDED (int): Search term matches a negative keyword. + ADDED_EXCLUDED (int): Search term has been both added and excluded. + NONE (int): Search term is neither targeted nor excluded. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ADDED = 2 + EXCLUDED = 3 + ADDED_EXCLUDED = 4 + NONE = 5 + + class ChangeStatusOperationEnum(object): class ChangeStatusOperation(enum.IntEnum): """ @@ -1589,33 +3220,69 @@ class ChangeStatusOperation(enum.IntEnum): REMOVED = 4 -class AdvertisingChannelSubTypeEnum(object): - class AdvertisingChannelSubType(enum.IntEnum): +class UserListAccessStatusEnum(object): + class UserListAccessStatus(enum.IntEnum): """ - Enum describing the different channel subtypes. + Enum containing possible user list access statuses. Attributes: UNSPECIFIED (int): Not specified. - UNKNOWN (int): Used as a return value only. Represents value unknown in this version. - SEARCH_MOBILE_APP (int): Mobile app campaigns for Search. - DISPLAY_MOBILE_APP (int): Mobile app campaigns for Display. - SEARCH_EXPRESS (int): AdWords express campaigns for search. - DISPLAY_EXPRESS (int): AdWords Express campaigns for display. - SHOPPING_SMART_ADS (int): Smart Shopping campaigns. - DISPLAY_GMAIL_AD (int): Gmail Ad campaigns. - DISPLAY_SMART_CAMPAIGN (int): Smart display campaigns. - VIDEO_OUTSTREAM (int): Video Outstream campaigns. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ENABLED (int): The access is enabled. + DISABLED (int): The access is disabled. """ UNSPECIFIED = 0 UNKNOWN = 1 - SEARCH_MOBILE_APP = 2 - DISPLAY_MOBILE_APP = 3 - SEARCH_EXPRESS = 4 - DISPLAY_EXPRESS = 5 - SHOPPING_SMART_ADS = 6 - DISPLAY_GMAIL_AD = 7 - DISPLAY_SMART_CAMPAIGN = 8 - VIDEO_OUTSTREAM = 9 + ENABLED = 2 + DISABLED = 3 + + +class MessagePlaceholderFieldEnum(object): + class MessagePlaceholderField(enum.IntEnum): + """ + Possible values for Message placeholder fields. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + BUSINESS_NAME (int): Data Type: STRING. The name of your business. + COUNTRY_CODE (int): Data Type: STRING. Country code of phone number. + PHONE_NUMBER (int): Data Type: STRING. A phone number that's capable of sending and receiving + text messages. + MESSAGE_EXTENSION_TEXT (int): Data Type: STRING. The text that will go in your click-to-message ad. + MESSAGE_TEXT (int): Data Type: STRING. The message text automatically shows in people's + messaging apps when they tap to send you a message. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + BUSINESS_NAME = 2 + COUNTRY_CODE = 3 + PHONE_NUMBER = 4 + MESSAGE_EXTENSION_TEXT = 5 + MESSAGE_TEXT = 6 + + +class AccessReasonEnum(object): + class AccessReason(enum.IntEnum): + """ + Enum describing possible access reasons. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + OWNED (int): The entity is owned by the user. + SHARED (int): The entity is shared to the user. + LICENSED (int): The entity is licensed to the user. + SUBSCRIBED (int): The user subscribed to the entity. + AFFILIATED (int): The entity is accessible to the user. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + OWNED = 2 + SHARED = 3 + LICENSED = 4 + SUBSCRIBED = 5 + AFFILIATED = 6 class AdNetworkTypeEnum(object): @@ -1680,30 +3347,6 @@ class AccountBudgetStatus(enum.IntEnum): CANCELLED = 4 -class AdvertisingChannelTypeEnum(object): - class AdvertisingChannelType(enum.IntEnum): - """ - Enum describing the various advertising channel types. - - Attributes: - UNSPECIFIED (int): Not specified. - UNKNOWN (int): Used for return value only. Represents value unknown in this version. - SEARCH (int): Search Network. Includes display bundled, and Search+ campaigns. - DISPLAY (int): Google Display Network only. - SHOPPING (int): Shopping campaigns serve on the shopping property - and on google.com search results. - HOTEL (int): Hotel Ads campaigns. - VIDEO (int): Video campaigns. - """ - UNSPECIFIED = 0 - UNKNOWN = 1 - SEARCH = 2 - DISPLAY = 3 - SHOPPING = 4 - HOTEL = 5 - VIDEO = 6 - - class MediaTypeEnum(object): class MediaType(enum.IntEnum): """ @@ -1752,6 +3395,45 @@ class AdGroupAdStatus(enum.IntEnum): REMOVED = 4 +class FeedAttributeTypeEnum(object): + class FeedAttributeType(enum.IntEnum): + """ + Possible data types for a feed attribute. + + Attributes: + UNSPECIFIED (int): Not specified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + INT64 (int): Int64. + DOUBLE (int): Double. + STRING (int): String. + BOOLEAN (int): Boolean. + URL (int): Url. + DATE_TIME (int): Datetime. + INT64_LIST (int): Int64 list. + DOUBLE_LIST (int): Double (8 bytes) list. + STRING_LIST (int): String list. + BOOLEAN_LIST (int): Boolean list. + URL_LIST (int): Url list. + DATE_TIME_LIST (int): Datetime list. + PRICE (int): Price. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + INT64 = 2 + DOUBLE = 3 + STRING = 4 + BOOLEAN = 5 + URL = 6 + DATE_TIME = 7 + INT64_LIST = 8 + DOUBLE_LIST = 9 + STRING_LIST = 10 + BOOLEAN_LIST = 11 + URL_LIST = 12 + DATE_TIME_LIST = 13 + PRICE = 14 + + class AdGroupBidModifierErrorEnum(object): class AdGroupBidModifierError(enum.IntEnum): """ @@ -1842,6 +3524,56 @@ class AdxError(enum.IntEnum): UNSUPPORTED_FEATURE = 2 +class FeedMappingErrorEnum(object): + class FeedMappingError(enum.IntEnum): + """ + Enum describing possible feed item errors. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + INVALID_PLACEHOLDER_FIELD (int): The given placeholder field does not exist. + INVALID_CRITERION_FIELD (int): The given criterion field does not exist. + INVALID_PLACEHOLDER_TYPE (int): The given placeholder type does not exist. + INVALID_CRITERION_TYPE (int): The given criterion type does not exist. + NO_ATTRIBUTE_FIELD_MAPPINGS (int): A feed mapping must contain at least one attribute field mapping. + FEED_ATTRIBUTE_TYPE_MISMATCH (int): The type of the feed attribute referenced in the attribute field mapping + must match the type of the placeholder field. + CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED (int): A feed mapping for a system generated feed cannot be operated on. + MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE (int): Only one feed mapping for a placeholder type is allowed per feed or + customer (depending on the placeholder type). + MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE (int): Only one feed mapping for a criterion type is allowed per customer. + MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD (int): Only one feed attribute mapping for a placeholder field is allowed + (depending on the placeholder type). + MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD (int): Only one feed attribute mapping for a criterion field is allowed + (depending on the criterion type). + UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS (int): This feed mapping may not contain any explicit attribute field mappings. + LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS (int): Location placeholder feed mappings can only be created for Places feeds. + CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED (int): Mappings for typed feeds cannot be modified. + INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED (int): The given placeholder type can only be mapped to system generated feeds. + INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE (int): The given placeholder type cannot be mapped to a system generated feed + with the given type. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + INVALID_PLACEHOLDER_FIELD = 2 + INVALID_CRITERION_FIELD = 3 + INVALID_PLACEHOLDER_TYPE = 4 + INVALID_CRITERION_TYPE = 5 + NO_ATTRIBUTE_FIELD_MAPPINGS = 7 + FEED_ATTRIBUTE_TYPE_MISMATCH = 8 + CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED = 9 + MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE = 10 + MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE = 11 + MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD = 12 + MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD = 13 + UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS = 14 + LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS = 15 + CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED = 16 + INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED = 17 + INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE = 18 + + class ListOperationErrorEnum(object): class ListOperationError(enum.IntEnum): """ @@ -2090,6 +3822,58 @@ class AdGroupCriterionError(enum.IntEnum): LISTING_GROUP_ADD_MAY_ONLY_USE_TEMP_ID = 47 +class FeedErrorEnum(object): + class FeedError(enum.IntEnum): + """ + Enum describing possible feed errors. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + ATTRIBUTE_NAMES_NOT_UNIQUE (int): The names of the FeedAttributes must be unique. + ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES (int): The attribute list must be an exact copy of the existing list if the + attribute ID's are present. + CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED (int): Cannot specify USER origin for a system generated feed. + CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED (int): Cannot specify GOOGLE origin for a non-system generated feed. + CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED (int): Cannot specify feed attributes for system feed. + CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE (int): Cannot update FeedAttributes on feed with origin GOOGLE. + FEED_REMOVED (int): The given ID refers to a removed Feed. Removed Feeds are immutable. + INVALID_ORIGIN_VALUE (int): The origin of the feed is not valid for the client. + FEED_ORIGIN_IS_NOT_USER (int): A user can only create and modify feeds with USER origin. + INVALID_AUTH_TOKEN_FOR_EMAIL (int): Invalid auth token for the given email. + INVALID_EMAIL (int): Invalid email specified. + DUPLICATE_FEED_NAME (int): Feed name matches that of another active Feed. + INVALID_FEED_NAME (int): Name of feed is not allowed. + MISSING_OAUTH_INFO (int): Missing OAuthInfo. + NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY (int): New FeedAttributes must not affect the unique key. + TOO_MANY_ATTRIBUTES (int): Too many FeedAttributes for a Feed. + INVALID_BUSINESS_ACCOUNT (int): The business account is not valid. + BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT (int): Business account cannot access Google My Business account. + INVALID_AFFILIATE_CHAIN_ID (int): Invalid chain ID provided for affiliate location feed. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ATTRIBUTE_NAMES_NOT_UNIQUE = 2 + ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES = 3 + CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED = 4 + CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED = 5 + CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED = 6 + CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE = 7 + FEED_REMOVED = 8 + INVALID_ORIGIN_VALUE = 9 + FEED_ORIGIN_IS_NOT_USER = 10 + INVALID_AUTH_TOKEN_FOR_EMAIL = 11 + INVALID_EMAIL = 12 + DUPLICATE_FEED_NAME = 13 + INVALID_FEED_NAME = 14 + MISSING_OAUTH_INFO = 15 + NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY = 16 + TOO_MANY_ATTRIBUTES = 17 + INVALID_BUSINESS_ACCOUNT = 18 + BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT = 19 + INVALID_AFFILIATE_CHAIN_ID = 20 + + class CampaignSharedSetErrorEnum(object): class CampaignSharedSetError(enum.IntEnum): """ @@ -2202,6 +3986,78 @@ class MediaFileError(enum.IntEnum): YOU_TUBE_VIDEO_NOT_FOUND = 24 +class KeywordPlanIdeaErrorEnum(object): + class KeywordPlanIdeaError(enum.IntEnum): + """ + Enum describing possible errors from KeywordPlanIdeaService. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + URL_CRAWL_ERROR (int): Error when crawling the input URL. + INVALID_VALUE (int): The input has an invalid value. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + URL_CRAWL_ERROR = 2 + INVALID_VALUE = 3 + + +class AdGroupFeedErrorEnum(object): + class AdGroupFeedError(enum.IntEnum): + """ + Enum describing possible ad group feed errors. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE (int): An active feed already exists for this ad group and place holder type. + CANNOT_CREATE_FOR_REMOVED_FEED (int): The specified feed is removed. + ADGROUP_FEED_ALREADY_EXISTS (int): The AdGroupFeed already exists. UPDATE operation should be used to modify + the existing AdGroupFeed. + CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED (int): Cannot operate on removed AdGroupFeed. + INVALID_PLACEHOLDER_TYPE (int): Invalid placeholder type. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE (int): Feed mapping for this placeholder type does not exist. + NO_EXISTING_LOCATION_CUSTOMER_FEED (int): Location AdGroupFeeds cannot be created unless there is a location + CustomerFeed for the specified feed. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2 + CANNOT_CREATE_FOR_REMOVED_FEED = 3 + ADGROUP_FEED_ALREADY_EXISTS = 4 + CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED = 5 + INVALID_PLACEHOLDER_TYPE = 6 + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7 + NO_EXISTING_LOCATION_CUSTOMER_FEED = 8 + + +class CampaignFeedErrorEnum(object): + class CampaignFeedError(enum.IntEnum): + """ + Enum describing possible campaign feed errors. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE (int): An active feed already exists for this campaign and placeholder type. + CANNOT_CREATE_FOR_REMOVED_FEED (int): The specified feed is removed. + CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED (int): The CampaignFeed already exists. UPDATE should be used to modify the + existing CampaignFeed. + CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED (int): Cannot update removed campaign feed. + INVALID_PLACEHOLDER_TYPE (int): Invalid placeholder type. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE (int): Feed mapping for this placeholder type does not exist. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2 + CANNOT_CREATE_FOR_REMOVED_FEED = 4 + CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED = 5 + CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED = 6 + INVALID_PLACEHOLDER_TYPE = 7 + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 8 + + class DateErrorEnum(object): class DateError(enum.IntEnum): """ @@ -2212,8 +4068,9 @@ class DateError(enum.IntEnum): UNKNOWN (int): The received error code is not known in this version. INVALID_FIELD_VALUES_IN_DATE (int): Given field values do not correspond to a valid date. INVALID_FIELD_VALUES_IN_DATE_TIME (int): Given field values do not correspond to a valid date time. - INVALID_STRING_DATE (int): The string date's format should be yyyymmdd. - INVALID_STRING_DATE_TIME (int): The string date time's format should be yyyymmdd hhmmss [tz]. + INVALID_STRING_DATE (int): The string date's format should be yyyy-mm-dd. + INVALID_STRING_DATE_TIME_MICROS (int): The string date time's format should be yyyy-mm-dd hh:mm:ss.ssssss. + INVALID_STRING_DATE_TIME_SECONDS (int): The string date time's format should be yyyy-mm-dd hh:mm:ss. EARLIER_THAN_MINIMUM_DATE (int): Date is before allowed minimum. LATER_THAN_MAXIMUM_DATE (int): Date is after allowed maximum. DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE (int): Date range bounds are not in order. @@ -2224,7 +4081,8 @@ class DateError(enum.IntEnum): INVALID_FIELD_VALUES_IN_DATE = 2 INVALID_FIELD_VALUES_IN_DATE_TIME = 3 INVALID_STRING_DATE = 4 - INVALID_STRING_DATE_TIME = 6 + INVALID_STRING_DATE_TIME_MICROS = 6 + INVALID_STRING_DATE_TIME_SECONDS = 11 EARLIER_THAN_MINIMUM_DATE = 7 LATER_THAN_MAXIMUM_DATE = 8 DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE = 9 @@ -2306,6 +4164,98 @@ class StringFormatError(enum.IntEnum): INVALID_FORMAT = 3 +class UserListErrorEnum(object): + class UserListError(enum.IntEnum): + """ + Enum describing possible user list errors. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED (int): Creating and updating external remarketing user lists is not supported. + CONCRETE_TYPE_REQUIRED (int): Concrete type of user list is required. + CONVERSION_TYPE_ID_REQUIRED (int): Creating/updating user list conversion types requires specifying the + conversion type Id. + DUPLICATE_CONVERSION_TYPES (int): Remarketing user list cannot have duplicate conversion types. + INVALID_CONVERSION_TYPE (int): Conversion type is invalid/unknown. + INVALID_DESCRIPTION (int): User list description is empty or invalid. + INVALID_NAME (int): User list name is empty or invalid. + INVALID_TYPE (int): Type of the UserList does not match. + CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND (int): Embedded logical user lists are not allowed. + INVALID_USER_LIST_LOGICAL_RULE_OPERAND (int): User list rule operand is invalid. + NAME_ALREADY_USED (int): Name is already being used for another user list for the account. + NEW_CONVERSION_TYPE_NAME_REQUIRED (int): Name is required when creating a new conversion type. + CONVERSION_TYPE_NAME_ALREADY_USED (int): The given conversion type name has been used. + OWNERSHIP_REQUIRED_FOR_SET (int): Only an owner account may edit a user list. + USER_LIST_MUTATE_NOT_SUPPORTED (int): The user list of the type is not mutable. + INVALID_RULE (int): Rule is invalid. + INVALID_DATE_RANGE (int): The specified date range is empty. + CAN_NOT_MUTATE_SENSITIVE_USERLIST (int): A UserList which is privacy sensitive or legal rejected cannot be mutated + by external users. + MAX_NUM_RULEBASED_USERLISTS (int): Maximum number of rulebased user lists a customer can have. + CANNOT_MODIFY_BILLABLE_RECORD_COUNT (int): BasicUserList's billable record field cannot be modified once it is set. + APP_ID_NOT_SET (int): crm_based_user_list.app_id field must be set when upload_key_type is + MOBILE_ADVERTISING_ID. + USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST (int): Name of the user list is reserved for system generated lists and cannot + be used. + ADVERTISER_NOT_WHITELISTED_FOR_USING_UPLOADED_DATA (int): Advertiser needs to be whitelisted to use remarketing lists created from + advertiser uploaded data (e.g., Customer Match lists). + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED = 2 + CONCRETE_TYPE_REQUIRED = 3 + CONVERSION_TYPE_ID_REQUIRED = 4 + DUPLICATE_CONVERSION_TYPES = 5 + INVALID_CONVERSION_TYPE = 6 + INVALID_DESCRIPTION = 7 + INVALID_NAME = 8 + INVALID_TYPE = 9 + CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND = 10 + INVALID_USER_LIST_LOGICAL_RULE_OPERAND = 11 + NAME_ALREADY_USED = 12 + NEW_CONVERSION_TYPE_NAME_REQUIRED = 13 + CONVERSION_TYPE_NAME_ALREADY_USED = 14 + OWNERSHIP_REQUIRED_FOR_SET = 15 + USER_LIST_MUTATE_NOT_SUPPORTED = 16 + INVALID_RULE = 17 + INVALID_DATE_RANGE = 27 + CAN_NOT_MUTATE_SENSITIVE_USERLIST = 28 + MAX_NUM_RULEBASED_USERLISTS = 29 + CANNOT_MODIFY_BILLABLE_RECORD_COUNT = 30 + APP_ID_NOT_SET = 31 + USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST = 32 + ADVERTISER_NOT_WHITELISTED_FOR_USING_UPLOADED_DATA = 33 + + +class CustomerFeedErrorEnum(object): + class CustomerFeedError(enum.IntEnum): + """ + Enum describing possible customer feed errors. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE (int): An active feed already exists for this customer and place holder type. + CANNOT_CREATE_FOR_REMOVED_FEED (int): The specified feed is removed. + CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED (int): The CustomerFeed already exists. Update should be used to modify the + existing CustomerFeed. + CANNOT_MODIFY_REMOVED_CUSTOMER_FEED (int): Cannot update removed customer feed. + INVALID_PLACEHOLDER_TYPE (int): Invalid placeholder type. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE (int): Feed mapping for this placeholder type does not exist. + PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED (int): Placeholder not allowed at the account level. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2 + CANNOT_CREATE_FOR_REMOVED_FEED = 3 + CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED = 4 + CANNOT_MODIFY_REMOVED_CUSTOMER_FEED = 5 + INVALID_PLACEHOLDER_TYPE = 6 + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7 + PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED = 8 + + class AdCustomizerErrorEnum(object): class AdCustomizerError(enum.IntEnum): """ @@ -2344,6 +4294,20 @@ class ChangeStatusError(enum.IntEnum): START_DATE_TOO_OLD = 3 +class KeywordPlanNegativeKeywordErrorEnum(object): + class KeywordPlanNegativeKeywordError(enum.IntEnum): + """ + Enum describing possible errors from applying a keyword plan negative + keyword. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + + class FieldErrorEnum(object): class FieldError(enum.IntEnum): """ @@ -2520,6 +4484,7 @@ class UrlFieldError(enum.IntEnum): REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG (int): The custom parameter contains nested occurrences of the same conditional tag (i.e. {ifmobile:{ifmobile:x}}). MISSING_PROTOCOL (int): The protocol (http:// or https://) is missing. + INVALID_PROTOCOL (int): Unsupported protocol in URL. Only http and https are supported. INVALID_URL (int): The url is invalid. DESTINATION_URL_DEPRECATED (int): Destination Url is deprecated. INVALID_TAG_IN_URL (int): The url contains invalid tag. @@ -2530,6 +4495,11 @@ class UrlFieldError(enum.IntEnum): FINAL_URL_SUFFIX_MALFORMED (int): The final url suffix cannot begin with '?' or '&' characters and must be a valid query string. INVALID_TAG_IN_FINAL_URL_SUFFIX (int): The final url suffix cannot contain {lpurl} related or {ignore} tags. + INVALID_TOP_LEVEL_DOMAIN (int): The top level domain is invalid, e.g, not a public top level domain + listed in publicsuffix.org. + MALFORMED_TOP_LEVEL_DOMAIN (int): Malformed top level domain in URL. + MALFORMED_URL (int): Malformed URL. + MISSING_HOST (int): No host found in URL. """ UNSPECIFIED = 0 UNKNOWN = 1 @@ -2571,6 +4541,7 @@ class UrlFieldError(enum.IntEnum): INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE = 41 REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG = 42 MISSING_PROTOCOL = 43 + INVALID_PROTOCOL = 52 INVALID_URL = 44 DESTINATION_URL_DEPRECATED = 45 INVALID_TAG_IN_URL = 46 @@ -2579,6 +4550,10 @@ class UrlFieldError(enum.IntEnum): INVALID_URL_ID = 49 FINAL_URL_SUFFIX_MALFORMED = 50 INVALID_TAG_IN_FINAL_URL_SUFFIX = 51 + INVALID_TOP_LEVEL_DOMAIN = 53 + MALFORMED_TOP_LEVEL_DOMAIN = 54 + MALFORMED_URL = 55 + MISSING_HOST = 56 class PolicyFindingErrorEnum(object): @@ -2614,6 +4589,48 @@ class ResourceAccessDeniedError(enum.IntEnum): WRITE_ACCESS_DENIED = 3 +class KeywordPlanErrorEnum(object): + class KeywordPlanError(enum.IntEnum): + """ + Enum describing possible errors from applying a keyword plan. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + BID_MULTIPLIER_OUT_OF_RANGE (int): The plan's bid multiplier value is outside the valid range. + BID_TOO_HIGH (int): The plan's bid value is too high. + BID_TOO_LOW (int): The plan's bid value is too low. + BID_TOO_MANY_FRACTIONAL_DIGITS (int): The plan's cpc bid is not a multiple of the minimum billable unit. + DAILY_BUDGET_TOO_LOW (int): The plan's daily budget value is too low. + DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS (int): The plan's daily budget is not a multiple of the minimum billable unit. + INVALID_VALUE (int): The input has an invalid value. + KEYWORD_PLAN_HAS_NO_KEYWORDS (int): The plan has no keyword. + KEYWORD_PLAN_NOT_ENABLED (int): The plan is not enabled and API cannot provide mutation, forecast or + stats. + KEYWORD_PLAN_NOT_FOUND (int): The requested plan cannot be found for providing forecast or stats. + MISSING_BID (int): The plan is missing a cpc bid. + MISSING_FORECAST_PERIOD (int): The plan is missing required forecast_period field. + INVALID_FORECAST_DATE_RANGE (int): The plan's forecast_period has invalid forecast date range. + INVALID_NAME (int): The plan's name is invalid. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + BID_MULTIPLIER_OUT_OF_RANGE = 2 + BID_TOO_HIGH = 3 + BID_TOO_LOW = 4 + BID_TOO_MANY_FRACTIONAL_DIGITS = 5 + DAILY_BUDGET_TOO_LOW = 6 + DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS = 7 + INVALID_VALUE = 8 + KEYWORD_PLAN_HAS_NO_KEYWORDS = 9 + KEYWORD_PLAN_NOT_ENABLED = 10 + KEYWORD_PLAN_NOT_FOUND = 11 + MISSING_BID = 13 + MISSING_FORECAST_PERIOD = 14 + INVALID_FORECAST_DATE_RANGE = 15 + INVALID_NAME = 16 + + class ImageErrorEnum(object): class ImageError(enum.IntEnum): """ @@ -2810,6 +4827,31 @@ class ResourceCountLimitExceededError(enum.IntEnum): RESPONSE_ROW_LIMIT_EXCEEDED = 9 +class KeywordPlanCampaignErrorEnum(object): + class KeywordPlanCampaignError(enum.IntEnum): + """ + Enum describing possible errors from applying a keyword plan campaign. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + INVALID_NAME (int): A keyword plan campaign name is missing, empty, longer than allowed limit + or contains invalid chars. + INVALID_LANGUAGES (int): A keyword plan campaign contains one or more untargetable languages. + INVALID_GEOS (int): A keyword plan campaign contains one or more invalid geo targets. + DUPLICATE_NAME (int): The keyword plan campaign name is duplicate to an existing keyword plan + campaign name or other keyword plan campaign name in the request. + MAX_GEOS_EXCEEDED (int): The number of geo targets in the keyword plan campaign exceeds limits. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + INVALID_NAME = 2 + INVALID_LANGUAGES = 3 + INVALID_GEOS = 4 + DUPLICATE_NAME = 5 + MAX_GEOS_EXCEEDED = 6 + + class CustomerManagerLinkErrorEnum(object): class CustomerManagerLinkError(enum.IntEnum): """ @@ -2842,6 +4884,37 @@ class CustomerManagerLinkError(enum.IntEnum): DUPLICATE_CHILD_FOUND = 9 +class FeedItemErrorEnum(object): + class FeedItemError(enum.IntEnum): + """ + Enum describing possible feed item errors. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING (int): Cannot convert the feed attribute value from string to its real type. + CANNOT_OPERATE_ON_REMOVED_FEED_ITEM (int): Cannot operate on removed feed item. + DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE (int): Date time zone does not match the account's time zone. + KEY_ATTRIBUTES_NOT_FOUND (int): Feed item with the key attributes could not be found. + INVALID_URL (int): Url feed attribute value is not valid. + MISSING_KEY_ATTRIBUTES (int): Some key attributes are missing. + KEY_ATTRIBUTES_NOT_UNIQUE (int): Feed item has same key attributes as another feed item. + CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE (int): Cannot modify key attributes on an existing feed item. + SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE (int): The feed attribute value is too large. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING = 2 + CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 3 + DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 4 + KEY_ATTRIBUTES_NOT_FOUND = 5 + INVALID_URL = 6 + MISSING_KEY_ATTRIBUTES = 7 + KEY_ATTRIBUTES_NOT_UNIQUE = 8 + CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE = 9 + SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE = 10 + + class AccountBudgetProposalErrorEnum(object): class AccountBudgetProposalError(enum.IntEnum): """ @@ -3238,11 +5311,11 @@ class AuthenticationError(enum.IntEnum): UNSPECIFIED (int): Enum unspecified. UNKNOWN (int): The received error code is not known in this version. AUTHENTICATION_ERROR (int): Authentication of the request failed. - CLIENT_CUSTOMER_ID_INVALID (int): Client customer Id is not a number. + CLIENT_CUSTOMER_ID_INVALID (int): Client Customer Id is not a number. CUSTOMER_NOT_FOUND (int): No customer found for the provided customer id. GOOGLE_ACCOUNT_DELETED (int): Client's Google Account is deleted. GOOGLE_ACCOUNT_COOKIE_INVALID (int): Google account login token in the cookie is invalid. - FAILED_TO_AUTHENTICATE_GOOGLE_ACCOUNT (int): A problem occurred during Google account authentication. + GOOGLE_ACCOUNT_AUTHENTICATION_FAILED (int): A problem occurred during Google account authentication. GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH (int): The user in the google account login token does not match the UserId in the cookie. LOGIN_COOKIE_REQUIRED (int): Login cookie is required for authentication. @@ -3253,7 +5326,6 @@ class AuthenticationError(enum.IntEnum): OAUTH_TOKEN_REVOKED (int): Oauth token in the header has been revoked. OAUTH_TOKEN_HEADER_INVALID (int): Oauth token HTTP header is malformed. LOGIN_COOKIE_INVALID (int): Login cookie is not valid. - FAILED_TO_RETRIEVE_LOGIN_COOKIE (int): Failed to decrypt the login cookie. USER_ID_INVALID (int): User Id in the header is not a valid id. TWO_STEP_VERIFICATION_NOT_ENROLLED (int): An account administrator changed this account's authentication settings. To access this Google Ads account, enable 2-Step Verification in your @@ -3269,7 +5341,7 @@ class AuthenticationError(enum.IntEnum): CUSTOMER_NOT_FOUND = 8 GOOGLE_ACCOUNT_DELETED = 9 GOOGLE_ACCOUNT_COOKIE_INVALID = 10 - FAILED_TO_AUTHENTICATE_GOOGLE_ACCOUNT = 11 + GOOGLE_ACCOUNT_AUTHENTICATION_FAILED = 25 GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH = 12 LOGIN_COOKIE_REQUIRED = 13 NOT_ADS_USER = 14 @@ -3279,7 +5351,6 @@ class AuthenticationError(enum.IntEnum): OAUTH_TOKEN_REVOKED = 18 OAUTH_TOKEN_HEADER_INVALID = 19 LOGIN_COOKIE_INVALID = 20 - FAILED_TO_RETRIEVE_LOGIN_COOKIE = 21 USER_ID_INVALID = 22 TWO_STEP_VERIFICATION_NOT_ENROLLED = 23 ADVANCED_PROTECTION_NOT_ENROLLED = 24 @@ -3857,10 +5928,12 @@ class CustomerError(enum.IntEnum): STATUS_CHANGE_DISALLOWED (int): Customer status is not allowed to be changed from DRAFT and CLOSED. Currency code and at least one of country code and time zone needs to be set when status is changed to ENABLED. + ACCOUNT_NOT_SET_UP (int): CustomerService cannot get a customer that has not been fully set up. """ UNSPECIFIED = 0 UNKNOWN = 1 STATUS_CHANGE_DISALLOWED = 2 + ACCOUNT_NOT_SET_UP = 3 class DatabaseErrorEnum(object): @@ -4015,10 +6088,12 @@ class HeaderError(enum.IntEnum): UNSPECIFIED (int): Enum unspecified. UNKNOWN (int): The received error code is not known in this version. INVALID_LOGIN_CUSTOMER_ID (int): The login customer id could not be validated. + MALFORMED_TASK_INFO (int): One or more task headers could not be parsed. """ UNSPECIFIED = 0 UNKNOWN = 1 INVALID_LOGIN_CUSTOMER_ID = 3 + MALFORMED_TASK_INFO = 4 class IdErrorEnum(object): @@ -4036,6 +6111,51 @@ class IdError(enum.IntEnum): NOT_FOUND = 2 +class KeywordPlanAdGroupErrorEnum(object): + class KeywordPlanAdGroupError(enum.IntEnum): + """ + Enum describing possible errors from applying a keyword plan ad group. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + INVALID_NAME (int): The keyword plan ad group name is missing, empty, longer than allowed + limit or contains invalid chars. + DUPLICATE_NAME (int): The keyword plan ad group name is duplicate to an existing keyword plan + AdGroup name or other keyword plan AdGroup name in the request. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + INVALID_NAME = 2 + DUPLICATE_NAME = 3 + + +class KeywordPlanKeywordErrorEnum(object): + class KeywordPlanKeywordError(enum.IntEnum): + """ + Enum describing possible errors from applying a keyword plan keyword. + + Attributes: + UNSPECIFIED (int): Enum unspecified. + UNKNOWN (int): The received error code is not known in this version. + INVALID_KEYWORD_MATCH_TYPE (int): A keyword or negative keyword has invalid match type. + DUPLICATE_KEYWORD (int): A keyword or negative keyword with same text and match type already + exists. + KEYWORD_TEXT_TOO_LONG (int): Keyword or negative keyword text exceeds the allowed limit. + KEYWORD_HAS_INVALID_CHARS (int): Keyword or negative keyword text has invalid characters or symbols. + KEYWORD_HAS_TOO_MANY_WORDS (int): Keyword or negative keyword text has too many words. + INVALID_KEYWORD_TEXT (int): Keyword or negative keyword has invalid text. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + INVALID_KEYWORD_MATCH_TYPE = 2 + DUPLICATE_KEYWORD = 3 + KEYWORD_TEXT_TOO_LONG = 4 + KEYWORD_HAS_INVALID_CHARS = 5 + KEYWORD_HAS_TOO_MANY_WORDS = 6 + INVALID_KEYWORD_TEXT = 7 + + class MultiplierErrorEnum(object): class MultiplierError(enum.IntEnum): """ @@ -4104,14 +6224,14 @@ class NewResourceCreationError(enum.IntEnum): Attributes: UNSPECIFIED (int): Enum unspecified. UNKNOWN (int): The received error code is not known in this version. - CANNOT_SET_ID_FOR_ADD (int): Do not set the id field while creating new entities. + CANNOT_SET_ID_FOR_CREATE (int): Do not set the id field while creating new resources. DUPLICATE_TEMP_IDS (int): Creating more than one resource with the same temp ID is not allowed. - TEMP_ID_RESOURCE_HAD_ERRORS (int): Parent object with specified temp id failed validation, so no deep + TEMP_ID_RESOURCE_HAD_ERRORS (int): Parent resource with specified temp ID failed validation, so no validation will be done for this child resource. """ UNSPECIFIED = 0 UNKNOWN = 1 - CANNOT_SET_ID_FOR_ADD = 2 + CANNOT_SET_ID_FOR_CREATE = 2 DUPLICATE_TEMP_IDS = 3 TEMP_ID_RESOURCE_HAD_ERRORS = 4 @@ -4163,6 +6283,7 @@ class OperationAccessDeniedError(enum.IntEnum): CREATE_AS_REMOVED_NOT_PERMITTED (int): A CREATE operation may not set status to REMOVED. OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE (int): This operation is not allowed because the campaign or adgroup is removed. OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE (int): This operation is not permitted on this ad group type. + MUTATE_NOT_PERMITTED_FOR_CUSTOMER (int): The mutate is not allowed for this customer. """ UNSPECIFIED = 0 UNKNOWN = 1 @@ -4175,6 +6296,7 @@ class OperationAccessDeniedError(enum.IntEnum): CREATE_AS_REMOVED_NOT_PERMITTED = 8 OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 9 OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE = 10 + MUTATE_NOT_PERMITTED_FOR_CUSTOMER = 11 class OperatorErrorEnum(object): @@ -4334,6 +6456,12 @@ class RecommendationError(enum.IntEnum): ADGROUP_KEYWORD_LIMIT (int): The number of keywords in ad group have reached the maximum allowed. RECOMMENDATION_ALREADY_APPLIED (int): The recommendation requested to apply has already been applied. RECOMMENDATION_INVALIDATED (int): The recommendation requested to apply has been invalidated. + TOO_MANY_OPERATIONS (int): The number of operations in a single request exceeds the maximum allowed. + NO_OPERATIONS (int): There are no operations in the request. + DIFFERENT_TYPES_NOT_SUPPORTED (int): Operations with multiple recommendation types are not supported when + partial failure mode is not enabled. + DUPLICATE_RESOURCE_NAME (int): Request contains multiple operations with the same resource_name. + RECOMMENDATION_ALREADY_DISMISSED (int): The recommendation requested to dismiss has already been dismissed. """ UNSPECIFIED = 0 UNKNOWN = 1 @@ -4345,6 +6473,11 @@ class RecommendationError(enum.IntEnum): ADGROUP_KEYWORD_LIMIT = 7 RECOMMENDATION_ALREADY_APPLIED = 8 RECOMMENDATION_INVALIDATED = 9 + TOO_MANY_OPERATIONS = 10 + NO_OPERATIONS = 11 + DIFFERENT_TYPES_NOT_SUPPORTED = 12 + DUPLICATE_RESOURCE_NAME = 13 + RECOMMENDATION_ALREADY_DISMISSED = 14 class RegionCodeErrorEnum(object): @@ -4444,3 +6577,18 @@ class SharedSetError(enum.IntEnum): DUPLICATE_NAME = 3 SHARED_SET_REMOVED = 4 SHARED_SET_IN_USE = 5 + + +class FeedAttributeOperation(object): + class Operator(enum.IntEnum): + """ + The operator. + + Attributes: + UNSPECIFIED (int): Unspecified. + UNKNOWN (int): Used for return value only. Represents value unknown in this version. + ADD (int): Add the attribute to the existing attributes. + """ + UNSPECIFIED = 0 + UNKNOWN = 1 + ADD = 2 diff --git a/google/ads/google_ads/v0/services/feed_item_service_client.py b/google/ads/google_ads/v0/services/feed_item_service_client.py new file mode 100644 index 000000000..f3592f27e --- /dev/null +++ b/google/ads/google_ads/v0/services/feed_item_service_client.py @@ -0,0 +1,259 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services FeedItemService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import feed_item_service_client_config +from google.ads.google_ads.v0.services.transports import feed_item_service_grpc_transport +from google.ads.google_ads.v0.proto.services import feed_item_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class FeedItemServiceClient(object): + """Service to manage feed items.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.FeedItemService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + FeedItemServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def feed_item_path(cls, customer, feed_item): + """Return a fully-qualified feed_item string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/feedItems/{feed_item}', + customer=customer, + feed_item=feed_item, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=feed_item_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.FeedItemServiceGrpcTransport, + Callable[[~.Credentials, type], ~.FeedItemServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=feed_item_service_grpc_transport. + FeedItemServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = feed_item_service_grpc_transport.FeedItemServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_feed_item(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested feed item in full detail. + + Args: + resource_name (str): The resource name of the feed item to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.FeedItem` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_feed_item' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_feed_item'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_feed_item, + default_retry=self._method_configs['GetFeedItem'].retry, + default_timeout=self._method_configs['GetFeedItem'] + .timeout, + client_info=self._client_info, + ) + + request = feed_item_service_pb2.GetFeedItemRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_feed_item']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_feed_items(self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes feed items. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose feed items are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.FeedItemOperation]]): The list of operations to perform on individual feed items. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.FeedItemOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateFeedItemsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_feed_items' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_feed_items'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_feed_items, + default_retry=self._method_configs[ + 'MutateFeedItems'].retry, + default_timeout=self._method_configs['MutateFeedItems'] + .timeout, + client_info=self._client_info, + ) + + request = feed_item_service_pb2.MutateFeedItemsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_feed_items']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/feed_item_service_client_config.py b/google/ads/google_ads/v0/services/feed_item_service_client_config.py new file mode 100644 index 000000000..ce492cb9d --- /dev/null +++ b/google/ads/google_ads/v0/services/feed_item_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.FeedItemService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetFeedItem": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateFeedItems": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/feed_mapping_service_client.py b/google/ads/google_ads/v0/services/feed_mapping_service_client.py new file mode 100644 index 000000000..aa5d25dbc --- /dev/null +++ b/google/ads/google_ads/v0/services/feed_mapping_service_client.py @@ -0,0 +1,259 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services FeedMappingService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import feed_mapping_service_client_config +from google.ads.google_ads.v0.services.transports import feed_mapping_service_grpc_transport +from google.ads.google_ads.v0.proto.services import feed_mapping_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class FeedMappingServiceClient(object): + """Service to manage feed mappings.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.FeedMappingService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + FeedMappingServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def feed_mapping_path(cls, customer, feed_mapping): + """Return a fully-qualified feed_mapping string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/feedMappings/{feed_mapping}', + customer=customer, + feed_mapping=feed_mapping, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=feed_mapping_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.FeedMappingServiceGrpcTransport, + Callable[[~.Credentials, type], ~.FeedMappingServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=feed_mapping_service_grpc_transport. + FeedMappingServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = feed_mapping_service_grpc_transport.FeedMappingServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_feed_mapping(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested feed mapping in full detail. + + Args: + resource_name (str): The resource name of the feed mapping to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.FeedMapping` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_feed_mapping' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_feed_mapping'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_feed_mapping, + default_retry=self._method_configs['GetFeedMapping'].retry, + default_timeout=self._method_configs['GetFeedMapping'] + .timeout, + client_info=self._client_info, + ) + + request = feed_mapping_service_pb2.GetFeedMappingRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_feed_mapping']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_feed_mappings(self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates or removes feed mappings. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose feed mappings are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.FeedMappingOperation]]): The list of operations to perform on individual feed mappings. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.FeedMappingOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateFeedMappingsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_feed_mappings' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_feed_mappings'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_feed_mappings, + default_retry=self._method_configs[ + 'MutateFeedMappings'].retry, + default_timeout=self._method_configs['MutateFeedMappings'] + .timeout, + client_info=self._client_info, + ) + + request = feed_mapping_service_pb2.MutateFeedMappingsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_feed_mappings']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/feed_mapping_service_client_config.py b/google/ads/google_ads/v0/services/feed_mapping_service_client_config.py new file mode 100644 index 000000000..f4b8a511a --- /dev/null +++ b/google/ads/google_ads/v0/services/feed_mapping_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.FeedMappingService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetFeedMapping": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateFeedMappings": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/feed_service_client.py b/google/ads/google_ads/v0/services/feed_service_client.py new file mode 100644 index 000000000..1cf956db6 --- /dev/null +++ b/google/ads/google_ads/v0/services/feed_service_client.py @@ -0,0 +1,257 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services FeedService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import feed_service_client_config +from google.ads.google_ads.v0.services.transports import feed_service_grpc_transport +from google.ads.google_ads.v0.proto.services import feed_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class FeedServiceClient(object): + """Service to manage feeds.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.FeedService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + FeedServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def feed_path(cls, customer, feed): + """Return a fully-qualified feed string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/feeds/{feed}', + customer=customer, + feed=feed, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=feed_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.FeedServiceGrpcTransport, + Callable[[~.Credentials, type], ~.FeedServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=feed_service_grpc_transport. + FeedServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = feed_service_grpc_transport.FeedServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_feed(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested feed in full detail. + + Args: + resource_name (str): The resource name of the feed to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.Feed` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_feed' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_feed'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_feed, + default_retry=self._method_configs['GetFeed'].retry, + default_timeout=self._method_configs['GetFeed'].timeout, + client_info=self._client_info, + ) + + request = feed_service_pb2.GetFeedRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_feed']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_feeds(self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes feeds. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose feeds are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.FeedOperation]]): The list of operations to perform on individual feeds. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.FeedOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateFeedsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_feeds' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_feeds'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_feeds, + default_retry=self._method_configs['MutateFeeds'].retry, + default_timeout=self._method_configs['MutateFeeds'] + .timeout, + client_info=self._client_info, + ) + + request = feed_service_pb2.MutateFeedsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_feeds']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/feed_service_client_config.py b/google/ads/google_ads/v0/services/feed_service_client_config.py new file mode 100644 index 000000000..ce14f3659 --- /dev/null +++ b/google/ads/google_ads/v0/services/feed_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.FeedService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetFeed": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateFeeds": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/geo_target_constant_service_client.py b/google/ads/google_ads/v0/services/geo_target_constant_service_client.py index f6e57ad43..4b572f4bc 100644 --- a/google/ads/google_ads/v0/services/geo_target_constant_service_client.py +++ b/google/ads/google_ads/v0/services/geo_target_constant_service_client.py @@ -28,6 +28,7 @@ from google.ads.google_ads.v0.services import geo_target_constant_service_client_config from google.ads.google_ads.v0.services.transports import geo_target_constant_service_grpc_transport from google.ads.google_ads.v0.proto.services import geo_target_constant_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version @@ -211,6 +212,7 @@ def get_geo_target_constant( def suggest_geo_target_constants( self, locale, + country_code, location_names=None, geo_targets=None, retry=google.api_core.gapic_v1.method.DEFAULT, @@ -221,7 +223,11 @@ def suggest_geo_target_constants( Args: locale (Union[dict, ~google.ads.google_ads.v0.types.StringValue]): If possible, returned geo targets are translated using this locale. If not, - en is used by default. + en is used by default. This is also used as a hint for returned geo + targets. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.StringValue` + country_code (Union[dict, ~google.ads.google_ads.v0.types.StringValue]): Returned geo targets are restricted to this country code. If a dict is provided, it must be of the same form as the protobuf message :class:`~google.ads.google_ads.v0.types.StringValue` location_names (Union[dict, ~google.ads.google_ads.v0.types.LocationNames]): The location names to search by. At most 25 names can be set. @@ -270,6 +276,7 @@ def suggest_geo_target_constants( request = geo_target_constant_service_pb2.SuggestGeoTargetConstantsRequest( locale=locale, + country_code=country_code, location_names=location_names, geo_targets=geo_targets, ) diff --git a/google/ads/google_ads/v0/services/google_ads_field_service_client.py b/google/ads/google_ads/v0/services/google_ads_field_service_client.py index c48883fcf..403fc98bb 100644 --- a/google/ads/google_ads/v0/services/google_ads_field_service_client.py +++ b/google/ads/google_ads/v0/services/google_ads_field_service_client.py @@ -29,6 +29,7 @@ from google.ads.google_ads.v0.services import google_ads_field_service_client_config from google.ads.google_ads.v0.services.transports import google_ads_field_service_grpc_transport from google.ads.google_ads.v0.proto.services import google_ads_field_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/google_ads_service_client.py b/google/ads/google_ads/v0/services/google_ads_service_client.py index b1681217b..23befe5d6 100644 --- a/google/ads/google_ads/v0/services/google_ads_service_client.py +++ b/google/ads/google_ads/v0/services/google_ads_service_client.py @@ -28,6 +28,7 @@ from google.ads.google_ads.v0.services import google_ads_service_client_config from google.ads.google_ads.v0.services.transports import google_ads_service_grpc_transport from google.ads.google_ads.v0.proto.services import google_ads_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version @@ -220,3 +221,53 @@ def search(self, response_token_field='next_page_token', ) return iterator + + def mutate(self, + customer_id, + mutate_operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes resources. Operation statuses are returned. + + Args: + customer_id (str): The ID of the customer whose resources are being modified. + mutate_operations (list[Union[dict, ~google.ads.google_ads.v0.types.MutateOperation]]): The list of operations to perform on individual resources. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.MutateOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateGoogleAdsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate, + default_retry=self._method_configs['Mutate'].retry, + default_timeout=self._method_configs['Mutate'].timeout, + client_info=self._client_info, + ) + + request = google_ads_service_pb2.MutateGoogleAdsRequest( + customer_id=customer_id, + mutate_operations=mutate_operations, + ) + return self._inner_api_calls['mutate']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/google_ads_service_client_config.py b/google/ads/google_ads/v0/services/google_ads_service_client_config.py index cb5b4883d..df65848d9 100644 --- a/google/ads/google_ads/v0/services/google_ads_service_client_config.py +++ b/google/ads/google_ads/v0/services/google_ads_service_client_config.py @@ -21,6 +21,11 @@ "timeout_millis": 60000, "retry_codes_name": "non_idempotent", "retry_params_name": "default" + }, + "Mutate": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" } } } diff --git a/google/ads/google_ads/v0/services/hotel_group_view_service_client.py b/google/ads/google_ads/v0/services/hotel_group_view_service_client.py index ae2d0a4fb..9323dde43 100644 --- a/google/ads/google_ads/v0/services/hotel_group_view_service_client.py +++ b/google/ads/google_ads/v0/services/hotel_group_view_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import hotel_group_view_service_client_config from google.ads.google_ads.v0.services.transports import hotel_group_view_service_grpc_transport from google.ads.google_ads.v0.proto.services import hotel_group_view_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/hotel_performance_view_service_client.py b/google/ads/google_ads/v0/services/hotel_performance_view_service_client.py new file mode 100644 index 000000000..3ae5b48cb --- /dev/null +++ b/google/ads/google_ads/v0/services/hotel_performance_view_service_client.py @@ -0,0 +1,209 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services HotelPerformanceViewService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import hotel_performance_view_service_client_config +from google.ads.google_ads.v0.services.transports import hotel_performance_view_service_grpc_transport +from google.ads.google_ads.v0.proto.services import hotel_performance_view_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class HotelPerformanceViewServiceClient(object): + """Service to manage Hotel Performance Views.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.HotelPerformanceViewService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + HotelPerformanceViewServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def hotel_performance_view_path(cls, customer): + """Return a fully-qualified hotel_performance_view string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/hotelPerformanceView', + customer=customer, + ) + + def __init__( + self, + transport=None, + channel=None, + credentials=None, + client_config=hotel_performance_view_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.HotelPerformanceViewServiceGrpcTransport, + Callable[[~.Credentials, type], ~.HotelPerformanceViewServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=hotel_performance_view_service_grpc_transport. + HotelPerformanceViewServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = hotel_performance_view_service_grpc_transport.HotelPerformanceViewServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_hotel_performance_view( + self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested Hotel Performance View in full detail. + + Args: + resource_name (str): Resource name of the Hotel Performance View to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.HotelPerformanceView` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_hotel_performance_view' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_hotel_performance_view'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_hotel_performance_view, + default_retry=self._method_configs[ + 'GetHotelPerformanceView'].retry, + default_timeout=self._method_configs[ + 'GetHotelPerformanceView'].timeout, + client_info=self._client_info, + ) + + request = hotel_performance_view_service_pb2.GetHotelPerformanceViewRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_hotel_performance_view']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/hotel_performance_view_service_client_config.py b/google/ads/google_ads/v0/services/hotel_performance_view_service_client_config.py new file mode 100644 index 000000000..3dfc97e00 --- /dev/null +++ b/google/ads/google_ads/v0/services/hotel_performance_view_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.HotelPerformanceViewService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetHotelPerformanceView": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/keyword_plan_ad_group_service_client.py b/google/ads/google_ads/v0/services/keyword_plan_ad_group_service_client.py new file mode 100644 index 000000000..a3dcb5b4a --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_ad_group_service_client.py @@ -0,0 +1,264 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services KeywordPlanAdGroupService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import keyword_plan_ad_group_service_client_config +from google.ads.google_ads.v0.services.transports import keyword_plan_ad_group_service_grpc_transport +from google.ads.google_ads.v0.proto.services import keyword_plan_ad_group_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class KeywordPlanAdGroupServiceClient(object): + """Service to manage Keyword Plan ad groups.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.KeywordPlanAdGroupService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + KeywordPlanAdGroupServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def keyword_plan_ad_group_path(cls, customer, keyword_plan_ad_group): + """Return a fully-qualified keyword_plan_ad_group string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/keywordPlanAdGroups/{keyword_plan_ad_group}', + customer=customer, + keyword_plan_ad_group=keyword_plan_ad_group, + ) + + def __init__( + self, + transport=None, + channel=None, + credentials=None, + client_config=keyword_plan_ad_group_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.KeywordPlanAdGroupServiceGrpcTransport, + Callable[[~.Credentials, type], ~.KeywordPlanAdGroupServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=keyword_plan_ad_group_service_grpc_transport. + KeywordPlanAdGroupServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = keyword_plan_ad_group_service_grpc_transport.KeywordPlanAdGroupServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_keyword_plan_ad_group( + self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested Keyword Plan ad group in full detail. + + Args: + resource_name (str): The resource name of the Keyword Plan ad group to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.KeywordPlanAdGroup` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_keyword_plan_ad_group' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_keyword_plan_ad_group'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_keyword_plan_ad_group, + default_retry=self._method_configs['GetKeywordPlanAdGroup'] + .retry, + default_timeout=self._method_configs[ + 'GetKeywordPlanAdGroup'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_ad_group_service_pb2.GetKeywordPlanAdGroupRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_keyword_plan_ad_group']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_keyword_plan_ad_groups( + self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes Keyword Plan ad groups. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose Keyword Plan ad groups are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.KeywordPlanAdGroupOperation]]): The list of operations to perform on individual Keyword Plan ad groups. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.KeywordPlanAdGroupOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateKeywordPlanAdGroupsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_keyword_plan_ad_groups' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_keyword_plan_ad_groups'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_keyword_plan_ad_groups, + default_retry=self._method_configs[ + 'MutateKeywordPlanAdGroups'].retry, + default_timeout=self._method_configs[ + 'MutateKeywordPlanAdGroups'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_ad_group_service_pb2.MutateKeywordPlanAdGroupsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_keyword_plan_ad_groups']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/keyword_plan_ad_group_service_client_config.py b/google/ads/google_ads/v0/services/keyword_plan_ad_group_service_client_config.py new file mode 100644 index 000000000..606eb6007 --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_ad_group_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.KeywordPlanAdGroupService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetKeywordPlanAdGroup": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateKeywordPlanAdGroups": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/keyword_plan_campaign_service_client.py b/google/ads/google_ads/v0/services/keyword_plan_campaign_service_client.py new file mode 100644 index 000000000..01bacd255 --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_campaign_service_client.py @@ -0,0 +1,264 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services KeywordPlanCampaignService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import keyword_plan_campaign_service_client_config +from google.ads.google_ads.v0.services.transports import keyword_plan_campaign_service_grpc_transport +from google.ads.google_ads.v0.proto.services import keyword_plan_campaign_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class KeywordPlanCampaignServiceClient(object): + """Service to manage Keyword Plan campaigns.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.KeywordPlanCampaignService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + KeywordPlanCampaignServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def keyword_plan_campaign_path(cls, customer, keyword_plan_campaign): + """Return a fully-qualified keyword_plan_campaign string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/keywordPlanCampaigns/{keyword_plan_campaign}', + customer=customer, + keyword_plan_campaign=keyword_plan_campaign, + ) + + def __init__( + self, + transport=None, + channel=None, + credentials=None, + client_config=keyword_plan_campaign_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.KeywordPlanCampaignServiceGrpcTransport, + Callable[[~.Credentials, type], ~.KeywordPlanCampaignServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=keyword_plan_campaign_service_grpc_transport. + KeywordPlanCampaignServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = keyword_plan_campaign_service_grpc_transport.KeywordPlanCampaignServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_keyword_plan_campaign( + self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested Keyword Plan campaign in full detail. + + Args: + resource_name (str): The resource name of the Keyword Plan campaign to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.KeywordPlanCampaign` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_keyword_plan_campaign' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_keyword_plan_campaign'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_keyword_plan_campaign, + default_retry=self._method_configs[ + 'GetKeywordPlanCampaign'].retry, + default_timeout=self._method_configs[ + 'GetKeywordPlanCampaign'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_campaign_service_pb2.GetKeywordPlanCampaignRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_keyword_plan_campaign']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_keyword_plan_campaigns( + self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes Keyword Plan campaigns. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose Keyword Plan campaigns are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.KeywordPlanCampaignOperation]]): The list of operations to perform on individual Keyword Plan campaigns. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.KeywordPlanCampaignOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateKeywordPlanCampaignsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_keyword_plan_campaigns' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_keyword_plan_campaigns'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_keyword_plan_campaigns, + default_retry=self._method_configs[ + 'MutateKeywordPlanCampaigns'].retry, + default_timeout=self._method_configs[ + 'MutateKeywordPlanCampaigns'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_campaign_service_pb2.MutateKeywordPlanCampaignsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_keyword_plan_campaigns']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/keyword_plan_campaign_service_client_config.py b/google/ads/google_ads/v0/services/keyword_plan_campaign_service_client_config.py new file mode 100644 index 000000000..c9bdb5b1f --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_campaign_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.KeywordPlanCampaignService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetKeywordPlanCampaign": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateKeywordPlanCampaigns": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/keyword_plan_idea_service_client.py b/google/ads/google_ads/v0/services/keyword_plan_idea_service_client.py new file mode 100644 index 000000000..ccbb6c970 --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_idea_service_client.py @@ -0,0 +1,239 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services KeywordPlanIdeaService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.protobuf_helpers +import grpc + +from google.ads.google_ads.v0.services import keyword_plan_idea_service_client_config +from google.ads.google_ads.v0.services.transports import keyword_plan_idea_service_grpc_transport +from google.ads.google_ads.v0.proto.services import keyword_plan_idea_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class KeywordPlanIdeaServiceClient(object): + """Service to generate keyword ideas.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.KeywordPlanIdeaService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + KeywordPlanIdeaServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=keyword_plan_idea_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.KeywordPlanIdeaServiceGrpcTransport, + Callable[[~.Credentials, type], ~.KeywordPlanIdeaServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=keyword_plan_idea_service_grpc_transport. + KeywordPlanIdeaServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = keyword_plan_idea_service_grpc_transport.KeywordPlanIdeaServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def generate_keyword_ideas(self, + customer_id, + language, + geo_target_constants, + keyword_plan_network, + keyword_and_url_seed=None, + keyword_seed=None, + url_seed=None, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns a list of keyword ideas. + + Args: + customer_id (str): The ID of the customer with the recommendation. + language (Union[dict, ~google.ads.google_ads.v0.types.StringValue]): The resource name of the language to target. + Required + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.StringValue` + geo_target_constants (list[Union[dict, ~google.ads.google_ads.v0.types.StringValue]]): The resource names of the location to target. + Max 10 + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.StringValue` + keyword_plan_network (~google.ads.google_ads.v0.types.KeywordPlanNetwork): Targeting network. + keyword_and_url_seed (Union[dict, ~google.ads.google_ads.v0.types.KeywordAndUrlSeed]): A Keyword and a specific Url to generate ideas from + e.g. cars, www.example.com/cars. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.KeywordAndUrlSeed` + keyword_seed (Union[dict, ~google.ads.google_ads.v0.types.KeywordSeed]): A Keyword or phrase to generate ideas from, e.g. cars. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.KeywordSeed` + url_seed (Union[dict, ~google.ads.google_ads.v0.types.UrlSeed]): A specific url to generate ideas from, e.g. www.example.com/cars. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.UrlSeed` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.GenerateKeywordIdeaResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'generate_keyword_ideas' not in self._inner_api_calls: + self._inner_api_calls[ + 'generate_keyword_ideas'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.generate_keyword_ideas, + default_retry=self._method_configs['GenerateKeywordIdeas'] + .retry, + default_timeout=self._method_configs[ + 'GenerateKeywordIdeas'].timeout, + client_info=self._client_info, + ) + + # Sanity check: We have some fields which are mutually exclusive; + # raise ValueError if more than one is sent. + google.api_core.protobuf_helpers.check_oneof( + keyword_and_url_seed=keyword_and_url_seed, + keyword_seed=keyword_seed, + url_seed=url_seed, + ) + + request = keyword_plan_idea_service_pb2.GenerateKeywordIdeasRequest( + customer_id=customer_id, + language=language, + geo_target_constants=geo_target_constants, + keyword_plan_network=keyword_plan_network, + keyword_and_url_seed=keyword_and_url_seed, + keyword_seed=keyword_seed, + url_seed=url_seed, + ) + return self._inner_api_calls['generate_keyword_ideas']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/keyword_plan_idea_service_client_config.py b/google/ads/google_ads/v0/services/keyword_plan_idea_service_client_config.py new file mode 100644 index 000000000..4fcb06adb --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_idea_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.KeywordPlanIdeaService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GenerateKeywordIdeas": { + "timeout_millis": 600000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/keyword_plan_keyword_service_client.py b/google/ads/google_ads/v0/services/keyword_plan_keyword_service_client.py new file mode 100644 index 000000000..6fcc0c822 --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_keyword_service_client.py @@ -0,0 +1,264 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services KeywordPlanKeywordService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import keyword_plan_keyword_service_client_config +from google.ads.google_ads.v0.services.transports import keyword_plan_keyword_service_grpc_transport +from google.ads.google_ads.v0.proto.services import keyword_plan_keyword_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class KeywordPlanKeywordServiceClient(object): + """Service to manage Keyword Plan ad group keywords.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.KeywordPlanKeywordService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + KeywordPlanKeywordServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def keyword_plan_keyword_path(cls, customer, keyword_plan_keyword): + """Return a fully-qualified keyword_plan_keyword string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/keywordPlanKeywords/{keyword_plan_keyword}', + customer=customer, + keyword_plan_keyword=keyword_plan_keyword, + ) + + def __init__( + self, + transport=None, + channel=None, + credentials=None, + client_config=keyword_plan_keyword_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.KeywordPlanKeywordServiceGrpcTransport, + Callable[[~.Credentials, type], ~.KeywordPlanKeywordServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=keyword_plan_keyword_service_grpc_transport. + KeywordPlanKeywordServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = keyword_plan_keyword_service_grpc_transport.KeywordPlanKeywordServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_keyword_plan_keyword( + self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested Keyword Plan keyword in full detail. + + Args: + resource_name (str): The resource name of the ad group keyword to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.KeywordPlanKeyword` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_keyword_plan_keyword' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_keyword_plan_keyword'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_keyword_plan_keyword, + default_retry=self._method_configs['GetKeywordPlanKeyword'] + .retry, + default_timeout=self._method_configs[ + 'GetKeywordPlanKeyword'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_keyword_service_pb2.GetKeywordPlanKeywordRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_keyword_plan_keyword']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_keyword_plan_keywords( + self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes Keyword Plan keywords. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose Keyword Plan keywords are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.KeywordPlanKeywordOperation]]): The list of operations to perform on individual Keyword Plan keywords. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.KeywordPlanKeywordOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateKeywordPlanKeywordsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_keyword_plan_keywords' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_keyword_plan_keywords'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_keyword_plan_keywords, + default_retry=self._method_configs[ + 'MutateKeywordPlanKeywords'].retry, + default_timeout=self._method_configs[ + 'MutateKeywordPlanKeywords'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_keyword_service_pb2.MutateKeywordPlanKeywordsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_keyword_plan_keywords']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/keyword_plan_keyword_service_client_config.py b/google/ads/google_ads/v0/services/keyword_plan_keyword_service_client_config.py new file mode 100644 index 000000000..ec28c31f6 --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_keyword_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.KeywordPlanKeywordService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetKeywordPlanKeyword": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateKeywordPlanKeywords": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/keyword_plan_negative_keyword_service_client.py b/google/ads/google_ads/v0/services/keyword_plan_negative_keyword_service_client.py new file mode 100644 index 000000000..44bf0af54 --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_negative_keyword_service_client.py @@ -0,0 +1,268 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services KeywordPlanNegativeKeywordService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import keyword_plan_negative_keyword_service_client_config +from google.ads.google_ads.v0.services.transports import keyword_plan_negative_keyword_service_grpc_transport +from google.ads.google_ads.v0.proto.services import keyword_plan_negative_keyword_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class KeywordPlanNegativeKeywordServiceClient(object): + """Service to manage Keyword Plan negative keywords.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + KeywordPlanNegativeKeywordServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def keyword_plan_negative_keyword_path(cls, customer, + keyword_plan_negative_keyword): + """Return a fully-qualified keyword_plan_negative_keyword string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/keywordPlanNegativeKeywords/{keyword_plan_negative_keyword}', + customer=customer, + keyword_plan_negative_keyword=keyword_plan_negative_keyword, + ) + + def __init__( + self, + transport=None, + channel=None, + credentials=None, + client_config=keyword_plan_negative_keyword_service_client_config. + config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.KeywordPlanNegativeKeywordServiceGrpcTransport, + Callable[[~.Credentials, type], ~.KeywordPlanNegativeKeywordServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class= + keyword_plan_negative_keyword_service_grpc_transport. + KeywordPlanNegativeKeywordServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = keyword_plan_negative_keyword_service_grpc_transport.KeywordPlanNegativeKeywordServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_keyword_plan_negative_keyword( + self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested plan in full detail. + + Args: + resource_name (str): The resource name of the plan to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.KeywordPlanNegativeKeyword` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_keyword_plan_negative_keyword' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_keyword_plan_negative_keyword'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_keyword_plan_negative_keyword, + default_retry=self._method_configs[ + 'GetKeywordPlanNegativeKeyword'].retry, + default_timeout=self._method_configs[ + 'GetKeywordPlanNegativeKeyword'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_negative_keyword_service_pb2.GetKeywordPlanNegativeKeywordRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_keyword_plan_negative_keyword']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_keyword_plan_negative_keywords( + self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes Keyword Plan negative keywords. Operation + statuses are returned. + + Args: + customer_id (str): The ID of the customer whose negative keywords are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.KeywordPlanNegativeKeywordOperation]]): The list of operations to perform on individual Keyword Plan negative + keywords. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.KeywordPlanNegativeKeywordOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateKeywordPlanNegativeKeywordsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_keyword_plan_negative_keywords' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_keyword_plan_negative_keywords'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_keyword_plan_negative_keywords, + default_retry=self._method_configs[ + 'MutateKeywordPlanNegativeKeywords'].retry, + default_timeout=self._method_configs[ + 'MutateKeywordPlanNegativeKeywords'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_negative_keyword_service_pb2.MutateKeywordPlanNegativeKeywordsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_keyword_plan_negative_keywords']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/keyword_plan_negative_keyword_service_client_config.py b/google/ads/google_ads/v0/services/keyword_plan_negative_keyword_service_client_config.py new file mode 100644 index 000000000..584d22902 --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_negative_keyword_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.KeywordPlanNegativeKeywordService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetKeywordPlanNegativeKeyword": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateKeywordPlanNegativeKeywords": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/keyword_plan_service_client.py b/google/ads/google_ads/v0/services/keyword_plan_service_client.py new file mode 100644 index 000000000..77c521f2a --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_service_client.py @@ -0,0 +1,355 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services KeywordPlanService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import keyword_plan_service_client_config +from google.ads.google_ads.v0.services.transports import keyword_plan_service_grpc_transport +from google.ads.google_ads.v0.proto.services import keyword_plan_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class KeywordPlanServiceClient(object): + """Service to manage keyword plans.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.KeywordPlanService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + KeywordPlanServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def keyword_plan_path(cls, customer, keyword_plan): + """Return a fully-qualified keyword_plan string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/keywordPlans/{keyword_plan}', + customer=customer, + keyword_plan=keyword_plan, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=keyword_plan_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.KeywordPlanServiceGrpcTransport, + Callable[[~.Credentials, type], ~.KeywordPlanServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=keyword_plan_service_grpc_transport. + KeywordPlanServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = keyword_plan_service_grpc_transport.KeywordPlanServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_keyword_plan(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested plan in full detail. + + Args: + resource_name (str): The resource name of the plan to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.KeywordPlan` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_keyword_plan' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_keyword_plan'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_keyword_plan, + default_retry=self._method_configs['GetKeywordPlan'].retry, + default_timeout=self._method_configs['GetKeywordPlan'] + .timeout, + client_info=self._client_info, + ) + + request = keyword_plan_service_pb2.GetKeywordPlanRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_keyword_plan']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_keyword_plans(self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates, updates, or removes keyword plans. Operation statuses are + returned. + + Args: + customer_id (str): The ID of the customer whose keyword plans are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.KeywordPlanOperation]]): The list of operations to perform on individual keyword plans. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.KeywordPlanOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateKeywordPlansResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_keyword_plans' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_keyword_plans'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_keyword_plans, + default_retry=self._method_configs[ + 'MutateKeywordPlans'].retry, + default_timeout=self._method_configs['MutateKeywordPlans'] + .timeout, + client_info=self._client_info, + ) + + request = keyword_plan_service_pb2.MutateKeywordPlansRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_keyword_plans']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def generate_forecast_metrics( + self, + keyword_plan, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested Keyword Plan forecasts. + + Args: + keyword_plan (str): The resource name of the keyword plan to be forecasted. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.GenerateForecastMetricsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'generate_forecast_metrics' not in self._inner_api_calls: + self._inner_api_calls[ + 'generate_forecast_metrics'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.generate_forecast_metrics, + default_retry=self._method_configs[ + 'GenerateForecastMetrics'].retry, + default_timeout=self._method_configs[ + 'GenerateForecastMetrics'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_service_pb2.GenerateForecastMetricsRequest( + keyword_plan=keyword_plan, ) + return self._inner_api_calls['generate_forecast_metrics']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def generate_historical_metrics( + self, + keyword_plan, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested Keyword Plan historical metrics. + + Args: + keyword_plan (str): The resource name of the keyword plan of which historical metrics are + requested. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.GenerateHistoricalMetricsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'generate_historical_metrics' not in self._inner_api_calls: + self._inner_api_calls[ + 'generate_historical_metrics'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.generate_historical_metrics, + default_retry=self._method_configs[ + 'GenerateHistoricalMetrics'].retry, + default_timeout=self._method_configs[ + 'GenerateHistoricalMetrics'].timeout, + client_info=self._client_info, + ) + + request = keyword_plan_service_pb2.GenerateHistoricalMetricsRequest( + keyword_plan=keyword_plan, ) + return self._inner_api_calls['generate_historical_metrics']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/keyword_plan_service_client_config.py b/google/ads/google_ads/v0/services/keyword_plan_service_client_config.py new file mode 100644 index 000000000..19d97eaa1 --- /dev/null +++ b/google/ads/google_ads/v0/services/keyword_plan_service_client_config.py @@ -0,0 +1,43 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.KeywordPlanService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetKeywordPlan": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateKeywordPlans": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + }, + "GenerateForecastMetrics": { + "timeout_millis": 600000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + }, + "GenerateHistoricalMetrics": { + "timeout_millis": 600000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/keyword_view_service_client.py b/google/ads/google_ads/v0/services/keyword_view_service_client.py index 4955f3afa..e447d4a24 100644 --- a/google/ads/google_ads/v0/services/keyword_view_service_client.py +++ b/google/ads/google_ads/v0/services/keyword_view_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import keyword_view_service_client_config from google.ads.google_ads.v0.services.transports import keyword_view_service_grpc_transport from google.ads.google_ads.v0.proto.services import keyword_view_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/language_constant_service_client.py b/google/ads/google_ads/v0/services/language_constant_service_client.py new file mode 100644 index 000000000..b08bc0e66 --- /dev/null +++ b/google/ads/google_ads/v0/services/language_constant_service_client.py @@ -0,0 +1,206 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services LanguageConstantService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import language_constant_service_client_config +from google.ads.google_ads.v0.services.transports import language_constant_service_grpc_transport +from google.ads.google_ads.v0.proto.services import language_constant_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class LanguageConstantServiceClient(object): + """Service to fetch language constants.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.LanguageConstantService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + LanguageConstantServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def language_constant_path(cls, language_constant): + """Return a fully-qualified language_constant string.""" + return google.api_core.path_template.expand( + 'languageConstants/{language_constant}', + language_constant=language_constant, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=language_constant_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.LanguageConstantServiceGrpcTransport, + Callable[[~.Credentials, type], ~.LanguageConstantServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=language_constant_service_grpc_transport. + LanguageConstantServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = language_constant_service_grpc_transport.LanguageConstantServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_language_constant(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested language constant. + + Args: + resource_name (str): Resource name of the language constant to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.LanguageConstant` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_language_constant' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_language_constant'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_language_constant, + default_retry=self._method_configs[ + 'GetLanguageConstant'].retry, + default_timeout=self._method_configs['GetLanguageConstant'] + .timeout, + client_info=self._client_info, + ) + + request = language_constant_service_pb2.GetLanguageConstantRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_language_constant']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/language_constant_service_client_config.py b/google/ads/google_ads/v0/services/language_constant_service_client_config.py new file mode 100644 index 000000000..542859ac6 --- /dev/null +++ b/google/ads/google_ads/v0/services/language_constant_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.LanguageConstantService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetLanguageConstant": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/managed_placement_view_service_client.py b/google/ads/google_ads/v0/services/managed_placement_view_service_client.py index a8da73705..c96ae474d 100644 --- a/google/ads/google_ads/v0/services/managed_placement_view_service_client.py +++ b/google/ads/google_ads/v0/services/managed_placement_view_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import managed_placement_view_service_client_config from google.ads.google_ads.v0.services.transports import managed_placement_view_service_grpc_transport from google.ads.google_ads.v0.proto.services import managed_placement_view_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/media_file_service_client.py b/google/ads/google_ads/v0/services/media_file_service_client.py index f4a56b581..8724b21af 100644 --- a/google/ads/google_ads/v0/services/media_file_service_client.py +++ b/google/ads/google_ads/v0/services/media_file_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import media_file_service_client_config from google.ads.google_ads.v0.services.transports import media_file_service_grpc_transport from google.ads.google_ads.v0.proto.services import media_file_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/parental_status_view_service_client.py b/google/ads/google_ads/v0/services/parental_status_view_service_client.py index 7b3617f5c..435a75c6a 100644 --- a/google/ads/google_ads/v0/services/parental_status_view_service_client.py +++ b/google/ads/google_ads/v0/services/parental_status_view_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import parental_status_view_service_client_config from google.ads.google_ads.v0.services.transports import parental_status_view_service_grpc_transport from google.ads.google_ads.v0.proto.services import parental_status_view_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/payments_account_service_client.py b/google/ads/google_ads/v0/services/payments_account_service_client.py new file mode 100644 index 000000000..87b8a610b --- /dev/null +++ b/google/ads/google_ads/v0/services/payments_account_service_client.py @@ -0,0 +1,202 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services PaymentsAccountService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import grpc + +from google.ads.google_ads.v0.services import payments_account_service_client_config +from google.ads.google_ads.v0.services.transports import payments_account_service_grpc_transport +from google.ads.google_ads.v0.proto.services import payments_account_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class PaymentsAccountServiceClient(object): + """ + Service to provide Payments accounts that can be used to set up consolidated + billing. + """ + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.PaymentsAccountService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + PaymentsAccountServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=payments_account_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.PaymentsAccountServiceGrpcTransport, + Callable[[~.Credentials, type], ~.PaymentsAccountServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=payments_account_service_grpc_transport. + PaymentsAccountServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = payments_account_service_grpc_transport.PaymentsAccountServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def list_payments_accounts(self, + customer_id, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns all Payments accounts associated with all managers + between the login customer ID and specified serving customer in the + hierarchy, inclusive. + + Args: + customer_id (str): The ID of the customer to apply the PaymentsAccount list operation to. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.ListPaymentsAccountsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'list_payments_accounts' not in self._inner_api_calls: + self._inner_api_calls[ + 'list_payments_accounts'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.list_payments_accounts, + default_retry=self._method_configs['ListPaymentsAccounts'] + .retry, + default_timeout=self._method_configs[ + 'ListPaymentsAccounts'].timeout, + client_info=self._client_info, + ) + + request = payments_account_service_pb2.ListPaymentsAccountsRequest( + customer_id=customer_id, ) + return self._inner_api_calls['list_payments_accounts']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/payments_account_service_client_config.py b/google/ads/google_ads/v0/services/payments_account_service_client_config.py new file mode 100644 index 000000000..4407ecba5 --- /dev/null +++ b/google/ads/google_ads/v0/services/payments_account_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.PaymentsAccountService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "ListPaymentsAccounts": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/product_group_view_service_client.py b/google/ads/google_ads/v0/services/product_group_view_service_client.py index a868a23c7..a7c2f6229 100644 --- a/google/ads/google_ads/v0/services/product_group_view_service_client.py +++ b/google/ads/google_ads/v0/services/product_group_view_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import product_group_view_service_client_config from google.ads.google_ads.v0.services.transports import product_group_view_service_grpc_transport from google.ads.google_ads.v0.proto.services import product_group_view_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/recommendation_service_client.py b/google/ads/google_ads/v0/services/recommendation_service_client.py index e4b385cd3..e2262c8ac 100644 --- a/google/ads/google_ads/v0/services/recommendation_service_client.py +++ b/google/ads/google_ads/v0/services/recommendation_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import recommendation_service_client_config from google.ads.google_ads.v0.services.transports import recommendation_service_grpc_transport from google.ads.google_ads.v0.proto.services import recommendation_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version @@ -208,6 +209,7 @@ def get_recommendation(self, def apply_recommendation(self, customer_id, + partial_failure, operations, retry=google.api_core.gapic_v1.method.DEFAULT, timeout=google.api_core.gapic_v1.method.DEFAULT, @@ -217,7 +219,13 @@ def apply_recommendation(self, Args: customer_id (str): The ID of the customer with the recommendation. + partial_failure (bool): If true, successful operations will be carried out and invalid + operations will return errors. If false, operations will be carried + out as a transaction if and only if they are all valid. + Default is false. operations (list[Union[dict, ~google.ads.google_ads.v0.types.ApplyRecommendationOperation]]): The list of operations to apply recommendations. + If partial_failure=false all recommendations should be of the same type + There is a limit of 100 operations per request. If a dict is provided, it must be of the same form as the protobuf message :class:`~google.ads.google_ads.v0.types.ApplyRecommendationOperation` retry (Optional[google.api_core.retry.Retry]): A retry object used @@ -253,7 +261,68 @@ def apply_recommendation(self, request = recommendation_service_pb2.ApplyRecommendationRequest( customer_id=customer_id, + partial_failure=partial_failure, operations=operations, ) return self._inner_api_calls['apply_recommendation']( request, retry=retry, timeout=timeout, metadata=metadata) + + def dismiss_recommendation(self, + customer_id, + partial_failure, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Dismisses given recommendations. + + Args: + customer_id (str): The ID of the customer with the recommendation. + partial_failure (bool): If true, successful operations will be carried out and invalid + operations will return errors. If false, operations will be carried in a + single transaction if and only if they are all valid. + Default is false. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.DismissRecommendationOperation]]): The list of operations to dismiss recommendations. + If partial_failure=false all recommendations should be of the same type + There is a limit of 100 operations per request. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.DismissRecommendationOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.DismissRecommendationResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'dismiss_recommendation' not in self._inner_api_calls: + self._inner_api_calls[ + 'dismiss_recommendation'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.dismiss_recommendation, + default_retry=self._method_configs['DismissRecommendation'] + .retry, + default_timeout=self._method_configs[ + 'DismissRecommendation'].timeout, + client_info=self._client_info, + ) + + request = recommendation_service_pb2.DismissRecommendationRequest( + customer_id=customer_id, + partial_failure=partial_failure, + operations=operations, + ) + return self._inner_api_calls['dismiss_recommendation']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/recommendation_service_client_config.py b/google/ads/google_ads/v0/services/recommendation_service_client_config.py index 943fced1c..deb019aa7 100644 --- a/google/ads/google_ads/v0/services/recommendation_service_client_config.py +++ b/google/ads/google_ads/v0/services/recommendation_service_client_config.py @@ -26,6 +26,11 @@ "timeout_millis": 600000, "retry_codes_name": "non_idempotent", "retry_params_name": "default" + }, + "DismissRecommendation": { + "timeout_millis": 600000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" } } } diff --git a/google/ads/google_ads/v0/services/search_term_view_service_client.py b/google/ads/google_ads/v0/services/search_term_view_service_client.py new file mode 100644 index 000000000..4c13ba863 --- /dev/null +++ b/google/ads/google_ads/v0/services/search_term_view_service_client.py @@ -0,0 +1,208 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services SearchTermViewService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import search_term_view_service_client_config +from google.ads.google_ads.v0.services.transports import search_term_view_service_grpc_transport +from google.ads.google_ads.v0.proto.services import search_term_view_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class SearchTermViewServiceClient(object): + """Service to manage search term views.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.SearchTermViewService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + SearchTermViewServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def search_term_view_path(cls, customer, search_term_view): + """Return a fully-qualified search_term_view string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/searchTermViews/{search_term_view}', + customer=customer, + search_term_view=search_term_view, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=search_term_view_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.SearchTermViewServiceGrpcTransport, + Callable[[~.Credentials, type], ~.SearchTermViewServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=search_term_view_service_grpc_transport. + SearchTermViewServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = search_term_view_service_grpc_transport.SearchTermViewServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_search_term_view(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the attributes of the requested search term view. + + Args: + resource_name (str): The resource name of the search term view to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.SearchTermView` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_search_term_view' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_search_term_view'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_search_term_view, + default_retry=self._method_configs[ + 'GetSearchTermView'].retry, + default_timeout=self._method_configs['GetSearchTermView'] + .timeout, + client_info=self._client_info, + ) + + request = search_term_view_service_pb2.GetSearchTermViewRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_search_term_view']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/search_term_view_service_client_config.py b/google/ads/google_ads/v0/services/search_term_view_service_client_config.py new file mode 100644 index 000000000..a4559c370 --- /dev/null +++ b/google/ads/google_ads/v0/services/search_term_view_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.SearchTermViewService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetSearchTermView": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/shared_criterion_service_client.py b/google/ads/google_ads/v0/services/shared_criterion_service_client.py index 6bf32331a..7bcb1d81c 100644 --- a/google/ads/google_ads/v0/services/shared_criterion_service_client.py +++ b/google/ads/google_ads/v0/services/shared_criterion_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import shared_criterion_service_client_config from google.ads.google_ads.v0.services.transports import shared_criterion_service_grpc_transport from google.ads.google_ads.v0.proto.services import shared_criterion_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/shared_set_service_client.py b/google/ads/google_ads/v0/services/shared_set_service_client.py index 804751f2d..86e947ae9 100644 --- a/google/ads/google_ads/v0/services/shared_set_service_client.py +++ b/google/ads/google_ads/v0/services/shared_set_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import shared_set_service_client_config from google.ads.google_ads.v0.services.transports import shared_set_service_grpc_transport from google.ads.google_ads.v0.proto.services import shared_set_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/topic_constant_service_client.py b/google/ads/google_ads/v0/services/topic_constant_service_client.py index 4388ba73f..b06ca9eb2 100644 --- a/google/ads/google_ads/v0/services/topic_constant_service_client.py +++ b/google/ads/google_ads/v0/services/topic_constant_service_client.py @@ -24,116 +24,9 @@ import google.api_core.path_template import grpc -from google.ads.google_ads.v0.services import enums from google.ads.google_ads.v0.services import topic_constant_service_client_config from google.ads.google_ads.v0.services.transports import topic_constant_service_grpc_transport -from google.ads.google_ads.v0.proto.resources import account_budget_pb2 -from google.ads.google_ads.v0.proto.resources import account_budget_proposal_pb2 -from google.ads.google_ads.v0.proto.resources import ad_group_ad_pb2 -from google.ads.google_ads.v0.proto.resources import ad_group_audience_view_pb2 -from google.ads.google_ads.v0.proto.resources import ad_group_bid_modifier_pb2 -from google.ads.google_ads.v0.proto.resources import ad_group_criterion_pb2 -from google.ads.google_ads.v0.proto.resources import ad_group_pb2 -from google.ads.google_ads.v0.proto.resources import age_range_view_pb2 -from google.ads.google_ads.v0.proto.resources import bidding_strategy_pb2 -from google.ads.google_ads.v0.proto.resources import billing_setup_pb2 -from google.ads.google_ads.v0.proto.resources import campaign_bid_modifier_pb2 -from google.ads.google_ads.v0.proto.resources import campaign_budget_pb2 -from google.ads.google_ads.v0.proto.resources import campaign_criterion_pb2 -from google.ads.google_ads.v0.proto.resources import campaign_group_pb2 -from google.ads.google_ads.v0.proto.resources import campaign_pb2 -from google.ads.google_ads.v0.proto.resources import campaign_shared_set_pb2 -from google.ads.google_ads.v0.proto.resources import change_status_pb2 -from google.ads.google_ads.v0.proto.resources import conversion_action_pb2 -from google.ads.google_ads.v0.proto.resources import customer_client_link_pb2 -from google.ads.google_ads.v0.proto.resources import customer_manager_link_pb2 -from google.ads.google_ads.v0.proto.resources import customer_pb2 -from google.ads.google_ads.v0.proto.resources import display_keyword_view_pb2 -from google.ads.google_ads.v0.proto.resources import gender_view_pb2 -from google.ads.google_ads.v0.proto.resources import geo_target_constant_pb2 -from google.ads.google_ads.v0.proto.resources import google_ads_field_pb2 -from google.ads.google_ads.v0.proto.resources import hotel_group_view_pb2 -from google.ads.google_ads.v0.proto.resources import keyword_view_pb2 -from google.ads.google_ads.v0.proto.resources import managed_placement_view_pb2 -from google.ads.google_ads.v0.proto.resources import media_file_pb2 -from google.ads.google_ads.v0.proto.resources import parental_status_view_pb2 -from google.ads.google_ads.v0.proto.resources import product_group_view_pb2 -from google.ads.google_ads.v0.proto.resources import recommendation_pb2 -from google.ads.google_ads.v0.proto.resources import shared_criterion_pb2 -from google.ads.google_ads.v0.proto.resources import shared_set_pb2 -from google.ads.google_ads.v0.proto.resources import topic_constant_pb2 -from google.ads.google_ads.v0.proto.services import account_budget_proposal_service_pb2 -from google.ads.google_ads.v0.proto.services import account_budget_proposal_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import account_budget_service_pb2 -from google.ads.google_ads.v0.proto.services import account_budget_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import ad_group_ad_service_pb2 -from google.ads.google_ads.v0.proto.services import ad_group_ad_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import ad_group_audience_view_service_pb2 -from google.ads.google_ads.v0.proto.services import ad_group_audience_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import ad_group_bid_modifier_service_pb2 -from google.ads.google_ads.v0.proto.services import ad_group_bid_modifier_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import ad_group_criterion_service_pb2 -from google.ads.google_ads.v0.proto.services import ad_group_criterion_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import ad_group_service_pb2 -from google.ads.google_ads.v0.proto.services import ad_group_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import age_range_view_service_pb2 -from google.ads.google_ads.v0.proto.services import age_range_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import bidding_strategy_service_pb2 -from google.ads.google_ads.v0.proto.services import bidding_strategy_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import billing_setup_service_pb2 -from google.ads.google_ads.v0.proto.services import billing_setup_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import campaign_bid_modifier_service_pb2 -from google.ads.google_ads.v0.proto.services import campaign_bid_modifier_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import campaign_budget_service_pb2 -from google.ads.google_ads.v0.proto.services import campaign_budget_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import campaign_criterion_service_pb2 -from google.ads.google_ads.v0.proto.services import campaign_criterion_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import campaign_group_service_pb2 -from google.ads.google_ads.v0.proto.services import campaign_group_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import campaign_service_pb2 -from google.ads.google_ads.v0.proto.services import campaign_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import campaign_shared_set_service_pb2 -from google.ads.google_ads.v0.proto.services import campaign_shared_set_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import change_status_service_pb2 -from google.ads.google_ads.v0.proto.services import change_status_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import conversion_action_service_pb2 -from google.ads.google_ads.v0.proto.services import conversion_action_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import customer_client_link_service_pb2 -from google.ads.google_ads.v0.proto.services import customer_client_link_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import customer_manager_link_service_pb2 -from google.ads.google_ads.v0.proto.services import customer_manager_link_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import customer_service_pb2 -from google.ads.google_ads.v0.proto.services import customer_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import display_keyword_view_service_pb2 -from google.ads.google_ads.v0.proto.services import display_keyword_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import gender_view_service_pb2 -from google.ads.google_ads.v0.proto.services import gender_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import geo_target_constant_service_pb2 -from google.ads.google_ads.v0.proto.services import geo_target_constant_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import google_ads_field_service_pb2 -from google.ads.google_ads.v0.proto.services import google_ads_field_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import google_ads_service_pb2 -from google.ads.google_ads.v0.proto.services import google_ads_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import hotel_group_view_service_pb2 -from google.ads.google_ads.v0.proto.services import hotel_group_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import keyword_view_service_pb2 -from google.ads.google_ads.v0.proto.services import keyword_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import managed_placement_view_service_pb2 -from google.ads.google_ads.v0.proto.services import managed_placement_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import media_file_service_pb2 -from google.ads.google_ads.v0.proto.services import media_file_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import parental_status_view_service_pb2 -from google.ads.google_ads.v0.proto.services import parental_status_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import product_group_view_service_pb2 -from google.ads.google_ads.v0.proto.services import product_group_view_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import recommendation_service_pb2 -from google.ads.google_ads.v0.proto.services import recommendation_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import shared_criterion_service_pb2 -from google.ads.google_ads.v0.proto.services import shared_criterion_service_pb2_grpc -from google.ads.google_ads.v0.proto.services import shared_set_service_pb2 -from google.ads.google_ads.v0.proto.services import shared_set_service_pb2_grpc from google.ads.google_ads.v0.proto.services import topic_constant_service_pb2 -from google.ads.google_ads.v0.proto.services import topic_constant_service_pb2_grpc from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( diff --git a/google/ads/google_ads/v0/services/topic_view_service_client.py b/google/ads/google_ads/v0/services/topic_view_service_client.py index 4d10a9f7a..479ed70a4 100644 --- a/google/ads/google_ads/v0/services/topic_view_service_client.py +++ b/google/ads/google_ads/v0/services/topic_view_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import topic_view_service_client_config from google.ads.google_ads.v0.services.transports import topic_view_service_grpc_transport from google.ads.google_ads.v0.proto.services import topic_view_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/services/transports/ad_group_feed_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/ad_group_feed_service_grpc_transport.py new file mode 100644 index 000000000..c1b06eec6 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/ad_group_feed_service_grpc_transport.py @@ -0,0 +1,118 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import ad_group_feed_service_pb2_grpc + + +class AdGroupFeedServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services AdGroupFeedService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'ad_group_feed_service_stub': + ad_group_feed_service_pb2_grpc.AdGroupFeedServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_ad_group_feed(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested ad group feed in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['ad_group_feed_service_stub'].GetAdGroupFeed + + @property + def mutate_ad_group_feeds(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes ad group feeds. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['ad_group_feed_service_stub'].MutateAdGroupFeeds diff --git a/google/ads/google_ads/v0/services/transports/campaign_audience_view_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/campaign_audience_view_service_grpc_transport.py new file mode 100644 index 000000000..b36293265 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/campaign_audience_view_service_grpc_transport.py @@ -0,0 +1,106 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import campaign_audience_view_service_pb2_grpc + + +class CampaignAudienceViewServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services CampaignAudienceViewService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'campaign_audience_view_service_stub': + campaign_audience_view_service_pb2_grpc. + CampaignAudienceViewServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_campaign_audience_view(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested campaign audience view in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'campaign_audience_view_service_stub'].GetCampaignAudienceView diff --git a/google/ads/google_ads/v0/services/transports/campaign_feed_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/campaign_feed_service_grpc_transport.py new file mode 100644 index 000000000..4136b6602 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/campaign_feed_service_grpc_transport.py @@ -0,0 +1,118 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import campaign_feed_service_pb2_grpc + + +class CampaignFeedServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services CampaignFeedService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'campaign_feed_service_stub': + campaign_feed_service_pb2_grpc.CampaignFeedServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_campaign_feed(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested campaign feed in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['campaign_feed_service_stub'].GetCampaignFeed + + @property + def mutate_campaign_feeds(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes campaign feeds. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['campaign_feed_service_stub'].MutateCampaignFeeds diff --git a/google/ads/google_ads/v0/services/transports/carrier_constant_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/carrier_constant_service_grpc_transport.py new file mode 100644 index 000000000..a12219ec6 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/carrier_constant_service_grpc_transport.py @@ -0,0 +1,105 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import carrier_constant_service_pb2_grpc + + +class CarrierConstantServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services CarrierConstantService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'carrier_constant_service_stub': + carrier_constant_service_pb2_grpc.CarrierConstantServiceStub( + channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_carrier_constant(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested carrier constant in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['carrier_constant_service_stub'].GetCarrierConstant diff --git a/google/ads/google_ads/v0/services/transports/customer_client_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/customer_client_service_grpc_transport.py new file mode 100644 index 000000000..b5ea6d16c --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/customer_client_service_grpc_transport.py @@ -0,0 +1,105 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import customer_client_service_pb2_grpc + + +class CustomerClientServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services CustomerClientService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'customer_client_service_stub': + customer_client_service_pb2_grpc.CustomerClientServiceStub( + channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_customer_client(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested customer client in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['customer_client_service_stub'].GetCustomerClient diff --git a/google/ads/google_ads/v0/services/transports/customer_feed_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/customer_feed_service_grpc_transport.py new file mode 100644 index 000000000..358804940 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/customer_feed_service_grpc_transport.py @@ -0,0 +1,118 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import customer_feed_service_pb2_grpc + + +class CustomerFeedServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services CustomerFeedService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'customer_feed_service_stub': + customer_feed_service_pb2_grpc.CustomerFeedServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_customer_feed(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested customer feed in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['customer_feed_service_stub'].GetCustomerFeed + + @property + def mutate_customer_feeds(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes customer feeds. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['customer_feed_service_stub'].MutateCustomerFeeds diff --git a/google/ads/google_ads/v0/services/transports/customer_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/customer_service_grpc_transport.py index 45f5339d9..df985ee5e 100644 --- a/google/ads/google_ads/v0/services/transports/customer_service_grpc_transport.py +++ b/google/ads/google_ads/v0/services/transports/customer_service_grpc_transport.py @@ -103,6 +103,19 @@ def get_customer(self): """ return self._stubs['customer_service_stub'].GetCustomer + @property + def mutate_customer(self): + """Return the gRPC stub for {$apiMethod.name}. + + Updates a customer. Operation statuses are returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['customer_service_stub'].MutateCustomer + @property def list_accessible_customers(self): """Return the gRPC stub for {$apiMethod.name}. @@ -116,3 +129,16 @@ def list_accessible_customers(self): deserialized response object. """ return self._stubs['customer_service_stub'].ListAccessibleCustomers + + @property + def create_customer_client(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates a new client under manager. The new client customer is returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['customer_service_stub'].CreateCustomerClient diff --git a/google/ads/google_ads/v0/services/transports/feed_item_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/feed_item_service_grpc_transport.py new file mode 100644 index 000000000..b3e9477d6 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/feed_item_service_grpc_transport.py @@ -0,0 +1,118 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import feed_item_service_pb2_grpc + + +class FeedItemServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services FeedItemService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'feed_item_service_stub': + feed_item_service_pb2_grpc.FeedItemServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_feed_item(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested feed item in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['feed_item_service_stub'].GetFeedItem + + @property + def mutate_feed_items(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes feed items. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['feed_item_service_stub'].MutateFeedItems diff --git a/google/ads/google_ads/v0/services/transports/feed_mapping_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/feed_mapping_service_grpc_transport.py new file mode 100644 index 000000000..52020d0b1 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/feed_mapping_service_grpc_transport.py @@ -0,0 +1,118 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import feed_mapping_service_pb2_grpc + + +class FeedMappingServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services FeedMappingService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'feed_mapping_service_stub': + feed_mapping_service_pb2_grpc.FeedMappingServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_feed_mapping(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested feed mapping in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['feed_mapping_service_stub'].GetFeedMapping + + @property + def mutate_feed_mappings(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates or removes feed mappings. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['feed_mapping_service_stub'].MutateFeedMappings diff --git a/google/ads/google_ads/v0/services/transports/feed_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/feed_service_grpc_transport.py new file mode 100644 index 000000000..9b7c68d7a --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/feed_service_grpc_transport.py @@ -0,0 +1,118 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import feed_service_pb2_grpc + + +class FeedServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services FeedService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'feed_service_stub': + feed_service_pb2_grpc.FeedServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_feed(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested feed in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['feed_service_stub'].GetFeed + + @property + def mutate_feeds(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes feeds. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['feed_service_stub'].MutateFeeds diff --git a/google/ads/google_ads/v0/services/transports/google_ads_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/google_ads_service_grpc_transport.py index fc71fe6af..d7a81c1cd 100644 --- a/google/ads/google_ads/v0/services/transports/google_ads_service_grpc_transport.py +++ b/google/ads/google_ads/v0/services/transports/google_ads_service_grpc_transport.py @@ -102,3 +102,16 @@ def search(self): deserialized response object. """ return self._stubs['google_ads_service_stub'].Search + + @property + def mutate(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes resources. Operation statuses are returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['google_ads_service_stub'].Mutate diff --git a/google/ads/google_ads/v0/services/transports/hotel_performance_view_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/hotel_performance_view_service_grpc_transport.py new file mode 100644 index 000000000..2d4e6b1a0 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/hotel_performance_view_service_grpc_transport.py @@ -0,0 +1,106 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import hotel_performance_view_service_pb2_grpc + + +class HotelPerformanceViewServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services HotelPerformanceViewService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'hotel_performance_view_service_stub': + hotel_performance_view_service_pb2_grpc. + HotelPerformanceViewServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_hotel_performance_view(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested Hotel Performance View in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'hotel_performance_view_service_stub'].GetHotelPerformanceView diff --git a/google/ads/google_ads/v0/services/transports/keyword_plan_ad_group_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/keyword_plan_ad_group_service_grpc_transport.py new file mode 100644 index 000000000..3d3f039a2 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/keyword_plan_ad_group_service_grpc_transport.py @@ -0,0 +1,121 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import keyword_plan_ad_group_service_pb2_grpc + + +class KeywordPlanAdGroupServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services KeywordPlanAdGroupService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'keyword_plan_ad_group_service_stub': + keyword_plan_ad_group_service_pb2_grpc. + KeywordPlanAdGroupServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_keyword_plan_ad_group(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested Keyword Plan ad group in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_ad_group_service_stub'].GetKeywordPlanAdGroup + + @property + def mutate_keyword_plan_ad_groups(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes Keyword Plan ad groups. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_ad_group_service_stub'].MutateKeywordPlanAdGroups diff --git a/google/ads/google_ads/v0/services/transports/keyword_plan_campaign_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/keyword_plan_campaign_service_grpc_transport.py new file mode 100644 index 000000000..9ed3d2673 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/keyword_plan_campaign_service_grpc_transport.py @@ -0,0 +1,121 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import keyword_plan_campaign_service_pb2_grpc + + +class KeywordPlanCampaignServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services KeywordPlanCampaignService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'keyword_plan_campaign_service_stub': + keyword_plan_campaign_service_pb2_grpc. + KeywordPlanCampaignServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_keyword_plan_campaign(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested Keyword Plan campaign in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_campaign_service_stub'].GetKeywordPlanCampaign + + @property + def mutate_keyword_plan_campaigns(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes Keyword Plan campaigns. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_campaign_service_stub'].MutateKeywordPlanCampaigns diff --git a/google/ads/google_ads/v0/services/transports/keyword_plan_idea_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/keyword_plan_idea_service_grpc_transport.py new file mode 100644 index 000000000..2cc081120 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/keyword_plan_idea_service_grpc_transport.py @@ -0,0 +1,106 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import keyword_plan_idea_service_pb2_grpc + + +class KeywordPlanIdeaServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services KeywordPlanIdeaService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'keyword_plan_idea_service_stub': + keyword_plan_idea_service_pb2_grpc.KeywordPlanIdeaServiceStub( + channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def generate_keyword_ideas(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns a list of keyword ideas. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_idea_service_stub'].GenerateKeywordIdeas diff --git a/google/ads/google_ads/v0/services/transports/keyword_plan_keyword_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/keyword_plan_keyword_service_grpc_transport.py new file mode 100644 index 000000000..ff098ca93 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/keyword_plan_keyword_service_grpc_transport.py @@ -0,0 +1,121 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import keyword_plan_keyword_service_pb2_grpc + + +class KeywordPlanKeywordServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services KeywordPlanKeywordService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'keyword_plan_keyword_service_stub': + keyword_plan_keyword_service_pb2_grpc. + KeywordPlanKeywordServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_keyword_plan_keyword(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested Keyword Plan keyword in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_keyword_service_stub'].GetKeywordPlanKeyword + + @property + def mutate_keyword_plan_keywords(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes Keyword Plan keywords. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_keyword_service_stub'].MutateKeywordPlanKeywords diff --git a/google/ads/google_ads/v0/services/transports/keyword_plan_negative_keyword_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/keyword_plan_negative_keyword_service_grpc_transport.py new file mode 100644 index 000000000..ccc9d3f1f --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/keyword_plan_negative_keyword_service_grpc_transport.py @@ -0,0 +1,121 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import keyword_plan_negative_keyword_service_pb2_grpc + + +class KeywordPlanNegativeKeywordServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services KeywordPlanNegativeKeywordService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'keyword_plan_negative_keyword_service_stub': + keyword_plan_negative_keyword_service_pb2_grpc. + KeywordPlanNegativeKeywordServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_keyword_plan_negative_keyword(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested plan in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_negative_keyword_service_stub'].GetKeywordPlanNegativeKeyword + + @property + def mutate_keyword_plan_negative_keywords(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes Keyword Plan negative keywords. Operation + statuses are returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_negative_keyword_service_stub'].MutateKeywordPlanNegativeKeywords diff --git a/google/ads/google_ads/v0/services/transports/keyword_plan_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/keyword_plan_service_grpc_transport.py new file mode 100644 index 000000000..1ffeb3cbf --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/keyword_plan_service_grpc_transport.py @@ -0,0 +1,145 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import keyword_plan_service_pb2_grpc + + +class KeywordPlanServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services KeywordPlanService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'keyword_plan_service_stub': + keyword_plan_service_pb2_grpc.KeywordPlanServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_keyword_plan(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested plan in full detail. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['keyword_plan_service_stub'].GetKeywordPlan + + @property + def mutate_keyword_plans(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates, updates, or removes keyword plans. Operation statuses are + returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['keyword_plan_service_stub'].MutateKeywordPlans + + @property + def generate_forecast_metrics(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested Keyword Plan forecasts. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['keyword_plan_service_stub'].GenerateForecastMetrics + + @property + def generate_historical_metrics(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested Keyword Plan historical metrics. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'keyword_plan_service_stub'].GenerateHistoricalMetrics diff --git a/google/ads/google_ads/v0/services/transports/language_constant_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/language_constant_service_grpc_transport.py new file mode 100644 index 000000000..49a59fc7b --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/language_constant_service_grpc_transport.py @@ -0,0 +1,106 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import language_constant_service_pb2_grpc + + +class LanguageConstantServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services LanguageConstantService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'language_constant_service_stub': + language_constant_service_pb2_grpc.LanguageConstantServiceStub( + channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_language_constant(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested language constant. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'language_constant_service_stub'].GetLanguageConstant diff --git a/google/ads/google_ads/v0/services/transports/payments_account_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/payments_account_service_grpc_transport.py new file mode 100644 index 000000000..be7149339 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/payments_account_service_grpc_transport.py @@ -0,0 +1,108 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import payments_account_service_pb2_grpc + + +class PaymentsAccountServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services PaymentsAccountService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'payments_account_service_stub': + payments_account_service_pb2_grpc.PaymentsAccountServiceStub( + channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def list_payments_accounts(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns all Payments accounts associated with all managers + between the login customer ID and specified serving customer in the + hierarchy, inclusive. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs[ + 'payments_account_service_stub'].ListPaymentsAccounts diff --git a/google/ads/google_ads/v0/services/transports/recommendation_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/recommendation_service_grpc_transport.py index 76e3957db..c04887e99 100644 --- a/google/ads/google_ads/v0/services/transports/recommendation_service_grpc_transport.py +++ b/google/ads/google_ads/v0/services/transports/recommendation_service_grpc_transport.py @@ -115,3 +115,16 @@ def apply_recommendation(self): deserialized response object. """ return self._stubs['recommendation_service_stub'].ApplyRecommendation + + @property + def dismiss_recommendation(self): + """Return the gRPC stub for {$apiMethod.name}. + + Dismisses given recommendations. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['recommendation_service_stub'].DismissRecommendation diff --git a/google/ads/google_ads/v0/services/transports/search_term_view_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/search_term_view_service_grpc_transport.py new file mode 100644 index 000000000..852b28109 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/search_term_view_service_grpc_transport.py @@ -0,0 +1,105 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import search_term_view_service_pb2_grpc + + +class SearchTermViewServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services SearchTermViewService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'search_term_view_service_stub': + search_term_view_service_pb2_grpc.SearchTermViewServiceStub( + channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_search_term_view(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the attributes of the requested search term view. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['search_term_view_service_stub'].GetSearchTermView diff --git a/google/ads/google_ads/v0/services/transports/user_interest_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/user_interest_service_grpc_transport.py new file mode 100644 index 000000000..36cbb3ba0 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/user_interest_service_grpc_transport.py @@ -0,0 +1,104 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import user_interest_service_pb2_grpc + + +class UserInterestServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services UserInterestService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'user_interest_service_stub': + user_interest_service_pb2_grpc.UserInterestServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_user_interest(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested user interest in full detail + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['user_interest_service_stub'].GetUserInterest diff --git a/google/ads/google_ads/v0/services/transports/user_list_service_grpc_transport.py b/google/ads/google_ads/v0/services/transports/user_list_service_grpc_transport.py new file mode 100644 index 000000000..f32eeb9f4 --- /dev/null +++ b/google/ads/google_ads/v0/services/transports/user_list_service_grpc_transport.py @@ -0,0 +1,117 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import google.api_core.grpc_helpers + +from google.ads.google_ads.v0.proto.services import user_list_service_pb2_grpc + + +class UserListServiceGrpcTransport(object): + """gRPC transport class providing stubs for + google.ads.googleads.v0.services UserListService API. + + The transport provides access to the raw gRPC stubs, + which can be used to take advantage of advanced + features of gRPC. + """ + # The scopes needed to make gRPC calls to all of the methods defined + # in this service. + _OAUTH_SCOPES = () + + def __init__(self, + channel=None, + credentials=None, + address='googleads.googleapis.com:443'): + """Instantiate the transport class. + + Args: + channel (grpc.Channel): A ``Channel`` instance through + which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + address (str): The address where the service is hosted. + """ + # If both `channel` and `credentials` are specified, raise an + # exception (channels come with credentials baked in already). + if channel is not None and credentials is not None: + raise ValueError( + 'The `channel` and `credentials` arguments are mutually ' + 'exclusive.', ) + + # Create the channel. + if channel is None: + channel = self.create_channel( + address=address, + credentials=credentials, + ) + + # gRPC uses objects called "stubs" that are bound to the + # channel and provide a basic method for each RPC. + self._stubs = { + 'user_list_service_stub': + user_list_service_pb2_grpc.UserListServiceStub(channel), + } + + @classmethod + def create_channel(cls, + address='googleads.googleapis.com:443', + credentials=None): + """Create and return a gRPC channel object. + + Args: + address (str): The host for the channel to use. + credentials (~.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If + none are specified, the client will attempt to ascertain + the credentials from the environment. + + Returns: + grpc.Channel: A gRPC channel object. + """ + return google.api_core.grpc_helpers.create_channel( + address, + credentials=credentials, + scopes=cls._OAUTH_SCOPES, + ) + + @property + def get_user_list(self): + """Return the gRPC stub for {$apiMethod.name}. + + Returns the requested user list. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['user_list_service_stub'].GetUserList + + @property + def mutate_user_lists(self): + """Return the gRPC stub for {$apiMethod.name}. + + Creates or updates user lists. Operation statuses are returned. + + Returns: + Callable: A callable which accepts the appropriate + deserialized request object and returns a + deserialized response object. + """ + return self._stubs['user_list_service_stub'].MutateUserLists diff --git a/google/ads/google_ads/v0/services/user_interest_service_client.py b/google/ads/google_ads/v0/services/user_interest_service_client.py new file mode 100644 index 000000000..d41ba445f --- /dev/null +++ b/google/ads/google_ads/v0/services/user_interest_service_client.py @@ -0,0 +1,208 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services UserInterestService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import user_interest_service_client_config +from google.ads.google_ads.v0.services.transports import user_interest_service_grpc_transport +from google.ads.google_ads.v0.proto.services import user_interest_service_pb2 +from google.protobuf import wrappers_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class UserInterestServiceClient(object): + """Service to fetch Google Ads User Interest.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.UserInterestService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + UserInterestServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def user_interest_path(cls, customer, user_interest): + """Return a fully-qualified user_interest string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/userInterests/{user_interest}', + customer=customer, + user_interest=user_interest, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=user_interest_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.UserInterestServiceGrpcTransport, + Callable[[~.Credentials, type], ~.UserInterestServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=user_interest_service_grpc_transport. + UserInterestServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = user_interest_service_grpc_transport.UserInterestServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_user_interest(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested user interest in full detail + + Args: + resource_name (str): Resource name of the UserInterest to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.UserInterest` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_user_interest' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_user_interest'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_user_interest, + default_retry=self._method_configs[ + 'GetUserInterest'].retry, + default_timeout=self._method_configs['GetUserInterest'] + .timeout, + client_info=self._client_info, + ) + + request = user_interest_service_pb2.GetUserInterestRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_user_interest']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/user_interest_service_client_config.py b/google/ads/google_ads/v0/services/user_interest_service_client_config.py new file mode 100644 index 000000000..32a56fe88 --- /dev/null +++ b/google/ads/google_ads/v0/services/user_interest_service_client_config.py @@ -0,0 +1,28 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.UserInterestService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetUserInterest": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/user_list_service_client.py b/google/ads/google_ads/v0/services/user_list_service_client.py new file mode 100644 index 000000000..f9a7b958e --- /dev/null +++ b/google/ads/google_ads/v0/services/user_list_service_client.py @@ -0,0 +1,258 @@ +# Copyright 2018 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Accesses the google.ads.googleads.v0.services UserListService API.""" + +import pkg_resources +import warnings + +from google.oauth2 import service_account +import google.api_core.gapic_v1.client_info +import google.api_core.gapic_v1.config +import google.api_core.gapic_v1.method +import google.api_core.grpc_helpers +import google.api_core.path_template +import grpc + +from google.ads.google_ads.v0.services import user_list_service_client_config +from google.ads.google_ads.v0.services.transports import user_list_service_grpc_transport +from google.ads.google_ads.v0.proto.services import user_list_service_pb2 + +_GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( + 'google-ads', ).version + + +class UserListServiceClient(object): + """Service to manage user lists.""" + + SERVICE_ADDRESS = 'googleads.googleapis.com:443' + """The default address of the service.""" + + # The name of the interface for this client. This is the key used to + # find the method configuration in the client_config dictionary. + _INTERFACE_NAME = 'google.ads.googleads.v0.services.UserListService' + + @classmethod + def from_service_account_file(cls, filename, *args, **kwargs): + """Creates an instance of this client using the provided credentials + file. + + Args: + filename (str): The path to the service account private key json + file. + args: Additional arguments to pass to the constructor. + kwargs: Additional arguments to pass to the constructor. + + Returns: + UserListServiceClient: The constructed client. + """ + credentials = service_account.Credentials.from_service_account_file( + filename) + kwargs['credentials'] = credentials + return cls(*args, **kwargs) + + from_service_account_json = from_service_account_file + + @classmethod + def user_list_path(cls, customer, user_list): + """Return a fully-qualified user_list string.""" + return google.api_core.path_template.expand( + 'customers/{customer}/userLists/{user_list}', + customer=customer, + user_list=user_list, + ) + + def __init__(self, + transport=None, + channel=None, + credentials=None, + client_config=user_list_service_client_config.config, + client_info=None): + """Constructor. + + Args: + transport (Union[~.UserListServiceGrpcTransport, + Callable[[~.Credentials, type], ~.UserListServiceGrpcTransport]): A transport + instance, responsible for actually making the API calls. + The default transport uses the gRPC protocol. + This argument may also be a callable which returns a + transport instance. Callables will be sent the credentials + as the first argument and the default transport class as + the second argument. + channel (grpc.Channel): DEPRECATED. A ``Channel`` instance + through which to make calls. This argument is mutually exclusive + with ``credentials``; providing both will raise an exception. + credentials (google.auth.credentials.Credentials): The + authorization credentials to attach to requests. These + credentials identify this application to the service. If none + are specified, the client will attempt to ascertain the + credentials from the environment. + This argument is mutually exclusive with providing a + transport instance to ``transport``; doing so will raise + an exception. + client_config (dict): DEPRECATED. A dictionary of call options for + each method. If not specified, the default configuration is used. + client_info (google.api_core.gapic_v1.client_info.ClientInfo): + The client info used to send a user-agent string along with + API requests. If ``None``, then default info will be used. + Generally, you only need to set this if you're developing + your own client library. + """ + # Raise deprecation warnings for things we want to go away. + if client_config: + warnings.warn('The `client_config` argument is deprecated.', + PendingDeprecationWarning) + if channel: + warnings.warn( + 'The `channel` argument is deprecated; use ' + '`transport` instead.', PendingDeprecationWarning) + + # Instantiate the transport. + # The transport is responsible for handling serialization and + # deserialization and actually sending data to the service. + if transport: + if callable(transport): + self.transport = transport( + credentials=credentials, + default_class=user_list_service_grpc_transport. + UserListServiceGrpcTransport, + ) + else: + if credentials: + raise ValueError( + 'Received both a transport instance and ' + 'credentials; these are mutually exclusive.') + self.transport = transport + else: + self.transport = user_list_service_grpc_transport.UserListServiceGrpcTransport( + address=self.SERVICE_ADDRESS, + channel=channel, + credentials=credentials, + ) + + if client_info is None: + client_info = ( + google.api_core.gapic_v1.client_info.DEFAULT_CLIENT_INFO) + client_info.gapic_version = _GAPIC_LIBRARY_VERSION + self._client_info = client_info + + # Parse out the default settings for retry and timeout for each RPC + # from the client configuration. + # (Ordinarily, these are the defaults specified in the `*_config.py` + # file next to this one.) + self._method_configs = google.api_core.gapic_v1.config.parse_method_configs( + client_config['interfaces'][self._INTERFACE_NAME], ) + + # Save a dictionary of cached API call functions. + # These are the actual callables which invoke the proper + # transport methods, wrapped with `wrap_method` to add retry, + # timeout, and the like. + self._inner_api_calls = {} + + # Service calls + def get_user_list(self, + resource_name, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Returns the requested user list. + + Args: + resource_name (str): The resource name of the user list to fetch. + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.UserList` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'get_user_list' not in self._inner_api_calls: + self._inner_api_calls[ + 'get_user_list'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.get_user_list, + default_retry=self._method_configs['GetUserList'].retry, + default_timeout=self._method_configs['GetUserList'] + .timeout, + client_info=self._client_info, + ) + + request = user_list_service_pb2.GetUserListRequest( + resource_name=resource_name, ) + return self._inner_api_calls['get_user_list']( + request, retry=retry, timeout=timeout, metadata=metadata) + + def mutate_user_lists(self, + customer_id, + operations, + retry=google.api_core.gapic_v1.method.DEFAULT, + timeout=google.api_core.gapic_v1.method.DEFAULT, + metadata=None): + """ + Creates or updates user lists. Operation statuses are returned. + + Args: + customer_id (str): The ID of the customer whose user lists are being modified. + operations (list[Union[dict, ~google.ads.google_ads.v0.types.UserListOperation]]): The list of operations to perform on individual user lists. + If a dict is provided, it must be of the same form as the protobuf + message :class:`~google.ads.google_ads.v0.types.UserListOperation` + retry (Optional[google.api_core.retry.Retry]): A retry object used + to retry requests. If ``None`` is specified, requests will not + be retried. + timeout (Optional[float]): The amount of time, in seconds, to wait + for the request to complete. Note that if ``retry`` is + specified, the timeout applies to each individual attempt. + metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata + that is provided to the method. + + Returns: + A :class:`~google.ads.google_ads.v0.types.MutateUserListsResponse` instance. + + Raises: + google.api_core.exceptions.GoogleAPICallError: If the request + failed for any reason. + google.api_core.exceptions.RetryError: If the request failed due + to a retryable error and retry attempts failed. + ValueError: If the parameters are invalid. + """ + # Wrap the transport method to add retry and timeout logic. + if 'mutate_user_lists' not in self._inner_api_calls: + self._inner_api_calls[ + 'mutate_user_lists'] = google.api_core.gapic_v1.method.wrap_method( + self.transport.mutate_user_lists, + default_retry=self._method_configs[ + 'MutateUserLists'].retry, + default_timeout=self._method_configs['MutateUserLists'] + .timeout, + client_info=self._client_info, + ) + + request = user_list_service_pb2.MutateUserListsRequest( + customer_id=customer_id, + operations=operations, + ) + return self._inner_api_calls['mutate_user_lists']( + request, retry=retry, timeout=timeout, metadata=metadata) diff --git a/google/ads/google_ads/v0/services/user_list_service_client_config.py b/google/ads/google_ads/v0/services/user_list_service_client_config.py new file mode 100644 index 000000000..45aabbe9a --- /dev/null +++ b/google/ads/google_ads/v0/services/user_list_service_client_config.py @@ -0,0 +1,33 @@ +config = { + "interfaces": { + "google.ads.googleads.v0.services.UserListService": { + "retry_codes": { + "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "non_idempotent": [] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 20000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 20000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetUserList": { + "timeout_millis": 60000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "MutateUserLists": { + "timeout_millis": 60000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/google/ads/google_ads/v0/services/video_service_client.py b/google/ads/google_ads/v0/services/video_service_client.py index 22f94c082..84cb0e8a0 100644 --- a/google/ads/google_ads/v0/services/video_service_client.py +++ b/google/ads/google_ads/v0/services/video_service_client.py @@ -27,6 +27,7 @@ from google.ads.google_ads.v0.services import video_service_client_config from google.ads.google_ads.v0.services.transports import video_service_grpc_transport from google.ads.google_ads.v0.proto.services import video_service_pb2 +from google.protobuf import wrappers_pb2 _GAPIC_LIBRARY_VERSION = pkg_resources.get_distribution( 'google-ads', ).version diff --git a/google/ads/google_ads/v0/types.py b/google/ads/google_ads/v0/types.py index 26957a27b..2ea6b661a 100644 --- a/google/ads/google_ads/v0/types.py +++ b/google/ads/google_ads/v0/types.py @@ -20,14 +20,25 @@ from google.ads.google_ads.v0.proto.common import ad_type_infos_pb2 from google.ads.google_ads.v0.proto.common import bidding_pb2 from google.ads.google_ads.v0.proto.common import criteria_pb2 +from google.ads.google_ads.v0.proto.common import criterion_category_availability_pb2 from google.ads.google_ads.v0.proto.common import custom_parameter_pb2 +from google.ads.google_ads.v0.proto.common import dates_pb2 +from google.ads.google_ads.v0.proto.common import explorer_auto_optimizer_setting_pb2 +from google.ads.google_ads.v0.proto.common import feed_common_pb2 +from google.ads.google_ads.v0.proto.common import frequency_cap_pb2 +from google.ads.google_ads.v0.proto.common import keyword_plan_common_pb2 +from google.ads.google_ads.v0.proto.common import matching_function_pb2 from google.ads.google_ads.v0.proto.common import metrics_pb2 from google.ads.google_ads.v0.proto.common import policy_pb2 +from google.ads.google_ads.v0.proto.common import real_time_bidding_setting_pb2 from google.ads.google_ads.v0.proto.common import tag_snippet_pb2 +from google.ads.google_ads.v0.proto.common import user_lists_pb2 from google.ads.google_ads.v0.proto.common import value_pb2 +from google.ads.google_ads.v0.proto.enums import access_reason_pb2 from google.ads.google_ads.v0.proto.enums import account_budget_proposal_status_pb2 from google.ads.google_ads.v0.proto.enums import account_budget_proposal_type_pb2 from google.ads.google_ads.v0.proto.enums import account_budget_status_pb2 +from google.ads.google_ads.v0.proto.enums import ad_customizer_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import ad_group_ad_rotation_mode_pb2 from google.ads.google_ads.v0.proto.enums import ad_group_ad_status_pb2 from google.ads.google_ads.v0.proto.enums import ad_group_criterion_status_pb2 @@ -38,7 +49,9 @@ from google.ads.google_ads.v0.proto.enums import ad_type_pb2 from google.ads.google_ads.v0.proto.enums import advertising_channel_sub_type_pb2 from google.ads.google_ads.v0.proto.enums import advertising_channel_type_pb2 +from google.ads.google_ads.v0.proto.enums import affiliate_location_feed_relationship_type_pb2 from google.ads.google_ads.v0.proto.enums import age_range_type_pb2 +from google.ads.google_ads.v0.proto.enums import app_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import attribution_model_pb2 from google.ads.google_ads.v0.proto.enums import bid_modifier_source_pb2 from google.ads.google_ads.v0.proto.enums import bidding_source_pb2 @@ -47,57 +60,102 @@ from google.ads.google_ads.v0.proto.enums import budget_delivery_method_pb2 from google.ads.google_ads.v0.proto.enums import budget_status_pb2 from google.ads.google_ads.v0.proto.enums import call_conversion_reporting_state_pb2 +from google.ads.google_ads.v0.proto.enums import call_placeholder_field_pb2 +from google.ads.google_ads.v0.proto.enums import callout_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import campaign_group_status_pb2 from google.ads.google_ads.v0.proto.enums import campaign_serving_status_pb2 from google.ads.google_ads.v0.proto.enums import campaign_shared_set_status_pb2 from google.ads.google_ads.v0.proto.enums import campaign_status_pb2 from google.ads.google_ads.v0.proto.enums import change_status_operation_pb2 from google.ads.google_ads.v0.proto.enums import change_status_resource_type_pb2 +from google.ads.google_ads.v0.proto.enums import content_label_type_pb2 from google.ads.google_ads.v0.proto.enums import conversion_action_category_pb2 from google.ads.google_ads.v0.proto.enums import conversion_action_counting_type_pb2 from google.ads.google_ads.v0.proto.enums import conversion_action_status_pb2 from google.ads.google_ads.v0.proto.enums import conversion_action_type_pb2 +from google.ads.google_ads.v0.proto.enums import criterion_category_channel_availability_mode_pb2 +from google.ads.google_ads.v0.proto.enums import criterion_category_locale_availability_mode_pb2 from google.ads.google_ads.v0.proto.enums import criterion_type_pb2 +from google.ads.google_ads.v0.proto.enums import custom_placeholder_field_pb2 +from google.ads.google_ads.v0.proto.enums import customer_match_upload_key_type_pb2 from google.ads.google_ads.v0.proto.enums import data_driven_model_status_pb2 from google.ads.google_ads.v0.proto.enums import day_of_week_pb2 from google.ads.google_ads.v0.proto.enums import device_pb2 from google.ads.google_ads.v0.proto.enums import display_ad_format_setting_pb2 +from google.ads.google_ads.v0.proto.enums import education_placeholder_field_pb2 +from google.ads.google_ads.v0.proto.enums import feed_attribute_type_pb2 +from google.ads.google_ads.v0.proto.enums import feed_item_status_pb2 +from google.ads.google_ads.v0.proto.enums import feed_link_status_pb2 +from google.ads.google_ads.v0.proto.enums import feed_mapping_criterion_type_pb2 +from google.ads.google_ads.v0.proto.enums import feed_mapping_status_pb2 +from google.ads.google_ads.v0.proto.enums import feed_origin_pb2 +from google.ads.google_ads.v0.proto.enums import feed_status_pb2 +from google.ads.google_ads.v0.proto.enums import flight_placeholder_field_pb2 +from google.ads.google_ads.v0.proto.enums import frequency_cap_event_type_pb2 +from google.ads.google_ads.v0.proto.enums import frequency_cap_level_pb2 +from google.ads.google_ads.v0.proto.enums import frequency_cap_time_unit_pb2 from google.ads.google_ads.v0.proto.enums import gender_type_pb2 from google.ads.google_ads.v0.proto.enums import geo_target_constant_status_pb2 +from google.ads.google_ads.v0.proto.enums import geo_targeting_restriction_pb2 from google.ads.google_ads.v0.proto.enums import google_ads_field_category_pb2 from google.ads.google_ads.v0.proto.enums import google_ads_field_data_type_pb2 from google.ads.google_ads.v0.proto.enums import hotel_date_selection_type_pb2 +from google.ads.google_ads.v0.proto.enums import hotel_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import income_range_type_pb2 from google.ads.google_ads.v0.proto.enums import interaction_type_pb2 +from google.ads.google_ads.v0.proto.enums import job_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import keyword_match_type_pb2 +from google.ads.google_ads.v0.proto.enums import keyword_plan_competition_level_pb2 +from google.ads.google_ads.v0.proto.enums import keyword_plan_forecast_interval_pb2 +from google.ads.google_ads.v0.proto.enums import keyword_plan_network_pb2 from google.ads.google_ads.v0.proto.enums import listing_custom_attribute_index_pb2 from google.ads.google_ads.v0.proto.enums import listing_group_type_pb2 +from google.ads.google_ads.v0.proto.enums import local_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import manager_link_status_pb2 from google.ads.google_ads.v0.proto.enums import media_type_pb2 +from google.ads.google_ads.v0.proto.enums import message_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import mime_type_pb2 from google.ads.google_ads.v0.proto.enums import minute_of_hour_pb2 from google.ads.google_ads.v0.proto.enums import month_of_year_pb2 from google.ads.google_ads.v0.proto.enums import page_one_promoted_strategy_goal_pb2 from google.ads.google_ads.v0.proto.enums import parental_status_type_pb2 +from google.ads.google_ads.v0.proto.enums import placeholder_type_pb2 from google.ads.google_ads.v0.proto.enums import policy_approval_status_pb2 from google.ads.google_ads.v0.proto.enums import policy_review_status_pb2 from google.ads.google_ads.v0.proto.enums import policy_topic_entry_type_pb2 from google.ads.google_ads.v0.proto.enums import policy_topic_evidence_destination_mismatch_url_type_pb2 +from google.ads.google_ads.v0.proto.enums import preferred_content_type_pb2 +from google.ads.google_ads.v0.proto.enums import price_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import product_channel_exclusivity_pb2 from google.ads.google_ads.v0.proto.enums import product_channel_pb2 from google.ads.google_ads.v0.proto.enums import product_condition_pb2 from google.ads.google_ads.v0.proto.enums import product_type_level_pb2 +from google.ads.google_ads.v0.proto.enums import promotion_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import proximity_radius_units_pb2 from google.ads.google_ads.v0.proto.enums import quality_score_bucket_pb2 +from google.ads.google_ads.v0.proto.enums import real_estate_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import recommendation_type_pb2 +from google.ads.google_ads.v0.proto.enums import search_term_match_type_pb2 +from google.ads.google_ads.v0.proto.enums import search_term_targeting_status_pb2 from google.ads.google_ads.v0.proto.enums import shared_set_status_pb2 from google.ads.google_ads.v0.proto.enums import shared_set_type_pb2 +from google.ads.google_ads.v0.proto.enums import sitelink_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import slot_pb2 from google.ads.google_ads.v0.proto.enums import spending_limit_type_pb2 +from google.ads.google_ads.v0.proto.enums import structured_snippet_placeholder_field_pb2 from google.ads.google_ads.v0.proto.enums import target_cpa_opt_in_recommendation_goal_pb2 +from google.ads.google_ads.v0.proto.enums import targeting_dimension_pb2 from google.ads.google_ads.v0.proto.enums import time_type_pb2 from google.ads.google_ads.v0.proto.enums import tracking_code_page_format_pb2 from google.ads.google_ads.v0.proto.enums import tracking_code_type_pb2 +from google.ads.google_ads.v0.proto.enums import travel_placeholder_field_pb2 +from google.ads.google_ads.v0.proto.enums import user_interest_taxonomy_type_pb2 +from google.ads.google_ads.v0.proto.enums import user_list_access_status_pb2 +from google.ads.google_ads.v0.proto.enums import user_list_closing_reason_pb2 +from google.ads.google_ads.v0.proto.enums import user_list_crm_data_source_type_pb2 +from google.ads.google_ads.v0.proto.enums import user_list_membership_status_pb2 +from google.ads.google_ads.v0.proto.enums import user_list_size_range_pb2 +from google.ads.google_ads.v0.proto.enums import user_list_type_pb2 from google.ads.google_ads.v0.proto.errors import account_budget_proposal_error_pb2 from google.ads.google_ads.v0.proto.errors import ad_customizer_error_pb2 from google.ads.google_ads.v0.proto.errors import ad_error_pb2 @@ -105,6 +163,7 @@ from google.ads.google_ads.v0.proto.errors import ad_group_bid_modifier_error_pb2 from google.ads.google_ads.v0.proto.errors import ad_group_criterion_error_pb2 from google.ads.google_ads.v0.proto.errors import ad_group_error_pb2 +from google.ads.google_ads.v0.proto.errors import ad_group_feed_error_pb2 from google.ads.google_ads.v0.proto.errors import ad_sharing_error_pb2 from google.ads.google_ads.v0.proto.errors import adx_error_pb2 from google.ads.google_ads.v0.proto.errors import authentication_error_pb2 @@ -115,6 +174,7 @@ from google.ads.google_ads.v0.proto.errors import campaign_budget_error_pb2 from google.ads.google_ads.v0.proto.errors import campaign_criterion_error_pb2 from google.ads.google_ads.v0.proto.errors import campaign_error_pb2 +from google.ads.google_ads.v0.proto.errors import campaign_feed_error_pb2 from google.ads.google_ads.v0.proto.errors import campaign_group_error_pb2 from google.ads.google_ads.v0.proto.errors import campaign_shared_set_error_pb2 from google.ads.google_ads.v0.proto.errors import change_status_error_pb2 @@ -124,6 +184,7 @@ from google.ads.google_ads.v0.proto.errors import criterion_error_pb2 from google.ads.google_ads.v0.proto.errors import customer_client_link_error_pb2 from google.ads.google_ads.v0.proto.errors import customer_error_pb2 +from google.ads.google_ads.v0.proto.errors import customer_feed_error_pb2 from google.ads.google_ads.v0.proto.errors import customer_manager_link_error_pb2 from google.ads.google_ads.v0.proto.errors import database_error_pb2 from google.ads.google_ads.v0.proto.errors import date_error_pb2 @@ -132,6 +193,9 @@ from google.ads.google_ads.v0.proto.errors import enum_error_pb2 from google.ads.google_ads.v0.proto.errors import errors_pb2 from google.ads.google_ads.v0.proto.errors import feed_attribute_reference_error_pb2 +from google.ads.google_ads.v0.proto.errors import feed_error_pb2 +from google.ads.google_ads.v0.proto.errors import feed_item_error_pb2 +from google.ads.google_ads.v0.proto.errors import feed_mapping_error_pb2 from google.ads.google_ads.v0.proto.errors import field_error_pb2 from google.ads.google_ads.v0.proto.errors import field_mask_error_pb2 from google.ads.google_ads.v0.proto.errors import function_error_pb2 @@ -141,6 +205,12 @@ from google.ads.google_ads.v0.proto.errors import id_error_pb2 from google.ads.google_ads.v0.proto.errors import image_error_pb2 from google.ads.google_ads.v0.proto.errors import internal_error_pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_ad_group_error_pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_campaign_error_pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_error_pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_idea_error_pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_keyword_error_pb2 +from google.ads.google_ads.v0.proto.errors import keyword_plan_negative_keyword_error_pb2 from google.ads.google_ads.v0.proto.errors import list_operation_error_pb2 from google.ads.google_ads.v0.proto.errors import media_bundle_error_pb2 from google.ads.google_ads.v0.proto.errors import media_file_error_pb2 @@ -166,43 +236,64 @@ from google.ads.google_ads.v0.proto.errors import string_format_error_pb2 from google.ads.google_ads.v0.proto.errors import string_length_error_pb2 from google.ads.google_ads.v0.proto.errors import url_field_error_pb2 +from google.ads.google_ads.v0.proto.errors import user_list_error_pb2 from google.ads.google_ads.v0.proto.resources import account_budget_pb2 from google.ads.google_ads.v0.proto.resources import account_budget_proposal_pb2 from google.ads.google_ads.v0.proto.resources import ad_group_ad_pb2 from google.ads.google_ads.v0.proto.resources import ad_group_audience_view_pb2 from google.ads.google_ads.v0.proto.resources import ad_group_bid_modifier_pb2 from google.ads.google_ads.v0.proto.resources import ad_group_criterion_pb2 +from google.ads.google_ads.v0.proto.resources import ad_group_feed_pb2 from google.ads.google_ads.v0.proto.resources import ad_group_pb2 from google.ads.google_ads.v0.proto.resources import ad_pb2 from google.ads.google_ads.v0.proto.resources import age_range_view_pb2 from google.ads.google_ads.v0.proto.resources import bidding_strategy_pb2 from google.ads.google_ads.v0.proto.resources import billing_setup_pb2 +from google.ads.google_ads.v0.proto.resources import campaign_audience_view_pb2 from google.ads.google_ads.v0.proto.resources import campaign_bid_modifier_pb2 from google.ads.google_ads.v0.proto.resources import campaign_budget_pb2 from google.ads.google_ads.v0.proto.resources import campaign_criterion_pb2 +from google.ads.google_ads.v0.proto.resources import campaign_feed_pb2 from google.ads.google_ads.v0.proto.resources import campaign_group_pb2 from google.ads.google_ads.v0.proto.resources import campaign_pb2 from google.ads.google_ads.v0.proto.resources import campaign_shared_set_pb2 +from google.ads.google_ads.v0.proto.resources import carrier_constant_pb2 from google.ads.google_ads.v0.proto.resources import change_status_pb2 from google.ads.google_ads.v0.proto.resources import conversion_action_pb2 from google.ads.google_ads.v0.proto.resources import customer_client_link_pb2 +from google.ads.google_ads.v0.proto.resources import customer_client_pb2 +from google.ads.google_ads.v0.proto.resources import customer_feed_pb2 from google.ads.google_ads.v0.proto.resources import customer_manager_link_pb2 from google.ads.google_ads.v0.proto.resources import customer_pb2 from google.ads.google_ads.v0.proto.resources import display_keyword_view_pb2 +from google.ads.google_ads.v0.proto.resources import feed_item_pb2 +from google.ads.google_ads.v0.proto.resources import feed_mapping_pb2 +from google.ads.google_ads.v0.proto.resources import feed_pb2 from google.ads.google_ads.v0.proto.resources import gender_view_pb2 from google.ads.google_ads.v0.proto.resources import geo_target_constant_pb2 from google.ads.google_ads.v0.proto.resources import google_ads_field_pb2 from google.ads.google_ads.v0.proto.resources import hotel_group_view_pb2 +from google.ads.google_ads.v0.proto.resources import hotel_performance_view_pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_ad_group_pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_campaign_pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_keyword_pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_negative_keyword_pb2 +from google.ads.google_ads.v0.proto.resources import keyword_plan_pb2 from google.ads.google_ads.v0.proto.resources import keyword_view_pb2 +from google.ads.google_ads.v0.proto.resources import language_constant_pb2 from google.ads.google_ads.v0.proto.resources import managed_placement_view_pb2 from google.ads.google_ads.v0.proto.resources import media_file_pb2 from google.ads.google_ads.v0.proto.resources import parental_status_view_pb2 +from google.ads.google_ads.v0.proto.resources import payments_account_pb2 from google.ads.google_ads.v0.proto.resources import product_group_view_pb2 from google.ads.google_ads.v0.proto.resources import recommendation_pb2 +from google.ads.google_ads.v0.proto.resources import search_term_view_pb2 from google.ads.google_ads.v0.proto.resources import shared_criterion_pb2 from google.ads.google_ads.v0.proto.resources import shared_set_pb2 from google.ads.google_ads.v0.proto.resources import topic_constant_pb2 from google.ads.google_ads.v0.proto.resources import topic_view_pb2 +from google.ads.google_ads.v0.proto.resources import user_interest_pb2 +from google.ads.google_ads.v0.proto.resources import user_list_pb2 from google.ads.google_ads.v0.proto.resources import video_pb2 from google.ads.google_ads.v0.proto.services import account_budget_proposal_service_pb2 from google.ads.google_ads.v0.proto.services import account_budget_service_pb2 @@ -210,37 +301,58 @@ from google.ads.google_ads.v0.proto.services import ad_group_audience_view_service_pb2 from google.ads.google_ads.v0.proto.services import ad_group_bid_modifier_service_pb2 from google.ads.google_ads.v0.proto.services import ad_group_criterion_service_pb2 +from google.ads.google_ads.v0.proto.services import ad_group_feed_service_pb2 from google.ads.google_ads.v0.proto.services import ad_group_service_pb2 from google.ads.google_ads.v0.proto.services import age_range_view_service_pb2 from google.ads.google_ads.v0.proto.services import bidding_strategy_service_pb2 from google.ads.google_ads.v0.proto.services import billing_setup_service_pb2 +from google.ads.google_ads.v0.proto.services import campaign_audience_view_service_pb2 from google.ads.google_ads.v0.proto.services import campaign_bid_modifier_service_pb2 from google.ads.google_ads.v0.proto.services import campaign_budget_service_pb2 from google.ads.google_ads.v0.proto.services import campaign_criterion_service_pb2 +from google.ads.google_ads.v0.proto.services import campaign_feed_service_pb2 from google.ads.google_ads.v0.proto.services import campaign_group_service_pb2 from google.ads.google_ads.v0.proto.services import campaign_service_pb2 from google.ads.google_ads.v0.proto.services import campaign_shared_set_service_pb2 +from google.ads.google_ads.v0.proto.services import carrier_constant_service_pb2 from google.ads.google_ads.v0.proto.services import change_status_service_pb2 from google.ads.google_ads.v0.proto.services import conversion_action_service_pb2 from google.ads.google_ads.v0.proto.services import customer_client_link_service_pb2 +from google.ads.google_ads.v0.proto.services import customer_client_service_pb2 +from google.ads.google_ads.v0.proto.services import customer_feed_service_pb2 from google.ads.google_ads.v0.proto.services import customer_manager_link_service_pb2 from google.ads.google_ads.v0.proto.services import customer_service_pb2 from google.ads.google_ads.v0.proto.services import display_keyword_view_service_pb2 +from google.ads.google_ads.v0.proto.services import feed_item_service_pb2 +from google.ads.google_ads.v0.proto.services import feed_mapping_service_pb2 +from google.ads.google_ads.v0.proto.services import feed_service_pb2 from google.ads.google_ads.v0.proto.services import gender_view_service_pb2 from google.ads.google_ads.v0.proto.services import geo_target_constant_service_pb2 from google.ads.google_ads.v0.proto.services import google_ads_field_service_pb2 from google.ads.google_ads.v0.proto.services import google_ads_service_pb2 from google.ads.google_ads.v0.proto.services import hotel_group_view_service_pb2 +from google.ads.google_ads.v0.proto.services import hotel_performance_view_service_pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_ad_group_service_pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_campaign_service_pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_idea_service_pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_keyword_service_pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_negative_keyword_service_pb2 +from google.ads.google_ads.v0.proto.services import keyword_plan_service_pb2 from google.ads.google_ads.v0.proto.services import keyword_view_service_pb2 +from google.ads.google_ads.v0.proto.services import language_constant_service_pb2 from google.ads.google_ads.v0.proto.services import managed_placement_view_service_pb2 from google.ads.google_ads.v0.proto.services import media_file_service_pb2 from google.ads.google_ads.v0.proto.services import parental_status_view_service_pb2 +from google.ads.google_ads.v0.proto.services import payments_account_service_pb2 from google.ads.google_ads.v0.proto.services import product_group_view_service_pb2 from google.ads.google_ads.v0.proto.services import recommendation_service_pb2 +from google.ads.google_ads.v0.proto.services import search_term_view_service_pb2 from google.ads.google_ads.v0.proto.services import shared_criterion_service_pb2 from google.ads.google_ads.v0.proto.services import shared_set_service_pb2 from google.ads.google_ads.v0.proto.services import topic_constant_service_pb2 from google.ads.google_ads.v0.proto.services import topic_view_service_pb2 +from google.ads.google_ads.v0.proto.services import user_interest_service_pb2 +from google.ads.google_ads.v0.proto.services import user_list_service_pb2 from google.ads.google_ads.v0.proto.services import video_service_pb2 from google.api import http_pb2 from google.protobuf import any_pb2 @@ -253,14 +365,25 @@ ad_type_infos_pb2, bidding_pb2, criteria_pb2, + criterion_category_availability_pb2, custom_parameter_pb2, + dates_pb2, + explorer_auto_optimizer_setting_pb2, + feed_common_pb2, + frequency_cap_pb2, + keyword_plan_common_pb2, + matching_function_pb2, metrics_pb2, policy_pb2, + real_time_bidding_setting_pb2, tag_snippet_pb2, + user_lists_pb2, value_pb2, + access_reason_pb2, account_budget_proposal_status_pb2, account_budget_proposal_type_pb2, account_budget_status_pb2, + ad_customizer_placeholder_field_pb2, ad_group_ad_rotation_mode_pb2, ad_group_ad_status_pb2, ad_group_criterion_status_pb2, @@ -271,7 +394,9 @@ ad_type_pb2, advertising_channel_sub_type_pb2, advertising_channel_type_pb2, + affiliate_location_feed_relationship_type_pb2, age_range_type_pb2, + app_placeholder_field_pb2, attribution_model_pb2, bid_modifier_source_pb2, bidding_source_pb2, @@ -280,57 +405,102 @@ budget_delivery_method_pb2, budget_status_pb2, call_conversion_reporting_state_pb2, + call_placeholder_field_pb2, + callout_placeholder_field_pb2, campaign_group_status_pb2, campaign_serving_status_pb2, campaign_shared_set_status_pb2, campaign_status_pb2, change_status_operation_pb2, change_status_resource_type_pb2, + content_label_type_pb2, conversion_action_category_pb2, conversion_action_counting_type_pb2, conversion_action_status_pb2, conversion_action_type_pb2, + criterion_category_channel_availability_mode_pb2, + criterion_category_locale_availability_mode_pb2, criterion_type_pb2, + custom_placeholder_field_pb2, + customer_match_upload_key_type_pb2, data_driven_model_status_pb2, day_of_week_pb2, device_pb2, display_ad_format_setting_pb2, + education_placeholder_field_pb2, + feed_attribute_type_pb2, + feed_item_status_pb2, + feed_link_status_pb2, + feed_mapping_criterion_type_pb2, + feed_mapping_status_pb2, + feed_origin_pb2, + feed_status_pb2, + flight_placeholder_field_pb2, + frequency_cap_event_type_pb2, + frequency_cap_level_pb2, + frequency_cap_time_unit_pb2, gender_type_pb2, geo_target_constant_status_pb2, + geo_targeting_restriction_pb2, google_ads_field_category_pb2, google_ads_field_data_type_pb2, hotel_date_selection_type_pb2, + hotel_placeholder_field_pb2, income_range_type_pb2, interaction_type_pb2, + job_placeholder_field_pb2, keyword_match_type_pb2, + keyword_plan_competition_level_pb2, + keyword_plan_forecast_interval_pb2, + keyword_plan_network_pb2, listing_custom_attribute_index_pb2, listing_group_type_pb2, + local_placeholder_field_pb2, manager_link_status_pb2, media_type_pb2, + message_placeholder_field_pb2, mime_type_pb2, minute_of_hour_pb2, month_of_year_pb2, page_one_promoted_strategy_goal_pb2, parental_status_type_pb2, + placeholder_type_pb2, policy_approval_status_pb2, policy_review_status_pb2, policy_topic_entry_type_pb2, policy_topic_evidence_destination_mismatch_url_type_pb2, + preferred_content_type_pb2, + price_placeholder_field_pb2, product_channel_exclusivity_pb2, product_channel_pb2, product_condition_pb2, product_type_level_pb2, + promotion_placeholder_field_pb2, proximity_radius_units_pb2, quality_score_bucket_pb2, + real_estate_placeholder_field_pb2, recommendation_type_pb2, + search_term_match_type_pb2, + search_term_targeting_status_pb2, shared_set_status_pb2, shared_set_type_pb2, + sitelink_placeholder_field_pb2, slot_pb2, spending_limit_type_pb2, + structured_snippet_placeholder_field_pb2, target_cpa_opt_in_recommendation_goal_pb2, + targeting_dimension_pb2, time_type_pb2, tracking_code_page_format_pb2, tracking_code_type_pb2, + travel_placeholder_field_pb2, + user_interest_taxonomy_type_pb2, + user_list_access_status_pb2, + user_list_closing_reason_pb2, + user_list_crm_data_source_type_pb2, + user_list_membership_status_pb2, + user_list_size_range_pb2, + user_list_type_pb2, account_budget_proposal_error_pb2, ad_customizer_error_pb2, ad_error_pb2, @@ -338,6 +508,7 @@ ad_group_bid_modifier_error_pb2, ad_group_criterion_error_pb2, ad_group_error_pb2, + ad_group_feed_error_pb2, ad_sharing_error_pb2, adx_error_pb2, authentication_error_pb2, @@ -348,6 +519,7 @@ campaign_budget_error_pb2, campaign_criterion_error_pb2, campaign_error_pb2, + campaign_feed_error_pb2, campaign_group_error_pb2, campaign_shared_set_error_pb2, change_status_error_pb2, @@ -357,6 +529,7 @@ criterion_error_pb2, customer_client_link_error_pb2, customer_error_pb2, + customer_feed_error_pb2, customer_manager_link_error_pb2, database_error_pb2, date_error_pb2, @@ -365,6 +538,9 @@ enum_error_pb2, errors_pb2, feed_attribute_reference_error_pb2, + feed_error_pb2, + feed_item_error_pb2, + feed_mapping_error_pb2, field_error_pb2, field_mask_error_pb2, function_error_pb2, @@ -374,6 +550,12 @@ id_error_pb2, image_error_pb2, internal_error_pb2, + keyword_plan_ad_group_error_pb2, + keyword_plan_campaign_error_pb2, + keyword_plan_error_pb2, + keyword_plan_idea_error_pb2, + keyword_plan_keyword_error_pb2, + keyword_plan_negative_keyword_error_pb2, list_operation_error_pb2, media_bundle_error_pb2, media_file_error_pb2, @@ -399,43 +581,64 @@ string_format_error_pb2, string_length_error_pb2, url_field_error_pb2, + user_list_error_pb2, account_budget_pb2, account_budget_proposal_pb2, ad_group_ad_pb2, ad_group_audience_view_pb2, ad_group_bid_modifier_pb2, ad_group_criterion_pb2, + ad_group_feed_pb2, ad_group_pb2, ad_pb2, age_range_view_pb2, bidding_strategy_pb2, billing_setup_pb2, + campaign_audience_view_pb2, campaign_bid_modifier_pb2, campaign_budget_pb2, campaign_criterion_pb2, + campaign_feed_pb2, campaign_group_pb2, campaign_pb2, campaign_shared_set_pb2, + carrier_constant_pb2, change_status_pb2, conversion_action_pb2, customer_client_link_pb2, + customer_client_pb2, + customer_feed_pb2, customer_manager_link_pb2, customer_pb2, display_keyword_view_pb2, + feed_item_pb2, + feed_mapping_pb2, + feed_pb2, gender_view_pb2, geo_target_constant_pb2, google_ads_field_pb2, hotel_group_view_pb2, + hotel_performance_view_pb2, + keyword_plan_ad_group_pb2, + keyword_plan_campaign_pb2, + keyword_plan_keyword_pb2, + keyword_plan_negative_keyword_pb2, + keyword_plan_pb2, keyword_view_pb2, + language_constant_pb2, managed_placement_view_pb2, media_file_pb2, parental_status_view_pb2, + payments_account_pb2, product_group_view_pb2, recommendation_pb2, + search_term_view_pb2, shared_criterion_pb2, shared_set_pb2, topic_constant_pb2, topic_view_pb2, + user_interest_pb2, + user_list_pb2, video_pb2, http_pb2, any_pb2, @@ -452,37 +655,58 @@ ad_group_audience_view_service_pb2, ad_group_bid_modifier_service_pb2, ad_group_criterion_service_pb2, + ad_group_feed_service_pb2, ad_group_service_pb2, age_range_view_service_pb2, bidding_strategy_service_pb2, billing_setup_service_pb2, + campaign_audience_view_service_pb2, campaign_bid_modifier_service_pb2, campaign_budget_service_pb2, campaign_criterion_service_pb2, + campaign_feed_service_pb2, campaign_group_service_pb2, campaign_service_pb2, campaign_shared_set_service_pb2, + carrier_constant_service_pb2, change_status_service_pb2, conversion_action_service_pb2, customer_client_link_service_pb2, + customer_client_service_pb2, + customer_feed_service_pb2, customer_manager_link_service_pb2, customer_service_pb2, display_keyword_view_service_pb2, + feed_item_service_pb2, + feed_mapping_service_pb2, + feed_service_pb2, gender_view_service_pb2, geo_target_constant_service_pb2, google_ads_field_service_pb2, google_ads_service_pb2, hotel_group_view_service_pb2, + hotel_performance_view_service_pb2, + keyword_plan_ad_group_service_pb2, + keyword_plan_campaign_service_pb2, + keyword_plan_idea_service_pb2, + keyword_plan_keyword_service_pb2, + keyword_plan_negative_keyword_service_pb2, + keyword_plan_service_pb2, keyword_view_service_pb2, + language_constant_service_pb2, managed_placement_view_service_pb2, media_file_service_pb2, parental_status_view_service_pb2, + payments_account_service_pb2, product_group_view_service_pb2, recommendation_service_pb2, + search_term_view_service_pb2, shared_criterion_service_pb2, shared_set_service_pb2, topic_constant_service_pb2, topic_view_service_pb2, + user_interest_service_pb2, + user_list_service_pb2, video_service_pb2, ] @@ -494,7 +718,7 @@ names.append(name) for module in _local_modules: for name, message in get_messages(module).items(): - message.__module__ = 'google.ads.googleads_v0.types' + message.__module__ = 'google.ads.google_ads.v0.types' setattr(sys.modules[__name__], name, message) names.append(name) diff --git a/setup.py b/setup.py index f0e0ff177..7a471f07a 100644 --- a/setup.py +++ b/setup.py @@ -33,7 +33,7 @@ setup( name='google-ads', - version='0.4.0', + version='0.5.0', author='Google LLC', author_email='googleapis-packages@google.com', classifiers=[ diff --git a/tests/client_test.py b/tests/client_test.py index aa9b3fe5c..80cbf8907 100644 --- a/tests/client_test.py +++ b/tests/client_test.py @@ -43,6 +43,101 @@ def setUp(self): self.client_id = 'client_id_123456789' self.client_secret = 'client_secret_987654321' self.refresh_token = 'refresh' + self.login_customer_id = '1234567890' + + def test_load_from_storage_login_customer_id(self): + config = { + 'developer_token': self.developer_token, + 'client_id': self.client_id, + 'client_secret': self.client_secret, + 'refresh_token': self.refresh_token, + 'login_customer_id': self.login_customer_id + } + + file_path = os.path.join(os.path.expanduser('~'), 'google-ads.yaml') + self.fs.create_file(file_path, contents=yaml.safe_dump(config)) + + with mock.patch('google.ads.google_ads.client.GoogleAdsClient' + '.__init__') as mock_client_init, \ + mock.patch( + 'google.oauth2.credentials.Credentials') as mock_credentials: + mock_client_init.return_value = None + mock_credentials_instance = mock.Mock() + mock_credentials.return_value = mock_credentials_instance + (google.ads.google_ads.client.GoogleAdsClient.load_from_storage()) + mock_client_init.assert_called_once_with( + credentials=mock_credentials_instance, + developer_token=self.developer_token, + endpoint=None, + login_customer_id=self.login_customer_id) + + def test_load_from_storage_login_customer_id_as_None(self): + config = { + 'developer_token': self.developer_token, + 'client_id': self.client_id, + 'client_secret': self.client_secret, + 'refresh_token': self.refresh_token, + 'login_customer_id': None + } + + file_path = os.path.join(os.path.expanduser('~'), 'google-ads.yaml') + self.fs.create_file(file_path, contents=yaml.safe_dump(config)) + + with mock.patch('google.ads.google_ads.client.GoogleAdsClient' + '.__init__') as mock_client_init, \ + mock.patch( + 'google.oauth2.credentials.Credentials') as mock_credentials: + mock_client_init.return_value = None + mock_credentials_instance = mock.Mock() + mock_credentials.return_value = mock_credentials_instance + (google.ads.google_ads.client.GoogleAdsClient.load_from_storage()) + mock_client_init.assert_called_once_with( + credentials=mock_credentials_instance, + developer_token=self.developer_token, + endpoint=None, + login_customer_id=None) + + def test_load_from_storage_invalid_login_customer_id(self): + config = { + 'developer_token': self.developer_token, + 'client_id': self.client_id, + 'client_secret': self.client_secret, + 'refresh_token': self.refresh_token, + 'login_customer_id': '123-456-7890' + } + + file_path = os.path.join(os.path.expanduser('~'), 'google-ads.yaml') + self.fs.create_file(file_path, contents=yaml.safe_dump(config)) + + with mock.patch( + 'google.oauth2.credentials.Credentials') as mock_credentials: + mock_credentials_instance = mock.Mock() + mock_credentials.return_value = mock_credentials_instance + self.assertRaises( + ValueError, + google.ads.google_ads.client.GoogleAdsClient + .load_from_storage) + + def test_load_from_storage_too_short_login_customer_id(self): + config = { + 'developer_token': self.developer_token, + 'client_id': self.client_id, + 'client_secret': self.client_secret, + 'refresh_token': self.refresh_token, + 'login_customer_id': '123' + } + + file_path = os.path.join(os.path.expanduser('~'), 'google-ads.yaml') + self.fs.create_file(file_path, contents=yaml.safe_dump(config)) + + with mock.patch( + 'google.oauth2.credentials.Credentials') as mock_credentials: + mock_credentials_instance = mock.Mock() + mock_credentials.return_value = mock_credentials_instance + self.assertRaises( + ValueError, + google.ads.google_ads.client.GoogleAdsClient + .load_from_storage) def test_load_from_storage(self): config = { @@ -67,7 +162,8 @@ def test_load_from_storage(self): mock_client_init.assert_called_once_with( credentials=mock_credentials_instance, developer_token=self.developer_token, - endpoint=None) + endpoint=None, + login_customer_id=None) def test_load_from_storage_custom_endpoint(self): endpoint = 'alt.endpoint.com' @@ -93,7 +189,8 @@ def test_load_from_storage_custom_endpoint(self): mock_client_init.assert_called_once_with( credentials=mock_credentials_instance, developer_token=self.developer_token, - endpoint=endpoint) + endpoint=endpoint, + login_customer_id=None) def test_load_from_storage_custom_path(self): config = { @@ -118,7 +215,8 @@ def test_load_from_storage_custom_path(self): mock_client_init.assert_called_once_with( credentials=mock_credentials_instance, developer_token=self.developer_token, - endpoint=None) + endpoint=None, + login_customer_id=None) def test_load_from_storage_file_not_found(self): wrong_file_path = 'test/wrong-google-ads.yaml'