O Google Ads é compatível com vários tipos de anúncio, como anúncios gráficos, de texto e para dispositivos móveis. Este guia explica como criar, recuperar e gerar relatórios sobre anúncios usando scripts do Google Ads. Para ter uma visão geral de todos os tipos de anúncio compatíveis com o Google Ads, consulte o guia de API.
Criação
Os scripts podem criar anúncios usando o
newAd()
método em
AdGroup
instâncias. Isso retorna um
AdBuilderSpace
que cria builders para
tipos de anúncio compatíveis.
O snippet a seguir demonstra como criar um anúncio responsivo de pesquisa:
let adOperation = adGroup.newAd().responsiveSearchAdBuilder()
.withHeadlines(["Headline 1", "Headline 2", "Headline 3"])
.withDescriptions(["Description 1", "Description 2"])
.withFinalUrl("http://www.example.com")
.withPath1("path1")
.withPath2("path2")
.build();
Inspeção
Algumas informações associadas a todos os tipos de anúncio estão imediatamente disponíveis em um
Ad, como o ID e o status de aprovação de um
anúncio. Além disso, qualquer anúncio pode ser pausado, ativado ou removido.
Para acessar campos específicos do tipo de anúncio, como os
títulos de um anúncio responsivo de pesquisa, use o
asType()
método para criar um
AdViewSpace.
Isso fornece acesso a uma versão estendida do
Ad que expõe
métodos específicos do tipo.
O snippet a seguir recebe os títulos de todos os anúncios responsivos de pesquisa:
const iterator = AdsApp.ads().withCondition("Type = RESPONSIVE_SEARCH_AD").get();
while (iterator.hasNext()) {
let ad = iterator.next();
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
}
A condição Type = RESPONSIVE_SEARCH_AD garante que todos os anúncios do iterador sejam anúncios responsivos de pesquisa. A tentativa de visualizar um anúncio com um tipo incorreto resultará em um erro que interrompe a execução do script. Portanto, é importante visualizar campos específicos do tipo somente quando o tipo de um anúncio for conhecido.
O snippet a seguir mostra como determinar se um anúncio é do tipo correto
usando o
Ad.isType()
método:
if (ad.isType().responsiveSearchAd()) {
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
let descriptions = responsiveSearchAd.getDescriptions();
}
Embora não seja possível filtrar anúncios por texto do título usando seletores padrão, é possível filtrá-los em JavaScript depois de recuperá-los:
const iterator = AdsApp.ads().withCondition("Type = RESPONSIVE_SEARCH_AD").get();
while (iterator.hasNext()) {
let ad = iterator.next();
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
// Filter for ads containing a specific headline.
if (headlines.some(h => h.getText().includes("Special Offer"))) {
console.log(`Found ad with ID ${ad.getId()}`);
}
}
Relatórios
A visualização ad_group_ad pode ser
usada para consultar campos de anúncio, além de estatísticas normais. Por exemplo, é possível
filtrar por tipo de anúncio usando
ad_group_ad.ad.type.
O snippet a seguir mostra como recuperar as estatísticas de todos os anúncios responsivos de pesquisa:
const results = AdsApp.search(
"SELECT ad_group_ad.ad_group.id, " +
"ad_group_ad.ad.id, " +
"metrics.clicks, " +
"metrics.impressions, " +
"metrics.cost " +
"FROM ad_group_ad " +
"WHERE ad_group_ad.ad.type = 'RESPONSIVE_SEARCH_AD' " +
"AND segments.date DURING LAST_7_DAYS");
while (results.hasNext()) {
let row = results.next();
let adId = row.adGroupAd.ad.id;
let clicks = row.metrics.clicks;
...
}
Filtrar por conteúdo do recurso
Para filtrar anúncios responsivos de pesquisa pelo conteúdo dos títulos ou
descrições em escala, use o
ad_group_ad_asset_view
recurso. Essa visualização trata cada título e descrição como uma linha separada, permitindo que você filtre o texto do recurso.
O snippet a seguir recupera estatísticas de todos os anúncios responsivos de pesquisa que contêm um título específico:
const results = AdsApp.search(
"SELECT ad_group_ad.ad.id, " +
"asset.text_asset.text, " +
"metrics.clicks, " +
"metrics.impressions " +
"FROM ad_group_ad_asset_view " +
"WHERE asset.text_asset.text LIKE '%Special Offer%' " +
"AND ad_group_ad_asset_view.field_type = 'HEADLINE'");
while (results.hasNext()) {
let row = results.next();
let adId = row.adGroupAd.ad.id;
let text = row.asset.textAsset.text;
let clicks = row.metrics.clicks;
console.log(`Ad ID ${adId} with headline "${text}" had ${clicks} clicks.`);
}
Consulte o guia de relatórios para mais informações sobre como gerar relatórios em scripts.