google-dfp-api 0.3.2 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. data/ChangeLog +3 -0
  2. data/README +2 -2
  3. data/examples/v201206/audience_segment_service/get_all_audience_segments.rb +93 -0
  4. data/examples/v201206/common/error_handling.rb +76 -0
  5. data/examples/v201206/common/oauth2_handling.rb +128 -0
  6. data/examples/v201206/common/oauth_handling.rb +131 -0
  7. data/examples/v201206/company_service/create_companies.rb +81 -0
  8. data/examples/v201206/company_service/get_all_companies.rb +92 -0
  9. data/examples/v201206/company_service/get_companies_by_statement.rb +88 -0
  10. data/examples/v201206/company_service/get_company.rb +72 -0
  11. data/examples/v201206/company_service/update_companies.rb +95 -0
  12. data/examples/v201206/content_service/get_all_content.rb +94 -0
  13. data/examples/v201206/content_service/get_content_by_category.rb +136 -0
  14. data/examples/v201206/creative_service/copy_image_creatives.rb +115 -0
  15. data/examples/v201206/creative_service/create_creative_from_template.rb +139 -0
  16. data/examples/v201206/creative_service/create_creatives.rb +106 -0
  17. data/examples/v201206/creative_service/create_custom_creative.rb +104 -0
  18. data/examples/v201206/creative_service/get_all_creatives.rb +93 -0
  19. data/examples/v201206/creative_service/get_creative.rb +72 -0
  20. data/examples/v201206/creative_service/get_creatives_by_statement.rb +87 -0
  21. data/examples/v201206/creative_service/update_creatives.rb +96 -0
  22. data/examples/v201206/creative_set_service/create_creative_set.rb +83 -0
  23. data/examples/v201206/creative_set_service/get_all_creative_sets.rb +94 -0
  24. data/examples/v201206/creative_set_service/get_creative_sets_by_statement.rb +90 -0
  25. data/examples/v201206/creative_set_service/update_creative_sets.rb +85 -0
  26. data/examples/v201206/creative_template_service/get_all_creative_templates.rb +94 -0
  27. data/examples/v201206/creative_template_service/get_creative_template.rb +74 -0
  28. data/examples/v201206/creative_template_service/get_creative_templates_by_statement.rb +80 -0
  29. data/examples/v201206/custom_field_service/create_custom_field_options.rb +87 -0
  30. data/examples/v201206/custom_field_service/create_custom_fields.rb +86 -0
  31. data/examples/v201206/custom_field_service/deactivate_all_line_item_custom_fields.rb +112 -0
  32. data/examples/v201206/custom_field_service/get_all_custom_fields.rb +102 -0
  33. data/examples/v201206/custom_field_service/get_all_line_item_custom_fields.rb +86 -0
  34. data/examples/v201206/custom_field_service/set_line_item_custom_field_value.rb +135 -0
  35. data/examples/v201206/custom_field_service/update_custom_fields.rb +83 -0
  36. data/examples/v201206/custom_targeting_service/create_custom_targeting_keys_and_values.rb +140 -0
  37. data/examples/v201206/custom_targeting_service/delete_custom_targeting_keys.rb +121 -0
  38. data/examples/v201206/custom_targeting_service/delete_custom_targeting_values.rb +125 -0
  39. data/examples/v201206/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +148 -0
  40. data/examples/v201206/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +92 -0
  41. data/examples/v201206/custom_targeting_service/get_custom_targeting_values_by_statement.rb +98 -0
  42. data/examples/v201206/custom_targeting_service/update_custom_targeting_keys.rb +94 -0
  43. data/examples/v201206/custom_targeting_service/update_custom_targeting_values.rb +106 -0
  44. data/examples/v201206/forecast_service/get_forecast.rb +107 -0
  45. data/examples/v201206/forecast_service/get_forecast_by_id.rb +80 -0
  46. data/examples/v201206/inventory_service/create_ad_units.rb +101 -0
  47. data/examples/v201206/inventory_service/create_mobile_ad_unit.rb +100 -0
  48. data/examples/v201206/inventory_service/create_video_ad_unit.rb +108 -0
  49. data/examples/v201206/inventory_service/deactivate_ad_units.rb +119 -0
  50. data/examples/v201206/inventory_service/get_ad_unit.rb +72 -0
  51. data/examples/v201206/inventory_service/get_ad_unit_sizes.rb +85 -0
  52. data/examples/v201206/inventory_service/get_ad_units_by_statement.rb +96 -0
  53. data/examples/v201206/inventory_service/get_all_ad_units.rb +93 -0
  54. data/examples/v201206/inventory_service/update_ad_units.rb +94 -0
  55. data/examples/v201206/label_service/create_labels.rb +83 -0
  56. data/examples/v201206/label_service/deactivate_labels.rb +118 -0
  57. data/examples/v201206/label_service/get_all_labels.rb +95 -0
  58. data/examples/v201206/label_service/get_label.rb +76 -0
  59. data/examples/v201206/label_service/get_labels_by_statement.rb +81 -0
  60. data/examples/v201206/label_service/update_labels.rb +102 -0
  61. data/examples/v201206/line_item_creative_association_service/create_licas.rb +94 -0
  62. data/examples/v201206/line_item_creative_association_service/deactivate_licas.rb +127 -0
  63. data/examples/v201206/line_item_creative_association_service/get_all_licas.rb +95 -0
  64. data/examples/v201206/line_item_creative_association_service/get_lica.rb +77 -0
  65. data/examples/v201206/line_item_creative_association_service/get_licas_by_statement.rb +91 -0
  66. data/examples/v201206/line_item_creative_association_service/update_licas.rb +91 -0
  67. data/examples/v201206/line_item_service/activate_line_items.rb +131 -0
  68. data/examples/v201206/line_item_service/create_line_items.rb +177 -0
  69. data/examples/v201206/line_item_service/create_mobile_line_item.rb +135 -0
  70. data/examples/v201206/line_item_service/create_video_line_item.rb +156 -0
  71. data/examples/v201206/line_item_service/get_all_line_items.rb +94 -0
  72. data/examples/v201206/line_item_service/get_line_item.rb +74 -0
  73. data/examples/v201206/line_item_service/get_line_items_by_statement.rb +93 -0
  74. data/examples/v201206/line_item_service/get_recently_updated_line_items.rb +98 -0
  75. data/examples/v201206/line_item_service/target_custom_criteria.rb +129 -0
  76. data/examples/v201206/line_item_service/update_line_items.rb +109 -0
  77. data/examples/v201206/network_service/get_all_networks.rb +74 -0
  78. data/examples/v201206/network_service/get_current_network.rb +66 -0
  79. data/examples/v201206/network_service/make_test_network.rb +76 -0
  80. data/examples/v201206/order_service/approve_orders.rb +122 -0
  81. data/examples/v201206/order_service/create_orders.rb +92 -0
  82. data/examples/v201206/order_service/get_all_orders.rb +93 -0
  83. data/examples/v201206/order_service/get_order.rb +74 -0
  84. data/examples/v201206/order_service/get_orders_by_statement.rb +90 -0
  85. data/examples/v201206/order_service/update_orders.rb +95 -0
  86. data/examples/v201206/placement_service/create_placements.rb +131 -0
  87. data/examples/v201206/placement_service/deactivate_placements.rb +118 -0
  88. data/examples/v201206/placement_service/get_all_placements.rb +93 -0
  89. data/examples/v201206/placement_service/get_placement.rb +74 -0
  90. data/examples/v201206/placement_service/get_placements_by_statement.rb +86 -0
  91. data/examples/v201206/placement_service/update_placements.rb +97 -0
  92. data/examples/v201206/publisher_query_language_service/get_all_cities.rb +90 -0
  93. data/examples/v201206/report_service/download_report.rb +81 -0
  94. data/examples/v201206/report_service/run_delivery_report.rb +103 -0
  95. data/examples/v201206/report_service/run_inventory_report.rb +97 -0
  96. data/examples/v201206/report_service/run_merged_delivery_report.rb +94 -0
  97. data/examples/v201206/report_service/run_sales_report.rb +92 -0
  98. data/examples/v201206/suggested_ad_unit_service/approve_all_suggested_ad_units.rb +109 -0
  99. data/examples/v201206/suggested_ad_unit_service/get_all_suggested_ad_units.rb +96 -0
  100. data/examples/v201206/suggested_ad_unit_service/get_suggested_ad_unit.rb +75 -0
  101. data/examples/v201206/suggested_ad_unit_service/get_suggested_ad_units_by_statement.rb +92 -0
  102. data/examples/v201206/team_service/create_teams.rb +83 -0
  103. data/examples/v201206/team_service/get_all_teams.rb +92 -0
  104. data/examples/v201206/team_service/get_team.rb +74 -0
  105. data/examples/v201206/team_service/get_teams_by_statement.rb +78 -0
  106. data/examples/v201206/team_service/update_teams.rb +95 -0
  107. data/examples/v201206/third_party_slot_service/archive_third_party_slots.rb +125 -0
  108. data/examples/v201206/third_party_slot_service/create_third_party_slot.rb +91 -0
  109. data/examples/v201206/third_party_slot_service/get_all_third_party_slots.rb +93 -0
  110. data/examples/v201206/third_party_slot_service/get_third_party_slot_by_statement.rb +86 -0
  111. data/examples/v201206/third_party_slot_service/update_third_party_slots.rb +95 -0
  112. data/examples/v201206/user_service/create_users.rb +89 -0
  113. data/examples/v201206/user_service/deactivate_users.rb +97 -0
  114. data/examples/v201206/user_service/get_all_roles.rb +73 -0
  115. data/examples/v201206/user_service/get_all_users.rb +93 -0
  116. data/examples/v201206/user_service/get_current_user.rb +66 -0
  117. data/examples/v201206/user_service/get_user.rb +73 -0
  118. data/examples/v201206/user_service/get_users_by_statement.rb +79 -0
  119. data/examples/v201206/user_service/update_users.rb +89 -0
  120. data/examples/v201206/user_team_association_service/create_user_team_associations.rb +86 -0
  121. data/examples/v201206/user_team_association_service/delete_user_team_associations.rb +111 -0
  122. data/examples/v201206/user_team_association_service/get_all_user_team_associations.rb +94 -0
  123. data/examples/v201206/user_team_association_service/get_user_team_association.rb +76 -0
  124. data/examples/v201206/user_team_association_service/get_user_team_associations_by_statement.rb +94 -0
  125. data/examples/v201206/user_team_association_service/update_user_team_associations.rb +102 -0
  126. data/lib/dfp_api/api_config.rb +14 -4
  127. data/lib/dfp_api/v201108/company_service.rb +1 -1
  128. data/lib/dfp_api/v201108/company_service_registry.rb +1 -1
  129. data/lib/dfp_api/v201108/creative_service.rb +1 -1
  130. data/lib/dfp_api/v201108/creative_service_registry.rb +1 -1
  131. data/lib/dfp_api/v201108/custom_targeting_service.rb +1 -1
  132. data/lib/dfp_api/v201108/custom_targeting_service_registry.rb +1 -1
  133. data/lib/dfp_api/v201108/forecast_service.rb +1 -1
  134. data/lib/dfp_api/v201108/forecast_service_registry.rb +1 -1
  135. data/lib/dfp_api/v201108/inventory_service.rb +1 -1
  136. data/lib/dfp_api/v201108/inventory_service_registry.rb +1 -1
  137. data/lib/dfp_api/v201108/label_service.rb +1 -1
  138. data/lib/dfp_api/v201108/label_service_registry.rb +1 -1
  139. data/lib/dfp_api/v201108/line_item_creative_association_service.rb +1 -1
  140. data/lib/dfp_api/v201108/line_item_creative_association_service_registry.rb +1 -1
  141. data/lib/dfp_api/v201108/line_item_service.rb +1 -1
  142. data/lib/dfp_api/v201108/line_item_service_registry.rb +1 -1
  143. data/lib/dfp_api/v201108/network_service.rb +1 -1
  144. data/lib/dfp_api/v201108/network_service_registry.rb +1 -1
  145. data/lib/dfp_api/v201108/order_service.rb +1 -1
  146. data/lib/dfp_api/v201108/order_service_registry.rb +1 -1
  147. data/lib/dfp_api/v201108/placement_service.rb +1 -1
  148. data/lib/dfp_api/v201108/placement_service_registry.rb +1 -1
  149. data/lib/dfp_api/v201108/publisher_query_language_service.rb +1 -1
  150. data/lib/dfp_api/v201108/publisher_query_language_service_registry.rb +1 -1
  151. data/lib/dfp_api/v201108/report_service.rb +1 -1
  152. data/lib/dfp_api/v201108/report_service_registry.rb +1 -1
  153. data/lib/dfp_api/v201108/third_party_slot_service.rb +1 -1
  154. data/lib/dfp_api/v201108/third_party_slot_service_registry.rb +1 -1
  155. data/lib/dfp_api/v201108/user_service.rb +1 -1
  156. data/lib/dfp_api/v201108/user_service_registry.rb +1 -1
  157. data/lib/dfp_api/v201111/company_service.rb +1 -1
  158. data/lib/dfp_api/v201111/company_service_registry.rb +1 -1
  159. data/lib/dfp_api/v201111/content_service.rb +1 -1
  160. data/lib/dfp_api/v201111/content_service_registry.rb +1 -1
  161. data/lib/dfp_api/v201111/creative_service.rb +1 -1
  162. data/lib/dfp_api/v201111/creative_service_registry.rb +1 -1
  163. data/lib/dfp_api/v201111/creative_template_service.rb +1 -1
  164. data/lib/dfp_api/v201111/creative_template_service_registry.rb +1 -1
  165. data/lib/dfp_api/v201111/custom_targeting_service.rb +1 -1
  166. data/lib/dfp_api/v201111/custom_targeting_service_registry.rb +1 -1
  167. data/lib/dfp_api/v201111/forecast_service.rb +1 -1
  168. data/lib/dfp_api/v201111/forecast_service_registry.rb +1 -1
  169. data/lib/dfp_api/v201111/inventory_service.rb +1 -1
  170. data/lib/dfp_api/v201111/inventory_service_registry.rb +1 -1
  171. data/lib/dfp_api/v201111/label_service.rb +1 -1
  172. data/lib/dfp_api/v201111/label_service_registry.rb +1 -1
  173. data/lib/dfp_api/v201111/line_item_creative_association_service.rb +1 -1
  174. data/lib/dfp_api/v201111/line_item_creative_association_service_registry.rb +1 -1
  175. data/lib/dfp_api/v201111/line_item_service.rb +1 -1
  176. data/lib/dfp_api/v201111/line_item_service_registry.rb +1 -1
  177. data/lib/dfp_api/v201111/network_service.rb +1 -1
  178. data/lib/dfp_api/v201111/network_service_registry.rb +1 -1
  179. data/lib/dfp_api/v201111/order_service.rb +1 -1
  180. data/lib/dfp_api/v201111/order_service_registry.rb +1 -1
  181. data/lib/dfp_api/v201111/placement_service.rb +1 -1
  182. data/lib/dfp_api/v201111/placement_service_registry.rb +1 -1
  183. data/lib/dfp_api/v201111/publisher_query_language_service.rb +1 -1
  184. data/lib/dfp_api/v201111/publisher_query_language_service_registry.rb +1 -1
  185. data/lib/dfp_api/v201111/report_service.rb +1 -1
  186. data/lib/dfp_api/v201111/report_service_registry.rb +1 -1
  187. data/lib/dfp_api/v201111/suggested_ad_unit_service.rb +1 -1
  188. data/lib/dfp_api/v201111/suggested_ad_unit_service_registry.rb +1 -1
  189. data/lib/dfp_api/v201111/third_party_slot_service.rb +1 -1
  190. data/lib/dfp_api/v201111/third_party_slot_service_registry.rb +1 -1
  191. data/lib/dfp_api/v201111/user_service.rb +1 -1
  192. data/lib/dfp_api/v201111/user_service_registry.rb +1 -1
  193. data/lib/dfp_api/v201201/company_service.rb +1 -1
  194. data/lib/dfp_api/v201201/company_service_registry.rb +1 -1
  195. data/lib/dfp_api/v201201/content_service.rb +1 -1
  196. data/lib/dfp_api/v201201/content_service_registry.rb +1 -1
  197. data/lib/dfp_api/v201201/creative_service.rb +1 -1
  198. data/lib/dfp_api/v201201/creative_service_registry.rb +1 -1
  199. data/lib/dfp_api/v201201/creative_template_service.rb +1 -1
  200. data/lib/dfp_api/v201201/creative_template_service_registry.rb +1 -1
  201. data/lib/dfp_api/v201201/custom_targeting_service.rb +1 -1
  202. data/lib/dfp_api/v201201/custom_targeting_service_registry.rb +1 -1
  203. data/lib/dfp_api/v201201/forecast_service.rb +1 -1
  204. data/lib/dfp_api/v201201/forecast_service_registry.rb +1 -1
  205. data/lib/dfp_api/v201201/inventory_service.rb +1 -1
  206. data/lib/dfp_api/v201201/inventory_service_registry.rb +1 -1
  207. data/lib/dfp_api/v201201/label_service.rb +1 -1
  208. data/lib/dfp_api/v201201/label_service_registry.rb +1 -1
  209. data/lib/dfp_api/v201201/line_item_creative_association_service.rb +1 -1
  210. data/lib/dfp_api/v201201/line_item_creative_association_service_registry.rb +1 -1
  211. data/lib/dfp_api/v201201/line_item_service.rb +1 -1
  212. data/lib/dfp_api/v201201/line_item_service_registry.rb +1 -1
  213. data/lib/dfp_api/v201201/network_service.rb +1 -1
  214. data/lib/dfp_api/v201201/network_service_registry.rb +1 -1
  215. data/lib/dfp_api/v201201/order_service.rb +1 -1
  216. data/lib/dfp_api/v201201/order_service_registry.rb +1 -1
  217. data/lib/dfp_api/v201201/placement_service.rb +1 -1
  218. data/lib/dfp_api/v201201/placement_service_registry.rb +1 -1
  219. data/lib/dfp_api/v201201/publisher_query_language_service.rb +1 -1
  220. data/lib/dfp_api/v201201/publisher_query_language_service_registry.rb +1 -1
  221. data/lib/dfp_api/v201201/report_service.rb +1 -1
  222. data/lib/dfp_api/v201201/report_service_registry.rb +1 -1
  223. data/lib/dfp_api/v201201/suggested_ad_unit_service.rb +1 -1
  224. data/lib/dfp_api/v201201/suggested_ad_unit_service_registry.rb +1 -1
  225. data/lib/dfp_api/v201201/team_service.rb +1 -1
  226. data/lib/dfp_api/v201201/team_service_registry.rb +1 -1
  227. data/lib/dfp_api/v201201/third_party_slot_service.rb +1 -1
  228. data/lib/dfp_api/v201201/third_party_slot_service_registry.rb +1 -1
  229. data/lib/dfp_api/v201201/user_service.rb +1 -1
  230. data/lib/dfp_api/v201201/user_service_registry.rb +1 -1
  231. data/lib/dfp_api/v201203/audience_segment_service.rb +1 -1
  232. data/lib/dfp_api/v201203/audience_segment_service_registry.rb +1 -1
  233. data/lib/dfp_api/v201203/company_service.rb +1 -1
  234. data/lib/dfp_api/v201203/company_service_registry.rb +1 -1
  235. data/lib/dfp_api/v201203/content_service.rb +1 -1
  236. data/lib/dfp_api/v201203/content_service_registry.rb +1 -1
  237. data/lib/dfp_api/v201203/creative_service.rb +1 -1
  238. data/lib/dfp_api/v201203/creative_service_registry.rb +1 -1
  239. data/lib/dfp_api/v201203/creative_template_service.rb +1 -1
  240. data/lib/dfp_api/v201203/creative_template_service_registry.rb +1 -1
  241. data/lib/dfp_api/v201203/custom_targeting_service.rb +1 -1
  242. data/lib/dfp_api/v201203/custom_targeting_service_registry.rb +1 -1
  243. data/lib/dfp_api/v201203/forecast_service.rb +1 -1
  244. data/lib/dfp_api/v201203/forecast_service_registry.rb +1 -1
  245. data/lib/dfp_api/v201203/inventory_service.rb +1 -1
  246. data/lib/dfp_api/v201203/inventory_service_registry.rb +1 -1
  247. data/lib/dfp_api/v201203/label_service.rb +1 -1
  248. data/lib/dfp_api/v201203/label_service_registry.rb +1 -1
  249. data/lib/dfp_api/v201203/line_item_creative_association_service.rb +1 -1
  250. data/lib/dfp_api/v201203/line_item_creative_association_service_registry.rb +1 -1
  251. data/lib/dfp_api/v201203/line_item_service.rb +1 -1
  252. data/lib/dfp_api/v201203/line_item_service_registry.rb +1 -1
  253. data/lib/dfp_api/v201203/network_service.rb +1 -1
  254. data/lib/dfp_api/v201203/network_service_registry.rb +1 -1
  255. data/lib/dfp_api/v201203/order_service.rb +1 -1
  256. data/lib/dfp_api/v201203/order_service_registry.rb +1 -1
  257. data/lib/dfp_api/v201203/placement_service.rb +1 -1
  258. data/lib/dfp_api/v201203/placement_service_registry.rb +1 -1
  259. data/lib/dfp_api/v201203/publisher_query_language_service.rb +1 -1
  260. data/lib/dfp_api/v201203/publisher_query_language_service_registry.rb +1 -1
  261. data/lib/dfp_api/v201203/report_service.rb +1 -1
  262. data/lib/dfp_api/v201203/report_service_registry.rb +1 -1
  263. data/lib/dfp_api/v201203/suggested_ad_unit_service.rb +1 -1
  264. data/lib/dfp_api/v201203/suggested_ad_unit_service_registry.rb +1 -1
  265. data/lib/dfp_api/v201203/team_service.rb +1 -1
  266. data/lib/dfp_api/v201203/team_service_registry.rb +1 -1
  267. data/lib/dfp_api/v201203/third_party_slot_service.rb +1 -1
  268. data/lib/dfp_api/v201203/third_party_slot_service_registry.rb +1 -1
  269. data/lib/dfp_api/v201203/user_service.rb +1 -1
  270. data/lib/dfp_api/v201203/user_service_registry.rb +1 -1
  271. data/lib/dfp_api/v201204/audience_segment_service.rb +1 -1
  272. data/lib/dfp_api/v201204/audience_segment_service_registry.rb +1 -1
  273. data/lib/dfp_api/v201204/company_service.rb +1 -1
  274. data/lib/dfp_api/v201204/company_service_registry.rb +1 -1
  275. data/lib/dfp_api/v201204/content_service.rb +1 -1
  276. data/lib/dfp_api/v201204/content_service_registry.rb +1 -1
  277. data/lib/dfp_api/v201204/creative_service.rb +1 -1
  278. data/lib/dfp_api/v201204/creative_service_registry.rb +1 -1
  279. data/lib/dfp_api/v201204/creative_template_service.rb +1 -1
  280. data/lib/dfp_api/v201204/creative_template_service_registry.rb +1 -1
  281. data/lib/dfp_api/v201204/custom_field_service.rb +1 -1
  282. data/lib/dfp_api/v201204/custom_field_service_registry.rb +1 -1
  283. data/lib/dfp_api/v201204/custom_targeting_service.rb +1 -1
  284. data/lib/dfp_api/v201204/custom_targeting_service_registry.rb +1 -1
  285. data/lib/dfp_api/v201204/forecast_service.rb +1 -1
  286. data/lib/dfp_api/v201204/forecast_service_registry.rb +1 -1
  287. data/lib/dfp_api/v201204/inventory_service.rb +1 -1
  288. data/lib/dfp_api/v201204/inventory_service_registry.rb +1 -1
  289. data/lib/dfp_api/v201204/label_service.rb +1 -1
  290. data/lib/dfp_api/v201204/label_service_registry.rb +1 -1
  291. data/lib/dfp_api/v201204/line_item_creative_association_service.rb +1 -1
  292. data/lib/dfp_api/v201204/line_item_creative_association_service_registry.rb +1 -1
  293. data/lib/dfp_api/v201204/line_item_service.rb +1 -1
  294. data/lib/dfp_api/v201204/line_item_service_registry.rb +1 -1
  295. data/lib/dfp_api/v201204/network_service.rb +1 -1
  296. data/lib/dfp_api/v201204/network_service_registry.rb +1 -1
  297. data/lib/dfp_api/v201204/order_service.rb +1 -1
  298. data/lib/dfp_api/v201204/order_service_registry.rb +1 -1
  299. data/lib/dfp_api/v201204/placement_service.rb +1 -1
  300. data/lib/dfp_api/v201204/placement_service_registry.rb +1 -1
  301. data/lib/dfp_api/v201204/publisher_query_language_service.rb +1 -1
  302. data/lib/dfp_api/v201204/publisher_query_language_service_registry.rb +1 -1
  303. data/lib/dfp_api/v201204/report_service.rb +1 -1
  304. data/lib/dfp_api/v201204/report_service_registry.rb +1 -1
  305. data/lib/dfp_api/v201204/suggested_ad_unit_service.rb +1 -1
  306. data/lib/dfp_api/v201204/suggested_ad_unit_service_registry.rb +1 -1
  307. data/lib/dfp_api/v201204/team_service.rb +1 -1
  308. data/lib/dfp_api/v201204/team_service_registry.rb +1 -1
  309. data/lib/dfp_api/v201204/third_party_slot_service.rb +1 -1
  310. data/lib/dfp_api/v201204/third_party_slot_service_registry.rb +1 -1
  311. data/lib/dfp_api/v201204/user_service.rb +1 -1
  312. data/lib/dfp_api/v201204/user_service_registry.rb +1 -1
  313. data/lib/dfp_api/v201204/user_team_association_service.rb +1 -1
  314. data/lib/dfp_api/v201204/user_team_association_service_registry.rb +1 -1
  315. data/lib/dfp_api/v201206/audience_segment_service.rb +34 -0
  316. data/lib/dfp_api/v201206/audience_segment_service_registry.rb +46 -0
  317. data/lib/dfp_api/v201206/company_service.rb +54 -0
  318. data/lib/dfp_api/v201206/company_service_registry.rb +46 -0
  319. data/lib/dfp_api/v201206/content_service.rb +42 -0
  320. data/lib/dfp_api/v201206/content_service_registry.rb +46 -0
  321. data/lib/dfp_api/v201206/creative_service.rb +54 -0
  322. data/lib/dfp_api/v201206/creative_service_registry.rb +46 -0
  323. data/lib/dfp_api/v201206/creative_set_service.rb +46 -0
  324. data/lib/dfp_api/v201206/creative_set_service_registry.rb +46 -0
  325. data/lib/dfp_api/v201206/creative_template_service.rb +38 -0
  326. data/lib/dfp_api/v201206/creative_template_service_registry.rb +46 -0
  327. data/lib/dfp_api/v201206/custom_field_service.rb +78 -0
  328. data/lib/dfp_api/v201206/custom_field_service_registry.rb +46 -0
  329. data/lib/dfp_api/v201206/custom_targeting_service.rb +62 -0
  330. data/lib/dfp_api/v201206/custom_targeting_service_registry.rb +46 -0
  331. data/lib/dfp_api/v201206/forecast_service.rb +38 -0
  332. data/lib/dfp_api/v201206/forecast_service_registry.rb +46 -0
  333. data/lib/dfp_api/v201206/inventory_service.rb +62 -0
  334. data/lib/dfp_api/v201206/inventory_service_registry.rb +46 -0
  335. data/lib/dfp_api/v201206/label_service.rb +58 -0
  336. data/lib/dfp_api/v201206/label_service_registry.rb +46 -0
  337. data/lib/dfp_api/v201206/line_item_creative_association_service.rb +62 -0
  338. data/lib/dfp_api/v201206/line_item_creative_association_service_registry.rb +46 -0
  339. data/lib/dfp_api/v201206/line_item_service.rb +58 -0
  340. data/lib/dfp_api/v201206/line_item_service_registry.rb +46 -0
  341. data/lib/dfp_api/v201206/network_service.rb +46 -0
  342. data/lib/dfp_api/v201206/network_service_registry.rb +46 -0
  343. data/lib/dfp_api/v201206/order_service.rb +58 -0
  344. data/lib/dfp_api/v201206/order_service_registry.rb +46 -0
  345. data/lib/dfp_api/v201206/placement_service.rb +58 -0
  346. data/lib/dfp_api/v201206/placement_service_registry.rb +46 -0
  347. data/lib/dfp_api/v201206/publisher_query_language_service.rb +34 -0
  348. data/lib/dfp_api/v201206/publisher_query_language_service_registry.rb +46 -0
  349. data/lib/dfp_api/v201206/report_service.rb +42 -0
  350. data/lib/dfp_api/v201206/report_service_registry.rb +46 -0
  351. data/lib/dfp_api/v201206/suggested_ad_unit_service.rb +42 -0
  352. data/lib/dfp_api/v201206/suggested_ad_unit_service_registry.rb +46 -0
  353. data/lib/dfp_api/v201206/team_service.rb +54 -0
  354. data/lib/dfp_api/v201206/team_service_registry.rb +46 -0
  355. data/lib/dfp_api/v201206/third_party_slot_service.rb +46 -0
  356. data/lib/dfp_api/v201206/third_party_slot_service_registry.rb +46 -0
  357. data/lib/dfp_api/v201206/user_service.rb +66 -0
  358. data/lib/dfp_api/v201206/user_service_registry.rb +46 -0
  359. data/lib/dfp_api/v201206/user_team_association_service.rb +58 -0
  360. data/lib/dfp_api/v201206/user_team_association_service_registry.rb +46 -0
  361. data/lib/dfp_api/version.rb +1 -1
  362. data/test/bugs/test_issue_00000016.rb +2 -2
  363. metadata +199 -50
