google-ads-googleads 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +4 -1
  3. data/README.md +1 -1
  4. data/lib/google/ads/googleads/{v0/services/credentials.rb → credentials.rb} +6 -10
  5. data/lib/google/ads/googleads/path_lookup_util.rb +18 -0
  6. data/lib/google/ads/googleads/proto_lookup_util.rb +79 -8
  7. data/lib/google/ads/googleads/v0/common/ad_pb.rb +4 -0
  8. data/lib/google/ads/googleads/v0/common/criteria_pb.rb +71 -0
  9. data/lib/google/ads/googleads/v0/enums/ad_group_type_pb.rb +1 -0
  10. data/lib/google/ads/googleads/v0/enums/ad_type_pb.rb +1 -0
  11. data/lib/google/ads/googleads/v0/enums/advertising_channel_type_pb.rb +1 -0
  12. data/lib/google/ads/googleads/v0/enums/bidding_source_pb.rb +29 -0
  13. data/lib/google/ads/googleads/v0/enums/criterion_type_pb.rb +3 -0
  14. data/lib/google/ads/googleads/v0/enums/listing_custom_attribute_index_pb.rb +31 -0
  15. data/lib/google/ads/googleads/v0/enums/listing_group_type_pb.rb +28 -0
  16. data/lib/google/ads/googleads/v0/enums/recommendation_type_pb.rb +30 -0
  17. data/lib/google/ads/googleads/v0/enums/target_cpa_opt_in_recommendation_goal_pb.rb +30 -0
  18. data/lib/google/ads/googleads/v0/errors/ad_error_pb.rb +1 -0
  19. data/lib/google/ads/googleads/v0/errors/ad_group_bid_modifier_error_pb.rb +28 -0
  20. data/lib/google/ads/googleads/v0/errors/ad_group_criterion_error_pb.rb +9 -9
  21. data/lib/google/ads/googleads/v0/errors/authentication_error_pb.rb +0 -4
  22. data/lib/google/ads/googleads/v0/errors/authorization_error_pb.rb +1 -0
  23. data/lib/google/ads/googleads/v0/errors/campaign_error_pb.rb +3 -0
  24. data/lib/google/ads/googleads/v0/errors/context_error_pb.rb +27 -0
  25. data/lib/google/ads/googleads/v0/errors/criterion_error_pb.rb +2 -0
  26. data/lib/google/ads/googleads/v0/errors/errors_pb.rb +8 -0
  27. data/lib/google/ads/googleads/v0/errors/field_error_pb.rb +31 -0
  28. data/lib/google/ads/googleads/v0/errors/internal_error_pb.rb +1 -0
  29. data/lib/google/ads/googleads/v0/errors/mutate_error_pb.rb +0 -3
  30. data/lib/google/ads/googleads/v0/errors/query_error_pb.rb +2 -0
  31. data/lib/google/ads/googleads/v0/errors/recommendation_error_pb.rb +32 -0
  32. data/lib/google/ads/googleads/v0/resources/ad_group_bid_modifier_pb.rb +33 -0
  33. data/lib/google/ads/googleads/v0/resources/ad_group_criterion_pb.rb +5 -4
  34. data/lib/google/ads/googleads/v0/resources/campaign_criterion_pb.rb +3 -0
  35. data/lib/google/ads/googleads/v0/resources/campaign_pb.rb +5 -0
  36. data/lib/google/ads/googleads/v0/resources/customer_pb.rb +1 -0
  37. data/lib/google/ads/googleads/v0/resources/geo_target_constant_pb.rb +27 -0
  38. data/lib/google/ads/googleads/v0/resources/recommendation_pb.rb +85 -0
  39. data/lib/google/ads/googleads/v0/services/ad_group_ad_service_client.rb +3 -3
  40. data/lib/google/ads/googleads/v0/services/ad_group_bid_modifier_service_client.rb +263 -0
  41. data/lib/google/ads/googleads/v0/services/ad_group_bid_modifier_service_client_config.json +36 -0
  42. data/lib/google/ads/googleads/v0/services/ad_group_bid_modifier_service_pb.rb +47 -0
  43. data/lib/google/ads/googleads/v0/services/ad_group_bid_modifier_service_services_pb.rb +52 -0
  44. data/lib/google/ads/googleads/v0/services/ad_group_criterion_service_client.rb +3 -3
  45. data/lib/google/ads/googleads/v0/services/ad_group_service_client.rb +3 -3
  46. data/lib/google/ads/googleads/v0/services/bidding_strategy_service_client.rb +3 -3
  47. data/lib/google/ads/googleads/v0/services/campaign_budget_service_client.rb +3 -3
  48. data/lib/google/ads/googleads/v0/services/campaign_criterion_service_client.rb +3 -3
  49. data/lib/google/ads/googleads/v0/services/campaign_service_client.rb +3 -3
  50. data/lib/google/ads/googleads/v0/services/customer_service_client.rb +3 -3
  51. data/lib/google/ads/googleads/v0/services/geo_target_constant_service_client.rb +214 -0
  52. data/lib/google/ads/googleads/v0/services/geo_target_constant_service_client_config.json +31 -0
  53. data/lib/google/ads/googleads/v0/services/geo_target_constant_service_pb.rb +24 -0
  54. data/lib/google/ads/googleads/v0/services/geo_target_constant_service_services_pb.rb +49 -0
  55. data/lib/google/ads/googleads/v0/services/google_ads_field_service_client.rb +3 -3
  56. data/lib/google/ads/googleads/v0/services/google_ads_field_service_client_config.json +2 -2
  57. data/lib/google/ads/googleads/v0/services/google_ads_service_client.rb +3 -3
  58. data/lib/google/ads/googleads/v0/services/google_ads_service_client_config.json +1 -1
  59. data/lib/google/ads/googleads/v0/services/google_ads_service_pb.rb +6 -0
  60. data/lib/google/ads/googleads/v0/services/keyword_view_service_client.rb +3 -3
  61. data/lib/google/ads/googleads/v0/services/recommendation_service_client.rb +262 -0
  62. data/lib/google/ads/googleads/v0/services/recommendation_service_client_config.json +36 -0
  63. data/lib/google/ads/googleads/v0/services/recommendation_service_pb.rb +73 -0
  64. data/lib/google/ads/googleads/v0/services/recommendation_service_services_pb.rb +51 -0
  65. data/lib/google/ads/googleads/version.rb +1 -1
  66. metadata +27 -4
  67. data/lib/google/ads/googleads/v0/enums/bid_source_pb.rb +0 -29
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 786e9754852be58af6ed81928f5c2eb75784d4d24090479912ad3dd376a57d57
4
- data.tar.gz: 21ef46bf2d76bc7085ca8ed1f2b6a63eb4becf92d61c0a8d970f926156c3cf4d
3
+ metadata.gz: a33b93fdd95cceea595f1175a57fc7695d51da5f17d0ba565fd21886a47f055e
4
+ data.tar.gz: 3f3804d59c86d12146c3e90e5469c49c395afdab8653665572948a163a2d48d4
5
5
  SHA512:
