google-dfp-api 0.2.8 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (450) hide show
  1. data/ChangeLog +4 -0
  2. data/README +4 -6
  3. data/dfp_api.yml +5 -1
  4. data/examples/{v201104/order_service/get_all_orders.rb → v201203/audience_segment_service/get_all_audience_segments.rb} +18 -17
  5. data/examples/{v201103 → v201203}/common/error_handling.rb +1 -1
  6. data/examples/{v201107 → v201203}/common/oauth_handling.rb +1 -1
  7. data/examples/{v201107 → v201203}/company_service/create_companies.rb +1 -1
  8. data/examples/{v201107 → v201203}/company_service/get_all_companies.rb +1 -1
  9. data/examples/{v201104 → v201203}/company_service/get_companies_by_statement.rb +1 -1
  10. data/examples/{v201104 → v201203}/company_service/get_company.rb +1 -1
  11. data/examples/{v201107 → v201203}/company_service/update_companies.rb +1 -1
  12. data/examples/{v201103/user_service/get_all_users.rb → v201203/content_service/get_all_content.rb} +16 -15
  13. data/examples/v201203/content_service/get_content_by_category.rb +135 -0
  14. data/examples/{v201107 → v201203}/creative_service/copy_image_creatives.rb +1 -1
  15. data/examples/v201203/creative_service/create_creative_from_template.rb +138 -0
  16. data/examples/{v201107 → v201203}/creative_service/create_creatives.rb +1 -1
  17. data/examples/{v201103/creative_service/create_creatives.rb → v201203/creative_service/create_custom_creative.rb} +28 -30
  18. data/examples/{v201103 → v201203}/creative_service/get_all_creatives.rb +1 -1
  19. data/examples/{v201104 → v201203}/creative_service/get_creative.rb +1 -1
  20. data/examples/{v201107 → v201203}/creative_service/get_creatives_by_statement.rb +1 -1
  21. data/examples/{v201103 → v201203}/creative_service/update_creatives.rb +1 -1
  22. data/examples/{v201103/inventory_service/get_all_ad_units.rb → v201203/creative_template_service/get_all_creative_templates.rb} +16 -15
  23. data/examples/{v201103/creative_service/get_creative.rb → v201203/creative_template_service/get_creative_template.rb} +17 -15
  24. data/examples/{v201107/user_service/get_users_by_statement.rb → v201203/creative_template_service/get_creative_templates_by_statement.rb} +18 -17
  25. data/examples/{v201107 → v201203}/custom_targeting_service/create_custom_targeting_keys_and_values.rb +28 -6
  26. data/examples/{v201103 → v201203}/custom_targeting_service/delete_custom_targeting_keys.rb +1 -1
  27. data/examples/{v201107 → v201203}/custom_targeting_service/delete_custom_targeting_values.rb +1 -1
  28. data/examples/{v201103 → v201203}/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +1 -1
  29. data/examples/{v201104 → v201203}/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +1 -1
  30. data/examples/{v201104 → v201203}/custom_targeting_service/get_custom_targeting_values_by_statement.rb +1 -1
  31. data/examples/{v201107 → v201203}/custom_targeting_service/update_custom_targeting_keys.rb +1 -1
  32. data/examples/{v201103 → v201203}/custom_targeting_service/update_custom_targeting_values.rb +1 -1
  33. data/examples/{v201104 → v201203}/forecast_service/get_forecast.rb +8 -4
  34. data/examples/{v201107 → v201203}/forecast_service/get_forecast_by_id.rb +1 -1
  35. data/examples/{v201107 → v201203}/inventory_service/create_ad_units.rb +9 -3
  36. data/examples/{v201103/inventory_service/create_ad_units.rb → v201203/inventory_service/create_mobile_ad_unit.rb} +27 -22
  37. data/examples/{v201104/inventory_service/create_ad_units.rb → v201203/inventory_service/create_video_ad_unit.rb} +35 -22
  38. data/examples/{v201103 → v201203}/inventory_service/deactivate_ad_units.rb +1 -1
  39. data/examples/{v201103 → v201203}/inventory_service/get_ad_unit.rb +1 -1
  40. data/examples/{v201107 → v201203}/inventory_service/get_ad_unit_sizes.rb +20 -7
  41. data/examples/{v201104 → v201203}/inventory_service/get_ad_units_by_statement.rb +1 -1
  42. data/examples/{v201104 → v201203}/inventory_service/get_all_ad_units.rb +1 -1
  43. data/examples/{v201104 → v201203}/inventory_service/update_ad_units.rb +1 -1
  44. data/examples/{v201107 → v201203}/label_service/create_labels.rb +6 -5
  45. data/examples/{v201107 → v201203}/label_service/deactivate_labels.rb +1 -1
  46. data/examples/{v201107 → v201203}/label_service/get_all_labels.rb +6 -4
  47. data/examples/{v201107 → v201203}/label_service/get_label.rb +5 -4
  48. data/examples/{v201107 → v201203}/label_service/get_labels_by_statement.rb +9 -18
  49. data/examples/{v201107 → v201203}/label_service/update_labels.rb +12 -13
  50. data/examples/{v201107 → v201203}/line_item_creative_association_service/create_licas.rb +1 -1
  51. data/examples/{v201104 → v201203}/line_item_creative_association_service/deactivate_licas.rb +1 -1
  52. data/examples/{v201104 → v201203}/line_item_creative_association_service/get_all_licas.rb +1 -1
  53. data/examples/{v201104 → v201203}/line_item_creative_association_service/get_lica.rb +1 -1
  54. data/examples/{v201107 → v201203}/line_item_creative_association_service/get_licas_by_statement.rb +1 -1
  55. data/examples/{v201107 → v201203}/line_item_creative_association_service/update_licas.rb +1 -1
  56. data/examples/{v201103 → v201203}/line_item_service/activate_line_items.rb +1 -1
  57. data/examples/{v201107 → v201203}/line_item_service/create_line_items.rb +19 -9
  58. data/examples/v201203/line_item_service/create_mobile_line_item.rb +134 -0
  59. data/examples/v201203/line_item_service/create_video_line_item.rb +155 -0
  60. data/examples/{v201107 → v201203}/line_item_service/get_all_line_items.rb +1 -1
  61. data/examples/{v201107 → v201203}/line_item_service/get_line_item.rb +1 -1
  62. data/examples/{v201107 → v201203}/line_item_service/get_line_items_by_statement.rb +11 -7
  63. data/examples/{v201103/line_item_service/get_line_items_by_statement.rb → v201203/line_item_service/get_recently_updated_line_items.rb} +23 -14
  64. data/examples/{v201107 → v201203}/line_item_service/target_custom_criteria.rb +1 -1
  65. data/examples/{v201103 → v201203}/line_item_service/update_line_items.rb +1 -1
  66. data/examples/{v201103 → v201203}/network_service/get_all_networks.rb +1 -1
  67. data/examples/{v201103 → v201203}/network_service/get_current_network.rb +1 -1
  68. data/examples/{v201107/network_service/get_current_network.rb → v201203/network_service/make_test_network.rb} +21 -10
  69. data/examples/{v201104 → v201203}/order_service/approve_orders.rb +24 -18
  70. data/examples/{v201107 → v201203}/order_service/create_orders.rb +1 -1
  71. data/examples/{v201107 → v201203}/order_service/get_all_orders.rb +1 -1
  72. data/examples/{v201103 → v201203}/order_service/get_order.rb +1 -1
  73. data/examples/{v201103 → v201203}/order_service/get_orders_by_statement.rb +1 -1
  74. data/examples/{v201107 → v201203}/order_service/update_orders.rb +1 -1
  75. data/examples/{v201103 → v201203}/placement_service/create_placements.rb +3 -2
  76. data/examples/{v201107 → v201203}/placement_service/deactivate_placements.rb +1 -1
  77. data/examples/{v201103 → v201203}/placement_service/get_all_placements.rb +1 -1
  78. data/examples/{v201104 → v201203}/placement_service/get_placement.rb +1 -1
  79. data/examples/{v201107 → v201203}/placement_service/get_placements_by_statement.rb +1 -1
  80. data/examples/{v201103 → v201203}/placement_service/update_placements.rb +1 -1
  81. data/examples/{v201104 → v201203}/publisher_query_language_service/get_all_cities.rb +7 -2
  82. data/examples/{v201107 → v201203}/report_service/download_report.rb +1 -1
  83. data/examples/{v201104 → v201203}/report_service/run_delivery_report.rb +17 -3
  84. data/examples/{v201104 → v201203}/report_service/run_inventory_report.rb +4 -2
  85. data/examples/{v201107/report_service/run_delivery_report.rb → v201203/report_service/run_merged_delivery_report.rb} +12 -7
  86. data/examples/{v201107 → v201203}/report_service/run_sales_report.rb +1 -1
  87. data/examples/v201203/suggested_ad_unit_service/approve_all_suggested_ad_units.rb +108 -0
  88. data/examples/{v201107/inventory_service/get_all_ad_units.rb → v201203/suggested_ad_unit_service/get_all_suggested_ad_units.rb} +17 -14
  89. data/examples/{v201104/inventory_service/get_ad_unit.rb → v201203/suggested_ad_unit_service/get_suggested_ad_unit.rb} +17 -14
  90. data/examples/{v201107/inventory_service/get_ad_units_by_statement.rb → v201203/suggested_ad_unit_service/get_suggested_ad_units_by_statement.rb} +22 -26
  91. data/examples/{v201103/user_service/create_users.rb → v201203/team_service/create_teams.rb} +31 -28
  92. data/examples/{v201107/user_service/get_all_users.rb → v201203/team_service/get_all_teams.rb} +16 -17
  93. data/examples/{v201104/network_service/get_current_network.rb → v201203/team_service/get_team.rb} +21 -13
  94. data/examples/{v201103/user_service/update_users.rb → v201203/team_service/get_teams_by_statement.rb} +27 -29
  95. data/examples/{v201104/user_service/update_users.rb → v201203/team_service/update_teams.rb} +38 -23
  96. data/examples/v201203/third_party_slot_service/archive_third_party_slots.rb +124 -0
  97. data/examples/{v201103/company_service/get_company.rb → v201203/third_party_slot_service/create_third_party_slot.rb} +33 -14
  98. data/examples/{v201103/order_service/get_all_orders.rb → v201203/third_party_slot_service/get_all_third_party_slots.rb} +15 -15
  99. data/examples/{v201104/placement_service/get_placements_by_statement.rb → v201203/third_party_slot_service/get_third_party_slot_by_statement.rb} +16 -16
  100. data/examples/{v201103/placement_service/get_placements_by_statement.rb → v201203/third_party_slot_service/update_third_party_slots.rb} +32 -23
  101. data/examples/{v201104 → v201203}/user_service/create_users.rb +1 -1
  102. data/examples/{v201104 → v201203}/user_service/deactivate_users.rb +1 -1
  103. data/examples/{v201103 → v201203}/user_service/get_all_roles.rb +1 -1
  104. data/examples/{v201104 → v201203}/user_service/get_all_users.rb +1 -1
  105. data/examples/{v201107 → v201203}/user_service/get_current_user.rb +1 -1
  106. data/examples/{v201103 → v201203}/user_service/get_user.rb +1 -1
  107. data/examples/{v201103 → v201203}/user_service/get_users_by_statement.rb +1 -1
  108. data/examples/{v201107 → v201203}/user_service/update_users.rb +1 -1
  109. data/lib/dfp_api/api_config.rb +14 -36
  110. data/lib/dfp_api/v201108/company_service.rb +18 -16
  111. data/lib/dfp_api/v201108/company_service_registry.rb +8 -6
  112. data/lib/dfp_api/v201108/creative_service.rb +10 -8
  113. data/lib/dfp_api/v201108/creative_service_registry.rb +8 -6
  114. data/lib/dfp_api/v201108/custom_targeting_service.rb +22 -20
  115. data/lib/dfp_api/v201108/custom_targeting_service_registry.rb +8 -6
  116. data/lib/dfp_api/v201108/forecast_service.rb +10 -8
  117. data/lib/dfp_api/v201108/forecast_service_registry.rb +8 -6
  118. data/lib/dfp_api/v201108/inventory_service.rb +22 -20
  119. data/lib/dfp_api/v201108/inventory_service_registry.rb +8 -6
  120. data/lib/dfp_api/v201108/label_service.rb +18 -16
  121. data/lib/dfp_api/v201108/label_service_registry.rb +8 -6
  122. data/lib/dfp_api/v201108/line_item_creative_association_service.rb +14 -12
  123. data/lib/dfp_api/v201108/line_item_creative_association_service_registry.rb +8 -6
  124. data/lib/dfp_api/v201108/line_item_service.rb +18 -16
  125. data/lib/dfp_api/v201108/line_item_service_registry.rb +8 -6
  126. data/lib/dfp_api/v201108/network_service.rb +6 -4
  127. data/lib/dfp_api/v201108/network_service_registry.rb +8 -6
  128. data/lib/dfp_api/v201108/order_service.rb +10 -8
  129. data/lib/dfp_api/v201108/order_service_registry.rb +8 -6
  130. data/lib/dfp_api/v201108/placement_service.rb +18 -16
  131. data/lib/dfp_api/v201108/placement_service_registry.rb +8 -6
  132. data/lib/dfp_api/v201108/publisher_query_language_service.rb +6 -4
  133. data/lib/dfp_api/v201108/publisher_query_language_service_registry.rb +8 -6
  134. data/lib/dfp_api/v201108/report_service.rb +6 -4
  135. data/lib/dfp_api/v201108/report_service_registry.rb +8 -6
  136. data/lib/dfp_api/v201108/third_party_slot_service.rb +6 -4
  137. data/lib/dfp_api/v201108/third_party_slot_service_registry.rb +8 -6
  138. data/lib/dfp_api/v201108/user_service.rb +18 -16
  139. data/lib/dfp_api/v201108/user_service_registry.rb +8 -6
  140. data/lib/dfp_api/v201111/company_service.rb +18 -16
  141. data/lib/dfp_api/v201111/company_service_registry.rb +8 -6
  142. data/lib/dfp_api/v201111/content_service.rb +6 -4
  143. data/lib/dfp_api/v201111/content_service_registry.rb +8 -6
  144. data/lib/dfp_api/v201111/creative_service.rb +10 -8
  145. data/lib/dfp_api/v201111/creative_service_registry.rb +8 -6
  146. data/lib/dfp_api/v201111/creative_template_service.rb +6 -4
  147. data/lib/dfp_api/v201111/creative_template_service_registry.rb +8 -6
  148. data/lib/dfp_api/v201111/custom_targeting_service.rb +22 -20
  149. data/lib/dfp_api/v201111/custom_targeting_service_registry.rb +8 -6
  150. data/lib/dfp_api/v201111/forecast_service.rb +10 -8
  151. data/lib/dfp_api/v201111/forecast_service_registry.rb +8 -6
  152. data/lib/dfp_api/v201111/inventory_service.rb +22 -20
  153. data/lib/dfp_api/v201111/inventory_service_registry.rb +8 -6
  154. data/lib/dfp_api/v201111/label_service.rb +18 -16
  155. data/lib/dfp_api/v201111/label_service_registry.rb +8 -6
  156. data/lib/dfp_api/v201111/line_item_creative_association_service.rb +18 -16
  157. data/lib/dfp_api/v201111/line_item_creative_association_service_registry.rb +8 -6
  158. data/lib/dfp_api/v201111/line_item_service.rb +18 -16
  159. data/lib/dfp_api/v201111/line_item_service_registry.rb +8 -6
  160. data/lib/dfp_api/v201111/network_service.rb +6 -4
  161. data/lib/dfp_api/v201111/network_service_registry.rb +8 -6
  162. data/lib/dfp_api/v201111/order_service.rb +10 -8
  163. data/lib/dfp_api/v201111/order_service_registry.rb +8 -6
  164. data/lib/dfp_api/v201111/placement_service.rb +18 -16
  165. data/lib/dfp_api/v201111/placement_service_registry.rb +8 -6
  166. data/lib/dfp_api/v201111/publisher_query_language_service.rb +6 -4
  167. data/lib/dfp_api/v201111/publisher_query_language_service_registry.rb +8 -6
  168. data/lib/dfp_api/v201111/report_service.rb +6 -4
  169. data/lib/dfp_api/v201111/report_service_registry.rb +8 -6
  170. data/lib/dfp_api/v201111/suggested_ad_unit_service.rb +6 -4
  171. data/lib/dfp_api/v201111/suggested_ad_unit_service_registry.rb +8 -6
  172. data/lib/dfp_api/v201111/third_party_slot_service.rb +6 -4
  173. data/lib/dfp_api/v201111/third_party_slot_service_registry.rb +8 -6
  174. data/lib/dfp_api/v201111/user_service.rb +18 -16
  175. data/lib/dfp_api/v201111/user_service_registry.rb +8 -6
  176. data/lib/dfp_api/v201201/company_service.rb +1 -1
  177. data/lib/dfp_api/v201201/company_service_registry.rb +2 -2
  178. data/lib/dfp_api/v201201/content_service.rb +1 -1
  179. data/lib/dfp_api/v201201/content_service_registry.rb +1 -1
  180. data/lib/dfp_api/v201201/creative_service.rb +1 -1
  181. data/lib/dfp_api/v201201/creative_service_registry.rb +1 -1
  182. data/lib/dfp_api/v201201/creative_template_service.rb +1 -1
  183. data/lib/dfp_api/v201201/creative_template_service_registry.rb +1 -1
  184. data/lib/dfp_api/v201201/custom_targeting_service.rb +1 -1
  185. data/lib/dfp_api/v201201/custom_targeting_service_registry.rb +1 -1
  186. data/lib/dfp_api/v201201/forecast_service.rb +1 -1
  187. data/lib/dfp_api/v201201/forecast_service_registry.rb +2 -2
  188. data/lib/dfp_api/v201201/inventory_service.rb +1 -1
  189. data/lib/dfp_api/v201201/inventory_service_registry.rb +1 -1
  190. data/lib/dfp_api/v201201/label_service.rb +1 -1
  191. data/lib/dfp_api/v201201/label_service_registry.rb +1 -1
  192. data/lib/dfp_api/v201201/line_item_creative_association_service.rb +1 -1
  193. data/lib/dfp_api/v201201/line_item_creative_association_service_registry.rb +1 -1
  194. data/lib/dfp_api/v201201/line_item_service.rb +1 -1
  195. data/lib/dfp_api/v201201/line_item_service_registry.rb +2 -2
  196. data/lib/dfp_api/v201201/network_service.rb +1 -1
  197. data/lib/dfp_api/v201201/network_service_registry.rb +1 -1
  198. data/lib/dfp_api/v201201/order_service.rb +1 -1
  199. data/lib/dfp_api/v201201/order_service_registry.rb +1 -1
  200. data/lib/dfp_api/v201201/placement_service.rb +1 -1
  201. data/lib/dfp_api/v201201/placement_service_registry.rb +1 -1
  202. data/lib/dfp_api/v201201/publisher_query_language_service.rb +1 -1
  203. data/lib/dfp_api/v201201/publisher_query_language_service_registry.rb +1 -1
  204. data/lib/dfp_api/v201201/report_service.rb +1 -1
  205. data/lib/dfp_api/v201201/report_service_registry.rb +1 -1
  206. data/lib/dfp_api/v201201/suggested_ad_unit_service.rb +1 -1
  207. data/lib/dfp_api/v201201/suggested_ad_unit_service_registry.rb +1 -1
  208. data/lib/dfp_api/v201201/team_service.rb +1 -1
  209. data/lib/dfp_api/v201201/team_service_registry.rb +1 -1
  210. data/lib/dfp_api/v201201/third_party_slot_service.rb +1 -1
  211. data/lib/dfp_api/v201201/third_party_slot_service_registry.rb +1 -1
  212. data/lib/dfp_api/v201201/user_service.rb +1 -1
  213. data/lib/dfp_api/v201201/user_service_registry.rb +1 -1
  214. data/lib/dfp_api/v201203/audience_segment_service.rb +34 -0
  215. data/lib/dfp_api/v201203/audience_segment_service_registry.rb +46 -0
  216. data/lib/dfp_api/{v201103 → v201203}/company_service.rb +23 -21
  217. data/lib/dfp_api/v201203/company_service_registry.rb +46 -0
  218. data/lib/dfp_api/v201203/content_service.rb +42 -0
  219. data/lib/dfp_api/v201203/content_service_registry.rb +46 -0
  220. data/lib/dfp_api/{v201103 → v201203}/creative_service.rb +15 -13
  221. data/lib/dfp_api/v201203/creative_service_registry.rb +46 -0
  222. data/lib/dfp_api/v201203/creative_template_service.rb +38 -0
  223. data/lib/dfp_api/v201203/creative_template_service_registry.rb +46 -0
  224. data/lib/dfp_api/{v201107 → v201203}/custom_targeting_service.rb +27 -25
  225. data/lib/dfp_api/v201203/custom_targeting_service_registry.rb +46 -0
  226. data/lib/dfp_api/{v201107 → v201203}/forecast_service.rb +15 -13
  227. data/lib/dfp_api/v201203/forecast_service_registry.rb +46 -0
  228. data/lib/dfp_api/{v201107 → v201203}/inventory_service.rb +29 -23
  229. data/lib/dfp_api/v201203/inventory_service_registry.rb +46 -0
  230. data/lib/dfp_api/{v201107 → v201203}/label_service.rb +23 -21
  231. data/lib/dfp_api/v201203/label_service_registry.rb +46 -0
  232. data/lib/dfp_api/{v201103 → v201203}/line_item_creative_association_service.rb +23 -17
  233. data/lib/dfp_api/v201203/line_item_creative_association_service_registry.rb +46 -0
  234. data/lib/dfp_api/{v201107 → v201203}/line_item_service.rb +23 -21
  235. data/lib/dfp_api/v201203/line_item_service_registry.rb +46 -0
  236. data/lib/dfp_api/{v201104 → v201203}/network_service.rb +15 -9
  237. data/lib/dfp_api/v201203/network_service_registry.rb +46 -0
  238. data/lib/dfp_api/{v201103 → v201203}/order_service.rb +15 -13
  239. data/lib/dfp_api/v201203/order_service_registry.rb +46 -0
  240. data/lib/dfp_api/{v201107 → v201203}/placement_service.rb +23 -21
  241. data/lib/dfp_api/v201203/placement_service_registry.rb +46 -0
  242. data/lib/dfp_api/{v201104 → v201203}/publisher_query_language_service.rb +11 -9
  243. data/lib/dfp_api/v201203/publisher_query_language_service_registry.rb +46 -0
  244. data/lib/dfp_api/{v201103 → v201203}/report_service.rb +11 -9
  245. data/lib/dfp_api/v201203/report_service_registry.rb +46 -0
  246. data/lib/dfp_api/v201203/suggested_ad_unit_service.rb +42 -0
  247. data/lib/dfp_api/v201203/suggested_ad_unit_service_registry.rb +46 -0
  248. data/lib/dfp_api/v201203/team_service.rb +54 -0
  249. data/lib/dfp_api/v201203/team_service_registry.rb +46 -0
  250. data/lib/dfp_api/v201203/third_party_slot_service.rb +46 -0
  251. data/lib/dfp_api/v201203/third_party_slot_service_registry.rb +46 -0
  252. data/lib/dfp_api/{v201107 → v201203}/user_service.rb +23 -21
  253. data/lib/dfp_api/v201203/user_service_registry.rb +46 -0
  254. data/lib/dfp_api/version.rb +1 -1
  255. data/test/bugs/test_issue_00000016.rb +3 -3
  256. data/test/dfp_api/test_config.yml +0 -2
  257. data/test/dfp_api/test_dfp_api.rb +0 -4
  258. metadata +484 -649
  259. data/examples/v201103/common/oauth_handling.rb +0 -127
  260. data/examples/v201103/company_service/create_companies.rb +0 -80
  261. data/examples/v201103/company_service/get_all_companies.rb +0 -91
  262. data/examples/v201103/company_service/get_companies_by_statement.rb +0 -87
  263. data/examples/v201103/company_service/update_companies.rb +0 -94
  264. data/examples/v201103/creative_service/copy_image_creatives.rb +0 -114
  265. data/examples/v201103/creative_service/get_creatives_by_statement.rb +0 -86
  266. data/examples/v201103/custom_targeting_service/create_custom_targeting_keys_and_values.rb +0 -117
  267. data/examples/v201103/custom_targeting_service/delete_custom_targeting_values.rb +0 -124
  268. data/examples/v201103/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +0 -91
  269. data/examples/v201103/custom_targeting_service/get_custom_targeting_values_by_statement.rb +0 -97
  270. data/examples/v201103/custom_targeting_service/update_custom_targeting_keys.rb +0 -93
  271. data/examples/v201103/forecast_service/get_forecast.rb +0 -102
  272. data/examples/v201103/forecast_service/get_forecast_by_id.rb +0 -79
  273. data/examples/v201103/inventory_service/get_ad_units_by_statement.rb +0 -95
  274. data/examples/v201103/inventory_service/update_ad_units.rb +0 -93
  275. data/examples/v201103/line_item_creative_association_service/create_licas.rb +0 -93
  276. data/examples/v201103/line_item_creative_association_service/deactivate_licas.rb +0 -126
  277. data/examples/v201103/line_item_creative_association_service/get_all_licas.rb +0 -94
  278. data/examples/v201103/line_item_creative_association_service/get_lica.rb +0 -76
  279. data/examples/v201103/line_item_creative_association_service/get_licas_by_statement.rb +0 -90
  280. data/examples/v201103/line_item_creative_association_service/update_licas.rb +0 -91
  281. data/examples/v201103/line_item_service/create_line_items.rb +0 -163
  282. data/examples/v201103/line_item_service/get_all_line_items.rb +0 -93
  283. data/examples/v201103/line_item_service/get_line_item.rb +0 -73
  284. data/examples/v201103/line_item_service/target_custom_criteria.rb +0 -134
  285. data/examples/v201103/order_service/approve_orders.rb +0 -115
  286. data/examples/v201103/order_service/create_orders.rb +0 -91
  287. data/examples/v201103/order_service/update_orders.rb +0 -94
  288. data/examples/v201103/placement_service/deactivate_placements.rb +0 -117
  289. data/examples/v201103/placement_service/get_placement.rb +0 -73
  290. data/examples/v201103/publisher_query_language_service/get_all_cities.rb +0 -84
  291. data/examples/v201103/publisher_query_language_service/get_all_countries.rb +0 -84
  292. data/examples/v201103/publisher_query_language_service/get_all_metros.rb +0 -84
  293. data/examples/v201103/publisher_query_language_service/get_all_regions.rb +0 -84
  294. data/examples/v201103/report_service/download_report.rb +0 -80
  295. data/examples/v201103/report_service/run_delivery_report.rb +0 -88
  296. data/examples/v201103/report_service/run_inventory_report.rb +0 -89
  297. data/examples/v201103/report_service/run_sales_report.rb +0 -88
  298. data/examples/v201103/user_service/deactivate_users.rb +0 -98
  299. data/examples/v201104/common/error_handling.rb +0 -75
  300. data/examples/v201104/common/oauth_handling.rb +0 -127
  301. data/examples/v201104/company_service/create_companies.rb +0 -80
  302. data/examples/v201104/company_service/get_all_companies.rb +0 -91
  303. data/examples/v201104/company_service/update_companies.rb +0 -94
  304. data/examples/v201104/creative_service/copy_image_creatives.rb +0 -114
  305. data/examples/v201104/creative_service/create_creatives.rb +0 -105
  306. data/examples/v201104/creative_service/get_all_creatives.rb +0 -92
  307. data/examples/v201104/creative_service/get_creatives_by_statement.rb +0 -86
  308. data/examples/v201104/creative_service/update_creatives.rb +0 -95
  309. data/examples/v201104/custom_targeting_service/create_custom_targeting_keys_and_values.rb +0 -117
  310. data/examples/v201104/custom_targeting_service/delete_custom_targeting_keys.rb +0 -120
  311. data/examples/v201104/custom_targeting_service/delete_custom_targeting_values.rb +0 -124
  312. data/examples/v201104/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +0 -147
  313. data/examples/v201104/custom_targeting_service/update_custom_targeting_keys.rb +0 -93
  314. data/examples/v201104/custom_targeting_service/update_custom_targeting_values.rb +0 -105
  315. data/examples/v201104/forecast_service/get_forecast_by_id.rb +0 -79
  316. data/examples/v201104/inventory_service/deactivate_ad_units.rb +0 -118
  317. data/examples/v201104/line_item_creative_association_service/create_licas.rb +0 -93
  318. data/examples/v201104/line_item_creative_association_service/get_licas_by_statement.rb +0 -90
  319. data/examples/v201104/line_item_creative_association_service/update_licas.rb +0 -91
  320. data/examples/v201104/line_item_service/activate_line_items.rb +0 -130
  321. data/examples/v201104/line_item_service/create_line_items.rb +0 -155
  322. data/examples/v201104/line_item_service/get_all_line_items.rb +0 -93
  323. data/examples/v201104/line_item_service/get_line_item.rb +0 -73
  324. data/examples/v201104/line_item_service/get_line_items_by_statement.rb +0 -88
  325. data/examples/v201104/line_item_service/target_custom_criteria.rb +0 -128
  326. data/examples/v201104/line_item_service/update_line_items.rb +0 -108
  327. data/examples/v201104/network_service/get_all_networks.rb +0 -73
  328. data/examples/v201104/order_service/create_orders.rb +0 -91
  329. data/examples/v201104/order_service/get_order.rb +0 -73
  330. data/examples/v201104/order_service/get_orders_by_statement.rb +0 -89
  331. data/examples/v201104/order_service/update_orders.rb +0 -94
  332. data/examples/v201104/placement_service/create_placements.rb +0 -127
  333. data/examples/v201104/placement_service/deactivate_placements.rb +0 -117
  334. data/examples/v201104/placement_service/get_all_placements.rb +0 -92
  335. data/examples/v201104/placement_service/update_placements.rb +0 -96
  336. data/examples/v201104/publisher_query_language_service/get_all_countries.rb +0 -84
  337. data/examples/v201104/publisher_query_language_service/get_all_metros.rb +0 -84
  338. data/examples/v201104/publisher_query_language_service/get_all_regions.rb +0 -84
  339. data/examples/v201104/report_service/download_report.rb +0 -80
  340. data/examples/v201104/report_service/run_sales_report.rb +0 -88
  341. data/examples/v201104/user_service/get_all_roles.rb +0 -72
  342. data/examples/v201104/user_service/get_user.rb +0 -72
  343. data/examples/v201104/user_service/get_users_by_statement.rb +0 -78
  344. data/examples/v201107/common/error_handling.rb +0 -75
  345. data/examples/v201107/company_service/get_companies_by_statement.rb +0 -87
  346. data/examples/v201107/company_service/get_company.rb +0 -71
  347. data/examples/v201107/creative_service/get_all_creatives.rb +0 -92
  348. data/examples/v201107/creative_service/get_creative.rb +0 -71
  349. data/examples/v201107/creative_service/update_creatives.rb +0 -95
  350. data/examples/v201107/custom_targeting_service/delete_custom_targeting_keys.rb +0 -120
  351. data/examples/v201107/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +0 -147
  352. data/examples/v201107/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +0 -91
  353. data/examples/v201107/custom_targeting_service/get_custom_targeting_values_by_statement.rb +0 -97
  354. data/examples/v201107/custom_targeting_service/update_custom_targeting_values.rb +0 -105
  355. data/examples/v201107/forecast_service/get_forecast.rb +0 -102
  356. data/examples/v201107/inventory_service/deactivate_ad_units.rb +0 -118
  357. data/examples/v201107/inventory_service/get_ad_unit.rb +0 -71
  358. data/examples/v201107/inventory_service/update_ad_units.rb +0 -93
  359. data/examples/v201107/line_item_creative_association_service/deactivate_licas.rb +0 -126
  360. data/examples/v201107/line_item_creative_association_service/get_all_licas.rb +0 -94
  361. data/examples/v201107/line_item_creative_association_service/get_lica.rb +0 -76
  362. data/examples/v201107/line_item_service/activate_line_items.rb +0 -130
  363. data/examples/v201107/line_item_service/update_line_items.rb +0 -108
  364. data/examples/v201107/network_service/get_all_networks.rb +0 -73
  365. data/examples/v201107/order_service/approve_orders.rb +0 -115
  366. data/examples/v201107/order_service/get_order.rb +0 -73
  367. data/examples/v201107/order_service/get_orders_by_statement.rb +0 -89
  368. data/examples/v201107/placement_service/create_placements.rb +0 -127
  369. data/examples/v201107/placement_service/get_all_placements.rb +0 -92
  370. data/examples/v201107/placement_service/get_placement.rb +0 -73
  371. data/examples/v201107/placement_service/update_placements.rb +0 -96
  372. data/examples/v201107/publisher_query_language_service/get_all_bandwidth_groups.rb +0 -84
  373. data/examples/v201107/publisher_query_language_service/get_all_browser_languages.rb +0 -84
  374. data/examples/v201107/publisher_query_language_service/get_all_browsers.rb +0 -84
  375. data/examples/v201107/publisher_query_language_service/get_all_cities.rb +0 -84
  376. data/examples/v201107/publisher_query_language_service/get_all_countries.rb +0 -84
  377. data/examples/v201107/publisher_query_language_service/get_all_metros.rb +0 -84
  378. data/examples/v201107/publisher_query_language_service/get_all_operating_systems.rb +0 -84
  379. data/examples/v201107/publisher_query_language_service/get_all_regions.rb +0 -84
  380. data/examples/v201107/report_service/run_inventory_report.rb +0 -89
  381. data/examples/v201107/user_service/create_users.rb +0 -88
  382. data/examples/v201107/user_service/deactivate_users.rb +0 -98
  383. data/examples/v201107/user_service/get_all_roles.rb +0 -72
  384. data/examples/v201107/user_service/get_user.rb +0 -72
  385. data/lib/dfp_api/v201103/company_service_registry.rb +0 -44
  386. data/lib/dfp_api/v201103/creative_service_registry.rb +0 -44
  387. data/lib/dfp_api/v201103/custom_targeting_service.rb +0 -60
  388. data/lib/dfp_api/v201103/custom_targeting_service_registry.rb +0 -44
  389. data/lib/dfp_api/v201103/forecast_service.rb +0 -36
  390. data/lib/dfp_api/v201103/forecast_service_registry.rb +0 -44
  391. data/lib/dfp_api/v201103/inventory_service.rb +0 -56
  392. data/lib/dfp_api/v201103/inventory_service_registry.rb +0 -44
  393. data/lib/dfp_api/v201103/line_item_creative_association_service_registry.rb +0 -44
  394. data/lib/dfp_api/v201103/line_item_service.rb +0 -56
  395. data/lib/dfp_api/v201103/line_item_service_registry.rb +0 -44
  396. data/lib/dfp_api/v201103/network_service.rb +0 -40
  397. data/lib/dfp_api/v201103/network_service_registry.rb +0 -44
  398. data/lib/dfp_api/v201103/order_service_registry.rb +0 -44
  399. data/lib/dfp_api/v201103/placement_service.rb +0 -56
  400. data/lib/dfp_api/v201103/placement_service_registry.rb +0 -44
  401. data/lib/dfp_api/v201103/publisher_query_language_service.rb +0 -32
  402. data/lib/dfp_api/v201103/publisher_query_language_service_registry.rb +0 -44
  403. data/lib/dfp_api/v201103/report_service_registry.rb +0 -44
  404. data/lib/dfp_api/v201103/user_service.rb +0 -60
  405. data/lib/dfp_api/v201103/user_service_registry.rb +0 -44
  406. data/lib/dfp_api/v201104/company_service.rb +0 -52
  407. data/lib/dfp_api/v201104/company_service_registry.rb +0 -44
  408. data/lib/dfp_api/v201104/creative_service.rb +0 -52
  409. data/lib/dfp_api/v201104/creative_service_registry.rb +0 -44
  410. data/lib/dfp_api/v201104/custom_targeting_service.rb +0 -60
  411. data/lib/dfp_api/v201104/custom_targeting_service_registry.rb +0 -44
  412. data/lib/dfp_api/v201104/forecast_service.rb +0 -36
  413. data/lib/dfp_api/v201104/forecast_service_registry.rb +0 -44
  414. data/lib/dfp_api/v201104/inventory_service.rb +0 -56
  415. data/lib/dfp_api/v201104/inventory_service_registry.rb +0 -44
  416. data/lib/dfp_api/v201104/line_item_creative_association_service.rb +0 -56
  417. data/lib/dfp_api/v201104/line_item_creative_association_service_registry.rb +0 -44
  418. data/lib/dfp_api/v201104/line_item_service.rb +0 -56
  419. data/lib/dfp_api/v201104/line_item_service_registry.rb +0 -44
  420. data/lib/dfp_api/v201104/network_service_registry.rb +0 -44
  421. data/lib/dfp_api/v201104/order_service.rb +0 -56
  422. data/lib/dfp_api/v201104/order_service_registry.rb +0 -44
  423. data/lib/dfp_api/v201104/placement_service.rb +0 -56
  424. data/lib/dfp_api/v201104/placement_service_registry.rb +0 -44
  425. data/lib/dfp_api/v201104/publisher_query_language_service_registry.rb +0 -44
  426. data/lib/dfp_api/v201104/report_service.rb +0 -40
  427. data/lib/dfp_api/v201104/report_service_registry.rb +0 -44
  428. data/lib/dfp_api/v201104/user_service.rb +0 -60
  429. data/lib/dfp_api/v201104/user_service_registry.rb +0 -44
  430. data/lib/dfp_api/v201107/company_service.rb +0 -52
  431. data/lib/dfp_api/v201107/company_service_registry.rb +0 -44
  432. data/lib/dfp_api/v201107/creative_service.rb +0 -52
  433. data/lib/dfp_api/v201107/creative_service_registry.rb +0 -44
  434. data/lib/dfp_api/v201107/custom_targeting_service_registry.rb +0 -44
  435. data/lib/dfp_api/v201107/forecast_service_registry.rb +0 -44
  436. data/lib/dfp_api/v201107/inventory_service_registry.rb +0 -44
  437. data/lib/dfp_api/v201107/label_service_registry.rb +0 -44
  438. data/lib/dfp_api/v201107/line_item_creative_association_service.rb +0 -56
  439. data/lib/dfp_api/v201107/line_item_creative_association_service_registry.rb +0 -44
  440. data/lib/dfp_api/v201107/line_item_service_registry.rb +0 -44
  441. data/lib/dfp_api/v201107/network_service.rb +0 -40
  442. data/lib/dfp_api/v201107/network_service_registry.rb +0 -44
  443. data/lib/dfp_api/v201107/order_service.rb +0 -56
  444. data/lib/dfp_api/v201107/order_service_registry.rb +0 -44
  445. data/lib/dfp_api/v201107/placement_service_registry.rb +0 -44
  446. data/lib/dfp_api/v201107/publisher_query_language_service.rb +0 -32
  447. data/lib/dfp_api/v201107/publisher_query_language_service_registry.rb +0 -44
  448. data/lib/dfp_api/v201107/report_service.rb +0 -40
  449. data/lib/dfp_api/v201107/report_service_registry.rb +0 -44
  450. data/lib/dfp_api/v201107/user_service_registry.rb +0 -44
