google-adwords-api 0.21.1 → 0.22.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 (182) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +3 -0
  3. data/examples/{v201603/basic_operations/remove_campaign.rb → v201609/account_management/accept_service_link.rb} +24 -20
  4. data/examples/v201609/advanced_operations/add_universal_app_campaign.rb +3 -0
  5. data/examples/v201609/advanced_operations/use_portfolio_bidding_strategy.rb +3 -0
  6. data/examples/v201609/basic_operations/add_campaigns.rb +3 -0
  7. data/examples/v201609/campaign_management/add_complete_campaigns_using_batch_job.rb +3 -0
  8. data/examples/v201609/misc/use_oauth2_jwt.rb +1 -1
  9. data/examples/v201609/shopping_campaigns/add_shopping_campaign.rb +4 -0
  10. data/lib/adwords_api/api_config.rb +0 -92
  11. data/lib/adwords_api/version.rb +1 -1
  12. data/test/adwords_api/test_choices.rb +88 -25
  13. metadata +5 -174
  14. data/examples/v201603/account_management/create_account.rb +0 -88
  15. data/examples/v201603/account_management/get_account_changes.rb +0 -135
  16. data/examples/v201603/account_management/get_account_hierarchy.rb +0 -132
  17. data/examples/v201603/advanced_operations/add_ad_customizers.rb +0 -184
  18. data/examples/v201603/advanced_operations/add_ad_group_bid_modifier.rb +0 -101
  19. data/examples/v201603/advanced_operations/add_click_to_download_ad.rb +0 -133
  20. data/examples/v201603/advanced_operations/add_html5_ad.rb +0 -137
  21. data/examples/v201603/advanced_operations/add_text_ad_with_upgraded_urls.rb +0 -134
  22. data/examples/v201603/advanced_operations/create_and_attach_shared_keyword_set.rb +0 -141
  23. data/examples/v201603/advanced_operations/find_and_remove_criteria_from_shared_set.rb +0 -174
  24. data/examples/v201603/advanced_operations/get_ad_group_bid_modifiers.rb +0 -102
  25. data/examples/v201603/advanced_operations/use_portfolio_bidding_strategy.rb +0 -146
  26. data/examples/v201603/basic_operations/add_ad_groups.rb +0 -142
  27. data/examples/v201603/basic_operations/add_campaigns.rb +0 -138
  28. data/examples/v201603/basic_operations/add_keywords.rb +0 -114
  29. data/examples/v201603/basic_operations/add_text_ads.rb +0 -109
  30. data/examples/v201603/basic_operations/get_ad_groups.rb +0 -102
  31. data/examples/v201603/basic_operations/get_campaigns.rb +0 -97
  32. data/examples/v201603/basic_operations/get_campaigns_with_awql.rb +0 -89
  33. data/examples/v201603/basic_operations/get_keywords.rb +0 -109
  34. data/examples/v201603/basic_operations/get_text_ads.rb +0 -110
  35. data/examples/v201603/basic_operations/pause_ad.rb +0 -88
  36. data/examples/v201603/basic_operations/remove_ad.rb +0 -89
  37. data/examples/v201603/basic_operations/remove_ad_group.rb +0 -85
  38. data/examples/v201603/basic_operations/remove_keyword.rb +0 -94
  39. data/examples/v201603/basic_operations/update_ad_group.rb +0 -85
  40. data/examples/v201603/basic_operations/update_campaign.rb +0 -86
  41. data/examples/v201603/basic_operations/update_keyword.rb +0 -106
  42. data/examples/v201603/campaign_management/add_campaign_labels.rb +0 -82
  43. data/examples/v201603/campaign_management/add_complete_campaigns_using_batch_job.rb +0 -355
  44. data/examples/v201603/campaign_management/add_draft.rb +0 -114
  45. data/examples/v201603/campaign_management/add_experiment.rb +0 -162
  46. data/examples/v201603/campaign_management/add_keywords_using_incremental_batch_job.rb +0 -210
  47. data/examples/v201603/campaign_management/add_trial.rb +0 -142
  48. data/examples/v201603/campaign_management/get_all_disapproved_ads.rb +0 -97
  49. data/examples/v201603/campaign_management/get_all_disapproved_ads_with_awql.rb +0 -89
  50. data/examples/v201603/campaign_management/get_campaigns_by_label.rb +0 -108
  51. data/examples/v201603/campaign_management/graduate_trial.rb +0 -106
  52. data/examples/v201603/campaign_management/promote_experiment.rb +0 -81
  53. data/examples/v201603/campaign_management/set_ad_parameters.rb +0 -118
  54. data/examples/v201603/campaign_management/set_criterion_bid_modifier.rb +0 -104
  55. data/examples/v201603/campaign_management/validate_text_ad.rb +0 -110
  56. data/examples/v201603/error_handling/handle_partial_failures.rb +0 -130
  57. data/examples/v201603/error_handling/handle_policy_violation_error.rb +0 -141
  58. data/examples/v201603/extensions/add_google_my_business_location_extensions.rb +0 -193
  59. data/examples/v201603/extensions/add_site_links.rb +0 -184
  60. data/examples/v201603/extensions/add_site_links_using_feeds.rb +0 -281
  61. data/examples/v201603/migration/migrate_to_extension_settings.rb +0 -386
  62. data/examples/v201603/migration/upgrade_ad_url.rb +0 -93
  63. data/examples/v201603/misc/get_all_images_and_videos.rb +0 -104
  64. data/examples/v201603/misc/setup_oauth2.rb +0 -84
  65. data/examples/v201603/misc/upload_image.rb +0 -93
  66. data/examples/v201603/misc/upload_media_bundle.rb +0 -90
  67. data/examples/v201603/misc/use_oauth2_jwt.rb +0 -93
  68. data/examples/v201603/misc/use_runtime_config.rb +0 -92
  69. data/examples/v201603/optimization/estimate_keyword_traffic.rb +0 -146
  70. data/examples/v201603/optimization/get_campaign_criterion_bid_modifier_simulations.rb +0 -128
  71. data/examples/v201603/optimization/get_keyword_bid_simulations.rb +0 -95
  72. data/examples/v201603/optimization/get_keyword_ideas.rb +0 -136
  73. data/examples/v201603/remarketing/add_audience.rb +0 -118
  74. data/examples/v201603/remarketing/add_conversion_tracker.rb +0 -97
  75. data/examples/v201603/remarketing/add_crm_based_user_list.rb +0 -116
  76. data/examples/v201603/remarketing/add_rule_based_user_lists.rb +0 -167
  77. data/examples/v201603/remarketing/upload_offline_conversions.rb +0 -98
  78. data/examples/v201603/reporting/download_criteria_report.rb +0 -92
  79. data/examples/v201603/reporting/download_criteria_report_with_awql.rb +0 -93
  80. data/examples/v201603/reporting/get_report_fields.rb +0 -75
  81. data/examples/v201603/reporting/parallel_report_download.rb +0 -164
  82. data/examples/v201603/reporting/stream_criteria_report_results.rb +0 -97
  83. data/examples/v201603/shopping_campaigns/add_product_partition_tree.rb +0 -267
  84. data/examples/v201603/shopping_campaigns/add_product_scope.rb +0 -130
  85. data/examples/v201603/shopping_campaigns/add_shopping_campaign.rb +0 -129
  86. data/examples/v201603/shopping_campaigns/get_product_category_taxonomy.rb +0 -115
  87. data/examples/v201603/targeting/add_campaign_targeting_criteria.rb +0 -180
  88. data/examples/v201603/targeting/add_demographic_targeting_criteria.rb +0 -112
  89. data/examples/v201603/targeting/get_campaign_targeting_criteria.rb +0 -106
  90. data/examples/v201603/targeting/get_targetable_languages_and_carriers.rb +0 -89
  91. data/examples/v201603/targeting/lookup_location.rb +0 -108
  92. data/lib/adwords_api/v201603/account_label_service.rb +0 -46
  93. data/lib/adwords_api/v201603/account_label_service_registry.rb +0 -46
  94. data/lib/adwords_api/v201603/ad_customizer_feed_service.rb +0 -46
  95. data/lib/adwords_api/v201603/ad_customizer_feed_service_registry.rb +0 -46
  96. data/lib/adwords_api/v201603/ad_group_ad_service.rb +0 -70
  97. data/lib/adwords_api/v201603/ad_group_ad_service_registry.rb +0 -46
  98. data/lib/adwords_api/v201603/ad_group_bid_modifier_service.rb +0 -54
  99. data/lib/adwords_api/v201603/ad_group_bid_modifier_service_registry.rb +0 -46
  100. data/lib/adwords_api/v201603/ad_group_criterion_service.rb +0 -62
  101. data/lib/adwords_api/v201603/ad_group_criterion_service_registry.rb +0 -46
  102. data/lib/adwords_api/v201603/ad_group_extension_setting_service.rb +0 -54
  103. data/lib/adwords_api/v201603/ad_group_extension_setting_service_registry.rb +0 -46
  104. data/lib/adwords_api/v201603/ad_group_feed_service.rb +0 -54
  105. data/lib/adwords_api/v201603/ad_group_feed_service_registry.rb +0 -46
  106. data/lib/adwords_api/v201603/ad_group_service.rb +0 -62
  107. data/lib/adwords_api/v201603/ad_group_service_registry.rb +0 -46
  108. data/lib/adwords_api/v201603/ad_param_service.rb +0 -46
  109. data/lib/adwords_api/v201603/ad_param_service_registry.rb +0 -46
  110. data/lib/adwords_api/v201603/adwords_user_list_service.rb +0 -62
  111. data/lib/adwords_api/v201603/adwords_user_list_service_registry.rb +0 -46
  112. data/lib/adwords_api/v201603/batch_job_service.rb +0 -54
  113. data/lib/adwords_api/v201603/batch_job_service_registry.rb +0 -46
  114. data/lib/adwords_api/v201603/bidding_strategy_service.rb +0 -54
  115. data/lib/adwords_api/v201603/bidding_strategy_service_registry.rb +0 -46
  116. data/lib/adwords_api/v201603/budget_order_service.rb +0 -54
  117. data/lib/adwords_api/v201603/budget_order_service_registry.rb +0 -46
  118. data/lib/adwords_api/v201603/budget_service.rb +0 -54
  119. data/lib/adwords_api/v201603/budget_service_registry.rb +0 -46
  120. data/lib/adwords_api/v201603/campaign_criterion_service.rb +0 -54
  121. data/lib/adwords_api/v201603/campaign_criterion_service_registry.rb +0 -46
  122. data/lib/adwords_api/v201603/campaign_extension_setting_service.rb +0 -54
  123. data/lib/adwords_api/v201603/campaign_extension_setting_service_registry.rb +0 -46
  124. data/lib/adwords_api/v201603/campaign_feed_service.rb +0 -54
  125. data/lib/adwords_api/v201603/campaign_feed_service_registry.rb +0 -46
  126. data/lib/adwords_api/v201603/campaign_service.rb +0 -62
  127. data/lib/adwords_api/v201603/campaign_service_registry.rb +0 -46
  128. data/lib/adwords_api/v201603/campaign_shared_set_service.rb +0 -54
  129. data/lib/adwords_api/v201603/campaign_shared_set_service_registry.rb +0 -46
  130. data/lib/adwords_api/v201603/constant_data_service.rb +0 -110
  131. data/lib/adwords_api/v201603/constant_data_service_registry.rb +0 -46
  132. data/lib/adwords_api/v201603/conversion_tracker_service.rb +0 -54
  133. data/lib/adwords_api/v201603/conversion_tracker_service_registry.rb +0 -46
  134. data/lib/adwords_api/v201603/customer_extension_setting_service.rb +0 -54
  135. data/lib/adwords_api/v201603/customer_extension_setting_service_registry.rb +0 -46
  136. data/lib/adwords_api/v201603/customer_feed_service.rb +0 -54
  137. data/lib/adwords_api/v201603/customer_feed_service_registry.rb +0 -46
  138. data/lib/adwords_api/v201603/customer_service.rb +0 -54
  139. data/lib/adwords_api/v201603/customer_service_registry.rb +0 -46
  140. data/lib/adwords_api/v201603/customer_sync_service.rb +0 -38
  141. data/lib/adwords_api/v201603/customer_sync_service_registry.rb +0 -47
  142. data/lib/adwords_api/v201603/data_service.rb +0 -94
  143. data/lib/adwords_api/v201603/data_service_registry.rb +0 -46
  144. data/lib/adwords_api/v201603/draft_async_error_service.rb +0 -46
  145. data/lib/adwords_api/v201603/draft_async_error_service_registry.rb +0 -46
  146. data/lib/adwords_api/v201603/draft_service.rb +0 -54
  147. data/lib/adwords_api/v201603/draft_service_registry.rb +0 -46
  148. data/lib/adwords_api/v201603/experiment_service.rb +0 -46
  149. data/lib/adwords_api/v201603/experiment_service_registry.rb +0 -46
  150. data/lib/adwords_api/v201603/feed_item_service.rb +0 -54
  151. data/lib/adwords_api/v201603/feed_item_service_registry.rb +0 -46
  152. data/lib/adwords_api/v201603/feed_mapping_service.rb +0 -54
  153. data/lib/adwords_api/v201603/feed_mapping_service_registry.rb +0 -46
  154. data/lib/adwords_api/v201603/feed_service.rb +0 -54
  155. data/lib/adwords_api/v201603/feed_service_registry.rb +0 -46
  156. data/lib/adwords_api/v201603/label_service.rb +0 -54
  157. data/lib/adwords_api/v201603/label_service_registry.rb +0 -46
  158. data/lib/adwords_api/v201603/location_criterion_service.rb +0 -46
  159. data/lib/adwords_api/v201603/location_criterion_service_registry.rb +0 -46
  160. data/lib/adwords_api/v201603/managed_customer_service.rb +0 -78
  161. data/lib/adwords_api/v201603/managed_customer_service_registry.rb +0 -46
  162. data/lib/adwords_api/v201603/media_service.rb +0 -54
  163. data/lib/adwords_api/v201603/media_service_registry.rb +0 -46
  164. data/lib/adwords_api/v201603/offline_conversion_feed_service.rb +0 -38
  165. data/lib/adwords_api/v201603/offline_conversion_feed_service_registry.rb +0 -46
  166. data/lib/adwords_api/v201603/report_definition_service.rb +0 -38
  167. data/lib/adwords_api/v201603/report_definition_service_registry.rb +0 -46
  168. data/lib/adwords_api/v201603/shared_criterion_service.rb +0 -54
  169. data/lib/adwords_api/v201603/shared_criterion_service_registry.rb +0 -46
  170. data/lib/adwords_api/v201603/shared_set_service.rb +0 -54
  171. data/lib/adwords_api/v201603/shared_set_service_registry.rb +0 -46
  172. data/lib/adwords_api/v201603/targeting_idea_service.rb +0 -38
  173. data/lib/adwords_api/v201603/targeting_idea_service_registry.rb +0 -46
  174. data/lib/adwords_api/v201603/traffic_estimator_service.rb +0 -38
  175. data/lib/adwords_api/v201603/traffic_estimator_service_registry.rb +0 -46
  176. data/lib/adwords_api/v201603/trial_async_error_service.rb +0 -46
  177. data/lib/adwords_api/v201603/trial_async_error_service_registry.rb +0 -46
  178. data/lib/adwords_api/v201603/trial_service.rb +0 -54
  179. data/lib/adwords_api/v201603/trial_service_registry.rb +0 -46
  180. data/test/templates/v201603/basic_operations_get_campaigns.def +0 -116
  181. data/test/templates/v201603/basic_operations_update_keyword.def +0 -125
  182. data/test/templates/v201603/misc_use_oauth2_jwt.def +0 -131
