google-dfp-api 0.9.4 → 0.9.5

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 (247) hide show
  1. data/ChangeLog +4 -0
  2. data/README.md +1 -3
  3. data/dfp_api.yml +1 -9
  4. data/examples/v201408/report_service/run_sales_report.rb +3 -3
  5. data/examples/v201411/report_service/run_sales_report.rb +3 -3
  6. data/examples/v201502/report_service/run_sales_report.rb +3 -3
  7. data/examples/{v201405 → v201505}/activity_group_service/create_activity_groups.rb +1 -1
  8. data/examples/{v201405 → v201505}/activity_group_service/get_active_activity_groups.rb +18 -27
  9. data/examples/{v201405 → v201505}/activity_group_service/get_all_activity_groups.rb +13 -23
  10. data/examples/{v201405 → v201505}/activity_group_service/update_activity_groups.rb +11 -9
  11. data/examples/{v201405 → v201505}/activity_service/create_activities.rb +1 -1
  12. data/examples/{v201405 → v201505}/activity_service/get_active_activities.rb +15 -27
  13. data/examples/{v201405 → v201505}/activity_service/get_all_activities.rb +10 -21
  14. data/examples/{v201405 → v201505}/activity_service/update_activities.rb +9 -7
  15. data/examples/{v201405 → v201505}/audience_segment_service/create_audience_segments.rb +1 -1
  16. data/examples/{v201405 → v201505}/audience_segment_service/get_all_audience_segments.rb +10 -19
  17. data/examples/{v201405 → v201505}/audience_segment_service/get_first_party_audience_segments.rb +14 -21
  18. data/examples/{v201405 → v201505}/audience_segment_service/populate_first_party_audience_segments.rb +16 -14
  19. data/examples/{v201405 → v201505}/audience_segment_service/update_audience_segments.rb +12 -11
  20. data/examples/{v201405 → v201505}/common/error_handling.rb +1 -1
  21. data/examples/{v201405 → v201505}/common/oauth2_jwt_handling.rb +9 -17
  22. data/examples/{v201405 → v201505}/common/setup_oauth2.rb +1 -1
  23. data/examples/{v201405 → v201505}/company_service/create_companies.rb +1 -1
  24. data/examples/{v201405 → v201505}/company_service/get_all_companies.rb +10 -18
  25. data/examples/{v201405 → v201505}/company_service/get_companies_by_statement.rb +21 -16
  26. data/examples/{v201405 → v201505}/company_service/update_companies.rb +13 -10
  27. data/examples/{v201405 → v201505}/contact_service/create_contacts.rb +1 -1
  28. data/examples/{v201405 → v201505}/contact_service/get_all_contacts.rb +11 -19
  29. data/examples/{v201405 → v201505}/contact_service/get_uninvited_contacts.rb +18 -22
  30. data/examples/{v201405 → v201505}/contact_service/update_contacts.rb +9 -7
  31. data/examples/{v201405 → v201505}/content_metadata_key_hierarchy_service/create_content_metadata_key_hierarchies.rb +1 -1
  32. data/examples/{v201405 → v201505}/content_metadata_key_hierarchy_service/delete_content_metadata_key_hierarchies.rb +11 -8
  33. data/examples/{v201405 → v201505}/content_metadata_key_hierarchy_service/get_all_content_metadata_key_hierarchies.rb +8 -18
  34. data/examples/{v201405 → v201505}/content_metadata_key_hierarchy_service/update_content_metadata_key_hierarchies.rb +9 -7
  35. data/examples/{v201405 → v201505}/content_service/get_all_content.rb +9 -18
  36. data/examples/{v201405 → v201505}/content_service/get_content_by_category.rb +18 -28
  37. data/examples/{v201405 → v201505}/creative_service/copy_image_creatives.rb +7 -7
  38. data/examples/{v201405 → v201505}/creative_service/create_creative_from_template.rb +1 -1
  39. data/examples/{v201405 → v201505}/creative_service/create_creatives.rb +1 -1
  40. data/examples/{v201405 → v201505}/creative_service/create_custom_creative.rb +1 -1
  41. data/examples/{v201405 → v201505}/creative_service/get_all_creatives.rb +8 -17
  42. data/examples/{v201405 → v201505}/creative_service/get_creatives_by_statement.rb +18 -13
  43. data/examples/{v201405 → v201505}/creative_service/update_creatives.rb +16 -11
  44. data/examples/{v201405 → v201505}/creative_set_service/associate_creative_set_to_line_item.rb +1 -1
  45. data/examples/{v201405 → v201505}/creative_set_service/create_creative_set.rb +1 -1
  46. data/examples/{v201405 → v201505}/creative_set_service/get_all_creative_sets.rb +9 -17
  47. data/examples/{v201405 → v201505}/creative_set_service/get_creative_sets_by_statement.rb +20 -14
  48. data/examples/{v201405 → v201505}/creative_set_service/update_creative_sets.rb +10 -7
  49. data/examples/{v201405 → v201505}/creative_template_service/get_all_creative_templates.rb +9 -17
  50. data/examples/{v201405/creative_template_service/get_creative_templates_by_statement.rb → v201505/creative_template_service/get_system_defined_creative_templates.rb} +24 -13
  51. data/examples/{v201405 → v201505}/creative_wrapper_service/create_creative_wrappers.rb +1 -1
  52. data/examples/{v201405 → v201505}/creative_wrapper_service/deactivate_creative_wrapper.rb +9 -7
  53. data/examples/{v201405 → v201505}/creative_wrapper_service/get_all_creative_wrappers.rb +10 -18
  54. data/examples/{v201405 → v201505}/creative_wrapper_service/get_creative_wrappers_by_statement.rb +17 -12
  55. data/examples/{v201405 → v201505}/creative_wrapper_service/update_creative_wrappers.rb +10 -7
  56. data/examples/{v201405 → v201505}/custom_field_service/create_custom_field_options.rb +1 -1
  57. data/examples/{v201405 → v201505}/custom_field_service/create_custom_fields.rb +1 -1
  58. data/examples/{v201405 → v201505}/custom_field_service/deactivate_all_line_item_custom_fields.rb +13 -23
  59. data/examples/{v201405 → v201505}/custom_field_service/get_all_custom_fields.rb +11 -19
  60. data/examples/{v201405 → v201505}/custom_field_service/get_all_line_item_custom_fields.rb +19 -14
  61. data/examples/{v201405 → v201505}/custom_field_service/set_line_item_custom_field_value.rb +24 -19
  62. data/examples/{v201405 → v201505}/custom_field_service/update_custom_fields.rb +10 -7
  63. data/examples/{v201405 → v201505}/custom_targeting_service/create_custom_targeting_keys_and_values.rb +1 -1
  64. data/examples/{v201405 → v201505}/custom_targeting_service/delete_custom_targeting_keys.rb +16 -20
  65. data/examples/{v201405 → v201505}/custom_targeting_service/delete_custom_targeting_values.rb +23 -21
  66. data/examples/{v201405 → v201505}/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +15 -36
  67. data/examples/{v201405 → v201505}/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +20 -16
  68. data/examples/{v201405 → v201505}/custom_targeting_service/get_custom_targeting_values_by_statement.rb +19 -15
  69. data/examples/{v201405 → v201505}/custom_targeting_service/update_custom_targeting_keys.rb +4 -3
  70. data/examples/{v201405 → v201505}/custom_targeting_service/update_custom_targeting_values.rb +34 -30
  71. data/examples/{v201405/forecast_service/get_forecast.rb → v201505/forecast_service/get_availability_forecast.rb} +38 -16
  72. data/examples/{v201405/forecast_service/get_forecast_by_id.rb → v201505/forecast_service/get_availability_forecast_for_line_item.rb} +18 -11
  73. data/examples/v201505/forecast_service/get_delivery_forecast_for_line_items.rb +81 -0
  74. data/examples/{v201405 → v201505}/inventory_service/create_ad_units.rb +1 -1
  75. data/examples/{v201405 → v201505}/inventory_service/create_mobile_ad_unit.rb +1 -1
  76. data/examples/{v201405 → v201505}/inventory_service/create_video_ad_unit.rb +1 -1
  77. data/examples/{v201405 → v201505}/inventory_service/deactivate_ad_units.rb +19 -23
  78. data/examples/{v201405 → v201505}/inventory_service/get_ad_unit_sizes.rb +7 -14
  79. data/examples/{v201405 → v201505}/inventory_service/get_ad_units_by_statement.rb +18 -13
  80. data/examples/{v201405 → v201505}/inventory_service/get_all_ad_units.rb +8 -17
  81. data/examples/{v201405 → v201505}/inventory_service/update_ad_units.rb +23 -11
  82. data/examples/{v201405 → v201505}/label_service/create_labels.rb +1 -1
  83. data/examples/{v201405 → v201505}/label_service/deactivate_labels.rb +15 -22
  84. data/examples/{v201405 → v201505}/label_service/get_all_labels.rb +9 -18
  85. data/examples/{v201405 → v201505}/label_service/get_labels_by_statement.rb +16 -11
  86. data/examples/{v201405 → v201505}/label_service/update_labels.rb +24 -26
  87. data/examples/{v201405 → v201505}/line_item_creative_association_service/create_licas.rb +1 -1
  88. data/examples/{v201405 → v201505}/line_item_creative_association_service/deactivate_licas.rb +15 -24
  89. data/examples/{v201405 → v201505}/line_item_creative_association_service/get_all_licas.rb +8 -17
  90. data/examples/{v201405 → v201505}/line_item_creative_association_service/get_licas_by_statement.rb +10 -8
  91. data/examples/{v201405 → v201505}/line_item_creative_association_service/update_licas.rb +16 -7
  92. data/examples/{v201405 → v201505}/line_item_service/activate_line_items.rb +13 -21
  93. data/examples/{v201405 → v201505}/line_item_service/create_line_items.rb +11 -4
  94. data/examples/{v201405 → v201505}/line_item_service/create_video_line_item.rb +13 -3
  95. data/examples/{v201405 → v201505}/line_item_service/get_all_line_items.rb +9 -17
  96. data/examples/{v201405 → v201505}/line_item_service/get_line_items_by_statement.rb +19 -17
  97. data/examples/{v201405 → v201505}/line_item_service/get_recently_updated_line_items.rb +19 -13
  98. data/examples/{v201405 → v201505}/line_item_service/target_custom_criteria.rb +9 -7
  99. data/examples/{v201405 → v201505}/line_item_service/update_line_items.rb +9 -9
  100. data/examples/{v201405 → v201505}/network_service/get_all_networks.rb +1 -1
  101. data/examples/{v201405 → v201505}/network_service/get_current_network.rb +1 -1
  102. data/examples/{v201405 → v201505}/network_service/make_test_network.rb +1 -1
  103. data/examples/{v201405 → v201505}/order_service/approve_orders.rb +16 -24
  104. data/examples/{v201405 → v201505}/order_service/create_orders.rb +1 -1
  105. data/examples/{v201405 → v201505}/order_service/get_all_orders.rb +8 -17
  106. data/examples/{v201405 → v201505}/order_service/get_orders_by_statement.rb +18 -14
  107. data/examples/{v201405 → v201505}/order_service/update_orders.rb +15 -7
  108. data/examples/{v201405 → v201505}/placement_service/create_placements.rb +4 -2
  109. data/examples/{v201405 → v201505}/placement_service/deactivate_placements.rb +14 -22
  110. data/examples/{v201405 → v201505}/placement_service/get_all_placements.rb +9 -17
  111. data/examples/{v201405 → v201505}/placement_service/get_placements_by_statement.rb +18 -13
  112. data/examples/{v201405 → v201505}/placement_service/update_placements.rb +16 -6
  113. data/examples/{v201405 → v201505}/publisher_query_language_service/fetch_match_tables.rb +8 -11
  114. data/examples/{v201405 → v201505}/publisher_query_language_service/get_all_line_items.rb +8 -9
  115. data/examples/{v201405 → v201505}/publisher_query_language_service/get_geo_targets.rb +10 -10
  116. data/examples/{v201405 → v201505}/publisher_query_language_service/get_line_items_named_like.rb +10 -10
  117. data/examples/{v201405 → v201505}/report_service/display_report.rb +1 -1
  118. data/examples/{v201405 → v201505}/report_service/download_report.rb +1 -1
  119. data/examples/{v201405 → v201505}/report_service/run_delivery_report.rb +6 -5
  120. data/examples/{v201405 → v201505}/report_service/run_inventory_report.rb +6 -5
  121. data/examples/{v201405 → v201505}/report_service/run_reach_report.rb +6 -5
  122. data/examples/{v201405/report_service/run_merged_delivery_report.rb → v201505/report_service/run_report_with_custom_fields.rb} +17 -18
  123. data/examples/{v201405 → v201505}/report_service/run_sales_report.rb +6 -5
  124. data/examples/{v201405 → v201505}/suggested_ad_unit_service/approve_all_suggested_ad_units.rb +25 -21
  125. data/examples/{v201405 → v201505}/suggested_ad_unit_service/get_all_suggested_ad_units.rb +9 -18
  126. data/examples/{v201405 → v201505}/suggested_ad_unit_service/get_suggested_ad_units_by_statement.rb +24 -21
  127. data/examples/{v201405 → v201505}/team_service/create_teams.rb +1 -1
  128. data/examples/{v201405 → v201505}/team_service/get_all_teams.rb +8 -17
  129. data/examples/{v201405 → v201505}/team_service/get_teams_by_statement.rb +15 -11
  130. data/examples/{v201405 → v201505}/team_service/update_teams.rb +4 -3
  131. data/examples/{v201405 → v201505}/user_service/create_users.rb +1 -1
  132. data/examples/{v201405 → v201505}/user_service/deactivate_users.rb +7 -7
  133. data/examples/{v201405 → v201505}/user_service/get_all_roles.rb +1 -1
  134. data/examples/{v201405 → v201505}/user_service/get_all_users.rb +8 -18
  135. data/examples/{v201405 → v201505}/user_service/get_current_user.rb +1 -1
  136. data/examples/{v201405 → v201505}/user_service/get_users_by_statement.rb +17 -12
  137. data/examples/{v201405 → v201505}/user_service/update_users.rb +15 -6
  138. data/examples/{v201405 → v201505}/user_team_association_service/create_user_team_associations.rb +1 -1
  139. data/examples/{v201405 → v201505}/user_team_association_service/delete_user_team_associations.rb +13 -21
  140. data/examples/{v201405 → v201505}/user_team_association_service/get_all_user_team_associations.rb +10 -17
  141. data/examples/{v201405 → v201505}/user_team_association_service/get_user_team_associations_by_statement.rb +20 -16
  142. data/examples/{v201405 → v201505}/user_team_association_service/update_user_team_associations.rb +8 -7
  143. data/lib/dfp_api/api_config.rb +27 -4
  144. data/lib/dfp_api/v201505/activity_group_service.rb +42 -0
  145. data/lib/dfp_api/v201505/activity_group_service_registry.rb +45 -0
  146. data/lib/dfp_api/v201505/activity_service.rb +42 -0
  147. data/lib/dfp_api/v201505/activity_service_registry.rb +45 -0
  148. data/lib/dfp_api/v201505/ad_exclusion_rule_service.rb +46 -0
  149. data/lib/dfp_api/v201505/ad_exclusion_rule_service_registry.rb +45 -0
  150. data/lib/dfp_api/v201505/ad_rule_service.rb +46 -0
  151. data/lib/dfp_api/v201505/ad_rule_service_registry.rb +45 -0
  152. data/lib/dfp_api/v201505/audience_segment_service.rb +46 -0
  153. data/lib/dfp_api/v201505/audience_segment_service_registry.rb +45 -0
  154. data/lib/dfp_api/v201505/base_rate_service.rb +46 -0
  155. data/lib/dfp_api/v201505/base_rate_service_registry.rb +45 -0
  156. data/lib/dfp_api/v201505/company_service.rb +42 -0
  157. data/lib/dfp_api/v201505/company_service_registry.rb +45 -0
  158. data/lib/dfp_api/v201505/contact_service.rb +42 -0
  159. data/lib/dfp_api/v201505/contact_service_registry.rb +45 -0
  160. data/lib/dfp_api/v201505/content_bundle_service.rb +46 -0
  161. data/lib/dfp_api/v201505/content_bundle_service_registry.rb +45 -0
  162. data/lib/dfp_api/v201505/content_metadata_key_hierarchy_service.rb +46 -0
  163. data/lib/dfp_api/v201505/content_metadata_key_hierarchy_service_registry.rb +45 -0
  164. data/lib/dfp_api/v201505/content_service.rb +38 -0
  165. data/lib/dfp_api/v201505/content_service_registry.rb +45 -0
  166. data/lib/dfp_api/v201505/creative_service.rb +42 -0
  167. data/lib/dfp_api/v201505/creative_service_registry.rb +45 -0
  168. data/lib/dfp_api/v201505/creative_set_service.rb +42 -0
  169. data/lib/dfp_api/v201505/creative_set_service_registry.rb +45 -0
  170. data/lib/dfp_api/v201505/creative_template_service.rb +34 -0
  171. data/lib/dfp_api/v201505/creative_template_service_registry.rb +45 -0
  172. data/lib/dfp_api/v201505/creative_wrapper_service.rb +46 -0
  173. data/lib/dfp_api/v201505/creative_wrapper_service_registry.rb +45 -0
  174. data/lib/dfp_api/v201505/custom_field_service.rb +58 -0
  175. data/lib/dfp_api/v201505/custom_field_service_registry.rb +45 -0
  176. data/lib/dfp_api/v201505/custom_targeting_service.rb +62 -0
  177. data/lib/dfp_api/v201505/custom_targeting_service_registry.rb +45 -0
  178. data/lib/dfp_api/v201505/exchange_rate_service.rb +46 -0
  179. data/lib/dfp_api/v201505/exchange_rate_service_registry.rb +45 -0
  180. data/lib/dfp_api/v201505/forecast_service.rb +46 -0
  181. data/lib/dfp_api/v201505/forecast_service_registry.rb +45 -0
  182. data/lib/dfp_api/v201505/inventory_service.rb +50 -0
  183. data/lib/dfp_api/v201505/inventory_service_registry.rb +45 -0
  184. data/lib/dfp_api/v201505/label_service.rb +46 -0
  185. data/lib/dfp_api/v201505/label_service_registry.rb +45 -0
  186. data/lib/dfp_api/v201505/line_item_creative_association_service.rb +50 -0
  187. data/lib/dfp_api/v201505/line_item_creative_association_service_registry.rb +45 -0
  188. data/lib/dfp_api/v201505/line_item_service.rb +46 -0
  189. data/lib/dfp_api/v201505/line_item_service_registry.rb +45 -0
  190. data/lib/dfp_api/v201505/line_item_template_service.rb +34 -0
  191. data/lib/dfp_api/v201505/line_item_template_service_registry.rb +45 -0
  192. data/lib/dfp_api/v201505/live_stream_event_service.rb +46 -0
  193. data/lib/dfp_api/v201505/live_stream_event_service_registry.rb +45 -0
  194. data/lib/dfp_api/v201505/network_service.rb +46 -0
  195. data/lib/dfp_api/v201505/network_service_registry.rb +45 -0
  196. data/lib/dfp_api/v201505/order_service.rb +46 -0
  197. data/lib/dfp_api/v201505/order_service_registry.rb +45 -0
  198. data/lib/dfp_api/v201505/package_service.rb +46 -0
  199. data/lib/dfp_api/v201505/package_service_registry.rb +45 -0
  200. data/lib/dfp_api/v201505/placement_service.rb +46 -0
  201. data/lib/dfp_api/v201505/placement_service_registry.rb +45 -0
  202. data/lib/dfp_api/v201505/premium_rate_service.rb +42 -0
  203. data/lib/dfp_api/v201505/premium_rate_service_registry.rb +45 -0
  204. data/lib/dfp_api/v201505/product_package_item_service.rb +46 -0
  205. data/lib/dfp_api/v201505/product_package_item_service_registry.rb +45 -0
  206. data/lib/dfp_api/v201505/product_package_service.rb +46 -0
  207. data/lib/dfp_api/v201505/product_package_service_registry.rb +45 -0
  208. data/lib/dfp_api/v201505/product_service.rb +42 -0
  209. data/lib/dfp_api/v201505/product_service_registry.rb +45 -0
  210. data/lib/dfp_api/v201505/product_template_service.rb +46 -0
  211. data/lib/dfp_api/v201505/product_template_service_registry.rb +45 -0
  212. data/lib/dfp_api/v201505/proposal_line_item_service.rb +46 -0
  213. data/lib/dfp_api/v201505/proposal_line_item_service_registry.rb +45 -0
  214. data/lib/dfp_api/v201505/proposal_service.rb +46 -0
  215. data/lib/dfp_api/v201505/proposal_service_registry.rb +45 -0
  216. data/lib/dfp_api/v201505/publisher_query_language_service.rb +34 -0
  217. data/lib/dfp_api/v201505/publisher_query_language_service_registry.rb +45 -0
  218. data/lib/dfp_api/v201505/rate_card_service.rb +46 -0
  219. data/lib/dfp_api/v201505/rate_card_service_registry.rb +45 -0
  220. data/lib/dfp_api/v201505/reconciliation_order_report_service.rb +38 -0
  221. data/lib/dfp_api/v201505/reconciliation_order_report_service_registry.rb +45 -0
  222. data/lib/dfp_api/v201505/reconciliation_report_row_service.rb +38 -0
  223. data/lib/dfp_api/v201505/reconciliation_report_row_service_registry.rb +45 -0
  224. data/lib/dfp_api/v201505/reconciliation_report_service.rb +38 -0
  225. data/lib/dfp_api/v201505/reconciliation_report_service_registry.rb +45 -0
  226. data/lib/dfp_api/v201505/report_service.rb +46 -0
  227. data/lib/dfp_api/v201505/report_service_registry.rb +45 -0
  228. data/lib/dfp_api/v201505/shared_ad_unit_service.rb +38 -0
  229. data/lib/dfp_api/v201505/shared_ad_unit_service_registry.rb +45 -0
  230. data/lib/dfp_api/v201505/suggested_ad_unit_service.rb +38 -0
  231. data/lib/dfp_api/v201505/suggested_ad_unit_service_registry.rb +45 -0
  232. data/lib/dfp_api/v201505/team_service.rb +42 -0
  233. data/lib/dfp_api/v201505/team_service_registry.rb +45 -0
  234. data/lib/dfp_api/v201505/user_service.rb +54 -0
  235. data/lib/dfp_api/v201505/user_service_registry.rb +45 -0
  236. data/lib/dfp_api/v201505/user_team_association_service.rb +46 -0
  237. data/lib/dfp_api/v201505/user_team_association_service_registry.rb +45 -0
  238. data/lib/dfp_api/v201505/workflow_request_service.rb +38 -0
  239. data/lib/dfp_api/v201505/workflow_request_service_registry.rb +45 -0
  240. data/lib/dfp_api/version.rb +1 -1
  241. data/test/bugs/test_issue_00000016.rb +1 -1
  242. data/test/dfp_api/test_config.yml +6 -5
  243. data/test/dfp_api/test_dfp_api.rb +32 -32
  244. metadata +234 -140
  245. data/examples/v201405/creative_template_service/get_creative_template.rb +0 -74
  246. data/examples/v201405/report_service/run_report_with_custom_fields.rb +0 -135
  247. data/examples/v201405/suggested_ad_unit_service/get_suggested_ad_unit.rb +0 -75