6
- metadata.gz: 55349a21aad338d63dcce98df2511a4372e7f36a00a9d25b74f83feba241c074579a29b22061ccb013afad1184e68737f1cd76b3167802fd80c482eda9fb1793
7
- data.tar.gz: '0178da13bafbfd1c9b61e684397d76e2d02065f3ba53f2fd5345cc1d6f0a0ab29b30a8bdb0bbd70185515ea3875996b00824f6a97c9a73134746f541f32d055c'
6
+ metadata.gz: ddfb621c7cec0d277e208979eea51966c9e3175c29f877a4a6bc092e66d5f57ce75862bbe5d63865616078bc9a6857cc2761077a58f14add31ab532b77fab0bb
7
+ data.tar.gz: 6631c0e4d73aa32fe54d5578513d779580f8dc91edb06ad6c2d35745785b0b3c8807e07b8b3498fcae0a807549aaf499cc0eb0265aed344fc3c54e4cb6e15a52
data/ChangeLog CHANGED
@@ -1,2 +1,5 @@
1
+ 0.2.0:
2
+ - Adding support for Google Ads API v0_1.
3
+
1
4
  0.1.0:
2
- - Initial release with support for Google Ads API V0.
5
+ - Initial release with support for Google Ads API v0.
data/README.md CHANGED
@@ -75,7 +75,7 @@ way:
75
75
  You can also modify these properties after instantiation by using the
76
76
  `configure` method on the `AdwordsClient`, using the same structure as above.
77
77
 
78
- [Authorization guide]: https://developers.google.com/google-ads/api/docs/oauth/
78
+ [Authorization guide]: https://developers.google.com/google-ads/api/docs/oauth/overview
79
79
  [Authentication example]: https://github.com/googleads/google-ads-ruby/blob/master/examples/authentication/authenticate_in_standalone_application.rb
80
80
  [adwords_config.rb]: https://github.com/googleads/google-ads-ruby/blob/master/googleads_config.rb
81
81
 
@@ -17,16 +17,12 @@ require "googleauth"
17
17
  module Google
18
18
  module Ads
19
19
  module Googleads
20
- module V0
21
- module Services
22
- class Credentials < Google::Auth::Credentials
23
- SCOPE = [
24
- ].freeze
25
- PATH_ENV_VARS = %w(GOOGLEADS_KEYFILE GOOGLE_CLOUD_KEYFILE GCLOUD_KEYFILE)
26
- JSON_ENV_VARS = %w(GOOGLEADS_KEYFILE_JSON GOOGLE_CLOUD_KEYFILE_JSON GCLOUD_KEYFILE_JSON)
27
- DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"]
28
- end
29
- end
20
+ class Credentials < Google::Auth::Credentials
21
+ SCOPE = [
22
+ ].freeze
23
+ PATH_ENV_VARS = %w(GOOGLEADS_KEYFILE GOOGLE_CLOUD_KEYFILE GCLOUD_KEYFILE)
24
+ JSON_ENV_VARS = %w(GOOGLEADS_KEYFILE_JSON GOOGLE_CLOUD_KEYFILE_JSON GCLOUD_KEYFILE_JSON)
25
+ DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"]
30
26
  end
31
27
  end
32
28
  end
@@ -29,6 +29,14 @@ module Google
29
29
  customer_id.to_s, sprintf('%s_%s', ad_group_id.to_s, ad_id.to_s))
30
30
  end
31
31
 