data/ChangeLog CHANGED
@@ -1,3 +1,6 @@
1
+ 0.3.3:
2
+ - Added support and examples for v201206.
3
+
1
4
  0.3.2:
2
5
  - Require google-ads-common 0.7.3 or later from now on.
3
6
  - Support for OAuth2.0 authentication method.
data/README CHANGED
@@ -112,7 +112,7 @@ Once the library object is created you can request services with a 'service'
112
112
  method:
113
113
  user_service = dfp.service(:UserService, <API_VERSION>)
114
114
 
115
- where <API_VERSION> is required version of DFP API as symbol, e.g. :v201204.
115
+ where <API_VERSION> is required version of DFP API as symbol, e.g. :v201206.
116
116
 
117
117
  Then you should be able to execute service methods:
118
118
 
@@ -146,7 +146,7 @@ Examples can be run by executing by running:
146
146
 
147
147
  from the "examples/<version>/<service_name>" directory i.e.
148
148
 
149
- $ cd examples/v201204/user_service
149
+ $ cd examples/v201206/user_service
150
150
  $ ruby get_all_users.rb
151
151
 
152
152
  Some examples require modification to be functional, like create_order example
@@ -0,0 +1,93 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This code example gets all audience segments.
22
+ #
23
+ # Tags: AudienceSegmentService.getAudienceSegmentsByStatement
24
+
25
+ require 'dfp_api'
26
+
27
+ API_VERSION = :v201206
28
+ PAGE_SIZE = 500
29
+
30
+ def get_all_audience_segments()
31
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
32
+ dfp = DfpApi::Api.new
33
+
34
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
35
+ # the configuration file or provide your own logger:
36
+ # dfp.logger = Logger.new('dfp_xml.log')
37
+
38
+ # Get the AudienceSegmentService.
39
+ audience_segment_service = dfp.service(:AudienceSegmentService, API_VERSION)
40
+
41
+ # Define initial values.
42
+ offset = 0
43
+ page = {}
44
+
45
+ begin
46
+ # Create statement for one page with current offset.
47
+ statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
48
+
49
+ # Get audience segments by statement.
50
+ page =
51
+ audience_segment_service.get_audience_segments_by_statement(statement)
52
+
53
+ if page[:results]
54
+ # Increase query offset by page size.
55
+ offset += PAGE_SIZE
56
+
57
+ # Get the start index for printout.
58
+ start_index = page[:start_index]
59
+
60
+ # Print details about each audience segment in results page.
61
+ page[:results].each_with_index do |segment, index|
62
+ puts "%d) Audience segment ID: %d, name: %s" %
63
+ [index + start_index, segment[:id], segment[:name]]
64
+ end
65
+ end
66
+ end while offset < page[:total_result_set_size]
67
+
68
+ # Print a footer
69
+ if page.include?(:total_result_set_size)
70
+ puts "Total number of audience segments: %d" % page[:total_result_set_size]
71
+ end
72
+ end
73
+
74
+ if __FILE__ == $0
75
+ begin
76
+ get_all_audience_segments()
77
+
78
+ # HTTP errors.
79
+ rescue AdsCommon::Errors::HttpError => e
80
+ puts "HTTP Error: %s" % e
81
+
82
+ # API errors.
83
+ rescue DfpApi::Errors::ApiException => e
84
+ puts "Message: %s" % e.message
85
+ puts 'Errors:'
86
+ e.errors.each_with_index do |error, index|
87
+ puts "\tError [%d]:" % (index + 1)
88
+ error.each do |field, value|
89
+ puts "\t\t%s: %s" % [field, value]
90
+ end
91
+ end
92
+ end
93
+ end
@@ -0,0 +1,76 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example runs incorrect query and demonstrates how to handle errors.
22
+ #
23
+ # Tags: UserService.updateUser
24
+
25
+ require 'dfp_api'
26
+
27
+ API_VERSION = :v201206
28
+
29
+ def produce_api_error()
30
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
31
+ dfp = DfpApi::Api.new
32
+
33
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
34
+ # the configuration file or provide your own logger:
35
+ # dfp.logger = Logger.new('dfp_xml.log')
36
+
37
+ # Get the UserService.
38
+ user_service = dfp.service(:UserService, API_VERSION)
39
+
40
+ # Omitting "id" field here to produce an error.
41
+ user = {:preferred_locale => 'en_UK', :name => 'foo_bar'}
42
+
43
+ # Execute request and get the response, this should raise an exception.
44
+ user = user_service.update_user(user)
45
+
46
+ # Output retrieved data.
47
+ puts "User ID: %d, name: %s, email: %s" %
48
+ [user[:id], user[:name], user[:email]]
49
+ end
50
+
51
+ if __FILE__ == $0
52
+ begin
53
+ # This function should produce an exception for demo.
54
+ produce_api_error()
55
+
56
+ # One of two kinds of exception might occur, general HTTP error like 403 or
57
+ # 404 and DFP API error defined in WSDL and described in documentation.
58
+
59
+ # Handling HTTP errors.
60
+ rescue AdsCommon::Errors::HttpError => e
61
+ puts "HTTP Error: %s" % e
62
+
63
+ # Handling API errors.
64
+ rescue DfpApi::Errors::ApiException => e
65
+ # Standard DFP API error includes message and array of errors occured.
66
+ puts "Message: %s" % e.message
67
+ puts 'Errors:'
68
+ # Print out each of the errors.
69
+ e.errors.each_with_index do |error, index|
70
+ puts "\tError [%d]:" % (index + 1)
71
+ error.each do |field, value|
72
+ puts "\t\t%s: %s" % [field, value]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,128 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example shows how to use OAuth2.0 authorization method. It is designed to
22
+ # be run from console and requires user input.
23
+ #
24
+ # Tags: UserService.getUsersByStatement
25
+
26
+ require 'dfp_api'
27
+
28
+ API_VERSION = :v201206
29
+ PAGE_SIZE = 500
30
+ MAX_RETRIES = 3
31
+
32
+ def oauth2_handling()
33
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
34
+ dfp = DfpApi::Api.new
35
+
36
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
37
+ # the configuration file or provide your own logger:
38
+ # dfp.logger = Logger.new('dfp_xml.log')
39
+
40
+ # Forcing authorization. A callback URL and other parameters could be
41
+ # specified as parameter for OAuth method.
42
+ token = dfp.authorize({:oauth_callback => 'oob'}) do |oauth_url|
43
+ # For command-line we ask user to go to URL and type in code.
44
+ verification_code = get_verification_code(oauth_url)
45
+ # Return verification code from the block.
46
+ (verification_code.empty?) ? nil : verification_code
47
+ end
48
+
49
+ # Get the UserService.
50
+ user_service = dfp.service(:UserService, API_VERSION)
51
+
52
+ # Define initial values.
53
+ offset = 0
54
+ page = Hash.new
55
+ retry_count = 0
56
+
57
+ begin
58
+ # Create statement for one page with current offset.
59
+ statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
60
+
61
+ begin
62
+ # Get users by statement.
63
+ page = user_service.get_users_by_statement(statement)
64
+
65
+ # The second way to do OAuth authentication is to make a request and catch
66
+ # the OAuthVerificationRequired exception. Add the verification code to the
67
+ # credentials once acquired.
68
+ rescue AdsCommon::Errors::OAuth2VerificationRequired => e
69
+ if retry_count < MAX_RETRIES
70
+ verification_code = get_verification_code(e.oauth_url)
71
+ dfp.credential_handler.set_credential(
72
+ :oauth2_verification_code, verification_code)
73
+ retry_count += 1
74
+ retry
75
+ else
76
+ raise AdsCommon::Errors::AuthError, 'Failed to authenticate.'
77
+ end
78
+ end
79
+
80
+ if page[:results]
81
+ # Increase query offset by page size.
82
+ offset += PAGE_SIZE
83
+
84
+ # Get the start index for printout.
85
+ start_index = page[:start_index]
86
+
87
+ # Print details about each user in results page.
88
+ page[:results].each_with_index do |user, index|
89
+ puts "%d) User ID: %d, name: %s, email: %s" %
90
+ [index + start_index, user[:id], user[:name], user[:email]]
91
+ end
92
+ end
93
+ end while offset < page[:total_result_set_size]
94
+
95
+ # Print a footer
96
+ if page.include?(:total_result_set_size)
97
+ puts "Total number of users: %d" % page[:total_result_set_size]
98
+ end
99
+ end
100
+
101
+ # Misc util to get the verification code from the console.
102
+ def get_verification_code(url)
103
+ puts "Hit Auth error, please navigate to URL:\n\t%s" % url
104
+ print 'Log in and type the verification code: '
105
+ verification_code = gets.chomp
106
+ return verification_code
107
+ end
108
+
109
+ if __FILE__ == $0
110
+ begin
111
+ oauth2_handling()
112
+
113
+ # HTTP errors.
114
+ rescue AdsCommon::Errors::HttpError => e
115
+ puts "HTTP Error: %s" % e
116
+
117
+ # API errors.
118
+ rescue DfpApi::Errors::ApiException => e
119
+ puts "Message: %s" % e.message
120
+ puts 'Errors:'
121
+ e.errors.each_with_index do |error, index|
122
+ puts "\tError [%d]:" % (index + 1)
123
+ error.each do |field, value|
124
+ puts "\t\t%s: %s" % [field, value]
125
+ end
126
+ end
127
+ end
128
+ end
@@ -0,0 +1,131 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # This example shows how to use OAuth1.0a authorization method. It is designed
22
+ # to be run from console and requires user input.
23
+ #
24
+ # NOTE: OAuth1.0a authorization method is deprecated, use OAuth2.0 instead.
25
+ # See oauth2_handling.rb for an example.
26
+ #
27
+ # Tags: UserService.getUsersByStatement
28
+
29
+ require 'dfp_api'
30
+
31
+ API_VERSION = :v201206
32
+ PAGE_SIZE = 500
33
+ MAX_RETRIES = 3
34
+
35
+ def oauth_handling()
36
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
37
+ dfp = DfpApi::Api.new
38
+
39
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
40
+ # the configuration file or provide your own logger:
41
+ # dfp.logger = Logger.new('dfp_xml.log')
42
+
43
+ # Forcing authorization. A callback URL and other parameters could be
44
+ # specified as parameter for OAuth method.
45
+ token = dfp.authorize({:oauth_callback => 'oob'}) do |oauth_url|
46
+ # For command-line we ask user to go to URL and type in code.
47
+ verification_code = get_verification_code(oauth_url)
48
+ # Return verification code from the block.
49
+ (verification_code.empty?) ? nil : verification_code
50
+ end
51
+
52
+ # Get the UserService.
53
+ user_service = dfp.service(:UserService, API_VERSION)
54
+
55
+ # Define initial values.
56
+ offset = 0
57
+ page = Hash.new
58
+ retry_count = 0
59
+
60
+ begin
61
+ # Create statement for one page with current offset.
62
+ statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
63
+
64
+ begin
65
+ # Get users by statement.
66
+ page = user_service.get_users_by_statement(statement)
67
+
68
+ # The second way to do OAuth authentication is to make a request and catch
69
+ # the OAuthVerificationRequired exception. Add the verification code to the
70
+ # credentials once acquired.
71
+ rescue AdsCommon::Errors::OAuthVerificationRequired => e
72
+ if retry_count < MAX_RETRIES
73
+ verification_code = get_verification_code(e.oauth_url)
74
+ dfp.credential_handler.set_credential(
75
+ :oauth_verification_code, verification_code)
76
+ retry_count += 1
77
+ retry
78
+ else
79
+ raise AdsCommon::Errors::AuthError, 'Failed to authenticate.'
80
+ end
81
+ end
82
+
83
+ if page[:results]
84
+ # Increase query offset by page size.
85
+ offset += PAGE_SIZE
86
+
87
+ # Get the start index for printout.
88
+ start_index = page[:start_index]
89
+
90
+ # Print details about each user in results page.
91
+ page[:results].each_with_index do |user, index|
92
+ puts "%d) User ID: %d, name: %s, email: %s" %
93
+ [index + start_index, user[:id], user[:name], user[:email]]
94
+ end
95
+ end
96
+ end while offset < page[:total_result_set_size]
97
+
98
+ # Print a footer
99
+ if page.include?(:total_result_set_size)
100
+ puts "Total number of users: %d" % page[:total_result_set_size]
101
+ end
102
+ end
103
+
104
+ # Misc util to get the verification code from the console.
105
+ def get_verification_code(url)
106
+ puts "Hit Auth error, please navigate to URL:\n\t%s" % url
107
+ print 'Log in and type the verification code: '
108
+ verification_code = gets.chomp
109
+ return verification_code
110
+ end
111
+
112
+ if __FILE__ == $0
113
+ begin
114
+ oauth_handling()
115
+
116
+ # HTTP errors.
117
+ rescue AdsCommon::Errors::HttpError => e
118
+ puts "HTTP Error: %s" % e
119
+
120
+ # API errors.
121
+ rescue DfpApi::Errors::ApiException => e
122
+ puts "Message: %s" % e.message
123
+ puts 'Errors:'
124
+ e.errors.each_with_index do |error, index|
125
+ puts "\tError [%d]:" % (index + 1)
126
+ error.each do |field, value|
127
+ puts "\t\t%s: %s" % [field, value]
128
+ end
129
+ end
130
+ end
131
+ end