data/ChangeLog CHANGED
@@ -1,3 +1,7 @@
1
+ 0.3.0:
2
+ - Added support and examples for v201203.
3
+ - Removed support for deprecated v201103, v201104, v201107.
4
+
1
5
  0.2.8:
2
6
  - Added .gemspec and updated packaging process.
3
7
  - Removed explicit require for RubyGems, see README.
data/README CHANGED
@@ -71,10 +71,8 @@ constructor:
71
71
  :method => 'ClientLogin',
72
72
  :application_name => 'Ruby DFP Sample',
73
73
  :email => 'user@domain.com',
74
- :password => 'PASSWORD'
75
- },
76
- :service => {
77
- :environment => 'SANDBOX'
74
+ :password => 'PASSWORD',
75
+ :network_code => 123456
78
76
  }
79
77
  })
80
78
 
@@ -114,7 +112,7 @@ Once the library object is created you can request services with a 'service'
114
112
  method:
115
113
  user_service = dfp.service(:UserService, <API_VERSION>)
116
114
 
117
- where <API_VERSION> is required version of DFP API as symbol, e.g. :v201201.
115
+ where <API_VERSION> is required version of DFP API as symbol, e.g. :v201203.
118
116
 
119
117
  Then you should be able to execute service methods:
120
118
 
