Mudar objetos

Conforme descrito no guia da estrutura da API, cada recurso de nível superior na API Google Ads tem um serviço correspondente específico do tipo de recurso que permite modificar instâncias do recurso.

Este guia usa CampaignService para demonstrar a modificação de objetos Campaign, mas os mesmos conceitos se aplicam a todos os outros serviços específicos a cada tipo de recurso.

Mudar objetos

Cada serviço específico ao tipo de recurso tem um método mutate que aceita uma solicitação de mutação. Essa solicitação consiste em:

  • Um customerId
  • Um conjunto de operações
  • Uma configuração de tipo de conteúdo da resposta que determina se o recurso mutável ou apenas o nome do recurso deve ser retornado após a mutação.

Por exemplo, o método MutateCampaigns de CampaignService aceita um MutateCampaignsRequest que consiste em:

  • Um customerId
  • Uma coleção de objetos CampaignOperation
  • O campo response_content_type que indica o tipo de resposta preferido.

Operações

Um objeto de operação, como um CampaignOperation, permite especificar a ação que você quer realizar em um único recurso definindo o campo operation dele. Esse campo é um oneof que consiste nos seguintes atributos cujo tipo é o tipo do recurso:

create
Cria uma nova instância do recurso.
update
Atualiza o recurso para corresponder aos atributos do recurso update. Quando esse campo está definido, você também precisa definir o update_mask da operação, que informa à API Google Ads quais atributos modificar durante a operação de atualização. Cada biblioteca de cliente tem um método utilitário ou auxiliar que gera o update_mask para você, conforme demonstrado nas bibliotecas de cliente.
remove
Remove o recurso.

Como o campo operation é um campo oneof, não é possível usar uma única operação para modificar vários objetos. Por exemplo, se você quiser criar uma campanha e remover outra, adicione duas instâncias de CampaignOperation à sua solicitação: uma com create definido e outra com remove definido.

Operações em lote

Embora uma única operação possa apenas criar, atualizar ou remover um único recurso, uma única solicitação de mutação pode conter várias operações. Combine suas operações em uma única solicitação de mutação em vez de enviar várias solicitações de mutação, cada uma contendo uma única operação.

Por exemplo, se quiser criar dez campanhas, envie um único MutateCampaignsRequest com dez objetos CampaignOperation.

Respostas da solicitação "mutate"

O que é retornado na resposta depende do que foi enviado no response_content_type da solicitação de mutação. Por exemplo, se MUTABLE_RESOURCE foi especificado, a resposta vai conter apenas os campos mutáveis na campanha. Em seguida, faça mutações de acompanhamento nesse objeto de recurso sem precisar reconstruí-lo.

Erros de mutação

As operações em uma determinada solicitação de mutação só serão aplicadas à sua conta do Google Ads se todas as operações da solicitação forem bem-sucedidas. Confira o guia de erros comuns para ver uma lista de erros comuns e como resolvê-los.