@@ -28,7 +28,7 @@
28
28
 
29
29
  require 'dfp_api'
30
30
 
31
- API_VERSION = :v201405
31
+ API_VERSION = :v201505
32
32
 
33
33
  def create_creative_wrappers()
34
34
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -24,8 +24,9 @@
24
24
  # Tags: CreativeWrapperService.performCreativeWrapperAction
25
25
 
26
26
  require 'dfp_api'
27
+ require 'dfp_api_statement'
27
28
 
28
- API_VERSION = :v201405
29
+ API_VERSION = :v201505
29
30
 
30
31
  def deactivate_creative_wrappers()
31
32
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -42,9 +43,9 @@ def deactivate_creative_wrappers()
42
43
  label_id = 'INSERT_CREATIVE_WRAPPER_LABEL_ID_HERE'.to_i
43
44
 
44
45
  # Create statement to select creative wrappers by label id and status.
45
- statement = {
46
- :query => 'WHERE labelId = :label_id AND status = :status',
47
- :values => [
46
+ statement = DfpApiStatement::FilterStatement.new(
47
+ 'WHERE labelId = :label_id AND status = :status',
48
+ [
48
49
  {
49
50
  :key => 'label_id',
50
51
  :value => {:value => label_id, :xsi_type => 'NumberValue'}
@@ -54,10 +55,11 @@ def deactivate_creative_wrappers()
54
55
  :value => {:value => 'ACTIVE', :xsi_type => 'TextValue'}
55
56
  }
56
57
  ]
57
- }
58
+ )
58
59
 
59
60
  # Get creative wrappers by statement.
60
- page = creative_wrapper_service.get_creative_wrappers_by_statement(statement)
61
+ page = creative_wrapper_service.get_creative_wrappers_by_statement(
62
+ statement.toStatement())
61
63
 
62
64
  if page[:results]
63
65
  page[:results].each do |creative_wrapper|
@@ -67,7 +69,7 @@ def deactivate_creative_wrappers()
67
69
 
68
70
  # Perform action.
69
71
  result = creative_wrapper_service.perform_creative_wrapper_action(
70
- {:xsi_type => 'DeactivateCreativeWrappers'}, statement)
72
+ {:xsi_type => 'DeactivateCreativeWrappers'}, statement.toStatement())
71
73
 