@@ -148,7 +146,7 @@ Examples can be run by executing by running:
148
146
 
149
147
  from the "examples/<version>/<service_name>" directory i.e.
150
148
 
151
- $ cd examples/v201201/user_service
149
+ $ cd examples/v201203/user_service
152
150
  $ ruby get_all_users.rb
153
151
 
154
152
  Some examples require modification to be functional, like create_order example
@@ -8,7 +8,7 @@
8
8
  # Auth parameters for OAuth method.
9
9
  # Set the OAuth consumer key and secret. Anonymous values can be used for
10
10
  # testing, and real values can be obtained by registering your application:
11
- # http://code.google.com/apis/accounts/docs/RegistrationForWebAppsAuto.html
11
+ # https://developers.google.com/accounts/docs/RegistrationForWebAppsAuto
12
12
  #:oauth_consumer_key: anonymous
13
13
  #:oauth_consumer_secret: anonymous
14
14
  # If you manage or store access token manually, you can specify it here.
@@ -26,6 +26,10 @@
26
26
 
27
27
  # Other parameters.
28
28
  :application_name: dfp_ruby_examples
29
+
30
+ # Starting in v201203, network_code is required for all calls other than
31
+ # GetAllNetworks and MakeTestNetwork. In earlier versions, networkCode is
32
+ # optional if the user belongs to only one network.
29
33
  :network_code: INSERT_NETWORK_CODE_HERE
