google-dfp-api 0.9.2 → 0.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +15 -0
- data/ChangeLog +6 -0
- data/examples/{v201311 → v201411}/activity_group_service/create_activity_groups.rb +1 -1
- data/examples/{v201311 → v201411}/activity_group_service/get_active_activity_groups.rb +18 -27
- data/examples/{v201311 → v201411}/activity_group_service/get_all_activity_groups.rb +13 -23
- data/examples/{v201311 → v201411}/activity_group_service/update_activity_groups.rb +25 -14
- data/examples/{v201311 → v201411}/activity_service/create_activities.rb +1 -1
- data/examples/{v201311 → v201411}/activity_service/get_active_activities.rb +15 -27
- data/examples/{v201311 → v201411}/activity_service/get_all_activities.rb +10 -21
- data/examples/{v201311 → v201411}/activity_service/update_activities.rb +32 -16
- data/examples/{v201311 → v201411}/audience_segment_service/create_audience_segments.rb +1 -1
- data/examples/{v201311 → v201411}/audience_segment_service/get_all_audience_segments.rb +10 -19
- data/examples/{v201311 → v201411}/audience_segment_service/get_first_party_audience_segments.rb +14 -21
- data/examples/{v201311 → v201411}/audience_segment_service/populate_first_party_audience_segments.rb +16 -13
- data/examples/{v201311 → v201411}/audience_segment_service/update_audience_segments.rb +12 -11
- data/examples/{v201311 → v201411}/common/error_handling.rb +1 -1
- data/examples/{v201311 → v201411}/common/oauth2_jwt_handling.rb +9 -17
- data/examples/{v201311 → v201411}/common/setup_oauth2.rb +1 -1
- data/examples/{v201311 → v201411}/company_service/create_companies.rb +1 -1
- data/examples/{v201311 → v201411}/company_service/get_all_companies.rb +10 -18
- data/examples/{v201311 → v201411}/company_service/get_companies_by_statement.rb +21 -16
- data/examples/{v201311 → v201411}/company_service/update_companies.rb +17 -11
- data/examples/{v201311 → v201411}/contact_service/create_contacts.rb +1 -1
- data/examples/{v201311 → v201411}/contact_service/get_all_contacts.rb +11 -19
- data/examples/{v201311 → v201411}/contact_service/get_uninvited_contacts.rb +18 -22
- data/examples/{v201311 → v201411}/contact_service/update_contacts.rb +33 -17
- data/examples/v201411/content_metadata_key_hierarchy_service/create_content_metadata_key_hierarchies.rb +96 -0
- data/examples/v201411/content_metadata_key_hierarchy_service/delete_content_metadata_key_hierarchies.rb +106 -0
- data/examples/v201411/content_metadata_key_hierarchy_service/get_all_content_metadata_key_hierarchies.rb +89 -0
- data/examples/v201411/content_metadata_key_hierarchy_service/update_content_metadata_key_hierarchies.rb +115 -0
- data/examples/{v201311 → v201411}/content_service/get_all_content.rb +9 -18
- data/examples/{v201311 → v201411}/content_service/get_content_by_category.rb +18 -28
- data/examples/{v201311 → v201411}/creative_service/copy_image_creatives.rb +7 -7
- data/examples/{v201311 → v201411}/creative_service/create_creative_from_template.rb +1 -1
- data/examples/{v201311 → v201411}/creative_service/create_creatives.rb +1 -1
- data/examples/{v201311 → v201411}/creative_service/create_custom_creative.rb +1 -1
- data/examples/{v201311 → v201411}/creative_service/get_all_creatives.rb +8 -17
- data/examples/{v201311 → v201411}/creative_service/get_creatives_by_statement.rb +18 -13
- data/examples/{v201311 → v201411}/creative_service/update_creatives.rb +16 -11
- data/examples/{v201311 → v201411}/creative_set_service/associate_creative_set_to_line_item.rb +1 -1
- data/examples/{v201311 → v201411}/creative_set_service/create_creative_set.rb +1 -1
- data/examples/{v201311 → v201411}/creative_set_service/get_all_creative_sets.rb +9 -17
- data/examples/{v201311 → v201411}/creative_set_service/get_creative_sets_by_statement.rb +20 -14
- data/examples/{v201311 → v201411}/creative_set_service/update_creative_sets.rb +33 -15
- data/examples/{v201311 → v201411}/creative_template_service/get_all_creative_templates.rb +9 -17
- data/examples/{v201311/creative_template_service/get_creative_templates_by_statement.rb → v201411/creative_template_service/get_system_defined_creative_templates.rb} +24 -13
- data/examples/{v201311 → v201411}/creative_wrapper_service/create_creative_wrappers.rb +1 -1
- data/examples/{v201311 → v201411}/creative_wrapper_service/deactivate_creative_wrapper.rb +9 -7
- data/examples/{v201311 → v201411}/creative_wrapper_service/get_all_creative_wrappers.rb +10 -18
- data/examples/{v201311 → v201411}/creative_wrapper_service/get_creative_wrappers_by_statement.rb +17 -12
- data/examples/{v201311 → v201411}/creative_wrapper_service/update_creative_wrappers.rb +34 -16
- data/examples/{v201311 → v201411}/custom_field_service/create_custom_field_options.rb +1 -1
- data/examples/{v201311 → v201411}/custom_field_service/create_custom_fields.rb +1 -1
- data/examples/{v201311 → v201411}/custom_field_service/deactivate_all_line_item_custom_fields.rb +13 -23
- data/examples/{v201311 → v201411}/custom_field_service/get_all_custom_fields.rb +11 -19
- data/examples/{v201311 → v201411}/custom_field_service/get_all_line_item_custom_fields.rb +19 -14
- data/examples/{v201311 → v201411}/custom_field_service/set_line_item_custom_field_value.rb +59 -11
- data/examples/{v201311 → v201411}/custom_field_service/update_custom_fields.rb +33 -15
- data/examples/{v201311 → v201411}/custom_targeting_service/create_custom_targeting_keys_and_values.rb +1 -1
- data/examples/{v201311 → v201411}/custom_targeting_service/delete_custom_targeting_keys.rb +16 -20
- data/examples/{v201311 → v201411}/custom_targeting_service/delete_custom_targeting_values.rb +23 -21
- data/examples/{v201311 → v201411}/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +15 -36
- data/examples/{v201311 → v201411}/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +20 -16
- data/examples/{v201311 → v201411}/custom_targeting_service/get_custom_targeting_values_by_statement.rb +19 -15
- data/examples/{v201311 → v201411}/custom_targeting_service/update_custom_targeting_keys.rb +4 -3
- data/examples/{v201311 → v201411}/custom_targeting_service/update_custom_targeting_values.rb +34 -30
- data/examples/{v201311 → v201411}/forecast_service/get_forecast.rb +6 -3
- data/examples/{v201311 → v201411}/forecast_service/get_forecast_by_id.rb +1 -1
- data/examples/{v201311 → v201411}/inventory_service/create_ad_units.rb +1 -1
- data/examples/{v201311 → v201411}/inventory_service/create_mobile_ad_unit.rb +1 -1
- data/examples/{v201311 → v201411}/inventory_service/create_video_ad_unit.rb +1 -1
- data/examples/{v201311 → v201411}/inventory_service/deactivate_ad_units.rb +19 -23
- data/examples/{v201311 → v201411}/inventory_service/get_ad_unit_sizes.rb +7 -14
- data/examples/{v201311 → v201411}/inventory_service/get_ad_units_by_statement.rb +18 -13
- data/examples/{v201311 → v201411}/inventory_service/get_all_ad_units.rb +8 -17
- data/examples/{v201311 → v201411}/inventory_service/update_ad_units.rb +23 -11
- data/examples/{v201311 → v201411}/label_service/create_labels.rb +1 -1
- data/examples/{v201311 → v201411}/label_service/deactivate_labels.rb +15 -22
- data/examples/{v201311 → v201411}/label_service/get_all_labels.rb +9 -18
- data/examples/{v201311 → v201411}/label_service/get_labels_by_statement.rb +16 -11
- data/examples/{v201311 → v201411}/label_service/update_labels.rb +24 -26
- data/examples/{v201311 → v201411}/line_item_creative_association_service/create_licas.rb +1 -1
- data/examples/{v201311 → v201411}/line_item_creative_association_service/deactivate_licas.rb +15 -24
- data/examples/{v201311 → v201411}/line_item_creative_association_service/get_all_licas.rb +8 -17
- data/examples/{v201311 → v201411}/line_item_creative_association_service/get_licas_by_statement.rb +10 -8
- data/examples/{v201311 → v201411}/line_item_creative_association_service/update_licas.rb +16 -7
- data/examples/{v201311 → v201411}/line_item_service/activate_line_items.rb +13 -21
- data/examples/{v201311 → v201411}/line_item_service/create_line_items.rb +6 -3
- data/examples/{v201311 → v201411}/line_item_service/create_video_line_item.rb +8 -2
- data/examples/{v201311 → v201411}/line_item_service/get_all_line_items.rb +9 -17
- data/examples/{v201311 → v201411}/line_item_service/get_line_items_by_statement.rb +19 -17
- data/examples/{v201311 → v201411}/line_item_service/get_recently_updated_line_items.rb +19 -13
- data/examples/{v201311 → v201411}/line_item_service/target_custom_criteria.rb +31 -15
- data/examples/{v201311 → v201411}/line_item_service/update_line_items.rb +9 -9
- data/examples/{v201311 → v201411}/network_service/get_all_networks.rb +1 -1
- data/examples/{v201311 → v201411}/network_service/get_current_network.rb +1 -1
- data/examples/{v201311 → v201411}/network_service/make_test_network.rb +1 -1
- data/examples/{v201311 → v201411}/order_service/approve_orders.rb +16 -24
- data/examples/{v201311 → v201411}/order_service/create_orders.rb +1 -1
- data/examples/{v201311 → v201411}/order_service/get_all_orders.rb +8 -17
- data/examples/{v201311 → v201411}/order_service/get_orders_by_statement.rb +18 -14
- data/examples/{v201311 → v201411}/order_service/update_orders.rb +15 -7
- data/examples/{v201311 → v201411}/placement_service/create_placements.rb +4 -2
- data/examples/{v201311 → v201411}/placement_service/deactivate_placements.rb +14 -22
- data/examples/{v201311 → v201411}/placement_service/get_all_placements.rb +9 -17
- data/examples/{v201311 → v201411}/placement_service/get_placements_by_statement.rb +18 -13
- data/examples/{v201311 → v201411}/placement_service/update_placements.rb +16 -6
- data/examples/{v201311 → v201411}/publisher_query_language_service/fetch_match_tables.rb +9 -11
- data/examples/{v201311 → v201411}/publisher_query_language_service/get_all_line_items.rb +8 -9
- data/examples/{v201311 → v201411}/publisher_query_language_service/get_geo_targets.rb +10 -10
- data/examples/{v201311 → v201411}/publisher_query_language_service/get_line_items_named_like.rb +10 -10
- data/examples/{v201311 → v201411}/report_service/display_report.rb +1 -1
- data/examples/{v201311 → v201411}/report_service/download_report.rb +1 -1
- data/examples/{v201311 → v201411}/report_service/run_delivery_report.rb +1 -1
- data/examples/{v201311 → v201411}/report_service/run_inventory_report.rb +4 -4
- data/examples/{v201311 → v201411}/report_service/run_reach_report.rb +1 -1
- data/examples/{v201311/report_service/run_merged_delivery_report.rb → v201411/report_service/run_report_with_custom_fields.rb} +12 -14
- data/examples/{v201311 → v201411}/report_service/run_sales_report.rb +1 -1
- data/examples/{v201311 → v201411}/suggested_ad_unit_service/approve_all_suggested_ad_units.rb +25 -21
- data/examples/{v201311 → v201411}/suggested_ad_unit_service/get_all_suggested_ad_units.rb +9 -18
- data/examples/{v201311 → v201411}/suggested_ad_unit_service/get_suggested_ad_units_by_statement.rb +24 -21
- data/examples/{v201311 → v201411}/team_service/create_teams.rb +1 -1
- data/examples/{v201311 → v201411}/team_service/get_all_teams.rb +8 -17
- data/examples/{v201311 → v201411}/team_service/get_teams_by_statement.rb +15 -11
- data/examples/{v201311 → v201411}/team_service/update_teams.rb +4 -3
- data/examples/{v201311 → v201411}/user_service/create_users.rb +1 -1
- data/examples/{v201311 → v201411}/user_service/deactivate_users.rb +7 -7
- data/examples/{v201311 → v201411}/user_service/get_all_roles.rb +1 -1
- data/examples/{v201311 → v201411}/user_service/get_all_users.rb +8 -18
- data/examples/{v201311 → v201411}/user_service/get_current_user.rb +1 -1
- data/examples/{v201311 → v201411}/user_service/get_users_by_statement.rb +17 -12
- data/examples/{v201311 → v201411}/user_service/update_users.rb +15 -6
- data/examples/{v201311 → v201411}/user_team_association_service/create_user_team_associations.rb +1 -1
- data/examples/{v201311 → v201411}/user_team_association_service/delete_user_team_associations.rb +13 -21
- data/examples/{v201311 → v201411}/user_team_association_service/get_all_user_team_associations.rb +10 -17
- data/examples/{v201311 → v201411}/user_team_association_service/get_user_team_associations_by_statement.rb +20 -16
- data/examples/{v201311 → v201411}/user_team_association_service/update_user_team_associations.rb +8 -7
- data/lib/dfp_api/api_config.rb +26 -3
- data/lib/dfp_api/{v201302 → v201411}/activity_group_service.rb +6 -18
- data/lib/dfp_api/v201411/activity_group_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/activity_service.rb +6 -18
- data/lib/dfp_api/v201411/activity_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/ad_exclusion_rule_service.rb +46 -0
- data/lib/dfp_api/v201411/ad_exclusion_rule_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/ad_rule_service.rb +6 -18
- data/lib/dfp_api/v201411/ad_rule_service_registry.rb +46 -0
- data/lib/dfp_api/{v201208 → v201411}/audience_segment_service.rb +18 -6
- data/lib/dfp_api/v201411/audience_segment_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/base_rate_service.rb +46 -0
- data/lib/dfp_api/v201411/base_rate_service_registry.rb +46 -0
- data/lib/dfp_api/{v201208 → v201411}/company_service.rb +6 -18
- data/lib/dfp_api/v201411/company_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/contact_service.rb +6 -18
- data/lib/dfp_api/v201411/contact_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/content_bundle_service.rb +6 -18
- data/lib/dfp_api/v201411/content_bundle_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/content_metadata_key_hierarchy_service.rb +46 -0
- data/lib/dfp_api/v201411/content_metadata_key_hierarchy_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/content_service.rb +6 -6
- data/lib/dfp_api/v201411/content_service_registry.rb +46 -0
- data/lib/dfp_api/{v201208 → v201411}/creative_service.rb +6 -18
- data/lib/dfp_api/v201411/creative_service_registry.rb +46 -0
- data/lib/dfp_api/{v201208 → v201411}/creative_set_service.rb +6 -10
- data/lib/dfp_api/v201411/creative_set_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/creative_template_service.rb +6 -10
- data/lib/dfp_api/v201411/creative_template_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/creative_wrapper_service.rb +6 -18
- data/lib/dfp_api/v201411/creative_wrapper_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/custom_field_service.rb +6 -26
- data/lib/dfp_api/v201411/custom_field_service_registry.rb +46 -0
- data/lib/dfp_api/{v201208 → v201411}/custom_targeting_service.rb +6 -6
- data/lib/dfp_api/v201411/custom_targeting_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/exchange_rate_service.rb +46 -0
- data/lib/dfp_api/v201411/exchange_rate_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/forecast_service.rb +6 -6
- data/lib/dfp_api/v201411/forecast_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/inventory_service.rb +6 -18
- data/lib/dfp_api/v201411/inventory_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/label_service.rb +6 -18
- data/lib/dfp_api/v201411/label_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/line_item_creative_association_service.rb +6 -18
- data/lib/dfp_api/v201411/line_item_creative_association_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/line_item_service.rb +6 -18
- data/lib/dfp_api/v201411/line_item_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/line_item_template_service.rb +34 -0
- data/lib/dfp_api/v201411/line_item_template_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/live_stream_event_service.rb +46 -0
- data/lib/dfp_api/v201411/live_stream_event_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/network_service.rb +6 -6
- data/lib/dfp_api/v201411/network_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/order_service.rb +6 -18
- data/lib/dfp_api/v201411/order_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/placement_service.rb +6 -18
- data/lib/dfp_api/v201411/placement_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/premium_rate_service.rb +42 -0
- data/lib/dfp_api/v201411/premium_rate_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/product_service.rb +42 -0
- data/lib/dfp_api/v201411/product_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/product_template_service.rb +46 -0
- data/lib/dfp_api/v201411/product_template_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/proposal_line_item_service.rb +46 -0
- data/lib/dfp_api/v201411/proposal_line_item_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/proposal_service.rb +46 -0
- data/lib/dfp_api/v201411/proposal_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/publisher_query_language_service.rb +6 -6
- data/lib/dfp_api/v201411/publisher_query_language_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/rate_card_service.rb +46 -0
- data/lib/dfp_api/v201411/rate_card_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/reconciliation_order_report_service.rb +38 -0
- data/lib/dfp_api/v201411/reconciliation_order_report_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/reconciliation_report_row_service.rb +38 -0
- data/lib/dfp_api/v201411/reconciliation_report_row_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/reconciliation_report_service.rb +38 -0
- data/lib/dfp_api/v201411/reconciliation_report_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/report_service.rb +6 -6
- data/lib/dfp_api/v201411/report_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/shared_ad_unit_service.rb +38 -0
- data/lib/dfp_api/v201411/shared_ad_unit_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/suggested_ad_unit_service.rb +6 -10
- data/lib/dfp_api/v201411/suggested_ad_unit_service_registry.rb +46 -0
- data/lib/dfp_api/{v201302 → v201411}/team_service.rb +6 -18
- data/lib/dfp_api/v201411/team_service_registry.rb +46 -0
- data/lib/dfp_api/{v201208 → v201411}/user_service.rb +6 -18
- data/lib/dfp_api/v201411/user_service_registry.rb +46 -0
- data/lib/dfp_api/{v201211 → v201411}/user_team_association_service.rb +6 -18
- data/lib/dfp_api/v201411/user_team_association_service_registry.rb +46 -0
- data/lib/dfp_api/v201411/workflow_request_service.rb +38 -0
- data/lib/dfp_api/v201411/workflow_request_service_registry.rb +46 -0
- data/lib/dfp_api/version.rb +1 -1
- data/lib/dfp_api_statement.rb +5 -1
- metadata +1118 -1190
- data/examples/v201311/company_service/get_company.rb +0 -72
- data/examples/v201311/creative_service/get_creative.rb +0 -72
- data/examples/v201311/creative_template_service/get_creative_template.rb +0 -74
- data/examples/v201311/inventory_service/get_ad_unit.rb +0 -72
- data/examples/v201311/label_service/get_label.rb +0 -76
- data/examples/v201311/line_item_creative_association_service/get_lica.rb +0 -77
- data/examples/v201311/line_item_service/create_mobile_line_item.rb +0 -135
- data/examples/v201311/line_item_service/get_line_item.rb +0 -74
- data/examples/v201311/order_service/get_order.rb +0 -74
- data/examples/v201311/placement_service/get_placement.rb +0 -74
- data/examples/v201311/report_service/run_report_with_custom_fields.rb +0 -135
- data/examples/v201311/suggested_ad_unit_service/get_suggested_ad_unit.rb +0 -75
- data/examples/v201311/team_service/get_team.rb +0 -74
- data/examples/v201311/user_service/get_user.rb +0 -73
- data/examples/v201311/user_team_association_service/get_user_team_association.rb +0 -76
- data/lib/dfp_api/v201208/audience_segment_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/company_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/content_service.rb +0 -42
- data/lib/dfp_api/v201208/content_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/creative_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/creative_set_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/creative_template_service.rb +0 -38
- data/lib/dfp_api/v201208/creative_template_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/custom_field_service.rb +0 -78
- data/lib/dfp_api/v201208/custom_field_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/custom_targeting_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/forecast_service.rb +0 -38
- data/lib/dfp_api/v201208/forecast_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/inventory_service.rb +0 -62
- data/lib/dfp_api/v201208/inventory_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/label_service.rb +0 -58
- data/lib/dfp_api/v201208/label_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/line_item_creative_association_service.rb +0 -62
- data/lib/dfp_api/v201208/line_item_creative_association_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/line_item_service.rb +0 -58
- data/lib/dfp_api/v201208/line_item_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/network_service.rb +0 -46
- data/lib/dfp_api/v201208/network_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/order_service.rb +0 -58
- data/lib/dfp_api/v201208/order_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/placement_service.rb +0 -58
- data/lib/dfp_api/v201208/placement_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/publisher_query_language_service.rb +0 -34
- data/lib/dfp_api/v201208/publisher_query_language_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/report_service.rb +0 -46
- data/lib/dfp_api/v201208/report_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/suggested_ad_unit_service.rb +0 -42
- data/lib/dfp_api/v201208/suggested_ad_unit_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/team_service.rb +0 -54
- data/lib/dfp_api/v201208/team_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/third_party_slot_service.rb +0 -46
- data/lib/dfp_api/v201208/third_party_slot_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/user_service_registry.rb +0 -46
- data/lib/dfp_api/v201208/user_team_association_service.rb +0 -58
- data/lib/dfp_api/v201208/user_team_association_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/audience_segment_service.rb +0 -34
- data/lib/dfp_api/v201211/audience_segment_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/company_service.rb +0 -54
- data/lib/dfp_api/v201211/company_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/content_service.rb +0 -42
- data/lib/dfp_api/v201211/content_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/creative_service.rb +0 -54
- data/lib/dfp_api/v201211/creative_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/creative_set_service.rb +0 -46
- data/lib/dfp_api/v201211/creative_set_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/creative_template_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/creative_wrapper_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/custom_field_service.rb +0 -78
- data/lib/dfp_api/v201211/custom_field_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/custom_targeting_service.rb +0 -62
- data/lib/dfp_api/v201211/custom_targeting_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/forecast_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/inventory_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/label_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/line_item_creative_association_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/line_item_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/network_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/order_service.rb +0 -58
- data/lib/dfp_api/v201211/order_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/placement_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/publisher_query_language_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/report_service.rb +0 -46
- data/lib/dfp_api/v201211/report_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/suggested_ad_unit_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/team_service.rb +0 -54
- data/lib/dfp_api/v201211/team_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/third_party_slot_service.rb +0 -46
- data/lib/dfp_api/v201211/third_party_slot_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/user_service.rb +0 -66
- data/lib/dfp_api/v201211/user_service_registry.rb +0 -46
- data/lib/dfp_api/v201211/user_team_association_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/activity_group_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/activity_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/ad_rule_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/audience_segment_service.rb +0 -34
- data/lib/dfp_api/v201302/audience_segment_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/company_service.rb +0 -54
- data/lib/dfp_api/v201302/company_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/contact_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/content_bundle_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/content_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/creative_service.rb +0 -54
- data/lib/dfp_api/v201302/creative_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/creative_set_service.rb +0 -46
- data/lib/dfp_api/v201302/creative_set_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/creative_template_service.rb +0 -38
- data/lib/dfp_api/v201302/creative_template_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/creative_wrapper_service.rb +0 -58
- data/lib/dfp_api/v201302/creative_wrapper_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/custom_field_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/custom_targeting_service.rb +0 -62
- data/lib/dfp_api/v201302/custom_targeting_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/forecast_service.rb +0 -38
- data/lib/dfp_api/v201302/forecast_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/inventory_service.rb +0 -62
- data/lib/dfp_api/v201302/inventory_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/label_service.rb +0 -58
- data/lib/dfp_api/v201302/label_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/line_item_creative_association_service.rb +0 -62
- data/lib/dfp_api/v201302/line_item_creative_association_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/line_item_service.rb +0 -58
- data/lib/dfp_api/v201302/line_item_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/network_service.rb +0 -46
- data/lib/dfp_api/v201302/network_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/order_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/placement_service.rb +0 -58
- data/lib/dfp_api/v201302/placement_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/publisher_query_language_service.rb +0 -34
- data/lib/dfp_api/v201302/publisher_query_language_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/report_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/suggested_ad_unit_service.rb +0 -42
- data/lib/dfp_api/v201302/suggested_ad_unit_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/team_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/third_party_slot_service.rb +0 -46
- data/lib/dfp_api/v201302/third_party_slot_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/user_service.rb +0 -66
- data/lib/dfp_api/v201302/user_service_registry.rb +0 -46
- data/lib/dfp_api/v201302/user_team_association_service.rb +0 -58
- data/lib/dfp_api/v201302/user_team_association_service_registry.rb +0 -46
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
# Tags: ContactService.getContactsByStatement.
|
|
24
24
|
|
|
25
25
|
require 'dfp_api'
|
|
26
|
+
require 'dfp_api_statement'
|
|
26
27
|
|
|
27
|
-
API_VERSION = :
|
|
28
|
-
PAGE_SIZE = 500
|
|
28
|
+
API_VERSION = :v201411
|
|
29
29
|
|
|
30
30
|
def get_all_contacts()
|
|
31
31
|
# Get DfpApi instance and load configuration from ~/dfp_api.yml.
|
|
@@ -38,31 +38,23 @@ def get_all_contacts()
|
|
|
38
38
|
# Get the ContactService.
|
|
39
39
|
contact_service = dfp.service(:ContactService, API_VERSION)
|
|
40
40
|
|
|
41
|
-
#
|
|
42
|
-
|
|
43
|
-
page = {}
|
|
41
|
+
# Create statement for one page with current offset.
|
|
42
|
+
statement = DfpApiStatement::FilterStatement.new('ORDER BY id ASC')
|
|
44
43
|
|
|
45
44
|
begin
|
|
46
|
-
# Create statement for one page with current offset.
|
|
47
|
-
statement = {:query => "LIMIT %d OFFSET %d" % [PAGE_SIZE, offset]}
|
|
48
|
-
|
|
49
45
|
# Get contacts by statement.
|
|
50
|
-
page = contact_service.get_contacts_by_statement(
|
|
46
|
+
page = contact_service.get_contacts_by_statement(
|
|
47
|
+
statement.toStatement())
|
|
51
48
|
|
|
52
49
|
if page[:results]
|
|
53
|
-
# Increase query offset by page size.
|
|
54
|
-
offset += PAGE_SIZE
|
|
55
|
-
|
|
56
|
-
# Get the start index for printout.
|
|
57
|
-
start_index = page[:start_index]
|
|
58
|
-
|
|
59
|
-
# Print details about each content object in results page.
|
|
60
50
|
page[:results].each_with_index do |contact, index|
|
|
61
|
-
puts "%d) Contact ID: %d, name: %s
|
|
62
|
-
|
|
51
|
+
puts "%d) Contact ID: %d, name: '%s'" %
|
|
52
|
+
[index + statement.offset,
|
|
53
|
+
contact[:id], contact[:name]]
|
|
63
54
|
end
|
|
64
55
|
end
|
|
65
|
-
|
|
56
|
+
statement.offset += DfpApiStatement::SUGGESTED_PAGE_LIMIT
|
|
57
|
+
end while statement.offset < page[:total_result_set_size]
|
|
66
58
|
|
|
67
59
|
# Print a footer
|
|
68
60
|
if page.include?(:total_result_set_size)
|
|
@@ -24,8 +24,9 @@
|
|
|
24
24
|
# Tags: ContactService.getContactsByStatement.
|
|
25
25
|
|
|
26
26
|
require 'dfp_api'
|
|
27
|
+
require 'dfp_api_statement'
|
|
27
28
|
|
|
28
|
-
API_VERSION = :
|
|
29
|
+
API_VERSION = :v201411
|
|
29
30
|
PAGE_SIZE = 500
|
|
30
31
|
|
|
31
32
|
def get_uninvited_contacts()
|
|
@@ -42,37 +43,32 @@ def get_uninvited_contacts()
|
|
|
42
43
|
# Define initial values.
|
|
43
44
|
offset = 0
|
|
44
45
|
page = {}
|
|
45
|
-
query_base = 'WHERE status = :status ORDER BY id LIMIT %d OFFSET %d'
|
|
46
|
+
query_base = 'WHERE status = :status ORDER BY id ASC LIMIT %d OFFSET %d'
|
|
46
47
|
|
|
47
48
|
# Create statement.
|
|
48
|
-
statement = {
|
|
49
|
-
:values => [
|
|
50
|
-
{:key => 'status',
|
|
51
|
-
:value => {:value => 'UNINVITED', :xsi_type => 'TextValue'}}
|
|
52
|
-
]
|
|
53
|
-
}
|
|
54
49
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
50
|
+
statement = DfpApiStatement::FilterStatement.new(
|
|
51
|
+
'WHERE status = :status ORDER BY id ASC',
|
|
52
|
+
[
|
|
53
|
+
{:key => 'status',
|
|
54
|
+
:value => {:value => 'UNINVITED', :xsi_type => 'TextValue'}}
|
|
55
|
+
]
|
|
56
|
+
)
|
|
58
57
|
|
|
58
|
+
begin
|
|
59
59
|
# Get contacts by statement.
|
|
60
|
-
page = contact_service.get_contacts_by_statement(
|
|
60
|
+
page = contact_service.get_contacts_by_statement(
|
|
61
|
+
statement.toStatement())
|
|
61
62
|
|
|
62
63
|
if page[:results]
|
|
63
|
-
# Increase query offset by page size.
|
|
64
|
-
offset += PAGE_SIZE
|
|
65
|
-
|
|
66
|
-
# Get the start index for printout.
|
|
67
|
-
start_index = page[:start_index]
|
|
68
|
-
|
|
69
|
-
# Print details about each content object in results page.
|
|
70
64
|
page[:results].each_with_index do |contact, index|
|
|
71
|
-
puts "%d) Contact ID: %d, name: %s
|
|
72
|
-
|
|
65
|
+
puts "%d) Contact ID: %d, name: '%s'" %
|
|
66
|
+
[index + statement.offset,
|
|
67
|
+
contact[:id], contact[:name]]
|
|
73
68
|
end
|
|
74
69
|
end
|
|
75
|
-
|
|
70
|
+
statement.offset += DfpApiStatement::SUGGESTED_PAGE_LIMIT
|
|
71
|
+
end while statement.offset < page[:total_result_set_size]
|
|
76
72
|
|
|
77
73
|
# Print a footer
|
|
78
74
|
if page.include?(:total_result_set_size)
|
|
@@ -24,8 +24,9 @@
|
|
|
24
24
|
# Tags: ContactService.updateContacts
|
|
25
25
|
|
|
26
26
|
require 'dfp_api'
|
|
27
|
+
require 'dfp_api_statement'
|
|
27
28
|
|
|
28
|
-
API_VERSION = :
|
|
29
|
+
API_VERSION = :v201411
|
|
29
30
|
|
|
30
31
|
def update_contacts()
|
|
31
32
|
# Get DfpApi instance and load configuration from ~/dfp_api.yml.
|
|
@@ -38,28 +39,43 @@ def update_contacts()
|
|
|
38
39
|
# Get the ContactService.
|
|
39
40
|
contact_service = dfp.service(:ContactService, API_VERSION)
|
|
40
41
|
|
|
41
|
-
contact_id = 'INSERT_CONTACT_ID_HERE'
|
|
42
|
+
contact_id = 'INSERT_CONTACT_ID_HERE'.to_i
|
|
42
43
|
|
|
43
|
-
#
|
|
44
|
-
|
|
44
|
+
# Create a statement to only select a single contact.
|
|
45
|
+
statement = DfpApiStatement::FilterStatement.new(
|
|
46
|
+
'WHERE id = :id',
|
|
47
|
+
[
|
|
48
|
+
{:key => 'id',
|
|
49
|
+
:value => {:value => contact_id, :xsi_type => 'NumberValue'}}
|
|
50
|
+
],
|
|
51
|
+
1
|
|
52
|
+
}
|
|
45
53
|
|
|
46
|
-
#
|
|
47
|
-
|
|
54
|
+
# Get contacts by statement.
|
|
55
|
+
page = contact_service.get_contacts_by_statement(statement.toStatement())
|
|
48
56
|
|
|
49
|
-
|
|
50
|
-
|
|
57
|
+
if page[:results]
|
|
58
|
+
contacts = page[:results]
|
|
51
59
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
puts "Contact with ID: %d, name: %s and comment: '%s' was updated." %
|
|
56
|
-
[updated_contact[:id], updated_contact[:name],
|
|
57
|
-
updated_contact[:comment]]
|
|
60
|
+
contacts.each do |contact|
|
|
61
|
+
# Update the comment of the contact.
|
|
62
|
+
contact[:address] = '123 New Street, New York, NY, 10011'
|
|
58
63
|
end
|
|
59
|
-
else
|
|
60
|
-
raise 'No contacts were updated.'
|
|
61
|
-
end
|
|
62
64
|
|
|
65
|
+
# Update the contact on the server.
|
|
66
|
+
return_contacts = contact_service.update_contacts([contact])
|
|
67
|
+
|
|
68
|
+
# Display results.
|
|
69
|
+
if return_contacts
|
|
70
|
+
return_contacts.each do |updated_contact|
|
|
71
|
+
puts "Contact with ID: %d, name: %s and comment: '%s' was updated." %
|
|
72
|
+
[updated_contact[:id], updated_contact[:name],
|
|
73
|
+
updated_contact[:comment]]
|
|
74
|
+
end
|
|
75
|
+
else
|
|
76
|
+
raise 'No contacts were updated.'
|
|
77
|
+
end
|
|
78
|
+
end
|
|
63
79
|
end
|
|
64
80
|
|
|
65
81
|
if __FILE__ == $0
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# Encoding: utf-8
|
|
3
|
+
#
|
|
4
|
+
# Author:: api.nicholaschen@gmail.com (Nicholas Chen)
|
|
5
|
+
#
|
|
6
|
+
# Copyright:: Copyright 2014, 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 creates a content metadata key hierarchy.
|
|
22
|
+
#
|
|
23
|
+
# This feature is only available to DFP video publishers.
|
|
24
|
+
#
|
|
25
|
+
# Tags: ContentMetadataKeyHierarchyService.createContentMetadataKeyHierarchies
|
|
26
|
+
|
|
27
|
+
require 'dfp_api'
|
|
28
|
+
|
|
29
|
+
API_VERSION = :v201411
|
|
30
|
+
|
|
31
|
+
def create_content_metadata_key_hierarchies()
|
|
32
|
+
# Get DfpApi instance and load configuration from ~/dfp_api.yml.
|
|
33
|
+
dfp = DfpApi::Api.new
|
|
34
|
+
|
|
35
|
+
# To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
|
|
36
|
+
# the configuration file or provide your own logger:
|
|
37
|
+
# dfp.logger = Logger.new('dfp_xml.log')
|
|
38
|
+
|
|
39
|
+
# Get the ContentMetadataKeyHierarchyService.
|
|
40
|
+
cmkh_service = dfp.service(:ContentMetadataKeyHierarchyService, API_VERSION)
|
|
41
|
+
|
|
42
|
+
# Set the IDs of the custom targeting keys for the hierarchy.
|
|
43
|
+
hierarchy_level_one_key_id = 'INSERT_LEVEL_ONE_CUSTOM_TARGETING_KEY_ID_HERE'
|
|
44
|
+
hierarchy_level_two_key_id = 'INSERT_LEVEL_TWO_CUSTOM_TARGETING_KEY_ID_HERE'
|
|
45
|
+
|
|
46
|
+
hierarchy_level_1 = {
|
|
47
|
+
:custom_targeting_key_id => hierarchy_level_own_key_id,
|
|
48
|
+
:hierarchy_level => 1
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
hierarchy_level_2 = {
|
|
52
|
+
:custom_targeting_key_id => hierarchy_level_two_key_id,
|
|
53
|
+
:hierarchy_level => 2
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
hierarchy_levels = [hierarchy_level_1, hierarchy_level_2]
|
|
57
|
+
|
|
58
|
+
content_metadata_key_hierarchy = {
|
|
59
|
+
:name => 'Content Metadata Key Hierarchy #%d' % (Time.new.to_f * 1000),
|
|
60
|
+
:hierarchy_levels => hierarchy_levels
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
# Create the content metadata key hierarchy on the server.
|
|
64
|
+
content_metadata_key_hierarchies =
|
|
65
|
+
cmkh_service.create_content_metadata_key_hierarchies(
|
|
66
|
+
[content_metadata_key_hierarchy])
|
|
67
|
+
|
|
68
|
+
content_metadata_key_hierarchies.each do |content_metadata_key_hierarchy|
|
|
69
|
+
puts 'A content metadata key hierarchy with ID %d, name "%s", and %d ' +
|
|
70
|
+
'levels was created.' % [
|
|
71
|
+
content_metadata_key_hierarchy[:id],
|
|
72
|
+
content_metadata_key_hierarchy[:name],
|
|
73
|
+
content_metadata_key_hierarchy[:hierarchy_levels].length]
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
if __FILE__ == $0
|
|
78
|
+
begin
|
|
79
|
+
create_content_metadata_key_hierarchies()
|
|
80
|
+
|
|
81
|
+
# HTTP errors.
|
|
82
|
+
rescue AdsCommon::Errors::HttpError => e
|
|
83
|
+
puts "HTTP Error: %s" % e
|
|
84
|
+
|
|
85
|
+
# API errors.
|
|
86
|
+
rescue DfpApi::Errors::ApiException => e
|
|
87
|
+
puts "Message: %s" % e.message
|
|
88
|
+
puts 'Errors:'
|
|
89
|
+
e.errors.each_with_index do |error, index|
|
|
90
|
+
puts "\tError [%d]:" % (index + 1)
|
|
91
|
+
error.each do |field, value|
|
|
92
|
+
puts "\t\t%s: %s" % [field, value]
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# Encoding: utf-8
|
|
3
|
+
#
|
|
4
|
+
# Author:: api.nicholaschen@gmail.com (Nicholas Chen)
|
|
5
|
+
#
|
|
6
|
+
# Copyright:: Copyright 2014, 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 deletes a single content metadata key hierarchy.
|
|
22
|
+
#
|
|
23
|
+
# This feature is only available to DFP video publishers.
|
|
24
|
+
#
|
|
25
|
+
# Tags: ContentMetadataKeyHierarchyService.getContentMetadataKeyHierarchiesByStatement
|
|
26
|
+
# Tags: ContentMetadataKeyHierarchyService.performContentMetadataKeyHierarchyAction
|
|
27
|
+
|
|
28
|
+
require 'dfp_api'
|
|
29
|
+
require 'dfp_api_statement'
|
|
30
|
+
|
|
31
|
+
API_VERSION = :v201411
|
|
32
|
+
|
|
33
|
+
def delete_content_metadata_key_hierarchies()
|
|
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 ContentMetadataKeyHierarchyService.
|
|
42
|
+
cmkh_service = dfp.service(:ContentMetadataKeyHierarchyService, API_VERSION)
|
|
43
|
+
|
|
44
|
+
# Set the ID of the content metadata key hierarchy.
|
|
45
|
+
content_metadata_key_hierarchy_id = 'CONTENT_METADATA_KEY_HIERARCHY_ID'
|
|
46
|
+
|
|
47
|
+
# Create a statement to only select a single content metadata key hierarchy.
|
|
48
|
+
statement = DfpApiStatement::FilterStatement.new(
|
|
49
|
+
'WHERE id = :id ORDER BY id ASC',
|
|
50
|
+
[
|
|
51
|
+
{:key => 'id',
|
|
52
|
+
:value => {:value => content_metadata_key_hierarchy_id,
|
|
53
|
+
:xsi_type => 'NumberValue'}},
|
|
54
|
+
],
|
|
55
|
+
1
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
# Get content metadata key hierarchies by statement.
|
|
59
|
+
page = cmkh_service.get_content_metadata_key_hierarchies_by_statement(
|
|
60
|
+
statement.toStatement())
|
|
61
|
+
|
|
62
|
+
if page[:results]
|
|
63
|
+
content_metadata_key_hierarchy = page[:results].first
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
if content_metadata_key_hierarchy
|
|
67
|
+
puts 'Content metadata key hierarchy with ID ' +
|
|
68
|
+
'"%d" will be deleted.' % content_metadata_key_hierarchy[:id]
|
|
69
|
+
|
|
70
|
+
# Perform action.
|
|
71
|
+
result = cmkh_service.perform_content_metadata_key_hierarchy_action(
|
|
72
|
+
{:xsi_type => 'DeleteContentMetadataKeyHierarchy'},
|
|
73
|
+
statement.toStatement())
|
|
74
|
+
|
|
75
|
+
# Display results.
|
|
76
|
+
if result and result[:num_changes] > 0
|
|
77
|
+
puts 'Number of content metadata key hierarchies deleted: %d' %
|
|
78
|
+
result[:num_changes]
|
|
79
|
+
else
|
|
80
|
+
puts 'No content metadata key hierarchies were deleted.'
|
|
81
|
+
end
|
|
82
|
+
else
|
|
83
|
+
puts 'No content metadata key hierarchy found to delete.'
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
if __FILE__ == $0
|
|
88
|
+
begin
|
|
89
|
+
delete_content_metadata_key_hierarchies()
|
|
90
|
+
|
|
91
|
+
# HTTP errors.
|
|
92
|
+
rescue AdsCommon::Errors::HttpError => e
|
|
93
|
+
puts "HTTP Error: %s" % e
|
|
94
|
+
|
|
95
|
+
# API errors.
|
|
96
|
+
rescue DfpApi::Errors::ApiException => e
|
|
97
|
+
puts "Message: %s" % e.message
|
|
98
|
+
puts 'Errors:'
|
|
99
|
+
e.errors.each_with_index do |error, index|
|
|
100
|
+
puts "\tError [%d]:" % (index + 1)
|
|
101
|
+
error.each do |field, value|
|
|
102
|
+
puts "\t\t%s: %s" % [field, value]
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
end
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# Encoding: utf-8
|
|
3
|
+
#
|
|
4
|
+
# Author:: api.nicholaschen@gmail.com (Nicholas Chen)
|
|
5
|
+
#
|
|
6
|
+
# Copyright:: Copyright 2014, 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 all content metadata key hierarchies.
|
|
22
|
+
#
|
|
23
|
+
# This feature is only available to DFP video publishers.
|
|
24
|
+
#
|
|
25
|
+
# Tags: ContentMetadataKeyHierarchyService.getContentMetadataKeyHierarchiesByStatement
|
|
26
|
+
|
|
27
|
+
require 'dfp_api'
|
|
28
|
+
require 'dfp_api_statement'
|
|
29
|
+
|
|
30
|
+
API_VERSION = :v201411
|
|
31
|
+
|
|
32
|
+
def get_all_content_metadata_key_hierarchies()
|
|
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 ContentMetadataKeyHierarchyService.
|
|
41
|
+
cmkh_service = dfp.service(:ContentMetadataKeyHierarchyService, API_VERSION)
|
|
42
|
+
|
|
43
|
+
# Create statement for one page with current offset.
|
|
44
|
+
statement = DfpApiStatement::FilterStatement.new('ORDER BY id ASC')
|
|
45
|
+
|
|
46
|
+
begin
|
|
47
|
+
|
|
48
|
+
# Get content metadata key hierarchies by statement.
|
|
49
|
+
page = cmkh_service.get_content_metadata_key_hierarchies_by_statement(
|
|
50
|
+
statement.toStatement())
|
|
51
|
+
|
|
52
|
+
if page[:results]
|
|
53
|
+
page[:results].each_with_index do |content_metadata_key_hierarchy, index|
|
|
54
|
+
puts ("%d) Content Metadata Key Hierarchy ID: " +
|
|
55
|
+
"%d and name: %s was found.") % [
|
|
56
|
+
index + statement.offset,
|
|
57
|
+
content_metadata_key_hierarchy[:id],
|
|
58
|
+
content_metadata_key_hierarchy[:name]]
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
statement.offset += DfpApiStatement::SUGGESTED_PAGE_LIMIT
|
|
62
|
+
end while statement.offset < page[:total_result_set_size]
|
|
63
|
+
|
|
64
|
+
# Print a footer
|
|
65
|
+
if page.include?(:total_result_set_size)
|
|
66
|
+
puts "Total number of results: %d" % page[:total_result_set_size]
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
if __FILE__ == $0
|
|
71
|
+
begin
|
|
72
|
+
get_all_content_metadata_key_hierarchies()
|
|
73
|
+
|
|
74
|
+
# HTTP errors.
|
|
75
|
+
rescue AdsCommon::Errors::HttpError => e
|
|
76
|
+
puts "HTTP Error: %s" % e
|
|
77
|
+
|
|
78
|
+
# API errors.
|
|
79
|
+
rescue DfpApi::Errors::ApiException => e
|
|
80
|
+
puts "Message: %s" % e.message
|
|
81
|
+
puts 'Errors:'
|
|
82
|
+
e.errors.each_with_index do |error, index|
|
|
83
|
+
puts "\tError [%d]:" % (index + 1)
|
|
84
|
+
error.each do |field, value|
|
|
85
|
+
puts "\t\t%s: %s" % [field, value]
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|