google-ads-googleads 3.1.0 → 3.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 (34) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +3 -0
  3. data/Rakefile +3 -3
  4. data/lib/google/ads/google_ads/factories/v1/enums.rb +1130 -1130
  5. data/lib/google/ads/google_ads/factories/v1/operations.rb +1057 -1057
  6. data/lib/google/ads/google_ads/factories/v1/resources.rb +2420 -2420
  7. data/lib/google/ads/google_ads/factories/v1/services.rb +298 -298
  8. data/lib/google/ads/google_ads/factories/v2/enums.rb +1221 -1197
  9. data/lib/google/ads/google_ads/factories/v2/operations.rb +1080 -1080
  10. data/lib/google/ads/google_ads/factories/v2/resources.rb +2497 -2458
  11. data/lib/google/ads/google_ads/factories/v2/services.rb +329 -309
  12. data/lib/google/ads/google_ads/google_ads_client.rb +1 -0
  13. data/lib/google/ads/google_ads/v2/common/extensions_pb.rb +5 -0
  14. data/lib/google/ads/google_ads/v2/common/segments_pb.rb +2 -0
  15. data/lib/google/ads/google_ads/v2/enums/extension_type_pb.rb +1 -0
  16. data/lib/google/ads/google_ads/v2/enums/hotel_price_bucket_pb.rb +21 -0
  17. data/lib/google/ads/google_ads/v2/enums/invoice_type_pb.rb +21 -0
  18. data/lib/google/ads/google_ads/v2/errors/errors_pb.rb +2 -0
  19. data/lib/google/ads/google_ads/v2/errors/invoice_error_pb.rb +21 -0
  20. data/lib/google/ads/google_ads/v2/resources/ad_pb.rb +1 -0
  21. data/lib/google/ads/google_ads/v2/resources/campaign_pb.rb +13 -13
  22. data/lib/google/ads/google_ads/v2/resources/extension_feed_item_pb.rb +2 -0
  23. data/lib/google/ads/google_ads/v2/resources/invoice_pb.rb +47 -0
  24. data/lib/google/ads/google_ads/v2/resources/recommendation_pb.rb +21 -21
  25. data/lib/google/ads/google_ads/v2/services/invoice_service_client.rb +233 -0
  26. data/lib/google/ads/google_ads/v2/services/invoice_service_client_config.json +31 -0
  27. data/lib/google/ads/google_ads/v2/services/invoice_service_pb.rb +25 -0
  28. data/lib/google/ads/google_ads/v2/services/invoice_service_services_pb.rb +42 -0
  29. data/lib/google/ads/google_ads/v2/services/merchant_center_link_service_client.rb +1 -1
  30. data/lib/google/ads/google_ads/v2/services/merchant_center_link_service_services_pb.rb +1 -1
  31. data/lib/google/ads/google_ads/v2/services/reach_plan_service_client.rb +1 -1
  32. data/lib/google/ads/google_ads/v2/services/reach_plan_service_services_pb.rb +1 -1
  33. data/lib/google/ads/google_ads/version.rb +1 -1
  34. metadata +10 -2
@@ -74,6 +74,7 @@ require 'logger'
74
74
  require 'json'
75
75
  require 'openssl'
76
76
  require 'signet/oauth_2/client'
77
+ require 'delegate'
77
78
 
78
79
  module Google
79
80
  module Ads
@@ -116,6 +116,10 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
116
116
  repeated :url_custom_parameters, :message, 7, "google.ads.googleads.v2.common.CustomParameter"
117
117
  optional :final_url_suffix, :message, 8, "google.protobuf.StringValue"
118
118
  end
119
+ add_message "google.ads.googleads.v2.common.HotelCalloutFeedItem" do
120
+ optional :text, :message, 1, "google.protobuf.StringValue"
121
+ optional :language_code, :message, 2, "google.protobuf.StringValue"
122
+ end
119
123
  end
120
124
 
121
125
  module Google::Ads::GoogleAds::V2::Common
@@ -130,4 +134,5 @@ module Google::Ads::GoogleAds::V2::Common
130
134
  PromotionFeedItem = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.common.PromotionFeedItem").msgclass
131
135
  StructuredSnippetFeedItem = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.common.StructuredSnippetFeedItem").msgclass
132
136
  SitelinkFeedItem = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.common.SitelinkFeedItem").msgclass
137
+ HotelCalloutFeedItem = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.common.HotelCalloutFeedItem").msgclass
133
138
  end
@@ -14,6 +14,7 @@ require 'google/ads/google_ads/v2/enums/day_of_week_pb'
14
14
  require 'google/ads/google_ads/v2/enums/device_pb'