30
34
  :service:
31
35
  :environment: SANDBOX
@@ -1,8 +1,9 @@
1
- #!/usr/bin/ruby
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
2
3
  #
3
4
  # Author:: api.dklimkin@gmail.com (Danial Klimkin)
4
5
  #
5
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
6
7
  #
7
8
  # License:: Licensed under the Apache License, Version 2.0 (the "License");
8
9
  # you may not use this file except in compliance with the License.
@@ -17,16 +18,16 @@
17
18
  # See the License for the specific language governing permissions and
18
19
  # limitations under the License.
19
20
  #
20
- # This example gets all orders. To create orders, run create_orders.rb.
21
+ # This code example gets all audience segments.
21
22
  #
22
- # Tags: OrderService.getOrdersByStatement
23
+ # Tags: AudienceSegmentService.getAudienceSegmentsByStatement
23
24
 
24
25
  require 'dfp_api'
25
26
 
26
- API_VERSION = :v201104
27
+ API_VERSION = :v201203
27
28
  PAGE_SIZE = 500
28
29
 
29
- def get_all_orders()
30
+ def get_all_audience_segments()
30
31
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
31
32
  dfp = DfpApi::Api.new
32
33
 
@@ -34,8 +35,8 @@ def get_all_orders()
34
35
  # the configuration file or provide your own logger:
