google-adwords-api 0.15.2 → 0.16.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 (167) hide show
  1. checksums.yaml +8 -8
  2. data/ChangeLog +7 -0
  3. data/adwords_api.yml +3 -2
  4. data/examples/v201506/basic_operations/get_keywords.rb +4 -3
  5. data/examples/v201506/misc/{create_ad_words_session_without_properties_file.rb → use_runtime_config.rb} +2 -2
  6. data/lib/adwords_api.rb +1 -1
  7. data/lib/adwords_api/api_config.rb +0 -86
  8. data/lib/adwords_api/report_header_handler.rb +4 -4
  9. data/lib/adwords_api/version.rb +1 -1
  10. data/test/templates/v201502/basic_operations_get_campaigns.def +1 -1
  11. data/test/templates/v201502/{misc_use_oauth2_jwt.def → misc_use_oauth2_service_account.def} +2 -2
  12. data/test/templates/v201506/basic_operations_get_campaigns.def +1 -1
  13. data/test/templates/v201506/{misc_use_oauth2_jwt.def → misc_use_oauth2_service_account.def} +2 -2
  14. metadata +7 -160
  15. data/examples/v201409/account_management/create_account.rb +0 -92
  16. data/examples/v201409/account_management/get_account_changes.rb +0 -145
  17. data/examples/v201409/account_management/get_account_hierarchy.rb +0 -102
  18. data/examples/v201409/advanced_operations/add_ad_customizers.rb +0 -277
  19. data/examples/v201409/advanced_operations/add_ad_group_bid_modifier.rb +0 -105
  20. data/examples/v201409/advanced_operations/add_click_to_download_ad.rb +0 -137
  21. data/examples/v201409/advanced_operations/add_text_ad_with_upgraded_urls.rb +0 -137
  22. data/examples/v201409/advanced_operations/get_ad_group_bid_modifiers.rb +0 -106
  23. data/examples/v201409/advanced_operations/upload_offline_conversions.rb +0 -117
  24. data/examples/v201409/advanced_operations/use_shared_bidding_strategy.rb +0 -152
  25. data/examples/v201409/basic_operations/add_ad_groups.rb +0 -144
  26. data/examples/v201409/basic_operations/add_campaigns.rb +0 -143
  27. data/examples/v201409/basic_operations/add_keywords.rb +0 -118
  28. data/examples/v201409/basic_operations/add_text_ads.rb +0 -113
  29. data/examples/v201409/basic_operations/get_ad_groups.rb +0 -106
  30. data/examples/v201409/basic_operations/get_campaigns.rb +0 -101
  31. data/examples/v201409/basic_operations/get_campaigns_with_awql.rb +0 -93
  32. data/examples/v201409/basic_operations/get_keywords.rb +0 -112
  33. data/examples/v201409/basic_operations/get_text_ads.rb +0 -114
  34. data/examples/v201409/basic_operations/pause_ad.rb +0 -92
  35. data/examples/v201409/basic_operations/remove_ad.rb +0 -93
  36. data/examples/v201409/basic_operations/remove_ad_group.rb +0 -89
  37. data/examples/v201409/basic_operations/remove_campaign.rb +0 -91
  38. data/examples/v201409/basic_operations/remove_keyword.rb +0 -98
  39. data/examples/v201409/basic_operations/update_ad_group.rb +0 -89
  40. data/examples/v201409/basic_operations/update_campaign.rb +0 -90
  41. data/examples/v201409/basic_operations/update_keyword.rb +0 -110
  42. data/examples/v201409/campaign_management/add_campaign_labels.rb +0 -86
  43. data/examples/v201409/campaign_management/add_experiment.rb +0 -166
  44. data/examples/v201409/campaign_management/add_keywords_in_bulk.rb +0 -158
  45. data/examples/v201409/campaign_management/add_location_extension.rb +0 -125
  46. data/examples/v201409/campaign_management/get_all_disapproved_ads.rb +0 -101
  47. data/examples/v201409/campaign_management/get_all_disapproved_ads_with_awql.rb +0 -93
  48. data/examples/v201409/campaign_management/get_campaigns_by_label.rb +0 -112
  49. data/examples/v201409/campaign_management/promote_experiment.rb +0 -85
  50. data/examples/v201409/campaign_management/set_ad_parameters.rb +0 -122
  51. data/examples/v201409/campaign_management/set_criterion_bid_modifier.rb +0 -108
  52. data/examples/v201409/campaign_management/validate_text_ad.rb +0 -114
  53. data/examples/v201409/error_handling/handle_partial_failures.rb +0 -134
  54. data/examples/v201409/error_handling/handle_policy_violation_error.rb +0 -145
  55. data/examples/v201409/extensions/add_google_my_business_location_extensions.rb +0 -183
  56. data/examples/v201409/extensions/add_site_links.rb +0 -167
  57. data/examples/v201409/extensions/add_site_links_using_feeds.rb +0 -306
  58. data/examples/v201409/migration/migrate_to_extension_settings.rb +0 -392
  59. data/examples/v201409/migration/upgrade_ad_url.rb +0 -97
  60. data/examples/v201409/misc/create_ad_words_session_without_properties_file.rb +0 -94
  61. data/examples/v201409/misc/get_all_images_and_videos.rb +0 -108
  62. data/examples/v201409/misc/setup_oauth2.rb +0 -88
  63. data/examples/v201409/misc/upload_image.rb +0 -97
  64. data/examples/v201409/misc/use_oauth2_jwt.rb +0 -97
  65. data/examples/v201409/optimization/estimate_keyword_traffic.rb +0 -155
  66. data/examples/v201409/optimization/get_keyword_bid_simulations.rb +0 -100
  67. data/examples/v201409/optimization/get_keyword_ideas.rb +0 -130
  68. data/examples/v201409/remarketing/add_audience.rb +0 -122
  69. data/examples/v201409/remarketing/add_conversion_tracker.rb +0 -105
  70. data/examples/v201409/remarketing/add_rule_based_user_lists.rb +0 -171
  71. data/examples/v201409/reporting/download_criteria_report.rb +0 -87
  72. data/examples/v201409/reporting/download_criteria_report_with_awql.rb +0 -86
  73. data/examples/v201409/reporting/get_report_fields.rb +0 -79
  74. data/examples/v201409/reporting/parallel_report_download.rb +0 -171
  75. data/examples/v201409/shopping_campaigns/add_product_partition_tree.rb +0 -269
  76. data/examples/v201409/shopping_campaigns/add_product_scope.rb +0 -133
  77. data/examples/v201409/shopping_campaigns/add_shopping_campaign.rb +0 -131
  78. data/examples/v201409/shopping_campaigns/get_product_category_taxonomy.rb +0 -117
  79. data/examples/v201409/targeting/add_campaign_targeting_criteria.rb +0 -173
  80. data/examples/v201409/targeting/add_demographic_targeting_criteria.rb +0 -116
  81. data/examples/v201409/targeting/get_campaign_targeting_criteria.rb +0 -110
  82. data/examples/v201409/targeting/get_targetable_languages_and_carriers.rb +0 -94
  83. data/examples/v201409/targeting/lookup_location.rb +0 -112
  84. data/lib/adwords_api/v201409/ad_customizer_feed_service.rb +0 -38
  85. data/lib/adwords_api/v201409/ad_customizer_feed_service_registry.rb +0 -46
  86. data/lib/adwords_api/v201409/ad_group_ad_service.rb +0 -50
  87. data/lib/adwords_api/v201409/ad_group_ad_service_registry.rb +0 -46
  88. data/lib/adwords_api/v201409/ad_group_bid_modifier_service.rb +0 -42
  89. data/lib/adwords_api/v201409/ad_group_bid_modifier_service_registry.rb +0 -46
  90. data/lib/adwords_api/v201409/ad_group_criterion_service.rb +0 -46
  91. data/lib/adwords_api/v201409/ad_group_criterion_service_registry.rb +0 -46
  92. data/lib/adwords_api/v201409/ad_group_extension_setting_service.rb +0 -42
  93. data/lib/adwords_api/v201409/ad_group_extension_setting_service_registry.rb +0 -46
  94. data/lib/adwords_api/v201409/ad_group_feed_service.rb +0 -42
  95. data/lib/adwords_api/v201409/ad_group_feed_service_registry.rb +0 -46
  96. data/lib/adwords_api/v201409/ad_group_service.rb +0 -46
  97. data/lib/adwords_api/v201409/ad_group_service_registry.rb +0 -46
  98. data/lib/adwords_api/v201409/ad_param_service.rb +0 -38
  99. data/lib/adwords_api/v201409/ad_param_service_registry.rb +0 -46
  100. data/lib/adwords_api/v201409/adwords_user_list_service.rb +0 -38
  101. data/lib/adwords_api/v201409/adwords_user_list_service_registry.rb +0 -46
  102. data/lib/adwords_api/v201409/bidding_strategy_service.rb +0 -42
  103. data/lib/adwords_api/v201409/bidding_strategy_service_registry.rb +0 -46
  104. data/lib/adwords_api/v201409/budget_order_service.rb +0 -42
  105. data/lib/adwords_api/v201409/budget_order_service_registry.rb +0 -46
  106. data/lib/adwords_api/v201409/budget_service.rb +0 -42
  107. data/lib/adwords_api/v201409/budget_service_registry.rb +0 -46
  108. data/lib/adwords_api/v201409/campaign_ad_extension_service.rb +0 -38
  109. data/lib/adwords_api/v201409/campaign_ad_extension_service_registry.rb +0 -46
  110. data/lib/adwords_api/v201409/campaign_criterion_service.rb +0 -42
  111. data/lib/adwords_api/v201409/campaign_criterion_service_registry.rb +0 -46
  112. data/lib/adwords_api/v201409/campaign_extension_setting_service.rb +0 -42
  113. data/lib/adwords_api/v201409/campaign_extension_setting_service_registry.rb +0 -46
  114. data/lib/adwords_api/v201409/campaign_feed_service.rb +0 -42
  115. data/lib/adwords_api/v201409/campaign_feed_service_registry.rb +0 -46
  116. data/lib/adwords_api/v201409/campaign_service.rb +0 -46
  117. data/lib/adwords_api/v201409/campaign_service_registry.rb +0 -46
  118. data/lib/adwords_api/v201409/campaign_shared_set_service.rb +0 -38
  119. data/lib/adwords_api/v201409/campaign_shared_set_service_registry.rb +0 -47
  120. data/lib/adwords_api/v201409/constant_data_service.rb +0 -66
  121. data/lib/adwords_api/v201409/constant_data_service_registry.rb +0 -46
  122. data/lib/adwords_api/v201409/conversion_tracker_service.rb +0 -38
  123. data/lib/adwords_api/v201409/conversion_tracker_service_registry.rb +0 -46
  124. data/lib/adwords_api/v201409/customer_extension_setting_service.rb +0 -42
  125. data/lib/adwords_api/v201409/customer_extension_setting_service_registry.rb +0 -46
  126. data/lib/adwords_api/v201409/customer_feed_service.rb +0 -42
  127. data/lib/adwords_api/v201409/customer_feed_service_registry.rb +0 -46
  128. data/lib/adwords_api/v201409/customer_service.rb +0 -38
  129. data/lib/adwords_api/v201409/customer_service_registry.rb +0 -46
  130. data/lib/adwords_api/v201409/customer_sync_service.rb +0 -34
  131. data/lib/adwords_api/v201409/customer_sync_service_registry.rb +0 -47
  132. data/lib/adwords_api/v201409/data_service.rb +0 -54
  133. data/lib/adwords_api/v201409/data_service_registry.rb +0 -46
  134. data/lib/adwords_api/v201409/experiment_service.rb +0 -38
  135. data/lib/adwords_api/v201409/experiment_service_registry.rb +0 -46
  136. data/lib/adwords_api/v201409/feed_item_service.rb +0 -42
  137. data/lib/adwords_api/v201409/feed_item_service_registry.rb +0 -46
  138. data/lib/adwords_api/v201409/feed_mapping_service.rb +0 -42
  139. data/lib/adwords_api/v201409/feed_mapping_service_registry.rb +0 -46
  140. data/lib/adwords_api/v201409/feed_service.rb +0 -42
  141. data/lib/adwords_api/v201409/feed_service_registry.rb +0 -46
  142. data/lib/adwords_api/v201409/geo_location_service.rb +0 -34
  143. data/lib/adwords_api/v201409/geo_location_service_registry.rb +0 -46
  144. data/lib/adwords_api/v201409/label_service.rb +0 -42
  145. data/lib/adwords_api/v201409/label_service_registry.rb +0 -46
  146. data/lib/adwords_api/v201409/location_criterion_service.rb +0 -38
  147. data/lib/adwords_api/v201409/location_criterion_service_registry.rb +0 -46
  148. data/lib/adwords_api/v201409/managed_customer_service.rb +0 -50
  149. data/lib/adwords_api/v201409/managed_customer_service_registry.rb +0 -46
  150. data/lib/adwords_api/v201409/media_service.rb +0 -42
  151. data/lib/adwords_api/v201409/media_service_registry.rb +0 -46
  152. data/lib/adwords_api/v201409/mutate_job_service.rb +0 -42
  153. data/lib/adwords_api/v201409/mutate_job_service_registry.rb +0 -46
  154. data/lib/adwords_api/v201409/offline_conversion_feed_service.rb +0 -34
  155. data/lib/adwords_api/v201409/offline_conversion_feed_service_registry.rb +0 -46
  156. data/lib/adwords_api/v201409/report_definition_service.rb +0 -34
  157. data/lib/adwords_api/v201409/report_definition_service_registry.rb +0 -46
  158. data/lib/adwords_api/v201409/shared_criterion_service.rb +0 -38
  159. data/lib/adwords_api/v201409/shared_criterion_service_registry.rb +0 -47
  160. data/lib/adwords_api/v201409/shared_set_service.rb +0 -38
  161. data/lib/adwords_api/v201409/shared_set_service_registry.rb +0 -47
  162. data/lib/adwords_api/v201409/targeting_idea_service.rb +0 -34
  163. data/lib/adwords_api/v201409/targeting_idea_service_registry.rb +0 -46
  164. data/lib/adwords_api/v201409/traffic_estimator_service.rb +0 -34
  165. data/lib/adwords_api/v201409/traffic_estimator_service_registry.rb +0 -46
  166. data/test/templates/v201409/basic_operations_get_campaigns.def +0 -116
  167. data/test/templates/v201409/misc_use_oauth2_jwt.def +0 -131