32
+ def ad_group_bid_modifier(customer_id, ad_group_id, criterion_id)
33
+ @proto_lookup_util.service(:AdGroupBidModifier).
34
+ ad_group_bid_modifier_path(
35
+ customer_id.to_s,
36
+ sprintf('%s_%s', ad_group_id.to_s, criterion_id.to_s)
37
+ )
38
+ end
39
+
32
40
  def ad_group_criterion(customer_id, ad_group_id, criterion_id)
33
41
  @proto_lookup_util.service(:AdGroupCriterion).ad_group_criteria_path(
34
42
  customer_id.to_s,
@@ -67,6 +75,11 @@ module Google
67
75
  @proto_lookup_util.service(:Customer).customer_path(customer_id.to_s)
68
76
  end
69
77
 
78
+ def geo_target_constant(geo_target_constant_id)
79
+ @proto_lookup_util.service(:GeoTargetConstant).
80
+ geo_target_constant_path(geo_target_constant_id.to_s)
81
+ end
82
+
70
83
  def google_ads_field(google_ads_field)
71
84
  @proto_lookup_util.service(:GoogleAdsField).google_ads_field_path(
72
85
  google_ads_field.to_s)
@@ -78,6 +91,11 @@ module Google
78
91
  sprintf('%s_%s', ad_group_id.to_s, criterion_id.to_s)
79
92
  )
80
93
  end
94
+
95
+ def recommendation(customer_id, recommendation_id)
96
+ @proto_lookup_util.service(:Recommendation).recommendation_path(
97
+ customer_id.to_s, recommendation_id.to_s)
98
+ end
81
99
  end
82
100
  end
83
101
  end
@@ -47,6 +47,8 @@ module Google
47
47
  PositionEstimates: ['resources', 'ad_group_criterion_pb',
48
48
  'AdGroupCriterion::PositionEstimates'],
49
49
  AdGroup: ['resources', 'ad_group_pb', 'AdGroup'],
50
+ AdGroupBidModifier: ['resources', 'ad_group_bid_modifier_pb',
51
+ 'AdGroupBidModifier'],
50
52
  BiddingStrategy: ['resources', 'bidding_strategy_pb',
51
53
  'BiddingStrategy'],
52
54
  CampaignBudget: ['resources', 'campaign_budget_pb', 'CampaignBudget'],
@@ -55,12 +57,33 @@ module Google
55
57
  Campaign: ['resources', 'campaign_pb', 'Campaign'],
56
58
  NetworkSettings: ['resources', 'campaign_pb',
57
59
  'Campaign::NetworkSettings'],
60
+ HotelSettingInfo: ['resources', 'campaign_pb',
61
+ 'Campaign::HotelSettingInfo'],
58
62
  DynamicSearchAdsSetting: ['resources', 'campaign_pb',
59
63
  'Campaign::DynamicSearchAdsSetting'],
60
64
  Customer: ['resources', 'customer_pb', 'Customer'],
65
+ GeoTargetConstant: ['resources', 'geo_target_constant_pb',
66
+ 'GeoTargetConstant'],
61
67
  GoogleAdsField: ['resources', 'google_ads_field_pb',
62
68
  'GoogleAdsField'],
63
69
  KeywordView: ['resources', 'keyword_view_pb', 'KeywordView'],
70
+ Recommendation: ['resources', 'recommendation_pb', 'Recommendation'],
71
+ RecommendationImpact: ['resources', 'recommendation_pb',
72
+ 'Recommendation::RecommendationImpact'],
73
+ RecommendationMetrics: ['resources', 'recommendation_pb',
74
+ 'Recommendation::RecommendationMetrics'],
75
+ CampaignBudgetRecommendation: ['resources', 'recommendation_pb',
76
+ 'Recommendation::CampaignBudgetRecommendation'],
77
+ CampaignBudgetRecommendationOption: ['resources', 'recommendation_pb',
78
+ 'Recommendation::CampaignBudgetRecommendation::CampaignBudgetRecommendationOption'],
79
+ KeywordRecommendation: ['resources', 'recommendation_pb',
80
+ 'Recommendation::KeywordRecommendation'],
81
+ TextAdRecommendation: ['resources', 'recommendation_pb',
82
+ 'Recommendation::TextAdRecommendation'],
83
+ TargetCpaOptInRecommendation: ['resources', 'recommendation_pb',
84
+ 'Recommendation::TargetCpaOptInRecommendation'],
85
+ TargetCpaOptInRecommendationOption: ['resources', 'recommendation_pb',
86
+ 'Recommendation::TargetCpaOptInRecommendation::TargetCpaOptInRecommendationOption'],
64
87
  Ad: ['common', 'ad_pb', 'Ad'],
65
88
  TextAdInfo: ['common', 'ad_pb', 'TextAdInfo'],
66
89
  ExpandedTextAdInfo: ['common', 'ad_pb', 'ExpandedTextAdInfo'],
@@ -70,6 +93,7 @@ module Google
70
93
  CallOnlyAdInfo: ['common', 'ad_pb', 'CallOnlyAdInfo'],
71
94
  ExpandedDynamicSearchAdInfo: ['common', 'ad_pb',
72
95
  'ExpandedDynamicSearchAdInfo'],