35
36
  # dfp.logger = Logger.new('dfp_xml.log')
36
37
 
37
- # Get the OrderService.
38
- order_service = dfp.service(:OrderService, API_VERSION)
38
+ # Get the AudienceSegmentService.
39
+ audience_segment_service = dfp.service(:AudienceSegmentService, API_VERSION)
39
40
 
40
41
  # Define initial values.
41
42
  offset = 0
@@ -45,8 +46,9 @@ def get_all_orders()
45
46
  # Create statement for one page with current offset.
46
47
  statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
47
48
 
48
- # Get orders by statement.
49
- page = order_service.get_orders_by_statement(statement)
49
+ # Get audience segments by statement.
50
+ page =
51
+ audience_segment_service.get_audience_segments_by_statement(statement)
50
52
 
51
53
  if page[:results]
52
54
  # Increase query offset by page size.
@@ -55,24 +57,23 @@ def get_all_orders()
55
57
  # Get the start index for printout.
56
58
  start_index = page[:start_index]
57
59
 
58
- # Print details about each order in results page.
59
- page[:results].each_with_index do |order, index|
60
- puts "%d) Order ID: %d, name: %s, advertiser ID: %d" %
61
- [index + start_index, order[:id], order[:name],
62
- order[:advertiser_id]]
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]]
63
64
  end
