adwords4r 15.0.1 → 15.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog.txt +44 -7
- data/Rakefile +220 -99
- data/Readme.html +6 -0
- data/Readme.txt +57 -53
- data/doc/classes/AdWords.html +168 -0
- data/doc/classes/AdWords/API.html +265 -0
- data/doc/classes/AdWords/AdWordsCredentials.html +448 -0
- data/doc/classes/AdWords/AdWordsLogger.html +233 -0
- data/doc/classes/AdWords/AuthToken.html +190 -0
- data/doc/classes/AdWords/Error.html +159 -0
- data/doc/classes/AdWords/Error/AccountError.html +69 -0
- data/doc/classes/AdWords/Error/ApiError.html +293 -0
- data/doc/classes/AdWords/Error/AuthError.html +68 -0
- data/doc/classes/AdWords/Error/BillingError.html +69 -0
- data/doc/classes/AdWords/Error/Error.html +67 -0
- data/doc/classes/AdWords/Error/GoogleInternalError.html +69 -0
- data/doc/classes/AdWords/Error/RequestError.html +71 -0
- data/doc/classes/AdWords/Error/UnknownAPICall.html +68 -0
- data/doc/classes/AdWords/Error/UnknownType.html +69 -0
- data/doc/classes/AdWords/Error/WebpageError.html +68 -0
- data/doc/classes/AdWords/Extensions.html +490 -0
- data/doc/classes/AdWords/Pre200902HeaderHandler.html +193 -0
- data/doc/classes/AdWords/ResponseHandler.html +215 -0
- data/doc/classes/AdWords/Sandbox200902HeaderHandler.html +171 -0
- data/doc/classes/AdWords/Service.html +603 -0
- data/doc/classes/AdWords/Utils.html +446 -0
- data/doc/classes/AdWords/V13.html +117 -0
- data/doc/classes/AdWords/V13/AccountService.html +105 -0
- data/doc/classes/AdWords/V13/AccountService/AccountInfo.html +250 -0
- data/doc/classes/AdWords/V13/AccountService/AccountServiceWrapper.html +454 -0
- data/doc/classes/AdWords/V13/AccountService/Address.html +246 -0
- data/doc/classes/AdWords/V13/AccountService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/AccountService/ApiException.html +174 -0
- data/doc/classes/AdWords/V13/AccountService/ClientAccountInfo.html +138 -0
- data/doc/classes/AdWords/V13/AccountService/EmailPromotionsPreferences.html +174 -0
- data/doc/classes/AdWords/V13/AccountService/GetAccountInfo.html +67 -0
- data/doc/classes/AdWords/V13/AccountService/GetAccountInfoResponse.html +73 -0
- data/doc/classes/AdWords/V13/AccountService/GetClientAccountInfos.html +67 -0
- data/doc/classes/AdWords/V13/AccountService/GetClientAccountInfosResponse.html +67 -0
- data/doc/classes/AdWords/V13/AccountService/GetClientAccounts.html +67 -0
- data/doc/classes/AdWords/V13/AccountService/GetClientAccountsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AccountService/GetMccAlerts.html +67 -0
- data/doc/classes/AdWords/V13/AccountService/GetMccAlertsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AccountService/MccAlert.html +200 -0
- data/doc/classes/AdWords/V13/AccountService/MccAlertPriority.html +86 -0
- data/doc/classes/AdWords/V13/AccountService/MccAlertType.html +149 -0
- data/doc/classes/AdWords/V13/AccountService/NetworkTarget.html +67 -0
- data/doc/classes/AdWords/V13/AccountService/NetworkType.html +93 -0
- data/doc/classes/AdWords/V13/AccountService/UpdateAccountInfo.html +73 -0
- data/doc/classes/AdWords/V13/AccountService/UpdateAccountInfoResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService.html +109 -0
- data/doc/classes/AdWords/V13/AdGroupService/AdGroup.html +235 -0
- data/doc/classes/AdWords/V13/AdGroupService/AdGroupServiceWrapper.html +792 -0
- data/doc/classes/AdWords/V13/AdGroupService/AdGroupStatus.html +93 -0
- data/doc/classes/AdWords/V13/AdGroupService/AddAdGroup.html +75 -0
- data/doc/classes/AdWords/V13/AdGroupService/AddAdGroupList.html +75 -0
- data/doc/classes/AdWords/V13/AdGroupService/AddAdGroupListResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService/AddAdGroupResponse.html +73 -0
- data/doc/classes/AdWords/V13/AdGroupService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/AdGroupService/ApiException.html +174 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetActiveAdGroups.html +72 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetActiveAdGroupsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetAdGroup.html +72 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetAdGroupList.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetAdGroupListResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetAdGroupResponse.html +73 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetAdGroupStats.html +81 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetAdGroupStatsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetAllAdGroups.html +72 -0
- data/doc/classes/AdWords/V13/AdGroupService/GetAllAdGroupsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService/StatsRecord.html +198 -0
- data/doc/classes/AdWords/V13/AdGroupService/UpdateAdGroup.html +73 -0
- data/doc/classes/AdWords/V13/AdGroupService/UpdateAdGroupList.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService/UpdateAdGroupListResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdGroupService/UpdateAdGroupResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService.html +155 -0
- data/doc/classes/AdWords/V13/AdService/Ad.html +210 -0
- data/doc/classes/AdWords/V13/AdService/AdServiceWrapper.html +874 -0
- data/doc/classes/AdWords/V13/AdService/AdStatus.html +93 -0
- data/doc/classes/AdWords/V13/AdService/AdType.html +121 -0
- data/doc/classes/AdWords/V13/AdService/AddAds.html +67 -0
- data/doc/classes/AdWords/V13/AdService/AddAdsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/AdService/ApiException.html +174 -0
- data/doc/classes/AdWords/V13/AdService/Business.html +246 -0
- data/doc/classes/AdWords/V13/AdService/CheckAds.html +79 -0
- data/doc/classes/AdWords/V13/AdService/CheckAdsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/Circle.html +150 -0
- data/doc/classes/AdWords/V13/AdService/CityTargets.html +138 -0
- data/doc/classes/AdWords/V13/AdService/CommerceAd.html +295 -0
- data/doc/classes/AdWords/V13/AdService/CountryTargets.html +138 -0
- data/doc/classes/AdWords/V13/AdService/FindBusinesses.html +78 -0
- data/doc/classes/AdWords/V13/AdService/FindBusinessesResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GeoTarget.html +191 -0
- data/doc/classes/AdWords/V13/AdService/GetActiveAds.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GetActiveAdsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GetAd.html +75 -0
- data/doc/classes/AdWords/V13/AdService/GetAdResponse.html +72 -0
- data/doc/classes/AdWords/V13/AdService/GetAdStats.html +81 -0
- data/doc/classes/AdWords/V13/AdService/GetAdStatsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GetAllAds.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GetAllAdsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GetMyBusinesses.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GetMyBusinessesResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GetMyVideos.html +67 -0
- data/doc/classes/AdWords/V13/AdService/GetMyVideosResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/Image.html +222 -0
- data/doc/classes/AdWords/V13/AdService/ImageAd.html +222 -0
- data/doc/classes/AdWords/V13/AdService/ImageType.html +93 -0
- data/doc/classes/AdWords/V13/AdService/LanguageTarget.html +67 -0
- data/doc/classes/AdWords/V13/AdService/LocalBusinessAd.html +427 -0
- data/doc/classes/AdWords/V13/AdService/MetroTargets.html +138 -0
- data/doc/classes/AdWords/V13/AdService/MobileAd.html +294 -0
- data/doc/classes/AdWords/V13/AdService/MobileImageAd.html +246 -0
- data/doc/classes/AdWords/V13/AdService/ProximityTargets.html +67 -0
- data/doc/classes/AdWords/V13/AdService/RegionTargets.html +138 -0
- data/doc/classes/AdWords/V13/AdService/StatsRecord.html +198 -0
- data/doc/classes/AdWords/V13/AdService/StockIcon.html +191 -0
- data/doc/classes/AdWords/V13/AdService/TextAd.html +246 -0
- data/doc/classes/AdWords/V13/AdService/UpdateAds.html +67 -0
- data/doc/classes/AdWords/V13/AdService/UpdateAdsResponse.html +67 -0
- data/doc/classes/AdWords/V13/AdService/Video.html +174 -0
- data/doc/classes/AdWords/V13/AdService/VideoAd.html +246 -0
- data/doc/classes/AdWords/V13/CampaignService.html +171 -0
- data/doc/classes/AdWords/V13/CampaignService/AdSchedule.html +140 -0
- data/doc/classes/AdWords/V13/CampaignService/AdScheduleStatus.html +86 -0
- data/doc/classes/AdWords/V13/CampaignService/AddCampaign.html +73 -0
- data/doc/classes/AdWords/V13/CampaignService/AddCampaignList.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/AddCampaignListResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/AddCampaignResponse.html +73 -0
- data/doc/classes/AdWords/V13/CampaignService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/CampaignService/ApiException.html +175 -0
- data/doc/classes/AdWords/V13/CampaignService/BudgetOptimizerSettings.html +150 -0
- data/doc/classes/AdWords/V13/CampaignService/BudgetPeriod.html +86 -0
- data/doc/classes/AdWords/V13/CampaignService/Campaign.html +291 -0
- data/doc/classes/AdWords/V13/CampaignService/CampaignBudget.html +139 -0
- data/doc/classes/AdWords/V13/CampaignService/CampaignServiceWrapper.html +1110 -0
- data/doc/classes/AdWords/V13/CampaignService/CampaignStatus.html +114 -0
- data/doc/classes/AdWords/V13/CampaignService/Circle.html +150 -0
- data/doc/classes/AdWords/V13/CampaignService/CityTargets.html +138 -0
- data/doc/classes/AdWords/V13/CampaignService/ContentTargeting.html +86 -0
- data/doc/classes/AdWords/V13/CampaignService/ConversionOptimizerEligibility.html +139 -0
- data/doc/classes/AdWords/V13/CampaignService/ConversionOptimizerSettings.html +138 -0
- data/doc/classes/AdWords/V13/CampaignService/CountryTargets.html +138 -0
- data/doc/classes/AdWords/V13/CampaignService/DayOfWeek.html +121 -0
- data/doc/classes/AdWords/V13/CampaignService/GeoTarget.html +191 -0
- data/doc/classes/AdWords/V13/CampaignService/GetActiveAdWordsCampaigns.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetActiveAdWordsCampaignsResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetAllAdWordsCampaigns.html +72 -0
- data/doc/classes/AdWords/V13/CampaignService/GetAllAdWordsCampaignsResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetCampaign.html +72 -0
- data/doc/classes/AdWords/V13/CampaignService/GetCampaignList.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetCampaignListResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetCampaignResponse.html +73 -0
- data/doc/classes/AdWords/V13/CampaignService/GetCampaignStats.html +78 -0
- data/doc/classes/AdWords/V13/CampaignService/GetCampaignStatsResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetConversionOptimizerEligibility.html +68 -0
- data/doc/classes/AdWords/V13/CampaignService/GetConversionOptimizerEligibilityResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetOptimizeAdServing.html +72 -0
- data/doc/classes/AdWords/V13/CampaignService/GetOptimizeAdServingResponse.html +72 -0
- data/doc/classes/AdWords/V13/CampaignService/GetRecommendedBudgetList.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetRecommendedBudgetListResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetRecommendedBudgets.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/GetRecommendedBudgetsResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/LanguageTarget.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/MetroTargets.html +138 -0
- data/doc/classes/AdWords/V13/CampaignService/NetworkTarget.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/NetworkType.html +93 -0
- data/doc/classes/AdWords/V13/CampaignService/ProximityTargets.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/RecommendedBudget.html +139 -0
- data/doc/classes/AdWords/V13/CampaignService/RegionTargets.html +138 -0
- data/doc/classes/AdWords/V13/CampaignService/SchedulingInterval.html +186 -0
- data/doc/classes/AdWords/V13/CampaignService/SetOptimizeAdServing.html +75 -0
- data/doc/classes/AdWords/V13/CampaignService/SetOptimizeAdServingResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/StatsRecord.html +198 -0
- data/doc/classes/AdWords/V13/CampaignService/UpdateCampaign.html +73 -0
- data/doc/classes/AdWords/V13/CampaignService/UpdateCampaignList.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/UpdateCampaignListResponse.html +67 -0
- data/doc/classes/AdWords/V13/CampaignService/UpdateCampaignResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService.html +133 -0
- data/doc/classes/AdWords/V13/CriterionService/AddCriteria.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/AddCriteriaResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/CriterionService/ApiException.html +175 -0
- data/doc/classes/AdWords/V13/CriterionService/CheckCriteria.html +81 -0
- data/doc/classes/AdWords/V13/CriterionService/CheckCriteriaResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/Circle.html +150 -0
- data/doc/classes/AdWords/V13/CriterionService/CityTargets.html +138 -0
- data/doc/classes/AdWords/V13/CriterionService/CountryTargets.html +138 -0
- data/doc/classes/AdWords/V13/CriterionService/Criterion.html +224 -0
- data/doc/classes/AdWords/V13/CriterionService/CriterionServiceWrapper.html +822 -0
- data/doc/classes/AdWords/V13/CriterionService/CriterionStatus.html +100 -0
- data/doc/classes/AdWords/V13/CriterionService/CriterionType.html +86 -0
- data/doc/classes/AdWords/V13/CriterionService/GeoTarget.html +191 -0
- data/doc/classes/AdWords/V13/CriterionService/GetAllCriteria.html +72 -0
- data/doc/classes/AdWords/V13/CriterionService/GetAllCriteriaResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/GetCampaignNegativeCriteria.html +72 -0
- data/doc/classes/AdWords/V13/CriterionService/GetCampaignNegativeCriteriaResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/GetCriteria.html +75 -0
- data/doc/classes/AdWords/V13/CriterionService/GetCriteriaResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/GetCriterionStats.html +81 -0
- data/doc/classes/AdWords/V13/CriterionService/GetCriterionStatsResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/Keyword.html +297 -0
- data/doc/classes/AdWords/V13/CriterionService/KeywordType.html +93 -0
- data/doc/classes/AdWords/V13/CriterionService/LanguageTarget.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/MetroTargets.html +138 -0
- data/doc/classes/AdWords/V13/CriterionService/ProximityTargets.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/RegionTargets.html +138 -0
- data/doc/classes/AdWords/V13/CriterionService/RemoveCriteria.html +75 -0
- data/doc/classes/AdWords/V13/CriterionService/RemoveCriteriaResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/SetCampaignNegativeCriteria.html +76 -0
- data/doc/classes/AdWords/V13/CriterionService/SetCampaignNegativeCriteriaResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/StatsRecord.html +198 -0
- data/doc/classes/AdWords/V13/CriterionService/UpdateCriteria.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/UpdateCriteriaResponse.html +67 -0
- data/doc/classes/AdWords/V13/CriterionService/Website.html +260 -0
- data/doc/classes/AdWords/V13/InfoService.html +101 -0
- data/doc/classes/AdWords/V13/InfoService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/InfoService/ApiException.html +174 -0
- data/doc/classes/AdWords/V13/InfoService/ClientUsageRecord.html +138 -0
- data/doc/classes/AdWords/V13/InfoService/GetFreeUsageQuotaThisMonth.html +67 -0
- data/doc/classes/AdWords/V13/InfoService/GetFreeUsageQuotaThisMonthResponse.html +72 -0
- data/doc/classes/AdWords/V13/InfoService/GetMethodCost.html +78 -0
- data/doc/classes/AdWords/V13/InfoService/GetMethodCostResponse.html +72 -0
- data/doc/classes/AdWords/V13/InfoService/GetOperationCount.html +75 -0
- data/doc/classes/AdWords/V13/InfoService/GetOperationCountResponse.html +72 -0
- data/doc/classes/AdWords/V13/InfoService/GetOperationsQuotaThisMonth.html +67 -0
- data/doc/classes/AdWords/V13/InfoService/GetOperationsQuotaThisMonthResponse.html +72 -0
- data/doc/classes/AdWords/V13/InfoService/GetUnitCount.html +75 -0
- data/doc/classes/AdWords/V13/InfoService/GetUnitCountForClients.html +78 -0
- data/doc/classes/AdWords/V13/InfoService/GetUnitCountForClientsResponse.html +67 -0
- data/doc/classes/AdWords/V13/InfoService/GetUnitCountForMethod.html +81 -0
- data/doc/classes/AdWords/V13/InfoService/GetUnitCountForMethodResponse.html +72 -0
- data/doc/classes/AdWords/V13/InfoService/GetUnitCountResponse.html +72 -0
- data/doc/classes/AdWords/V13/InfoService/GetUsageQuotaThisMonth.html +67 -0
- data/doc/classes/AdWords/V13/InfoService/GetUsageQuotaThisMonthResponse.html +72 -0
- data/doc/classes/AdWords/V13/InfoService/InfoServiceWrapper.html +779 -0
- data/doc/classes/AdWords/V13/KeywordToolService.html +87 -0
- data/doc/classes/AdWords/V13/KeywordToolService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/KeywordToolService/ApiException.html +175 -0
- data/doc/classes/AdWords/V13/KeywordToolService/GetKeywordVariations.html +82 -0
- data/doc/classes/AdWords/V13/KeywordToolService/GetKeywordVariationsResponse.html +73 -0
- data/doc/classes/AdWords/V13/KeywordToolService/GetKeywordsFromSite.html +81 -0
- data/doc/classes/AdWords/V13/KeywordToolService/GetKeywordsFromSiteResponse.html +73 -0
- data/doc/classes/AdWords/V13/KeywordToolService/KeywordToolServiceWrapper.html +323 -0
- data/doc/classes/AdWords/V13/KeywordToolService/KeywordType.html +93 -0
- data/doc/classes/AdWords/V13/KeywordToolService/KeywordVariation.html +174 -0
- data/doc/classes/AdWords/V13/KeywordToolService/KeywordVariations.html +140 -0
- data/doc/classes/AdWords/V13/KeywordToolService/SeedKeyword.html +151 -0
- data/doc/classes/AdWords/V13/KeywordToolService/SiteKeyword.html +174 -0
- data/doc/classes/AdWords/V13/KeywordToolService/SiteKeywordGroups.html +139 -0
- data/doc/classes/AdWords/V13/ReportService.html +111 -0
- data/doc/classes/AdWords/V13/ReportService/AdGroupStatus.html +93 -0
- data/doc/classes/AdWords/V13/ReportService/AdWordsType.html +86 -0
- data/doc/classes/AdWords/V13/ReportService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/ReportService/ApiException.html +174 -0
- data/doc/classes/AdWords/V13/ReportService/CampaignStatus.html +114 -0
- data/doc/classes/AdWords/V13/ReportService/DefinedReportJob.html +348 -0
- data/doc/classes/AdWords/V13/ReportService/DeleteReport.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/DeleteReportResponse.html +67 -0
- data/doc/classes/AdWords/V13/ReportService/GetAllJobs.html +67 -0
- data/doc/classes/AdWords/V13/ReportService/GetAllJobsResponse.html +67 -0
- data/doc/classes/AdWords/V13/ReportService/GetGzipReportDownloadUrl.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/GetGzipReportDownloadUrlResponse.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/GetReportDownloadUrl.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/GetReportDownloadUrlResponse.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/GetReportJobStatus.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/GetReportJobStatusResponse.html +73 -0
- data/doc/classes/AdWords/V13/ReportService/KeywordStatus.html +107 -0
- data/doc/classes/AdWords/V13/ReportService/KeywordType.html +93 -0
- data/doc/classes/AdWords/V13/ReportService/ReportJob.html +199 -0
- data/doc/classes/AdWords/V13/ReportService/ReportJobStatus.html +100 -0
- data/doc/classes/AdWords/V13/ReportService/ReportServiceWrapper.html +694 -0
- data/doc/classes/AdWords/V13/ReportService/ScheduleReportJob.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/ScheduleReportJobResponse.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/ValidateReportJob.html +72 -0
- data/doc/classes/AdWords/V13/ReportService/ValidateReportJobResponse.html +67 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService.html +99 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/AgeRange.html +121 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/ApiException.html +175 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/ChildrenTarget.html +93 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/DemographicsTarget.html +205 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/EthnicityTarget.html +107 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GenderTarget.html +93 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GetSitesByCategoryName.html +76 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GetSitesByCategoryNameResponse.html +67 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GetSitesByDemographics.html +77 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GetSitesByDemographicsResponse.html +67 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GetSitesByTopics.html +76 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GetSitesByTopicsResponse.html +67 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GetSitesByUrls.html +76 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/GetSitesByUrlsResponse.html +67 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/HouseholdIncomeRange.html +121 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/LanguageGeoTargeting.html +162 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/SiteSuggestion.html +174 -0
- data/doc/classes/AdWords/V13/SiteSuggestionService/SiteSuggestionServiceWrapper.html +457 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService.html +121 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/AdGroupEstimate.html +139 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/AdGroupRequest.html +151 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/ApiError.html +210 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/ApiException.html +175 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/CampaignEstimate.html +139 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/CampaignRequest.html +178 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/CheckKeywordTraffic.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/CheckKeywordTrafficResponse.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/Circle.html +150 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/CityTargets.html +138 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/CountryTargets.html +138 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/EstimateAdGroupList.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/EstimateAdGroupListResponse.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/EstimateCampaignList.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/EstimateCampaignListResponse.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/EstimateKeywordList.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/EstimateKeywordListResponse.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/GeoTarget.html +191 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/KeywordEstimate.html +198 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/KeywordRequest.html +175 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/KeywordTraffic.html +93 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/KeywordTrafficRequest.html +151 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/KeywordType.html +93 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/LanguageTarget.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/MetroTargets.html +138 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/NetworkTarget.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/NetworkType.html +93 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/ProximityTargets.html +67 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/RegionTargets.html +138 -0
- data/doc/classes/AdWords/V13/TrafficEstimatorService/TrafficEstimatorServiceWrapper.html +439 -0
- data/doc/classes/AdWords/V200902.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService.html +323 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Ad.html +187 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdApprovalStatus.html +149 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdError.html +163 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdErrorReason.html +373 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdExtension.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdExtensionId.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAd.html +165 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdCountLimitExceeded.html +188 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdErrorReason.html +121 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdIdFilter.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdOperation.html +166 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdPage.html +151 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdReturnValue.html +141 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdSelector.html +153 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdServiceWrapper.html +301 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupAdStatus.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdGroupId.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdId.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdScheduleTarget.html +202 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdStats.html +337 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AdStatsSelector.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Address.html +198 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AgeTarget.html +151 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AgeTargetAge.html +121 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ApiError.html +150 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ApiException.html +153 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ApplicationException.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AuthorizationError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/AuthorizationErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/CampaignId.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/CityTarget.html +174 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/CountryTarget.html +150 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DatabaseError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DatabaseErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Date.html +150 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DateError.html +163 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DateErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DateRange.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DateTime.html +174 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DayOfWeek.html +121 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DemographicTarget.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Dimensions.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DistinctError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/DistinctErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/EntityCountLimitExceeded.html +189 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/EntityCountLimitExceededReason.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/EntityNotFound.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/EntityNotFoundReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ExemptionRequest.html +127 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/GenderTarget.html +151 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/GenderTargetGender.html +86 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/GeoPoint.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/GeoTarget.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Get.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/GetResponse.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/IdError.html +163 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/IdErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Image.html +290 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ImageAd.html +211 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ImageError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ImageErrorReason.html +275 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/LanguageTarget.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ListReturnValue.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/LocalBusinessAd.html +357 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/LocationExtension.html +216 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/LocationSyncExtension.html +165 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MarkupLanguageType.html +100 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Media.html +278 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaErrorReason.html +142 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaId.html +126 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaMediaExtendedCapabilityState.html +114 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaMediaExtendedCapabilityType.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaMediaSubType.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaMediaType.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaMimeType.html +149 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MediaSize.html +100 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Media_MediaExtendedCapabilityType_Media_MediaExtendedCapabilityStateMapEntry.html +141 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Media_Size_DimensionsMapEntry.html +141 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Media_Size_StringMapEntry.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MetroTarget.html +150 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MinuteOfHour.html +100 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MobileAd.html +272 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MobileExtension.html +152 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MobileImageAd.html +224 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Money.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Mutate.html +67 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/MutateResponse.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NetworkCoverageType.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NetworkTarget.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NewEntityCreationError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NewEntityCreationErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NotEmptyError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NotEmptyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NotWhitelistedError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NotWhitelistedErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NullError.html +163 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/NullErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Operation.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/OperationAccessDenied.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/OperationAccessDeniedReason.html +100 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Operator.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Page.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Paging.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/PlatformTarget.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/PlatformType.html +86 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/PolicyViolationError.html +225 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/PolicyViolationErrorPart.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/PolicyViolationKey.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/PolygonTarget.html +151 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ProductExtension.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ProvinceTarget.html +151 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ProximityTarget.html +202 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ProximityTargetDistanceUnits.html +86 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/QuotaCheckError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/QuotaCheckErrorReason.html +177 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ReadOnlyError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/ReadOnlyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/RequiredError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/RequiredErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/SoapHeader.html +174 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/SoapResponseHeader.html +174 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Stats.html +325 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/StatsNetwork.html +121 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/StatsQueryError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/StatsQueryErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/StatsSelector.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/StoreLocatorExtension.html +152 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/Target.html +126 -0
- data/doc/classes/AdWords/V200902/AdGroupAdService/TextAd.html +223 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService.html +239 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterion.html +154 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionBids.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionErrorReason.html +191 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionIdFilter.html +153 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionLimitExceeded.html +203 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionLimitExceededCriteriaLimitType.html +86 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionOperation.html +166 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionPage.html +152 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionReturnValue.html +141 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionSelector.html +179 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupCriterionServiceWrapper.html +304 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AdGroupId.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ApiError.html +150 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ApiException.html +153 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ApplicationException.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ApprovalStatus.html +100 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AuthorizationError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/AuthorizationErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Bid.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/BidEvent.html +100 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/BidSource.html +86 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/BiddableAdGroupCriterion.html +244 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/BiddingError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/BiddingErrorReason.html +387 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/BudgetOptimizerAdGroupCriterionBids.html +142 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/CampaignId.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ConversionOptimizerAdGroupCriterionBids.html +129 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Criterion.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/CriterionId.html +126 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/CriterionPolicyError.html +225 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/CriterionUse.html +86 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/DatabaseError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/DatabaseErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Date.html +150 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/DateError.html +163 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/DateErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/DateRange.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/DistinctError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/DistinctErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/EntityAccessDenied.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/EntityAccessDeniedReason.html +86 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/EntityCountLimitExceeded.html +189 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/EntityCountLimitExceededReason.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/EntityNotFound.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/EntityNotFoundReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ExemptionRequest.html +127 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Get.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/GetResponse.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Keyword.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/KeywordMatchType.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ListReturnValue.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ManualCPCAdGroupCriterionBids.html +168 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ManualCPMAdGroupCriterionBids.html +155 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Money.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Mutate.html +67 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/MutateResponse.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NegativeAdGroupCriterion.html +154 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NewEntityCreationError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NewEntityCreationErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NotEmptyError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NotEmptyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NotWhitelistedError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NotWhitelistedErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NullError.html +163 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/NullErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Operation.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Operator.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Page.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Paging.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/Placement.html +152 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/PolicyViolationError.html +225 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/PolicyViolationErrorPart.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/PolicyViolationKey.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/PositionPreferenceAdGroupCriterionBids.html +152 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/QualityInfo.html +162 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/QuotaCheckError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/QuotaCheckErrorReason.html +177 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ReadOnlyError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/ReadOnlyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/RequiredError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/RequiredErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/SoapHeader.html +174 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/SoapResponseHeader.html +174 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/StatsQueryError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/StatsQueryErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/StatsSelector.html +127 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/SystemServingStatus.html +86 -0
- data/doc/classes/AdWords/V200902/AdGroupCriterionService/UserStatus.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupService.html +205 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroup.html +202 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupBids.html +127 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupId.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupOperation.html +153 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupPage.html +151 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupReturnValue.html +141 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupSelector.html +165 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupServiceError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupServiceErrorReason.html +303 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupServiceWrapper.html +301 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AdGroupStatus.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ApiError.html +150 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ApiException.html +153 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ApplicationException.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AuthorizationError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/AuthorizationErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Bid.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupService/BidEvent.html +100 -0
- data/doc/classes/AdWords/V200902/AdGroupService/BiddingError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/BiddingErrorReason.html +387 -0
- data/doc/classes/AdWords/V200902/AdGroupService/BudgetOptimizerAdGroupBids.html +154 -0
- data/doc/classes/AdWords/V200902/AdGroupService/CampaignId.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ConversionOptimizerAdGroupBids.html +141 -0
- data/doc/classes/AdWords/V200902/AdGroupService/DatabaseError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/DatabaseErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Date.html +150 -0
- data/doc/classes/AdWords/V200902/AdGroupService/DateError.html +163 -0
- data/doc/classes/AdWords/V200902/AdGroupService/DateErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/AdGroupService/DateRange.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupService/DistinctError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/DistinctErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/EntityNotFound.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/EntityNotFoundReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Get.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupService/GetResponse.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ListReturnValue.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ManualCPCAdGroupBids.html +165 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ManualCPMAdGroupBids.html +139 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Money.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Mutate.html +67 -0
- data/doc/classes/AdWords/V200902/AdGroupService/MutateResponse.html +73 -0
- data/doc/classes/AdWords/V200902/AdGroupService/NewEntityCreationError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/NewEntityCreationErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/NotEmptyError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/NotEmptyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/NotWhitelistedError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/NotWhitelistedErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/NullError.html +163 -0
- data/doc/classes/AdWords/V200902/AdGroupService/NullErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Operation.html +140 -0
- data/doc/classes/AdWords/V200902/AdGroupService/OperationAccessDenied.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/OperationAccessDeniedReason.html +100 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Operator.html +93 -0
- data/doc/classes/AdWords/V200902/AdGroupService/OperatorError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/OperatorErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Page.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Paging.html +138 -0
- data/doc/classes/AdWords/V200902/AdGroupService/QuotaCheckError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/QuotaCheckErrorReason.html +177 -0
- data/doc/classes/AdWords/V200902/AdGroupService/QuotaError.html +176 -0
- data/doc/classes/AdWords/V200902/AdGroupService/QuotaErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ReadOnlyError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/ReadOnlyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/RequiredError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/RequiredErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/SoapHeader.html +174 -0
- data/doc/classes/AdWords/V200902/AdGroupService/SoapResponseHeader.html +174 -0
- data/doc/classes/AdWords/V200902/AdGroupService/Stats.html +325 -0
- data/doc/classes/AdWords/V200902/AdGroupService/StatsNetwork.html +121 -0
- data/doc/classes/AdWords/V200902/AdGroupService/StatsQueryError.html +164 -0
- data/doc/classes/AdWords/V200902/AdGroupService/StatsQueryErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/AdGroupService/StatsSelector.html +127 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService.html +181 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/ApiError.html +150 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/ApiException.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/ApplicationException.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/AuthorizationError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/AuthorizationErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterion.html +154 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionErrorReason.html +114 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionIdFilter.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionLimitExceeded.html +203 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionLimitExceededCriteriaLimitType.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionOperation.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionPage.html +152 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionReturnValue.html +142 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionSelector.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignCriterionServiceWrapper.html +304 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CampaignId.html +139 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/ContentLabel.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/ContentLabelType.html +198 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Criterion.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/CriterionId.html +126 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/DatabaseError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/DatabaseErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/DistinctError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/DistinctErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/EntityCountLimitExceeded.html +189 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/EntityCountLimitExceededReason.html +93 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/EntityNotFound.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/EntityNotFoundReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Get.html +73 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/GetResponse.html +73 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Keyword.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/KeywordMatchType.html +93 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/ListReturnValue.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Mutate.html +67 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/MutateResponse.html +73 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NegativeCampaignCriterion.html +154 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NewEntityCreationError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NewEntityCreationErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NotEmptyError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NotEmptyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NotWhitelistedError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NotWhitelistedErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NullError.html +163 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/NullErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Operation.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Operator.html +93 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/OperatorError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/OperatorErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Page.html +138 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Paging.html +138 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/Placement.html +152 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/QuotaCheckError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/QuotaCheckErrorReason.html +177 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/ReadOnlyError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/ReadOnlyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/RequiredError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/RequiredErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/SoapHeader.html +174 -0
- data/doc/classes/AdWords/V200902/CampaignCriterionService/SoapResponseHeader.html +174 -0
- data/doc/classes/AdWords/V200902/CampaignService.html +251 -0
- data/doc/classes/AdWords/V200902/CampaignService/AdGroupBids.html +127 -0
- data/doc/classes/AdWords/V200902/CampaignService/AdServingOptimizationStatus.html +93 -0
- data/doc/classes/AdWords/V200902/CampaignService/ApiError.html +150 -0
- data/doc/classes/AdWords/V200902/CampaignService/ApiException.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignService/ApplicationException.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignService/AuthorizationError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/AuthorizationErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/CampaignService/AutoKeywordMatchingStatus.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignService/Bid.html +139 -0
- data/doc/classes/AdWords/V200902/CampaignService/BidEvent.html +100 -0
- data/doc/classes/AdWords/V200902/CampaignService/BiddingError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/BiddingErrorReason.html +387 -0
- data/doc/classes/AdWords/V200902/CampaignService/BiddingStrategy.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignService/BiddingTransition.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignService/BiddingTransitionError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/BiddingTransitionErrorReason.html +219 -0
- data/doc/classes/AdWords/V200902/CampaignService/Budget.html +152 -0
- data/doc/classes/AdWords/V200902/CampaignService/BudgetBudgetDeliveryMethod.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignService/BudgetBudgetPeriod.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignService/BudgetError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/BudgetErrorReason.html +135 -0
- data/doc/classes/AdWords/V200902/CampaignService/BudgetOptimizer.html +141 -0
- data/doc/classes/AdWords/V200902/CampaignService/BudgetOptimizerAdGroupBids.html +154 -0
- data/doc/classes/AdWords/V200902/CampaignService/C_RangeError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/Campaign.html +255 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignBidSource.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignErrorReason.html +205 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignId.html +139 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignOperation.html +166 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignPage.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignReturnValue.html +141 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignSelector.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignServiceWrapper.html +301 -0
- data/doc/classes/AdWords/V200902/CampaignService/CampaignStatus.html +93 -0
- data/doc/classes/AdWords/V200902/CampaignService/ConversionOptimizer.html +141 -0
- data/doc/classes/AdWords/V200902/CampaignService/ConversionOptimizerAdGroupBids.html +141 -0
- data/doc/classes/AdWords/V200902/CampaignService/DatabaseError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/DatabaseErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignService/Date.html +150 -0
- data/doc/classes/AdWords/V200902/CampaignService/DateError.html +163 -0
- data/doc/classes/AdWords/V200902/CampaignService/DateErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/CampaignService/DateRange.html +138 -0
- data/doc/classes/AdWords/V200902/CampaignService/DerivedBids.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignService/DistinctError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/DistinctErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/EntityNotFound.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/EntityNotFoundReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/ExplicitBids.html +141 -0
- data/doc/classes/AdWords/V200902/CampaignService/Get.html +73 -0
- data/doc/classes/AdWords/V200902/CampaignService/GetResponse.html +73 -0
- data/doc/classes/AdWords/V200902/CampaignService/ListReturnValue.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignService/ManualCPC.html +127 -0
- data/doc/classes/AdWords/V200902/CampaignService/ManualCPCAdGroupBids.html +165 -0
- data/doc/classes/AdWords/V200902/CampaignService/ManualCPM.html +127 -0
- data/doc/classes/AdWords/V200902/CampaignService/ManualCPMAdGroupBids.html +139 -0
- data/doc/classes/AdWords/V200902/CampaignService/Money.html +138 -0
- data/doc/classes/AdWords/V200902/CampaignService/Mutate.html +67 -0
- data/doc/classes/AdWords/V200902/CampaignService/MutateResponse.html +73 -0
- data/doc/classes/AdWords/V200902/CampaignService/NewEntityCreationError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/NewEntityCreationErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/NotEmptyError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/NotEmptyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/NotWhitelistedError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/NotWhitelistedErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/NullError.html +163 -0
- data/doc/classes/AdWords/V200902/CampaignService/NullErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/Operation.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignService/OperationAccessDenied.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/OperationAccessDeniedReason.html +100 -0
- data/doc/classes/AdWords/V200902/CampaignService/Operator.html +93 -0
- data/doc/classes/AdWords/V200902/CampaignService/OperatorError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/OperatorErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/Page.html +138 -0
- data/doc/classes/AdWords/V200902/CampaignService/Paging.html +138 -0
- data/doc/classes/AdWords/V200902/CampaignService/PricingModel.html +93 -0
- data/doc/classes/AdWords/V200902/CampaignService/QuotaCheckError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/QuotaCheckErrorReason.html +177 -0
- data/doc/classes/AdWords/V200902/CampaignService/QuotaError.html +176 -0
- data/doc/classes/AdWords/V200902/CampaignService/QuotaErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignService/RangeErrorReason.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignService/ReadOnlyError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/ReadOnlyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/RequiredError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/RequiredErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/ServingStatus.html +107 -0
- data/doc/classes/AdWords/V200902/CampaignService/SoapHeader.html +174 -0
- data/doc/classes/AdWords/V200902/CampaignService/SoapResponseHeader.html +174 -0
- data/doc/classes/AdWords/V200902/CampaignService/Stats.html +325 -0
- data/doc/classes/AdWords/V200902/CampaignService/StatsNetwork.html +121 -0
- data/doc/classes/AdWords/V200902/CampaignService/StatsQueryError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/StatsQueryErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignService/StatsSelector.html +127 -0
- data/doc/classes/AdWords/V200902/CampaignService/StringLengthError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignService/StringLengthErrorReason.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService.html +227 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/AdScheduleTarget.html +202 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/AdScheduleTargetList.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/Address.html +198 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/AgeTarget.html +151 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/AgeTargetAge.html +121 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/ApiError.html +150 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/ApiException.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/ApplicationException.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/AuthorizationError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/AuthorizationErrorReason.html +107 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/BiddingError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/BiddingErrorReason.html +387 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/C_RangeError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/CampaignError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/CampaignErrorReason.html +205 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/CampaignId.html +139 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/CampaignTargetOperation.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/CampaignTargetSelector.html +67 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/CampaignTargetServiceWrapper.html +301 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/CityTarget.html +174 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/CountryTarget.html +150 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/DatabaseError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/DatabaseErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/DayOfWeek.html +121 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/DemographicTarget.html +139 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/DemographicTargetList.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/DistinctError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/DistinctErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/EntityNotFound.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/EntityNotFoundReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/GenderTarget.html +151 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/GenderTargetGender.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/GeoPoint.html +138 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/GeoTarget.html +138 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/GeoTargetList.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/Get.html +73 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/GetResponse.html +67 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/LanguageTarget.html +139 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/LanguageTargetList.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/MetroTarget.html +150 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/MinuteOfHour.html +100 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/Mutate.html +67 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/MutateResponse.html +73 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NetworkCoverageType.html +107 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NetworkTarget.html +139 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NetworkTargetList.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NotEmptyError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NotEmptyErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NotWhitelistedError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NotWhitelistedErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NullError.html +163 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/NullErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/Operation.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/OperationAccessDenied.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/OperationAccessDeniedReason.html +100 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/Operator.html +93 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/OperatorError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/OperatorErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/PlatformTarget.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/PlatformTargetList.html +153 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/PlatformType.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/PolygonTarget.html +151 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/ProvinceTarget.html +151 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/ProximityTarget.html +202 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/ProximityTargetDistanceUnits.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/QuotaCheckError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/QuotaCheckErrorReason.html +177 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/QuotaError.html +176 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/QuotaErrorReason.html +128 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/RangeErrorReason.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/RegionCodeError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/RegionCodeErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/RequiredError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/RequiredErrorReason.html +79 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/SoapHeader.html +174 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/SoapResponseHeader.html +174 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/StringLengthError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/StringLengthErrorReason.html +86 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/Target.html +126 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/TargetError.html +164 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/TargetErrorReason.html +513 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/TargetList.html +140 -0
- data/doc/classes/AdWords/V200902/CampaignTargetService/VoidReturnValue.html +107 -0
- data/doc/created.rid +1 -0
- data/doc/css/main.css +263 -0
- data/doc/css/panel.css +383 -0
- data/doc/css/reset.css +53 -0
- data/doc/files/ChangeLog_txt.html +419 -0
- data/doc/files/License_txt.html +74 -0
- data/doc/files/Readme_txt.html +301 -0
- data/doc/files/lib/adwords4r/adwordslogger_rb.html +91 -0
- data/doc/files/lib/adwords4r/apiextensions_rb.html +94 -0
- data/doc/files/lib/adwords4r/authtoken_rb.html +97 -0
- data/doc/files/lib/adwords4r/credentials_rb.html +93 -0
- data/doc/files/lib/adwords4r/services_rb.html +84 -0
- data/doc/files/lib/adwords4r/utils_rb.html +91 -0
- data/doc/files/lib/adwords4r/v13/AccountServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/AccountService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/AdGroupServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/AdGroupService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/AdServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/AdService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/CampaignServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/CampaignService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/CriterionServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/CriterionService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/InfoServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/InfoService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/KeywordToolServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/KeywordToolService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/ReportServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/ReportService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/SiteSuggestionServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/SiteSuggestionService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v13/TrafficEstimatorServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v13/TrafficEstimatorService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v200902/AdGroupAdServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v200902/AdGroupAdService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v200902/AdGroupCriterionServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v200902/AdGroupCriterionService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v200902/AdGroupServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v200902/AdGroupService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v200902/CampaignCriterionServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v200902/CampaignCriterionService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v200902/CampaignServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v200902/CampaignService_rb.html +66 -0
- data/doc/files/lib/adwords4r/v200902/CampaignTargetServiceWrapper_rb.html +74 -0
- data/doc/files/lib/adwords4r/v200902/CampaignTargetService_rb.html +66 -0
- data/doc/files/lib/adwords4r_rb.html +107 -0
- data/doc/i/arrows.png +0 -0
- data/doc/i/results_bg.png +0 -0
- data/doc/i/tree_bg.png +0 -0
- data/doc/index.html +14 -0
- data/doc/js/jquery-1.3.2.min.js +19 -0
- data/doc/js/jquery-effect.js +593 -0
- data/doc/js/main.js +22 -0
- data/doc/js/searchdoc.js +620 -0
- data/doc/panel/index.html +71 -0
- data/doc/panel/search_index.js +1 -0
- data/doc/panel/tree.js +1 -0
- data/examples/account_info.rb +0 -0
- data/examples/create_all.rb +0 -0
- data/examples/create_all_v200902.rb +0 -0
- data/examples/keyword_suggestions.rb +0 -0
- data/examples/multiple_versions.rb +2 -1
- data/examples/reports.rb +16 -3
- data/examples/unit_spend.rb +159 -0
- data/lib/adwords4r.rb +158 -21
- data/lib/adwords4r/adwordslogger.rb +19 -10
- data/lib/adwords4r/apiextensions.rb +225 -6
- data/lib/adwords4r/authtoken.rb +17 -1
- data/lib/adwords4r/credentials.rb +92 -23
- data/lib/adwords4r/data/categories.csv +718 -0
- data/lib/adwords4r/data/countries.csv +234 -0
- data/lib/adwords4r/data/currencies.csv +51 -0
- data/lib/adwords4r/data/ops_rates.csv +67 -0
- data/lib/adwords4r/data/timezones.csv +314 -0
- data/lib/adwords4r/data/us_cities.csv +15694 -0
- data/lib/adwords4r/data/us_metros.csv +282 -0
- data/lib/adwords4r/data/world_cities.csv +6388 -0
- data/lib/adwords4r/data/world_regions.csv +788 -0
- data/lib/adwords4r/services.rb +309 -66
- data/lib/adwords4r/soap4rpatches.rb +0 -0
- data/lib/adwords4r/utils.rb +187 -0
- data/lib/adwords4r/v13/AccountService.rb +82 -82
- data/lib/adwords4r/v13/AccountServiceDriver.rb +5 -5
- data/lib/adwords4r/v13/AccountServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/AccountServiceWrapper.rb +135 -0
- data/lib/adwords4r/v13/AdGroupService.rb +85 -85
- data/lib/adwords4r/v13/AdGroupServiceDriver.rb +9 -9
- data/lib/adwords4r/v13/AdGroupServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/AdGroupServiceWrapper.rb +267 -0
- data/lib/adwords4r/v13/AdService.rb +247 -247
- data/lib/adwords4r/v13/AdServiceDriver.rb +10 -10
- data/lib/adwords4r/v13/AdServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/AdServiceWrapper.rb +294 -0
- data/lib/adwords4r/v13/CampaignService.rb +165 -165
- data/lib/adwords4r/v13/CampaignServiceDriver.rb +14 -14
- data/lib/adwords4r/v13/CampaignServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/CampaignServiceWrapper.rb +378 -0
- data/lib/adwords4r/v13/CriterionService.rb +141 -141
- data/lib/adwords4r/v13/CriterionServiceDriver.rb +9 -9
- data/lib/adwords4r/v13/CriterionServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/CriterionServiceWrapper.rb +273 -0
- data/lib/adwords4r/v13/InfoService.rb +71 -71
- data/lib/adwords4r/v13/InfoServiceDriver.rb +8 -8
- data/lib/adwords4r/v13/InfoServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/InfoServiceWrapper.rb +257 -0
- data/lib/adwords4r/v13/KeywordToolService.rb +56 -56
- data/lib/adwords4r/v13/KeywordToolServiceDriver.rb +2 -2
- data/lib/adwords4r/v13/KeywordToolServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/KeywordToolServiceWrapper.rb +101 -0
- data/lib/adwords4r/v13/ReportService.rb +87 -87
- data/lib/adwords4r/v13/ReportServiceDriver.rb +7 -7
- data/lib/adwords4r/v13/ReportServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/ReportServiceWrapper.rb +209 -0
- data/lib/adwords4r/v13/SiteSuggestionService.rb +63 -63
- data/lib/adwords4r/v13/SiteSuggestionServiceDriver.rb +4 -4
- data/lib/adwords4r/v13/SiteSuggestionServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/SiteSuggestionServiceWrapper.rb +145 -0
- data/lib/adwords4r/v13/TrafficEstimatorService.rb +94 -94
- data/lib/adwords4r/v13/TrafficEstimatorServiceDriver.rb +4 -4
- data/lib/adwords4r/v13/TrafficEstimatorServiceMappingRegistry.rb +0 -0
- data/lib/adwords4r/v13/TrafficEstimatorServiceWrapper.rb +133 -0
- data/lib/adwords4r/v200902/AdGroupAdService.rb +762 -574
- data/lib/adwords4r/v200902/AdGroupAdServiceDriver.rb +2 -2
- data/lib/adwords4r/v200902/AdGroupAdServiceMappingRegistry.rb +290 -96
- data/lib/adwords4r/v200902/AdGroupAdServiceWrapper.rb +83 -0
- data/lib/adwords4r/v200902/AdGroupCriterionService.rb +367 -286
- data/lib/adwords4r/v200902/AdGroupCriterionServiceDriver.rb +2 -2
- data/lib/adwords4r/v200902/AdGroupCriterionServiceMappingRegistry.rb +86 -6
- data/lib/adwords4r/v200902/AdGroupCriterionServiceWrapper.rb +83 -0
- data/lib/adwords4r/v200902/AdGroupService.rb +331 -221
- data/lib/adwords4r/v200902/AdGroupServiceDriver.rb +2 -2
- data/lib/adwords4r/v200902/AdGroupServiceMappingRegistry.rb +121 -7
- data/lib/adwords4r/v200902/AdGroupServiceWrapper.rb +83 -0
- data/lib/adwords4r/v200902/CampaignCriterionService.rb +251 -175
- data/lib/adwords4r/v200902/CampaignCriterionServiceDriver.rb +2 -2
- data/lib/adwords4r/v200902/CampaignCriterionServiceMappingRegistry.rb +86 -6
- data/lib/adwords4r/v200902/CampaignCriterionServiceWrapper.rb +83 -0
- data/lib/adwords4r/v200902/CampaignService.rb +389 -285
- data/lib/adwords4r/v200902/CampaignServiceDriver.rb +2 -2
- data/lib/adwords4r/v200902/CampaignServiceMappingRegistry.rb +118 -16
- data/lib/adwords4r/v200902/CampaignServiceWrapper.rb +83 -0
- data/lib/adwords4r/v200902/CampaignTargetService.rb +334 -249
- data/lib/adwords4r/v200902/CampaignTargetServiceDriver.rb +2 -2
- data/lib/adwords4r/v200902/CampaignTargetServiceMappingRegistry.rb +86 -6
- data/lib/adwords4r/v200902/CampaignTargetServiceWrapper.rb +83 -0
- data/setup.rb +0 -0
- data/test/common_test_utils.rb +33 -0
- data/test/data/report_non_ascii.csv +5 -0
- data/test/data/report_non_ascii.xml +3 -0
- data/test/test_api_calls.rb +101 -0
- data/test/test_api_extensions.rb +124 -0
- data/test/test_authtoken.rb +46 -0
- data/test/test_credentials.rb +87 -0
- data/test/test_logger.rb +58 -0
- data/test/test_service.rb +78 -0
- data/test/test_utils.rb +138 -0
- metadata +1015 -46
@@ -20,8 +20,16 @@ require 'logger'
|
|
20
20
|
|
21
21
|
module AdWords
|
22
22
|
|
23
|
+
# Wrapper class to handle logging to console and/or files.
|
23
24
|
class AdWordsLogger
|
24
25
|
|
26
|
+
# Constructor for AdWordsLogger.
|
27
|
+
#
|
28
|
+
# Args:
|
29
|
+
# - filename: the filename for the log file to be written (if log_to_file is
|
30
|
+
# called)
|
31
|
+
# - log_to_console: boolean, indicates whether or not to log to the console
|
32
|
+
#
|
25
33
|
def initialize(filename, log_to_console=false)
|
26
34
|
@filename = filename
|
27
35
|
@loggers = []
|
@@ -32,24 +40,25 @@ module AdWords
|
|
32
40
|
end
|
33
41
|
end
|
34
42
|
|
35
|
-
# Enables logging to a file
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
+
# Enables logging to a file.
|
44
|
+
# May be called several times to log to multiple files.
|
45
|
+
#
|
46
|
+
# Args:
|
47
|
+
# - path: where to write the file (defaults to current dir). Path only, do
|
48
|
+
# not provide filename.
|
49
|
+
#
|
50
|
+
def log_to_file(path='.')
|
51
|
+
new_logger = Logger.new(File.join(path, @filename))
|
43
52
|
new_logger.level = Logger::INFO
|
44
53
|
@loggers << new_logger
|
45
54
|
|
46
55
|
return nil
|
47
56
|
end
|
48
57
|
|
49
|
-
# Overload << operator to perform logging
|
58
|
+
# Overload << operator to perform logging.
|
50
59
|
def << (text)
|
51
60
|
@loggers.each do |logger|
|
52
|
-
logger.info text
|
61
|
+
logger.info text.to_s
|
53
62
|
end
|
54
63
|
end
|
55
64
|
end
|
@@ -17,31 +17,57 @@
|
|
17
17
|
# Contains extensions to the API, that is, service helper methods provided in
|
18
18
|
# client-side by the client library.
|
19
19
|
|
20
|
+
require 'rexml/document'
|
21
|
+
require 'csv'
|
22
|
+
|
20
23
|
module AdWords
|
21
24
|
|
22
25
|
module Extensions
|
23
26
|
|
24
|
-
# Maintains a list of all
|
25
|
-
# Using camelCase to match API method names
|
27
|
+
# Maintains a list of all extension methods, indexed by version and service.
|
28
|
+
# Using camelCase to match API method names.
|
26
29
|
@@extensions = {
|
27
|
-
[13, 'Report'] => ['downloadXmlReport']
|
30
|
+
[13, 'Report'] => ['downloadXmlReport', 'downloadCsvReport'],
|
31
|
+
[13, 'Info'] => ['getMethodUsage', 'getClientUnitsUsage']
|
28
32
|
}
|
29
33
|
|
30
34
|
# Defines the parameter list for every extension method
|
31
35
|
@@methods = {
|
32
|
-
'downloadXmlReport'
|
36
|
+
'downloadXmlReport' => ['job_id'],
|
37
|
+
'downloadCsvReport' => ['job_id'],
|
38
|
+
'getMethodUsage' => ['start_date', 'end_date'],
|
39
|
+
'getClientUnitsUsage' => ['start_date', 'end_date']
|
33
40
|
}
|
34
41
|
|
42
|
+
# Return list of all extension methods, indexed by version and service.
|
35
43
|
def self.extensions
|
36
44
|
return @@extensions
|
37
45
|
end
|
38
46
|
|
47
|
+
# Return the parameter list for every extension method.
|
39
48
|
def self.methods
|
40
49
|
return @@methods
|
41
50
|
end
|
42
51
|
|
43
|
-
|
44
|
-
#
|
52
|
+
#########################################################################
|
53
|
+
# NOTE: The following extension methods shouldn't be used directly; they
|
54
|
+
# should instead be used from the services wrappers they get mapped to.
|
55
|
+
# For example, you should use ReportServiceWrapper::downloadXmlReport
|
56
|
+
# instead of Extensions::downloadXmlReport.
|
57
|
+
#########################################################################
|
58
|
+
|
59
|
+
# <i>Extension method</i> -- Download and return report data in XML format.
|
60
|
+
#
|
61
|
+
# *Warning*: this method is blocking for the calling thread.
|
62
|
+
#
|
63
|
+
# Args:
|
64
|
+
# - wrapper: the service wrapper object for any API methods that need to be
|
65
|
+
# called
|
66
|
+
# - job_id: the job id for the report to be downloaded
|
67
|
+
#
|
68
|
+
# Returns:
|
69
|
+
# The xml for the report (as a string)
|
70
|
+
#
|
45
71
|
def self.downloadXmlReport(wrapper, job_id)
|
46
72
|
sleep_interval = 30
|
47
73
|
|
@@ -75,5 +101,198 @@ module AdWords
|
|
75
101
|
raise AdWords::Error::Error, 'Report generation failed.'
|
76
102
|
end
|
77
103
|
end
|
104
|
+
|
105
|
+
# <i>Extension method</i> -- Download and return report data in CSV format.
|
106
|
+
#
|
107
|
+
# *Warning*: this method is blocking for the calling thread.
|
108
|
+
#
|
109
|
+
# Args:
|
110
|
+
# - wrapper: the service wrapper object for any API methods that need to be
|
111
|
+
# called
|
112
|
+
# - job_id: the job id for the report to be downloaded
|
113
|
+
# - xml: optional parameter used for testing and debugging
|
114
|
+
#
|
115
|
+
# Returns:
|
116
|
+
# The CSV data for the report (as a string)
|
117
|
+
#
|
118
|
+
def self.downloadCsvReport(wrapper, job_id, report_xml=nil)
|
119
|
+
# Get XML report data.
|
120
|
+
report_xml = downloadXmlReport(wrapper, job_id) if report_xml.nil?
|
121
|
+
|
122
|
+
begin
|
123
|
+
# Construct DOM object.
|
124
|
+
doc = REXML::Document.new(report_xml)
|
125
|
+
|
126
|
+
# Get data columns.
|
127
|
+
columns = []
|
128
|
+
doc.elements.each('report/table/columns/column') do |column_elem|
|
129
|
+
name = column_elem.attributes['name']
|
130
|
+
columns << name unless name.nil?
|
131
|
+
end
|
132
|
+
|
133
|
+
# Get data rows.
|
134
|
+
rows = []
|
135
|
+
doc.elements.each('report/table/rows/row') do |row_elem|
|
136
|
+
rows << row_elem.attributes unless row_elem.attributes.nil?
|
137
|
+
end
|
138
|
+
|
139
|
+
# Build CSV
|
140
|
+
csv = ''
|
141
|
+
CSV::Writer.generate(csv) do |writer|
|
142
|
+
writer << columns
|
143
|
+
rows.each do |row|
|
144
|
+
row_values = []
|
145
|
+
columns.each { |column| row_values << row[column] }
|
146
|
+
writer << row_values
|
147
|
+
end
|
148
|
+
end
|
149
|
+
|
150
|
+
return csv
|
151
|
+
rescue REXML::ParseException => e
|
152
|
+
# Error parsing XML
|
153
|
+
raise AdWords::Error::Error,
|
154
|
+
"Error parsing report XML: %s\nSource: %s" % [e, e.backtrace.first]
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
# <i>Extension method</i> -- Get a mapping between API methods and the
|
159
|
+
# number of units used through them for a given amount of time.
|
160
|
+
#
|
161
|
+
# Running this helper method will consume 71 units.
|
162
|
+
#
|
163
|
+
# *Note*: unit data is not available in real time.
|
164
|
+
#
|
165
|
+
# Args:
|
166
|
+
# - wrapper: the service wrapper object for any API methods that need to be
|
167
|
+
# called
|
168
|
+
# - start_date: starting date for unit spend count (as a Date)
|
169
|
+
# - end_date: starting date for unit spend count (as a Date)
|
170
|
+
#
|
171
|
+
# Returns:
|
172
|
+
# Hash of <i>service</i>.<i>method</i> to the number of units used, e.g.,
|
173
|
+
# { 'AccountService.getAccountInfo' => 10,
|
174
|
+
# 'AccountService.getClientAccountInfos' => 0, ...}
|
175
|
+
#
|
176
|
+
def self.getMethodUsage(wrapper, start_date, end_date)
|
177
|
+
op_rates = AdWords::Utils.get_operation_rates
|
178
|
+
usage = {}
|
179
|
+
|
180
|
+
op_rates.each do |op|
|
181
|
+
service, method = op
|
182
|
+
usage[service + '.' + method] = wrapper.getUnitCountForMethod(service,
|
183
|
+
method, start_date, end_date).getUnitCountForMethodReturn
|
184
|
+
end
|
185
|
+
|
186
|
+
return usage
|
187
|
+
end
|
188
|
+
|
189
|
+
# <i>Extension method</i> -- Gets the quota usage per child of the entire
|
190
|
+
# account tree below the root user. That is, for each child that is a client
|
191
|
+
# manager, all units below that client manager are summed upwards. The
|
192
|
+
# result is very useful for invoicing sub-MCCs that may have many clients
|
193
|
+
# that units may be spent on.
|
194
|
+
#
|
195
|
+
# *Note*: unit data is not available in real time.
|
196
|
+
#
|
197
|
+
# Args:
|
198
|
+
# - wrapper: the service wrapper object for any API methods that need to be
|
199
|
+
# called
|
200
|
+
# - start_date: starting date for unit spend count (as a Date)
|
201
|
+
# - end_date: starting date for unit spend count (as a Date)
|
202
|
+
#
|
203
|
+
# Returns:
|
204
|
+
# - Hash of account to unit usage,
|
205
|
+
# { 'account1@domain.tld' => 10,
|
206
|
+
# 'account2@domain.tld' => 0, ...}
|
207
|
+
# - List of double counted children (account emails)
|
208
|
+
#
|
209
|
+
def self.getClientUnitsUsage(wrapper, start_date, end_date)
|
210
|
+
# Create a new AdWords::API object to ensure thread-safety (we'll need to
|
211
|
+
# change the clientEmail)
|
212
|
+
adwords = AdWords::API.new(wrapper.api.credentials.dup)
|
213
|
+
adwords.credentials.set_header('clientEmail', '')
|
214
|
+
# Call unit_adder on the main user
|
215
|
+
unit_map = client_unit_adder(adwords, start_date, end_date)
|
216
|
+
# Pass back the spent unit information to the main AdWords::API object
|
217
|
+
wrapper.api.mutex.synchronize do
|
218
|
+
wrapper.api.last_units = adwords.total_units
|
219
|
+
wrapper.api.total_units += adwords.total_units
|
220
|
+
end
|
221
|
+
return unit_map
|
222
|
+
end
|
223
|
+
|
224
|
+
private
|
225
|
+
|
226
|
+
# Auxiliary recursive method to get the sum of units for an account and all
|
227
|
+
# those under it, if any.
|
228
|
+
#
|
229
|
+
# Args:
|
230
|
+
# - adwords: the AdWords::API object to be used for retrieving the client
|
231
|
+
# data
|
232
|
+
# - start_date: starting date for unit spend count (as a Date)
|
233
|
+
# - end_date: starting date for unit spend count (as a Date)
|
234
|
+
#
|
235
|
+
# Returns:
|
236
|
+
# - Hash of account to unit usage,
|
237
|
+
# { 'account1@domain.tld' => 10,
|
238
|
+
# 'account2@domain.tld' => 0, ...}
|
239
|
+
# - List of double counted children (account emails)
|
240
|
+
#
|
241
|
+
def self.client_unit_adder(adwords, start_date, end_date)
|
242
|
+
account_srv = adwords.get_service(13, 'Account')
|
243
|
+
if adwords.credentials.credentials['clientEmail'] == ''
|
244
|
+
account_email = adwords.credentials.credentials['email']
|
245
|
+
else
|
246
|
+
account_email = adwords.credentials.credentials['clientEmail']
|
247
|
+
end
|
248
|
+
# Get list of accounts under the current one
|
249
|
+
accounts = account_srv.getClientAccountInfos
|
250
|
+
unit_map = {}
|
251
|
+
doubles = []
|
252
|
+
clients = accounts.select { |account| !account.isCustomerManager }
|
253
|
+
managers = accounts.select { |account| account.isCustomerManager }
|
254
|
+
client_emails = clients.map { |account| account.emailAddress }
|
255
|
+
info_srv = adwords.get_service(13, 'Info')
|
256
|
+
|
257
|
+
# Get usage for clients
|
258
|
+
client_usage =
|
259
|
+
info_srv.getUnitCountForClients(client_emails, start_date, end_date)
|
260
|
+
|
261
|
+
client_usage.each do |record|
|
262
|
+
unit_map[record.clientEmail] = record.quotaUnits
|
263
|
+
end
|
264
|
+
|
265
|
+
managers.each do |account|
|
266
|
+
# Create a new AdWords::API object to ensure thread-safety (we'll need
|
267
|
+
# to change the clientEmail)
|
268
|
+
sub_mcc = AdWords::API.new(adwords.credentials.dup)
|
269
|
+
sub_mcc.credentials.set_header('clientEmail', account.emailAddress)
|
270
|
+
# Recurse for sub-MCCs
|
271
|
+
sub_unit_map, sub_doubles =
|
272
|
+
client_unit_adder(sub_mcc, start_date, end_date)
|
273
|
+
sub_unit_map.each_key do |entry|
|
274
|
+
# Add any accounts already accounted for to the doubles list
|
275
|
+
unless unit_map[entry].nil?
|
276
|
+
doubles << entry unless doubles.include?(entry)
|
277
|
+
end
|
278
|
+
end
|
279
|
+
# Merge unit maps, doubles and unit spend from the sub with the main
|
280
|
+
unit_map.merge! sub_unit_map
|
281
|
+
sub_doubles.each do |entry|
|
282
|
+
doubles << entry unless doubles.include?(entry)
|
283
|
+
end
|
284
|
+
doubles += sub_doubles
|
285
|
+
adwords.mutex.synchronize do
|
286
|
+
adwords.total_units += sub_mcc.total_units
|
287
|
+
end
|
288
|
+
end
|
289
|
+
|
290
|
+
# Calculate the sum for this account and add it to the hash as well
|
291
|
+
sum = accounts.inject(0) do |result, account|
|
292
|
+
result + unit_map[account.emailAddress]
|
293
|
+
end
|
294
|
+
unit_map[account_email] = sum
|
295
|
+
return unit_map, doubles
|
296
|
+
end
|
78
297
|
end
|
79
298
|
end
|
data/lib/adwords4r/authtoken.rb
CHANGED
@@ -23,7 +23,9 @@ require 'net/https'
|
|
23
23
|
|
24
24
|
module AdWords
|
25
25
|
|
26
|
-
|
26
|
+
# Module providing the mechanism to obtain auth tokens for logging in to the
|
27
|
+
# AdWords API (>= v200902).
|
28
|
+
module AuthToken
|
27
29
|
|
28
30
|
ACCOUNT_TYPE = 'GOOGLE'
|
29
31
|
AUTH_HOSTNAME = 'www.google.com'
|
@@ -31,12 +33,26 @@ module AdWords
|
|
31
33
|
AUTH_PORT = 443
|
32
34
|
SERVICE = 'adwords'
|
33
35
|
|
36
|
+
# Retrieve authentication token for logging in to the AdWords API.
|
37
|
+
#
|
38
|
+
# Args:
|
39
|
+
# - email: the email address for the account being accessed
|
40
|
+
# - password: the password for the account being accessed
|
41
|
+
#
|
42
|
+
# Returns:
|
43
|
+
# The auth token for the account (as a string).
|
44
|
+
#
|
45
|
+
# Raises:
|
46
|
+
# AdWords::Error::AuthError if authentication fails.
|
47
|
+
#
|
34
48
|
def self.get_token(email, password)
|
35
49
|
email = CGI.escape(email)
|
36
50
|
password = CGI.escape(password)
|
37
51
|
|
38
52
|
http_client = Net::HTTP.new(AUTH_HOSTNAME, AUTH_PORT)
|
39
53
|
http_client.use_ssl = true
|
54
|
+
# Avoid annoying warning
|
55
|
+
http_client.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
40
56
|
|
41
57
|
data = "accountType=#{ACCOUNT_TYPE}&Email=#{email}&Passwd=#{password}" +
|
42
58
|
"&service=#{SERVICE}"
|
@@ -24,13 +24,18 @@ module AdWords
|
|
24
24
|
# Handles the headers used in the v200902 sandbox requests
|
25
25
|
class Sandbox200902HeaderHandler < SOAP::Header::SimpleHandler
|
26
26
|
|
27
|
-
#
|
27
|
+
# Constructor for Sandbox200902HeaderHandler.
|
28
|
+
#
|
29
|
+
# Args:
|
30
|
+
# - parent: AdWordsCredentials object containing the login credentials.
|
31
|
+
#
|
28
32
|
def initialize(parent)
|
29
33
|
namespace = 'https://adwords.google.com/api/adwords/cm/v200902'
|
30
34
|
super(XSD::QName.new(namespace, 'RequestHeader'))
|
31
35
|
@parent = parent
|
32
36
|
end
|
33
37
|
|
38
|
+
# Handles callback.
|
34
39
|
def on_simple_outbound
|
35
40
|
return { :authToken => @parent.auth_token,
|
36
41
|
:clientEmail => @parent.credentials['clientEmail'] }
|
@@ -43,46 +48,77 @@ module AdWords
|
|
43
48
|
attr_reader :tag
|
44
49
|
attr_writer :value
|
45
50
|
|
46
|
-
#
|
47
|
-
#
|
51
|
+
# Constructor for Pre200902HeaderHandler.
|
52
|
+
#
|
53
|
+
# Args:
|
54
|
+
# - tag: XML tag name to be handled (email, password, etc.)
|
55
|
+
# - value: value to be sent inside tag on outgoing requests
|
56
|
+
#
|
48
57
|
def initialize(tag, value)
|
49
58
|
super(XSD::QName.new(nil, tag))
|
50
59
|
@tag = tag
|
51
60
|
@value = value
|
52
61
|
end
|
53
62
|
|
63
|
+
# Handles callback.
|
54
64
|
def on_simple_outbound
|
55
65
|
@value
|
56
66
|
end
|
57
67
|
end
|
58
68
|
|
59
|
-
# Generic credentials class, used for any API version
|
69
|
+
# Generic credentials class, used for any API version.
|
60
70
|
class AdWordsCredentials
|
61
71
|
|
62
|
-
|
72
|
+
# Hash of credentials (credential key to value)
|
73
|
+
attr_reader :credentials
|
74
|
+
# The alternate URL being used to connect to the service (if any).
|
75
|
+
# <= v13 only.
|
76
|
+
attr_reader :alternateUrl
|
63
77
|
|
64
78
|
public
|
65
79
|
|
66
|
-
|
80
|
+
# Constructor for AdWordsCredentials.
|
81
|
+
#
|
82
|
+
# Args:
|
83
|
+
# - credentials: Hash of credentials (credential key to value). E.g.:
|
84
|
+
# {
|
85
|
+
# 'developerToken' => 'user@domain.com++USD',
|
86
|
+
# 'useragent' => 'Sample User Agent',
|
87
|
+
# 'password' => 'password',
|
88
|
+
# 'email' => 'user@domain.com',
|
89
|
+
# 'clientEmail' => 'client_1+user@domain.com',
|
90
|
+
# 'applicationToken' => 'IGNORED',
|
91
|
+
# 'alternateUrl' => 'https://sandbox.google.com/api/adwords/v13/'
|
92
|
+
# }
|
93
|
+
#
|
94
|
+
def initialize(credentials=nil)
|
67
95
|
@credentials = {}
|
68
96
|
@alternateUrl = nil
|
69
97
|
@auth_token = nil
|
70
98
|
@handlers = []
|
71
|
-
if
|
72
|
-
credentials = parm[0]
|
73
|
-
else
|
74
|
-
credentials = get_defaults()
|
75
|
-
end
|
99
|
+
credentials = get_defaults() if credentials.nil?
|
76
100
|
credentials.each do |key, value|
|
77
101
|
@credentials[key] = value if !(key =~ /^alternateUrl/)
|
78
102
|
end
|
79
103
|
@alternateUrl = credentials['alternateUrl']
|
104
|
+
|
105
|
+
# Fix potential problems with changing clientEmail, by forcing it to be
|
106
|
+
# created
|
107
|
+
@credentials['clientEmail'] = '' if @credentials['clientEmail'].nil?
|
108
|
+
|
80
109
|
@credentials.each do |key, value|
|
81
110
|
@handlers << Pre200902HeaderHandler.new(key, value)
|
82
111
|
end
|
83
112
|
end
|
84
113
|
|
85
|
-
# Return a list of handlers to be inserted into the driver's handler list
|
114
|
+
# Return a list of handlers to be inserted into the driver's handler list.
|
115
|
+
#
|
116
|
+
# Args:
|
117
|
+
# - version: API version being used. Must be an integer.
|
118
|
+
#
|
119
|
+
# Returns:
|
120
|
+
# The list of handlers (subclasses of SOAP::Header::SimpleHandler)
|
121
|
+
#
|
86
122
|
def get_handlers(version)
|
87
123
|
if (version <= 13)
|
88
124
|
return @handlers
|
@@ -91,15 +127,25 @@ module AdWords
|
|
91
127
|
end
|
92
128
|
end
|
93
129
|
|
94
|
-
# Returns the authentication token used with >= v200902 requests
|
130
|
+
# Returns the authentication token used with >= v200902 requests.
|
131
|
+
# Generates it if there's no valid token already generated.
|
132
|
+
#
|
133
|
+
# Returns:
|
134
|
+
# The auth token (as a string).
|
135
|
+
#
|
95
136
|
def auth_token
|
96
137
|
generate_auth_token if @auth_token.nil?
|
97
138
|
return @auth_token
|
98
139
|
end
|
99
140
|
|
100
|
-
# Generates a new authentication token used with >= v200902 requests
|
101
|
-
#
|
102
|
-
#
|
141
|
+
# Generates a new authentication token used with >= v200902 requests.
|
142
|
+
# The generated token is stored and can later be accessed with auth_token.
|
143
|
+
# It should only be necessary for user code to invoke this if the first
|
144
|
+
# token expires.
|
145
|
+
#
|
146
|
+
# Returns:
|
147
|
+
# The auth token (as a string).
|
148
|
+
#
|
103
149
|
def generate_auth_token
|
104
150
|
email = @credentials['email']
|
105
151
|
password = @credentials['password']
|
@@ -117,7 +163,12 @@ module AdWords
|
|
117
163
|
return @auth_token
|
118
164
|
end
|
119
165
|
|
120
|
-
#
|
166
|
+
# Change one of the authentication headers.
|
167
|
+
#
|
168
|
+
# Args:
|
169
|
+
# - header: the name for the header being changed.
|
170
|
+
# - value: the new value for the header.
|
171
|
+
#
|
121
172
|
def set_header(header, value)
|
122
173
|
# Invalidate previous auth token if necessary
|
123
174
|
@auth_token = nil if header == 'email' or header == 'password'
|
@@ -135,18 +186,36 @@ module AdWords
|
|
135
186
|
end
|
136
187
|
end
|
137
188
|
|
189
|
+
# Overloads the 'dup' method for AdWordsCredentials to correctly duplicate
|
190
|
+
# objects of this class.
|
191
|
+
#
|
192
|
+
# Returns:
|
193
|
+
# Duplicated AdWordsCredentials object
|
194
|
+
#
|
195
|
+
def dup
|
196
|
+
creds = @credentials.dup
|
197
|
+
creds['alternateUrl'] = @alternateUrl unless @alternateUrl.nil?
|
198
|
+
return AdWordsCredentials.new(creds)
|
199
|
+
end
|
200
|
+
|
138
201
|
private
|
139
202
|
|
203
|
+
# Get the default credentials.
|
204
|
+
# Loads them from the adwords.properties file in the directory specified by
|
205
|
+
# the HOME environment variable.
|
206
|
+
#
|
207
|
+
# Returns:
|
208
|
+
# Hash with the credentials (credential key to value).
|
209
|
+
#
|
140
210
|
def get_defaults
|
141
211
|
cred = Hash.new
|
142
|
-
IO.foreach(
|
143
|
-
|
212
|
+
IO.foreach(File.join(ENV['HOME'], 'adwords.properties')) do |line|
|
213
|
+
unless line =~ /^#/
|
214
|
+
split_line = line.split('=')
|
215
|
+
cred[split_line[0].strip] = split_line[1].strip
|
216
|
+
end
|
144
217
|
end
|
145
218
|
return cred
|
146
219
|
end
|
147
|
-
|
148
|
-
def add_credential(cred, arr)
|
149
|
-
cred[arr[0]] = arr[1].strip
|
150
|
-
end
|
151
220
|
end
|
152
221
|
end
|