96
+ HotelAdInfo: ['common', 'ad_pb', 'HotelAdInfo'],
73
97
  EnhancedCpc: ['common', 'bidding_pb', 'EnhancedCpc'],
74
98
  ManualCpc: ['common', 'bidding_pb', 'ManualCpc'],
75
99
  ManualCpm: ['common', 'bidding_pb', 'ManualCpm'],
@@ -82,10 +106,39 @@ module Google
82
106
  TargetRoas: ['common', 'bidding_pb', 'TargetRoas'],
83
107
  TargetSpend: ['common', 'bidding_pb', 'TargetSpend'],
84
108
  KeywordInfo: ['common', 'criteria_pb', 'KeywordInfo'],
109
+ LocationInfo: ['common', 'criteria_pb', 'LocationInfo'],
110
+ PlatformInfo: ['common', 'criteria_pb', 'PlatformInfo'],
111
+ ListingGroupInfo: ['common', 'criteria_pb', 'ListingGroupInfo'],
112
+ ListingDimensionInfo: ['common', 'criteria_pb',
113
+ 'ListingDimensionInfo'],
114
+ ListingBrandInfo: ['common', 'criteria_pb', 'ListingBrandInfo'],
115
+ HotelIdInfo: ['common', 'criteria_pb', 'HotelIdInfo'],
116
+ HotelClassInfo: ['common', 'criteria_pb', 'HotelClassInfo'],
117
+ HotelCountryRegionInfo: ['common', 'criteria_pb',
118
+ 'HotelCountryRegionInfo'],
119
+ HotelStateInfo: ['common', 'criteria_pb', 'HotelStateInfo'],
120
+ HotelCityInfo: ['common', 'criteria_pb', 'HotelCityInfo'],
121
+ ListingCustomAttributeInfo: ['common', 'criteria_pb',
122
+ 'ListingCustomAttributeInfo'],
123
+ HotelDateSelectionTypeInfo: ['common', 'criteria_pb',
124
+ 'HotelDateSelectionTypeInfo'],
125
+ HotelAdvanceBookingWindowInfo: ['common', 'criteria_pb',
126
+ 'HotelAdvanceBookingWindowInfo'],
127
+ HotelLengthOfStayInfo: ['common', 'criteria_pb',
128
+ 'HotelLengthOfStayInfo'],
129
+ HotelCheckInDayInfo: ['common', 'criteria_pb', 'HotelCheckInDayInfo'],
85
130
  CustomParameter: ['common', 'custom_parameter_pb', 'CustomParameter'],
86
131
  Metrics: ['common', 'metrics_pb', 'Metrics'],
87
132
  PolicyViolationKey: ['common', 'policy_pb', 'PolicyViolationKey'],
88
- Value: ['common', 'value_pb', 'Value']
133
+ Value: ['common', 'value_pb', 'Value'],
134
+ CampaignBudgetParameters: ['services', 'recommendation_service_pb',
135
+ 'ApplyRecommendationOperation::CampaignBudgetParameters'],
136
+ TextAdParameters: ['services', 'recommendation_service_pb',
137
+ 'ApplyRecommendationOperation::TextAdParameters'],
138
+ KeywordParameters: ['services', 'recommendation_service_pb',
139
+ 'ApplyRecommendationOperation::KeywordParameters'],
140
+ TargetCpaOptInParameters: ['services', 'recommendation_service_pb',
141
+ 'ApplyRecommendationOperation::TargetCpaOptInParameters']
89
142
  }.freeze
90
143
 
91
144
  ENUMS = {
@@ -102,7 +155,7 @@ module Google
102
155
  'AdvertisingChannelSubType'],
103
156
  AdvertisingChannelType: ['advertising_channel_type_pb',
104
157
  'AdvertisingChannelType'],
105
- BidSource: ['bid_source_pb', 'BidSource'],
158
+ BiddingSource: ['bidding_source_pb', 'BiddingSource'],
106
159
  BiddingStrategyType: ['bidding_strategy_type_pb',
107
160
  'BiddingStrategyType'],
108
161
  BudgetDeliveryMethod: ['budget_delivery_method_pb',
@@ -118,14 +171,23 @@ module Google
118
171
  GoogleAdsFieldDataType: ['google_ads_field_data_type_pb',
119
172
  'GoogleAdsFieldDataType'],
120
173
  KeywordMatchType: ['keyword_match_type_pb', 'KeywordMatchType'],
174
+ ListingCustomAttributeIndex: ['listing_custom_attribute_index_pb',
175
+ 'ListingCustomAttributeIndex'],
176
+ ListingGroupType: ['listing_group_type_pb', 'ListingGroupType'],
121
177
  PageOnePromotedStrategyGoal: ['page_one_promoted_strategy_goal_pb',
122
178
  'PageOnePromotedStrategyGoal'],
123
179
  QualityScoreBucket: ['quality_score_bucket_pb', 'QualityScoreBucket'],
124
- Slot: ['slot_pb', 'Slot']
180
+ RecommendationType: ['recommendation_type_pb', 'RecommendationType'],
181
+ Slot: ['slot_pb', 'Slot'],
182
+ TargetCpaOptInRecommendationGoal: [
183
+ 'target_cpa_opt_in_recommendation_goal_pb',
184
+ 'TargetCpaOptInRecommendationGoal']
125
185
  }.freeze
