google-dfp-api 0.3.0 → 0.3.1

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 (318) hide show
  1. data/ChangeLog +5 -0
  2. data/README +4 -4
  3. data/examples/v201203/line_item_service/update_line_items.rb +1 -1
  4. data/examples/v201204/audience_segment_service/get_all_audience_segments.rb +93 -0
  5. data/examples/v201204/common/error_handling.rb +76 -0
  6. data/examples/v201204/common/oauth_handling.rb +128 -0
  7. data/examples/v201204/company_service/create_companies.rb +81 -0
  8. data/examples/v201204/company_service/get_all_companies.rb +92 -0
  9. data/examples/v201204/company_service/get_companies_by_statement.rb +88 -0
  10. data/examples/v201204/company_service/get_company.rb +72 -0
  11. data/examples/v201204/company_service/update_companies.rb +95 -0
  12. data/examples/v201204/content_service/get_all_content.rb +94 -0
  13. data/examples/v201204/content_service/get_content_by_category.rb +136 -0
  14. data/examples/v201204/creative_service/copy_image_creatives.rb +115 -0
  15. data/examples/v201204/creative_service/create_creative_from_template.rb +139 -0
  16. data/examples/v201204/creative_service/create_creatives.rb +106 -0
  17. data/examples/v201204/creative_service/create_custom_creative.rb +104 -0
  18. data/examples/v201204/creative_service/get_all_creatives.rb +93 -0
  19. data/examples/v201204/creative_service/get_creative.rb +72 -0
  20. data/examples/v201204/creative_service/get_creatives_by_statement.rb +87 -0
  21. data/examples/v201204/creative_service/update_creatives.rb +96 -0
  22. data/examples/v201204/creative_template_service/get_all_creative_templates.rb +94 -0
  23. data/examples/v201204/creative_template_service/get_creative_template.rb +74 -0
  24. data/examples/v201204/creative_template_service/get_creative_templates_by_statement.rb +80 -0
  25. data/examples/v201204/custom_field_service/create_custom_field_options.rb +87 -0
  26. data/examples/v201204/custom_field_service/create_custom_fields.rb +86 -0
  27. data/examples/v201204/custom_field_service/deactivate_all_line_item_custom_fields.rb +112 -0
  28. data/examples/v201204/custom_field_service/get_all_custom_fields.rb +102 -0
  29. data/examples/v201204/custom_field_service/get_all_line_item_custom_fields.rb +86 -0
  30. data/examples/v201204/custom_field_service/set_line_item_custom_field_value.rb +135 -0
  31. data/examples/v201204/custom_field_service/update_custom_fields.rb +83 -0
  32. data/examples/v201204/custom_targeting_service/create_custom_targeting_keys_and_values.rb +140 -0
  33. data/examples/v201204/custom_targeting_service/delete_custom_targeting_keys.rb +121 -0
  34. data/examples/v201204/custom_targeting_service/delete_custom_targeting_values.rb +125 -0
  35. data/examples/v201204/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +148 -0
  36. data/examples/v201204/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +92 -0
  37. data/examples/v201204/custom_targeting_service/get_custom_targeting_values_by_statement.rb +98 -0
  38. data/examples/v201204/custom_targeting_service/update_custom_targeting_keys.rb +94 -0
  39. data/examples/v201204/custom_targeting_service/update_custom_targeting_values.rb +106 -0
  40. data/examples/v201204/forecast_service/get_forecast.rb +107 -0
  41. data/examples/v201204/forecast_service/get_forecast_by_id.rb +80 -0
  42. data/examples/v201204/inventory_service/create_ad_units.rb +101 -0
  43. data/examples/v201204/inventory_service/create_mobile_ad_unit.rb +100 -0
  44. data/examples/v201204/inventory_service/create_video_ad_unit.rb +108 -0
  45. data/examples/v201204/inventory_service/deactivate_ad_units.rb +119 -0
  46. data/examples/v201204/inventory_service/get_ad_unit.rb +72 -0
  47. data/examples/v201204/inventory_service/get_ad_unit_sizes.rb +85 -0
  48. data/examples/v201204/inventory_service/get_ad_units_by_statement.rb +96 -0
  49. data/examples/v201204/inventory_service/get_all_ad_units.rb +93 -0
  50. data/examples/v201204/inventory_service/update_ad_units.rb +94 -0
  51. data/examples/v201204/label_service/create_labels.rb +83 -0
  52. data/examples/v201204/label_service/deactivate_labels.rb +118 -0
  53. data/examples/v201204/label_service/get_all_labels.rb +95 -0
  54. data/examples/v201204/label_service/get_label.rb +76 -0
  55. data/examples/v201204/label_service/get_labels_by_statement.rb +81 -0
  56. data/examples/v201204/label_service/update_labels.rb +102 -0
  57. data/examples/v201204/line_item_creative_association_service/create_licas.rb +94 -0
  58. data/examples/v201204/line_item_creative_association_service/deactivate_licas.rb +127 -0
  59. data/examples/v201204/line_item_creative_association_service/get_all_licas.rb +95 -0
  60. data/examples/v201204/line_item_creative_association_service/get_lica.rb +77 -0
  61. data/examples/v201204/line_item_creative_association_service/get_licas_by_statement.rb +91 -0
  62. data/examples/v201204/line_item_creative_association_service/update_licas.rb +91 -0
  63. data/examples/v201204/line_item_service/activate_line_items.rb +131 -0
  64. data/examples/v201204/line_item_service/create_line_items.rb +177 -0
  65. data/examples/v201204/line_item_service/create_mobile_line_item.rb +135 -0
  66. data/examples/v201204/line_item_service/create_video_line_item.rb +156 -0
  67. data/examples/v201204/line_item_service/get_all_line_items.rb +94 -0
  68. data/examples/v201204/line_item_service/get_line_item.rb +74 -0
  69. data/examples/v201204/line_item_service/get_line_items_by_statement.rb +93 -0
  70. data/examples/v201204/line_item_service/get_recently_updated_line_items.rb +98 -0
  71. data/examples/v201204/line_item_service/target_custom_criteria.rb +129 -0
  72. data/examples/v201204/line_item_service/update_line_items.rb +109 -0
  73. data/examples/v201204/network_service/get_all_networks.rb +74 -0
  74. data/examples/v201204/network_service/get_current_network.rb +66 -0
  75. data/examples/v201204/network_service/make_test_network.rb +76 -0
  76. data/examples/v201204/order_service/approve_orders.rb +122 -0
  77. data/examples/v201204/order_service/create_orders.rb +92 -0
  78. data/examples/v201204/order_service/get_all_orders.rb +93 -0
  79. data/examples/v201204/order_service/get_order.rb +74 -0
  80. data/examples/v201204/order_service/get_orders_by_statement.rb +90 -0
  81. data/examples/v201204/order_service/update_orders.rb +95 -0
  82. data/examples/v201204/placement_service/create_placements.rb +131 -0
  83. data/examples/v201204/placement_service/deactivate_placements.rb +118 -0
  84. data/examples/v201204/placement_service/get_all_placements.rb +93 -0
  85. data/examples/v201204/placement_service/get_placement.rb +74 -0
  86. data/examples/v201204/placement_service/get_placements_by_statement.rb +86 -0
  87. data/examples/v201204/placement_service/update_placements.rb +97 -0
  88. data/examples/v201204/publisher_query_language_service/get_all_cities.rb +90 -0
  89. data/examples/v201204/report_service/download_report.rb +81 -0
  90. data/examples/v201204/report_service/run_delivery_report.rb +103 -0
  91. data/examples/v201204/report_service/run_inventory_report.rb +92 -0
  92. data/examples/v201204/report_service/run_merged_delivery_report.rb +94 -0
  93. data/examples/v201204/report_service/run_sales_report.rb +89 -0
  94. data/examples/v201204/suggested_ad_unit_service/approve_all_suggested_ad_units.rb +109 -0
  95. data/examples/v201204/suggested_ad_unit_service/get_all_suggested_ad_units.rb +96 -0
  96. data/examples/v201204/suggested_ad_unit_service/get_suggested_ad_unit.rb +75 -0
  97. data/examples/v201204/suggested_ad_unit_service/get_suggested_ad_units_by_statement.rb +92 -0
  98. data/examples/v201204/team_service/create_teams.rb +83 -0
  99. data/examples/v201204/team_service/get_all_teams.rb +92 -0
  100. data/examples/v201204/team_service/get_team.rb +74 -0
  101. data/examples/v201204/team_service/get_teams_by_statement.rb +78 -0
  102. data/examples/v201204/team_service/update_teams.rb +95 -0
  103. data/examples/v201204/third_party_slot_service/archive_third_party_slots.rb +125 -0
  104. data/examples/v201204/third_party_slot_service/create_third_party_slot.rb +91 -0
  105. data/examples/v201204/third_party_slot_service/get_all_third_party_slots.rb +93 -0
  106. data/examples/v201204/third_party_slot_service/get_third_party_slot_by_statement.rb +86 -0
  107. data/examples/v201204/third_party_slot_service/update_third_party_slots.rb +95 -0
  108. data/examples/v201204/user_service/create_users.rb +89 -0
  109. data/examples/v201204/user_service/deactivate_users.rb +97 -0
  110. data/examples/v201204/user_service/get_all_roles.rb +73 -0
  111. data/examples/v201204/user_service/get_all_users.rb +93 -0
  112. data/examples/v201204/user_service/get_current_user.rb +66 -0
  113. data/examples/v201204/user_service/get_user.rb +73 -0
  114. data/examples/v201204/user_service/get_users_by_statement.rb +79 -0
  115. data/examples/v201204/user_service/update_users.rb +89 -0
  116. data/examples/v201204/user_team_association_service/create_user_team_associations.rb +86 -0
  117. data/examples/v201204/user_team_association_service/delete_user_team_associations.rb +111 -0
  118. data/examples/v201204/user_team_association_service/get_all_user_team_associations.rb +94 -0
  119. data/examples/v201204/user_team_association_service/get_user_team_association.rb +76 -0
  120. data/examples/v201204/user_team_association_service/get_user_team_associations_by_statement.rb +94 -0
  121. data/examples/v201204/user_team_association_service/update_user_team_associations.rb +102 -0
  122. data/lib/dfp_api.rb +9 -15
  123. data/lib/dfp_api/api_config.rb +24 -20
  124. data/lib/dfp_api/client_login_header_handler.rb +17 -21
  125. data/lib/dfp_api/credential_handler.rb +16 -24
  126. data/lib/dfp_api/v201108/company_service.rb +3 -3
  127. data/lib/dfp_api/v201108/company_service_registry.rb +1 -1
  128. data/lib/dfp_api/v201108/creative_service.rb +3 -3
  129. data/lib/dfp_api/v201108/creative_service_registry.rb +1 -1
  130. data/lib/dfp_api/v201108/custom_targeting_service.rb +3 -3
  131. data/lib/dfp_api/v201108/custom_targeting_service_registry.rb +1 -1
  132. data/lib/dfp_api/v201108/forecast_service.rb +3 -3
  133. data/lib/dfp_api/v201108/forecast_service_registry.rb +1 -1
  134. data/lib/dfp_api/v201108/inventory_service.rb +3 -3
  135. data/lib/dfp_api/v201108/inventory_service_registry.rb +1 -1
  136. data/lib/dfp_api/v201108/label_service.rb +3 -3
  137. data/lib/dfp_api/v201108/label_service_registry.rb +1 -1
  138. data/lib/dfp_api/v201108/line_item_creative_association_service.rb +3 -3
  139. data/lib/dfp_api/v201108/line_item_creative_association_service_registry.rb +1 -1
  140. data/lib/dfp_api/v201108/line_item_service.rb +3 -3
  141. data/lib/dfp_api/v201108/line_item_service_registry.rb +1 -1
  142. data/lib/dfp_api/v201108/network_service.rb +3 -3
  143. data/lib/dfp_api/v201108/network_service_registry.rb +1 -1
  144. data/lib/dfp_api/v201108/order_service.rb +3 -3
  145. data/lib/dfp_api/v201108/order_service_registry.rb +1 -1
  146. data/lib/dfp_api/v201108/placement_service.rb +3 -3
  147. data/lib/dfp_api/v201108/placement_service_registry.rb +1 -1
  148. data/lib/dfp_api/v201108/publisher_query_language_service.rb +3 -3
  149. data/lib/dfp_api/v201108/publisher_query_language_service_registry.rb +1 -1
  150. data/lib/dfp_api/v201108/report_service.rb +3 -3
  151. data/lib/dfp_api/v201108/report_service_registry.rb +1 -1
  152. data/lib/dfp_api/v201108/third_party_slot_service.rb +3 -3
  153. data/lib/dfp_api/v201108/third_party_slot_service_registry.rb +1 -1
  154. data/lib/dfp_api/v201108/user_service.rb +3 -3
  155. data/lib/dfp_api/v201108/user_service_registry.rb +1 -1
  156. data/lib/dfp_api/v201111/company_service.rb +3 -3
  157. data/lib/dfp_api/v201111/company_service_registry.rb +1 -1
  158. data/lib/dfp_api/v201111/content_service.rb +3 -3
  159. data/lib/dfp_api/v201111/content_service_registry.rb +1 -1
  160. data/lib/dfp_api/v201111/creative_service.rb +3 -3
  161. data/lib/dfp_api/v201111/creative_service_registry.rb +1 -1
  162. data/lib/dfp_api/v201111/creative_template_service.rb +3 -3
  163. data/lib/dfp_api/v201111/creative_template_service_registry.rb +1 -1
  164. data/lib/dfp_api/v201111/custom_targeting_service.rb +3 -3
  165. data/lib/dfp_api/v201111/custom_targeting_service_registry.rb +1 -1
  166. data/lib/dfp_api/v201111/forecast_service.rb +3 -3
  167. data/lib/dfp_api/v201111/forecast_service_registry.rb +1 -1
  168. data/lib/dfp_api/v201111/inventory_service.rb +3 -3
  169. data/lib/dfp_api/v201111/inventory_service_registry.rb +1 -1
  170. data/lib/dfp_api/v201111/label_service.rb +3 -3
  171. data/lib/dfp_api/v201111/label_service_registry.rb +1 -1
  172. data/lib/dfp_api/v201111/line_item_creative_association_service.rb +3 -3
  173. data/lib/dfp_api/v201111/line_item_creative_association_service_registry.rb +1 -1
  174. data/lib/dfp_api/v201111/line_item_service.rb +3 -3
  175. data/lib/dfp_api/v201111/line_item_service_registry.rb +1 -1
  176. data/lib/dfp_api/v201111/network_service.rb +3 -3
  177. data/lib/dfp_api/v201111/network_service_registry.rb +1 -1
  178. data/lib/dfp_api/v201111/order_service.rb +3 -3
  179. data/lib/dfp_api/v201111/order_service_registry.rb +1 -1
  180. data/lib/dfp_api/v201111/placement_service.rb +3 -3
  181. data/lib/dfp_api/v201111/placement_service_registry.rb +1 -1
  182. data/lib/dfp_api/v201111/publisher_query_language_service.rb +3 -3
  183. data/lib/dfp_api/v201111/publisher_query_language_service_registry.rb +1 -1
  184. data/lib/dfp_api/v201111/report_service.rb +3 -3
  185. data/lib/dfp_api/v201111/report_service_registry.rb +1 -1
  186. data/lib/dfp_api/v201111/suggested_ad_unit_service.rb +3 -3
  187. data/lib/dfp_api/v201111/suggested_ad_unit_service_registry.rb +2 -2
  188. data/lib/dfp_api/v201111/third_party_slot_service.rb +3 -3
  189. data/lib/dfp_api/v201111/third_party_slot_service_registry.rb +1 -1
  190. data/lib/dfp_api/v201111/user_service.rb +3 -3
  191. data/lib/dfp_api/v201111/user_service_registry.rb +1 -1
  192. data/lib/dfp_api/v201201/company_service.rb +3 -3
  193. data/lib/dfp_api/v201201/company_service_registry.rb +1 -1
  194. data/lib/dfp_api/v201201/content_service.rb +3 -3
  195. data/lib/dfp_api/v201201/content_service_registry.rb +1 -1
  196. data/lib/dfp_api/v201201/creative_service.rb +3 -3
  197. data/lib/dfp_api/v201201/creative_service_registry.rb +1 -1
  198. data/lib/dfp_api/v201201/creative_template_service.rb +3 -3
  199. data/lib/dfp_api/v201201/creative_template_service_registry.rb +1 -1
  200. data/lib/dfp_api/v201201/custom_targeting_service.rb +3 -3
  201. data/lib/dfp_api/v201201/custom_targeting_service_registry.rb +1 -1
  202. data/lib/dfp_api/v201201/forecast_service.rb +3 -3
  203. data/lib/dfp_api/v201201/forecast_service_registry.rb +1 -1
  204. data/lib/dfp_api/v201201/inventory_service.rb +3 -3
  205. data/lib/dfp_api/v201201/inventory_service_registry.rb +1 -1
  206. data/lib/dfp_api/v201201/label_service.rb +3 -3
  207. data/lib/dfp_api/v201201/label_service_registry.rb +1 -1
  208. data/lib/dfp_api/v201201/line_item_creative_association_service.rb +3 -3
  209. data/lib/dfp_api/v201201/line_item_creative_association_service_registry.rb +1 -1
  210. data/lib/dfp_api/v201201/line_item_service.rb +3 -3
  211. data/lib/dfp_api/v201201/line_item_service_registry.rb +1 -1
  212. data/lib/dfp_api/v201201/network_service.rb +3 -3
  213. data/lib/dfp_api/v201201/network_service_registry.rb +1 -1
  214. data/lib/dfp_api/v201201/order_service.rb +3 -3
  215. data/lib/dfp_api/v201201/order_service_registry.rb +1 -1
  216. data/lib/dfp_api/v201201/placement_service.rb +3 -3
  217. data/lib/dfp_api/v201201/placement_service_registry.rb +1 -1
  218. data/lib/dfp_api/v201201/publisher_query_language_service.rb +3 -3
  219. data/lib/dfp_api/v201201/publisher_query_language_service_registry.rb +1 -1
  220. data/lib/dfp_api/v201201/report_service.rb +3 -3
  221. data/lib/dfp_api/v201201/report_service_registry.rb +1 -1
  222. data/lib/dfp_api/v201201/suggested_ad_unit_service.rb +3 -3
  223. data/lib/dfp_api/v201201/suggested_ad_unit_service_registry.rb +2 -2
  224. data/lib/dfp_api/v201201/team_service.rb +3 -3
  225. data/lib/dfp_api/v201201/team_service_registry.rb +1 -1
  226. data/lib/dfp_api/v201201/third_party_slot_service.rb +3 -3
  227. data/lib/dfp_api/v201201/third_party_slot_service_registry.rb +1 -1
  228. data/lib/dfp_api/v201201/user_service.rb +3 -3
  229. data/lib/dfp_api/v201201/user_service_registry.rb +1 -1
  230. data/lib/dfp_api/v201203/audience_segment_service.rb +3 -3
  231. data/lib/dfp_api/v201203/audience_segment_service_registry.rb +1 -1
  232. data/lib/dfp_api/v201203/company_service.rb +3 -3
  233. data/lib/dfp_api/v201203/company_service_registry.rb +1 -1
  234. data/lib/dfp_api/v201203/content_service.rb +3 -3
  235. data/lib/dfp_api/v201203/content_service_registry.rb +1 -1
  236. data/lib/dfp_api/v201203/creative_service.rb +3 -3
  237. data/lib/dfp_api/v201203/creative_service_registry.rb +1 -1
  238. data/lib/dfp_api/v201203/creative_template_service.rb +3 -3
  239. data/lib/dfp_api/v201203/creative_template_service_registry.rb +1 -1
  240. data/lib/dfp_api/v201203/custom_targeting_service.rb +3 -3
  241. data/lib/dfp_api/v201203/custom_targeting_service_registry.rb +1 -1
  242. data/lib/dfp_api/v201203/forecast_service.rb +3 -3
  243. data/lib/dfp_api/v201203/forecast_service_registry.rb +1 -1
  244. data/lib/dfp_api/v201203/inventory_service.rb +3 -3
  245. data/lib/dfp_api/v201203/inventory_service_registry.rb +1 -1
  246. data/lib/dfp_api/v201203/label_service.rb +3 -3
  247. data/lib/dfp_api/v201203/label_service_registry.rb +1 -1
  248. data/lib/dfp_api/v201203/line_item_creative_association_service.rb +3 -3
  249. data/lib/dfp_api/v201203/line_item_creative_association_service_registry.rb +1 -1
  250. data/lib/dfp_api/v201203/line_item_service.rb +3 -3
  251. data/lib/dfp_api/v201203/line_item_service_registry.rb +1 -1
  252. data/lib/dfp_api/v201203/network_service.rb +3 -3
  253. data/lib/dfp_api/v201203/network_service_registry.rb +1 -1
  254. data/lib/dfp_api/v201203/order_service.rb +3 -3
  255. data/lib/dfp_api/v201203/order_service_registry.rb +1 -1
  256. data/lib/dfp_api/v201203/placement_service.rb +3 -3
  257. data/lib/dfp_api/v201203/placement_service_registry.rb +1 -1
  258. data/lib/dfp_api/v201203/publisher_query_language_service.rb +3 -3
  259. data/lib/dfp_api/v201203/publisher_query_language_service_registry.rb +1 -1
  260. data/lib/dfp_api/v201203/report_service.rb +3 -3
  261. data/lib/dfp_api/v201203/report_service_registry.rb +1 -1
  262. data/lib/dfp_api/v201203/suggested_ad_unit_service.rb +3 -3
  263. data/lib/dfp_api/v201203/suggested_ad_unit_service_registry.rb +2 -2
  264. data/lib/dfp_api/v201203/team_service.rb +3 -3
  265. data/lib/dfp_api/v201203/team_service_registry.rb +1 -1
  266. data/lib/dfp_api/v201203/third_party_slot_service.rb +3 -3
  267. data/lib/dfp_api/v201203/third_party_slot_service_registry.rb +1 -1
  268. data/lib/dfp_api/v201203/user_service.rb +3 -3
  269. data/lib/dfp_api/v201203/user_service_registry.rb +1 -1
  270. data/lib/dfp_api/v201204/audience_segment_service.rb +34 -0
  271. data/lib/dfp_api/v201204/audience_segment_service_registry.rb +46 -0
  272. data/lib/dfp_api/v201204/company_service.rb +54 -0
  273. data/lib/dfp_api/v201204/company_service_registry.rb +46 -0
  274. data/lib/dfp_api/v201204/content_service.rb +42 -0
  275. data/lib/dfp_api/v201204/content_service_registry.rb +46 -0
  276. data/lib/dfp_api/v201204/creative_service.rb +54 -0
  277. data/lib/dfp_api/v201204/creative_service_registry.rb +46 -0
  278. data/lib/dfp_api/v201204/creative_template_service.rb +38 -0
  279. data/lib/dfp_api/v201204/creative_template_service_registry.rb +46 -0
  280. data/lib/dfp_api/v201204/custom_field_service.rb +78 -0
  281. data/lib/dfp_api/v201204/custom_field_service_registry.rb +46 -0
  282. data/lib/dfp_api/v201204/custom_targeting_service.rb +62 -0
  283. data/lib/dfp_api/v201204/custom_targeting_service_registry.rb +46 -0
  284. data/lib/dfp_api/v201204/forecast_service.rb +38 -0
  285. data/lib/dfp_api/v201204/forecast_service_registry.rb +46 -0
  286. data/lib/dfp_api/v201204/inventory_service.rb +62 -0
  287. data/lib/dfp_api/v201204/inventory_service_registry.rb +46 -0
  288. data/lib/dfp_api/v201204/label_service.rb +58 -0
  289. data/lib/dfp_api/v201204/label_service_registry.rb +46 -0
  290. data/lib/dfp_api/v201204/line_item_creative_association_service.rb +62 -0
  291. data/lib/dfp_api/v201204/line_item_creative_association_service_registry.rb +46 -0
  292. data/lib/dfp_api/v201204/line_item_service.rb +58 -0
  293. data/lib/dfp_api/v201204/line_item_service_registry.rb +46 -0
  294. data/lib/dfp_api/v201204/network_service.rb +46 -0
  295. data/lib/dfp_api/v201204/network_service_registry.rb +46 -0
  296. data/lib/dfp_api/v201204/order_service.rb +58 -0
  297. data/lib/dfp_api/v201204/order_service_registry.rb +46 -0
  298. data/lib/dfp_api/v201204/placement_service.rb +58 -0
  299. data/lib/dfp_api/v201204/placement_service_registry.rb +46 -0
  300. data/lib/dfp_api/v201204/publisher_query_language_service.rb +34 -0
  301. data/lib/dfp_api/v201204/publisher_query_language_service_registry.rb +46 -0
  302. data/lib/dfp_api/v201204/report_service.rb +42 -0
  303. data/lib/dfp_api/v201204/report_service_registry.rb +46 -0
  304. data/lib/dfp_api/v201204/suggested_ad_unit_service.rb +42 -0
  305. data/lib/dfp_api/v201204/suggested_ad_unit_service_registry.rb +46 -0
  306. data/lib/dfp_api/v201204/team_service.rb +54 -0
  307. data/lib/dfp_api/v201204/team_service_registry.rb +46 -0
  308. data/lib/dfp_api/v201204/third_party_slot_service.rb +46 -0
  309. data/lib/dfp_api/v201204/third_party_slot_service_registry.rb +46 -0
  310. data/lib/dfp_api/v201204/user_service.rb +66 -0
  311. data/lib/dfp_api/v201204/user_service_registry.rb +46 -0
  312. data/lib/dfp_api/v201204/user_team_association_service.rb +58 -0
  313. data/lib/dfp_api/v201204/user_team_association_service_registry.rb +46 -0
  314. data/lib/dfp_api/version.rb +1 -1
  315. data/test/suite_unittests.rb +0 -3
  316. metadata +662 -498
  317. data/lib/dfp_api/extensions.rb +0 -54
  318. data/test/bugs/test_issue_00000016.rb +0 -155