15
15
  require 'google/ads/google_ads/v2/enums/external_conversion_source_pb'
16
16
  require 'google/ads/google_ads/v2/enums/hotel_date_selection_type_pb'
17
+ require 'google/ads/google_ads/v2/enums/hotel_price_bucket_pb'
17
18
  require 'google/ads/google_ads/v2/enums/hotel_rate_type_pb'
18
19
  require 'google/ads/google_ads/v2/enums/month_of_year_pb'
19
20
  require 'google/ads/google_ads/v2/enums/placeholder_type_pb'
@@ -63,6 +64,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
63
64
  optional :hotel_length_of_stay, :message, 14, "google.protobuf.Int32Value"
64
65
  optional :hotel_rate_rule_id, :message, 73, "google.protobuf.StringValue"
65
66
  optional :hotel_rate_type, :enum, 74, "google.ads.googleads.v2.enums.HotelRateTypeEnum.HotelRateType"
67
+ optional :hotel_price_bucket, :enum, 78, "google.ads.googleads.v2.enums.HotelPriceBucketEnum.HotelPriceBucket"
66
68
  optional :hotel_state, :message, 15, "google.protobuf.StringValue"
67
69
  optional :hour, :message, 16, "google.protobuf.Int32Value"
68
70
  optional :interaction_on_this_extension, :message, 49, "google.protobuf.BoolValue"
@@ -21,6 +21,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
21
21
  value :STRUCTURED_SNIPPET, 11
22
22
  value :LOCATION, 12
23
23
  value :AFFILIATE_LOCATION, 13
24
+ value :HOTEL_CALLOUT, 15
24
25
  end
25
26
  end
26
27
 
@@ -0,0 +1,21 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/google_ads/v2/enums/hotel_price_bucket.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ Google::Protobuf::DescriptorPool.generated_pool.build do
8
+ add_message "google.ads.googleads.v2.enums.HotelPriceBucketEnum" do
9
+ end
10
+ add_enum "google.ads.googleads.v2.enums.HotelPriceBucketEnum.HotelPriceBucket" do
11
+ value :UNSPECIFIED, 0
12
+ value :UNKNOWN, 1
13
+ value :LOWEST_TIED, 3
14
+ value :NOT_LOWEST, 4
15
+ end
16
+ end
17
+
18
+ module Google::Ads::GoogleAds::V2::Enums
19
+ HotelPriceBucketEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.enums.HotelPriceBucketEnum").msgclass
20
+ HotelPriceBucketEnum::HotelPriceBucket = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.enums.HotelPriceBucketEnum.HotelPriceBucket").enummodule
21
+ end
@@ -0,0 +1,21 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/google_ads/v2/enums/invoice_type.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ Google::Protobuf::DescriptorPool.generated_pool.build do
8
+ add_message "google.ads.googleads.v2.enums.InvoiceTypeEnum" do
9
+ end
10
+ add_enum "google.ads.googleads.v2.enums.InvoiceTypeEnum.InvoiceType" do
11
+ value :UNSPECIFIED, 0
12
+ value :UNKNOWN, 1
13
+ value :CREDIT_MEMO, 2
14
+ value :INVOICE, 3
15
+ end
16
+ end
17
+
18
+ module Google::Ads::GoogleAds::V2::Enums
19
+ InvoiceTypeEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.enums.InvoiceTypeEnum").msgclass
20
+ InvoiceTypeEnum::InvoiceType = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.enums.InvoiceTypeEnum.InvoiceType").enummodule
21
+ end
@@ -66,6 +66,7 @@ require 'google/ads/google_ads/v2/errors/header_error_pb'
66
66
  require 'google/ads/google_ads/v2/errors/id_error_pb'
67
67
  require 'google/ads/google_ads/v2/errors/image_error_pb'
68
68
  require 'google/ads/google_ads/v2/errors/internal_error_pb'
69
+ require 'google/ads/google_ads/v2/errors/invoice_error_pb'
69
70
  require 'google/ads/google_ads/v2/errors/keyword_plan_ad_group_error_pb'
70
71
  require 'google/ads/google_ads/v2/errors/keyword_plan_campaign_error_pb'
71
72
  require 'google/ads/google_ads/v2/errors/keyword_plan_error_pb'
@@ -230,6 +231,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
230
231
  optional :currency_code_error, :enum, 122, "google.ads.googleads.v2.errors.CurrencyCodeErrorEnum.CurrencyCodeError"
231
232
  optional :access_invitation_error, :enum, 124, "google.ads.googleads.v2.errors.AccessInvitationErrorEnum.AccessInvitationError"
232
233
  optional :reach_plan_error, :enum, 125, "google.ads.googleads.v2.errors.ReachPlanErrorEnum.ReachPlanError"
