Composants facultatifs de Performance Max

Objectifs de conversion

Lorsque vous créez une campagne Performance Max, un ensemble de conversions objectifs sont automatiquement créés correspondant aux CustomerConversionGoal dans le compte. Toi vous pouvez les personnaliser spécifiquement pour chacune de vos campagnes Performance Max les mettre à jour.

Pour ce faire, vous devez d'abord récupérer la liste de tous les objectifs de conversion des clients.

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

Vous pouvez ensuite itérer tous les objectifs de conversion créer une opération de modification de notre campagne Performance Max actuelle pour personnaliser le ciblage pour chaque objectif Le code ci-dessous les définit tous sur enchérissable, mais vous pouvez personnaliser cette partie de la logique que vous souhaitez tirer de votre campagne.

Avant d'exécuter ce code, vous devez récupérer l'ID de campagne de votre Performance Max.

Nous vous recommandons de configurer les objectifs de conversion dans une transaction distincte de celle reste du processus de création de la campagne. CampaignConversionGoalOperation nécessite que partialFailure pour la requête soit défini sur false. Si vous voulez exécuter ce code lors de la même transaction que celle où vous effectuez la première campagne, doit définir l'ensemble des opérations pour que l'échec partiel soit désactivé. Ce L'exemple de code montre comment effectuer cette opération dans un conteneur distinct transaction.

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});

Ciblage de la campagne

Pour le ciblage des campagnes dans Performance Max, consultez la documentation de l'API pour obtenir des informations une liste des types de critères autorisés.

Il n'est pas nécessaire d'ajouter des critères supplémentaires pour créer une campagne Performance Max, mais peut être utile pour restreindre le ciblage en fonction de votre cas d'utilisation. Le code l'exemple ci-dessous montre comment configurer une cible de géolocalisation. Vous pouvez faire référence au Documentation CampaignCriterion pour le format des autres types de critères.

Vous pouvez créer ces critères avec la campagne elle-même dans le cadre de même appel à mutateAll, et cet exemple de code suppose que c'est ainsi que vous la structuration de votre code.

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

Signaux des groupes d'assets

En savoir plus sur les groupes d'assets des signaux sur l'API avant de commencer. Pour configurer ces paramètres, associez un composant à un élément AudienceInfo existant ou Critère SearchThemeInfo. Si vous souhaitez utilisez une audience à la place, spécifiez le champ audience au lieu du champ Champ searchTheme avec le nom de ressource de l'audience.

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