72
74
  # Display results.
73
75
  if result and result[:num_changes] > 0
@@ -24,9 +24,9 @@
24
24
  # Tags: CreativeWrapperService.getCreativeWrappersByStatement
25
25
 
26
26
  require 'dfp_api'
27
+ require 'dfp_api_statement'
27
28
 
28
- API_VERSION = :v201405
29
- PAGE_SIZE = 500
29
+ API_VERSION = :v201505
30
30
 
31
31
  def get_all_creative_wrappers()
32
32
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -39,32 +39,24 @@ def get_all_creative_wrappers()
39
39
  # Get the CreativeWrapperService.
40
40
  creative_wrapper_service = dfp.service(:CreativeWrapperService, API_VERSION)
41
41
 
42
- # Define initial values.
43
- offset = 0
44
- page = {}
42
+ # Create statement for one page with current offset.
43
+ statement = DfpApiStatement::FilterStatement.new('ORDER BY id ASC')
45
44
 
46
45
  begin
47
- # Create statement for one page with current offset.
48
- statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
49
-
50
46
  # Get creative wrappers by statement.
51
- page =
52
- creative_wrapper_service.get_creative_wrappers_by_statement(statement)
47
+ page = creative_wrapper_service.get_creative_wrappers_by_statement(
48
+ statement.toStatement())
53
49
 