64
65
  end
65
66
  end while offset < page[:total_result_set_size]
66
67
 
67
68
  # Print a footer
68
69
  if page.include?(:total_result_set_size)
69
- puts "Total number of orders: %d" % page[:total_result_set_size]
70
+ puts "Total number of audience segments: %d" % page[:total_result_set_size]
70
71
  end
71
72
  end
72
73
 
73
74
  if __FILE__ == $0
74
75
  begin
75
- get_all_orders()
76
+ get_all_audience_segments()
76
77
 
77
78
  # HTTP errors.
78
79
  rescue AdsCommon::Errors::HttpError => e
@@ -23,7 +23,7 @@
23
23
 
24
24
  require 'dfp_api'
25
25
 
26
- API_VERSION = :v201103
26
+ API_VERSION = :v201203
27
27
 
28
28
  def produce_api_error()
29
29
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -24,7 +24,7 @@
24
24
 
25
25
  require 'dfp_api'
26
26
 
27
- API_VERSION = :v201107
27
+ API_VERSION = :v201203
28
28
  PAGE_SIZE = 500
29
29
  MAX_RETRIES = 3
30
30
 
@@ -24,7 +24,7 @@
24
24
 
25
25
  require 'dfp_api'
26
26
 
27
- API_VERSION = :v201107
27
+ API_VERSION = :v201203
28
28
  # Number of companies to create.