@@ -1,112 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
- #
6
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
7
- #
8
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
- # you may not use this file except in compliance with the License.
10
- # You may obtain a copy of the License at
11
- #
12
- # http://www.apache.org/licenses/LICENSE-2.0
13
- #
14
- # Unless required by applicable law or agreed to in writing, software
15
- # distributed under the License is distributed on an "AS IS" BASIS,
16
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
- # implied.
18
- # See the License for the specific language governing permissions and
19
- # limitations under the License.
20
- #
21
- # This example illustrates how to retrieve all keywords for an ad group. To add
22
- # keywords to an existing ad group, run add_keywords.rb.
23
- #
24
- # Tags: AdGroupCriterionService.get
25
-
26
- require 'adwords_api'
27
-
28
- def get_keywords(ad_group_id)
29
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
30
- # when called without parameters.
31
- adwords = AdwordsApi::Api.new
32
-
33
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
34
- # the configuration file or provide your own logger:
35
- # adwords.logger = Logger.new('adwords_xml.log')
36
-
37
- ad_group_criterion_srv =
38
- adwords.service(:AdGroupCriterionService, API_VERSION)
39
-
40
- # Get all keywords for this ad group.
41
- selector = {
42
- :fields => ['Id', 'CriteriaType', 'KeywordText'],
43
- :ordering => [
44
- {:field => 'Id', :sort_order => 'ASCENDING'}
45
- ],
46
- :predicates => [
47
- {:field => 'AdGroupId', :operator => 'EQUALS', :values => [ad_group_id]},
48
- {:field => 'CriteriaType', :operator => 'EQUALS', :values => ['KEYWORD']}
49
- ],
50
- :paging => {
51
- :start_index => 0,
52
- :number_results => PAGE_SIZE
53
- }
54
- }
55
-
56
- # Set initial values.
57
- offset, page = 0, {}
58
-
59
- begin
60
- page = ad_group_criterion_srv.get(selector)
61
- if page[:entries]
62
- page[:entries].each do |keyword|
63
- puts "Keyword ID %d, type '%s' and text '%s'" %
64
- [keyword[:criterion][:id],
65
- keyword[:criterion][:type],
66
- keyword[:criterion][:text]]
67
- end
68
- # Increment values to request the next page.
69
- offset += PAGE_SIZE
70
- selector[:paging][:start_index] = offset
71
- end
72
- end while page[:total_num_entries] > offset
73
-
74
- if page.include?(:total_num_entries)
75
- puts "\tAd group ID %d has %d keyword(s)." %
76
- [ad_group_id, page[:total_num_entries]]
77
- end
78
- end
79
-
80
- if __FILE__ == $0
81
- API_VERSION = :v201409
82
- PAGE_SIZE = 500
83
-
84
- begin
85
- # Ad group ID to get keywords for.
86
- ad_group_id = 'INSERT_AD_GROUP_ID_HERE'.to_i
87
- get_keywords(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
- 'http://code.google.com/p/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,114 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
- #
6
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
7
- #
8
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
- # you may not use this file except in compliance with the License.
10
- # You may obtain a copy of the License at
11
- #
12
- # http://www.apache.org/licenses/LICENSE-2.0
13
- #
14
- # Unless required by applicable law or agreed to in writing, software
15
- # distributed under the License is distributed on an "AS IS" BASIS,
16
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
- # implied.
18
- # See the License for the specific language governing permissions and
19
- # limitations under the License.
20
- #
21
- # This example illustrates how to retrieve all text ads for an ad group. To add
22
- # ads to an existing ad group, run add_text_ads.rb.
23
- #
24
- # Tags: AdGroupAdService.get
25
-
26
- require 'adwords_api'
27
-
28
- def get_text_ads(ad_group_id)
29
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
30
- # when called without parameters.
31
- adwords = AdwordsApi::Api.new
32
-
33
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
34
- # the configuration file or provide your own logger:
35
- # adwords.logger = Logger.new('adwords_xml.log')
36
-
37
- ad_group_ad_srv = adwords.service(:AdGroupAdService, API_VERSION)
38
-
39
- # Get all the ads for this ad group.
40
- selector = {
41
- :fields => ['Id', 'Status', 'AdType'],
42
- :ordering => [{:field => 'Id', :sort_order => 'ASCENDING'}],
43
- # By default, disabled ads aren't returned by the selector. To return them,
44
- # include the DISABLED status in a predicate.
45
- :predicates => [
46
- {:field => 'AdGroupId', :operator => 'IN', :values => [ad_group_id]},
47
- {:field => 'Status',
48
- :operator => 'IN',
49
- :values => ['ENABLED', 'PAUSED', 'DISABLED']},
50
- {:field => 'AdType',
51
- :operator => 'EQUALS',
52
- :values => ['TEXT_AD']}
53
- ],
54
- :paging => {
55
- :start_index => 0,
56
- :number_results => PAGE_SIZE
57
- }
58
- }
59
-
60
- # Set initial values.
61
- offset, page = 0, {}
62
-
63
- begin
64
- page = ad_group_ad_srv.get(selector)
65
- if page[:entries]
66
- page[:entries].each do |ad|
67
- puts "Ad ID is %d, type is '%s' and status is '%s'" %
68
- [ad[:ad][:id], ad[:ad][:ad_type], ad[:status]]
69
- end
70
- # Increment values to request the next page.
71
- offset += PAGE_SIZE
72
- selector[:paging][:start_index] = offset
73
- end
74
- end while page[:total_num_entries] > offset
75
-
76
- if page.include?(:total_num_entries)
77
- puts "\tAd group ID %d has %d ad(s)." %
78
- [ad_group_id, page[:total_num_entries]]
79
- end
80
- end
81
-
82
- if __FILE__ == $0
83
- API_VERSION = :v201409
84
- PAGE_SIZE = 500
85
-
86
- begin
87
- # Ad group ID to get text ads for.
88
- ad_group_id = 'INSERT_AD_GROUP_ID_HERE'.to_i
89
- get_text_ads(ad_group_id)
90
-
91
- # Authorization error.
92
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
93
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
94
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
95
- "to retrieve and store OAuth2 tokens."
96
- puts "See this wiki page for more details:\n\n " +
97
- 'http://code.google.com/p/google-api-ads-ruby/wiki/OAuth2'
98
-
99
- # HTTP errors.
100
- rescue AdsCommon::Errors::HttpError => e
101
- puts "HTTP Error: %s" % e
102
-
103
- # API errors.
104
- rescue AdwordsApi::Errors::ApiException => e
105
- puts "Message: %s" % e.message
106
- puts 'Errors:'
107
- e.errors.each_with_index do |error, index|
108
- puts "\tError [%d]:" % (index + 1)
109
- error.each do |field, value|
110
- puts "\t\t%s: %s" % [field, value]
111
- end
112
- end
113
- end
114
- end
@@ -1,92 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
- #
6
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
7
- #
8
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
- # you may not use this file except in compliance with the License.
10
- # You may obtain a copy of the License at
11
- #
12
- # http://www.apache.org/licenses/LICENSE-2.0
13
- #
14
- # Unless required by applicable law or agreed to in writing, software
15
- # distributed under the License is distributed on an "AS IS" BASIS,
16
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
- # implied.
18
- # See the License for the specific language governing permissions and
19
- # limitations under the License.
20
- #
21
- # This example illustrates how to update an ad, setting its status to 'PAUSED'.
22
- # To create ads, run add_text_ads.rb.
23
- #
24
- # Tags: AdGroupAdService.mutate
25
-
26
- require 'adwords_api'
27
-
28
- def pause_ad(ad_group_id, ad_id)
29
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
30
- # when called without parameters.
31
- adwords = AdwordsApi::Api.new
32
-
33
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
34
- # the configuration file or provide your own logger:
35
- # adwords.logger = Logger.new('adwords_xml.log')
36
-
37
- ad_group_ad_srv = adwords.service(:AdGroupAdService, API_VERSION)
38
-
39
- # Prepare operation for updating ad.
40
- operation = {
41
- :operator => 'SET',
42
- :operand => {
43
- :ad_group_id => ad_group_id,
44
- :status => 'PAUSED',
45
- :ad => {:id => ad_id}
46
- }
47
- }
48
-
49
- # Update ad.
50
- response = ad_group_ad_srv.mutate([operation])
51
- if response and response[:value]
52
- ad = response[:value].first
53
- puts "Ad ID %d was successfully updated, status set to '%s'." %
54
- [ad[:ad][:id], ad[:status]]
55
- else
56
- puts 'No ads were updated.'
57
- end
58
- end
59
-
60
- if __FILE__ == $0
61
- API_VERSION = :v201409
62
-
63
- begin
64
- # IDs of ad to pause and its ad group.
65
- ad_group_id = 'INSERT_AD_GROUP_ID_HERE'.to_i
66
- ad_id = 'INSERT_AD_ID_HERE'.to_i
67
- pause_ad(ad_group_id, ad_id)
68
-
69
- # Authorization error.
70
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
71
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
72
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
73
- "to retrieve and store OAuth2 tokens."
74
- puts "See this wiki page for more details:\n\n " +
75
- 'http://code.google.com/p/google-api-ads-ruby/wiki/OAuth2'
76
-
77
- # HTTP errors.
78
- rescue AdsCommon::Errors::HttpError => e
79
- puts "HTTP Error: %s" % e
80
-
81
- # API errors.
82
- rescue AdwordsApi::Errors::ApiException => e
83
- puts "Message: %s" % e.message
84
- puts 'Errors:'
85
- e.errors.each_with_index do |error, index|
86
- puts "\tError [%d]:" % (index + 1)
87
- error.each do |field, value|
88
- puts "\t\t%s: %s" % [field, value]
89
- end
90
- end
91
- end
92
- end
@@ -1,93 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Author:: api.sgomes@gmail.com (Sérgio Gomes)
5
- #
6
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
7
- #
8
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
- # you may not use this file except in compliance with the License.
10
- # You may obtain a copy of the License at
11
- #
12
- # http://www.apache.org/licenses/LICENSE-2.0
13
- #
14
- # Unless required by applicable law or agreed to in writing, software
15
- # distributed under the License is distributed on an "AS IS" BASIS,
16
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
- # implied.
18
- # See the License for the specific language governing permissions and
19
- # limitations under the License.
20
- #
21
- # This example removes an ad using the 'REMOVE' operator. To get ads, run
22
- # get_text_ads.rb.
23
- #
24
- # Tags: AdGroupAdService.mutate
25
-
26
- require 'adwords_api'
27
-
28
- def remove_ad(ad_group_id, ad_id)
29
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
30
- # when called without parameters.
31
- adwords = AdwordsApi::Api.new
32
-
33
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
34
- # the configuration file or provide your own logger:
35
- # adwords.logger = Logger.new('adwords_xml.log')
36
-
37
- ad_group_ad_srv = adwords.service(:AdGroupAdService, API_VERSION)
38
-
39
- # Prepare for deleting ad.
40
- operation = {
41
- :operator => 'REMOVE',
42
- :operand => {
43
- :ad_group_id => ad_group_id,
44
- :ad => {
45
- :xsi_type => 'Ad',
46
- :id => ad_id
47
- }
48
- }
49
- }
50
-
51
- # Remove ad.
52
- response = ad_group_ad_srv.mutate([operation])
53
- if response and response[:value]
54
- ad = response[:value].first
55
- puts "Ad ID %d was successfully removed." % ad[:ad][:id]
56
- else
57
- puts 'No ads were removed.'
58
- end
59
- end
60
-
61
- if __FILE__ == $0
62
- API_VERSION = :v201409
63
-
64
- begin
65
- # IDs of an ad to remove and its ad group.
66
- ad_group_id = 'INSERT_AD_GROUP_ID_HERE'.to_i
67
- ad_id = 'INSERT_AD_ID_HERE'.to_i
68
- remove_ad(ad_group_id, ad_id)
69
-
70
- # Authorization error.
71
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
72
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
73
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
74
- "to retrieve and store OAuth2 tokens."
75
- puts "See this wiki page for more details:\n\n " +
76
- 'http://code.google.com/p/google-api-ads-ruby/wiki/OAuth2'
77
-
78
- # HTTP errors.
79
- rescue AdsCommon::Errors::HttpError => e
80
- puts "HTTP Error: %s" % e
81
-
82
- # API errors.
83
- rescue AdwordsApi::Errors::ApiException => e
84
- puts "Message: %s" % e.message
85
- puts 'Errors:'
86
- e.errors.each_with_index do |error, index|
87
- puts "\tError [%d]:" % (index + 1)
88
- error.each do |field, value|
89
- puts "\t\t%s: %s" % [field, value]
90
- end
91
- end
92
- end
93
- end
@@ -1,89 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
- #
6
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
7
- #
8
- # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
- # you may not use this file except in compliance with the License.
10
- # You may obtain a copy of the License at
11
- #
12
- # http://www.apache.org/licenses/LICENSE-2.0
13
- #
14
- # Unless required by applicable law or agreed to in writing, software
15
- # distributed under the License is distributed on an "AS IS" BASIS,
16
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
- # implied.
18
- # See the License for the specific language governing permissions and
19
- # limitations under the License.
20
- #
21
- # This example removes an ad group by setting the status to 'REMOVED'. To get ad
22
- # groups, run get_ad_groups.rb.
23
- #
24
- # Tags: AdGroupService.mutate
25
-
26
- require 'adwords_api'
27
-
28
- def remove_ad_group(ad_group_id)
29
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
30
- # when called without parameters.
31
- adwords = AdwordsApi::Api.new
32
-
33
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
34
- # the configuration file or provide your own logger:
35
- # adwords.logger = Logger.new('adwords_xml.log')
36
-
37
- ad_group_srv = adwords.service(:AdGroupService, API_VERSION)
38
-
39
- # Prepare for deleting ad group.
40
- operation = {
41
- :operator => 'SET',
42
- :operand => {
43
- :id => ad_group_id,
44
- :status => 'REMOVED'
45
- }
46
- }
47
-
48
- # Remove ad group.
49
- response = ad_group_srv.mutate([operation])
50
- if response and response[:value]
51
- ad_group = response[:value].first
52
- puts "Ad group ID %d was successfully removed." % [ad_group[:id]]
53
- else
54
- puts 'No ad group was updated.'
55
- end
56
- end
57
-
58
- if __FILE__ == $0
59
- API_VERSION = :v201409
60
-
61
- begin
62
- # ID of an ad group to remove.
63
- ad_group_id = 'INSERT_AD_GROUP_ID_HERE'.to_i
64
- remove_ad_group(ad_group_id)
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
- 'http://code.google.com/p/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