126
186
 
127
187
  SERVICES = {
128
188
  AdGroupAd: ['ad_group_ad_service_client', 'AdGroupAdServiceClient'],
189
+ AdGroupBidModifier: ['ad_group_bid_modifier_service_client',
190
+ 'AdGroupBidModifierServiceClient'],
129
191
  AdGroupCriterion: ['ad_group_criterion_service_client',
130
192
  'AdGroupCriterionServiceClient'],
131
193
  AdGroup: ['ad_group_service_client', 'AdGroupServiceClient'],
@@ -137,18 +199,26 @@ module Google
137
199
  'CampaignCriterionServiceClient'],
138
200
  Campaign: ['campaign_service_client', 'CampaignServiceClient'],
139
201
  Customer: ['customer_service_client', 'CustomerServiceClient'],
202
+ GeoTargetConstant: ['geo_target_constant_service_client',
203
+ 'GeoTargetConstantServiceClient'],
140
204
  GoogleAdsField: ['google_ads_field_service_client',
141
205
  'GoogleAdsFieldServiceClient'],
142
206
  GoogleAds: ['google_ads_service_client', 'GoogleAdsServiceClient'],
143
207
  KeywordView: ['keyword_view_service_client',
144
- 'KeywordViewServiceClient']
145
- }
208
+ 'KeywordViewServiceClient'],
209
+ Recommendation: ['recommendation_service_client',
210
+ 'RecommendationServiceClient']
211
+ }.freeze
146
212
 
147
213
  OPERATIONS = {
148
214
  AdGroupAd: ['ad_group_ad_service_pb', 'AdGroupAdOperation'],
215
+ AdGroupBidModifier: ['ad_group_bid_modifier_service_pb',
216
+ 'AdGroupBidModifierOperation'],
149
217
  AdGroupCriterion: ['ad_group_criterion_service_pb',
150
218
  'AdGroupCriterionOperation'],
151
219
  AdGroup: ['ad_group_service_pb', 'AdGroupOperation'],
220
+ ApplyRecommendation: ['recommendation_service_pb',
221
+ 'ApplyRecommendationOperation'],
152
222
  BiddingStrategy: ['bidding_strategy_service_pb',
153
223
  'BiddingStrategyOperation'],
154
224
  CampaignBudget: ['campaign_budget_service_pb',
@@ -156,7 +226,7 @@ module Google
156
226
  CampaignCriterion: ['campaign_criterion_service_pb',
157
227
  'CampaignCriterionOperation'],
158
228
  Campaign: ['campaign_service_pb', 'CampaignOperation'],
159
- }
229
+ }.freeze
160
230
 
161
231
  def initialize(version)
162
232
  @version = version
@@ -176,8 +246,9 @@ module Google
176
246
  resource_info[1])
177
247
  require require_path
178
248
 
179
- class_path = resource_info.first == 'resources' ?
180
- RESOURCE_CLASS_PATH : COMMON_CLASS_PATH
249
+ class_path = RESOURCE_CLASS_PATH
250
+ class_path = COMMON_CLASS_PATH if resource_info.first == 'common'
251
+ class_path = SERVICE_CLASS_PATH if resource_info.first == 'services'
181
252
  class_path = sprintf(class_path, @version, resource_info[2])
182
253
  return class_for_path(class_path)
183
254
  end
@@ -22,6 +22,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
22
22
  optional :responsive_display_ad, :message, 9, "google.ads.googleads.v0.common.ResponsiveDisplayAdInfo"
23
23
  optional :call_only_ad, :message, 13, "google.ads.googleads.v0.common.CallOnlyAdInfo"
24
24
  optional :expanded_dynamic_search_ad, :message, 14, "google.ads.googleads.v0.common.ExpandedDynamicSearchAdInfo"
25
+ optional :hotel_ad, :message, 15, "google.ads.googleads.v0.common.HotelAdInfo"
25
26
  end
26
27
  end
27
28
  add_message "google.ads.googleads.v0.common.TextAdInfo" do
@@ -59,6 +60,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
59
60
  add_message "google.ads.googleads.v0.common.ExpandedDynamicSearchAdInfo" do
60
61
  optional :description, :message, 1, "google.protobuf.StringValue"
61
62
  end
63
+ add_message "google.ads.googleads.v0.common.HotelAdInfo" do
64
+ end
62
65
  end
63
66
 
64
67
  module Google
@@ -73,6 +76,7 @@ module Google
73
76
  ResponsiveDisplayAdInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.ResponsiveDisplayAdInfo").msgclass
74
77
  CallOnlyAdInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.CallOnlyAdInfo").msgclass
75
78
  ExpandedDynamicSearchAdInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.ExpandedDynamicSearchAdInfo").msgclass
79
+ HotelAdInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelAdInfo").msgclass
76
80
  end
77
81
  end
78
82
  end
@@ -4,12 +4,68 @@
4
4
  require 'google/protobuf'
5
5
 
6
6
  require 'google/ads/googleads/v0/enums/keyword_match_type_pb'
7
+ require 'google/ads/googleads/v0/enums/listing_custom_attribute_index_pb'
8
+ require 'google/ads/googleads/v0/enums/listing_group_type_pb'
7
9
  require 'google/protobuf/wrappers_pb'
