A continuación os voy a enseñar un poco de código para realizar algunas de las operaciones más básicas que se pueden hacer con la API de AdWords.
Obtener todas las campañas de un cliente:
$user = new AdWordsUser();
$campaignService = $user->GetService('CampaignService', ADWORDS_VERSION);
$selector = new Selector();
$selector->fields = array('Id', 'Name');
$selector->ordering[] = new OrderBy('Name', 'ASCENDING');
$page = $campaignService->get($selector);
if (isset($page->entries)) {
$campaigns = array();
foreach ($page->entries as $campaign) {
array_push($campaigns, $campaign);
}
}
Obtener todos los grupos de anuncios de una campaña:
$adGroupService = $user->GetService('AdGroupService', ADWORDS_VERSION);
$selector = new Selector();
$selector->fields = array('Id', 'Name');
$selector->ordering[] = new OrderBy('Name', 'ASCENDING');
$selector->predicates[] = new Predicate('CampaignId', 'IN', array($campaign->id));
$page = $adGroupService->get($selector);
if (isset($page->entries)) {
$AdGroups = array();
foreach ($page->entries as $adGroup) {
array_push($AdGroups, $adGroup);
}
}
Obtener todos los anuncios de texto de un grupo de anuncios:
$adGroupAdService = $user->GetService('AdGroupAdService', ADWORDS_VERSION);
$selector = new Selector();
$selector->fields = array('Headline', 'Id');
$selector->ordering[] = new OrderBy('Headline', 'ASCENDING');
$selector->predicates[] = new Predicate('AdGroupId', 'IN', array($adGroup->id));
$selector->predicates[] = new Predicate('AdType', 'IN', array('TEXT_AD'));
// By default disabled ads aren't returned by the selector. To return them
// include the DISABLED status in a predicate.
$selector->predicates[] = new Predicate('Status', 'IN', array('ENABLED', 'PAUSED', 'DISABLED'));
$page = $adGroupAdService->get($selector);
if (isset($page->entries)) {
$textAds = array();
foreach ($page->entries as $adGroupAd) {
array_push($textAds, $adGroupAd->ad);
}
}
Obtener todas las keywords de un grupo de anuncios:
$adGroupCriterionService = $user->GetService('AdGroupCriterionService', ADWORDS_VERSION);
$selector = new Selector();
$selector->fields = array('Id', 'CriteriaType', 'KeywordMatchType','KeywordText');
$selector->ordering[] = new OrderBy('KeywordText', 'ASCENDING');
$selector->predicates[] = new Predicate('AdGroupId', 'IN', array($this->info->id));
$selector->predicates[] = new Predicate('CriteriaType', 'IN', array('KEYWORD'));
$page = $adGroupCriterionService->get($selector);
if (isset($page->entries)) {
$keywords = array();
foreach ($page->entries as $adGroupCriterion) {
array_push($keywords, $adGroupCriterion->criterion);
}
}
Podéis bajaros un proyecto completo dónde se usan estos scripts en https://github.com/nural/API-AdWords
Un saludo!
















