google-adwords-api 0.19.1 → 0.20.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 (447) hide show
  1. checksums.yaml +4 -4
  2. data/COPYING +0 -0
  3. data/ChangeLog +4 -0
  4. data/README.md +3 -3
  5. data/adwords_api.yml +0 -0
  6. data/examples/v201603/campaign_management/add_draft.rb +0 -0
  7. data/examples/v201603/campaign_management/add_trial.rb +0 -0
  8. data/examples/v201603/campaign_management/graduate_trial.rb +0 -0
  9. data/examples/v201605/advanced_operations/add_responsive_display_ad.rb +8 -4
  10. data/examples/v201605/campaign_management/add_draft.rb +0 -0
  11. data/examples/v201605/campaign_management/add_trial.rb +0 -0
  12. data/examples/v201605/campaign_management/graduate_trial.rb +0 -0
  13. data/lib/adwords_api.rb +0 -0
  14. data/lib/adwords_api/api_config.rb +0 -86
  15. data/lib/adwords_api/batch_job_utils.rb +0 -3
  16. data/lib/adwords_api/credential_handler.rb +0 -0
  17. data/lib/adwords_api/errors.rb +0 -0
  18. data/lib/adwords_api/incremental_upload_helper.rb +0 -0
  19. data/lib/adwords_api/report_header_handler.rb +0 -0
  20. data/lib/adwords_api/report_stream.rb +0 -0
  21. data/lib/adwords_api/report_utils.rb +0 -0
  22. data/lib/adwords_api/utils.rb +0 -0
  23. data/lib/adwords_api/utils_reporter.rb +0 -0
  24. data/lib/adwords_api/v201601/account_label_service.rb +0 -0
  25. data/lib/adwords_api/v201601/account_label_service_registry.rb +0 -0
  26. data/lib/adwords_api/v201601/ad_customizer_feed_service.rb +0 -0
  27. data/lib/adwords_api/v201601/ad_customizer_feed_service_registry.rb +0 -0
  28. data/lib/adwords_api/v201601/ad_group_ad_service.rb +0 -0
  29. data/lib/adwords_api/v201601/ad_group_ad_service_registry.rb +0 -0
  30. data/lib/adwords_api/v201601/ad_group_bid_modifier_service.rb +0 -0
  31. data/lib/adwords_api/v201601/ad_group_bid_modifier_service_registry.rb +0 -0
  32. data/lib/adwords_api/v201601/ad_group_criterion_service.rb +0 -0
  33. data/lib/adwords_api/v201601/ad_group_criterion_service_registry.rb +0 -0
  34. data/lib/adwords_api/v201601/ad_group_extension_setting_service.rb +0 -0
  35. data/lib/adwords_api/v201601/ad_group_extension_setting_service_registry.rb +0 -0
  36. data/lib/adwords_api/v201601/ad_group_feed_service.rb +0 -0
  37. data/lib/adwords_api/v201601/ad_group_feed_service_registry.rb +0 -0
  38. data/lib/adwords_api/v201601/ad_group_service.rb +0 -0
  39. data/lib/adwords_api/v201601/ad_group_service_registry.rb +0 -0
  40. data/lib/adwords_api/v201601/ad_param_service.rb +0 -0
  41. data/lib/adwords_api/v201601/ad_param_service_registry.rb +0 -0
  42. data/lib/adwords_api/v201601/adwords_user_list_service.rb +0 -0
  43. data/lib/adwords_api/v201601/adwords_user_list_service_registry.rb +0 -0
  44. data/lib/adwords_api/v201601/batch_job_service.rb +0 -0
  45. data/lib/adwords_api/v201601/batch_job_service_registry.rb +0 -0
  46. data/lib/adwords_api/v201601/bidding_strategy_service.rb +0 -0
  47. data/lib/adwords_api/v201601/bidding_strategy_service_registry.rb +0 -0
  48. data/lib/adwords_api/v201601/budget_order_service.rb +0 -0
  49. data/lib/adwords_api/v201601/budget_order_service_registry.rb +0 -0
  50. data/lib/adwords_api/v201601/budget_service.rb +0 -0
  51. data/lib/adwords_api/v201601/budget_service_registry.rb +0 -0
  52. data/lib/adwords_api/v201601/campaign_criterion_service.rb +0 -0
  53. data/lib/adwords_api/v201601/campaign_criterion_service_registry.rb +0 -0
  54. data/lib/adwords_api/v201601/campaign_extension_setting_service.rb +0 -0
  55. data/lib/adwords_api/v201601/campaign_extension_setting_service_registry.rb +0 -0
  56. data/lib/adwords_api/v201601/campaign_feed_service.rb +0 -0
  57. data/lib/adwords_api/v201601/campaign_feed_service_registry.rb +0 -0
  58. data/lib/adwords_api/v201601/campaign_service.rb +0 -0
  59. data/lib/adwords_api/v201601/campaign_service_registry.rb +0 -0
  60. data/lib/adwords_api/v201601/campaign_shared_set_service.rb +0 -0
  61. data/lib/adwords_api/v201601/campaign_shared_set_service_registry.rb +0 -0
  62. data/lib/adwords_api/v201601/constant_data_service.rb +0 -0
  63. data/lib/adwords_api/v201601/constant_data_service_registry.rb +0 -0
  64. data/lib/adwords_api/v201601/conversion_tracker_service.rb +0 -0
  65. data/lib/adwords_api/v201601/conversion_tracker_service_registry.rb +0 -0
  66. data/lib/adwords_api/v201601/customer_extension_setting_service.rb +0 -0
  67. data/lib/adwords_api/v201601/customer_extension_setting_service_registry.rb +0 -0
  68. data/lib/adwords_api/v201601/customer_feed_service.rb +0 -0
  69. data/lib/adwords_api/v201601/customer_feed_service_registry.rb +0 -0
  70. data/lib/adwords_api/v201601/customer_service.rb +0 -0
  71. data/lib/adwords_api/v201601/customer_service_registry.rb +0 -0
  72. data/lib/adwords_api/v201601/customer_sync_service.rb +0 -0
  73. data/lib/adwords_api/v201601/customer_sync_service_registry.rb +0 -0
  74. data/lib/adwords_api/v201601/data_service.rb +0 -0
  75. data/lib/adwords_api/v201601/data_service_registry.rb +0 -0
  76. data/lib/adwords_api/v201601/experiment_service.rb +0 -0
  77. data/lib/adwords_api/v201601/experiment_service_registry.rb +0 -0
  78. data/lib/adwords_api/v201601/feed_item_service.rb +0 -0
  79. data/lib/adwords_api/v201601/feed_item_service_registry.rb +0 -0
  80. data/lib/adwords_api/v201601/feed_mapping_service.rb +0 -0
  81. data/lib/adwords_api/v201601/feed_mapping_service_registry.rb +0 -0
  82. data/lib/adwords_api/v201601/feed_service.rb +0 -0
  83. data/lib/adwords_api/v201601/feed_service_registry.rb +0 -0
  84. data/lib/adwords_api/v201601/label_service.rb +0 -0
  85. data/lib/adwords_api/v201601/label_service_registry.rb +0 -0
  86. data/lib/adwords_api/v201601/location_criterion_service.rb +0 -0
  87. data/lib/adwords_api/v201601/location_criterion_service_registry.rb +0 -0
  88. data/lib/adwords_api/v201601/managed_customer_service.rb +0 -0
  89. data/lib/adwords_api/v201601/managed_customer_service_registry.rb +0 -0
  90. data/lib/adwords_api/v201601/media_service.rb +0 -0
  91. data/lib/adwords_api/v201601/media_service_registry.rb +0 -0
  92. data/lib/adwords_api/v201601/mutate_job_service.rb +0 -0
  93. data/lib/adwords_api/v201601/mutate_job_service_registry.rb +0 -0
  94. data/lib/adwords_api/v201601/offline_conversion_feed_service.rb +0 -0
  95. data/lib/adwords_api/v201601/offline_conversion_feed_service_registry.rb +0 -0
  96. data/lib/adwords_api/v201601/report_definition_service.rb +0 -0
  97. data/lib/adwords_api/v201601/report_definition_service_registry.rb +0 -0
  98. data/lib/adwords_api/v201601/shared_criterion_service.rb +0 -0
  99. data/lib/adwords_api/v201601/shared_criterion_service_registry.rb +0 -0
  100. data/lib/adwords_api/v201601/shared_set_service.rb +0 -0
  101. data/lib/adwords_api/v201601/shared_set_service_registry.rb +0 -0
  102. data/lib/adwords_api/v201601/targeting_idea_service.rb +0 -0
  103. data/lib/adwords_api/v201601/targeting_idea_service_registry.rb +0 -0
  104. data/lib/adwords_api/v201601/traffic_estimator_service.rb +0 -0
  105. data/lib/adwords_api/v201601/traffic_estimator_service_registry.rb +0 -0
  106. data/lib/adwords_api/v201603/account_label_service.rb +0 -0
  107. data/lib/adwords_api/v201603/account_label_service_registry.rb +0 -0
  108. data/lib/adwords_api/v201603/ad_customizer_feed_service.rb +0 -0
  109. data/lib/adwords_api/v201603/ad_customizer_feed_service_registry.rb +0 -0
  110. data/lib/adwords_api/v201603/ad_group_ad_service.rb +0 -0
  111. data/lib/adwords_api/v201603/ad_group_ad_service_registry.rb +0 -0
  112. data/lib/adwords_api/v201603/ad_group_bid_modifier_service.rb +0 -0
  113. data/lib/adwords_api/v201603/ad_group_bid_modifier_service_registry.rb +0 -0
  114. data/lib/adwords_api/v201603/ad_group_criterion_service.rb +0 -0
  115. data/lib/adwords_api/v201603/ad_group_criterion_service_registry.rb +0 -0
  116. data/lib/adwords_api/v201603/ad_group_extension_setting_service.rb +0 -0
  117. data/lib/adwords_api/v201603/ad_group_extension_setting_service_registry.rb +0 -0
  118. data/lib/adwords_api/v201603/ad_group_feed_service.rb +0 -0
  119. data/lib/adwords_api/v201603/ad_group_feed_service_registry.rb +0 -0
  120. data/lib/adwords_api/v201603/ad_group_service.rb +0 -0
  121. data/lib/adwords_api/v201603/ad_group_service_registry.rb +0 -0
  122. data/lib/adwords_api/v201603/ad_param_service.rb +0 -0
  123. data/lib/adwords_api/v201603/ad_param_service_registry.rb +0 -0
  124. data/lib/adwords_api/v201603/adwords_user_list_service.rb +0 -0
  125. data/lib/adwords_api/v201603/adwords_user_list_service_registry.rb +0 -0
  126. data/lib/adwords_api/v201603/batch_job_service.rb +0 -0
  127. data/lib/adwords_api/v201603/batch_job_service_registry.rb +0 -0
  128. data/lib/adwords_api/v201603/bidding_strategy_service.rb +0 -0
  129. data/lib/adwords_api/v201603/bidding_strategy_service_registry.rb +0 -0
  130. data/lib/adwords_api/v201603/budget_order_service.rb +0 -0
  131. data/lib/adwords_api/v201603/budget_order_service_registry.rb +0 -0
  132. data/lib/adwords_api/v201603/budget_service.rb +0 -0
  133. data/lib/adwords_api/v201603/budget_service_registry.rb +0 -0
  134. data/lib/adwords_api/v201603/campaign_criterion_service.rb +0 -0
  135. data/lib/adwords_api/v201603/campaign_criterion_service_registry.rb +0 -0
  136. data/lib/adwords_api/v201603/campaign_extension_setting_service.rb +0 -0
  137. data/lib/adwords_api/v201603/campaign_extension_setting_service_registry.rb +0 -0
  138. data/lib/adwords_api/v201603/campaign_feed_service.rb +0 -0
  139. data/lib/adwords_api/v201603/campaign_feed_service_registry.rb +0 -0
  140. data/lib/adwords_api/v201603/campaign_service.rb +0 -0
  141. data/lib/adwords_api/v201603/campaign_service_registry.rb +0 -0
  142. data/lib/adwords_api/v201603/campaign_shared_set_service.rb +0 -0
  143. data/lib/adwords_api/v201603/campaign_shared_set_service_registry.rb +0 -0
  144. data/lib/adwords_api/v201603/constant_data_service.rb +0 -0
  145. data/lib/adwords_api/v201603/constant_data_service_registry.rb +0 -0
  146. data/lib/adwords_api/v201603/conversion_tracker_service.rb +0 -0
  147. data/lib/adwords_api/v201603/conversion_tracker_service_registry.rb +0 -0
  148. data/lib/adwords_api/v201603/customer_extension_setting_service.rb +0 -0
  149. data/lib/adwords_api/v201603/customer_extension_setting_service_registry.rb +0 -0
  150. data/lib/adwords_api/v201603/customer_feed_service.rb +0 -0
  151. data/lib/adwords_api/v201603/customer_feed_service_registry.rb +0 -0
  152. data/lib/adwords_api/v201603/customer_service.rb +0 -0
  153. data/lib/adwords_api/v201603/customer_service_registry.rb +0 -0
  154. data/lib/adwords_api/v201603/customer_sync_service.rb +0 -0
  155. data/lib/adwords_api/v201603/customer_sync_service_registry.rb +0 -0
  156. data/lib/adwords_api/v201603/data_service.rb +0 -0
  157. data/lib/adwords_api/v201603/data_service_registry.rb +0 -0
  158. data/lib/adwords_api/v201603/draft_async_error_service.rb +0 -0
  159. data/lib/adwords_api/v201603/draft_async_error_service_registry.rb +0 -0
  160. data/lib/adwords_api/v201603/draft_service.rb +0 -0
  161. data/lib/adwords_api/v201603/draft_service_registry.rb +0 -0
  162. data/lib/adwords_api/v201603/experiment_service.rb +0 -0
  163. data/lib/adwords_api/v201603/experiment_service_registry.rb +0 -0
  164. data/lib/adwords_api/v201603/feed_item_service.rb +0 -0
  165. data/lib/adwords_api/v201603/feed_item_service_registry.rb +0 -0
  166. data/lib/adwords_api/v201603/feed_mapping_service.rb +0 -0
  167. data/lib/adwords_api/v201603/feed_mapping_service_registry.rb +0 -0
  168. data/lib/adwords_api/v201603/feed_service.rb +0 -0
  169. data/lib/adwords_api/v201603/feed_service_registry.rb +0 -0
  170. data/lib/adwords_api/v201603/label_service.rb +0 -0
  171. data/lib/adwords_api/v201603/label_service_registry.rb +0 -0
  172. data/lib/adwords_api/v201603/location_criterion_service.rb +0 -0
  173. data/lib/adwords_api/v201603/location_criterion_service_registry.rb +0 -0
  174. data/lib/adwords_api/v201603/managed_customer_service.rb +0 -0
  175. data/lib/adwords_api/v201603/managed_customer_service_registry.rb +0 -0
  176. data/lib/adwords_api/v201603/media_service.rb +0 -0
  177. data/lib/adwords_api/v201603/media_service_registry.rb +0 -0
  178. data/lib/adwords_api/v201603/offline_conversion_feed_service.rb +0 -0
  179. data/lib/adwords_api/v201603/offline_conversion_feed_service_registry.rb +0 -0
  180. data/lib/adwords_api/v201603/report_definition_service.rb +0 -0
  181. data/lib/adwords_api/v201603/report_definition_service_registry.rb +0 -0
  182. data/lib/adwords_api/v201603/shared_criterion_service.rb +0 -0
  183. data/lib/adwords_api/v201603/shared_criterion_service_registry.rb +0 -0
  184. data/lib/adwords_api/v201603/shared_set_service.rb +0 -0
  185. data/lib/adwords_api/v201603/shared_set_service_registry.rb +0 -0
  186. data/lib/adwords_api/v201603/targeting_idea_service.rb +0 -0
  187. data/lib/adwords_api/v201603/targeting_idea_service_registry.rb +0 -0
  188. data/lib/adwords_api/v201603/traffic_estimator_service.rb +0 -0
  189. data/lib/adwords_api/v201603/traffic_estimator_service_registry.rb +0 -0
  190. data/lib/adwords_api/v201603/trial_async_error_service.rb +0 -0
  191. data/lib/adwords_api/v201603/trial_async_error_service_registry.rb +0 -0
  192. data/lib/adwords_api/v201603/trial_service.rb +0 -0
  193. data/lib/adwords_api/v201603/trial_service_registry.rb +0 -0
  194. data/lib/adwords_api/v201605/account_label_service.rb +0 -0
  195. data/lib/adwords_api/v201605/account_label_service_registry.rb +0 -0
  196. data/lib/adwords_api/v201605/ad_customizer_feed_service.rb +0 -0
  197. data/lib/adwords_api/v201605/ad_customizer_feed_service_registry.rb +0 -0
  198. data/lib/adwords_api/v201605/ad_group_ad_service.rb +0 -0
  199. data/lib/adwords_api/v201605/ad_group_ad_service_registry.rb +0 -0
  200. data/lib/adwords_api/v201605/ad_group_bid_modifier_service.rb +0 -0
  201. data/lib/adwords_api/v201605/ad_group_bid_modifier_service_registry.rb +0 -0
  202. data/lib/adwords_api/v201605/ad_group_criterion_service.rb +0 -0
  203. data/lib/adwords_api/v201605/ad_group_criterion_service_registry.rb +0 -0
  204. data/lib/adwords_api/v201605/ad_group_extension_setting_service.rb +0 -0
  205. data/lib/adwords_api/v201605/ad_group_extension_setting_service_registry.rb +0 -0
  206. data/lib/adwords_api/v201605/ad_group_feed_service.rb +0 -0
  207. data/lib/adwords_api/v201605/ad_group_feed_service_registry.rb +0 -0
  208. data/lib/adwords_api/v201605/ad_group_service.rb +0 -0
  209. data/lib/adwords_api/v201605/ad_group_service_registry.rb +0 -0
  210. data/lib/adwords_api/v201605/ad_param_service.rb +0 -0
  211. data/lib/adwords_api/v201605/ad_param_service_registry.rb +0 -0
  212. data/lib/adwords_api/v201605/adwords_user_list_service.rb +0 -0
  213. data/lib/adwords_api/v201605/adwords_user_list_service_registry.rb +0 -0
  214. data/lib/adwords_api/v201605/batch_job_service.rb +0 -0
  215. data/lib/adwords_api/v201605/batch_job_service_registry.rb +0 -0
  216. data/lib/adwords_api/v201605/bidding_strategy_service.rb +0 -0
  217. data/lib/adwords_api/v201605/bidding_strategy_service_registry.rb +0 -0
  218. data/lib/adwords_api/v201605/budget_order_service.rb +0 -0
  219. data/lib/adwords_api/v201605/budget_order_service_registry.rb +0 -0
  220. data/lib/adwords_api/v201605/budget_service.rb +0 -0
  221. data/lib/adwords_api/v201605/budget_service_registry.rb +0 -0
  222. data/lib/adwords_api/v201605/campaign_criterion_service.rb +0 -0
  223. data/lib/adwords_api/v201605/campaign_criterion_service_registry.rb +0 -0
  224. data/lib/adwords_api/v201605/campaign_extension_setting_service.rb +0 -0
  225. data/lib/adwords_api/v201605/campaign_extension_setting_service_registry.rb +0 -0
  226. data/lib/adwords_api/v201605/campaign_feed_service.rb +0 -0
  227. data/lib/adwords_api/v201605/campaign_feed_service_registry.rb +0 -0
  228. data/lib/adwords_api/v201605/campaign_service.rb +0 -0
  229. data/lib/adwords_api/v201605/campaign_service_registry.rb +0 -0
  230. data/lib/adwords_api/v201605/campaign_shared_set_service.rb +0 -0
  231. data/lib/adwords_api/v201605/campaign_shared_set_service_registry.rb +0 -0
  232. data/lib/adwords_api/v201605/constant_data_service.rb +0 -0
  233. data/lib/adwords_api/v201605/constant_data_service_registry.rb +0 -0
  234. data/lib/adwords_api/v201605/conversion_tracker_service.rb +0 -0
  235. data/lib/adwords_api/v201605/conversion_tracker_service_registry.rb +0 -0
  236. data/lib/adwords_api/v201605/customer_extension_setting_service.rb +0 -0
  237. data/lib/adwords_api/v201605/customer_extension_setting_service_registry.rb +0 -0
  238. data/lib/adwords_api/v201605/customer_feed_service.rb +0 -0
  239. data/lib/adwords_api/v201605/customer_feed_service_registry.rb +0 -0
  240. data/lib/adwords_api/v201605/customer_service.rb +0 -0
  241. data/lib/adwords_api/v201605/customer_service_registry.rb +0 -0
  242. data/lib/adwords_api/v201605/customer_sync_service.rb +0 -0
  243. data/lib/adwords_api/v201605/customer_sync_service_registry.rb +0 -0
  244. data/lib/adwords_api/v201605/data_service.rb +0 -0
  245. data/lib/adwords_api/v201605/data_service_registry.rb +0 -0
  246. data/lib/adwords_api/v201605/draft_async_error_service.rb +0 -0
  247. data/lib/adwords_api/v201605/draft_async_error_service_registry.rb +0 -0
  248. data/lib/adwords_api/v201605/draft_service.rb +0 -0
  249. data/lib/adwords_api/v201605/draft_service_registry.rb +0 -0
  250. data/lib/adwords_api/v201605/experiment_service.rb +0 -0
  251. data/lib/adwords_api/v201605/experiment_service_registry.rb +0 -0
  252. data/lib/adwords_api/v201605/feed_item_service.rb +0 -0
  253. data/lib/adwords_api/v201605/feed_item_service_registry.rb +0 -0
  254. data/lib/adwords_api/v201605/feed_mapping_service.rb +0 -0
  255. data/lib/adwords_api/v201605/feed_mapping_service_registry.rb +0 -0
  256. data/lib/adwords_api/v201605/feed_service.rb +0 -0
  257. data/lib/adwords_api/v201605/feed_service_registry.rb +0 -0
  258. data/lib/adwords_api/v201605/label_service.rb +0 -0
  259. data/lib/adwords_api/v201605/label_service_registry.rb +0 -0
  260. data/lib/adwords_api/v201605/location_criterion_service.rb +0 -0
  261. data/lib/adwords_api/v201605/location_criterion_service_registry.rb +0 -0
  262. data/lib/adwords_api/v201605/managed_customer_service.rb +0 -0
  263. data/lib/adwords_api/v201605/managed_customer_service_registry.rb +0 -0
  264. data/lib/adwords_api/v201605/media_service.rb +0 -0
  265. data/lib/adwords_api/v201605/media_service_registry.rb +0 -0
  266. data/lib/adwords_api/v201605/offline_conversion_feed_service.rb +0 -0
  267. data/lib/adwords_api/v201605/offline_conversion_feed_service_registry.rb +0 -0
  268. data/lib/adwords_api/v201605/report_definition_service.rb +0 -0
  269. data/lib/adwords_api/v201605/report_definition_service_registry.rb +0 -0
  270. data/lib/adwords_api/v201605/shared_criterion_service.rb +0 -0
  271. data/lib/adwords_api/v201605/shared_criterion_service_registry.rb +0 -0
  272. data/lib/adwords_api/v201605/shared_set_service.rb +0 -0
  273. data/lib/adwords_api/v201605/shared_set_service_registry.rb +0 -0
  274. data/lib/adwords_api/v201605/targeting_idea_service.rb +0 -0
  275. data/lib/adwords_api/v201605/targeting_idea_service_registry.rb +0 -0
  276. data/lib/adwords_api/v201605/traffic_estimator_service.rb +0 -0
  277. data/lib/adwords_api/v201605/traffic_estimator_service_registry.rb +0 -0
  278. data/lib/adwords_api/v201605/trial_async_error_service.rb +0 -0
  279. data/lib/adwords_api/v201605/trial_async_error_service_registry.rb +0 -0
  280. data/lib/adwords_api/v201605/trial_service.rb +0 -0
  281. data/lib/adwords_api/v201605/trial_service_registry.rb +0 -0
  282. data/lib/adwords_api/version.rb +1 -1
  283. data/test/adwords_api/test_batch_job_utils.rb +2 -2
  284. data/test/adwords_api/test_report_stream.rb +0 -0
  285. data/test/templates/v201605/basic_operations_get_campaigns.def +1 -1
  286. data/test/templates/v201605/misc_use_oauth2_jwt.def +1 -1
  287. metadata +4 -164
  288. data/examples/v201509/account_management/create_account.rb +0 -88
  289. data/examples/v201509/account_management/get_account_changes.rb +0 -139
  290. data/examples/v201509/account_management/get_account_hierarchy.rb +0 -94
  291. data/examples/v201509/advanced_operations/add_ad_customizers.rb +0 -184
  292. data/examples/v201509/advanced_operations/add_ad_group_bid_modifier.rb +0 -101
  293. data/examples/v201509/advanced_operations/add_click_to_download_ad.rb +0 -133
  294. data/examples/v201509/advanced_operations/add_complete_campaigns_using_batch_job.rb +0 -356
  295. data/examples/v201509/advanced_operations/add_html5_ad.rb +0 -137
  296. data/examples/v201509/advanced_operations/add_text_ad_with_upgraded_urls.rb +0 -134
  297. data/examples/v201509/advanced_operations/create_and_attach_shared_keyword_set.rb +0 -141
  298. data/examples/v201509/advanced_operations/find_and_remove_criteria_from_shared_set.rb +0 -174
  299. data/examples/v201509/advanced_operations/get_ad_group_bid_modifiers.rb +0 -102
  300. data/examples/v201509/advanced_operations/use_shared_bidding_strategy.rb +0 -147
  301. data/examples/v201509/basic_operations/add_ad_groups.rb +0 -142
  302. data/examples/v201509/basic_operations/add_campaigns.rb +0 -139
  303. data/examples/v201509/basic_operations/add_keywords.rb +0 -114
  304. data/examples/v201509/basic_operations/add_text_ads.rb +0 -109
  305. data/examples/v201509/basic_operations/get_ad_groups.rb +0 -102
  306. data/examples/v201509/basic_operations/get_campaigns.rb +0 -97
  307. data/examples/v201509/basic_operations/get_campaigns_with_awql.rb +0 -89
  308. data/examples/v201509/basic_operations/get_keywords.rb +0 -109
  309. data/examples/v201509/basic_operations/get_text_ads.rb +0 -110
  310. data/examples/v201509/basic_operations/pause_ad.rb +0 -88
  311. data/examples/v201509/basic_operations/remove_ad.rb +0 -89
  312. data/examples/v201509/basic_operations/remove_ad_group.rb +0 -85
  313. data/examples/v201509/basic_operations/remove_campaign.rb +0 -87
  314. data/examples/v201509/basic_operations/remove_keyword.rb +0 -94
  315. data/examples/v201509/basic_operations/update_ad_group.rb +0 -85
  316. data/examples/v201509/basic_operations/update_campaign.rb +0 -86
  317. data/examples/v201509/basic_operations/update_keyword.rb +0 -106
  318. data/examples/v201509/campaign_management/add_campaign_labels.rb +0 -82
  319. data/examples/v201509/campaign_management/add_experiment.rb +0 -162
  320. data/examples/v201509/campaign_management/add_keywords_in_bulk.rb +0 -153
  321. data/examples/v201509/campaign_management/add_keywords_using_incremental_batch_job.rb +0 -179
  322. data/examples/v201509/campaign_management/get_all_disapproved_ads.rb +0 -97
  323. data/examples/v201509/campaign_management/get_all_disapproved_ads_with_awql.rb +0 -89
  324. data/examples/v201509/campaign_management/get_campaigns_by_label.rb +0 -108
  325. data/examples/v201509/campaign_management/promote_experiment.rb +0 -81
  326. data/examples/v201509/campaign_management/set_ad_parameters.rb +0 -118
  327. data/examples/v201509/campaign_management/set_criterion_bid_modifier.rb +0 -104
  328. data/examples/v201509/campaign_management/validate_text_ad.rb +0 -110
  329. data/examples/v201509/error_handling/handle_partial_failures.rb +0 -130
  330. data/examples/v201509/error_handling/handle_policy_violation_error.rb +0 -141
  331. data/examples/v201509/extensions/add_google_my_business_location_extensions.rb +0 -193
  332. data/examples/v201509/extensions/add_site_links.rb +0 -164
  333. data/examples/v201509/extensions/add_site_links_using_feeds.rb +0 -281
  334. data/examples/v201509/migration/migrate_to_extension_settings.rb +0 -386
  335. data/examples/v201509/migration/upgrade_ad_url.rb +0 -93
  336. data/examples/v201509/misc/get_all_images_and_videos.rb +0 -104
  337. data/examples/v201509/misc/setup_oauth2.rb +0 -84
  338. data/examples/v201509/misc/upload_image.rb +0 -93
  339. data/examples/v201509/misc/upload_media_bundle.rb +0 -90
  340. data/examples/v201509/misc/use_oauth2_jwt.rb +0 -93
  341. data/examples/v201509/misc/use_runtime_config.rb +0 -92
  342. data/examples/v201509/optimization/estimate_keyword_traffic.rb +0 -146
  343. data/examples/v201509/optimization/get_keyword_bid_simulations.rb +0 -95
  344. data/examples/v201509/optimization/get_keyword_ideas.rb +0 -126
  345. data/examples/v201509/remarketing/add_audience.rb +0 -118
  346. data/examples/v201509/remarketing/add_conversion_tracker.rb +0 -98
  347. data/examples/v201509/remarketing/add_crm_based_user_list.rb +0 -119
  348. data/examples/v201509/remarketing/add_rule_based_user_lists.rb +0 -167
  349. data/examples/v201509/remarketing/upload_offline_conversions.rb +0 -98
  350. data/examples/v201509/reporting/download_criteria_report.rb +0 -92
  351. data/examples/v201509/reporting/download_criteria_report_with_awql.rb +0 -93
  352. data/examples/v201509/reporting/get_report_fields.rb +0 -75
  353. data/examples/v201509/reporting/parallel_report_download.rb +0 -164
  354. data/examples/v201509/reporting/stream_criteria_report_results.rb +0 -97
  355. data/examples/v201509/shopping_campaigns/add_product_partition_tree.rb +0 -267
  356. data/examples/v201509/shopping_campaigns/add_product_scope.rb +0 -129
  357. data/examples/v201509/shopping_campaigns/add_shopping_campaign.rb +0 -129
  358. data/examples/v201509/shopping_campaigns/get_product_category_taxonomy.rb +0 -115
  359. data/examples/v201509/targeting/add_campaign_targeting_criteria.rb +0 -180
  360. data/examples/v201509/targeting/add_demographic_targeting_criteria.rb +0 -112
  361. data/examples/v201509/targeting/get_campaign_targeting_criteria.rb +0 -106
  362. data/examples/v201509/targeting/get_targetable_languages_and_carriers.rb +0 -89
  363. data/examples/v201509/targeting/lookup_location.rb +0 -108
  364. data/lib/adwords_api/v201509/account_label_service.rb +0 -46
  365. data/lib/adwords_api/v201509/account_label_service_registry.rb +0 -46
  366. data/lib/adwords_api/v201509/ad_customizer_feed_service.rb +0 -46
  367. data/lib/adwords_api/v201509/ad_customizer_feed_service_registry.rb +0 -46
  368. data/lib/adwords_api/v201509/ad_group_ad_service.rb +0 -70
  369. data/lib/adwords_api/v201509/ad_group_ad_service_registry.rb +0 -46
  370. data/lib/adwords_api/v201509/ad_group_bid_modifier_service.rb +0 -54
  371. data/lib/adwords_api/v201509/ad_group_bid_modifier_service_registry.rb +0 -46
  372. data/lib/adwords_api/v201509/ad_group_criterion_service.rb +0 -62
  373. data/lib/adwords_api/v201509/ad_group_criterion_service_registry.rb +0 -46
  374. data/lib/adwords_api/v201509/ad_group_extension_setting_service.rb +0 -54
  375. data/lib/adwords_api/v201509/ad_group_extension_setting_service_registry.rb +0 -46
  376. data/lib/adwords_api/v201509/ad_group_feed_service.rb +0 -54
  377. data/lib/adwords_api/v201509/ad_group_feed_service_registry.rb +0 -46
  378. data/lib/adwords_api/v201509/ad_group_service.rb +0 -62
  379. data/lib/adwords_api/v201509/ad_group_service_registry.rb +0 -46
  380. data/lib/adwords_api/v201509/ad_param_service.rb +0 -46
  381. data/lib/adwords_api/v201509/ad_param_service_registry.rb +0 -46
  382. data/lib/adwords_api/v201509/adwords_user_list_service.rb +0 -54
  383. data/lib/adwords_api/v201509/adwords_user_list_service_registry.rb +0 -46
  384. data/lib/adwords_api/v201509/batch_job_service.rb +0 -54
  385. data/lib/adwords_api/v201509/batch_job_service_registry.rb +0 -46
  386. data/lib/adwords_api/v201509/bidding_strategy_service.rb +0 -54
  387. data/lib/adwords_api/v201509/bidding_strategy_service_registry.rb +0 -46
  388. data/lib/adwords_api/v201509/budget_order_service.rb +0 -54
  389. data/lib/adwords_api/v201509/budget_order_service_registry.rb +0 -46
  390. data/lib/adwords_api/v201509/budget_service.rb +0 -54
  391. data/lib/adwords_api/v201509/budget_service_registry.rb +0 -46
  392. data/lib/adwords_api/v201509/campaign_criterion_service.rb +0 -54
  393. data/lib/adwords_api/v201509/campaign_criterion_service_registry.rb +0 -46
  394. data/lib/adwords_api/v201509/campaign_extension_setting_service.rb +0 -54
  395. data/lib/adwords_api/v201509/campaign_extension_setting_service_registry.rb +0 -46
  396. data/lib/adwords_api/v201509/campaign_feed_service.rb +0 -54
  397. data/lib/adwords_api/v201509/campaign_feed_service_registry.rb +0 -46
  398. data/lib/adwords_api/v201509/campaign_service.rb +0 -62
  399. data/lib/adwords_api/v201509/campaign_service_registry.rb +0 -46
  400. data/lib/adwords_api/v201509/campaign_shared_set_service.rb +0 -54
  401. data/lib/adwords_api/v201509/campaign_shared_set_service_registry.rb +0 -46
  402. data/lib/adwords_api/v201509/constant_data_service.rb +0 -102
  403. data/lib/adwords_api/v201509/constant_data_service_registry.rb +0 -46
  404. data/lib/adwords_api/v201509/conversion_tracker_service.rb +0 -54
  405. data/lib/adwords_api/v201509/conversion_tracker_service_registry.rb +0 -46
  406. data/lib/adwords_api/v201509/customer_extension_setting_service.rb +0 -54
  407. data/lib/adwords_api/v201509/customer_extension_setting_service_registry.rb +0 -46
  408. data/lib/adwords_api/v201509/customer_feed_service.rb +0 -54
  409. data/lib/adwords_api/v201509/customer_feed_service_registry.rb +0 -46
  410. data/lib/adwords_api/v201509/customer_service.rb +0 -46
  411. data/lib/adwords_api/v201509/customer_service_registry.rb +0 -46
  412. data/lib/adwords_api/v201509/customer_sync_service.rb +0 -38
  413. data/lib/adwords_api/v201509/customer_sync_service_registry.rb +0 -47
  414. data/lib/adwords_api/v201509/data_service.rb +0 -78
  415. data/lib/adwords_api/v201509/data_service_registry.rb +0 -46
  416. data/lib/adwords_api/v201509/experiment_service.rb +0 -46
  417. data/lib/adwords_api/v201509/experiment_service_registry.rb +0 -46
  418. data/lib/adwords_api/v201509/feed_item_service.rb +0 -54
  419. data/lib/adwords_api/v201509/feed_item_service_registry.rb +0 -46
  420. data/lib/adwords_api/v201509/feed_mapping_service.rb +0 -54
  421. data/lib/adwords_api/v201509/feed_mapping_service_registry.rb +0 -46
  422. data/lib/adwords_api/v201509/feed_service.rb +0 -54
  423. data/lib/adwords_api/v201509/feed_service_registry.rb +0 -46
  424. data/lib/adwords_api/v201509/label_service.rb +0 -54
  425. data/lib/adwords_api/v201509/label_service_registry.rb +0 -46
  426. data/lib/adwords_api/v201509/location_criterion_service.rb +0 -46
  427. data/lib/adwords_api/v201509/location_criterion_service_registry.rb +0 -46
  428. data/lib/adwords_api/v201509/managed_customer_service.rb +0 -78
  429. data/lib/adwords_api/v201509/managed_customer_service_registry.rb +0 -46
  430. data/lib/adwords_api/v201509/media_service.rb +0 -54
  431. data/lib/adwords_api/v201509/media_service_registry.rb +0 -46
  432. data/lib/adwords_api/v201509/mutate_job_service.rb +0 -54
  433. data/lib/adwords_api/v201509/mutate_job_service_registry.rb +0 -46
  434. data/lib/adwords_api/v201509/offline_conversion_feed_service.rb +0 -38
  435. data/lib/adwords_api/v201509/offline_conversion_feed_service_registry.rb +0 -46
  436. data/lib/adwords_api/v201509/report_definition_service.rb +0 -38
  437. data/lib/adwords_api/v201509/report_definition_service_registry.rb +0 -46
  438. data/lib/adwords_api/v201509/shared_criterion_service.rb +0 -54
  439. data/lib/adwords_api/v201509/shared_criterion_service_registry.rb +0 -46
  440. data/lib/adwords_api/v201509/shared_set_service.rb +0 -54
  441. data/lib/adwords_api/v201509/shared_set_service_registry.rb +0 -46
  442. data/lib/adwords_api/v201509/targeting_idea_service.rb +0 -38
  443. data/lib/adwords_api/v201509/targeting_idea_service_registry.rb +0 -46
  444. data/lib/adwords_api/v201509/traffic_estimator_service.rb +0 -38
  445. data/lib/adwords_api/v201509/traffic_estimator_service_registry.rb +0 -46
  446. data/test/templates/v201509/basic_operations_get_campaigns.def +0 -116
  447. data/test/templates/v201509/misc_use_oauth2_jwt.def +0 -131