@@ -1,112 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
5
- #
6
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
15
- # implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
- #
19
- # This example adds demographic criteria to an ad group. To get ad groups list,
20
- # run get_ad_groups.rb.
21
-
22
- require 'adwords_api'
23
-
24
- def add_demographic_targeting_criteria(ad_group_id)
25
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
26
- # when called without parameters.
27
- adwords = AdwordsApi::Api.new
28
-
29
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
30
- # the configuration file or provide your own logger:
31
- # adwords.logger = Logger.new('adwords_xml.log')
32
-
33
- ad_group_criterion_srv =
34
- adwords.service(:AdGroupCriterionService, API_VERSION)
35
-
36
- # Create ad group criteria.
37
- ad_group_criteria = [
38
- # Targeting criterion.
39
- {
40
- :xsi_type => 'BiddableAdGroupCriterion',
41
- :ad_group_id => ad_group_id,
42
- :criterion => {
43
- :xsi_type => 'Gender',
44
- # See system codes section for IDs:
45
- # https://developers.google.com/adwords/api/docs/appendix/genders
46
- :id => 11
47
- }
48
- },
49
- # Exclusion criterion.
50
- {
51
- :xsi_type => 'NegativeAdGroupCriterion',
52
- :ad_group_id => ad_group_id,
53
- :criterion => {
54
- :xsi_type => 'AgeRange',
55
- # See system codes section for IDs:
56
- # https://developers.google.com/adwords/api/docs/appendix/ages
57
- :id => 503999
58
- }
59
- }
60
- ]
61
-
62
- # Create operations.
63
- operations = ad_group_criteria.map do |criterion|
64
- {:operator => 'ADD', :operand => criterion}
65
- end
66
-
67
- response = ad_group_criterion_srv.mutate(operations)
68
-
69
- if response and response[:value]
70
- criteria = response[:value]
71
- criteria.each do |ad_group_criterion|
72
- criterion = ad_group_criterion[:criterion]
73
- puts ("Ad group criterion with ad group ID %d, criterion ID %d and " +
74
- "type '%s' was added.") % [ad_group_criterion[:ad_group_id],
75
- criterion[:id], criterion[:criterion_type]]
76
- end
77
- else
78
- puts 'No criteria were returned.'
79
- end
80
- end
81
-
82
- if __FILE__ == $0
83
- API_VERSION = :v201603
84
-
85
- begin
86
- ad_group_id = 'INSERT_AD_GROUP_ID_HERE'
87
- add_demographic_targeting_criteria(ad_group_id)
88
-
89
- # Authorization error.
90
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
91
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
92
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
93
- "to retrieve and store OAuth2 tokens."
94
- puts "See this wiki page for more details:\n\n " +
95
- 'https://github.com/googleads/google-api-ads-ruby/wiki/OAuth2'
96
-
97
- # HTTP errors.
98
- rescue AdsCommon::Errors::HttpError => e
99
- puts "HTTP Error: %s" % e
100
-
101
- # API errors.
102
- rescue AdwordsApi::Errors::ApiException => e
103
- puts "Message: %s" % e.message
104
- puts 'Errors:'
105
- e.errors.each_with_index do |error, index|
106
- puts "\tError [%d]:" % (index + 1)
107
- error.each do |field, value|
108
- puts "\t\t%s: %s" % [field, value]
109
- end
110
- end
111
- end
112
- end
@@ -1,106 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
5
- #
6
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
15
- # implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
- #
19
- # This example illustrates how to retrieve all the campaign targets. To set
20
- # campaign targets, run add_campaign_targeting_criteria.rb.
21
-
22
- require 'adwords_api'
23
-
24
- def get_campaign_targeting_criteria(campaign_id)
25
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
26
- # when called without parameters.
27
- adwords = AdwordsApi::Api.new
28
-
29
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
30
- # the configuration file or provide your own logger:
31
- # adwords.logger = Logger.new('adwords_xml.log')
32
-
33
- campaign_criterion_srv =
34
- adwords.service(:CampaignCriterionService, API_VERSION)
35
-
36
- # Selector to get all the targeting for this campaign.
37
- selector = {
38
- :fields => ['Id', 'CriteriaType', 'KeywordText'],
39
- :predicates => [
40
- {:field => 'CampaignId', :operator => 'EQUALS', :values => [campaign_id]}
41
- ],
42
- :paging => {
43
- :start_index => 0,
44
- :number_results => PAGE_SIZE
45
- }
46
- }
47
-
48
- # Set initial values.
49
- offset, page = 0, {}
50
-
51
- begin
52
- page = campaign_criterion_srv.get(selector)
53
- if page[:entries]
54
- page[:entries].each do |typed_criterion|
55
- negative = typed_criterion[:xsi_type] == 'NegativeCampaignCriterion' ?
56
- ' (negative)' : ''
57
- criterion = typed_criterion[:criterion]
58
- puts ("Campaign criterion%s with ID %d, type '%s' and text '%s'" +
59
- " was found.") %
60
- [negative, criterion[:id], criterion[:type], criterion[:text]]
61
- end
62
- # Increment values to request the next page.
63
- offset += PAGE_SIZE
64
- selector[:paging][:start_index] = offset
65
- end
66
- end while page[:total_num_entries] > offset
67
-
68
- if page.include?(:total_num_entries)
69
- puts "\tCampaign ID %d has %d criteria." %
70
- [campaign_id, page[:total_num_entries]]
71
- end
72
- end
73
-
74
- if __FILE__ == $0
75
- API_VERSION = :v201603
76
- PAGE_SIZE = 500
77
-
78
- begin
79
- # Specify campaign ID to get targeting for.
80
- campaign_id = 'INSERT_CAMPAIGN_ID_HERE'.to_i
81
- get_campaign_targeting_criteria(campaign_id)
82
-
83
- # Authorization error.
84
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
85
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
86
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
87
- "to retrieve and store OAuth2 tokens."
88
- puts "See this wiki page for more details:\n\n " +
89
- 'https://github.com/googleads/google-api-ads-ruby/wiki/OAuth2'
90
-
91
- # HTTP errors.
92
- rescue AdsCommon::Errors::HttpError => e
93
- puts "HTTP Error: %s" % e
94
-
95
- # API errors.
96
- rescue AdwordsApi::Errors::ApiException => e
97
- puts "Message: %s" % e.message
98
- puts 'Errors:'
99
- e.errors.each_with_index do |error, index|
100
- puts "\tError [%d]:" % (index + 1)
101
- error.each do |field, value|
102
- puts "\t\t%s: %s" % [field, value]
103
- end
104
- end
105
- end
106
- end
@@ -1,89 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
5
- #
6
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
15
- # implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
- #
19
- # This example illustrates how to retrieve all languages and carriers available
20
- # for targeting.
21
-
22
- require 'adwords_api'
23
-
24
- def get_targetable_languages_and_carriers()
25
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
26
- # when called without parameters.
27
- adwords = AdwordsApi::Api.new
28
-
29
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
30
- # the configuration file or provide your own logger:
31
- # adwords.logger = Logger.new('adwords_xml.log')
32
-
33
- constant_data_srv = adwords.service(:ConstantDataService, API_VERSION)
34
-
35
- # Get all languages from ConstantDataService.
36
- languages = constant_data_srv.get_language_criterion()
37
-
38
- if languages
39
- languages.each do |language|
40
- puts "Language name is '%s', ID is %d and code is '%s'." %
41
- [language[:name], language[:id], language[:code]]
42
- end
43
- else
44
- puts 'No languages were found.'
45
- end
46
-
47
- # Get all carriers from ConstantDataService.
48
- carriers = constant_data_srv.get_carrier_criterion()
49
-
50
- if carriers
51
- carriers.each do |carrier|
52
- puts "Carrier name is '%s', ID is %d and country code is '%s'." %
53
- [carrier[:name], carrier[:id], carrier[:country_code]]
54
- end
55
- else
56
- puts 'No carriers were retrieved.'
57
- end
58
- end
59
-
60
- if __FILE__ == $0
61
- API_VERSION = :v201603
62
-
63
- begin
64
- get_targetable_languages_and_carriers()
65
-
66
- # Authorization error.
67
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
68
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
69
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
70
- "to retrieve and store OAuth2 tokens."
71
- puts "See this wiki page for more details:\n\n " +
72
- 'https://github.com/googleads/google-api-ads-ruby/wiki/OAuth2'
73
-
74
- # HTTP errors.
75
- rescue AdsCommon::Errors::HttpError => e
76
- puts "HTTP Error: %s" % e
77
-
78
- # API errors.
79
- rescue AdwordsApi::Errors::ApiException => e
80
- puts "Message: %s" % e.message
81
- puts 'Errors:'
82
- e.errors.each_with_index do |error, index|
83
- puts "\tError [%d]:" % (index + 1)
84
- error.each do |field, value|
85
- puts "\t\t%s: %s" % [field, value]
86
- end
87
- end
88
- end
89
- end
@@ -1,108 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
5
- #
6
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
15
- # implied.
16
- # See the License for the specific language governing permissions and
17
- # limitations under the License.
18
- #
19
- # This example gets location criteria by name.
20
-
21
- require 'adwords_api'
22
-
23
- def lookup_location()
24
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
25
- # when called without parameters.
26
- adwords = AdwordsApi::Api.new
27
-
28
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
29
- # the configuration file or provide your own logger:
30
- # adwords.logger = Logger.new('adwords_xml.log')
31
-
32
- location_criterion_srv =
33
- adwords.service(:LocationCriterionService, API_VERSION)
34
-
35
- # List of locations to look up.
36
- location_names = ['Paris', 'Quebec', 'Spain', 'Deutschland']
37
- # Locale to retrieve names in.
38
- locale = 'en'
39
-
40
- # Get the criteria by names.
41
- selector = {
42
- :fields => ['Id', 'LocationName', 'CanonicalName', 'DisplayType',
43
- 'ParentLocations', 'Reach', 'TargetingStatus'],
44
- :predicates => [
45
- # Location names must match exactly, only EQUALS and IN are supported.
46
- {:field => 'LocationName',
47
- :operator => 'IN',
48
- :values => location_names},
49
- # Set the locale of the returned location names.
50
- {:field => 'Locale', :operator => 'EQUALS', :values => [locale]}
51
- ]
52
- }
53
- criteria = location_criterion_srv.get(selector)
54
-
55
- if criteria
56
- criteria.each do |criterion|
57
- # Extract all parent location names as one comma-separated string.
58
- parent_location = if criterion[:location][:parent_locations] and
59
- !criterion[:location][:parent_locations].empty?
60
- locations_array = criterion[:location][:parent_locations].map do |loc|
61
- loc[:location_name]
62
- end
63
- locations_array.join(', ')
64
- else
65
- 'N/A'
66
- end
67
- puts ("The search term '%s' returned the location '%s' of type '%s' " +
68
- "with ID %d, parent locations '%s' and reach %d (%s)") %
69
- [criterion[:search_term], criterion[:location][:location_name],
70
- criterion[:location][:criterion_type], criterion[:location][:id],
71
- parent_location, criterion[:reach],
72
- criterion[:location][:targeting_status]]
73
- end
74
- else
75
- puts 'No criteria were returned.'
76
- end
77
- end
78
-
79
- if __FILE__ == $0
80
- API_VERSION = :v201603
81
-
82
- begin
83
- lookup_location()
84
-
85
- # Authorization error.
86
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
87
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
88
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
89
- "to retrieve and store OAuth2 tokens."
90
- puts "See this wiki page for more details:\n\n " +
91
- 'https://github.com/googleads/google-api-ads-ruby/wiki/OAuth2'
92
-
93
- # HTTP errors.
94
- rescue AdsCommon::Errors::HttpError => e
95
- puts "HTTP Error: %s" % e
96
-
97
- # API errors.
98
- rescue AdwordsApi::Errors::ApiException => e
99
- puts "Message: %s" % e.message
100
- puts 'Errors:'
101
- e.errors.each_with_index do |error, index|
102
- puts "\tError [%d]:" % (index + 1)
103
- error.each do |field, value|
104
- puts "\t\t%s: %s" % [field, value]
105
- end
106
- end
107
- end
108
- end
@@ -1,46 +0,0 @@
1
- # Encoding: utf-8
2
- #
3
- # This is auto-generated code, changes will be overwritten.
4
- #
5
- # Copyright:: Copyright 2016, Google Inc. All Rights Reserved.
6
- # License:: Licensed under the Apache License, Version 2.0.
7
- #
8
- # Code generated by AdsCommon library 0.11.3 on 2016-03-23 14:52:20.
9
-
10
- require 'ads_common/savon_service'
11
- require 'adwords_api/v201603/account_label_service_registry'
12
-
13
- module AdwordsApi; module V201603; module AccountLabelService
14
- class AccountLabelService < AdsCommon::SavonService
15
- def initialize(config, endpoint)
16
- namespace = 'https://adwords.google.com/api/adwords/mcm/v201603'
17
- super(config, endpoint, namespace, :v201603)
18
- end
19
-
20
- def get(*args, &block)
21
- return execute_action('get', args, &block)
22
- end
23
-
24
- def get_to_xml(*args)
25
- return get_soap_xml('get', args)
26
- end
27
-
28
- def mutate(*args, &block)
29
- return execute_action('mutate', args, &block)
30
- end
31
-
32
- def mutate_to_xml(*args)
33
- return get_soap_xml('mutate', args)
34
- end
35
-
36
- private
37
-
38
- def get_service_registry()
39
- return AccountLabelServiceRegistry
40
- end
41
-
42
- def get_module()
43
- return AdwordsApi::V201603::AccountLabelService
44
- end
45
- end
46
- end; end; end