54
50
  if page[:results]
55
- # Increase query offset by page size.
56
- offset += PAGE_SIZE
57
-
58
- # Get the start index for printout.
59
- start_index = page[:start_index]
60
-
61
51
  # Print details about each creative wrapper in results page.
62
52
  page[:results].each_with_index do |creative_wrapper, index|
63
- puts "%d) Creative wrapper ID: %d, label ID: %d" % [index + start_index,
53
+ puts "%d) Creative wrapper ID: %d, label ID: %d" %
54
+ [index + statement.offset,
64
55
  creative_wrapper[:id], creative_wrapper[:label_id]]
65
56
  end
66
57
  end
67
- end while offset < page[:total_result_set_size]
58
+ statement.offset += DfpApiStatement::SUGGESTED_PAGE_LIMIT
59
+ end while statement.offset < page[:total_result_set_size]
68
60
 
69
61
  # Print a footer
70
62
  if page.include?(:total_result_set_size)
@@ -24,8 +24,9 @@
24
24
  # Tags: CreativeWrapperService.getCreativeWrappersByStatement
25
25
 
26
26
  require 'dfp_api'
27
+ require 'dfp_api_statement'
27
28
 
28
- API_VERSION = :v201405
29
+ API_VERSION = :v201505
29
30
 
30
31
  def get_creative_wrappers_by_statement()
31
32
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -39,25 +40,29 @@ def get_creative_wrappers_by_statement()
39
40
  creative_wrapper_service = dfp.service(:CreativeWrapperService, API_VERSION)
40
41
 
41
42
  # Create filter text to select active creative wrappers.
42
- statement = {
43
- :query => 'WHERE status = :status',
44
- :values => [
43
+ statement = DfpApiStatement::FilterStatement.new(
44
+ 'WHERE status = :status ORDER BY id ASC',
45
+ [
45
46
  {
46
47
  :key => 'status',
47
48
  :value => {:value => 'ACTIVE', :xsi_type => 'TextValue'}
48
49
  }
49
50
  ]
50
- }
51
+ )
51
52
 
52
- # Get creative wrappers by statement.
53
- page = creative_wrapper_service.get_creative_wrappers_by_statement(statement)
53
+ begin
54
+ # Get creative wrappers by statement.
55
+ page = creative_wrapper_service.get_creative_wrappers_by_statement(
56
+ statement.toStatement())
54
57
 
55
- if page and page[:results]
56
- page[:results].each_with_index do |creative_wrapper, index|
57
- puts "%d) Creative wrapper ID: %d, label ID: %d, status: '%s'." %
58
- [index, creative_wrapper[:id], creative_wrapper[:label_id],
59
- creative_wrapper[:status]]
58
+ if page and page[:results]
59
+ page[:results].each_with_index do |creative_wrapper, index|
60
+ puts "%d) Creative wrapper ID: %d, label ID: %d, status: '%s'." %
61
+ [index + statement.offset, creative_wrapper[:id],
62
+ creative_wrapper[:label_id], creative_wrapper[:status]]
63
+ end
60
64
  end
65
+ statement.offset += DfpApiStatement::SUGGESTED_PAGE_LIMIT
61
66
  end
62
67
 
63
68
  # Print a footer.
@@ -25,8 +25,9 @@
25
25
  # Tags: CreativeWrapperService.updateCreativeWrappers
26
26
 
27
27
  require 'dfp_api'
28
+ require 'dfp_api_statement'
28
29
 
29
- API_VERSION = :v201405
30
+ API_VERSION = :v201505
30
31
 
31
32
  def update_creative_wrappers()
32
33
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -43,17 +44,19 @@ def update_creative_wrappers()
43
44
  creative_wrapper_id = 'INSERT_CREATIVE_WRAPPER_ID_HERE'.to_i
44
45
 
45
46
  # Create a statement to only select a single creative wrapper.
46
- statement = {
47
- :query => "WHERE id = :id LIMIT 1",
48
- :values => [
47
+ statement = DfpApiStatement::FilterStatement.new(
48
+ 'WHERE id = :id',
49
+ [
49
50
  {:key => 'id',
50
51
  :value => {:value => creative_wrapper_id, :xsi_type => 'NumberValue'}
51
52
  }
52
- ]
53
- }
53
+ ],
54
+ 1
55
+ )
54
56
 
55
57
  # Get creative wrappers by statement.
56
- page = creative_wrapper_service.get_creative_wrappers_by_statement(statement)
58
+ page = creative_wrapper_service.get_creative_wrappers_by_statement(
59
+ statement.toStatement())
57
60
 
58
61
  if page[:results]
59
62
  creative_wrappers = page[:results]
@@ -27,7 +27,7 @@
27
27
 
28
28
  require 'dfp_api'
29
29
 
30
- API_VERSION = :v201405
30
+ API_VERSION = :v201505
31
31
 
32
32
  def create_custom_field_options()
33
33
  # 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 = :v201405
28
+ API_VERSION = :v201505
29
29
 
30
30
  def create_custom_fields()
31
31
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -25,9 +25,9 @@
25
25
  # Tags: CustomFieldService.performCustomFieldAction
26
26
 
27
27
  require 'dfp_api'
28
+ require 'dfp_api_statement'
28
29
 
29
- API_VERSION = :v201405
30
- PAGE_SIZE = 500
30
+ API_VERSION = :v201505
31
31
 
32
32
  def deactivate_all_line_item_custom_fields()
33
33
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -41,46 +41,36 @@ def deactivate_all_line_item_custom_fields()
41
41
  custom_field_service = dfp.service(:CustomFieldService, API_VERSION)
42
42
 
43
43
  # Create statement text to select active ad units.
44
- statement_text = 'WHERE entityType = :entity_type AND isActive = :is_active'
45
- statement = {
46
- :values => [
44
+ statement = DfpApiStatement::FilterStatement.new(
45
+ 'WHERE entityType = :entity_type AND isActive = :is_active',
46
+ [
47
47
  {:key => 'entity_type',
48
48
  :value => {:value => 'LINE_ITEM', :xsi_type => 'TextValue'}},
49
49
  {:key => 'is_active',
50
50
  :value => {:value => true, :xsi_type => 'BooleanValue'}}
51
51
  ]
52
- }
53
-
54
- # Define initial values.
55
- offset = 0
56
- page = {}
52
+ )
57
53
 
58
54
  begin
59
- # Create a statement to get one page with the current offset.
60
- statement[:query] = statement_text +
61
- " LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]
62
-
63
55
  # Get custom fields by statement.
64
- page = custom_field_service.get_custom_fields_by_statement(statement)
56
+ page = custom_field_service.get_custom_fields_by_statement(
57
+ statement.toStatement())
65
58
 
66
59
  if page[:results]
67
- # Increase query offset by page size.
68
- offset += PAGE_SIZE
69
- start_index = page[:start_index]
70
-
71
60
  page[:results].each_with_index do |custom_field, index|
72
61
  puts "%d) Custom field with ID: %d and name: '%s' will be deactivated" %
73
- [index + start_index, custom_field[:id], custom_field[:name]]
62
+ [index + statement.offset, custom_field[:id], custom_field[:name]]
74
63
  end
75
64
  end
76
- end while offset < page[:total_result_set_size]
65
+ statement.offset += DfpApiStatement::SUGGESTED_PAGE_LIMIT
66
+ end while statement.offset < page[:total_result_set_size]
77
67
 
78
68
  # Update statement for action.
79
- statement[:query] = statement_text
69
+ statement.toStatementForAction()
80
70
 
81
71
  # Perform action.
82
72
  result = custom_field_service.perform_custom_field_action(
83
- {:xsi_type => 'DeactivateCustomFields'}, statement)
73
+ {:xsi_type => 'DeactivateCustomFields'}, statement.toStatement())
84
74
 
85
75
  # Display results.
86
76
  if result and result[:num_changes] > 0
@@ -24,9 +24,9 @@
24
24
  # Tags: CustomFieldService.getCustomFieldsByStatement
25
25
 
26
26
  require 'dfp_api'
27
+ require 'dfp_api_statement'
27
28
 
28
- API_VERSION = :v201405
29
- PAGE_SIZE = 500
29
+ API_VERSION = :v201505
30
30
 
31
31
  def get_all_custom_fields()
32
32
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -39,40 +39,32 @@ def get_all_custom_fields()
39
39
  # Get the CustomFieldService.
40
40
  custom_field_service = dfp.service(:CustomFieldService, API_VERSION)
41
41
 
42
- # Define initial values.
43
- offset = 0
44
- page = {}
42
+ # Create a statement to get one page with current offset.
43
+ statement = DfpApiStatement::FilterStatement.new('ORDER BY id')
45
44
 
46
45
  begin
47
- # Create a statement to get one page with current offset.
48
- statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
49
-
50
46
  # Get custom fields by statement.
51
- page = custom_field_service.get_custom_fields_by_statement(statement)
47
+ page = custom_field_service.get_custom_fields_by_statement(
48
+ statement.toStatement())
52
49
 
53
50
  if page[:results]
54
- # Increase query offset by page size.
55
- offset += PAGE_SIZE
56
-
57
- # Get the start index for printout.
58
- start_index = page[:start_index]
59
-
60
51
  # Print details about each custom field in results.
61
52
  page[:results].each_with_index do |custom_field, index|
62
53
  if custom_field[:custom_field_type].eql?('DropDownCustomField')
63
54
  drop_down_custom_field_strings = custom_field.include?(:options) ?
64
55
  custom_field[:options].map {|option| option[:display_name]} : []
65
- print ("%d) Drop-down custom field with ID %d, name '%s', and " +
56
+ puts ("%d) Drop-down custom field with ID %d, name '%s', and " +
66
57
  "options [%s] was found.") %
67
- [index + start_index, custom_field[:id], custom_field[:name],
58
+ [index + statement.offset, custom_field[:id], custom_field[:name],
68
59
  drop_down_custom_field_strings.join(', ')]
69
60
  else
70
61
  puts "%d) Custom field ID: %d and name: '%s' was found" %
71
- [index + start_index, custom_field[:id], custom_field[:name]]
62
+ [index + statement.offset, custom_field[:id], custom_field[:name]]
72
63
  end
73
64
  end
74
65
  end
75
- end while offset < page[:total_result_set_size]
66
+ statement.offset += DfpApiStatement::SUGGESTED_PAGE_LIMIT
67
+ end while statement.offset < page[:total_result_set_size]
76
68
 
77
69
  # Print a footer.
78
70
  if page.include?(:total_result_set_size)
@@ -24,8 +24,9 @@
24
24
  # Tags: CustomFieldService.getCustomFieldsByStatement
25
25
 
26
26
  require 'dfp_api'
27
+ require 'dfp_api_statement'
27
28
 
28
- API_VERSION = :v201405
29
+ API_VERSION = :v201505
29
30
 
30
31
  def get_all_line_item_custom_fields()
31
32
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -39,24 +40,28 @@ def get_all_line_item_custom_fields()
39
40
  custom_field_service = dfp.service(:CustomFieldService, API_VERSION)
40
41
 
41
42
  # Create statement to select only custom fields that apply to line items.
42
- statement = {
43
- :query => 'WHERE entityType = :entity_type',
44
- :values => [
43
+ statement = DfpApiStatement::FilterStatement.new(
44
+ 'WHERE entityType = :entity_type ORDER BY id ASC',
45
+ [
45
46
  {:key => 'entity_type',
46
47
  :value => {:value => 'LINE_ITEM', :xsi_type => 'TextValue'}}
47
48
  ]
48
- }
49
+ )
49
50
 
50
- # Get custom fields by statement.
51
- page = custom_field_service.get_custom_fields_by_statement(statement)
52
-
53
- if page[:results]
54
- # Print details about each custom field in results.
55
- page[:results].each_with_index do |custom_field, index|
56
- puts "%d) Custom field with ID %d and name: '%s' was found." %
57
- [index, custom_field[:id], custom_field[:name]]
51
+ begin
52
+ # Get custom fields by statement.
53
+ page = custom_field_service.get_custom_fields_by_statement(
54
+ statement.toStatement())
55
+
56
+ if page[:results]
57
+ # Print details about each custom field in results.
58
+ page[:results].each_with_index do |custom_field, index|
59
+ puts "%d) Custom field with ID %d and name: '%s' was found." %
60
+ [index + statement.offset, custom_field[:id], custom_field[:name]]
61
+ end
58
62
  end
59
- end
63
+ statement.offset += DfpApiStatement::SUGGESTED_PAGE_LIMIT
64
+ end while statement.offset < page[:total_result_set_size]
60
65
 
61
66
  # Print a footer.
62
67
  if page.include?(:total_result_set_size)
@@ -27,8 +27,9 @@
27
27
  # LineItemService.getLineItemsByStatement
28
28
 
29
29
  require 'dfp_api'
30
+ require 'dfp_api_statement'
30
31
 
31
- API_VERSION = :v201405
32
+ API_VERSION = :v201505
32
33
 
33
34
  def set_line_item_custom_field_value()
34
35
  # Get DfpApi instance and load configuration from ~/dfp_api.yml.
@@ -51,44 +52,48 @@ def set_line_item_custom_field_value()
51
52
  line_item_id = 'INSERT_LINE_ITEM_ID_HERE'.to_i
52
53
 
53
54
  # Create a statement to only select a single custom field.
54
- custom_field_statement = {
55
- :query => 'WHERE id = :id ORDER BY id ASC LIMIT 1',
56
- :values => [
55
+ custom_field_statement = DfpApiStatement::FilterStatement.new(
56
+ 'WHERE id = :id ORDER BY id ASC',
57
+ [
57
58
  {:key => 'id',
58
59
  :value => {:value => custom_field_id, :xsi_type => 'NumberValue'}}
59
- ]
60
- }
60
+ ],
61
+ 1
62
+ )
61
63
 
62
64
  # Create a statement to only select a single drop down custom field.
63
- custom_field_statement = {
64
- :query => 'WHERE id = :id ORDER BY id ASC LIMIT 1',
65
- :values => [
65
+ drop_down_custom_field_statement = DfpApiStatement::FilterStatement.new(
66
+ 'WHERE id = :id ORDER BY id ASC',
67
+ [
66
68
  {:key => 'id',
67
69
  :value => {:value => drop_down_custom_field_id,
68
70
  :xsi_type => 'NumberValue'}}
69
- ]
70
- }
71
+ ],
72
+ 1
73
+ )
71
74
 
72
75
  # Create a statement to only select a single line item.
73
- custom_field_statement = {
74
- :query => 'WHERE id = :id ORDER BY id ASC LIMIT 1',
75
- :values => [
76
+ line_item_statement = DfpApiStatement::FilterStatement.new(
77
+ 'WHERE id = :id ORDER BY id ASC',
78
+ [
76
79
  {:key => 'id',
77
80
  :value => {:value => line_item_id, :xsi_type => 'NumberValue'}}
78
- ]
79
- }
81
+ ],
82
+ 1
83
+ )
80
84
 
81
85
  # Get custom fields by statement.
82
86
  custom_fields_page = custom_field_service.get_custom_fields_by_statement(
83
- custom_field_statement)
87
+ custom_field_statement.toStatement())
84
88
 
85
89
  # Get drop down custom fields by statement.
86
90
  drop_down_custom_fields_page = (
87
91
  custom_field_service.get_custom_fields_by_statement(
88
- drop_down_custom_field_statement))
92
+ drop_down_custom_field_statement.toStatement()))
89
93
 
90
94
  # Get line items by statement.
91
- line_items_page = line_item_service.get_line_items_by_statement(statement)
95
+ line_items_page = line_item_service.get_line_items_by_statement(
96
+ line_item_statement.toStatement())
92
97
 
93
98
  # Get singular custom field.
94
99
  if custom_field_page[:results]