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 atuais. Fizemos todos os esforços para garantir o máximo de compatibilidade com versões anteriores possível, então essas mudanças devem ser pequenas.

Relatórios

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

Devido a essa sobrecarga, recomendamos que você analise seus scripts e atualize as consultas de AWQL para a GAQL sempre que possível. É possível 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 do AWQL, ou o criador de consultas interativo para ajudar a elaborar consultas.

Veja algumas limitações à conversão automática de AWQL para o GAQL:

  • Nem todas as consultas AWQL são convertidas de forma limpa em consultas GAQL. Nesses casos, uma mensagem de erro com alguns detalhes sobre o que deu errado será registrada, para ajudar você na correção manual.
  • Nem todos os tipos de relatórios da AWQL são compatíveis com a GAQL.
  • A GAQL não é compatível com "linhas de impressão zero". Especificar que um relatório não deve incluir impressões resultará em erro.
  • Alguns campos ambíguos não podem ser usados em filtros. Por exemplo, "Título" pode se referir a qualquer número de campos de anúncio diferentes.
  • Alguns campos podem retornar resultados em um formato diferente, por exemplo, dividindo um resultado em várias colunas.

Como organizar 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 por nome de campanha, anteriormente você teria usado:

.withCondition('CampaignName = "SOME_CAMPAIGN_NAME"')

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

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

Dito isso, fizemos um esforço para incluir um mapeamento de nomes antigos para novos nomes. Portanto, se o script ainda usar CampaignName, ele será automaticamente substituído por campaign.name durante a execução para garantir que ele ainda funcione. Se você tiver problemas com os nomes dos estilos antigos, atualize os scripts para usar os novos nomes como uma primeira etapa da solução de problemas.

Limites

Muitos limites são os mesmos que eram na infraestrutura antiga, e as mudanças feitas aqui geralmente ajudam a melhorar o desempenho.

  • 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. Antes, esse limite de 50.000 não era personalizável.
  • Um único seletor pode lidar com no máximo 10.000 IDs (inalterado).
  • A nova infraestrutura não tem limite no 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 registros é truncada em 100 KB (inalterado).
  • As cotas dos serviços do Apps Script (SpreadsheetApp, MailApp etc.) não são 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 de 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.