Componentes opcionais das campanhas Performance Max

Metas de conversão

Ao criar uma campanha Performance Max, uma série de metas de conversão são criadas automaticamente e correspondem aos CustomerConversionGoals na conta. Você pode personalizar esses recursos para cada uma das suas campanhas Performance Max atualizando-os.

Para isso, primeiro busque uma lista de todas as metas de conversão do cliente.

const searchResults = AdsApp.search(
  `SELECT
     customer_conversion_goal.category,
     customer_conversion_goal.origin
   FROM customer_conversion_goal`
);

Em seguida, você pode iterar todas as metas de conversão recebidas e criar uma operação de atualização para a campanha Performance Max atual e personalizar a segmentação de cada meta. O código abaixo define todos como de lances, mas você vai querer personalizar essa parte da lógica para corresponder ao que você quer extrair da sua campanha.

Antes de executar esse código, você precisa buscar o ID da sua campanha Performance Max.

Recomendamos configurar metas de conversão em uma transação separada do restante do processo de criação da campanha. CampaignConversionGoalOperation exige que partialFailure da solicitação seja definido como false. Se você quiser executar esse código na mesma transação em que criou a campanha, desative a falha parcial em todo o conjunto de operações. Este exemplo de código demonstra como realizar essa operação em uma transação separada.

operations = [];
while (searchResults.hasNext()) {
  const row = searchResults.next();
  const conversionGoal = row.customerConversionGoal;

  operations.push({
    "campaignConversionGoalOperation": {
      "update": {
        "resourceName": `customers/${customerId}/campaignConversionGoals/${campaignId}~${conversionGoal.category}~${conversionGoal.origin}`,
        // Insert your logic here to determine whether you want this particular
        // campaign conversion goal to be biddable or not.
        // This code will just default everything to being biddable, but that
        // is not necessarily best for your use case.
        "biddable": true
      },
      "updateMask": "biddable"
    }
  });
}

AdsApp.mutateAll(operations, {partialFailure: false});

Campanha de segmentação

Para a segmentação por campanha nas campanhas Performance Max, confira o guia da API para ver uma lista completa de tipos de critérios permitidos.

Não é necessário ter outros critérios para criar uma campanha Performance Max, mas eles podem ser úteis para restringir a segmentação com base no seu caso de uso. O exemplo de código abaixo mostra como configurar uma segmentação por geolocalização. Consulte a documentação CampaignCriterion para ver o formato de outros tipos de critérios.

É possível criar esses critérios junto com a campanha como parte da mesma chamada para mutateAll. Este exemplo de código pressupõe que é assim que você estrutura seu código.

operations.push({
  "campaignCriterionOperation": {
    "create": {
      "campaign": campaignOperation.campaignOperation.create.resourceName,
      "negative": false,
      "location": {
        // 1023191 represents New York City
        "geoTargetConstant": "geoTargetConstants/1023191"
      }
    }
  }
});

Indicadores do grupo de recursos

Leia sobre indicadores de grupo de recursos na documentação da API antes de começar. Eles são configurados vinculando um grupo de recursos a um critério AudienceInfo ou SearchThemeInfo. Se você quiser usar um público-alvo, especifique o campo audience em vez de searchTheme com o nome do recurso do público-alvo.

operations.push({
  "assetGroupSignalOperation": {
    "create": {
      "assetGroup": assetGroupOperation.assetGroupOperation.create.resourceName,
      "searchTheme": {
        "text": "mars cruise"
      }
    }
  }
});