Componentes requeridos para las campañas de máximo rendimiento

Para generar una campaña de máximo rendimiento nueva desde cero, como mínimo, debes crear lo siguiente:

La campaña y el presupuesto son útiles para crear todo tipo de tipos de campañas, mientras que las operaciones relacionadas con los recursos serán útiles específicamente para crear campañas de máximo rendimiento.

Asegúrate de conocer la estrategia de mutación, ya que en esta guía solo se proporcionan los objetos JavaScript que se usarán en las mutaciones.

Presupuesto

El presupuesto no debe compartirse y debe tener un nombre único en su cuenta. Usa un objeto CampaignBudgetOperation.

const budgetOperation = {
  "campaignBudgetOperation": {
    "create": {
      "resourceName": `customers/${customerId}/campaignBudgets/${getNextTempId()}`,
      "name": "Performance Max campaign budget",
      "amountMicros": "50000000",
      "deliveryMethod": "STANDARD",
      "explicitlyShared": false
    }
  }
}
operations.push(budgetOperation);

Campaña

La campaña debe hacer referencia al presupuesto creado anteriormente, por lo que, además de especificar su propio nombre de recurso con un ID temporal, necesitarás el nombre exacto del recurso que configuraste en el paso anterior para crear la campaña, de modo que puedas identificar de forma única el presupuesto creado anteriormente en esta solicitud. Usa un objeto CampaignOperation.

const campaignOperation = {
  "campaignOperation": {
    "create": {
      "resourceName": `customers/${customerId}/campaigns/${getNextTempId()}`,
      "name": "Performance Max campaign",
      "status": "PAUSED",
      "advertisingChannelType": "PERFORMANCE_MAX",
      "campaignBudget": budgetOperation.campaignBudgetOperation.create.resourceName,
      "biddingStrategyType": "MAXIMIZE_CONVERSION_VALUE",
      "startDate": "20240314",
      "endDate": "20250313",
      "urlExpansionOptOut": false,
      "maximizeConversionValue": {
        "targetRoas": 3.5
      }
    }
  }
}
operations.push(campaignOperation);

Grupo de recursos

El grupo de recursos de esta campaña requiere una referencia a la campaña, y será necesario hacer referencia a ella más adelante cuando vincules los recursos a él. Usa un objeto AssetGroupOperation.

const assetGroupOperation = {
  "assetGroupOperation": {
    "create": {
      "resourceName": `customers/${customerId}/assetGroups/${getNextTempId()}`,
      "campaign": campaignOperation.campaignOperation.create.resourceName,
      "name": "Performance Max asset group",
      "finalUrls": [
        "http://www.example.com"
      ],
      "finalMobileUrls": [
        "http://www.example.com"
      ],
      "status": "PAUSED"
    }
  }
}
operations.push(assetGroupOperation);

Ahora que tienes nuestros grupos de recursos y nuestros recursos (del paso anterior), debes vincularlos para que la campaña de máximo rendimiento sepa qué recursos deseas utilizar. Debes hacerlo en la misma solicitud en la que creas el grupo de recursos inicialmente. Para ello, usa un AssetGroupAssetOperation.

Deberás proporcionar el nombre correcto del recurso y modificar fieldType para que sea el valor apropiado del recurso que quieres vincular. Consulta la lista completa de tipos de campo válidos.

Necesitarás varias de estas operaciones para cumplir con los requisitos mínimos de una campaña de máximo rendimiento.

operations.push({
  "assetGroupAssetOperation": {
    "create": {
      "assetGroup": assetGroupOperation.assetGroupOperation.create.resourceName,
      // assetResourceName here is a placeholder; you will need to determine
      // the correct resource name to use depending on which asset you want
      // to add to the asset group.
      "asset": assetResourceName,
      "fieldType": "HEADLINE"
    }
  }
});