234
+ optional :invoice_error, :enum, 126, "google.ads.googleads.v2.errors.InvoiceErrorEnum.InvoiceError"
233
235
  end
234
236
  end
235
237
  add_message "google.ads.googleads.v2.errors.ErrorLocation" do
@@ -0,0 +1,21 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/google_ads/v2/errors/invoice_error.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ Google::Protobuf::DescriptorPool.generated_pool.build do
8
+ add_message "google.ads.googleads.v2.errors.InvoiceErrorEnum" do
9
+ end
10
+ add_enum "google.ads.googleads.v2.errors.InvoiceErrorEnum.InvoiceError" do
11
+ value :UNSPECIFIED, 0
12
+ value :UNKNOWN, 1
13
+ value :YEAR_MONTH_TOO_OLD, 2
14
+ value :NOT_INVOICED_CUSTOMER, 3
15
+ end
16
+ end
17
+
18
+ module Google::Ads::GoogleAds::V2::Errors
19
+ InvoiceErrorEnum = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.errors.InvoiceErrorEnum").msgclass
20
+ InvoiceErrorEnum::InvoiceError = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.errors.InvoiceErrorEnum.InvoiceError").enummodule
21
+ end
@@ -20,6 +20,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
20
20
  repeated :final_app_urls, :message, 35, "google.ads.googleads.v2.common.FinalAppUrl"
21
21
  repeated :final_mobile_urls, :message, 16, "google.protobuf.StringValue"
22
22
  optional :tracking_url_template, :message, 12, "google.protobuf.StringValue"
23
+ optional :final_url_suffix, :message, 38, "google.protobuf.StringValue"
23
24
  repeated :url_custom_parameters, :message, 10, "google.ads.googleads.v2.common.CustomParameter"
24
25
  optional :display_url, :message, 4, "google.protobuf.StringValue"
25
26
  optional :type, :enum, 5, "google.ads.googleads.v2.enums.AdTypeEnum.AdType"
@@ -84,6 +84,11 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
84
84
  add_message "google.ads.googleads.v2.resources.Campaign.HotelSettingInfo" do
85
85
  optional :hotel_center_id, :message, 1, "google.protobuf.Int64Value"
86
86
  end
87
+ add_message "google.ads.googleads.v2.resources.Campaign.AppCampaignSetting" do
88
+ optional :bidding_strategy_goal_type, :enum, 1, "google.ads.googleads.v2.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType"
89
+ optional :app_id, :message, 2, "google.protobuf.StringValue"
90
+ optional :app_store, :enum, 3, "google.ads.googleads.v2.enums.AppCampaignAppStoreEnum.AppCampaignAppStore"
91
+ end
87
92
  add_message "google.ads.googleads.v2.resources.Campaign.DynamicSearchAdsSetting" do
88
93
  optional :domain_name, :message, 1, "google.protobuf.StringValue"
89
94
  optional :language_code, :message, 2, "google.protobuf.StringValue"
@@ -93,9 +98,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
93
98
  add_message "google.ads.googleads.v2.resources.Campaign.TrackingSetting" do
94
99
  optional :tracking_url, :message, 1, "google.protobuf.StringValue"
95
100
  end
96
- add_message "google.ads.googleads.v2.resources.Campaign.VanityPharma" do
97
- optional :vanity_pharma_display_url_mode, :enum, 1, "google.ads.googleads.v2.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode"
98
- optional :vanity_pharma_text, :enum, 2, "google.ads.googleads.v2.enums.VanityPharmaTextEnum.VanityPharmaText"
101
+ add_message "google.ads.googleads.v2.resources.Campaign.SelectiveOptimization" do
102
+ repeated :conversion_actions, :message, 1, "google.protobuf.StringValue"
99
103
  end
100
104
  add_message "google.ads.googleads.v2.resources.Campaign.ShoppingSetting" do
101
105
  optional :merchant_id, :message, 1, "google.protobuf.Int64Value"
@@ -103,17 +107,13 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
103
107
  optional :campaign_priority, :message, 3, "google.protobuf.Int32Value"
104
108
  optional :enable_local, :message, 4, "google.protobuf.BoolValue"
105
109
  end
106
- add_message "google.ads.googleads.v2.resources.Campaign.AppCampaignSetting" do
107
- optional :bidding_strategy_goal_type, :enum, 1, "google.ads.googleads.v2.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType"
108
- optional :app_id, :message, 2, "google.protobuf.StringValue"
109
- optional :app_store, :enum, 3, "google.ads.googleads.v2.enums.AppCampaignAppStoreEnum.AppCampaignAppStore"
110
- end
111
110
  add_message "google.ads.googleads.v2.resources.Campaign.GeoTargetTypeSetting" do