8
10
  Google::Protobuf::DescriptorPool.generated_pool.build do
9
11
  add_message "google.ads.googleads.v0.common.KeywordInfo" do
10
12
  optional :text, :message, 1, "google.protobuf.StringValue"
11
13
  optional :match_type, :enum, 2, "google.ads.googleads.v0.enums.KeywordMatchTypeEnum.KeywordMatchType"
12
14
  end
15
+ add_message "google.ads.googleads.v0.common.LocationInfo" do
16
+ end
17
+ add_message "google.ads.googleads.v0.common.PlatformInfo" do
18
+ end
19
+ add_message "google.ads.googleads.v0.common.ListingGroupInfo" do
20
+ optional :type, :enum, 1, "google.ads.googleads.v0.enums.ListingGroupTypeEnum.ListingGroupType"
21
+ optional :case_value, :message, 2, "google.ads.googleads.v0.common.ListingDimensionInfo"
22
+ optional :parent_criterion_id, :message, 3, "google.protobuf.Int64Value"
23
+ end
24
+ add_message "google.ads.googleads.v0.common.ListingDimensionInfo" do
25
+ oneof :dimension do
26
+ optional :listing_brand, :message, 1, "google.ads.googleads.v0.common.ListingBrandInfo"
27
+ optional :hotel_id, :message, 2, "google.ads.googleads.v0.common.HotelIdInfo"
28
+ optional :hotel_class, :message, 3, "google.ads.googleads.v0.common.HotelClassInfo"
29
+ optional :hotel_country_region, :message, 4, "google.ads.googleads.v0.common.HotelCountryRegionInfo"
30
+ optional :hotel_state, :message, 5, "google.ads.googleads.v0.common.HotelStateInfo"
31
+ optional :hotel_city, :message, 6, "google.ads.googleads.v0.common.HotelCityInfo"
32
+ optional :listing_custom_attribute, :message, 7, "google.ads.googleads.v0.common.ListingCustomAttributeInfo"
33
+ end
34
+ end
35
+ add_message "google.ads.googleads.v0.common.ListingBrandInfo" do
36
+ optional :value, :message, 1, "google.protobuf.StringValue"
37
+ end
38
+ add_message "google.ads.googleads.v0.common.HotelIdInfo" do
39
+ optional :value, :message, 1, "google.protobuf.StringValue"
40
+ end
41
+ add_message "google.ads.googleads.v0.common.HotelClassInfo" do
42
+ optional :value, :message, 1, "google.protobuf.Int64Value"
43
+ end
44
+ add_message "google.ads.googleads.v0.common.HotelCountryRegionInfo" do
45
+ optional :country_region_criterion, :message, 1, "google.protobuf.StringValue"
46
+ end
47
+ add_message "google.ads.googleads.v0.common.HotelStateInfo" do
48
+ optional :state_criterion, :message, 1, "google.protobuf.StringValue"
49
+ end
50
+ add_message "google.ads.googleads.v0.common.HotelCityInfo" do
51
+ optional :city_criterion, :message, 1, "google.protobuf.StringValue"
52
+ end
53
+ add_message "google.ads.googleads.v0.common.ListingCustomAttributeInfo" do
54
+ optional :value, :message, 1, "google.protobuf.StringValue"
55
+ optional :index, :enum, 2, "google.ads.googleads.v0.enums.ListingCustomAttributeIndexEnum.ListingCustomAttributeIndex"
56
+ end
57
+ add_message "google.ads.googleads.v0.common.HotelDateSelectionTypeInfo" do
58
+ end
59
+ add_message "google.ads.googleads.v0.common.HotelAdvanceBookingWindowInfo" do
60
+ optional :min_days, :message, 1, "google.protobuf.Int64Value"
61
+ optional :max_days, :message, 2, "google.protobuf.Int64Value"
62
+ end
63
+ add_message "google.ads.googleads.v0.common.HotelLengthOfStayInfo" do
64
+ optional :min_nights, :message, 1, "google.protobuf.Int64Value"
65
+ optional :max_nights, :message, 2, "google.protobuf.Int64Value"
66
+ end
67
+ add_message "google.ads.googleads.v0.common.HotelCheckInDayInfo" do
68
+ end
13
69
  end
14
70
 
15
71
  module Google
@@ -18,6 +74,21 @@ module Google
18
74
  module V0
19
75
  module Common
20
76
  KeywordInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.KeywordInfo").msgclass
77
+ LocationInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.LocationInfo").msgclass
78
+ PlatformInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.PlatformInfo").msgclass
79
+ ListingGroupInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.ListingGroupInfo").msgclass
80
+ ListingDimensionInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.ListingDimensionInfo").msgclass
81
+ ListingBrandInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.ListingBrandInfo").msgclass
82
+ HotelIdInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelIdInfo").msgclass
83
+ HotelClassInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelClassInfo").msgclass
84
+ HotelCountryRegionInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelCountryRegionInfo").msgclass
85
+ HotelStateInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelStateInfo").msgclass
86
+ HotelCityInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelCityInfo").msgclass
87
+ ListingCustomAttributeInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.ListingCustomAttributeInfo").msgclass
88
+ HotelDateSelectionTypeInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelDateSelectionTypeInfo").msgclass
89
+ HotelAdvanceBookingWindowInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelAdvanceBookingWindowInfo").msgclass
90
+ HotelLengthOfStayInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelLengthOfStayInfo").msgclass
91
+ HotelCheckInDayInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.common.HotelCheckInDayInfo").msgclass
21
92
  end
