Filtros de grupos de fichas em jobs em lote

Ao trabalhar com filtros de grupo de itens listados no contexto de um AdGroupCriterion.listing_group ou um AssetGroupListingGroupFilter, considere as seguintes considerações ao projetar sua integração.

Divisão em lotes

Se houver operações em um job em lote que contenham critérios de grupo de anúncios ou filtros de grupo de listagem de grupos de recursos, as operações no job em lote serão divididas em vários sublotes quando recebidas pelo servidor da API Google Ads. Ao contrário das operações padrão em um job em lote, cada sublote que contém operações de filtro de grupo de listagem é tratado de forma atômica.

A forma como os jobs em lote que contêm filtros de grupo de listagem são divididos em sublotes é determinada pelos seguintes fatores:

  1. Tipo de filtro do grupo de produtos anunciados
  2. O AdGroupCriterion ou AssetGroup que o filtro do grupo de produtos anunciados está segmentando
  3. Ordem de operações

Considere como as operações são agrupadas:

  • Todas as operações AssetGroupListingGroupFilterOperation consecutivas com o mesmo AssetGroup são agrupadas em um sublote atômico (sem comportamento de falha parcial).
  • Todas as operações AdGroupCriterionOperation consecutivas que contêm um listing_group com o mesmo AdGroup são agrupadas em um sublote atômico (sem comportamento de falha parcial).
  • Todas as outras operações consecutivas são agrupadas em sublotes não atômicos (comportamento de falha parcial).

O diagrama a seguir ilustra esse conceito. Cada uma das caixas cinzas representa um job em lote enviado usando a API Google Ads. Nas caixas cinza, as operações individuais são agrupadas por cor para representar os sublotes que o servidor da API do Google Ads cria. A ordem das operações em cada uma das caixas cinza corresponde à ordem em que as operações seriam adicionadas ao lote.

imagem

Limitações

Ao trabalhar com filtros de grupo de listagem no contexto de trabalhos em lote, as seguintes limitações se aplicam:

  • Um único lote de operações AssetGroupListingGroupFilterOperation que contenha um listing_group e tenha como alvo o mesmo AdGroup não pode exceder 20.000 operações em comprimento. No entanto, é recomendável não exceder 10.000 operações.
  • Um único lote de operações AssetGroupListingGroupFilterOperation com o mesmo AssetGroup não pode exceder 10.000 operações.
  • A violação de qualquer uma dessas condições resulta em uma falha em todo o trabalho em lote.

Solução de problemas

As operações de filtro de grupo de listagem em um job em lote são processadas como uma transação, o que pode levar a cenários em que muitas operações falham devido a um pequeno número de operações incorretas. Além disso, devido à forma como as operações BatchJob são processadas, a causa raiz das falhas pode aparecer em um índice antes ou depois das falhas downstream.

Por exemplo, ao processar uma resposta de ListBatchJobResults, você pode descobrir que várias operações falharam com uma mensagem de status, Ad group is invalid due to the listing groups it contains. Essa mensagem geralmente indica que a operação nesse índice foi cancelada devido a uma operação com falha em um índice diferente. Para identificar a causa raiz do problema, recomendamos iterar todas as mensagens de status no BatchJobResult, antes e depois do índice da mensagem de erro Ad group is invalid, em busca de mais informações sobre o erro.