112
111
  optional :positive_geo_target_type, :enum, 1, "google.ads.googleads.v2.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType"
113
112
  optional :negative_geo_target_type, :enum, 2, "google.ads.googleads.v2.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType"
114
113
  end
115
- add_message "google.ads.googleads.v2.resources.Campaign.SelectiveOptimization" do
116
- repeated :conversion_actions, :message, 1, "google.protobuf.StringValue"
114
+ add_message "google.ads.googleads.v2.resources.Campaign.VanityPharma" do
115
+ optional :vanity_pharma_display_url_mode, :enum, 1, "google.ads.googleads.v2.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode"
116
+ optional :vanity_pharma_text, :enum, 2, "google.ads.googleads.v2.enums.VanityPharmaTextEnum.VanityPharmaText"
117
117
  end
118
118
  end
119
119
 
@@ -121,11 +121,11 @@ module Google::Ads::GoogleAds::V2::Resources
121
121
  Campaign = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign").msgclass
122
122
  Campaign::NetworkSettings = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.NetworkSettings").msgclass
123
123
  Campaign::HotelSettingInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.HotelSettingInfo").msgclass
124
+ Campaign::AppCampaignSetting = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.AppCampaignSetting").msgclass
124
125
  Campaign::DynamicSearchAdsSetting = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.DynamicSearchAdsSetting").msgclass
125
126
  Campaign::TrackingSetting = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.TrackingSetting").msgclass
126
- Campaign::VanityPharma = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.VanityPharma").msgclass
127
+ Campaign::SelectiveOptimization = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.SelectiveOptimization").msgclass
127
128
  Campaign::ShoppingSetting = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.ShoppingSetting").msgclass
128
- Campaign::AppCampaignSetting = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.AppCampaignSetting").msgclass
129
129
  Campaign::GeoTargetTypeSetting = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.GeoTargetTypeSetting").msgclass
130
- Campaign::SelectiveOptimization = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.SelectiveOptimization").msgclass
130
+ Campaign::VanityPharma = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Campaign.VanityPharma").msgclass
131
131
  end
@@ -13,6 +13,7 @@ require 'google/api/annotations_pb'
13
13
  Google::Protobuf::DescriptorPool.generated_pool.build do
14
14
  add_message "google.ads.googleads.v2.resources.ExtensionFeedItem" do
15
15
  optional :resource_name, :string, 1
16
+ optional :id, :message, 24, "google.protobuf.Int64Value"
16
17
  optional :extension_type, :enum, 13, "google.ads.googleads.v2.enums.ExtensionTypeEnum.ExtensionType"
17
18
  optional :start_date_time, :message, 5, "google.protobuf.StringValue"
18
19
  optional :end_date_time, :message, 6, "google.protobuf.StringValue"
@@ -32,6 +33,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
32
33
  optional :promotion_feed_item, :message, 12, "google.ads.googleads.v2.common.PromotionFeedItem"
33
34
  optional :location_feed_item, :message, 14, "google.ads.googleads.v2.common.LocationFeedItem"
34
35
  optional :affiliate_location_feed_item, :message, 15, "google.ads.googleads.v2.common.AffiliateLocationFeedItem"
36
+ optional :hotel_callout_feed_item, :message, 23, "google.ads.googleads.v2.common.HotelCalloutFeedItem"
35
37
  end
36
38
  oneof :serving_resource_targeting do
37
39
  optional :targeted_campaign, :message, 18, "google.protobuf.StringValue"