22
93
  end
23
94
  end
@@ -10,6 +10,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
10
10
  value :UNSPECIFIED, 0
11
11
  value :UNKNOWN, 1
12
12
  value :SEARCH_STANDARD, 2
13
+ value :HOTEL_ADS, 6
13
14
  end
14
15
  end
15
16
 
@@ -15,6 +15,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
15
15
  value :RESPONSIVE_DISPLAY_AD, 5
16
16
  value :CALL_ONLY_AD, 6
17
17
  value :EXPANDED_DYNAMIC_SEARCH_AD, 7
18
+ value :HOTEL_AD, 8
18
19
  end
19
20
  end
20
21
 
@@ -10,6 +10,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
10
10
  value :UNSPECIFIED, 0
11
11
  value :UNKNOWN, 1
12
12
  value :SEARCH, 2
13
+ value :HOTEL, 5
13
14
  end
14
15
  end
15
16
 
@@ -0,0 +1,29 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/googleads/v0/enums/bidding_source.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_message "google.ads.googleads.v0.enums.BiddingSourceEnum" do
8
+ end
9
+ add_enum "google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource" do
10
+ value :UNSPECIFIED, 0
11
+ value :UNKNOWN, 1
12
+ value :ADGROUP, 2
13
+ value :CRITERION, 3
14
+ value :CAMPAIGN_BIDDING_STRATEGY, 5
15
+ end
16
+ end
17
+
18
+ module Google
19
+ module Ads
20
+ module Googleads
21
+ module V0
22
+ module Enums
23
+ BiddingSourceEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.BiddingSourceEnum").msgclass
24
+ BiddingSourceEnum::BiddingSource = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.BiddingSourceEnum.BiddingSource").enummodule
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -10,6 +10,9 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
10
10
  value :UNSPECIFIED, 0
11
11
  value :UNKNOWN, 1
12
12
  value :KEYWORD, 2
13
+ value :PLATFORM, 6
14
+ value :LOCATION, 7
15
+ value :LISTING_GROUP, 8
13
16
  end
14
17
  end
15
18
 
@@ -0,0 +1,31 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/googleads/v0/enums/listing_custom_attribute_index.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_message "google.ads.googleads.v0.enums.ListingCustomAttributeIndexEnum" do
8
+ end
9
+ add_enum "google.ads.googleads.v0.enums.ListingCustomAttributeIndexEnum.ListingCustomAttributeIndex" do
10
+ value :UNSPECIFIED, 0
11
+ value :UNKNOWN, 1
12
+ value :CUSTOM_ATTRIBUTE_0, 2
13
+ value :CUSTOM_ATTRIBUTE_1, 3
14
+ value :CUSTOM_ATTRIBUTE_2, 4
15
+ value :CUSTOM_ATTRIBUTE_3, 5
16
+ value :CUSTOM_ATTRIBUTE_4, 6
17
+ end
18
+ end
19
+
20
+ module Google
21
+ module Ads
22
+ module Googleads
23
+ module V0
24
+ module Enums
25
+ ListingCustomAttributeIndexEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.ListingCustomAttributeIndexEnum").msgclass
26
+ ListingCustomAttributeIndexEnum::ListingCustomAttributeIndex = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.ListingCustomAttributeIndexEnum.ListingCustomAttributeIndex").enummodule
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,28 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/googleads/v0/enums/listing_group_type.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_message "google.ads.googleads.v0.enums.ListingGroupTypeEnum" do
8
+ end
9
+ add_enum "google.ads.googleads.v0.enums.ListingGroupTypeEnum.ListingGroupType" do
10
+ value :UNSPECIFIED, 0
11
+ value :UNKNOWN, 1
12
+ value :SUBDIVISION, 2
13
+ value :UNIT, 3
14
+ end
15
+ end
16
+
17
+ module Google
18
+ module Ads
19
+ module Googleads
20
+ module V0
21
+ module Enums
22
+ ListingGroupTypeEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.ListingGroupTypeEnum").msgclass
23
+ ListingGroupTypeEnum::ListingGroupType = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.ListingGroupTypeEnum.ListingGroupType").enummodule
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,30 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/googleads/v0/enums/recommendation_type.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_message "google.ads.googleads.v0.enums.RecommendationTypeEnum" do
8
+ end
9
+ add_enum "google.ads.googleads.v0.enums.RecommendationTypeEnum.RecommendationType" do
10
+ value :UNSPECIFIED, 0
11
+ value :UNKNOWN, 1
12
+ value :CAMPAIGN_BUDGET, 2
13
+ value :KEYWORD, 3
14
+ value :TEXT_AD, 4
15
+ value :TARGET_CPA_OPT_IN, 5
16
+ end
17
+ end
18
+
19
+ module Google
20
+ module Ads
21
+ module Googleads
22
+ module V0
23
+ module Enums
24
+ RecommendationTypeEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.RecommendationTypeEnum").msgclass
25
+ RecommendationTypeEnum::RecommendationType = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.RecommendationTypeEnum.RecommendationType").enummodule
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/googleads/v0/enums/target_cpa_opt_in_recommendation_goal.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_message "google.ads.googleads.v0.enums.TargetCpaOptInRecommendationGoalEnum" do
8
+ end
9
+ add_enum "google.ads.googleads.v0.enums.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal" do
10
+ value :UNSPECIFIED, 0
11
+ value :UNKNOWN, 1
12
+ value :SAME_COST, 2
13
+ value :SAME_CONVERSIONS, 3
14
+ value :SAME_CPA, 4
15
+ value :CLOSEST_CPA, 5
16
+ end
17
+ end
18
+
19
+ module Google
20
+ module Ads
21
+ module Googleads
22
+ module V0
23
+ module Enums
24
+ TargetCpaOptInRecommendationGoalEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.TargetCpaOptInRecommendationGoalEnum").msgclass
25
+ TargetCpaOptInRecommendationGoalEnum::TargetCpaOptInRecommendationGoal = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.enums.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal").enummodule
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -137,6 +137,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
137
137
  value :CANNOT_DISABLE_CALL_CONVERSION_AND_SET_CONVERSION_TYPE_ID, 127
