google-adwords-api 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README +178 -0
- data/Rakefile +117 -0
- data/adwords_api.yml +21 -0
- data/examples/v200909/add_ad_extension_override.rb +91 -0
- data/examples/v200909/add_ad_group.rb +98 -0
- data/examples/v200909/add_ad_group_criteria.rb +117 -0
- data/examples/v200909/add_ads.rb +129 -0
- data/examples/v200909/add_campaign.rb +101 -0
- data/examples/v200909/add_campaign_ad_extension.rb +130 -0
- data/examples/v200909/add_negative_campaign_criterion.rb +96 -0
- data/examples/v200909/check_campaigns.rb +132 -0
- data/examples/v200909/delete_ad.rb +94 -0
- data/examples/v200909/delete_ad_group.rb +86 -0
- data/examples/v200909/delete_ad_group_criterion.rb +95 -0
- data/examples/v200909/delete_campaign.rb +87 -0
- data/examples/v200909/get_all_active_ad_group_criteria.rb +93 -0
- data/examples/v200909/get_all_ad_extension_overrides.rb +91 -0
- data/examples/v200909/get_all_ad_group_criteria.rb +91 -0
- data/examples/v200909/get_all_ad_groups.rb +88 -0
- data/examples/v200909/get_all_ad_params.rb +89 -0
- data/examples/v200909/get_all_ads.rb +88 -0
- data/examples/v200909/get_all_campaign_ad_extensions.rb +90 -0
- data/examples/v200909/get_all_campaign_targets.rb +83 -0
- data/examples/v200909/get_all_campaigns.rb +83 -0
- data/examples/v200909/get_all_disapproved_ads.rb +94 -0
- data/examples/v200909/get_all_paused_campaigns.rb +86 -0
- data/examples/v200909/get_conversion_optimizer_eligibility.rb +112 -0
- data/examples/v200909/get_geo_location_info.rb +108 -0
- data/examples/v200909/get_method_cost.rb +96 -0
- data/examples/v200909/get_operation_count.rb +88 -0
- data/examples/v200909/get_related_keywords.rb +115 -0
- data/examples/v200909/get_related_placements.rb +114 -0
- data/examples/v200909/get_total_usage_units_per_month.rb +83 -0
- data/examples/v200909/get_unit_count.rb +88 -0
- data/examples/v200909/perform_bulk_mutate_job.rb +221 -0
- data/examples/v200909/set_ad_params.rb +124 -0
- data/examples/v200909/set_campaign_targets.rb +125 -0
- data/examples/v200909/update_ad.rb +95 -0
- data/examples/v200909/update_ad_group.rb +90 -0
- data/examples/v200909/update_ad_group_criterion.rb +108 -0
- data/examples/v200909/update_campaign.rb +93 -0
- data/examples/v201003/add_ad_extension_override.rb +91 -0
- data/examples/v201003/add_ad_group.rb +98 -0
- data/examples/v201003/add_ad_group_criteria.rb +117 -0
- data/examples/v201003/add_ads.rb +182 -0
- data/examples/v201003/add_campaign.rb +101 -0
- data/examples/v201003/add_campaign_ad_extension.rb +130 -0
- data/examples/v201003/add_keywords_performance_report_definition.rb +108 -0
- data/examples/v201003/add_negative_campaign_criterion.rb +96 -0
- data/examples/v201003/check_campaigns.rb +132 -0
- data/examples/v201003/delete_ad.rb +94 -0
- data/examples/v201003/delete_ad_group.rb +86 -0
- data/examples/v201003/delete_ad_group_criterion.rb +95 -0
- data/examples/v201003/delete_campaign.rb +87 -0
- data/examples/v201003/download_report.rb +71 -0
- data/examples/v201003/get_all_active_ad_group_criteria.rb +93 -0
- data/examples/v201003/get_all_ad_extension_overrides.rb +91 -0
- data/examples/v201003/get_all_ad_group_criteria.rb +91 -0
- data/examples/v201003/get_all_ad_groups.rb +88 -0
- data/examples/v201003/get_all_ad_params.rb +89 -0
- data/examples/v201003/get_all_ads.rb +91 -0
- data/examples/v201003/get_all_campaign_ad_extensions.rb +90 -0
- data/examples/v201003/get_all_campaign_targets.rb +83 -0
- data/examples/v201003/get_all_campaigns.rb +83 -0
- data/examples/v201003/get_all_disapproved_ads.rb +94 -0
- data/examples/v201003/get_all_images.rb +88 -0
- data/examples/v201003/get_all_paused_campaigns.rb +86 -0
- data/examples/v201003/get_all_report_definitions.rb +84 -0
- data/examples/v201003/get_all_videos.rb +85 -0
- data/examples/v201003/get_conversion_optimizer_eligibility.rb +112 -0
- data/examples/v201003/get_criterion_bid_landscape.rb +105 -0
- data/examples/v201003/get_geo_location_info.rb +108 -0
- data/examples/v201003/get_method_cost.rb +96 -0
- data/examples/v201003/get_operation_count.rb +88 -0
- data/examples/v201003/get_related_keywords.rb +115 -0
- data/examples/v201003/get_related_placements.rb +114 -0
- data/examples/v201003/get_report_fields.rb +81 -0
- data/examples/v201003/get_total_usage_units_per_month.rb +83 -0
- data/examples/v201003/get_unit_count.rb +88 -0
- data/examples/v201003/perform_bulk_mutate_job.rb +221 -0
- data/examples/v201003/set_ad_params.rb +124 -0
- data/examples/v201003/set_campaign_targets.rb +125 -0
- data/examples/v201003/update_ad.rb +95 -0
- data/examples/v201003/update_ad_group.rb +90 -0
- data/examples/v201003/update_ad_group_criterion.rb +108 -0
- data/examples/v201003/update_campaign.rb +92 -0
- data/examples/v201003/upload_image.rb +97 -0
- data/examples/v201008/add_ad_extension_override.rb +91 -0
- data/examples/v201008/add_ad_group.rb +98 -0
- data/examples/v201008/add_ad_group_criteria.rb +117 -0
- data/examples/v201008/add_ads.rb +182 -0
- data/examples/v201008/add_campaign.rb +101 -0
- data/examples/v201008/add_campaign_ad_extension.rb +130 -0
- data/examples/v201008/add_experiment.rb +162 -0
- data/examples/v201008/add_keywords_performance_report_definition.rb +108 -0
- data/examples/v201008/add_negative_campaign_criterion.rb +96 -0
- data/examples/v201008/add_user_list.rb +96 -0
- data/examples/v201008/check_campaigns.rb +132 -0
- data/examples/v201008/delete_ad.rb +94 -0
- data/examples/v201008/delete_ad_group.rb +86 -0
- data/examples/v201008/delete_ad_group_criterion.rb +95 -0
- data/examples/v201008/delete_bulk_mutate_job.rb +96 -0
- data/examples/v201008/delete_campaign.rb +87 -0
- data/examples/v201008/delete_experiment.rb +87 -0
- data/examples/v201008/delete_user_list.rb +87 -0
- data/examples/v201008/download_report.rb +71 -0
- data/examples/v201008/get_account_hierarchy.rb +112 -0
- data/examples/v201008/get_all_account_changes.rb +144 -0
- data/examples/v201008/get_all_active_ad_group_criteria.rb +93 -0
- data/examples/v201008/get_all_ad_extension_overrides.rb +91 -0
- data/examples/v201008/get_all_ad_group_criteria.rb +91 -0
- data/examples/v201008/get_all_ad_groups.rb +88 -0
- data/examples/v201008/get_all_ad_params.rb +89 -0
- data/examples/v201008/get_all_ads.rb +91 -0
- data/examples/v201008/get_all_campaign_ad_extensions.rb +90 -0
- data/examples/v201008/get_all_campaign_targets.rb +83 -0
- data/examples/v201008/get_all_campaigns.rb +83 -0
- data/examples/v201008/get_all_disapproved_ads.rb +94 -0
- data/examples/v201008/get_all_experiments.rb +93 -0
- data/examples/v201008/get_all_images.rb +88 -0
- data/examples/v201008/get_all_paused_campaigns.rb +86 -0
- data/examples/v201008/get_all_report_definitions.rb +84 -0
- data/examples/v201008/get_all_user_lists.rb +84 -0
- data/examples/v201008/get_all_videos.rb +85 -0
- data/examples/v201008/get_bulk_mutate_job.rb +106 -0
- data/examples/v201008/get_campaign_alerts.rb +103 -0
- data/examples/v201008/get_conversion_optimizer_eligibility.rb +97 -0
- data/examples/v201008/get_criterion_bid_landscape.rb +105 -0
- data/examples/v201008/get_geo_location_info.rb +108 -0
- data/examples/v201008/get_method_cost.rb +96 -0
- data/examples/v201008/get_operation_count.rb +88 -0
- data/examples/v201008/get_related_keywords.rb +115 -0
- data/examples/v201008/get_related_placements.rb +114 -0
- data/examples/v201008/get_report_fields.rb +81 -0
- data/examples/v201008/get_total_usage_units_per_month.rb +83 -0
- data/examples/v201008/get_traffic_estimates.rb +156 -0
- data/examples/v201008/get_unit_count.rb +88 -0
- data/examples/v201008/handle_partial_failures.rb +135 -0
- data/examples/v201008/handle_policy_violation_error.rb +146 -0
- data/examples/v201008/perform_bulk_mutate_job.rb +221 -0
- data/examples/v201008/promote_experiment.rb +88 -0
- data/examples/v201008/set_ad_params.rb +124 -0
- data/examples/v201008/set_campaign_targets.rb +125 -0
- data/examples/v201008/update_ad.rb +95 -0
- data/examples/v201008/update_ad_group.rb +90 -0
- data/examples/v201008/update_ad_group_criterion.rb +108 -0
- data/examples/v201008/update_campaign.rb +93 -0
- data/examples/v201008/update_user_list.rb +91 -0
- data/examples/v201008/upload_image.rb +97 -0
- data/examples/v201101/add_ad_extension_override.rb +91 -0
- data/examples/v201101/add_ad_group.rb +98 -0
- data/examples/v201101/add_ad_group_criteria.rb +117 -0
- data/examples/v201101/add_ads.rb +182 -0
- data/examples/v201101/add_campaign.rb +108 -0
- data/examples/v201101/add_campaign_ad_extension.rb +130 -0
- data/examples/v201101/add_experiment.rb +162 -0
- data/examples/v201101/add_keywords_performance_report_definition.rb +108 -0
- data/examples/v201101/add_mcc_report_definition.rb +103 -0
- data/examples/v201101/add_negative_campaign_criterion.rb +96 -0
- data/examples/v201101/add_user_list.rb +96 -0
- data/examples/v201101/check_campaigns.rb +132 -0
- data/examples/v201101/delete_ad.rb +94 -0
- data/examples/v201101/delete_ad_group.rb +86 -0
- data/examples/v201101/delete_ad_group_criterion.rb +95 -0
- data/examples/v201101/delete_bulk_mutate_job.rb +96 -0
- data/examples/v201101/delete_campaign.rb +87 -0
- data/examples/v201101/delete_experiment.rb +87 -0
- data/examples/v201101/delete_user_list.rb +87 -0
- data/examples/v201101/download_mcc_report.rb +93 -0
- data/examples/v201101/download_report.rb +71 -0
- data/examples/v201101/get_account_hierarchy.rb +112 -0
- data/examples/v201101/get_ad_group_bid_landscape.rb +103 -0
- data/examples/v201101/get_all_account_changes.rb +146 -0
- data/examples/v201101/get_all_active_ad_group_criteria.rb +106 -0
- data/examples/v201101/get_all_ad_extension_overrides.rb +91 -0
- data/examples/v201101/get_all_ad_group_criteria.rb +97 -0
- data/examples/v201101/get_all_ad_groups.rb +94 -0
- data/examples/v201101/get_all_ad_params.rb +89 -0
- data/examples/v201101/get_all_ads.rb +99 -0
- data/examples/v201101/get_all_campaign_ad_extensions.rb +96 -0
- data/examples/v201101/get_all_campaign_targets.rb +83 -0
- data/examples/v201101/get_all_campaigns.rb +86 -0
- data/examples/v201101/get_all_disapproved_ads.rb +102 -0
- data/examples/v201101/get_all_experiments.rb +98 -0
- data/examples/v201101/get_all_images.rb +90 -0
- data/examples/v201101/get_all_paused_campaigns.rb +92 -0
- data/examples/v201101/get_all_report_definitions.rb +84 -0
- data/examples/v201101/get_all_user_lists.rb +87 -0
- data/examples/v201101/get_all_videos.rb +87 -0
- data/examples/v201101/get_bulk_mutate_job.rb +106 -0
- data/examples/v201101/get_campaign_alerts.rb +103 -0
- data/examples/v201101/get_conversion_optimizer_eligibility.rb +102 -0
- data/examples/v201101/get_criterion_bid_landscape.rb +102 -0
- data/examples/v201101/get_geo_location_info.rb +108 -0
- data/examples/v201101/get_method_cost.rb +96 -0
- data/examples/v201101/get_operation_count.rb +88 -0
- data/examples/v201101/get_related_keywords.rb +115 -0
- data/examples/v201101/get_related_placements.rb +114 -0
- data/examples/v201101/get_report_fields.rb +81 -0
- data/examples/v201101/get_total_usage_units_per_month.rb +83 -0
- data/examples/v201101/get_traffic_estimates.rb +157 -0
- data/examples/v201101/get_unit_count.rb +88 -0
- data/examples/v201101/handle_partial_failures.rb +135 -0
- data/examples/v201101/handle_policy_violation_error.rb +146 -0
- data/examples/v201101/perform_bulk_mutate_job.rb +221 -0
- data/examples/v201101/promote_experiment.rb +88 -0
- data/examples/v201101/set_ad_params.rb +124 -0
- data/examples/v201101/set_campaign_targets.rb +111 -0
- data/examples/v201101/update_ad.rb +95 -0
- data/examples/v201101/update_ad_group.rb +90 -0
- data/examples/v201101/update_ad_group_criterion.rb +108 -0
- data/examples/v201101/update_campaign.rb +93 -0
- data/examples/v201101/update_user_list.rb +91 -0
- data/examples/v201101/upload_image.rb +97 -0
- data/lib/adwords_api.rb +273 -0
- data/lib/adwords_api/api_config.rb +270 -0
- data/lib/adwords_api/auth/v13_login_handler.rb +36 -0
- data/lib/adwords_api/credential_handler.rb +111 -0
- data/lib/adwords_api/errors.rb +85 -0
- data/lib/adwords_api/extensions.rb +245 -0
- data/lib/adwords_api/soap4r_response_handler.rb +121 -0
- data/lib/adwords_api/utils.rb +80 -0
- data/lib/adwords_api/v13/AccountService.rb +321 -0
- data/lib/adwords_api/v13/AccountServiceDriver.rb +87 -0
- data/lib/adwords_api/v13/AccountServiceMappingRegistry.rb +337 -0
- data/lib/adwords_api/v13/AccountServiceWrapper.rb +407 -0
- data/lib/adwords_api/v13/ReportService.rb +328 -0
- data/lib/adwords_api/v13/ReportServiceDriver.rb +103 -0
- data/lib/adwords_api/v13/ReportServiceMappingRegistry.rb +298 -0
- data/lib/adwords_api/v13/ReportServiceWrapper.rb +500 -0
- data/lib/adwords_api/v13/TrafficEstimatorService.rb +414 -0
- data/lib/adwords_api/v13/TrafficEstimatorServiceDriver.rb +79 -0
- data/lib/adwords_api/v13/TrafficEstimatorServiceMappingRegistry.rb +491 -0
- data/lib/adwords_api/v13/TrafficEstimatorServiceWrapper.rb +402 -0
- data/lib/adwords_api/v200909/AdExtensionOverrideService.rb +1105 -0
- data/lib/adwords_api/v200909/AdExtensionOverrideServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/AdExtensionOverrideServiceMappingRegistry.rb +1265 -0
- data/lib/adwords_api/v200909/AdExtensionOverrideServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/AdGroupAdService.rb +2603 -0
- data/lib/adwords_api/v200909/AdGroupAdServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/AdGroupAdServiceMappingRegistry.rb +2755 -0
- data/lib/adwords_api/v200909/AdGroupAdServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/AdGroupCriterionService.rb +1577 -0
- data/lib/adwords_api/v200909/AdGroupCriterionServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/AdGroupCriterionServiceMappingRegistry.rb +1821 -0
- data/lib/adwords_api/v200909/AdGroupCriterionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/AdGroupService.rb +1251 -0
- data/lib/adwords_api/v200909/AdGroupServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/AdGroupServiceMappingRegistry.rb +1395 -0
- data/lib/adwords_api/v200909/AdGroupServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/AdParamService.rb +765 -0
- data/lib/adwords_api/v200909/AdParamServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/AdParamServiceMappingRegistry.rb +927 -0
- data/lib/adwords_api/v200909/AdParamServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/BulkMutateJobService.rb +4778 -0
- data/lib/adwords_api/v200909/BulkMutateJobServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/BulkMutateJobServiceMappingRegistry.rb +5077 -0
- data/lib/adwords_api/v200909/BulkMutateJobServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/CampaignAdExtensionService.rb +1065 -0
- data/lib/adwords_api/v200909/CampaignAdExtensionServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/CampaignAdExtensionServiceMappingRegistry.rb +1273 -0
- data/lib/adwords_api/v200909/CampaignAdExtensionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/CampaignCriterionService.rb +1019 -0
- data/lib/adwords_api/v200909/CampaignCriterionServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/CampaignCriterionServiceMappingRegistry.rb +1237 -0
- data/lib/adwords_api/v200909/CampaignCriterionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/CampaignService.rb +1633 -0
- data/lib/adwords_api/v200909/CampaignServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/CampaignServiceMappingRegistry.rb +1785 -0
- data/lib/adwords_api/v200909/CampaignServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/CampaignTargetService.rb +1435 -0
- data/lib/adwords_api/v200909/CampaignTargetServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/CampaignTargetServiceMappingRegistry.rb +1569 -0
- data/lib/adwords_api/v200909/CampaignTargetServiceWrapper.rb +332 -0
- data/lib/adwords_api/v200909/GeoLocationService.rb +611 -0
- data/lib/adwords_api/v200909/GeoLocationServiceDriver.rb +55 -0
- data/lib/adwords_api/v200909/GeoLocationServiceMappingRegistry.rb +771 -0
- data/lib/adwords_api/v200909/GeoLocationServiceWrapper.rb +303 -0
- data/lib/adwords_api/v200909/InfoService.rb +605 -0
- data/lib/adwords_api/v200909/InfoServiceDriver.rb +55 -0
- data/lib/adwords_api/v200909/InfoServiceMappingRegistry.rb +764 -0
- data/lib/adwords_api/v200909/InfoServiceWrapper.rb +303 -0
- data/lib/adwords_api/v200909/TargetingIdeaService.rb +2253 -0
- data/lib/adwords_api/v200909/TargetingIdeaServiceDriver.rb +63 -0
- data/lib/adwords_api/v200909/TargetingIdeaServiceMappingRegistry.rb +2688 -0
- data/lib/adwords_api/v200909/TargetingIdeaServiceWrapper.rb +335 -0
- data/lib/adwords_api/v201003/AdExtensionOverrideService.rb +1301 -0
- data/lib/adwords_api/v201003/AdExtensionOverrideServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/AdExtensionOverrideServiceMappingRegistry.rb +1468 -0
- data/lib/adwords_api/v201003/AdExtensionOverrideServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/AdGroupAdService.rb +2909 -0
- data/lib/adwords_api/v201003/AdGroupAdServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/AdGroupAdServiceMappingRegistry.rb +2970 -0
- data/lib/adwords_api/v201003/AdGroupAdServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/AdGroupCriterionService.rb +1762 -0
- data/lib/adwords_api/v201003/AdGroupCriterionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/AdGroupCriterionServiceMappingRegistry.rb +1978 -0
- data/lib/adwords_api/v201003/AdGroupCriterionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/AdGroupService.rb +1421 -0
- data/lib/adwords_api/v201003/AdGroupServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/AdGroupServiceMappingRegistry.rb +1546 -0
- data/lib/adwords_api/v201003/AdGroupServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/AdParamService.rb +859 -0
- data/lib/adwords_api/v201003/AdParamServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/AdParamServiceMappingRegistry.rb +1002 -0
- data/lib/adwords_api/v201003/AdParamServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/BidLandscapeService.rb +847 -0
- data/lib/adwords_api/v201003/BidLandscapeServiceDriver.rb +55 -0
- data/lib/adwords_api/v201003/BidLandscapeServiceMappingRegistry.rb +958 -0
- data/lib/adwords_api/v201003/BidLandscapeServiceWrapper.rb +306 -0
- data/lib/adwords_api/v201003/BulkMutateJobService.rb +5401 -0
- data/lib/adwords_api/v201003/BulkMutateJobServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/BulkMutateJobServiceMappingRegistry.rb +5600 -0
- data/lib/adwords_api/v201003/BulkMutateJobServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/CampaignAdExtensionService.rb +1255 -0
- data/lib/adwords_api/v201003/CampaignAdExtensionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/CampaignAdExtensionServiceMappingRegistry.rb +1452 -0
- data/lib/adwords_api/v201003/CampaignAdExtensionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/CampaignCriterionService.rb +1145 -0
- data/lib/adwords_api/v201003/CampaignCriterionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/CampaignCriterionServiceMappingRegistry.rb +1344 -0
- data/lib/adwords_api/v201003/CampaignCriterionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/CampaignService.rb +1901 -0
- data/lib/adwords_api/v201003/CampaignServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/CampaignServiceMappingRegistry.rb +2010 -0
- data/lib/adwords_api/v201003/CampaignServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/CampaignTargetService.rb +1642 -0
- data/lib/adwords_api/v201003/CampaignTargetServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/CampaignTargetServiceMappingRegistry.rb +1754 -0
- data/lib/adwords_api/v201003/CampaignTargetServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/GeoLocationService.rb +692 -0
- data/lib/adwords_api/v201003/GeoLocationServiceDriver.rb +55 -0
- data/lib/adwords_api/v201003/GeoLocationServiceMappingRegistry.rb +840 -0
- data/lib/adwords_api/v201003/GeoLocationServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201003/InfoService.rb +687 -0
- data/lib/adwords_api/v201003/InfoServiceDriver.rb +55 -0
- data/lib/adwords_api/v201003/InfoServiceMappingRegistry.rb +833 -0
- data/lib/adwords_api/v201003/InfoServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201003/MediaService.rb +1192 -0
- data/lib/adwords_api/v201003/MediaServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/MediaServiceMappingRegistry.rb +1290 -0
- data/lib/adwords_api/v201003/MediaServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201003/ReportDefinitionService.rb +905 -0
- data/lib/adwords_api/v201003/ReportDefinitionServiceDriver.rb +71 -0
- data/lib/adwords_api/v201003/ReportDefinitionServiceMappingRegistry.rb +1036 -0
- data/lib/adwords_api/v201003/ReportDefinitionServiceWrapper.rb +378 -0
- data/lib/adwords_api/v201003/TargetingIdeaService.rb +2517 -0
- data/lib/adwords_api/v201003/TargetingIdeaServiceDriver.rb +63 -0
- data/lib/adwords_api/v201003/TargetingIdeaServiceMappingRegistry.rb +2925 -0
- data/lib/adwords_api/v201003/TargetingIdeaServiceWrapper.rb +335 -0
- data/lib/adwords_api/v201008/AdExtensionOverrideService.rb +1383 -0
- data/lib/adwords_api/v201008/AdExtensionOverrideServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/AdExtensionOverrideServiceMappingRegistry.rb +1563 -0
- data/lib/adwords_api/v201008/AdExtensionOverrideServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/AdGroupAdService.rb +2928 -0
- data/lib/adwords_api/v201008/AdGroupAdServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/AdGroupAdServiceMappingRegistry.rb +2969 -0
- data/lib/adwords_api/v201008/AdGroupAdServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/AdGroupCriterionService.rb +1981 -0
- data/lib/adwords_api/v201008/AdGroupCriterionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/AdGroupCriterionServiceMappingRegistry.rb +2229 -0
- data/lib/adwords_api/v201008/AdGroupCriterionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/AdGroupService.rb +1548 -0
- data/lib/adwords_api/v201008/AdGroupServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/AdGroupServiceMappingRegistry.rb +1687 -0
- data/lib/adwords_api/v201008/AdGroupServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/AdParamService.rb +889 -0
- data/lib/adwords_api/v201008/AdParamServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/AdParamServiceMappingRegistry.rb +1041 -0
- data/lib/adwords_api/v201008/AdParamServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/AlertService.rb +743 -0
- data/lib/adwords_api/v201008/AlertServiceDriver.rb +55 -0
- data/lib/adwords_api/v201008/AlertServiceMappingRegistry.rb +836 -0
- data/lib/adwords_api/v201008/AlertServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201008/BidLandscapeService.rb +928 -0
- data/lib/adwords_api/v201008/BidLandscapeServiceDriver.rb +55 -0
- data/lib/adwords_api/v201008/BidLandscapeServiceMappingRegistry.rb +1059 -0
- data/lib/adwords_api/v201008/BidLandscapeServiceWrapper.rb +306 -0
- data/lib/adwords_api/v201008/BulkMutateJobService.rb +6063 -0
- data/lib/adwords_api/v201008/BulkMutateJobServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/BulkMutateJobServiceMappingRegistry.rb +6265 -0
- data/lib/adwords_api/v201008/BulkMutateJobServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/CampaignAdExtensionService.rb +1594 -0
- data/lib/adwords_api/v201008/CampaignAdExtensionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/CampaignAdExtensionServiceMappingRegistry.rb +1789 -0
- data/lib/adwords_api/v201008/CampaignAdExtensionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/CampaignCriterionService.rb +1243 -0
- data/lib/adwords_api/v201008/CampaignCriterionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/CampaignCriterionServiceMappingRegistry.rb +1467 -0
- data/lib/adwords_api/v201008/CampaignCriterionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/CampaignService.rb +1979 -0
- data/lib/adwords_api/v201008/CampaignServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/CampaignServiceMappingRegistry.rb +2089 -0
- data/lib/adwords_api/v201008/CampaignServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/CampaignTargetService.rb +1651 -0
- data/lib/adwords_api/v201008/CampaignTargetServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/CampaignTargetServiceMappingRegistry.rb +1757 -0
- data/lib/adwords_api/v201008/CampaignTargetServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/CustomerSyncService.rb +693 -0
- data/lib/adwords_api/v201008/CustomerSyncServiceDriver.rb +55 -0
- data/lib/adwords_api/v201008/CustomerSyncServiceMappingRegistry.rb +820 -0
- data/lib/adwords_api/v201008/CustomerSyncServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201008/ExperimentService.rb +1124 -0
- data/lib/adwords_api/v201008/ExperimentServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/ExperimentServiceMappingRegistry.rb +1281 -0
- data/lib/adwords_api/v201008/ExperimentServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/GeoLocationService.rb +695 -0
- data/lib/adwords_api/v201008/GeoLocationServiceDriver.rb +55 -0
- data/lib/adwords_api/v201008/GeoLocationServiceMappingRegistry.rb +843 -0
- data/lib/adwords_api/v201008/GeoLocationServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201008/InfoService.rb +690 -0
- data/lib/adwords_api/v201008/InfoServiceDriver.rb +55 -0
- data/lib/adwords_api/v201008/InfoServiceMappingRegistry.rb +836 -0
- data/lib/adwords_api/v201008/InfoServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201008/MediaService.rb +1144 -0
- data/lib/adwords_api/v201008/MediaServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/MediaServiceMappingRegistry.rb +1241 -0
- data/lib/adwords_api/v201008/MediaServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201008/ReportDefinitionService.rb +976 -0
- data/lib/adwords_api/v201008/ReportDefinitionServiceDriver.rb +71 -0
- data/lib/adwords_api/v201008/ReportDefinitionServiceMappingRegistry.rb +1115 -0
- data/lib/adwords_api/v201008/ReportDefinitionServiceWrapper.rb +378 -0
- data/lib/adwords_api/v201008/ServicedAccountService.rb +630 -0
- data/lib/adwords_api/v201008/ServicedAccountServiceDriver.rb +55 -0
- data/lib/adwords_api/v201008/ServicedAccountServiceMappingRegistry.rb +752 -0
- data/lib/adwords_api/v201008/ServicedAccountServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201008/TargetingIdeaService.rb +2645 -0
- data/lib/adwords_api/v201008/TargetingIdeaServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/TargetingIdeaServiceMappingRegistry.rb +3080 -0
- data/lib/adwords_api/v201008/TargetingIdeaServiceWrapper.rb +335 -0
- data/lib/adwords_api/v201008/TrafficEstimatorService.rb +1833 -0
- data/lib/adwords_api/v201008/TrafficEstimatorServiceDriver.rb +55 -0
- data/lib/adwords_api/v201008/TrafficEstimatorServiceMappingRegistry.rb +2124 -0
- data/lib/adwords_api/v201008/TrafficEstimatorServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201008/UserListService.rb +846 -0
- data/lib/adwords_api/v201008/UserListServiceDriver.rb +63 -0
- data/lib/adwords_api/v201008/UserListServiceMappingRegistry.rb +915 -0
- data/lib/adwords_api/v201008/UserListServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/AdExtensionOverrideService.rb +1399 -0
- data/lib/adwords_api/v201101/AdExtensionOverrideServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/AdExtensionOverrideServiceMappingRegistry.rb +1573 -0
- data/lib/adwords_api/v201101/AdExtensionOverrideServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/AdGroupAdService.rb +2585 -0
- data/lib/adwords_api/v201101/AdGroupAdServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/AdGroupAdServiceMappingRegistry.rb +2583 -0
- data/lib/adwords_api/v201101/AdGroupAdServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/AdGroupCriterionService.rb +2099 -0
- data/lib/adwords_api/v201101/AdGroupCriterionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/AdGroupCriterionServiceMappingRegistry.rb +2327 -0
- data/lib/adwords_api/v201101/AdGroupCriterionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/AdGroupService.rb +1610 -0
- data/lib/adwords_api/v201101/AdGroupServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/AdGroupServiceMappingRegistry.rb +1765 -0
- data/lib/adwords_api/v201101/AdGroupServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/AdParamService.rb +922 -0
- data/lib/adwords_api/v201101/AdParamServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/AdParamServiceMappingRegistry.rb +1077 -0
- data/lib/adwords_api/v201101/AdParamServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/AlertService.rb +747 -0
- data/lib/adwords_api/v201101/AlertServiceDriver.rb +55 -0
- data/lib/adwords_api/v201101/AlertServiceMappingRegistry.rb +838 -0
- data/lib/adwords_api/v201101/AlertServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201101/BulkMutateJobService.rb +6208 -0
- data/lib/adwords_api/v201101/BulkMutateJobServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/BulkMutateJobServiceMappingRegistry.rb +6433 -0
- data/lib/adwords_api/v201101/BulkMutateJobServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/CampaignAdExtensionService.rb +1677 -0
- data/lib/adwords_api/v201101/CampaignAdExtensionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/CampaignAdExtensionServiceMappingRegistry.rb +1855 -0
- data/lib/adwords_api/v201101/CampaignAdExtensionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/CampaignCriterionService.rb +1388 -0
- data/lib/adwords_api/v201101/CampaignCriterionServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/CampaignCriterionServiceMappingRegistry.rb +1601 -0
- data/lib/adwords_api/v201101/CampaignCriterionServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/CampaignService.rb +2188 -0
- data/lib/adwords_api/v201101/CampaignServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/CampaignServiceMappingRegistry.rb +2301 -0
- data/lib/adwords_api/v201101/CampaignServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/CampaignTargetService.rb +1629 -0
- data/lib/adwords_api/v201101/CampaignTargetServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/CampaignTargetServiceMappingRegistry.rb +1725 -0
- data/lib/adwords_api/v201101/CampaignTargetServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/CustomerSyncService.rb +694 -0
- data/lib/adwords_api/v201101/CustomerSyncServiceDriver.rb +55 -0
- data/lib/adwords_api/v201101/CustomerSyncServiceMappingRegistry.rb +820 -0
- data/lib/adwords_api/v201101/CustomerSyncServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201101/DataService.rb +1079 -0
- data/lib/adwords_api/v201101/DataServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/DataServiceMappingRegistry.rb +1177 -0
- data/lib/adwords_api/v201101/DataServiceWrapper.rb +338 -0
- data/lib/adwords_api/v201101/ExperimentService.rb +1256 -0
- data/lib/adwords_api/v201101/ExperimentServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/ExperimentServiceMappingRegistry.rb +1417 -0
- data/lib/adwords_api/v201101/ExperimentServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/GeoLocationService.rb +695 -0
- data/lib/adwords_api/v201101/GeoLocationServiceDriver.rb +55 -0
- data/lib/adwords_api/v201101/GeoLocationServiceMappingRegistry.rb +843 -0
- data/lib/adwords_api/v201101/GeoLocationServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201101/InfoService.rb +690 -0
- data/lib/adwords_api/v201101/InfoServiceDriver.rb +55 -0
- data/lib/adwords_api/v201101/InfoServiceMappingRegistry.rb +836 -0
- data/lib/adwords_api/v201101/InfoServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201101/MediaService.rb +1247 -0
- data/lib/adwords_api/v201101/MediaServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/MediaServiceMappingRegistry.rb +1357 -0
- data/lib/adwords_api/v201101/MediaServiceWrapper.rb +332 -0
- data/lib/adwords_api/v201101/ReportDefinitionService.rb +1121 -0
- data/lib/adwords_api/v201101/ReportDefinitionServiceDriver.rb +71 -0
- data/lib/adwords_api/v201101/ReportDefinitionServiceMappingRegistry.rb +1263 -0
- data/lib/adwords_api/v201101/ReportDefinitionServiceWrapper.rb +364 -0
- data/lib/adwords_api/v201101/ServicedAccountService.rb +636 -0
- data/lib/adwords_api/v201101/ServicedAccountServiceDriver.rb +55 -0
- data/lib/adwords_api/v201101/ServicedAccountServiceMappingRegistry.rb +756 -0
- data/lib/adwords_api/v201101/ServicedAccountServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201101/TargetingIdeaService.rb +2827 -0
- data/lib/adwords_api/v201101/TargetingIdeaServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/TargetingIdeaServiceMappingRegistry.rb +3262 -0
- data/lib/adwords_api/v201101/TargetingIdeaServiceWrapper.rb +335 -0
- data/lib/adwords_api/v201101/TrafficEstimatorService.rb +1839 -0
- data/lib/adwords_api/v201101/TrafficEstimatorServiceDriver.rb +55 -0
- data/lib/adwords_api/v201101/TrafficEstimatorServiceMappingRegistry.rb +2128 -0
- data/lib/adwords_api/v201101/TrafficEstimatorServiceWrapper.rb +303 -0
- data/lib/adwords_api/v201101/UserListService.rb +1206 -0
- data/lib/adwords_api/v201101/UserListServiceDriver.rb +63 -0
- data/lib/adwords_api/v201101/UserListServiceMappingRegistry.rb +1323 -0
- data/lib/adwords_api/v201101/UserListServiceWrapper.rb +332 -0
- metadata +649 -0
data/README
ADDED
@@ -0,0 +1,178 @@
|
|
1
|
+
= Google AdWords Client Library
|
2
|
+
|
3
|
+
Welcome to the next generation Google-developed Ruby client library for the
|
4
|
+
AdWords API!
|
5
|
+
|
6
|
+
Please note that this is an early PREVIEW of the client library, under heavy
|
7
|
+
development! A lot of things (such as documentation and full unit testing) are
|
8
|
+
still missing or being worked on.
|
9
|
+
|
10
|
+
It contains full support for v13, v200909, v201003, v201008 and v201101, with
|
11
|
+
full stubs, and a simplified programming interface that lets you handle
|
12
|
+
everything in native Ruby collections, instead of forcing you to deal with SOAP
|
13
|
+
library-generated objects.
|
14
|
+
|
15
|
+
|
16
|
+
= Docs for Users
|
17
|
+
|
18
|
+
== 1 - Installation:
|
19
|
+
|
20
|
+
google-adwords-api is a ruby gem. See http://docs.rubygems.org/read/book/1
|
21
|
+
|
22
|
+
Install it using the gem install command.
|
23
|
+
$ gem install --remote google-adwords-api
|
24
|
+
|
25
|
+
The following gem libraries are required:
|
26
|
+
- soap4r v1.5.8
|
27
|
+
- httpclient v2.1.2 or greater
|
28
|
+
- google-ads-common v0.1.x
|
29
|
+
|
30
|
+
|
31
|
+
== 2 - Using the client library:
|
32
|
+
|
33
|
+
It's pretty easy to use.
|
34
|
+
See http://docs.rubygems.org/read/chapter/3#page70 for how to set the rubygem
|
35
|
+
environment.
|
36
|
+
$ export RUBYOPT=rubygems
|
37
|
+
or
|
38
|
+
$ ruby -rubygems my_program_that_uses_gems
|
39
|
+
|
40
|
+
If you are running Ruby 1.8 and do not use the rubygems option, you need to add
|
41
|
+
require 'rubygems'
|
42
|
+
at the beginning of your programs.
|
43
|
+
|
44
|
+
Then:
|
45
|
+
gem 'google-adwords-api'
|
46
|
+
require 'adwords_api'
|
47
|
+
|
48
|
+
adwords = AdwordsApi::Api.new
|
49
|
+
creates an Api object that will grant you access to all the services for all of
|
50
|
+
the currently supported vesions of the AdWords API. It uses a config file in
|
51
|
+
ENV['HOME']/adwords_api.yml to read all of your configurations.
|
52
|
+
There is an example config file in the root adwords_api directory.
|
53
|
+
You can also pass API a manually constructed config hash like:
|
54
|
+
adwords = AdwordsApi::Api.new({
|
55
|
+
:authentication => {
|
56
|
+
:method => 'ClientLogin',
|
57
|
+
:developer_token => 'DEVELOPER_TOKEN',
|
58
|
+
:user_agent => 'Ruby Sample',
|
59
|
+
:password => 'PASSWORD',
|
60
|
+
:email => 'user@domain.com'
|
61
|
+
:client_email => 'user2@domain.com'
|
62
|
+
},
|
63
|
+
:service => {
|
64
|
+
:environment => 'Production'
|
65
|
+
}
|
66
|
+
})
|
67
|
+
|
68
|
+
Then, just specify which service you're looking to use, and which version:
|
69
|
+
campaign_srv = adwords.service(:CampaignService, :v201101)
|
70
|
+
|
71
|
+
and you should now be able to just use the API methods in the object you were
|
72
|
+
returned:
|
73
|
+
campaigns = campaign_srv.get({}) # Empty selector to get all
|
74
|
+
|
75
|
+
See the code in the examples directory for working examples you can build from.
|
76
|
+
|
77
|
+
*Note*: if your setup requires you to send connections through a proxy server,
|
78
|
+
please set the appropriate options in the config file or config hash. E.g.:
|
79
|
+
config[:connection] = {
|
80
|
+
:proxy => 'http://user:password@proxy_hostname:8080/path'
|
81
|
+
}
|
82
|
+
|
83
|
+
|
84
|
+
=== 2.1 - Ruby names for a Ruby library:
|
85
|
+
|
86
|
+
In order to make things more Ruby-like for our Ruby developers, we've renamed
|
87
|
+
API objects and methods to more closely match Ruby conventions. This means using
|
88
|
+
snake_case for methods and parameters, and UpperCamelCase for class names.
|
89
|
+
|
90
|
+
For example, the 'getReportFields' method of the ReportDefinitionService is
|
91
|
+
named 'get_report_fields' in the client library. You invoke it by doing:
|
92
|
+
response = report_def_srv.get_report_fields(report_type)
|
93
|
+
|
94
|
+
The 'get' method, on the other hand, returns a ReportDefinitionPage object which
|
95
|
+
has an 'entries' and a 'total_num_entries' field. So, to access the return
|
96
|
+
values, you would do:
|
97
|
+
response = report_def_srv.get(selector)
|
98
|
+
num_entries = response[:rval][:total_num_entries]
|
99
|
+
|
100
|
+
Essentially, all you have to do is follow Ruby conventions, and the library will
|
101
|
+
do the rest. All of the examples are written following this standard.
|
102
|
+
|
103
|
+
If, however, you would prefer to use the names as provided in the AdWords
|
104
|
+
documentation, please disable the 'use_ruby_names' option under the 'service'
|
105
|
+
category in the config:
|
106
|
+
config[:service][:use_ruby_names] = false
|
107
|
+
|
108
|
+
Disabling Ruby names is an experimental feature, and it is not recommended.
|
109
|
+
|
110
|
+
|
111
|
+
=== 2.2 - Using the Sandbox:
|
112
|
+
|
113
|
+
In order to use the sandbox, make sure that the 'environment' parameter under
|
114
|
+
'service' in the configuration is set to Sandbox.
|
115
|
+
config[:service] = {
|
116
|
+
:environment => 'Sandbox'
|
117
|
+
}
|
118
|
+
|
119
|
+
|
120
|
+
=== 2.3 - Logging:
|
121
|
+
|
122
|
+
It is often useful to see a trace of the raw SOAP XML being sent and received.
|
123
|
+
The quickest way of achieving this when debugging your application is by setting
|
124
|
+
the ADWORDSAPI_DEBUG environment variable to TRUE; e.g. in the bash shell:
|
125
|
+
$ export ADWORDSAPI_DEBUG=TRUE
|
126
|
+
or from your Ruby code:
|
127
|
+
ENV['ADWORDSAPI_DEBUG'] = 'TRUE'
|
128
|
+
|
129
|
+
This will output the SOAP XML to stderr, which will usually show up in your
|
130
|
+
terminal window.
|
131
|
+
|
132
|
+
There's also the option of logging requests and XML to files. In order to enable
|
133
|
+
this, you should use the log_to_file method of the loggers inside your
|
134
|
+
AdwordsApi::Api object:
|
135
|
+
adwords = AdwordsApi::Api.new
|
136
|
+
adwords.request_logger.log_to_file
|
137
|
+
adwords.xml_logger.log_to_file
|
138
|
+
|
139
|
+
The first logs the units spent and the requests made, whereas the second logs
|
140
|
+
the full SOAP XML being sent and received over the wire. These will be written
|
141
|
+
to the current directory by default, but you can specify another directory as an
|
142
|
+
optional parameter to log_to_file:
|
143
|
+
adwords.request_logger.log_to_file('/var/log/my_app/')
|
144
|
+
adwords.xml_logger.log_to_file('/var/log/my_app/')
|
145
|
+
|
146
|
+
The files will be named request_info and soap_xml, respectively.
|
147
|
+
|
148
|
+
|
149
|
+
= Docs for Developers
|
150
|
+
|
151
|
+
$ rake getwsdl
|
152
|
+
to get the wsdl files
|
153
|
+
|
154
|
+
$ rake generate
|
155
|
+
to regenerate the bindings if needed
|
156
|
+
|
157
|
+
$ rake package
|
158
|
+
to package the gem and create a release
|
159
|
+
|
160
|
+
$ rake test
|
161
|
+
to run unit tests on the library
|
162
|
+
|
163
|
+
|
164
|
+
= Copyright/License Info
|
165
|
+
|
166
|
+
Copyright 2011, Google Inc. All Rights Reserved.
|
167
|
+
|
168
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
169
|
+
you may not use this file except in compliance with the License.
|
170
|
+
You may obtain a copy of the License at
|
171
|
+
|
172
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
173
|
+
|
174
|
+
Unless required by applicable law or agreed to in writing, software
|
175
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
176
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
177
|
+
See the License for the specific language governing permissions and
|
178
|
+
limitations under the License.
|
data/Rakefile
ADDED
@@ -0,0 +1,117 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
#
|
3
|
+
# Authors:: api.sgomes@gmail.com (Sérgio Gomes)
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
|
6
|
+
#
|
7
|
+
# License:: Licensed under the Apache License, Version 2.0 (the "License");
|
8
|
+
# you may not use this file except in compliance with the License.
|
9
|
+
# You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing, software
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
15
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
16
|
+
# implied.
|
17
|
+
# See the License for the specific language governing permissions and
|
18
|
+
# limitations under the License.
|
19
|
+
#
|
20
|
+
# Rakefile for the AdWords API client library.
|
21
|
+
|
22
|
+
# A little trick so we can load things from the lib/ directory without having
|
23
|
+
# to patch the "require" statements in the files
|
24
|
+
$:.unshift File.join(File.dirname(__FILE__), 'lib')
|
25
|
+
|
26
|
+
require 'rubygems'
|
27
|
+
gem 'google-ads-common'
|
28
|
+
require 'ads_common/build/soap4r_generator'
|
29
|
+
require 'ads_common/config'
|
30
|
+
require 'adwords_api/api_config'
|
31
|
+
require 'adwords_api/extensions'
|
32
|
+
|
33
|
+
# Configure some constants and built-in tasks
|
34
|
+
$PROJECT_NAME = 'adwords_api'
|
35
|
+
$GEM_NAME = 'google-adwords-api'
|
36
|
+
$API_NAME = 'AdWords API'
|
37
|
+
$CURRENT_VERSION = AdwordsApi::ApiConfig::CLIENT_LIB_VERSION
|
38
|
+
$PRODDIR = 'adwords_api'
|
39
|
+
$ADS_COMMON_VERSION = '~> 0.2.0'
|
40
|
+
|
41
|
+
# Configure module / namespace
|
42
|
+
$MODULE = AdwordsApi
|
43
|
+
|
44
|
+
# Configure config file location.
|
45
|
+
$CONFIG_FILE = 'adwords_api.yml'
|
46
|
+
|
47
|
+
# Configure gem details
|
48
|
+
$GEM_SUMMARY = "Client library for the AdWords API."
|
49
|
+
description = "#{$PROJECT_NAME} provides an easy to use way to access " +
|
50
|
+
"the AdWords API in Ruby.\nCurrently the following AdWords API versions " +
|
51
|
+
"are supported:"
|
52
|
+
versions = AdwordsApi::ApiConfig.versions.map { |version| version.to_s }
|
53
|
+
versions.sort.each do |version|
|
54
|
+
description += "\n * #{version}"
|
55
|
+
end
|
56
|
+
$GEM_DESCRIPTION = description
|
57
|
+
$GEM_AUTHORS = ['Sergio Gomes']
|
58
|
+
$GEM_EMAIL = 'api.sgomes@gmail.com'
|
59
|
+
$GEM_HOMEPAGE = 'http://code.google.com/p/google-api-adwords-ruby/'
|
60
|
+
|
61
|
+
|
62
|
+
# Configure code generation for the AdWords API client library.
|
63
|
+
module Generator
|
64
|
+
|
65
|
+
class << Generator
|
66
|
+
include AdsCommon::Build::Soap4rGenerator
|
67
|
+
end
|
68
|
+
|
69
|
+
def self.api_config
|
70
|
+
AdwordsApi::ApiConfig
|
71
|
+
end
|
72
|
+
|
73
|
+
def self.config
|
74
|
+
filename = File.join(ENV['HOME'], $CONFIG_FILE)
|
75
|
+
if File.exist?(filename)
|
76
|
+
AdsCommon::Config.new(filename)
|
77
|
+
else
|
78
|
+
nil
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
def self.extension_config
|
83
|
+
AdwordsApi::Extensions
|
84
|
+
end
|
85
|
+
|
86
|
+
private
|
87
|
+
|
88
|
+
# Helper method to create a link to a method's entry in the API online docs.
|
89
|
+
#
|
90
|
+
# Args:
|
91
|
+
# - version: the API version (as an integer)
|
92
|
+
# - service: the service name (as a string)
|
93
|
+
# - method: the method name (as a string)
|
94
|
+
#
|
95
|
+
# Returns:
|
96
|
+
# The URL to the method's entry in the documentation (as a string).
|
97
|
+
# nil if none.
|
98
|
+
#
|
99
|
+
def self.doc_link(version, service, method)
|
100
|
+
if version.to_s == 'v13'
|
101
|
+
base = 'http://code.google.com/apis/adwords/docs/developer/'
|
102
|
+
url = base + service.to_s + '.html#' + method
|
103
|
+
return url
|
104
|
+
elsif version.to_s =~ /v20\d[\d]+/
|
105
|
+
base = 'http://code.google.com/apis/adwords/docs/reference/'
|
106
|
+
url = base + version.to_s + '/' + service.to_s + '.html#' + method
|
107
|
+
return url
|
108
|
+
else
|
109
|
+
return nil
|
110
|
+
end
|
111
|
+
end
|
112
|
+
|
113
|
+
end
|
114
|
+
|
115
|
+
|
116
|
+
# Import tasks in common file
|
117
|
+
require 'ads_common/build/rake_common'
|
data/adwords_api.yml
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
---
|
2
|
+
# This is an example configuration file for the AdWords API client library.
|
3
|
+
# Please fill in the required fields, and copy it over to your home directory.
|
4
|
+
:authentication:
|
5
|
+
:method: ClientLogin
|
6
|
+
:developer_token: INSERT_YOUR_DEVELOPER_TOKEN_HERE
|
7
|
+
:user_agent: INSERT_YOUR_USER_AGENT_HERE
|
8
|
+
:password: INSERT_YOUR_PASSWORD_HERE
|
9
|
+
:email: INSERT_YOUR_LOGIN_EMAIL_HERE
|
10
|
+
:client_email: INSERT_YOUR_CLIENT_EMAIL_HERE
|
11
|
+
# If you would like to manage your auth tokens manually, use the 'auth_token'
|
12
|
+
# property.
|
13
|
+
#:auth_token: INSERT_AUTH_TOKEN_HERE
|
14
|
+
:service:
|
15
|
+
:environment: Production
|
16
|
+
:use_ruby_names: true
|
17
|
+
:connection:
|
18
|
+
:strict_ssl_verification: false
|
19
|
+
# If your proxy connection requires authentication, make sure to include it in
|
20
|
+
# the URL, e.g.: http://user:password@proxy_hostname:8080/path
|
21
|
+
# :proxy: INSERT_PROXY_HERE
|
@@ -0,0 +1,91 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
#
|
3
|
+
# Author:: api.sgomes@gmail.com (Sérgio Gomes)
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
|
6
|
+
#
|
7
|
+
# License:: Licensed under the Apache License, Version 2.0 (the "License");
|
8
|
+
# you may not use this file except in compliance with the License.
|
9
|
+
# You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing, software
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
15
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
16
|
+
# implied.
|
17
|
+
# See the License for the specific language governing permissions and
|
18
|
+
# limitations under the License.
|
19
|
+
#
|
20
|
+
# This example illustrates override an ad extension for a specific ad, by
|
21
|
+
# creating an ad extension override. To create a campaign, run add_campaign.rb.
|
22
|
+
# To create an ad, run add_ads.rb.
|
23
|
+
#
|
24
|
+
# Tags: AdExtensionOverrideService.mutate
|
25
|
+
|
26
|
+
require 'rubygems'
|
27
|
+
gem 'google-adwords-api'
|
28
|
+
require 'adwords_api'
|
29
|
+
|
30
|
+
API_VERSION = :v200909
|
31
|
+
|
32
|
+
def add_ad_extension_override()
|
33
|
+
# AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
|
34
|
+
# when called without parameters.
|
35
|
+
adwords = AdwordsApi::Api.new
|
36
|
+
ad_ext_override_srv =
|
37
|
+
adwords.service(:AdExtensionOverrideService, API_VERSION)
|
38
|
+
|
39
|
+
ad_id = 'INSERT_AD_ID_HERE'.to_i
|
40
|
+
campaign_ad_extension_id = 'INSERT_CAMPAIGN_AD_EXTENSION_ID_HERE'.to_i
|
41
|
+
|
42
|
+
# Create operation.
|
43
|
+
operation = {
|
44
|
+
:operator => 'ADD',
|
45
|
+
:operand => {
|
46
|
+
:ad_id => ad_id,
|
47
|
+
:ad_extension => {
|
48
|
+
:id => campaign_ad_extension_id
|
49
|
+
}
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
# Add override.
|
54
|
+
response = ad_ext_override_srv.mutate([operation])
|
55
|
+
ad_ext_override = response[:value].first
|
56
|
+
puts 'Ad extension override was successfully added.'
|
57
|
+
end
|
58
|
+
|
59
|
+
if __FILE__ == $0
|
60
|
+
# To enable logging of SOAP requests, set the ADWORDSAPI_DEBUG environment
|
61
|
+
# variable to 'true'. This can be done either from your operating system
|
62
|
+
# environment or via code, as done below.
|
63
|
+
ENV['ADWORDSAPI_DEBUG'] = 'false'
|
64
|
+
|
65
|
+
begin
|
66
|
+
add_ad_extension_override()
|
67
|
+
|
68
|
+
# Connection error. Likely transitory.
|
69
|
+
rescue Errno::ECONNRESET, SOAP::HTTPStreamError, SocketError => e
|
70
|
+
puts 'Connection Error: %s' % e
|
71
|
+
puts 'Source: %s' % e.backtrace.first
|
72
|
+
|
73
|
+
# API Error.
|
74
|
+
rescue AdwordsApi::Errors::ApiException => e
|
75
|
+
puts 'API Exception caught.'
|
76
|
+
puts 'Message: %s' % e.message
|
77
|
+
puts 'Code: %d' % e.code if e.code
|
78
|
+
puts 'Trigger: %s' % e.trigger if e.trigger
|
79
|
+
puts 'Errors:'
|
80
|
+
if e.errors
|
81
|
+
e.errors.each_with_index do |error, index|
|
82
|
+
puts ' %d. Error type is %s. Fields:' % [index + 1, error[:xsi_type]]
|
83
|
+
error.each_pair do |field, value|
|
84
|
+
if field != :xsi_type
|
85
|
+
puts ' %s: %s' % [field, value]
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
@@ -0,0 +1,98 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
#
|
3
|
+
# Author:: api.sgomes@gmail.com (Sérgio Gomes)
|
4
|
+
#
|
5
|
+
# Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
|
6
|
+
#
|
7
|
+
# License:: Licensed under the Apache License, Version 2.0 (the "License");
|
8
|
+
# you may not use this file except in compliance with the License.
|
9
|
+
# You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing, software
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
15
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
16
|
+
# implied.
|
17
|
+
# See the License for the specific language governing permissions and
|
18
|
+
# limitations under the License.
|
19
|
+
#
|
20
|
+
# This example illustrates how to create an ad group. To create a campaign, run
|
21
|
+
# add_campaign.rb.
|
22
|
+
#
|
23
|
+
# Tags: AdGroupService.mutate
|
24
|
+
|
25
|
+
require 'rubygems'
|
26
|
+
gem 'google-adwords-api'
|
27
|
+
require 'adwords_api'
|
28
|
+
|
29
|
+
API_VERSION = :v200909
|
30
|
+
|
31
|
+
def add_ad_group()
|
32
|
+
# AdwordsApi::Api will read a config file from ENV['HOME']/adwords_api.yml
|
33
|
+
# when called without parameters.
|
34
|
+
adwords = AdwordsApi::Api.new
|
35
|
+
ad_group_srv = adwords.service(:AdGroupService, API_VERSION)
|
36
|
+
|
37
|
+
campaign_id = 'INSERT_CAMPAIGN_ID_HERE'.to_i
|
38
|
+
|
39
|
+
# Prepare for adding ad group.
|
40
|
+
operation = {
|
41
|
+
:operator => 'ADD',
|
42
|
+
:operand => {
|
43
|
+
:name => 'Earth to Mars Cruises #%s' % (Time.new.to_f * 1000).to_i,
|
44
|
+
:status => 'ENABLED',
|
45
|
+
:campaign_id => campaign_id,
|
46
|
+
:bids => {
|
47
|
+
# The 'xsi_type' field allows you to specify the xsi:type of the object
|
48
|
+
# being created. It's only necessary when you must provide an explicit
|
49
|
+
# type that the client library can't infer.
|
50
|
+
:xsi_type => 'ManualCPCAdGroupBids',
|
51
|
+
:keyword_max_cpc => {
|
52
|
+
:amount => {
|
53
|
+
:micro_amount => 10000000
|
54
|
+
}
|
55
|
+
}
|
56
|
+
},
|
57
|
+
}
|
58
|
+
}
|
59
|
+
|
60
|
+
# Add ad group.
|
61
|
+
response = ad_group_srv.mutate([operation])
|
62
|
+
ad_group = response[:value].first
|
63
|
+
puts 'Ad group id %d was successfully added.' % ad_group[:id]
|
64
|
+
end
|
65
|
+
|
66
|
+
if __FILE__ == $0
|
67
|
+
# To enable logging of SOAP requests, set the ADWORDSAPI_DEBUG environment
|
68
|
+
# variable to 'true'. This can be done either from your operating system
|
69
|
+
# environment or via code, as done below.
|
70
|
+
ENV['ADWORDSAPI_DEBUG'] = 'false'
|
71
|
+
|
72
|
+
begin
|
73
|
+
add_ad_group()
|
74
|
+
|
75
|
+
# Connection error. Likely transitory.
|
76
|
+
rescue Errno::ECONNRESET, SOAP::HTTPStreamError, SocketError => e
|
77
|
+
puts 'Connection Error: %s' % e
|
78
|
+
puts 'Source: %s' % e.backtrace.first
|
79
|
+
|
80
|
+
# API Error.
|
81
|
+
rescue AdwordsApi::Errors::ApiException => e
|
82
|
+
puts 'API Exception caught.'
|
83
|
+
puts 'Message: %s' % e.message
|
84
|
+
puts 'Code: %d' % e.code if e.code
|
85
|
+
puts 'Trigger: %s' % e.trigger if e.trigger
|
86
|
+
puts 'Errors:'
|
87
|
+
if e.errors
|
88
|
+
e.errors.each_with_index do |error, index|
|
89
|
+
puts ' %d. Error type is %s. Fields:' % [index + 1, error[:xsi_type]]
|
90
|
+
error.each_pair do |field, value|
|
91
|
+
if field != :xsi_type
|
92
|
+
puts ' %s: %s' % [field, value]
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|