@@ -0,0 +1,47 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/ads/google_ads/v2/resources/invoice.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/ads/google_ads/v2/common/dates_pb'
7
+ require 'google/ads/google_ads/v2/enums/invoice_type_pb'
8
+ require 'google/protobuf/wrappers_pb'
9
+ require 'google/api/annotations_pb'
10
+ Google::Protobuf::DescriptorPool.generated_pool.build do
11
+ add_message "google.ads.googleads.v2.resources.Invoice" do
12
+ optional :resource_name, :string, 1
13
+ optional :id, :message, 2, "google.protobuf.StringValue"
14
+ optional :type, :enum, 3, "google.ads.googleads.v2.enums.InvoiceTypeEnum.InvoiceType"
15
+ optional :billing_setup, :message, 4, "google.protobuf.StringValue"
16
+ optional :payments_account_id, :message, 5, "google.protobuf.StringValue"
17
+ optional :payments_profile_id, :message, 6, "google.protobuf.StringValue"
18
+ optional :issue_date, :message, 7, "google.protobuf.StringValue"
19
+ optional :due_date, :message, 8, "google.protobuf.StringValue"
20
+ optional :service_date_range, :message, 9, "google.ads.googleads.v2.common.DateRange"
21
+ optional :currency_code, :message, 10, "google.protobuf.StringValue"
22
+ optional :invoice_level_adjustments_micros, :message, 11, "google.protobuf.Int64Value"
23
+ optional :subtotal_amount_micros, :message, 12, "google.protobuf.Int64Value"
24
+ optional :tax_amount_micros, :message, 13, "google.protobuf.Int64Value"
25
+ optional :total_amount_micros, :message, 14, "google.protobuf.Int64Value"
26
+ optional :corrected_invoice, :message, 15, "google.protobuf.StringValue"
27
+ repeated :replaced_invoices, :message, 16, "google.protobuf.StringValue"
28
+ optional :pdf_url, :message, 17, "google.protobuf.StringValue"
29
+ repeated :account_budget_summaries, :message, 18, "google.ads.googleads.v2.resources.Invoice.AccountBudgetSummary"
30
+ end
31
+ add_message "google.ads.googleads.v2.resources.Invoice.AccountBudgetSummary" do
32
+ optional :customer, :message, 1, "google.protobuf.StringValue"
33
+ optional :customer_descriptive_name, :message, 2, "google.protobuf.StringValue"
34
+ optional :account_budget, :message, 3, "google.protobuf.StringValue"
35
+ optional :account_budget_name, :message, 4, "google.protobuf.StringValue"
36
+ optional :purchase_order_number, :message, 5, "google.protobuf.StringValue"
37
+ optional :subtotal_amount_micros, :message, 6, "google.protobuf.Int64Value"
38
+ optional :tax_amount_micros, :message, 7, "google.protobuf.Int64Value"
39
+ optional :total_amount_micros, :message, 8, "google.protobuf.Int64Value"
40
+ optional :billable_activity_date_range, :message, 9, "google.ads.googleads.v2.common.DateRange"
41
+ end
42
+ end
43
+
44
+ module Google::Ads::GoogleAds::V2::Resources
45
+ Invoice = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Invoice").msgclass
46
+ Invoice::AccountBudgetSummary = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Invoice.AccountBudgetSummary").msgclass
47
+ end
@@ -61,8 +61,10 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
61
61
  optional :keyword, :message, 1, "google.ads.googleads.v2.common.KeywordInfo"
62
62
  optional :recommended_cpc_bid_micros, :message, 2, "google.protobuf.Int64Value"
63
63
  end
64
- add_message "google.ads.googleads.v2.resources.Recommendation.MaximizeClicksOptInRecommendation" do
65
- optional :recommended_budget_amount_micros, :message, 1, "google.protobuf.Int64Value"
64
+ add_message "google.ads.googleads.v2.resources.Recommendation.OptimizeAdRotationRecommendation" do
65
+ end
66
+ add_message "google.ads.googleads.v2.resources.Recommendation.CallExtensionRecommendation" do
67
+ repeated :recommended_extensions, :message, 1, "google.ads.googleads.v2.common.CallFeedItem"
66
68
  end
67
69
  add_message "google.ads.googleads.v2.resources.Recommendation.TextAdRecommendation" do
68
70
  optional :ad, :message, 1, "google.ads.googleads.v2.resources.Ad"
@@ -82,28 +84,26 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
82
84
  add_message "google.ads.googleads.v2.resources.Recommendation.MaximizeConversionsOptInRecommendation" do
83
85
  optional :recommended_budget_amount_micros, :message, 1, "google.protobuf.Int64Value"
84
86
  end
85
- add_message "google.ads.googleads.v2.resources.Recommendation.SitelinkExtensionRecommendation" do
86
- repeated :recommended_extensions, :message, 1, "google.ads.googleads.v2.common.SitelinkFeedItem"
87
- end
88
- add_message "google.ads.googleads.v2.resources.Recommendation.EnhancedCpcOptInRecommendation" do
89
- end
90
- add_message "google.ads.googleads.v2.resources.Recommendation.KeywordMatchTypeRecommendation" do
91
- optional :keyword, :message, 1, "google.ads.googleads.v2.common.KeywordInfo"
92
- optional :recommended_match_type, :enum, 2, "google.ads.googleads.v2.enums.KeywordMatchTypeEnum.KeywordMatchType"
93
- end
94
87
  add_message "google.ads.googleads.v2.resources.Recommendation.SearchPartnersOptInRecommendation" do
95
88
  end
96
- add_message "google.ads.googleads.v2.resources.Recommendation.OptimizeAdRotationRecommendation" do
97
- end
98
89
  add_message "google.ads.googleads.v2.resources.Recommendation.MoveUnusedBudgetRecommendation" do