138
138
  value :CANNOT_SET_PATH2_WITHOUT_PATH1, 128
139
139
  value :MISSING_DYNAMIC_SEARCH_ADS_SETTING_DOMAIN_NAME, 129
140
+ value :INCOMPATIBLE_WITH_RESTRICTION_TYPE, 130
140
141
  end
141
142
  end
142
143
 
@@ -0,0 +1,28 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/googleads/v0/errors/ad_group_bid_modifier_error.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_message "google.ads.googleads.v0.errors.AdGroupBidModifierErrorEnum" do
8
+ end
9
+ add_enum "google.ads.googleads.v0.errors.AdGroupBidModifierErrorEnum.AdGroupBidModifierError" do
10
+ value :UNSPECIFIED, 0
11
+ value :UNKNOWN, 1
12
+ value :CRITERION_ID_NOT_SUPPORTED, 2
13
+ value :CANNOT_OVERRIDE_OPTED_OUT_CAMPAIGN_CRITERION_BID_MODIFIER, 3
14
+ end
15
+ end
16
+
17
+ module Google
18
+ module Ads
19
+ module Googleads
20
+ module V0
21
+ module Errors
22
+ AdGroupBidModifierErrorEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.errors.AdGroupBidModifierErrorEnum").msgclass
23
+ AdGroupBidModifierErrorEnum::AdGroupBidModifierError = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v0.errors.AdGroupBidModifierErrorEnum.AdGroupBidModifierError").enummodule
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -25,15 +25,6 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
25
25
  value :INVALID_USER_STATUS, 15
26
26
  value :CANNOT_ADD_CRITERIA_TYPE, 16
27
27
  value :CANNOT_EXCLUDE_CRITERIA_TYPE, 17
28
- value :INVALID_PRODUCT_PARTITION_HIERARCHY, 18
29
- value :PRODUCT_PARTITION_UNIT_CANNOT_HAVE_CHILDREN, 19
30
- value :PRODUCT_PARTITION_SUBDIVISION_REQUIRES_OTHERS_CASE, 20
31
- value :PRODUCT_PARTITION_REQUIRES_SAME_DIMENSION_TYPE_AS_SIBLINGS, 21
32
- value :PRODUCT_PARTITION_ALREADY_EXISTS, 22
33
- value :PRODUCT_PARTITION_DOES_NOT_EXIST, 23
34
- value :PRODUCT_PARTITION_CANNOT_BE_REMOVED, 24
35
- value :INVALID_PRODUCT_PARTITION_TYPE, 25
36
- value :PRODUCT_PARTITION_ADD_MAY_ONLY_USE_TEMP_ID, 26
37
28
  value :CAMPAIGN_TYPE_NOT_COMPATIBLE_WITH_PARTIAL_FAILURE, 27
38
29
  value :OPERATIONS_FOR_TOO_MANY_SHOPPING_ADGROUPS, 28
39
30
  value :CANNOT_MODIFY_URL_FIELDS_WITH_DUPLICATE_ELEMENTS, 29
@@ -46,6 +37,15 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
46
37
  value :CANNOT_SET_BOTH_DESTINATION_URL_AND_TRACKING_URL_TEMPLATE, 36
47
38
  value :FINAL_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE, 37
48
39
  value :FINAL_MOBILE_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE, 38
40
+ value :INVALID_LISTING_GROUP_HIERARCHY, 39
41
+ value :LISTING_GROUP_UNIT_CANNOT_HAVE_CHILDREN, 40
42
+ value :LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE, 41
43
+ value :LISTING_GROUP_REQUIRES_SAME_DIMENSION_TYPE_AS_SIBLINGS, 42
44
+ value :LISTING_GROUP_ALREADY_EXISTS, 43
45
+ value :LISTING_GROUP_DOES_NOT_EXIST, 44
46
+ value :LISTING_GROUP_CANNOT_BE_REMOVED, 45
47
+ value :INVALID_LISTING_GROUP_TYPE, 46
48
+ value :LISTING_GROUP_ADD_MAY_ONLY_USE_TEMP_ID, 47
49
49
  end
50
50
  end
51
51