Migração

A nova infraestrutura de scripts do Google Ads tem como base a API Google Ads. Devido à arquitetura diferente dessa API, talvez seja necessário atualizar os scripts existentes. Fizemos todos os esforços para garantir a maior compatibilidade retroativa possível. Portanto, essas mudanças devem ser pequenas.

Relatórios

Muitos relatórios de AWQL vão continuar funcionando. Nos bastidores, ao usar a nova infraestrutura, os scripts vão converter sua consulta AWQL em GAQL (a nova linguagem de consulta da API Google Ads), executá-la no novo back-end e converter os resultados de volta para o formato usado originalmente pelos relatórios da AWQL. As consultas com GAQL serão transmitidas como estão.

Por causa desse overhead, recomendamos que você analise seus scripts e atualize as consultas AWQL para GAQL sempre que possível. Você pode usar a ferramenta de migração de consultas, que usa a mesma lógica dos scripts para determinar a consulta GAQL de uma determinada consulta AWQL, ou o criador de consultas interativo para ajudar a criar consultas.

Estas são algumas limitações da conversão automática de AWQL para GAQL:

  • Nem todas as consultas AWQL são traduzidas corretamente para consultas GAQL. Nesses casos, uma mensagem de erro com alguns detalhes sobre o que deu errado será registrada para ajudar você a corrigir manualmente.
  • Nem todos os tipos de relatórios do AWQL são compatíveis com o GAQL.
  • O GAQL não é compatível com "linhas de impressão zero". Especificar que um relatório deve incluir zero impressões vai resultar em um erro.
  • Alguns campos ambíguos não podem ser usados em filtros. Por exemplo, "Título" pode fazer referência a vários campos de anúncios diferentes.
  • Alguns campos podem retornar resultados em um formato diferente, por exemplo, dividindo um resultado em várias colunas.

Organização de seletores

Ao buscar recursos usando scripts, é bastante comum usar chamadas withCondition e orderBy para restringir ou ordenar os resultados no iterador. Os campos nessas chamadas agora usam os novos nomes da API Google Ads. Por exemplo, para filtrar pelo nome da campanha, você usaria:

.withCondition('CampaignName = "SOME_CAMPAIGN_NAME"')

Agora, use os novos nomes de campos para essas condições sempre que possível:

.withCondition('campaign.name = "SOME_CAMPAIGN_NAME"')

No entanto, fizemos um esforço para incluir um mapeamento de nomes antigos para novos. Portanto, se o script ainda usar CampaignName, ele será substituído automaticamente por campaign.name no momento da execução para garantir que o script ainda funcione. Se você tiver problemas com os nomes de estilo antigos, atualize seus scripts para usar os novos nomes de estilo como primeira etapa de solução de problemas.

Limites

Muitos limites são os mesmos da infraestrutura antiga, e as mudanças feitas aqui geralmente ajudam a melhorar a performance.

  • Os limites de tempo são os mesmos. Um script pode ser executado por 30 minutos.
  • Um único iterador retorna 50.000 entidades por padrão, mas isso pode ser modificado. Anteriormente, esse limite de 50.000 não era personalizável.
  • Um único seletor pode processar no máximo 10.000 IDs (sem alterações).
  • A nova infraestrutura não tem limite para o número de entidades que podem ser processadas em um único script. Antes, o limite era de 250.000.
  • A nova infraestrutura não tem limite para o número de palavras-chave ou anúncios que podem ser criados por execução. Antes, o limite era de 250.000.
  • A saída de registro é truncada em 100 KB (inalterada).
  • As cotas para serviços do Apps Script (SpreadsheetApp, MailApp etc.) não foram alteradas.
  • As cotas do Google Ads serão aplicadas como se você estivesse usando a API. Ou seja, seu script estará sujeito a limites de taxa da API, mas isso permite mais flexibilidade para acessar mais relatórios ou fazer mais alterações por execução.

Outras mudanças

O ExecutionInfo não expõe mais getRemainingCreateQuota() ou getRemainingGetQuota(), já que essas cotas não se aplicam mais à nova experiência.