99
90
  optional :excess_campaign_budget, :message, 1, "google.protobuf.StringValue"
100
91
  optional :budget_recommendation, :message, 2, "google.ads.googleads.v2.resources.Recommendation.CampaignBudgetRecommendation"
101
92
  end
93
+ add_message "google.ads.googleads.v2.resources.Recommendation.EnhancedCpcOptInRecommendation" do
94
+ end
95
+ add_message "google.ads.googleads.v2.resources.Recommendation.MaximizeClicksOptInRecommendation" do
96
+ optional :recommended_budget_amount_micros, :message, 1, "google.protobuf.Int64Value"
97
+ end
102
98
  add_message "google.ads.googleads.v2.resources.Recommendation.CalloutExtensionRecommendation" do
103
99
  repeated :recommended_extensions, :message, 1, "google.ads.googleads.v2.common.CalloutFeedItem"
104
100
  end
105
- add_message "google.ads.googleads.v2.resources.Recommendation.CallExtensionRecommendation" do
106
- repeated :recommended_extensions, :message, 1, "google.ads.googleads.v2.common.CallFeedItem"
101
+ add_message "google.ads.googleads.v2.resources.Recommendation.KeywordMatchTypeRecommendation" do
102
+ optional :keyword, :message, 1, "google.ads.googleads.v2.common.KeywordInfo"
103
+ optional :recommended_match_type, :enum, 2, "google.ads.googleads.v2.enums.KeywordMatchTypeEnum.KeywordMatchType"
104
+ end
105
+ add_message "google.ads.googleads.v2.resources.Recommendation.SitelinkExtensionRecommendation" do
106
+ repeated :recommended_extensions, :message, 1, "google.ads.googleads.v2.common.SitelinkFeedItem"
107
107
  end
108
108
  end
109
109
 
@@ -114,17 +114,17 @@ module Google::Ads::GoogleAds::V2::Resources
114
114
  Recommendation::CampaignBudgetRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.CampaignBudgetRecommendation").msgclass
115
115
  Recommendation::CampaignBudgetRecommendation::CampaignBudgetRecommendationOption = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.CampaignBudgetRecommendation.CampaignBudgetRecommendationOption").msgclass
116
116
  Recommendation::KeywordRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.KeywordRecommendation").msgclass
117
- Recommendation::MaximizeClicksOptInRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.MaximizeClicksOptInRecommendation").msgclass
117
+ Recommendation::OptimizeAdRotationRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.OptimizeAdRotationRecommendation").msgclass
118
+ Recommendation::CallExtensionRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.CallExtensionRecommendation").msgclass
118
119
  Recommendation::TextAdRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.TextAdRecommendation").msgclass
119
120
  Recommendation::TargetCpaOptInRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.TargetCpaOptInRecommendation").msgclass
120
121
  Recommendation::TargetCpaOptInRecommendation::TargetCpaOptInRecommendationOption = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.TargetCpaOptInRecommendation.TargetCpaOptInRecommendationOption").msgclass
121
122
  Recommendation::MaximizeConversionsOptInRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.MaximizeConversionsOptInRecommendation").msgclass
122
- Recommendation::SitelinkExtensionRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.SitelinkExtensionRecommendation").msgclass
123
- Recommendation::EnhancedCpcOptInRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.EnhancedCpcOptInRecommendation").msgclass
124
- Recommendation::KeywordMatchTypeRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.KeywordMatchTypeRecommendation").msgclass
125
123
  Recommendation::SearchPartnersOptInRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.SearchPartnersOptInRecommendation").msgclass
126
- Recommendation::OptimizeAdRotationRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.OptimizeAdRotationRecommendation").msgclass
127
124
  Recommendation::MoveUnusedBudgetRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.MoveUnusedBudgetRecommendation").msgclass
125
+ Recommendation::EnhancedCpcOptInRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.EnhancedCpcOptInRecommendation").msgclass
126
+ Recommendation::MaximizeClicksOptInRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.MaximizeClicksOptInRecommendation").msgclass
128
127
  Recommendation::CalloutExtensionRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.CalloutExtensionRecommendation").msgclass
129
- Recommendation::CallExtensionRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.CallExtensionRecommendation").msgclass
128
+ Recommendation::KeywordMatchTypeRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.KeywordMatchTypeRecommendation").msgclass
129
+ Recommendation::SitelinkExtensionRecommendation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.ads.googleads.v2.resources.Recommendation.SitelinkExtensionRecommendation").msgclass
130
130
  end