@@ -0,0 +1,90 @@
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 gets first 500 cities available to target. A full list of
22
+ # available tables can be found at:
23
+ #
24
+ # https://developers.google.com/doubleclick-publishers/docs/reference/v201204/PublisherQueryLanguageService
25
+ #
26
+ # Tags: PublisherQueryLanguageService.select
27
+
28
+ require 'dfp_api'
29
+
30
+ API_VERSION = :v201204
31
+ # A string to separate columns in output. Use "," to get CSV.
32
+ COLUMN_SEPARATOR = "\t"
33
+
34
+ def get_all_cities()
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 PublisherQueryLanguageService.
43
+ pql_service = dfp.service(:PublisherQueryLanguageService, API_VERSION)
44
+
45
+ # Create statement to select all targetable cities.
46
+ # For criteria that do not have a "targetable" property, the predicate may be
47
+ # left off.
48
+ statement = {:query => 'SELECT * FROM City WHERE targetable = true LIMIT 500'}
49
+
50
+ # Get all cities.
51
+ result_set = pql_service.select(statement)
52
+
53
+ if result_set
54
+ # Print out columns header.
55
+ columns = result_set[:column_types].collect {|col| col[:label_name]}
56
+ puts columns.join(COLUMN_SEPARATOR)
57
+
58
+ # Print out every row.
59
+ result_set[:rows].each do |row_set|
60
+ row = row_set[:values].collect {|item| item[:value]}
61
+ puts row.join(COLUMN_SEPARATOR)
62
+ end
63
+ end
64
+
65
+ # Print a footer.
66
+ if result_set[:rows]
67
+ puts "Total number of rows found: %d" % result_set[:rows].size
68
+ end
69
+ end
70
+
71
+ if __FILE__ == $0
72
+ begin
73
+ get_all_cities()
74
+
75
+ # HTTP errors.
76
+ rescue AdsCommon::Errors::HttpError => e
77
+ puts "HTTP Error: %s" % e
78
+
79
+ # API errors.
80
+ rescue DfpApi::Errors::ApiException => e
81
+ puts "Message: %s" % e.message
82
+ puts 'Errors:'
83
+ e.errors.each_with_index do |error, index|
84
+ puts "\tError [%d]:" % (index + 1)
85
+ error.each do |field, value|
86
+ puts "\t\t%s: %s" % [field, value]
87
+ end
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,81 @@
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 downloads a completed report. To run a report, run
22
+ # run_delivery_report.rb, run_sales_report.rb or run_inventory_report.rb.
23
+ #
24
+ # Tags: ReportService.getReportDownloadURL
25
+
26
+ require 'dfp_api'
27
+
28
+ require 'open-uri'
29
+
30
+ API_VERSION = :v201204
31
+
32
+ def download_report()
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 ReportService.
41
+ report_service = dfp.service(:ReportService, API_VERSION)
42
+
43
+ # Set the ID of the completed report.
44
+ report_job_id = 'INSERT_REPORT_JOB_ID_HERE'.to_i
45
+
46
+ # Set the file path and name to save to.
47
+ file_name = 'INSERT_FILE_PATH_AND_NAME_HERE'
48
+
49
+ # Change to your preffered export format.
50
+ export_format = 'CSV'
51
+
52
+ # Get the report URL.
53
+ download_url = report_service.get_report_download_url(
54
+ report_job_id, export_format);
55
+
56
+ puts "Downloading [%s] to [%s]..." % [download_url, file_name]
57
+ open(file_name, 'wb') do |local_file|
58
+ local_file << open(download_url).read()
59
+ end
60
+ end
61
+
62
+ if __FILE__ == $0
63
+ begin
64
+ download_report()
65
+
66
+ # HTTP errors.
67
+ rescue AdsCommon::Errors::HttpError => e
68
+ puts "HTTP Error: %s" % e
69
+
70
+ # API errors.
71
+ rescue DfpApi::Errors::ApiException => e
72
+ puts "Message: %s" % e.message
73
+ puts 'Errors:'
74
+ e.errors.each_with_index do |error, index|
75
+ puts "\tError [%d]:" % (index + 1)
76
+ error.each do |field, value|
77
+ puts "\t\t%s: %s" % [field, value]
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,103 @@
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 a report similar to the "Orders report" on the DFP website
22
+ # with additional attributes and can filter to include just one order.
23
+ # To download the report see download_report.rb.
24
+ #
25
+ # Tags: ReportService.runReportJob, ReportService.getReportJob
26
+
27
+ require 'dfp_api'
28
+
29
+ API_VERSION = :v201204
30
+ MAX_RETRIES = 10
31
+ RETRY_INTERVAL = 30
32
+
33
+ def run_delivery_report()
34
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
35
+ dfp = DfpApi::Api.new
36
+
37
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
38
+ # the configuration file or provide your own logger:
39
+ # dfp.logger = Logger.new('dfp_xml.log')
40
+
41
+ # Get the ReportService.
42
+ report_service = dfp.service(:ReportService, API_VERSION)
43
+
44
+ # Specify the order ID to filter by.
45
+ order_id = 'INSERT_ORDER_ID_HERE'.to_i
46
+
47
+ # Create report query.
48
+ report_query = {
49
+ :date_range_type => 'LAST_MONTH',
50
+ :dimensions => ['ORDER'],
51
+ :dimension_attributes => ['ORDER_TRAFFICKER', 'ORDER_START_DATE_TIME',
52
+ 'ORDER_END_DATE_TIME'],
53
+ :columns => ['AD_SERVER_IMPRESSIONS', 'AD_SERVER_CLICKS', 'AD_SERVER_CTR',
54
+ 'AD_SERVER_REVENUE', 'AD_SERVER_AVERAGE_ECPM'],
55
+ # Create statement object to filter for an order.
56
+ :statement => {
57
+ :query => 'WHERE orderId = :order_id',
58
+ :values => [
59
+ {:key => 'order_id',
60
+ :value => {:value => order_id, :xsi_type => 'NumberValue'}}
61
+ ]
62
+ }
63
+ }
64
+
65
+ # Create report job.
66
+ report_job = {:report_query => report_query}
67
+
68
+ # Run report job.
69
+ report_job = report_service.run_report_job(report_job);
70
+
71
+ MAX_RETRIES.times do |retry_count|
72
+ # Get the report job status.
73
+ report_job = report_service.get_report_job(report_job[:id])
74
+
75
+ break unless report_job[:report_job_status] == 'IN_PROGRESS'
76
+ puts "Report with ID: %d is still running." % report_job[:id]
77
+ sleep(RETRY_INTERVAL)
78
+ end
79
+
80
+ puts "Report job with ID: %d finished with status %s." %
81
+ [report_job[:id], report_job[:report_job_status]]
82
+ end
83
+
84
+ if __FILE__ == $0
85
+ begin
86
+ run_delivery_report()
87
+
88
+ # HTTP errors.
89
+ rescue AdsCommon::Errors::HttpError => e
90
+ puts "HTTP Error: %s" % e
91
+
92
+ # API errors.
93
+ rescue DfpApi::Errors::ApiException => e
94
+ puts "Message: %s" % e.message
95
+ puts 'Errors:'
96
+ e.errors.each_with_index do |error, index|
97
+ puts "\tError [%d]:" % (index + 1)
98
+ error.each do |field, value|
99
+ puts "\t\t%s: %s" % [field, value]
100
+ end
101
+ end
102
+ end
103
+ end
@@ -0,0 +1,92 @@
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 a report equal to the "Whole network report" on the DFP
22
+ # website. To download the report see download_report.rb.
23
+ #
24
+ # Tags: ReportService.runReportJob, ReportService.getReportJob
25
+
26
+ require 'dfp_api'
27
+
28
+ API_VERSION = :v201204
29
+ MAX_RETRIES = 10
30
+ RETRY_INTERVAL = 30
31
+
32
+ def run_inventory_report()
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 ReportService.
41
+ report_service = dfp.service(:ReportService, API_VERSION)
42
+
43
+ # Create report query.
44
+ report_query = {
45
+ :date_range_type => 'LAST_WEEK',
46
+ :dimensions => ['DATE'],
47
+ :ad_unit_view => 'HIERARCHICAL',
48
+ :columns => ['AD_SERVER_IMPRESSIONS', 'AD_SERVER_CLICKS',
49
+ 'ADSENSE_IMPRESSIONS', 'ADSENSE_CLICKS', 'TOTAL_IMPRESSIONS',
50
+ 'TOTAL_REVENUE'],
51
+ :date_range_type => 'LAST_WEEK'
52
+ }
53
+
54
+ # Create report job.
55
+ report_job = {:report_query => report_query}
56
+
57
+ # Run report job.
58
+ report_job = report_service.run_report_job(report_job);
59
+
60
+ MAX_RETRIES.times do |retry_count|
61
+ # Get the report job status.
62
+ report_job = report_service.get_report_job(report_job[:id])
63
+
64
+ break unless report_job[:report_job_status] == 'IN_PROGRESS'
65
+ puts "Report with ID: %d is still running." % report_job[:id]
66
+ sleep(RETRY_INTERVAL)
67
+ end
68
+
69
+ puts "Report job with ID: %d finished with status %s." %
70
+ [report_job[:id], report_job[:report_job_status]]
71
+ end
72
+
73
+ if __FILE__ == $0
74
+ begin
75
+ run_inventory_report()
76
+
77
+ # HTTP errors.
78
+ rescue AdsCommon::Errors::HttpError => e
79
+ puts "HTTP Error: %s" % e
80
+
81
+ # API errors.
82
+ rescue DfpApi::Errors::ApiException => e
83
+ puts "Message: %s" % e.message
84
+ puts 'Errors:'
85
+ e.errors.each_with_index do |error, index|
86
+ puts "\tError [%d]:" % (index + 1)
87
+ error.each do |field, value|
88
+ puts "\t\t%s: %s" % [field, value]
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,94 @@
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 a report that an upgraded publisher would use to include
22
+ # statistics before the upgrade. To download the report see download_report.rb.
23
+ #
24
+ # Tags: ReportService.runReportJob, ReportService.getReportJob
25
+
26
+ require 'dfp_api'
27
+
28
+ API_VERSION = :v201204
29
+ MAX_RETRIES = 10
30
+ RETRY_INTERVAL = 30
31
+
32
+ def run_merged_delivery_report()
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 ReportService.
41
+ report_service = dfp.service(:ReportService, API_VERSION)
42
+
43
+ # Create report query.
44
+ report_query = {
45
+ :date_range_type => 'LAST_MONTH',
46
+ :dimensions => ['ORDER'],
47
+ :columns => [
48
+ 'MERGED_AD_SERVER_IMPRESSIONS',
49
+ 'MERGED_AD_SERVER_CLICKS',
50
+ 'MERGED_AD_SERVER_CTR',
51
+ 'MERGED_AD_SERVER_REVENUE',
52
+ 'MERGED_AD_SERVER_AVERAGE_ECPM'
53
+ ]
54
+ }
55
+
56
+ # Create report job.
57
+ report_job = {:report_query => report_query}
58
+
59
+ # Run report job.
60
+ report_job = report_service.run_report_job(report_job);
61
+
62
+ MAX_RETRIES.times do |retry_count|
63
+ # Get the report job status.
64
+ report_job = report_service.get_report_job(report_job[:id])
65
+
66
+ break unless report_job[:report_job_status] == 'IN_PROGRESS'
67
+ puts "Report with ID: %d is still running." % report_job[:id]
68
+ sleep(RETRY_INTERVAL)
69
+ end
70
+
71
+ puts "Report job with ID: %d finished with status %s." %
72
+ [report_job[:id], report_job[:report_job_status]]
73
+ end
74
+
75
+ if __FILE__ == $0
76
+ begin
77
+ run_merged_delivery_report()
78
+
79
+ # HTTP errors.
80
+ rescue AdsCommon::Errors::HttpError => e
81
+ puts "HTTP Error: %s" % e
82
+
83
+ # API errors.
84
+ rescue DfpApi::Errors::ApiException => e
85
+ puts "Message: %s" % e.message
86
+ puts 'Errors:'
87
+ e.errors.each_with_index do |error, index|
88
+ puts "\tError [%d]:" % (index + 1)
89
+ error.each do |field, value|
90
+ puts "\t\t%s: %s" % [field, value]
91
+ end
92
+ end
93
+ end
94
+ end