google-adwords-api 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (324) hide show
  1. data/ChangeLog +9 -0
  2. data/README +26 -10
  3. data/Rakefile +1 -1
  4. data/examples/v200909/add_ad_group.rb +2 -2
  5. data/examples/v200909/add_ads.rb +4 -4
  6. data/examples/v200909/add_campaign.rb +2 -2
  7. data/examples/v200909/check_campaigns.rb +4 -4
  8. data/examples/v201003/add_ad_group.rb +2 -2
  9. data/examples/v201003/add_ads.rb +6 -6
  10. data/examples/v201003/add_campaign.rb +2 -2
  11. data/examples/v201003/add_keywords_performance_report_definition.rb +2 -2
  12. data/examples/v201003/check_campaigns.rb +4 -4
  13. data/examples/v201008/add_ad_group.rb +2 -2
  14. data/examples/v201008/add_ads.rb +7 -7
  15. data/examples/v201008/add_campaign.rb +2 -2
  16. data/examples/v201008/add_experiment.rb +5 -5
  17. data/examples/v201008/add_keywords_performance_report_definition.rb +2 -2
  18. data/examples/v201008/add_user_list.rb +2 -2
  19. data/examples/v201008/check_campaigns.rb +4 -4
  20. data/examples/v201008/get_account_hierarchy.rb +8 -11
  21. data/examples/v201101/add_ad_group.rb +2 -2
  22. data/examples/v201101/add_ads.rb +6 -6
  23. data/examples/v201101/add_campaign.rb +2 -2
  24. data/examples/v201101/add_conversion.rb +4 -4
  25. data/examples/v201101/add_experiment.rb +5 -5
  26. data/examples/v201101/add_keywords_performance_report_definition.rb +2 -2
  27. data/examples/v201101/add_user_list.rb +3 -3
  28. data/examples/v201101/check_campaigns.rb +4 -4
  29. data/examples/v201101/get_account_hierarchy.rb +7 -9
  30. data/examples/v201109/add_ad_extension_override.rb +82 -0
  31. data/examples/v201109/add_ad_group.rb +89 -0
  32. data/examples/v201109/add_ad_group_criteria.rb +109 -0
  33. data/examples/v201109/add_ads.rb +174 -0
  34. data/examples/v201109/add_campaign.rb +99 -0
  35. data/examples/v201109/add_campaign_ad_extension.rb +121 -0
  36. data/examples/v201109/add_campaign_targeting_criteria.rb +102 -0
  37. data/examples/{v201101/add_mcc_report_definition.rb → v201109/add_conversion.rb} +26 -28
  38. data/examples/v201109/add_experiment.rb +153 -0
  39. data/examples/v201109/add_negative_campaign_criterion.rb +87 -0
  40. data/examples/v201109/add_user_list.rb +113 -0
  41. data/examples/v201109/check_campaigns.rb +123 -0
  42. data/examples/v201109/delete_ad.rb +85 -0
  43. data/examples/v201109/delete_ad_group.rb +77 -0
  44. data/examples/v201109/delete_ad_group_criterion.rb +86 -0
  45. data/examples/v201109/delete_bulk_mutate_job.rb +87 -0
  46. data/examples/v201109/delete_campaign.rb +78 -0
  47. data/examples/v201109/delete_experiment.rb +78 -0
  48. data/examples/v201109/delete_user_list.rb +78 -0
  49. data/examples/v201109/download_adhoc_report.rb +79 -0
  50. data/examples/v201109/download_report.rb +67 -0
  51. data/examples/v201109/get_account_hierarchy.rb +93 -0
  52. data/examples/v201109/get_ad_group_bid_landscape.rb +94 -0
  53. data/examples/v201109/get_all_account_changes.rb +137 -0
  54. data/examples/v201109/get_all_active_ad_group_criteria.rb +98 -0
  55. data/examples/v201109/get_all_ad_extension_overrides.rb +82 -0
  56. data/examples/v201109/get_all_ad_group_criteria.rb +90 -0
  57. data/examples/v201109/get_all_ad_groups.rb +85 -0
  58. data/examples/v201109/get_all_ad_params.rb +86 -0
  59. data/examples/v201109/get_all_ads.rb +90 -0
  60. data/examples/v201109/get_all_campaign_ad_extensions.rb +87 -0
  61. data/examples/v201109/get_all_campaign_targets.rb +74 -0
  62. data/examples/v201109/get_all_campaigns.rb +77 -0
  63. data/examples/v201109/get_all_carriers.rb +72 -0
  64. data/examples/v201109/get_all_conversions.rb +79 -0
  65. data/examples/v201109/get_all_disapproved_ads.rb +93 -0
  66. data/examples/v201109/get_all_experiments.rb +89 -0
  67. data/examples/v201109/get_all_images.rb +82 -0
  68. data/examples/v201109/get_all_languages.rb +73 -0
  69. data/examples/v201109/get_all_paused_campaigns.rb +83 -0
  70. data/examples/v201109/get_all_report_definitions.rb +75 -0
  71. data/examples/v201109/get_all_user_lists.rb +78 -0
  72. data/examples/v201109/get_all_videos.rb +78 -0
  73. data/examples/v201109/get_bulk_mutate_job.rb +97 -0
  74. data/examples/v201109/get_campaign_alerts.rb +95 -0
  75. data/examples/v201109/get_client_customer_id.rb +87 -0
  76. data/examples/v201109/get_conversion_optimizer_eligibility.rb +93 -0
  77. data/examples/v201109/get_criterion_bid_landscape.rb +93 -0
  78. data/examples/v201109/get_geo_location_info.rb +99 -0
  79. data/examples/v201109/get_keyword_opportunities.rb +95 -0
  80. data/examples/v201109/get_location_criteria.rb +103 -0
  81. data/examples/v201109/get_method_cost.rb +87 -0
  82. data/examples/v201109/get_operation_count.rb +79 -0
  83. data/examples/v201109/get_related_keywords.rb +108 -0
  84. data/examples/v201109/get_related_placements.rb +107 -0
  85. data/examples/v201109/get_report_fields.rb +72 -0
  86. data/examples/v201109/get_total_usage_units_per_month.rb +74 -0
  87. data/examples/v201109/get_traffic_estimates.rb +129 -0
  88. data/examples/v201109/get_unit_count.rb +81 -0
  89. data/examples/v201109/handle_partial_failures.rb +127 -0
  90. data/examples/v201109/handle_policy_violation_error.rb +138 -0
  91. data/examples/v201109/handle_second_factor.rb +87 -0
  92. data/examples/v201109/oauth_handling.rb +95 -0
  93. data/examples/v201109/perform_bulk_mutate_job.rb +212 -0
  94. data/examples/v201109/perform_mutate_job.rb +177 -0
  95. data/examples/v201109/promote_experiment.rb +79 -0
  96. data/examples/v201109/set_ad_params.rb +115 -0
  97. data/examples/v201109/update_ad.rb +86 -0
  98. data/examples/v201109/update_ad_group.rb +81 -0
  99. data/examples/v201109/update_ad_group_criterion.rb +99 -0
  100. data/examples/v201109/update_campaign.rb +84 -0
  101. data/examples/v201109/update_conversion.rb +87 -0
  102. data/examples/v201109/update_user_list.rb +82 -0
  103. data/examples/v201109/upload_image.rb +90 -0
  104. data/lib/adwords_api.rb +54 -50
  105. data/lib/adwords_api/api_config.rb +70 -14
  106. data/lib/adwords_api/credential_handler.rb +32 -13
  107. data/lib/adwords_api/errors.rb +12 -0
  108. data/lib/adwords_api/extensions.rb +8 -118
  109. data/lib/adwords_api/report_utils.rb +198 -0
  110. data/lib/adwords_api/utils.rb +5 -2
  111. data/lib/adwords_api/v13/account_service.rb +11 -11
  112. data/lib/adwords_api/v13/account_service_registry.rb +5 -3
  113. data/lib/adwords_api/v13/report_service.rb +15 -15
  114. data/lib/adwords_api/v13/report_service_registry.rb +5 -3
  115. data/lib/adwords_api/v200909/ad_extension_override_service.rb +5 -5
  116. data/lib/adwords_api/v200909/ad_extension_override_service_registry.rb +5 -3
  117. data/lib/adwords_api/v200909/ad_group_ad_service.rb +5 -5
  118. data/lib/adwords_api/v200909/ad_group_ad_service_registry.rb +5 -3
  119. data/lib/adwords_api/v200909/ad_group_criterion_service.rb +5 -5
  120. data/lib/adwords_api/v200909/ad_group_criterion_service_registry.rb +5 -3
  121. data/lib/adwords_api/v200909/ad_group_service.rb +5 -5
  122. data/lib/adwords_api/v200909/ad_group_service_registry.rb +5 -3
  123. data/lib/adwords_api/v200909/ad_param_service.rb +5 -5
  124. data/lib/adwords_api/v200909/ad_param_service_registry.rb +5 -3
  125. data/lib/adwords_api/v200909/bulk_mutate_job_service.rb +5 -5
  126. data/lib/adwords_api/v200909/bulk_mutate_job_service_registry.rb +5 -3
  127. data/lib/adwords_api/v200909/campaign_ad_extension_service.rb +5 -5
  128. data/lib/adwords_api/v200909/campaign_ad_extension_service_registry.rb +5 -3
  129. data/lib/adwords_api/v200909/campaign_criterion_service.rb +5 -5
  130. data/lib/adwords_api/v200909/campaign_criterion_service_registry.rb +5 -3
  131. data/lib/adwords_api/v200909/campaign_service.rb +5 -5
  132. data/lib/adwords_api/v200909/campaign_service_registry.rb +5 -3
  133. data/lib/adwords_api/v200909/campaign_target_service.rb +5 -5
  134. data/lib/adwords_api/v200909/campaign_target_service_registry.rb +5 -3
  135. data/lib/adwords_api/v200909/geo_location_service.rb +3 -3
  136. data/lib/adwords_api/v200909/geo_location_service_registry.rb +5 -3
  137. data/lib/adwords_api/v200909/info_service.rb +3 -3
  138. data/lib/adwords_api/v200909/info_service_registry.rb +5 -3
  139. data/lib/adwords_api/v200909/targeting_idea_service.rb +5 -5
  140. data/lib/adwords_api/v200909/targeting_idea_service_registry.rb +5 -3
  141. data/lib/adwords_api/v201003/ad_extension_override_service.rb +5 -5
  142. data/lib/adwords_api/v201003/ad_extension_override_service_registry.rb +5 -3
  143. data/lib/adwords_api/v201003/ad_group_ad_service.rb +5 -5
  144. data/lib/adwords_api/v201003/ad_group_ad_service_registry.rb +5 -3
  145. data/lib/adwords_api/v201003/ad_group_criterion_service.rb +5 -5
  146. data/lib/adwords_api/v201003/ad_group_criterion_service_registry.rb +5 -3
  147. data/lib/adwords_api/v201003/ad_group_service.rb +5 -5
  148. data/lib/adwords_api/v201003/ad_group_service_registry.rb +5 -3
  149. data/lib/adwords_api/v201003/ad_param_service.rb +5 -5
  150. data/lib/adwords_api/v201003/ad_param_service_registry.rb +5 -3
  151. data/lib/adwords_api/v201003/bid_landscape_service.rb +3 -3
  152. data/lib/adwords_api/v201003/bid_landscape_service_registry.rb +5 -3
  153. data/lib/adwords_api/v201003/bulk_mutate_job_service.rb +5 -5
  154. data/lib/adwords_api/v201003/bulk_mutate_job_service_registry.rb +5 -3
  155. data/lib/adwords_api/v201003/campaign_ad_extension_service.rb +5 -5
  156. data/lib/adwords_api/v201003/campaign_ad_extension_service_registry.rb +5 -3
  157. data/lib/adwords_api/v201003/campaign_criterion_service.rb +5 -5
  158. data/lib/adwords_api/v201003/campaign_criterion_service_registry.rb +5 -3
  159. data/lib/adwords_api/v201003/campaign_service.rb +5 -5
  160. data/lib/adwords_api/v201003/campaign_service_registry.rb +5 -3
  161. data/lib/adwords_api/v201003/campaign_target_service.rb +5 -5
  162. data/lib/adwords_api/v201003/campaign_target_service_registry.rb +5 -3
  163. data/lib/adwords_api/v201003/geo_location_service.rb +3 -3
  164. data/lib/adwords_api/v201003/geo_location_service_registry.rb +5 -3
  165. data/lib/adwords_api/v201003/info_service.rb +3 -3
  166. data/lib/adwords_api/v201003/info_service_registry.rb +5 -3
  167. data/lib/adwords_api/v201003/media_service.rb +5 -5
  168. data/lib/adwords_api/v201003/media_service_registry.rb +5 -3
  169. data/lib/adwords_api/v201003/report_definition_service.rb +7 -7
  170. data/lib/adwords_api/v201003/report_definition_service_registry.rb +5 -3
  171. data/lib/adwords_api/v201003/targeting_idea_service.rb +5 -5
  172. data/lib/adwords_api/v201003/targeting_idea_service_registry.rb +5 -3
  173. data/lib/adwords_api/v201008/ad_extension_override_service.rb +5 -5
  174. data/lib/adwords_api/v201008/ad_extension_override_service_registry.rb +5 -3
  175. data/lib/adwords_api/v201008/ad_group_ad_service.rb +5 -5
  176. data/lib/adwords_api/v201008/ad_group_ad_service_registry.rb +5 -3
  177. data/lib/adwords_api/v201008/ad_group_criterion_service.rb +5 -5
  178. data/lib/adwords_api/v201008/ad_group_criterion_service_registry.rb +5 -3
  179. data/lib/adwords_api/v201008/ad_group_service.rb +5 -5
  180. data/lib/adwords_api/v201008/ad_group_service_registry.rb +5 -3
  181. data/lib/adwords_api/v201008/ad_param_service.rb +5 -5
  182. data/lib/adwords_api/v201008/ad_param_service_registry.rb +5 -3
  183. data/lib/adwords_api/v201008/alert_service.rb +3 -3
  184. data/lib/adwords_api/v201008/alert_service_registry.rb +5 -3
  185. data/lib/adwords_api/v201008/bid_landscape_service.rb +3 -3
  186. data/lib/adwords_api/v201008/bid_landscape_service_registry.rb +5 -3
  187. data/lib/adwords_api/v201008/bulk_mutate_job_service.rb +5 -5
  188. data/lib/adwords_api/v201008/bulk_mutate_job_service_registry.rb +5 -3
  189. data/lib/adwords_api/v201008/campaign_ad_extension_service.rb +5 -5
  190. data/lib/adwords_api/v201008/campaign_ad_extension_service_registry.rb +5 -3
  191. data/lib/adwords_api/v201008/campaign_criterion_service.rb +5 -5
  192. data/lib/adwords_api/v201008/campaign_criterion_service_registry.rb +5 -3
  193. data/lib/adwords_api/v201008/campaign_service.rb +5 -5
  194. data/lib/adwords_api/v201008/campaign_service_registry.rb +5 -3
  195. data/lib/adwords_api/v201008/campaign_target_service.rb +5 -5
  196. data/lib/adwords_api/v201008/campaign_target_service_registry.rb +5 -3
  197. data/lib/adwords_api/v201008/customer_sync_service.rb +3 -3
  198. data/lib/adwords_api/v201008/customer_sync_service_registry.rb +5 -3
  199. data/lib/adwords_api/v201008/experiment_service.rb +5 -5
  200. data/lib/adwords_api/v201008/experiment_service_registry.rb +5 -3
  201. data/lib/adwords_api/v201008/geo_location_service.rb +3 -3
  202. data/lib/adwords_api/v201008/geo_location_service_registry.rb +5 -3
  203. data/lib/adwords_api/v201008/info_service.rb +3 -3
  204. data/lib/adwords_api/v201008/info_service_registry.rb +5 -3
  205. data/lib/adwords_api/v201008/media_service.rb +5 -5
  206. data/lib/adwords_api/v201008/media_service_registry.rb +5 -3
  207. data/lib/adwords_api/v201008/report_definition_service.rb +7 -7
  208. data/lib/adwords_api/v201008/report_definition_service_registry.rb +5 -3
  209. data/lib/adwords_api/v201008/serviced_account_service.rb +3 -3
  210. data/lib/adwords_api/v201008/serviced_account_service_registry.rb +5 -3
  211. data/lib/adwords_api/v201008/targeting_idea_service.rb +5 -5
  212. data/lib/adwords_api/v201008/targeting_idea_service_registry.rb +5 -3
  213. data/lib/adwords_api/v201008/traffic_estimator_service.rb +3 -3
  214. data/lib/adwords_api/v201008/traffic_estimator_service_registry.rb +5 -3
  215. data/lib/adwords_api/v201008/user_list_service.rb +5 -5
  216. data/lib/adwords_api/v201008/user_list_service_registry.rb +5 -3
  217. data/lib/adwords_api/v201101/ad_extension_override_service.rb +5 -5
  218. data/lib/adwords_api/v201101/ad_extension_override_service_registry.rb +5 -3
  219. data/lib/adwords_api/v201101/ad_group_ad_service.rb +5 -5
  220. data/lib/adwords_api/v201101/ad_group_ad_service_registry.rb +5 -3
  221. data/lib/adwords_api/v201101/ad_group_criterion_service.rb +5 -5
  222. data/lib/adwords_api/v201101/ad_group_criterion_service_registry.rb +5 -3
  223. data/lib/adwords_api/v201101/ad_group_service.rb +5 -5
  224. data/lib/adwords_api/v201101/ad_group_service_registry.rb +5 -3
  225. data/lib/adwords_api/v201101/ad_param_service.rb +5 -5
  226. data/lib/adwords_api/v201101/ad_param_service_registry.rb +5 -3
  227. data/lib/adwords_api/v201101/alert_service.rb +3 -3
  228. data/lib/adwords_api/v201101/alert_service_registry.rb +5 -3
  229. data/lib/adwords_api/v201101/bulk_mutate_job_service.rb +5 -5
  230. data/lib/adwords_api/v201101/bulk_mutate_job_service_registry.rb +5 -3
  231. data/lib/adwords_api/v201101/bulk_opportunity_service.rb +3 -3
  232. data/lib/adwords_api/v201101/bulk_opportunity_service_registry.rb +5 -3
  233. data/lib/adwords_api/v201101/campaign_ad_extension_service.rb +5 -5
  234. data/lib/adwords_api/v201101/campaign_ad_extension_service_registry.rb +5 -3
  235. data/lib/adwords_api/v201101/campaign_criterion_service.rb +5 -5
  236. data/lib/adwords_api/v201101/campaign_criterion_service_registry.rb +5 -3
  237. data/lib/adwords_api/v201101/campaign_service.rb +5 -5
  238. data/lib/adwords_api/v201101/campaign_service_registry.rb +5 -3
  239. data/lib/adwords_api/v201101/campaign_target_service.rb +5 -5
  240. data/lib/adwords_api/v201101/campaign_target_service_registry.rb +5 -3
  241. data/lib/adwords_api/v201101/conversion_tracker_service.rb +5 -5
  242. data/lib/adwords_api/v201101/conversion_tracker_service_registry.rb +5 -3
  243. data/lib/adwords_api/v201101/customer_sync_service.rb +3 -3
  244. data/lib/adwords_api/v201101/customer_sync_service_registry.rb +5 -3
  245. data/lib/adwords_api/v201101/data_service.rb +5 -5
  246. data/lib/adwords_api/v201101/data_service_registry.rb +5 -3
  247. data/lib/adwords_api/v201101/experiment_service.rb +5 -5
  248. data/lib/adwords_api/v201101/experiment_service_registry.rb +5 -3
  249. data/lib/adwords_api/v201101/geo_location_service.rb +3 -3
  250. data/lib/adwords_api/v201101/geo_location_service_registry.rb +5 -3
  251. data/lib/adwords_api/v201101/info_service.rb +3 -3
  252. data/lib/adwords_api/v201101/info_service_registry.rb +5 -3
  253. data/lib/adwords_api/v201101/media_service.rb +5 -5
  254. data/lib/adwords_api/v201101/media_service_registry.rb +5 -3
  255. data/lib/adwords_api/v201101/report_definition_service.rb +7 -15
  256. data/lib/adwords_api/v201101/report_definition_service_registry.rb +5 -3
  257. data/lib/adwords_api/v201101/serviced_account_service.rb +3 -3
  258. data/lib/adwords_api/v201101/serviced_account_service_registry.rb +5 -3
  259. data/lib/adwords_api/v201101/targeting_idea_service.rb +5 -5
  260. data/lib/adwords_api/v201101/targeting_idea_service_registry.rb +5 -3
  261. data/lib/adwords_api/v201101/traffic_estimator_service.rb +3 -3
  262. data/lib/adwords_api/v201101/traffic_estimator_service_registry.rb +5 -3
  263. data/lib/adwords_api/v201101/user_list_service.rb +5 -5
  264. data/lib/adwords_api/v201101/user_list_service_registry.rb +5 -3
  265. data/lib/adwords_api/v201109/ad_extension_override_service.rb +36 -0
  266. data/lib/adwords_api/v201109/ad_extension_override_service_registry.rb +44 -0
  267. data/lib/adwords_api/v201109/ad_group_ad_service.rb +36 -0
  268. data/lib/adwords_api/v201109/ad_group_ad_service_registry.rb +44 -0
  269. data/lib/adwords_api/v201109/ad_group_criterion_service.rb +36 -0
  270. data/lib/adwords_api/v201109/ad_group_criterion_service_registry.rb +44 -0
  271. data/lib/adwords_api/v201109/ad_group_service.rb +36 -0
  272. data/lib/adwords_api/v201109/ad_group_service_registry.rb +44 -0
  273. data/lib/adwords_api/v201109/ad_param_service.rb +36 -0
  274. data/lib/adwords_api/v201109/ad_param_service_registry.rb +44 -0
  275. data/lib/adwords_api/v201109/alert_service.rb +32 -0
  276. data/lib/adwords_api/v201109/alert_service_registry.rb +44 -0
  277. data/lib/adwords_api/v201109/bulk_mutate_job_service.rb +36 -0
  278. data/lib/adwords_api/v201109/bulk_mutate_job_service_registry.rb +44 -0
  279. data/lib/adwords_api/v201109/bulk_opportunity_service.rb +32 -0
  280. data/lib/adwords_api/v201109/bulk_opportunity_service_registry.rb +44 -0
  281. data/lib/adwords_api/v201109/campaign_ad_extension_service.rb +36 -0
  282. data/lib/adwords_api/v201109/campaign_ad_extension_service_registry.rb +44 -0
  283. data/lib/adwords_api/v201109/campaign_criterion_service.rb +36 -0
  284. data/lib/adwords_api/v201109/campaign_criterion_service_registry.rb +44 -0
  285. data/lib/adwords_api/v201109/campaign_service.rb +36 -0
  286. data/lib/adwords_api/v201109/campaign_service_registry.rb +44 -0
  287. data/lib/adwords_api/v201109/campaign_target_service.rb +36 -0
  288. data/lib/adwords_api/v201109/campaign_target_service_registry.rb +44 -0
  289. data/lib/adwords_api/v201109/constant_data_service.rb +36 -0
  290. data/lib/adwords_api/v201109/constant_data_service_registry.rb +44 -0
  291. data/lib/adwords_api/v201109/conversion_tracker_service.rb +36 -0
  292. data/lib/adwords_api/v201109/conversion_tracker_service_registry.rb +44 -0
  293. data/lib/adwords_api/v201109/customer_sync_service.rb +32 -0
  294. data/lib/adwords_api/v201109/customer_sync_service_registry.rb +45 -0
  295. data/lib/adwords_api/v201109/data_service.rb +36 -0
  296. data/lib/adwords_api/v201109/data_service_registry.rb +44 -0
  297. data/lib/adwords_api/v201109/experiment_service.rb +36 -0
  298. data/lib/adwords_api/v201109/experiment_service_registry.rb +44 -0
  299. data/lib/adwords_api/v201109/geo_location_service.rb +32 -0
  300. data/lib/adwords_api/v201109/geo_location_service_registry.rb +44 -0
  301. data/lib/adwords_api/v201109/info_service.rb +32 -0
  302. data/lib/adwords_api/v201109/info_service_registry.rb +44 -0
  303. data/lib/adwords_api/v201109/location_criterion_service.rb +32 -0
  304. data/lib/adwords_api/v201109/location_criterion_service_registry.rb +44 -0
  305. data/lib/adwords_api/v201109/media_service.rb +36 -0
  306. data/lib/adwords_api/v201109/media_service_registry.rb +44 -0
  307. data/lib/adwords_api/v201109/mutate_job_service.rb +40 -0
  308. data/lib/adwords_api/v201109/mutate_job_service_registry.rb +44 -0
  309. data/lib/adwords_api/v201109/report_definition_service.rb +45 -0
  310. data/lib/adwords_api/v201109/report_definition_service_registry.rb +44 -0
  311. data/lib/adwords_api/v201109/serviced_account_service.rb +32 -0
  312. data/lib/adwords_api/v201109/serviced_account_service_registry.rb +44 -0
  313. data/lib/adwords_api/v201109/targeting_idea_service.rb +36 -0
  314. data/lib/adwords_api/v201109/targeting_idea_service_registry.rb +44 -0
  315. data/lib/adwords_api/v201109/traffic_estimator_service.rb +32 -0
  316. data/lib/adwords_api/v201109/traffic_estimator_service_registry.rb +44 -0
  317. data/lib/adwords_api/v201109/user_list_service.rb +36 -0
  318. data/lib/adwords_api/v201109/user_list_service_registry.rb +44 -0
  319. data/test/bugs/test_issue_00000031.rb +78 -0
  320. metadata +467 -342
  321. data/examples/v201101/download_mcc_report.rb +0 -113
  322. data/examples/v201101/download_mcc_report_as_file.rb +0 -114
  323. data/lib/adwords_api/v13/traffic_estimator_service.rb +0 -44
  324. data/lib/adwords_api/v13/traffic_estimator_service_registry.rb +0 -39
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:38:26.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'adwords_api/v201109/alert_service_registry'
10
+
11
+ module AdwordsApi; module V201109; module AlertService
12
+ class AlertService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://adwords.google.com/api/adwords/mcm/v201109'
15
+ super(api, endpoint, namespace, :v201109)
16
+ end
17
+
18
+ def get(*args, &block)
19
+ return execute_action('get', args, &block)
20
+ end
21
+
22
+ private
23
+
24
+ def get_service_registry()
25
+ return AlertServiceRegistry
26
+ end
27
+
28
+ def get_module()
29
+ return AdwordsApi::V201109::AlertService
30
+ end
31
+ end
32
+ end; end; end
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:38:26.
7
+
8
+ require 'adwords_api/errors'
9
+
10
+ module AdwordsApi; module V201109; module AlertService
11
+ class AlertServiceRegistry
12
+ ALERTSERVICE_METHODS = {:get=>{:input=>[{:type=>"AlertSelector", :max_occurs=>1, :min_occurs=>0, :name=>:selector}], :output=>{:fields=>[{:type=>"AlertPage", :max_occurs=>1, :min_occurs=>0, :name=>:rval}], :name=>"get_response"}}}
13
+ ALERTSERVICE_TYPES = {:AlertQuery=>{:fields=>[{:type=>"ClientSpec", :max_occurs=>1, :min_occurs=>0, :name=>:client_spec}, {:type=>"FilterSpec", :max_occurs=>1, :min_occurs=>0, :name=>:filter_spec}, {:type=>"AlertType", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:types}, {:type=>"AlertSeverity", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:severities}, {:type=>"TriggerTimeSpec", :max_occurs=>1, :min_occurs=>0, :name=>:trigger_time_spec}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:trigger_time}, {:type=>"long", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:client_customer_ids}]}, :AlertSelector=>{:fields=>[{:type=>"AlertQuery", :max_occurs=>1, :min_occurs=>0, :name=>:query}, {:type=>"Paging", :max_occurs=>1, :min_occurs=>0, :name=>:paging}]}, :Detail=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:trigger_time}]}, :SoapHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:auth_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:client_customer_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:developer_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_agent}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:validate_only}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:partial_failure}], :ns=>0}, :Alert=>{:fields=>[{:type=>"AlertSeverity", :max_occurs=>1, :min_occurs=>0, :name=>:alert_severity}, {:type=>"AlertType", :max_occurs=>1, :min_occurs=>0, :name=>:alert_type}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:client_customer_id}, {:type=>"Detail", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:details}]}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:request_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:service_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:method_name}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:operations}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:response_time}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:units}], :ns=>0}, :Page=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:total_num_entries}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:page_type}], :ns=>0, :abstract=>true}, :Paging=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:start_index}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:number_results}], :ns=>0}, :AlertPage=>{:fields=>[{:type=>"Alert", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:entries}], :base=>"NoStatsPage"}, :NoStatsPage=>{:fields=>[], :abstract=>true, :base=>"Page"}}
14
+ ALERTSERVICE_NAMESPACES = ["https://adwords.google.com/api/adwords/cm/v201109"]
15
+
16
+ def self.get_method_signature(method_name)
17
+ return ALERTSERVICE_METHODS[method_name.to_sym]
18
+ end
19
+
20
+ def self.get_type_signature(type_name)
21
+ return ALERTSERVICE_TYPES[type_name.to_sym]
22
+ end
23
+
24
+ def self.get_namespace(index)
25
+ return ALERTSERVICE_NAMESPACES[index]
26
+ end
27
+ end
28
+
29
+ # Base class for exceptions.
30
+ class ApplicationException < AdwordsApi::Errors::ApiException
31
+ attr_reader :message # string
32
+ attr_reader :application_exception_type # string
33
+ end
34
+
35
+ # Exception class for holding a list of service errors.
36
+ class ApiException < ApplicationException
37
+ attr_reader :errors # ApiError
38
+ def initialize(exception_fault)
39
+ @array_fields ||= []
40
+ @array_fields << 'errors'
41
+ super(exception_fault)
42
+ end
43
+ end
44
+ end; end; end
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:38:15.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'adwords_api/v201109/bulk_mutate_job_service_registry'
10
+
11
+ module AdwordsApi; module V201109; module BulkMutateJobService
12
+ class BulkMutateJobService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://adwords.google.com/api/adwords/cm/v201109'
15
+ super(api, endpoint, namespace, :v201109)
16
+ end
17
+
18
+ def get(*args, &block)
19
+ return execute_action('get', args, &block)
20
+ end
21
+
22
+ def mutate(*args, &block)
23
+ return execute_action('mutate', args, &block)
24
+ end
25
+
26
+ private
27
+
28
+ def get_service_registry()
29
+ return BulkMutateJobServiceRegistry
30
+ end
31
+
32
+ def get_module()
33
+ return AdwordsApi::V201109::BulkMutateJobService
34
+ end
35
+ end
36
+ end; end; end
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:38:15.
7
+
8
+ require 'adwords_api/errors'
9
+
10
+ module AdwordsApi; module V201109; module BulkMutateJobService
11
+ class BulkMutateJobServiceRegistry
12
+ BULKMUTATEJOBSERVICE_METHODS = {:get=>{:input=>[{:type=>"BulkMutateJobSelector", :max_occurs=>1, :min_occurs=>0, :name=>:selector}], :output=>{:fields=>[{:type=>"BulkMutateJob", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:rval}], :name=>"get_response"}}, :mutate=>{:input=>[{:type=>"JobOperation", :max_occurs=>1, :min_occurs=>0, :name=>:operation}], :output=>{:fields=>[{:type=>"BulkMutateJob", :max_occurs=>1, :min_occurs=>0, :name=>:rval}], :name=>"mutate_response"}}}
13
+ BULKMUTATEJOBSERVICE_TYPES = {:ProductExtension=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:google_base_customer_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:advertiser_name}, {:type=>"ProductConditionAndGroup", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:product_selection}], :base=>"AdExtension"}, :GeoTargetTypeSetting=>{:fields=>[{:type=>"GeoTargetTypeSetting.PositiveGeoTargetType", :max_occurs=>1, :min_occurs=>0, :name=>:positive_geo_target_type}, {:type=>"GeoTargetTypeSetting.NegativeGeoTargetType", :max_occurs=>1, :min_occurs=>0, :name=>:negative_geo_target_type}], :base=>"Setting"}, :Audio=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:duration_millis}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:streaming_url}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:ready_to_play_on_the_web}], :base=>"Media"}, :CampaignTargetOperation=>{:fields=>[{:type=>"TargetList", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :FrequencyCap=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:impressions}, {:type=>"TimeUnit", :max_occurs=>1, :min_occurs=>0, :name=>:time_unit}, {:type=>"Level", :max_occurs=>1, :min_occurs=>0, :name=>:level}]}, :OperationStream=>{:fields=>[{:type=>"EntityId", :max_occurs=>1, :min_occurs=>0, :name=>:scoping_entity_id}, {:type=>"Operation", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:operations}]}, :AdGroupCriterion=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:ad_group_id}, {:type=>"CriterionUse", :max_occurs=>1, :min_occurs=>0, :name=>:criterion_use}, {:type=>"Criterion", :max_occurs=>1, :min_occurs=>0, :name=>:criterion}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_group_criterion_type}]}, :EntityNotFound=>{:fields=>[{:type=>"EntityNotFound.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}], :base=>"ApiError"}, :CriterionUserInterest=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:user_interest_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_interest_name}], :base=>"Criterion"}, :Setting=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:setting_type}], :abstract=>true}, :PercentCPA=>{:fields=>[], :base=>"BiddingStrategy"}, :LocationSyncExtension=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:email}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:auth_token}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:icon_media_id}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:should_sync_url}], :base=>"AdExtension"}, :EntityId=>{:fields=>[{:type=>"EntityId.Type", :max_occurs=>1, :min_occurs=>0, :name=>:type}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:value}]}, :Image=>{:fields=>[{:type=>"base64Binary", :max_occurs=>1, :min_occurs=>0, :name=>:data}], :base=>"Media"}, :AdGroupAd=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:ad_group_id}, {:type=>"Ad", :max_occurs=>1, :min_occurs=>0, :name=>:ad}, {:type=>"AdGroupAdExperimentData", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_data}, {:type=>"AdGroupAd.Status", :max_occurs=>1, :min_occurs=>0, :name=>:status}, {:type=>"AdStats", :max_occurs=>1, :min_occurs=>0, :name=>:stats}]}, :AdGroupAdExperimentData=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_id}, {:type=>"ExperimentDeltaStatus", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_delta_status}, {:type=>"ExperimentDataStatus", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_data_status}]}, :LongValue=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:number}], :base=>"NumberValue"}, :AdScheduleTargetList=>{:fields=>[{:type=>"AdScheduleTarget", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:targets}], :base=>"TargetList"}, :BiddingStrategy=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:bidding_strategy_type}], :abstract=>true}, :ExemptionRequest=>{:fields=>[{:type=>"PolicyViolationKey", :max_occurs=>1, :min_occurs=>0, :name=>:key}]}, :MobileAd=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:headline}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:description}, {:type=>"MarkupLanguageType", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:markup_languages}, {:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:mobile_carriers}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:business_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:phone_number}], :base=>"Ad"}, :CampaignAdExtension=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_id}, {:type=>"AdExtension", :max_occurs=>1, :min_occurs=>0, :name=>:ad_extension}, {:type=>"CampaignAdExtension.Status", :max_occurs=>1, :min_occurs=>0, :name=>:status}, {:type=>"CampaignAdExtension.ApprovalStatus", :max_occurs=>1, :min_occurs=>0, :name=>:approval_status}, {:type=>"CampaignAdExtensionStats", :max_occurs=>1, :min_occurs=>0, :name=>:stats}]}, :Job=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:customer_job_key}, {:type=>"ApiErrorReason", :max_occurs=>1, :min_occurs=>0, :name=>:failure_reason}, {:type=>"JobStats", :max_occurs=>1, :min_occurs=>0, :name=>:stats}, {:type=>"BillingSummary", :max_occurs=>1, :min_occurs=>0, :name=>:billing_summary}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:job_type}], :abstract=>true}, :UnprocessedResult=>{:fields=>[], :base=>"OperationResult"}, :OperationAccessDenied=>{:fields=>[{:type=>"OperationAccessDenied.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}], :base=>"ApiError"}, :BillingSummary=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:num_operations}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:num_units}]}, :TextAd=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:headline}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:description1}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:description2}], :base=>"Ad"}, :ConversionOptimizerAdGroupBids=>{:fields=>[{:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:target_cpa}, {:type=>"ConversionOptimizerBidType", :max_occurs=>1, :min_occurs=>0, :name=>:conversion_optimizer_bid_type}, {:type=>"ConversionDeduplicationMode", :max_occurs=>1, :min_occurs=>0, :name=>:deduplication_mode}], :base=>"AdGroupBids"}, :JobOperation=>{:fields=>[{:type=>"Job", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :CampaignOperation=>{:fields=>[{:type=>"BiddingTransition", :max_occurs=>1, :min_occurs=>0, :name=>:bidding_transition}, {:type=>"Campaign", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :BudgetOptimizerAdGroupCriterionBids=>{:fields=>[{:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:proxy_bid}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:enhanced_cpc_enabled}], :base=>"AdGroupCriterionBids"}, :Gender=>{:fields=>[{:type=>"Gender.GenderType", :max_occurs=>1, :min_occurs=>0, :name=>:gender_type}], :base=>"Criterion"}, :Sitelink=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:display_text}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:destination_url}]}, :AdGroupCriterionLimitExceeded=>{:fields=>[{:type=>"AdGroupCriterionLimitExceeded.CriteriaLimitType", :max_occurs=>1, :min_occurs=>0, :name=>:limit_type}], :base=>"EntityCountLimitExceeded"}, :BulkMutateJobPolicy=>{:fields=>[{:type=>"long", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:prerequisite_job_ids}]}, :OperatingSystemVersion=>{:fields=>[], :base=>"Criterion"}, :AdUnionId=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_union_id_type}]}, :ManualCPMAdGroupBids=>{:fields=>[{:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:max_cpm}], :base=>"AdGroupBids"}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:request_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:service_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:method_name}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:operations}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:response_time}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:units}]}, :BulkMutateRequest=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:part_index}, {:type=>"OperationStream", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:operation_streams}]}, :EntityCountLimitExceeded=>{:fields=>[{:type=>"EntityCountLimitExceeded.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:enclosing_id}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:limit}], :base=>"ApiError"}, :BiddableAdGroupCriterionExperimentData=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_id}, {:type=>"ExperimentDeltaStatus", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_delta_status}, {:type=>"ExperimentDataStatus", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_data_status}, {:type=>"AdGroupCriterionExperimentBidMultiplier", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_bid_multiplier}]}, :MobileImageAd=>{:fields=>[{:type=>"MarkupLanguageType", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:markup_languages}, {:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:mobile_carriers}, {:type=>"Image", :max_occurs=>1, :min_occurs=>0, :name=>:image}], :base=>"Ad"}, :AdGroupExperimentBidMultipliers=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_group_experiment_bid_multipliers_type}], :abstract=>true}, :Address=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:street_address}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:street_address2}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:city_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:province_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:province_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:postal_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}]}, :ProductCondition=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:argument}, {:type=>"ProductConditionOperand", :max_occurs=>1, :min_occurs=>0, :name=>:operand}]}, :PercentCPAAdGroupCriterionBids=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:percent_cpa}, {:type=>"BidSource", :max_occurs=>1, :min_occurs=>0, :name=>:source}], :base=>"AdGroupCriterionBids"}, :CampaignCriterionLimitExceeded=>{:fields=>[{:type=>"CampaignCriterionLimitExceeded.CriteriaLimitType", :max_occurs=>1, :min_occurs=>0, :name=>:limit_type}], :base=>"EntityCountLimitExceeded"}, :ConversionOptimizerBiddingTransition=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:use_saved_bids}], :base=>"BiddingTransition"}, :AdStats=>{:fields=>[{:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:percent_served}], :base=>"Stats"}, :AdGroup=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"AdGroup.Status", :max_occurs=>1, :min_occurs=>0, :name=>:status}, {:type=>"AdGroupBids", :max_occurs=>1, :min_occurs=>0, :name=>:bids}, {:type=>"AdGroupExperimentData", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_data}, {:type=>"Stats", :max_occurs=>1, :min_occurs=>0, :name=>:stats}]}, :Operand=>{:fields=>[]}, :AdGroupCriterionBids=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_group_criterion_bids_type}], :abstract=>true}, :PolicyViolationKey=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:policy_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:violating_text}]}, :ManualCPC=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:enhanced_cpc_enabled}], :base=>"BiddingStrategy"}, :NetworkSetting=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:target_google_search}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:target_search_network}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:target_content_network}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:target_content_contextual}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:target_partner_search_network}]}, :DeprecatedAd=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"DeprecatedAd.Type", :max_occurs=>1, :min_occurs=>0, :name=>:type}], :base=>"Ad"}, :ContentLabel=>{:fields=>[{:type=>"ContentLabelType", :max_occurs=>1, :min_occurs=>0, :name=>:content_label_type}], :base=>"Criterion"}, :TemplateAd=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:template_id}, {:type=>"AdUnionId", :max_occurs=>1, :min_occurs=>0, :name=>:ad_union_id}, {:type=>"TemplateElement", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:template_elements}, {:type=>"Dimensions", :max_occurs=>1, :min_occurs=>0, :name=>:dimensions}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:duration}], :base=>"Ad"}, :OperationStreamResult=>{:fields=>[{:type=>"OperationResult", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:operation_results}]}, :GeoPoint=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:latitude_in_micro_degrees}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:longitude_in_micro_degrees}]}, :AdExtensionOverride=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:ad_id}, {:type=>"AdExtension", :max_occurs=>1, :min_occurs=>0, :name=>:ad_extension}, {:type=>"OverrideInfo", :max_occurs=>1, :min_occurs=>0, :name=>:override_info}, {:type=>"AdExtensionOverride.Status", :max_occurs=>1, :min_occurs=>0, :name=>:status}, {:type=>"AdExtensionOverride.ApprovalStatus", :max_occurs=>1, :min_occurs=>0, :name=>:approval_status}, {:type=>"AdExtensionOverrideStats", :max_occurs=>1, :min_occurs=>0, :name=>:stats}]}, :AdGroupCriterionOperation=>{:fields=>[{:type=>"AdGroupCriterion", :max_occurs=>1, :min_occurs=>0, :name=>:operand}, {:type=>"ExemptionRequest", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:exemption_requests}], :base=>"Operation"}, :CriterionUserList=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_name}, {:type=>"CriterionUserList.MembershipStatus", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_membership_status}], :base=>"Criterion"}, :Stats=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:start_date}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:end_date}, {:type=>"Stats.Network", :max_occurs=>1, :min_occurs=>0, :name=>:network}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:clicks}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:impressions}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:cost}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:average_position}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:average_cpc}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:average_cpm}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:ctr}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:conversions}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:conversion_rate}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:cost_per_conversion}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:conversions_many_per_click}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:conversion_rate_many_per_click}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:cost_per_conversion_many_per_click}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:view_through_conversions}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:total_conv_value}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:value_per_conv}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:value_per_conv_many_per_click}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:invalid_clicks}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:invalid_click_rate}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:num_calls}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:num_missed_calls}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:num_received_calls}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:call_duration_secs}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:avg_call_duration_secs}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:stats_type}]}, :Media_Size_DimensionsMapEntry=>{:fields=>[{:type=>"Media.Size", :max_occurs=>1, :min_occurs=>0, :name=>:key}, {:type=>"Dimensions", :max_occurs=>1, :min_occurs=>0, :name=>:value}]}, :FailureResult=>{:fields=>[{:type=>"ApiException", :max_occurs=>1, :min_occurs=>0, :name=>:cause}], :base=>"OperationResult"}, :Budget=>{:fields=>[{:type=>"Budget.BudgetPeriod", :max_occurs=>1, :min_occurs=>0, :name=>:period}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:amount}, {:type=>"Budget.BudgetDeliveryMethod", :max_occurs=>1, :min_occurs=>0, :name=>:delivery_method}]}, :ReturnValueResult=>{:fields=>[{:type=>"Operand", :max_occurs=>1, :min_occurs=>0, :name=>:return_value}], :base=>"OperationResult"}, :AdGroupAdOperation=>{:fields=>[{:type=>"AdGroupAd", :max_occurs=>1, :min_occurs=>0, :name=>:operand}, {:type=>"ExemptionRequest", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:exemption_requests}], :base=>"Operation"}, :MobileExtension=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:phone_number}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_call_only}], :base=>"AdExtension"}, :ApiErrorReason=>{:fields=>[]}, :ProductAd=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:promotion_line}], :base=>"Ad"}, :PercentCPAAdGroupBids=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:percent_cpa}], :base=>"AdGroupBids"}, :BiddingTransition=>{:fields=>[{:type=>"BiddingStrategy", :max_occurs=>1, :min_occurs=>0, :name=>:target_bidding_strategy}, {:type=>"AdGroupBids", :max_occurs=>1, :min_occurs=>0, :name=>:explicit_ad_group_bids}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:bidding_transition_type}]}, :AgeRange=>{:fields=>[{:type=>"AgeRange.AgeRangeType", :max_occurs=>1, :min_occurs=>0, :name=>:age_range_type}], :base=>"Criterion"}, :Bid=>{:fields=>[{:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:amount}]}, :CampaignAdExtensionOperation=>{:fields=>[{:type=>"CampaignAdExtension", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :BulkMutateJob=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"BulkMutateJobPolicy", :max_occurs=>1, :min_occurs=>0, :name=>:policy}, {:type=>"BulkMutateRequest", :max_occurs=>1, :min_occurs=>0, :name=>:request}, {:type=>"BasicJobStatus", :max_occurs=>1, :min_occurs=>0, :name=>:status}, {:type=>"BulkMutateJobEvent", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:history}, {:type=>"BulkMutateResult", :max_occurs=>1, :min_occurs=>0, :name=>:result}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:num_request_parts}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:num_request_parts_received}], :base=>"Job"}, :ThirdPartyRedirectAd=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_cookie_targeted}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_user_interest_targeted}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_tagged}, {:type=>"VideoType", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:video_types}], :base=>"RichMediaAd"}, :Language=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}], :base=>"Criterion"}, :ManualCPCAdGroupCriterionExperimentBidMultiplier=>{:fields=>[{:type=>"BidMultiplier", :max_occurs=>1, :min_occurs=>0, :name=>:max_cpc_multiplier}, {:type=>"MultiplierSource", :max_occurs=>1, :min_occurs=>0, :name=>:multiplier_source}], :base=>"AdGroupCriterionExperimentBidMultiplier"}, :ManualCPCAdGroupBids=>{:fields=>[{:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:keyword_max_cpc}, {:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:keyword_content_max_cpc}, {:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:site_max_cpc}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:enhanced_cpc_enabled}], :base=>"AdGroupBids"}, :JobSelector=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:include_history}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:include_stats}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:job_selector_type}], :abstract=>true}, :SitelinksExtension=>{:fields=>[{:type=>"Sitelink", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:sitelinks}], :base=>"AdExtension"}, :BulkMutateJobSelector=>{:fields=>[{:type=>"long", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:job_ids}, {:type=>"BasicJobStatus", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:job_statuses}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:result_part_index}], :base=>"JobSelector"}, :ConversionOptimizerAdGroupCriterionBids=>{:fields=>[], :base=>"AdGroupCriterionBids"}, :Target=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:target_type}], :abstract=>true}, :RichMediaAd=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"Dimensions", :max_occurs=>1, :min_occurs=>0, :name=>:dimensions}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:snippet}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:impression_beacon_url}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:certified_vendor_format_id}], :abstract=>true, :base=>"Ad"}, :Product=>{:fields=>[{:type=>"ProductCondition", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:conditions}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:text}], :base=>"Criterion"}, :Polygon=>{:fields=>[{:type=>"GeoPoint", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:vertices}], :base=>"Criterion"}, :Platform=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:platform_name}], :base=>"Criterion"}, :ManualCPMAdGroupExperimentBidMultipliers=>{:fields=>[{:type=>"BidMultiplier", :max_occurs=>1, :min_occurs=>0, :name=>:max_cpm_multiplier}], :base=>"AdGroupExperimentBidMultipliers"}, :LocationOverrideInfo=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:radius}, {:type=>"LocationOverrideInfo.RadiusUnits", :max_occurs=>1, :min_occurs=>0, :name=>:radius_units}]}, :CampaignStats=>{:fields=>[], :base=>"Stats"}, :AdScheduleTarget=>{:fields=>[{:type=>"DayOfWeek", :max_occurs=>1, :min_occurs=>0, :name=>:day_of_week}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:start_hour}, {:type=>"MinuteOfHour", :max_occurs=>1, :min_occurs=>0, :name=>:start_minute}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:end_hour}, {:type=>"MinuteOfHour", :max_occurs=>1, :min_occurs=>0, :name=>:end_minute}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:bid_multiplier}], :base=>"Target"}, :Keyword=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:text}, {:type=>"KeywordMatchType", :max_occurs=>1, :min_occurs=>0, :name=>:match_type}], :base=>"Criterion"}, :AdExtensionOverrideStats=>{:fields=>[], :base=>"Stats"}, :BulkMutateResult=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:part_index}, {:type=>"OperationStreamResult", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:operation_stream_results}]}, :TemplateElementField=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"TemplateElementField.Type", :max_occurs=>1, :min_occurs=>0, :name=>:type}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:field_text}, {:type=>"Media", :max_occurs=>1, :min_occurs=>0, :name=>:field_media}]}, :CampaignAdExtensionStats=>{:fields=>[], :base=>"Stats"}, :Criterion=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"Criterion.Type", :max_occurs=>1, :min_occurs=>0, :name=>:type}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:criterion_type}]}, :AdGroupExperimentData=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_id}, {:type=>"ExperimentDeltaStatus", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_delta_status}, {:type=>"ExperimentDataStatus", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_data_status}, {:type=>"AdGroupExperimentBidMultipliers", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_bid_multipliers}]}, :NegativeCampaignCriterion=>{:fields=>[], :base=>"CampaignCriterion"}, :ProductConditionAndGroup=>{:fields=>[{:type=>"ProductCondition", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:conditions}]}, :Placement=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:url}], :base=>"Criterion"}, :CampaignCriterionOperation=>{:fields=>[{:type=>"CampaignCriterion", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :ConversionOptimizerEligibility=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:eligible}, {:type=>"ConversionOptimizerEligibility.RejectionReason", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:rejection_reasons}]}, :TemplateElement=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:unique_name}, {:type=>"TemplateElementField", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:fields}]}, :OperationResult=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:operation_result_type}], :abstract=>true}, :BiddableAdGroupCriterion=>{:fields=>[{:type=>"UserStatus", :max_occurs=>1, :min_occurs=>0, :name=>:user_status}, {:type=>"SystemServingStatus", :max_occurs=>1, :min_occurs=>0, :name=>:system_serving_status}, {:type=>"ApprovalStatus", :max_occurs=>1, :min_occurs=>0, :name=>:approval_status}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:destination_url}, {:type=>"AdGroupCriterionBids", :max_occurs=>1, :min_occurs=>0, :name=>:bids}, {:type=>"BiddableAdGroupCriterionExperimentData", :max_occurs=>1, :min_occurs=>0, :name=>:experiment_data}, {:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:first_page_cpc}, {:type=>"QualityInfo", :max_occurs=>1, :min_occurs=>0, :name=>:quality_info}, {:type=>"Stats", :max_occurs=>1, :min_occurs=>0, :name=>:stats}], :base=>"AdGroupCriterion"}, :AdGroupOperation=>{:fields=>[{:type=>"AdGroup", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :DoubleValue=>{:fields=>[{:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:number}], :base=>"NumberValue"}, :RealTimeBiddingSetting=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:opt_in}], :base=>"Setting"}, :QualityInfo=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_keyword_ad_relevance_acceptable}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_landing_page_quality_acceptable}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_landing_page_latency_acceptable}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:quality_score}]}, :ManualCPM=>{:fields=>[], :base=>"BiddingStrategy"}, :Dimensions=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:width}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:height}]}, :ComparableValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:comparable_value_type}], :abstract=>true}, :OverrideInfo=>{:fields=>[]}, :LocationExtension=>{:fields=>[{:type=>"Address", :max_occurs=>1, :min_occurs=>0, :name=>:address}, {:type=>"GeoPoint", :max_occurs=>1, :min_occurs=>0, :name=>:geo_point}, {:type=>"base64Binary", :max_occurs=>1, :min_occurs=>0, :name=>:encoded_location}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:company_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:phone_number}, {:type=>"LocationExtension.Source", :max_occurs=>1, :min_occurs=>0, :name=>:source}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:icon_media_id}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:image_media_id}], :base=>"AdExtension"}, :AdExtensionOverrideOperation=>{:fields=>[{:type=>"AdExtensionOverride", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :Ad=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:url}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:display_url}, {:type=>"Ad.ApprovalStatus", :max_occurs=>1, :min_occurs=>0, :name=>:approval_status}, {:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:disapproval_reasons}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:trademark_disapproved}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_type}]}, :Vertical=>{:fields=>[{:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:path}], :base=>"Criterion"}, :Media_Size_StringMapEntry=>{:fields=>[{:type=>"Media.Size", :max_occurs=>1, :min_occurs=>0, :name=>:key}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:value}]}, :AdExtension=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_extension_type}]}, :BudgetOptimizer=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:enhanced_cpc_enabled}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:bid_ceiling}], :base=>"BiddingStrategy"}, :TargetList=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:target_list_type}], :abstract=>true}, :NumberValue=>{:fields=>[], :abstract=>true, :base=>"ComparableValue"}, :BatchFailureResult=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:operation_index_in_batch}], :base=>"OperationResult"}, :TempAdUnionId=>{:fields=>[], :base=>"AdUnionId"}, :BudgetOptimizerAdGroupBids=>{:fields=>[{:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:proxy_keyword_max_cpc}, {:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:proxy_site_max_cpc}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:enhanced_cpc_enabled}], :base=>"AdGroupBids"}, :JobEvent=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:date_time}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:job_event_type}]}, :Campaign=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"CampaignStatus", :max_occurs=>1, :min_occurs=>0, :name=>:status}, {:type=>"ServingStatus", :max_occurs=>1, :min_occurs=>0, :name=>:serving_status}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:start_date}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:end_date}, {:type=>"Budget", :max_occurs=>1, :min_occurs=>0, :name=>:budget}, {:type=>"BiddingStrategy", :max_occurs=>1, :min_occurs=>0, :name=>:bidding_strategy}, {:type=>"ConversionOptimizerEligibility", :max_occurs=>1, :min_occurs=>0, :name=>:conversion_optimizer_eligibility}, {:type=>"CampaignStats", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_stats}, {:type=>"AdServingOptimizationStatus", :max_occurs=>1, :min_occurs=>0, :name=>:ad_serving_optimization_status}, {:type=>"FrequencyCap", :max_occurs=>1, :min_occurs=>0, :name=>:frequency_cap}, {:type=>"Setting", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:settings}, {:type=>"NetworkSetting", :max_occurs=>1, :min_occurs=>0, :name=>:network_setting}]}, :Carrier=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}], :base=>"Criterion"}, :BidMultiplier=>{:fields=>[{:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:multiplier}, {:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:multiplied_bid}]}, :ProductConditionOperand=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:operand}]}, :"PolicyViolationError.Part"=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:index}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:length}]}, :BulkMutateJobEvent=>{:fields=>[{:type=>"BasicJobStatus", :max_occurs=>1, :min_occurs=>0, :name=>:status}], :base=>"JobEvent"}, :Video=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:duration_millis}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:streaming_url}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:ready_to_play_on_the_web}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:industry_standard_commercial_identifier}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:advertising_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:you_tube_video_id_string}], :base=>"Media"}, :Operation=>{:fields=>[{:type=>"Operator", :max_occurs=>1, :min_occurs=>0, :name=>:operator}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:operation_type}], :abstract=>true}, :Location=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:location_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:display_type}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_obsolete}, {:type=>"Location", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:parent_locations}], :base=>"Criterion"}, :ManualCPMAdGroupCriterionBids=>{:fields=>[{:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:max_cpm}, {:type=>"BidSource", :max_occurs=>1, :min_occurs=>0, :name=>:bid_source}], :base=>"AdGroupCriterionBids"}, :ManualCPCAdGroupExperimentBidMultipliers=>{:fields=>[{:type=>"BidMultiplier", :max_occurs=>1, :min_occurs=>0, :name=>:max_cpc_multiplier}, {:type=>"BidMultiplier", :max_occurs=>1, :min_occurs=>0, :name=>:max_content_cpc_multiplier}], :base=>"AdGroupExperimentBidMultipliers"}, :JobStats=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:progress_percent}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:pending_time_millis}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:processing_time_millis}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:job_stats_type}]}, :SoapHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:auth_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:client_customer_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:developer_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_agent}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:validate_only}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:partial_failure}]}, :BulkMutateJobStats=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:num_operations}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:num_failed_operations}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:num_unprocessed_operations}], :base=>"JobStats"}, :EntityAccessDenied=>{:fields=>[{:type=>"EntityAccessDenied.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}], :base=>"ApiError"}, :Proximity=>{:fields=>[{:type=>"GeoPoint", :max_occurs=>1, :min_occurs=>0, :name=>:geo_point}, {:type=>"Proximity.DistanceUnits", :max_occurs=>1, :min_occurs=>0, :name=>:radius_distance_units}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:radius_in_units}, {:type=>"Address", :max_occurs=>1, :min_occurs=>0, :name=>:address}], :base=>"Criterion"}, :Media=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:media_id}, {:type=>"Media.MediaType", :max_occurs=>1, :min_occurs=>0, :name=>:type}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:reference_id}, {:type=>"Media_Size_DimensionsMapEntry", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:dimensions}, {:type=>"Media_Size_StringMapEntry", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:urls}, {:type=>"Media.MimeType", :max_occurs=>1, :min_occurs=>0, :name=>:mime_type}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:source_url}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:file_size}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:creation_time}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:media_type}]}, :AdGroupBids=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_group_bids_type}], :abstract=>true}, :LostResult=>{:fields=>[], :base=>"OperationResult"}, :AdGroupCriterionExperimentBidMultiplier=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_group_criterion_experiment_bid_multiplier_type}], :abstract=>true}, :ConversionOptimizer=>{:fields=>[{:type=>"PricingModel", :max_occurs=>1, :min_occurs=>0, :name=>:pricing_model}, {:type=>"ConversionOptimizerBidType", :max_occurs=>1, :min_occurs=>0, :name=>:conversion_optimizer_bid_type}, {:type=>"ConversionDeduplicationMode", :max_occurs=>1, :min_occurs=>0, :name=>:deduplication_mode}], :base=>"BiddingStrategy"}, :NegativeAdGroupCriterion=>{:fields=>[], :base=>"AdGroupCriterion"}, :AdGroupAdCountLimitExceeded=>{:fields=>[], :base=>"EntityCountLimitExceeded"}, :Money=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:micro_amount}], :base=>"ComparableValue"}, :CampaignCriterion=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_id}, {:type=>"Criterion", :max_occurs=>1, :min_occurs=>0, :name=>:criterion}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_criterion_type}]}, :ManualCPCAdGroupCriterionBids=>{:fields=>[{:type=>"Bid", :max_occurs=>1, :min_occurs=>0, :name=>:max_cpc}, {:type=>"BidSource", :max_occurs=>1, :min_occurs=>0, :name=>:bid_source}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:enhanced_cpc_enabled}], :base=>"AdGroupCriterionBids"}, :ImageAd=>{:fields=>[{:type=>"Image", :max_occurs=>1, :min_occurs=>0, :name=>:image}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:ad_to_copy_image_from}], :base=>"Ad"}}
14
+ BULKMUTATEJOBSERVICE_NAMESPACES = []
15
+
16
+ def self.get_method_signature(method_name)
17
+ return BULKMUTATEJOBSERVICE_METHODS[method_name.to_sym]
18
+ end
19
+
20
+ def self.get_type_signature(type_name)
21
+ return BULKMUTATEJOBSERVICE_TYPES[type_name.to_sym]
22
+ end
23
+
24
+ def self.get_namespace(index)
25
+ return BULKMUTATEJOBSERVICE_NAMESPACES[index]
26
+ end
27
+ end
28
+
29
+ # Base class for exceptions.
30
+ class ApplicationException < AdwordsApi::Errors::ApiException
31
+ attr_reader :message # string
32
+ attr_reader :application_exception_type # string
33
+ end
34
+
35
+ # Exception class for holding a list of service errors.
36
+ class ApiException < ApplicationException
37
+ attr_reader :errors # ApiError
38
+ def initialize(exception_fault)
39
+ @array_fields ||= []
40
+ @array_fields << 'errors'
41
+ super(exception_fault)
42
+ end
43
+ end
44
+ end; end; end
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:37:25.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'adwords_api/v201109/bulk_opportunity_service_registry'
10
+
11
+ module AdwordsApi; module V201109; module BulkOpportunityService
12
+ class BulkOpportunityService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://adwords.google.com/api/adwords/o/v201109'
15
+ super(api, endpoint, namespace, :v201109)
16
+ end
17
+
18
+ def get(*args, &block)
19
+ return execute_action('get', args, &block)
20
+ end
21
+
22
+ private
23
+
24
+ def get_service_registry()
25
+ return BulkOpportunityServiceRegistry
26
+ end
27
+
28
+ def get_module()
29
+ return AdwordsApi::V201109::BulkOpportunityService
30
+ end
31
+ end
32
+ end; end; end
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:37:25.
7
+
8
+ require 'adwords_api/errors'
9
+
10
+ module AdwordsApi; module V201109; module BulkOpportunityService
11
+ class BulkOpportunityServiceRegistry
12
+ BULKOPPORTUNITYSERVICE_METHODS = {:get=>{:input=>[{:type=>"BulkOpportunitySelector", :max_occurs=>1, :min_occurs=>0, :name=>:selector}], :output=>{:fields=>[{:type=>"BulkOpportunityPage", :max_occurs=>1, :min_occurs=>0, :name=>:rval}], :name=>"get_response"}}}
13
+ BULKOPPORTUNITYSERVICE_TYPES = {:StringAttribute=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :Opportunity=>{:fields=>[{:type=>"OpportunityIdea", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:opportunity_ideas}]}, :MoneyAttribute=>{:fields=>[{:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :BooleanAttribute=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :AgeRange=>{:fields=>[{:type=>"AgeRange.AgeRangeType", :max_occurs=>1, :min_occurs=>0, :name=>:age_range_type}], :ns=>0, :base=>"Criterion"}, :WebpageDescriptorAttribute=>{:fields=>[{:type=>"WebpageDescriptor", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :AdFormatSpec=>{:fields=>[{:type=>"SiteConstants.AdFormat", :max_occurs=>1, :min_occurs=>0, :name=>:format}]}, :DataEntry=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:data_entry_type}], :ns=>0, :abstract=>true}, :ProductCondition=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:argument}, {:type=>"ProductConditionOperand", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :ns=>0}, :Polygon=>{:fields=>[{:type=>"GeoPoint", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:vertices}], :ns=>0, :base=>"Criterion"}, :OpportunityAttribute_AttributeMapEntry=>{:fields=>[{:type=>"OpportunityAttributeType", :max_occurs=>1, :min_occurs=>0, :name=>:key}, {:type=>"Attribute", :max_occurs=>1, :min_occurs=>0, :name=>:value}]}, :MonthlySearchVolume=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:year}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:month}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:count}]}, :IntegerAttribute=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :Keyword=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:text}, {:type=>"KeywordMatchType", :max_occurs=>1, :min_occurs=>0, :name=>:match_type}], :ns=>0, :base=>"Criterion"}, :DoubleValue=>{:fields=>[{:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:number}], :ns=>0, :base=>"NumberValue"}, :Carrier=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}], :ns=>0, :base=>"Criterion"}, :AdGroupBidLandscape=>{:fields=>[{:type=>"AdGroupBidLandscape.Type", :max_occurs=>1, :min_occurs=>0, :name=>:type}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:landscape_current}], :ns=>0, :base=>"BidLandscape"}, :LongAttribute=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :BidLandscapeAttribute=>{:fields=>[{:type=>"BidLandscape", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :Attribute=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:attribute_type}], :abstract=>true}, :AdFormatSpecListAttribute=>{:fields=>[{:type=>"AdFormatSpec", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :Proximity=>{:fields=>[{:type=>"GeoPoint", :max_occurs=>1, :min_occurs=>0, :name=>:geo_point}, {:type=>"Proximity.DistanceUnits", :max_occurs=>1, :min_occurs=>0, :name=>:radius_distance_units}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:radius_in_units}, {:type=>"Address", :max_occurs=>1, :min_occurs=>0, :name=>:address}], :ns=>0, :base=>"Criterion"}, :Product=>{:fields=>[{:type=>"ProductCondition", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:conditions}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:text}], :ns=>0, :base=>"Criterion"}, :NumberValue=>{:fields=>[], :ns=>0, :abstract=>true, :base=>"ComparableValue"}, :OpportunityIdea=>{:fields=>[{:type=>"OpportunityAttribute_AttributeMapEntry", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:data}]}, :MonthlySearchVolumeAttribute=>{:fields=>[{:type=>"MonthlySearchVolume", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :IntegerSetAttribute=>{:fields=>[{:type=>"int", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :SoapHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:auth_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:client_customer_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:developer_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_agent}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:validate_only}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:partial_failure}], :ns=>0}, :Gender=>{:fields=>[{:type=>"Gender.GenderType", :max_occurs=>1, :min_occurs=>0, :name=>:gender_type}], :ns=>0, :base=>"Criterion"}, :IdeaTypeAttribute=>{:fields=>[{:type=>"IdeaType", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :BulkOpportunityPage=>{:fields=>[{:type=>"Opportunity", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:entries}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:total_num_entries}]}, :CriterionUserInterest=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:user_interest_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_interest_name}], :ns=>0, :base=>"Criterion"}, :BidLandscape=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_id}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:ad_group_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:start_date}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:end_date}, {:type=>"BidLandscape.LandscapePoint", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:landscape_points}], :ns=>0, :abstract=>true, :base=>"DataEntry"}, :Address=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:street_address}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:street_address2}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:city_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:province_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:province_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:postal_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}], :ns=>0}, :Range=>{:fields=>[{:type=>"ComparableValue", :max_occurs=>1, :min_occurs=>0, :name=>:min}, {:type=>"ComparableValue", :max_occurs=>1, :min_occurs=>0, :name=>:max}]}, :PlacementAttribute=>{:fields=>[{:type=>"Placement", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :OpportunityIdeaTypeAttribute=>{:fields=>[{:type=>"OpportunityIdeaType", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :KeywordAttribute=>{:fields=>[{:type=>"Keyword", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :DoubleAttribute=>{:fields=>[{:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:request_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:service_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:method_name}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:operations}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:response_time}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:units}], :ns=>0}, :Language=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}], :ns=>0, :base=>"Criterion"}, :GeoPoint=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:latitude_in_micro_degrees}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:longitude_in_micro_degrees}], :ns=>0}, :LongRangeAttribute=>{:fields=>[{:type=>"Range", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :InStreamAdInfo=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:max_ad_duration}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:min_ad_duration}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:median_ad_duration}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:pre_roll_percent}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:mid_roll_percent}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:post_roll_percent}]}, :BulkOpportunitySelector=>{:fields=>[{:type=>"OpportunityIdeaType", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:idea_types}, {:type=>"OpportunityAttributeType", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:requested_attribute_types}, {:type=>"Paging", :max_occurs=>1, :min_occurs=>0, :name=>:paging}]}, :CriterionUserList=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_name}, {:type=>"CriterionUserList.MembershipStatus", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_membership_status}], :ns=>0, :base=>"Criterion"}, :Paging=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:start_index}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:number_results}], :ns=>0}, :PlacementTypeAttribute=>{:fields=>[{:type=>"SiteConstants.PlacementType", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :Platform=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:platform_name}], :ns=>0, :base=>"Criterion"}, :Placement=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:url}], :ns=>0, :base=>"Criterion"}, :Location=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:location_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:display_type}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_obsolete}, {:type=>"Location", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:parent_locations}], :ns=>0, :base=>"Criterion"}, :CriterionBidLandscape=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:criterion_id}], :ns=>0, :base=>"BidLandscape"}, :InStreamAdInfoAttribute=>{:fields=>[{:type=>"InStreamAdInfo", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :CriterionAttribute=>{:fields=>[{:type=>"Criterion", :max_occurs=>1, :min_occurs=>0, :name=>:value}], :base=>"Attribute"}, :Vertical=>{:fields=>[{:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:path}], :ns=>0, :base=>"Criterion"}, :ProductConditionOperand=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :ns=>0}, :Criterion=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"Criterion.Type", :max_occurs=>1, :min_occurs=>0, :name=>:type}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:criterion_type}], :ns=>0}, :ComparableValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:comparable_value_type}], :ns=>0, :abstract=>true}, :"BidLandscape.LandscapePoint"=>{:fields=>[{:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:bid}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:clicks}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:cost}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:marginal_cpc}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:impressions}], :ns=>0}, :WebpageDescriptor=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:url}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:title}]}, :OperatingSystemVersion=>{:fields=>[], :ns=>0, :base=>"Criterion"}, :Money=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:micro_amount}], :ns=>0, :base=>"ComparableValue"}, :LongValue=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:number}], :ns=>0, :base=>"NumberValue"}}
14
+ BULKOPPORTUNITYSERVICE_NAMESPACES = ["https://adwords.google.com/api/adwords/cm/v201109"]
15
+
16
+ def self.get_method_signature(method_name)
17
+ return BULKOPPORTUNITYSERVICE_METHODS[method_name.to_sym]
18
+ end
19
+
20
+ def self.get_type_signature(type_name)
21
+ return BULKOPPORTUNITYSERVICE_TYPES[type_name.to_sym]
22
+ end
23
+
24
+ def self.get_namespace(index)
25
+ return BULKOPPORTUNITYSERVICE_NAMESPACES[index]
26
+ end
27
+ end
28
+
29
+ # Base class for exceptions.
30
+ class ApplicationException < AdwordsApi::Errors::ApiException
31
+ attr_reader :message # string
32
+ attr_reader :application_exception_type # string
33
+ end
34
+
35
+ # Exception class for holding a list of service errors.
36
+ class ApiException < ApplicationException
37
+ attr_reader :errors # ApiError
38
+ def initialize(exception_fault)
39
+ @array_fields ||= []
40
+ @array_fields << 'errors'
41
+ super(exception_fault)
42
+ end
43
+ end
44
+ end; end; end
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:37:20.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'adwords_api/v201109/campaign_ad_extension_service_registry'
10
+
11
+ module AdwordsApi; module V201109; module CampaignAdExtensionService
12
+ class CampaignAdExtensionService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://adwords.google.com/api/adwords/cm/v201109'
15
+ super(api, endpoint, namespace, :v201109)
16
+ end
17
+
18
+ def get(*args, &block)
19
+ return execute_action('get', args, &block)
20
+ end
21
+
22
+ def mutate(*args, &block)
23
+ return execute_action('mutate', args, &block)
24
+ end
25
+
26
+ private
27
+
28
+ def get_service_registry()
29
+ return CampaignAdExtensionServiceRegistry
30
+ end
31
+
32
+ def get_module()
33
+ return AdwordsApi::V201109::CampaignAdExtensionService
34
+ end
35
+ end
36
+ end; end; end
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:37:20.
7
+
8
+ require 'adwords_api/errors'
9
+
10
+ module AdwordsApi; module V201109; module CampaignAdExtensionService
11
+ class CampaignAdExtensionServiceRegistry
12
+ CAMPAIGNADEXTENSIONSERVICE_METHODS = {:get=>{:input=>[{:type=>"Selector", :max_occurs=>1, :min_occurs=>0, :name=>:service_selector}], :output=>{:fields=>[{:type=>"CampaignAdExtensionPage", :max_occurs=>1, :min_occurs=>0, :name=>:rval}], :name=>"get_response"}}, :mutate=>{:input=>[{:type=>"CampaignAdExtensionOperation", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:operations}], :output=>{:fields=>[{:type=>"CampaignAdExtensionReturnValue", :max_occurs=>1, :min_occurs=>0, :name=>:rval}], :name=>"mutate_response"}}}
13
+ CAMPAIGNADEXTENSIONSERVICE_TYPES = {:LocationSyncExtension=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:email}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:auth_token}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:icon_media_id}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:should_sync_url}], :base=>"AdExtension"}, :Selector=>{:fields=>[{:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:fields}, {:type=>"Predicate", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:predicates}, {:type=>"DateRange", :max_occurs=>1, :min_occurs=>0, :name=>:date_range}, {:type=>"OrderBy", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:ordering}, {:type=>"Paging", :max_occurs=>1, :min_occurs=>0, :name=>:paging}]}, :Sitelink=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:display_text}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:destination_url}]}, :DateRange=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:min}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:max}]}, :CampaignAdExtensionReturnValue=>{:fields=>[{:type=>"CampaignAdExtension", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:value}], :base=>"ListReturnValue"}, :ProductCondition=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:argument}, {:type=>"ProductConditionOperand", :max_occurs=>1, :min_occurs=>0, :name=>:operand}]}, :MobileExtension=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:phone_number}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_call_only}], :base=>"AdExtension"}, :Stats=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:start_date}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:end_date}, {:type=>"Stats.Network", :max_occurs=>1, :min_occurs=>0, :name=>:network}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:clicks}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:impressions}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:cost}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:average_position}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:average_cpc}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:average_cpm}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:ctr}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:conversions}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:conversion_rate}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:cost_per_conversion}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:conversions_many_per_click}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:conversion_rate_many_per_click}, {:type=>"Money", :max_occurs=>1, :min_occurs=>0, :name=>:cost_per_conversion_many_per_click}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:view_through_conversions}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:total_conv_value}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:value_per_conv}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:value_per_conv_many_per_click}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:invalid_clicks}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:invalid_click_rate}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:num_calls}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:num_missed_calls}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:num_received_calls}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:call_duration_secs}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:avg_call_duration_secs}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:stats_type}]}, :SitelinksExtension=>{:fields=>[{:type=>"Sitelink", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:sitelinks}], :base=>"AdExtension"}, :DoubleValue=>{:fields=>[{:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:number}], :base=>"NumberValue"}, :ListReturnValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:list_return_value_type}], :abstract=>true}, :ProductConditionAndGroup=>{:fields=>[{:type=>"ProductCondition", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:conditions}]}, :NumberValue=>{:fields=>[], :abstract=>true, :base=>"ComparableValue"}, :AdExtension=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:ad_extension_type}]}, :SoapHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:auth_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:client_customer_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:developer_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_agent}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:validate_only}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:partial_failure}]}, :OrderBy=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:field}, {:type=>"SortOrder", :max_occurs=>1, :min_occurs=>0, :name=>:sort_order}]}, :EntityNotFound=>{:fields=>[{:type=>"EntityNotFound.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}], :base=>"ApiError"}, :Operation=>{:fields=>[{:type=>"Operator", :max_occurs=>1, :min_occurs=>0, :name=>:operator}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:operation_type}], :abstract=>true}, :ProductExtension=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:google_base_customer_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:advertiser_name}, {:type=>"ProductConditionAndGroup", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:product_selection}], :base=>"AdExtension"}, :OperationAccessDenied=>{:fields=>[{:type=>"OperationAccessDenied.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}], :base=>"ApiError"}, :Address=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:street_address}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:street_address2}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:city_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:province_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:province_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:postal_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}]}, :CampaignAdExtension=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_id}, {:type=>"AdExtension", :max_occurs=>1, :min_occurs=>0, :name=>:ad_extension}, {:type=>"CampaignAdExtension.Status", :max_occurs=>1, :min_occurs=>0, :name=>:status}, {:type=>"CampaignAdExtension.ApprovalStatus", :max_occurs=>1, :min_occurs=>0, :name=>:approval_status}, {:type=>"CampaignAdExtensionStats", :max_occurs=>1, :min_occurs=>0, :name=>:stats}]}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:request_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:service_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:method_name}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:operations}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:response_time}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:units}]}, :GeoPoint=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:latitude_in_micro_degrees}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:longitude_in_micro_degrees}]}, :Page=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:total_num_entries}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:page_type}], :abstract=>true}, :Paging=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:start_index}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:number_results}]}, :CampaignAdExtensionStats=>{:fields=>[], :base=>"Stats"}, :CampaignAdExtensionOperation=>{:fields=>[{:type=>"CampaignAdExtension", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :LocationExtension=>{:fields=>[{:type=>"Address", :max_occurs=>1, :min_occurs=>0, :name=>:address}, {:type=>"GeoPoint", :max_occurs=>1, :min_occurs=>0, :name=>:geo_point}, {:type=>"base64Binary", :max_occurs=>1, :min_occurs=>0, :name=>:encoded_location}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:company_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:phone_number}, {:type=>"LocationExtension.Source", :max_occurs=>1, :min_occurs=>0, :name=>:source}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:icon_media_id}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:image_media_id}], :base=>"AdExtension"}, :ComparableValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:comparable_value_type}], :abstract=>true}, :ProductConditionOperand=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:operand}]}, :Predicate=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:field}, {:type=>"Predicate.Operator", :max_occurs=>1, :min_occurs=>0, :name=>:operator}, {:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:values}]}, :CampaignAdExtensionPage=>{:fields=>[{:type=>"CampaignAdExtension", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:entries}], :base=>"Page"}, :Money=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:micro_amount}], :base=>"ComparableValue"}, :LongValue=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:number}], :base=>"NumberValue"}}
14
+ CAMPAIGNADEXTENSIONSERVICE_NAMESPACES = []
15
+
16
+ def self.get_method_signature(method_name)
17
+ return CAMPAIGNADEXTENSIONSERVICE_METHODS[method_name.to_sym]
18
+ end
19
+
20
+ def self.get_type_signature(type_name)
21
+ return CAMPAIGNADEXTENSIONSERVICE_TYPES[type_name.to_sym]
22
+ end
23
+
24
+ def self.get_namespace(index)
25
+ return CAMPAIGNADEXTENSIONSERVICE_NAMESPACES[index]
26
+ end
27
+ end
28
+
29
+ # Base class for exceptions.
30
+ class ApplicationException < AdwordsApi::Errors::ApiException
31
+ attr_reader :message # string
32
+ attr_reader :application_exception_type # string
33
+ end
34
+
35
+ # Exception class for holding a list of service errors.
36
+ class ApiException < ApplicationException
37
+ attr_reader :errors # ApiError
38
+ def initialize(exception_fault)
39
+ @array_fields ||= []
40
+ @array_fields << 'errors'
41
+ super(exception_fault)
42
+ end
43
+ end
44
+ end; end; end
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:38:33.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'adwords_api/v201109/campaign_criterion_service_registry'
10
+
11
+ module AdwordsApi; module V201109; module CampaignCriterionService
12
+ class CampaignCriterionService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://adwords.google.com/api/adwords/cm/v201109'
15
+ super(api, endpoint, namespace, :v201109)
16
+ end
17
+
18
+ def get(*args, &block)
19
+ return execute_action('get', args, &block)
20
+ end
21
+
22
+ def mutate(*args, &block)
23
+ return execute_action('mutate', args, &block)
24
+ end
25
+
26
+ private
27
+
28
+ def get_service_registry()
29
+ return CampaignCriterionServiceRegistry
30
+ end
31
+
32
+ def get_module()
33
+ return AdwordsApi::V201109::CampaignCriterionService
34
+ end
35
+ end
36
+ end; end; end
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:38:33.
7
+
8
+ require 'adwords_api/errors'
9
+
10
+ module AdwordsApi; module V201109; module CampaignCriterionService
11
+ class CampaignCriterionServiceRegistry
12
+ CAMPAIGNCRITERIONSERVICE_METHODS = {:get=>{:input=>[{:type=>"Selector", :max_occurs=>1, :min_occurs=>0, :name=>:service_selector}], :output=>{:fields=>[{:type=>"CampaignCriterionPage", :max_occurs=>1, :min_occurs=>0, :name=>:rval}], :name=>"get_response"}}, :mutate=>{:input=>[{:type=>"CampaignCriterionOperation", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:operations}], :output=>{:fields=>[{:type=>"CampaignCriterionReturnValue", :max_occurs=>1, :min_occurs=>0, :name=>:rval}], :name=>"mutate_response"}}}
13
+ CAMPAIGNCRITERIONSERVICE_TYPES = {:Selector=>{:fields=>[{:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:fields}, {:type=>"Predicate", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:predicates}, {:type=>"DateRange", :max_occurs=>1, :min_occurs=>0, :name=>:date_range}, {:type=>"OrderBy", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:ordering}, {:type=>"Paging", :max_occurs=>1, :min_occurs=>0, :name=>:paging}]}, :EntityCountLimitExceeded=>{:fields=>[{:type=>"EntityCountLimitExceeded.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:enclosing_id}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:limit}], :base=>"ApiError"}, :DateRange=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:min}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:max}]}, :AgeRange=>{:fields=>[{:type=>"AgeRange.AgeRangeType", :max_occurs=>1, :min_occurs=>0, :name=>:age_range_type}], :base=>"Criterion"}, :ProductCondition=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:argument}, {:type=>"ProductConditionOperand", :max_occurs=>1, :min_occurs=>0, :name=>:operand}]}, :Polygon=>{:fields=>[{:type=>"GeoPoint", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:vertices}], :base=>"Criterion"}, :CampaignCriterion=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_id}, {:type=>"Criterion", :max_occurs=>1, :min_occurs=>0, :name=>:criterion}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:campaign_criterion_type}]}, :Keyword=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:text}, {:type=>"KeywordMatchType", :max_occurs=>1, :min_occurs=>0, :name=>:match_type}], :base=>"Criterion"}, :Carrier=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}], :base=>"Criterion"}, :Proximity=>{:fields=>[{:type=>"GeoPoint", :max_occurs=>1, :min_occurs=>0, :name=>:geo_point}, {:type=>"Proximity.DistanceUnits", :max_occurs=>1, :min_occurs=>0, :name=>:radius_distance_units}, {:type=>"double", :max_occurs=>1, :min_occurs=>0, :name=>:radius_in_units}, {:type=>"Address", :max_occurs=>1, :min_occurs=>0, :name=>:address}], :base=>"Criterion"}, :Product=>{:fields=>[{:type=>"ProductCondition", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:conditions}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:text}], :base=>"Criterion"}, :ListReturnValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:list_return_value_type}], :abstract=>true}, :CampaignCriterionLimitExceeded=>{:fields=>[{:type=>"CampaignCriterionLimitExceeded.CriteriaLimitType", :max_occurs=>1, :min_occurs=>0, :name=>:limit_type}], :base=>"EntityCountLimitExceeded"}, :SoapHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:auth_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:client_customer_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:developer_token}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_agent}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:validate_only}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:partial_failure}]}, :OrderBy=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:field}, {:type=>"SortOrder", :max_occurs=>1, :min_occurs=>0, :name=>:sort_order}]}, :Gender=>{:fields=>[{:type=>"Gender.GenderType", :max_occurs=>1, :min_occurs=>0, :name=>:gender_type}], :base=>"Criterion"}, :EntityNotFound=>{:fields=>[{:type=>"EntityNotFound.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}], :base=>"ApiError"}, :CriterionUserInterest=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:user_interest_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_interest_name}], :base=>"Criterion"}, :OperationAccessDenied=>{:fields=>[{:type=>"OperationAccessDenied.Reason", :max_occurs=>1, :min_occurs=>0, :name=>:reason}], :base=>"ApiError"}, :Operation=>{:fields=>[{:type=>"Operator", :max_occurs=>1, :min_occurs=>0, :name=>:operator}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:operation_type}], :abstract=>true}, :CampaignCriterionOperation=>{:fields=>[{:type=>"CampaignCriterion", :max_occurs=>1, :min_occurs=>0, :name=>:operand}], :base=>"Operation"}, :Address=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:street_address}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:street_address2}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:city_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:province_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:province_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:postal_code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:country_code}]}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:request_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:service_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:method_name}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:operations}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:response_time}, {:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:units}]}, :NegativeCampaignCriterion=>{:fields=>[], :base=>"CampaignCriterion"}, :Language=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:code}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:name}], :base=>"Criterion"}, :GeoPoint=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:latitude_in_micro_degrees}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:longitude_in_micro_degrees}]}, :CampaignCriterionPage=>{:fields=>[{:type=>"CampaignCriterion", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:entries}], :base=>"Page"}, :CriterionUserList=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_id}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_name}, {:type=>"CriterionUserList.MembershipStatus", :max_occurs=>1, :min_occurs=>0, :name=>:user_list_membership_status}], :base=>"Criterion"}, :Paging=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:start_index}, {:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:number_results}]}, :Page=>{:fields=>[{:type=>"int", :max_occurs=>1, :min_occurs=>0, :name=>:total_num_entries}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:page_type}], :abstract=>true}, :Platform=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:platform_name}], :base=>"Criterion"}, :Placement=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:url}], :base=>"Criterion"}, :Location=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:location_name}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:display_type}, {:type=>"boolean", :max_occurs=>1, :min_occurs=>0, :name=>:is_obsolete}, {:type=>"Location", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:parent_locations}], :base=>"Criterion"}, :CampaignCriterionReturnValue=>{:fields=>[{:type=>"CampaignCriterion", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:value}], :base=>"ListReturnValue"}, :Vertical=>{:fields=>[{:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:path}], :base=>"Criterion"}, :ProductConditionOperand=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:operand}]}, :Predicate=>{:fields=>[{:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:field}, {:type=>"Predicate.Operator", :max_occurs=>1, :min_occurs=>0, :name=>:operator}, {:type=>"string", :max_occurs=>:unbounded, :min_occurs=>0, :name=>:values}]}, :Criterion=>{:fields=>[{:type=>"long", :max_occurs=>1, :min_occurs=>0, :name=>:id}, {:type=>"Criterion.Type", :max_occurs=>1, :min_occurs=>0, :name=>:type}, {:type=>"string", :max_occurs=>1, :min_occurs=>0, :name=>:criterion_type}]}, :ContentLabel=>{:fields=>[{:type=>"ContentLabelType", :max_occurs=>1, :min_occurs=>0, :name=>:content_label_type}], :base=>"Criterion"}, :OperatingSystemVersion=>{:fields=>[], :base=>"Criterion"}}
14
+ CAMPAIGNCRITERIONSERVICE_NAMESPACES = []
15
+
16
+ def self.get_method_signature(method_name)
17
+ return CAMPAIGNCRITERIONSERVICE_METHODS[method_name.to_sym]
18
+ end
19
+
20
+ def self.get_type_signature(type_name)
21
+ return CAMPAIGNCRITERIONSERVICE_TYPES[type_name.to_sym]
22
+ end
23
+
24
+ def self.get_namespace(index)
25
+ return CAMPAIGNCRITERIONSERVICE_NAMESPACES[index]
26
+ end
27
+ end
28
+
29
+ # Base class for exceptions.
30
+ class ApplicationException < AdwordsApi::Errors::ApiException
31
+ attr_reader :message # string
32
+ attr_reader :application_exception_type # string
33
+ end
34
+
35
+ # Exception class for holding a list of service errors.
36
+ class ApiException < ApplicationException
37
+ attr_reader :errors # ApiError
38
+ def initialize(exception_fault)
39
+ @array_fields ||= []
40
+ @array_fields << 'errors'
41
+ super(exception_fault)
42
+ end
43
+ end
44
+ end; end; end
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.2 on 2011-10-20 20:38:08.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'adwords_api/v201109/campaign_service_registry'
10
+
11
+ module AdwordsApi; module V201109; module CampaignService
12
+ class CampaignService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://adwords.google.com/api/adwords/cm/v201109'
15
+ super(api, endpoint, namespace, :v201109)
16
+ end
17
+
18
+ def get(*args, &block)
19
+ return execute_action('get', args, &block)
20
+ end
21
+
22
+ def mutate(*args, &block)
23
+ return execute_action('mutate', args, &block)
24
+ end
25
+
26
+ private
27
+
28
+ def get_service_registry()
29
+ return CampaignServiceRegistry
30
+ end
31
+
32
+ def get_module()
33
+ return AdwordsApi::V201109::CampaignService
34
+ end
35
+ end
36
+ end; end; end