29
29
  ITEM_COUNT = 5
30
30
 
@@ -23,7 +23,7 @@
23
23
 
24
24
  require 'dfp_api'
25
25
 
26
- API_VERSION = :v201107
26
+ API_VERSION = :v201203
27
27
  PAGE_SIZE = 500
28
28
 
29
29
  def get_all_companies()
@@ -25,7 +25,7 @@
25
25
 
26
26
  require 'dfp_api'
27
27
 
28
- API_VERSION = :v201104
28
+ API_VERSION = :v201203
29
29
 
30
30
  def get_companies_by_statement()
31
31
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -24,7 +24,7 @@
24
24
 
25
25
  require 'dfp_api'
26
26
 
27
- API_VERSION = :v201104
27
+ API_VERSION = :v201203
28
28
 
29
29
  def get_company()
30
30
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -25,7 +25,7 @@
25
25
 
26
26
  require 'dfp_api'
27
27
 
28
- API_VERSION = :v201107
28
+ API_VERSION = :v201203
29
29
 
30
30
  def update_companies()
31
31
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -17,17 +17,18 @@
17
17
  # See the License for the specific language governing permissions and
18
18
  # limitations under the License.
19
19
  #
20
- # This example gets all users for an account. To create users run
21
- # create_users.rb.
20
+ # This example gets all content.
22
21
  #
23
- # Tags: UserService.getUsersByStatement
22
+ # This feature is only available to DFP video publishers.
23
+ #
24
+ # Tags: ContentService.getContentByStatement
24
25
 
25
26
  require 'dfp_api'
26
27
 
27
- API_VERSION = :v201103
28
+ API_VERSION = :v201203
28
29
  PAGE_SIZE = 500
29
30
 
30
- def get_all_users()
31
+ def get_all_content()
31
32
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
32
33
  dfp = DfpApi::Api.new
33
34
 
@@ -35,8 +36,8 @@ def get_all_users()
35
36
  # the configuration file or provide your own logger:
36
37
  # dfp.logger = Logger.new('dfp_xml.log')
37
38
 
38
- # Get the UserService.
39
- user_service = dfp.service(:UserService, API_VERSION)
39
+ # Get the ContentService.
40
+ content_service = dfp.service(:ContentService, API_VERSION)
40
41
 
41
42
  # Define initial values.
42
43
  offset = 0
@@ -46,8 +47,8 @@ def get_all_users()
46
47
  # Create statement for one page with current offset.
47
48
  statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
48
49
 
49
- # Get users by statement.
50
- page = user_service.get_users_by_statement(statement)
50
+ # Get content by statement.
51
+ page = content_service.get_content_by_statement(statement)
51
52
 
52
53
  if page[:results]
53
54
  # Increase query offset by page size.
@@ -56,23 +57,23 @@ def get_all_users()
56
57
  # Get the start index for printout.
57
58
  start_index = page[:start_index]
58
59
 
59
- # Print details about each user in results page.
60
- page[:results].each_with_index do |user, index|
61
- puts "%d) User ID: %d, name: %s, email: %s" %
62
- [index + start_index, user[:id], user[:name], user[:email]]
60
+ # Print details about each content object in results page.
61
+ page[:results].each_with_index do |content, index|
62
+ puts "%d) Content ID: %d, name: %s, status: %s." % [index + start_index,
63
+ content[:id], content[:name], content[:status]]
63
64
  end
64
65
  end
65
66
  end while offset < page[:total_result_set_size]
66
67
 
67
68
  # Print a footer
68
69
  if page.include?(:total_result_set_size)
69
- puts "Total number of users: %d" % page[:total_result_set_size]
70
+ puts "Total number of results: %d" % page[:total_result_set_size]
70
71
  end
71
72
  end
72
73
 
73
74
  if __FILE__ == $0
74
75
  begin
75
- get_all_users()
76
+ get_all_content()
76
77
 
77
78
  # HTTP errors.
78
79
  rescue AdsCommon::Errors::HttpError => e