@@ -1,97 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Copyright:: Copyright 2015, 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 streams the results of an Ad Hoc report to a file.
20
-
21
- require 'adwords_api'
22
-
23
- def stream_criteria_report_results()
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
- # Get report utilities for the version.
33
- report_utils = adwords.report_utils(API_VERSION)
34
-
35
- # Define report query.
36
- report_query = 'SELECT Id, AdNetworkType1, Impressions ' +
37
- 'FROM CRITERIA_PERFORMANCE_REPORT ' +
38
- 'WHERE Status IN [ENABLED, PAUSED] ' +
39
- 'DURING LAST_7_DAYS'
40
-
41
- # Optional: Set the configuration of the API instance to suppress header,
42
- # column name, or summary rows in the report output. You can also configure
43
- # this in your adwords_api.yml configuration file.
44
- adwords.skip_report_header = true
45
- adwords.skip_column_header = true
46
- adwords.skip_report_summary = true
47
- # Enable to allow rows with zero impressions to show.
48
- adwords.include_zero_impressions = false
49
-
50
- # Set the default value of the hash to 0 to allow easy totaling.
51
- ad_network_map = Hash.new(0)
52
-
53
- # We use get_stream_helper_with_awql.each_line here, which uses the
54
- # ReportStream utility to handle breaking the streamed results into lines
55
- # for easy processing. If you'd rather handle processing yourself, you can
56
- # use download_report_as_stream_with_awql, which just passes data to the
57
- # block as it's downloaded, without breaking it up into meaningful chunks.
58
- report_utils.get_stream_helper_with_awql(
59
- report_query, 'CSV').each_line do |line|
60
- process_line(line, ad_network_map)
61
- end
62
-
63
- puts 'Total impressions by ad network type 1:'
64
- ad_network_map.each do |ad_network_type, total_impressions|
65
- puts ' %s: %s' % [ad_network_type, total_impressions]
66
- end
67
- end
68
-
69
- def process_line(line, ad_network_map)
70
- id, ad_network_type_1, impressions = line.split(',')
71
- ad_network_map[ad_network_type_1] += impressions
72
- end
73
-
74
- if __FILE__ == $0
75
- API_VERSION = :v201509
76
-
77
- begin
78
- # File name to write report to.
79
- stream_criteria_report_results()
80
-
81
- # Authorization error.
82
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
83
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
84
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
85
- "to retrieve and store OAuth2 tokens."
86
- puts "See this wiki page for more details:\n\n " +
87
- 'https://github.com/googleads/google-api-ads-ruby/wiki/OAuth2'
88
-
89
- # HTTP errors.
90
- rescue AdsCommon::Errors::HttpError => e
91
- puts "HTTP Error: %s" % e
92
-
93
- # API errors.
94
- rescue AdwordsApi::Errors::ReportError => e
95
- puts "Reporting Error: %s" % e.message
96
- end
97
- end
@@ -1,267 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Copyright:: Copyright 2014, 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 creates a ProductPartition tree.
20
-
21
- require 'adwords_api'
22
-
23
- class ProductPartitionHelper
24
- attr_reader :operations
25
-
26
- def initialize(ad_group_id)
27
- # The next temporary criterion ID to be used.
28
- #
29
- # When creating our tree we need to specify the parent-child relationships
30
- # between nodes. However, until a criterion has been created on the server
31
- # we do not have a criterionId with which to refer to it.
32
- #
33
- # Instead we can specify temporary IDs that are specific to a single mutate
34
- # request. Once the criteria have been created they are assigned an ID as
35
- # normal and the temporary ID will no longer refer to it.
36
- #
37
- # A valid temporary ID is any negative integer.
38
- @next_id = -1
39
-
40
- # The set of mutate operations needed to create the current tree.
41
- @operations = []
42
-
43
- # The ID of the AdGroup that we wish to attach the partition tree to.
44
- @ad_group_id = ad_group_id
45
- end
46
-
47
- def create_subdivision(parent = nil, value = nil)
48
- division = {
49
- :xsi_type => 'ProductPartition',
50
- :partition_type => 'SUBDIVISION',
51
- :id => @next_id
52
- }
53
-
54
- @next_id -= 1
55
-
56
- unless parent.nil? || value.nil?
57
- division[:parent_criterion_id] = parent[:id]
58
- division[:case_value] = value
59
- end
60
-
61
- ad_group_criterion = {
62
- :xsi_type => 'BiddableAdGroupCriterion',
63
- :ad_group_id => @ad_group_id,
64
- :criterion => division
65
- }
66
-
67
- create_add_operation(ad_group_criterion)
68
-
69
- return division
70
- end
71
-
72
- def create_unit(parent = nil, value = nil, bid_amount = nil)
73
- unit = {
74
- :xsi_type => 'ProductPartition',
75
- :partition_type => 'UNIT'
76
- }
77
-
78
- unless parent.nil? || value.nil?
79
- unit[:parent_criterion_id] = parent[:id]
80
- unit[:case_value] = value
81
- end
82
-
83
- ad_group_criterion = {}
84
- if bid_amount && bid_amount > 0
85
- bidding_strategy_configuration = {
86
- :bids => [{
87
- :xsi_type => 'CpcBid',
88
- :bid => {
89
- :xsi_type => 'Money',
90
- :micro_amount => bid_amount
91
- }
92
- }]
93
- }
94
- ad_group_criterion[:xsi_type] = 'BiddableAdGroupCriterion'
95
- ad_group_criterion[:bidding_strategy_configuration] =
96
- bidding_strategy_configuration
97
- else
98
- ad_group_criterion[:xsi_type] = 'NegativeAdGroupCriterion'
99
- end
100
- ad_group_criterion[:ad_group_id] = @ad_group_id
101
- ad_group_criterion[:criterion] = unit
102
-
103
- create_add_operation(ad_group_criterion)
104
-
105
- return unit
106
- end
107
-
108
- private
109
-
110
- def create_add_operation(ad_group_criterion)
111
- operation = {
112
- :operator => 'ADD',
113
- :operand => ad_group_criterion
114
- }
115
-
116
- @operations << operation
117
- end
118
- end
119
-
120
- def display_tree(node, children, level = 0)
121
- value = ''
122
- type = ''
123
-
124
- if node[:case_value]
125
- type = node[:case_value][:product_dimension_type]
126
-
127
- value = case type
128
- when 'ProductCanonicalCondition'
129
- node[:case_value][:condition]
130
- when 'ProductBiddingCategory'
131
- "%s(%s)" % [node[:case_value][:type], node[:case_value][:value]]
132
- else
133
- node[:case_value][:value]
134
- end
135
- end
136
-
137
- puts "%sid: %s, type: %s, value: %s" %
138
- [' ' * level, node[:id], type, value]
139
-
140
- children[node[:id]].each do |child_node|
141
- display_tree(child_node, children, level + 1)
142
- end
143
- end
144
-
145
- def add_product_partition_tree(ad_group_id)
146
- # AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
147
- # when called without parameters.
148
- adwords = AdwordsApi::Api.new
149
-
150
- # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
151
- # the configuration file or provide your own logger:
152
- # adwords.logger = Logger.new('adwords_xml.log')
153
-
154
- ad_group_criterion_srv =
155
- adwords.service(:AdGroupCriterionService, API_VERSION)
156
-
157
- helper = ProductPartitionHelper.new(ad_group_id)
158
-
159
- root = helper.create_subdivision()
160
-
161
- new_product_canonical_condition = {
162
- :xsi_type => 'ProductCanonicalCondition',
163
- :condition => 'NEW'
164
- }
165
-
166
- used_product_canonical_condition = {
167
- :xsi_type => 'ProductCanonicalCondition',
168
- :condition => 'USED'
169
- }
170
-
171
- other_product_canonical_condition = {
172
- :xsi_type => 'ProductCanonicalCondition'
173
- }
174
-
175
- helper.create_unit(root, new_product_canonical_condition, 200000)
176
- helper.create_unit(root, used_product_canonical_condition, 100000)
177
- other_condition =
178
- helper.create_subdivision(root, other_product_canonical_condition)
179
-
180
- cool_product_brand = {
181
- :xsi_type => 'ProductBrand',
182
- :value => 'CoolBrand'
183
- }
184
-
185
- cheap_product_brand = {
186
- :xsi_type => 'ProductBrand',
187
- :value => 'CheapBrand'
188
- }
189
-
190
- other_product_brand = {
191
- :xsi_type => 'ProductBrand'
192
- }
193
-
194
- helper.create_unit(other_condition, cool_product_brand, 900000)
195
- helper.create_unit(other_condition, cheap_product_brand, 10000)
196
- other_brand = helper.create_subdivision(other_condition, other_product_brand)
197
-
198
- # The value for the bidding category is a fixed ID for the 'Luggage & Bags'
199
- # category. You can retrieve IDs for categories from the ConstantDataService.
200
- # See the get_product_taxonomy example for more details.
201
- luggage_category = {
202
- :xsi_type => 'ProductBiddingCategory',
203
- :type => 'BIDDING_CATEGORY_L1',
204
- :value => '-5914235892932915235'
205
- }
206
-
207
- generic_category = {
208
- :xsi_type => 'ProductBiddingCategory',
209
- :type => 'BIDDING_CATEGORY_L1'
210
- }
211
-
212
- helper.create_unit(other_brand, luggage_category, 750000)
213
- helper.create_unit(other_brand, generic_category, 110000)
214
-
215
- # Make the mutate request.
216
- result = ad_group_criterion_srv.mutate(helper.operations)
217
-
218
- children = {}
219
- root_node = nil
220
- # For each criterion, make an array containing each of its children.
221
- # We always create the parent before the child, so we can rely on that here.
222
- result[:value].each do |criterion|
223
- children[criterion[:criterion][:id]] = []
224
-
225
- if criterion[:criterion][:parent_criterion_id]
226
- children[criterion[:criterion][:parent_criterion_id]] <<
227
- criterion[:criterion]
228
- else
229
- root_node = criterion[:criterion]
230
- end
231
- end
232
-
233
- display_tree(root_node, children)
234
- end
235
-
236
- if __FILE__ == $0
237
- API_VERSION = :v201509
238
-
239
- begin
240
- ad_group_id = 'INSERT_AD_GROUP_ID_HERE'.to_i
241
-
242
- add_product_partition_tree(ad_group_id)
243
-
244
- # Authorization error.
245
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
246
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
247
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
248
- "to retrieve and store OAuth2 tokens."
249
- puts "See this wiki page for more details:\n\n " +
250
- 'https://github.com/googleads/google-api-ads-ruby/wiki/OAuth2'
251
-
252
- # HTTP errors.
253
- rescue AdsCommon::Errors::HttpError => e
254
- puts "HTTP Error: %s" % e
255
-
256
- # API errors.
257
- rescue AdwordsApi::Errors::ApiException => e
258
- puts "Message: %s" % e.message
259
- puts 'Errors:'
260
- e.errors.each_with_index do |error, index|
261
- puts "\tError [%d]:" % (index + 1)
262
- error.each do |field, value|
263
- puts "\t\t%s: %s" % [field, value]
264
- end
265
- end
266
- end
267
- end
@@ -1,129 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # Encoding: utf-8
3
- #
4
- # Copyright:: Copyright 2014, 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 restricts the products that will be included in the campaign by
20
- # setting a ProductScope.
21
-
22
- require 'adwords_api'
23
-
24
- def add_product_scope(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 = adwords.service(:CampaignCriterionService,
34
- API_VERSION)
35
-
36
- product_scope = {
37
- # This set of dimensions is for demonstration purposes only. It is
38
- # extremely unlikely that you want to include so many dimensions in your
39
- # product scope.
40
- :dimensions => [
41
- {
42
- :xsi_type => 'ProductBrand',
43
- :value => 'Nexus'
44
- },
45
- {
46
- :xsi_type => 'ProductCanonicalCondition',
47
- :value => 'NEW'
48
- },
49
- {
50
- :xsi_type => 'ProductCustomAttribute',
51
- :type => 'CUSTOM_ATTRIBUTE_0',
52
- :value => 'my attribute value'
53
- },
54
- {
55
- :xsi_type => 'ProductOfferId',
56
- :value => 'book1'
57
- },
58
- {
59
- :xsi_type => 'ProductType',
60
- :type => 'PRODUCT_TYPE_L1',
61
- :value => 'Media'
62
- },
63
- {
64
- :xsi_type => 'ProductType',
65
- :type => 'PRODUCT_TYPE_L2',
66
- :value => 'Books'
67
- },
68
- # The value for the bidding category is a fixed ID for the
69
- # 'Luggage & Bags' category. You can retrieve IDs for categories from
70
- # the ConstantDataService. See the 'get_product_category_taxonomy'
71
- # example for more details.
72
- {
73
- :xsi_type => 'ProductBiddingCategory',
74
- :type => 'BIDDING_CATEGORY_L1',
75
- :value => '-5914235892932915235',
76
- }
77
- ]
78
- }
79
-
80
- campaign_criterion = {
81
- :campaign_id => campaign_id,
82
- :product_scope => product_scope
83
- }
84
-
85
- campaign_criterion_operation = {
86
- :operator => 'ADD',
87
- :operand => campaign_criterion
88
- }
89
-
90
- # Make the mutate request.
91
- result = campaign_criterion_srv.mutate([campaign_criterion_operation])
92
-
93
- campaign_criterion = result[:value].first
94
- puts "Created a ProductScope criterion with ID %d." %
95
- [campaign_criterion[:criterion][:id]]
96
- end
97
-
98
- if __FILE__ == $0
99
- API_VERSION = :v201509
100
-
101
- begin
102
- campaign_id = 'INSERT_CAMPAIGN_ID_HERE'.to_i
103
-
104
- add_product_scope(campaign_id)
105
-
106
- # Authorization error.
107
- rescue AdsCommon::Errors::OAuth2VerificationRequired => e
108
- puts "Authorization credentials are not valid. Edit adwords_api.yml for " +
109
- "OAuth2 client ID and secret and run misc/setup_oauth2.rb example " +
110
- "to retrieve and store OAuth2 tokens."
111
- puts "See this wiki page for more details:\n\n " +
112
- 'https://github.com/googleads/google-api-ads-ruby/wiki/OAuth2'
113
-
114
- # HTTP errors.
115
- rescue AdsCommon::Errors::HttpError => e
116
- puts "HTTP Error: %s" % e
117
-
118
- # API errors.
119
- rescue AdwordsApi::Errors::ApiException => e
120
- puts "Message: %s" % e.message
121
- puts 'Errors:'
122
- e.errors.each_with_index do |error, index|
123
- puts "\tError [%d]:" % (index + 1)
124
- error.each do |field, value|
125
- puts "\t\t%s: %s" % [field, value]
126
- end
127
- end
128
- end
129
- end