@@ -0,0 +1,233 @@
1
+ # Copyright 2019 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # https://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #
15
+ # EDITING INSTRUCTIONS
16
+ # This file was generated from the file
17
+ # https://github.com/googleapis/googleapis/blob/master/google/ads/google_ads/v2/services/invoice_service.proto,
18
+ # and updates to that file get reflected here through a refresh process.
19
+ # For the short term, the refresh process will only be runnable by Google
20
+ # engineers.
21
+
22
+ require "json"
23
+ require "pathname"
24
+
25
+ require "google/gax"
26
+
27
+ require "google/ads/google_ads/v2/services/invoice_service_pb"
28
+ require "google/ads/google_ads/v2/services/credentials"
29
+
30
+ module Google
31
+ module Ads
32
+ module GoogleAds
33
+ module V2
34
+ module Services
35
+ # A service to fetch invoices issued for a billing setup during a given month.
36
+ #
37
+ # @!attribute [r] invoice_service_stub
38
+ # @return [Google::Ads::GoogleAds::V2::Services::InvoiceService::Stub]
39
+ class InvoiceServiceClient
40
+ attr_reader :invoice_service_stub
41
+
42
+ # The default address of the service.
43
+ SERVICE_ADDRESS = "googleads.googleapis.com".freeze
44
+
45
+ # The default port of the service.
46
+ DEFAULT_SERVICE_PORT = 443
47
+
48
+ # The default set of gRPC interceptors.
49
+ GRPC_INTERCEPTORS = []
50
+
51
+ DEFAULT_TIMEOUT = 30
52
+
53
+ # The scopes needed to make gRPC calls to all of the methods defined in
54
+ # this service.
55
+ ALL_SCOPES = [
56
+ ].freeze
57
+
58
+
59
+ # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
60
+ # Provides the means for authenticating requests made by the client. This parameter can
61
+ # be many types.
62
+ # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
63
+ # authenticating requests made by this client.
64
+ # A `String` will be treated as the path to the keyfile to be used for the construction of
65
+ # credentials for this client.
66
+ # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
67
+ # credentials for this client.
68
+ # A `GRPC::Core::Channel` will be used to make calls through.
69
+ # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
70
+ # should already be composed with a `GRPC::Core::CallCredentials` object.
71
+ # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
72
+ # metadata for requests, generally, to give OAuth credentials.
73
+ # @param scopes [Array<String>]
74
+ # The OAuth scopes for this service. This parameter is ignored if
75
+ # an updater_proc is supplied.
76
+ # @param client_config [Hash]
77
+ # A Hash for call options for each method. See
78
+ # Google::Gax#construct_settings for the structure of
79
+ # this data. Falls back to the default config if not specified
80
+ # or the specified config is missing data points.
81
+ # @param timeout [Numeric]
82
+ # The default timeout, in seconds, for calls made through this client.
83
+ # @param metadata [Hash]
84
+ # Default metadata to be sent with each request. This can be overridden on a per call basis.
85
+ # @param exception_transformer [Proc]
86
+ # An optional proc that intercepts any exceptions raised during an API call to inject
87
+ # custom error handling.
88
+ def initialize \
89
+ credentials: nil,
90
+ scopes: ALL_SCOPES,
91
+ client_config: {},
92
+ timeout: DEFAULT_TIMEOUT,
93
+ metadata: nil,
94
+ exception_transformer: nil,
95
+ lib_name: nil,
96
+ lib_version: ""
97
+ # These require statements are intentionally placed here to initialize
98
+ # the gRPC module only when it's required.
99
+ # See https://github.com/googleapis/toolkit/issues/446
100
+ require "google/gax/grpc"
101
+ require "google/ads/google_ads/v2/services/invoice_service_services_pb"
102
+
103
+ credentials ||= Google::Ads::GoogleAds::V2::Services::Credentials.default
104
+
105
+ if credentials.is_a?(String) || credentials.is_a?(Hash)
106
+ updater_proc = Google::Ads::GoogleAds::V2::Services::Credentials.new(credentials).updater_proc
107
+ end
108
+ if credentials.is_a?(GRPC::Core::Channel)
109
+ channel = credentials
110
+ end
111
+ if credentials.is_a?(GRPC::Core::ChannelCredentials)
112
+ chan_creds = credentials
113
+ end
114
+ if credentials.is_a?(Proc)
115
+ updater_proc = credentials
116
+ end
117
+ if credentials.is_a?(Google::Auth::Credentials)
118
+ updater_proc = credentials.updater_proc
119
+ end
120
+
121
+ package_version = Gem.loaded_specs['google-ads-googleads'].version.version
122
+
123
+ google_api_client = "gl-ruby/#{RUBY_VERSION}"
124
+ google_api_client << " #{lib_name}/#{lib_version}" if lib_name
125
+ google_api_client << " gapic/#{package_version} gax/#{Google::Gax::VERSION}"
126
+ google_api_client << " grpc/#{GRPC::VERSION}"
127
+ google_api_client.freeze
128
+
129
+ headers = { :"x-goog-api-client" => google_api_client }
130
+ headers.merge!(metadata) unless metadata.nil?
131
+ client_config_file = Pathname.new(__dir__).join(
132
+ "invoice_service_client_config.json"
133
+ )
134
+ defaults = client_config_file.open do |f|
135
+ Google::Gax.construct_settings(
136
+ "google.ads.googleads.v2.services.InvoiceService",
137
+ JSON.parse(f.read),
138
+ client_config,
139
+ Google::Gax::Grpc::STATUS_CODE_NAMES,
140
+ timeout,
141
+ errors: Google::Gax::Grpc::API_ERRORS,
142
+ metadata: headers
143
+ )
144
+ end
145
+
146
+ # Allow overriding the service path/port in subclasses.
147
+ service_path = self.class::SERVICE_ADDRESS
148
+ port = self.class::DEFAULT_SERVICE_PORT
149
+ interceptors = self.class::GRPC_INTERCEPTORS
150
+ @invoice_service_stub = Google::Gax::Grpc.create_stub(
151
+ service_path,
152
+ port,
153
+ chan_creds: chan_creds,
154
+ channel: channel,
155
+ updater_proc: updater_proc,
156
+ scopes: scopes,
157
+ interceptors: interceptors,
158
+ &Google::Ads::GoogleAds::V2::Services::InvoiceService::Stub.method(:new)
159
+ )
160
+
161
+ @list_invoices = Google::Gax.create_api_call(
162
+ @invoice_service_stub.method(:list_invoices),
163
+ defaults["list_invoices"],
164
+ exception_transformer: exception_transformer,
165
+ params_extractor: proc do |request|
166
+ {'customer_id' => request.customer_id}
167
+ end
168
+ )
169
+ end
170
+
171
+ # Service calls
172
+
173
+ # Returns all invoices associated with a billing setup, for a given month.
174
+ #
175
+ # @param customer_id [String]
176
+ # The ID of the customer to fetch invoices for.
177
+ # @param billing_setup [String]
178
+ # Required. The billing setup resource name of the requested invoices.
179
+ #
180
+ # `customers/{customer_id}/billingSetups/{billing_setup_id}`
181
+ # @param issue_year [String]
182
+ # Required. The issue year to retrieve invoices, in yyyy format. Only
183
+ # invoices issued in 2019 or later can be retrieved.
184
+ # @param issue_month [Google::Ads::GoogleAds::V2::Enums::MonthOfYearEnum::MonthOfYear]
185
+ # Required. The issue month to retrieve invoices.
186
+ # @param options [Google::Gax::CallOptions]
187
+ # Overrides the default settings for this call, e.g, timeout,
188
+ # retries, etc.
189
+ # @yield [result, operation] Access the result along with the RPC operation
190
+ # @yieldparam result [Google::Ads::GoogleAds::V2::Services::ListInvoicesResponse]
191
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
192
+ # @return [Google::Ads::GoogleAds::V2::Services::ListInvoicesResponse]
193
+ # @raise [Google::Gax::GaxError] if the RPC is aborted.
194
+ # @example
195
+ # require "google/ads/google_ads"
196
+ #
197
+ # invoice_client = Google::Ads::GoogleAds::Invoice.new(version: :v2)
198
+ #
199
+ # # TODO: Initialize `customer_id`:
200
+ # customer_id = ''
201
+ #
202
+ # # TODO: Initialize `billing_setup`:
203
+ # billing_setup = ''
204
+ #
205
+ # # TODO: Initialize `issue_year`:
206
+ # issue_year = ''
207
+ #
208
+ # # TODO: Initialize `issue_month`:
209
+ # issue_month = :UNSPECIFIED
210
+ # response = invoice_client.list_invoices(customer_id, billing_setup, issue_year, issue_month)
211
+
212
+ def list_invoices \
213
+ customer_id,
214
+ billing_setup,
215
+ issue_year,
216
+ issue_month,
217
+ options: nil,
218
+ &block
219
+ req = {
220
+ customer_id: customer_id,
221
+ billing_setup: billing_setup,
222
+ issue_year: issue_year,
223
+ issue_month: issue_month
224
+ }.delete_if { |_, v| v.nil? }
225
+ req = Google::Gax::to_proto(req, Google::Ads::GoogleAds::V2::Services::ListInvoicesRequest)
226
+ @list_invoices.call(req, options, &block)
227
+ end
228
+ end
229
+ end
230
+ end
231
+ end
232
+ end
233
+ end