@@ -0,0 +1,135 @@
1
+ #!/usr/bin/ruby
2
+ #
3
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
4
+ #
5
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
6
+ #
7
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
16
+ # implied.
17
+ # See the License for the specific language governing permissions and
18
+ # limitations under the License.
19
+ #
20
+ # This example gets all active content categorized as "comedy" using the
21
+ # network's content browse custom targeting key.
22
+ #
23
+ # This feature is only available to DFP video publishers.
24
+ #
25
+ # Tags: NetworkService.getCurrentNetwork,
26
+ # ContentService.getContentByStatementAndCustomTargetingValue
27
+ # CustomTargetingService.getCustomTargetingValuesByStatement
28
+
29
+ require 'dfp_api'
30
+
31
+ API_VERSION = :v201203
32
+ PAGE_SIZE = 500
33
+
34
+ def get_content_by_statement()
35
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
36
+ dfp = DfpApi::Api.new
37
+
38
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
39
+ # the configuration file or provide your own logger:
40
+ # dfp.logger = Logger.new('dfp_xml.log')
41
+
42
+ # Get the NetworkService.
43
+ network_service = dfp.service(:NetworkService, API_VERSION)
44
+
45
+ # Get content browse custom targeting key ID.
46
+ current_network = network_service.get_current_network
47
+ content_browse_custom_targeting_key_id =
48
+ current_network[:content_browse_custom_targeting_key_id]
49
+
50
+ # Get the CustomTargetingService.
51
+ custom_targeting_service = dfp.service(:CustomTargetingService, API_VERSION)
52
+
53
+ # Create a statement to select the categories matching the name comedy.
54
+ statement = {
55
+ :query => 'WHERE customTargetingKeyId = :targeting_key_id' +
56
+ ' and name = :category LIMIT 1',
57
+ :values => [
58
+ {:key => 'targeting_key_id',
59
+ :value => {:value => content_browse_custom_targeting_key_id,
60
+ :xsi_type => 'NumberValue'}},
61
+ {:key => 'category',
62
+ :value => {:value => 'comedy',
63
+ :xsi_type => 'TextValue'}},
64
+ ]
65
+ }
66
+
67
+ # Get categories matching the filter statement.
68
+ page = custom_targeting_service.get_custom_targeting_values_by_statement(
69
+ statement)
70
+
71
+ # Get the custom targeting value ID for the comedy category.
72
+ category_custom_targeting_value_id = page[:results].first()[:id]
73
+
74
+ # Get the ContentService.
75
+ content_service = dfp.service(:ContentService, API_VERSION)
76
+
77
+ # Define initial values.
78
+ offset = 0
79
+ page = {}
80
+
81
+ statement_text = 'WHERE status = :status'
82
+ statement = {
83
+ :query => statement_text,
84
+ :values => [
85
+ {:key => 'status',
86
+ :value => {:value => 'ACTIVE', :xsi_type => 'TextValue'}}
87
+ ]
88
+ }
89
+
90
+ begin
91
+ # Create a statement to get one page with current offset.
92
+ statement[:query] = statement_text +
93
+ " LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]
94
+
95
+ # Get content by statement.
96
+ page = content_service.get_content_by_statement_and_custom_targeting_value(
97
+ statement, category_custom_targeting_value_id)
98
+
99
+ if page[:results]
100
+ # Increase query offset by page size.
101
+ offset += PAGE_SIZE
102
+
103
+ page[:results].each_with_index do |content, index|
104
+ puts "%d) Content ID: %d, name: %s, status: %s." % [index + start_index,
105
+ content[:id], content[:name], content[:status]]
106
+ end
107
+ end
108
+ end while offset < page[:total_result_set_size]
109
+
110
+ # Print a footer.
111
+ if page.include?(:total_result_set_size)
112
+ puts "Number of results found: %d" % page[:total_result_set_size]
113
+ end
114
+ end
115
+
116
+ if __FILE__ == $0
117
+ begin
118
+ get_content_by_statement()
119
+
120
+ # HTTP errors.
121
+ rescue AdsCommon::Errors::HttpError => e
122
+ puts "HTTP Error: %s" % e
123
+
124
+ # API errors.
125
+ rescue DfpApi::Errors::ApiException => e
126
+ puts "Message: %s" % e.message
127
+ puts 'Errors:'
128
+ e.errors.each_with_index do |error, index|
129
+ puts "\tError [%d]:" % (index + 1)
130
+ error.each do |field, value|
131
+ puts "\t\t%s: %s" % [field, value]
132
+ end
133
+ end
134
+ end
135
+ end
@@ -27,7 +27,7 @@ require 'dfp_api'
27
27
 
28
28
  require 'base64'
29
29
 
30
- API_VERSION = :v201107
30
+ API_VERSION = :v201203
31
31
 
32
32
  def copy_image_creatives()
33
33
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -0,0 +1,138 @@
1
+ #!/usr/bin/ruby
2
+ #
3
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
4
+ #
5
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
6
+ #
7
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
16
+ # implied.
17
+ # See the License for the specific language governing permissions and
18
+ # limitations under the License.
19
+ #
20
+ # This example creates a new template creative for a given advertiser. To
21
+ # determine which companies are advertisers, run get_companies_by_statement.rb.
22
+ # To determine which creatives already exist, run get_all_creatives.rb. To
23
+ # determine which creative templates run get_all_creative_templates.rb.
24
+ #
25
+ # Tags: CreativeService.createCreative
26
+
27
+ require 'base64'
28
+ require 'dfp_api'
29
+
30
+ API_VERSION = :v201203
31
+
32
+ def create_creative_from_template()
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
+ # Get the CreativeService.
41
+ creative_service = dfp.service(:CreativeService, API_VERSION)
42
+
43
+ # Set the ID of the advertiser (company) that all creatives will be assigned
44
+ # to.
45
+ advertiser_id = 'INSERT_ADVERTISER_COMPANY_ID_HERE'.to_i
46
+
47
+ # Use the image banner with optional third party tracking template.
48
+ creative_template_id = 10000680
49
+
50
+ # Create the local custom creative object.
51
+ creative = {
52
+ :xsi_type => 'TemplateCreative',
53
+ :name => 'Template creative',
54
+ :advertiser_id => advertiser_id,
55
+ :creative_template_id => creative_template_id,
56
+ :size => {:width => 300, :height => 250, :is_aspect_ratio => false}
57
+ }
58
+
59
+ # Prepare image data for asset value.
60
+ image_url =
61
+ 'http://www.google.com/intl/en/adwords/select/images/samples/inline.jpg'
62
+ image_data = AdsCommon::Http.get(image_url)
63
+ image_data_base64 = Base64.encode64(image_data)
64
+
65
+ # Create the asset variable value.
66
+ asset_variable_value = {
67
+ :xsi_type => 'AssetCreativeTemplateVariableValue',
68
+ :unique_name => 'Imagefile',
69
+ :asset_byte_array => image_data_base64,
70
+ # Filenames must be unique.
71
+ :file_name => "image%d.jpg" % Time.new.to_i
72
+ }
73
+
74
+ # Create the image width variable value.
75
+ image_width_variable_value = {
76
+ :xsi_type => 'LongCreativeTemplateVariableValue',
77
+ :unique_name => 'Imagewidth',
78
+ :value => 300
79
+ }
80
+
81
+ # Create the image height variable value.
82
+ image_height_variable_value = {
83
+ :xsi_type => 'LongCreativeTemplateVariableValue',
84
+ :unique_name => 'Imageheight',
85
+ :value => 250
86
+ }
87
+
88
+ # Create the URL variable value.
89
+ url_variable_value = {
90
+ :xsi_type => 'UrlCreativeTemplateVariableValue',
91
+ :unique_name => 'ClickthroughURL',
92
+ :value => 'www.google.com'
93
+ }
94
+
95
+ # Create the target window variable value.
96
+ target_window_variable_value = {
97
+ :xsi_type => 'StringCreativeTemplateVariableValue',
98
+ :unique_name => 'Targetwindow',
99
+ :value => '__blank'
100
+ }
101
+
102
+ creative[:creative_template_variable_values] = [asset_variable_value,
103
+ image_width_variable_value, image_height_variable_value,
104
+ url_variable_value, target_window_variable_value]
105
+
106
+ # Create the creatives on the server.
107
+ return_creative = creative_service.create_creative(creative)
108
+
109
+ if return_creative
110
+ puts(("Template creative with ID: %d, name: %s and type '%s' was " +
111
+ "created and can be previewed at: '%s'") %
112
+ [return_creative[:id], return_creative[:name],
113
+ return_creative[:creative_type], return_creative[:preview_url]])
114
+ else
115
+ raise 'No creatives were created.'
116
+ end
117
+ end
118
+
119
+ if __FILE__ == $0
120
+ begin
121
+ create_creative_from_template()
122
+
123
+ # HTTP errors.
124
+ rescue AdsCommon::Errors::HttpError => e
125
+ puts "HTTP Error: %s" % e
126
+
127
+ # API errors.
128
+ rescue DfpApi::Errors::ApiException => e
129
+ puts "Message: %s" % e.message
130
+ puts 'Errors:'
131
+ e.errors.each_with_index do |error, index|
132
+ puts "\tError [%d]:" % (index + 1)
133
+ error.each do |field, value|
134
+ puts "\t\t%s: %s" % [field, value]
135
+ end
136
+ end
137
+ end
138
+ end