Will this code work now with v201601 of the TrafficEstimatorService?
On Tuesday, January 31, 2012 at 4:17:34 PM UTC-8, Yakito wrote:
>
> Hello,
> I am new to the AdWords API and I am trying to understand how to use
> the different services. I am having problems with the
> TrafficEstimatorService as there is no example in the current version
> of the PHP API. When I try to use the previous version API I get some
> error with the class "CountryTarget()" that does not exists in the
> current version.
>
> This is the code I am testing:
>
> $path = dirname(__FILE__) . '/../../../src';
> set_include_path(get_include_path() . PATH_SEPARATOR . $path);
>
> require_once 'Google/Api/Ads/AdWords/Lib/AdWordsUser.php';
> require_once 'Google/Api/Ads/Common/Util/MapUtils.php';
>
> // Constants used in the example.
> define('PAGE_SIZE', 500);
> /**
> * Runs the example.
> * @param AdWordsUser $user the user to run the example with
> */
> function GetKeywordIdeasExample(AdWordsUser $user) {
> // Get the service, which loads the required classes.
> $targetingIdeaService = $user->GetService('TrafficEstimatorService',
> 'v201109');
> $keywords = array();
> $keywords[] = new Keyword('mars cruise', 'BROAD');
> $keywords[] = new Keyword('cheap cruise', 'PHRASE');
> $keywords[] = new Keyword('cruise', 'EXACT');
>
> // Create a keyword estimate request for each keyword.
> $keywordEstimateRequests = array();
> foreach ($keywords as $keyword) {
> $keywordEstimateRequest = new KeywordEstimateRequest();
> $keywordEstimateRequest->keyword = $keyword;
> $keywordEstimateRequests[] = $keywordEstimateRequest;
> }
>
> // Create ad group estimate requests.
> $adGroupEstimateRequest = new AdGroupEstimateRequest();
> $adGroupEstimateRequest->keywordEstimateRequests =
> $keywordEstimateRequests;
> $adGroupEstimateRequest->maxCpc = new Money(1000000);
> $adGroupEstimateRequests = array($adGroupEstimateRequest);
>
> // Create campaign estimate requests.
> $campaignEstimateRequest = new CampaignEstimateRequest();
> $campaignEstimateRequest->adGroupEstimateRequests =
> $adGroupEstimateRequests;
> $campaignEstimateRequest->targets = array(new CountryTarget('US'),
> new LanguageTarget('en'));
> $campaignEstimateRequests = array($campaignEstimateRequest);
>
> // Create selector.
> $selector = new TrafficEstimatorSelector();
> $selector->campaignEstimateRequests = $campaignEstimateRequests;
>
> // Get traffic estimates.
> $result = $trafficEstimatorService->get($selector);
>
> // Display traffic estimates.
> if (isset($result)) {
> $keywordEstimates =
> $result->campaignEstimates[0]->adGroupEstimates[0]-
> >keywordEstimates;
> for ($i = 0; $i < sizeof($keywordEstimates); $i++) {
> $keyword = $keywordEstimateRequests[$i]->keyword;
> $keywordEstimate = $keywordEstimates[$i];
>
> // Find the mean of the min and max values.
> $meanAverageCpc = ($keywordEstimate->min->averageCpc-
> >microAmount
> + $keywordEstimate->max->averageCpc->microAmount) / 2;
> $meanAveragePosition = ($keywordEstimate->min->averagePosition
> + $keywordEstimate->max->averagePosition) / 2;
> $meanClicks = ($keywordEstimate->min->clicks
> + $keywordEstimate->max->clicks) / 2;
> $meanTotalCost = ($keywordEstimate->min->totalCost->microAmount
> + $keywordEstimate->max->totalCost->microAmount) / 2;
>
> printf("Results for the keyword with text '%s' and match type
> '%s':\n",
> $keyword->text, $keyword->matchType);
> printf(" Estimated average CPC: %.0f\n", $meanAverageCpc);
> printf(" Estimated ad position: %.2f \n",
> $meanAveragePosition);
> printf(" Estimated daily clicks: %d\n", $meanClicks);
> printf(" Estimated daily cost: %.0f\n\n", $meanTotalCost);
> }
> } else {
> print "No traffic estimates were returned.\n";
> }
> }
>
>
>
> try {
> // Get AdWordsUser from credentials in "../auth.ini"
> // relative to the AdWordsUser.php file's directory.
> $user = new AdWordsUser();
>
> // Log every SOAP XML request and response.
> $user->LogAll();
>
> // Run the example.
> GetKeywordIdeasExample($user);
> } catch (Exception $e) {
> printf("An error has occurred: %s\n", $e->getMessage());
> }
>
> The error is on line 72, but remember thats an example from a previous
> version of the API. Any tip in the right direction will be much
> appreciated!
>
> Thanks!
--
--
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and Google+:
https://googleadsdeveloper.blogspot.com/
https://plus.google.com/+GoogleAdsDevelopers/posts
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
You received this message because you are subscribed to the Google
Groups "AdWords API Forum" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
---
You received this message because you are subscribed to the Google Groups
"AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
Visit this group at https://groups.google.com/group/adwords-api.
To view this discussion on the web visit
https://groups.google.com/d/msgid/adwords-api/2ffc7753-22fd-441d-b4c8-93f6a715cf96%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.