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 oupdate_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 oupdate_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.