Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En las secciones siguientes se muestran ejemplos de scripts que obtienen grupos de productos y actualizan sus importes de puja.
Obtener grupos de productos
Para obtener todos los grupos de productos de una cuenta, usa el método AdsApp.productGroups().
function main() {
var productGroups = AdsApp.productGroups().get();
while (productGroups.hasNext()) {
var productGroup = productGroups.next();
switch (productGroup.getDimension()) {
case "ROOT": {
break;
}
case "CATEGORY": {
var category = productGroup.getValue();
break;
}
case "CHANNEL": {
var channel = productGroup.getValue();
break;
}
case "CHANNEL_EXCLUSIVITY": {
var channelExclusivity = productGroup.getValue();
break;
}
case "BRAND": {
var brand = productGroup.getValue();
break;
}
case "CONDITION": {
var condition = productGroup.getValue();
break;
}
case "CUSTOM_LABEL": {
// It's only necessary to cast the product group to a CustomLabel product
// group if you need to get the label's name (i.e., CustomLabel0).
var customLabel = productGroup.asCustomLabel();
var labelType = customLabel.getType();
var labelValue = customLabel.getValue();
break;
}
case "ITEM_ID": {
var id = productGroup.getValue();
break;
}
case "PRODUCT_TYPE": {
// It's only necessary to cast the product group to a ProductType product
// group if you need to get the type's name (i.e., PRODUCT_TYPE_1).
var productType = productGroup.asProductType();
var typeName = productType.getType();
var typeValue = productType.getValue());
break;
}
}
}
}
Otra opción es obtener los grupos de productos por campañas de compras o grupos de anuncios de compras. Para obtener los grupos de productos por grupos de anuncios, primero llama al método AdsApp.shoppingAdGroups() y, a continuación, llama al método AdGroup.productGroups(). Para las campañas, debes llamar de forma similar a los métodos AdsApp.shoppingCampaigns() y Campaign.productGroups().
function main() {
var shoppingAdGroups = AdsApp.shoppingAdGroups()
.get();
while (shoppingAdGroups.hasNext()) {
var adGroup = shoppingAdGroups.next();
var productGroups = adGroup.productGroups().get();
while (productGroups.hasNext()) {
var productGroup = productGroups.next();
switch (productGroup.getDimension()) {
case "ROOT": {
break;
}
case "CATEGORY": {
var category = productGroup.getValue();
break;
}
case "CHANNEL": {
var channel = productGroup.getValue();
break;
}
case "CHANNEL_EXCLUSIVITY": {
var channelExclusivity = productGroup.getValue();
break;
}
case "BRAND": {
var brand = productGroup.getValue();
break;
}
case "CONDITION": {
var condition = productGroup.getValue();
break;
}
case "CUSTOM_LABEL": {
// It's only necessary to cast the product group to a CustomLabel product
// group if you need to get the label's name (i.e., CustomLabel0).
var customLabel = productGroup.asCustomLabel();
var labelType = customLabel.getType();
var labelValue = customLabel.getValue();
break;
}
case "ITEM_ID": {
var id = productGroup.getValue();
break;
}
case "PRODUCT_TYPE": {
// It's only necessary to cast the product group to a ProductType product
// group if you need to get the type's name (i.e., PRODUCT_TYPE_1).
var productType = productGroup.asProductType();
var typeName = productType.getType();
var typeValue = productType.getValue());
break;
}
}
}
}
}
Condiciones aplicables
Para filtrar la lista de grupos de productos, utilice el método withCondition . Con withCondition, puedes filtrar los grupos de productos por los valores métricos estándar, como clics y conversiones, pero también puedes filtrar por importe de puja y grupo de productos.
En el siguiente ejemplo se muestra cómo obtener el grupo de productos Esquís si la ruta es "Todos los productos > : Artículos > deportivos, Deportes > de invierno, > Esquís de esquí, Esquís de > fondo reacondicionados > ".
function main() {
var shoppingAdGroup = AdsApp.shoppingAdGroups().withIds(["123456789"]).get().next();
var productGroups = shoppingAdGroup.productGroups()
.withCondition("ProductGroup = skis")
.get();
while (productGroups.hasNext()) {
var group = productGroups.next();
}
}
Dado que los esquís se subdividen por la condición reacondicionada, la respuesta incluye el grupo de productos Esquís seleccionado y el grupo de productos OtherCase para Reacondicionado.
dimension CATEGORY
value Skis
cpc null
parent 4578503857653096
dimension CONDITION
value OtherCase
cpc 1
parent 4578503857653099
Actualizar la puja de un grupo de productos
Normalmente, quieres aumentar las pujas cuando el rendimiento es malo y reducirlas cuando el rendimiento es bueno. En este ejemplo, se muestra cómo obtener los grupos de productos que tienen un rendimiento deficiente y aumentar el importe de la oferta. (En este ejemplo, se usan clics y tasas de conversión para determinar los grupos con un rendimiento deficiente, pero debe usar las métricas y los umbrales adecuados para usted).
function main() {
var shoppingAdGroup = AdsApp.shoppingAdGroups().withIds(["123456789"]).get().next();
var productGroups = shoppingAdGroup.productGroups()
.withCondition("Clicks < 30")
.withCondition("ClickConversionRate < .25")
.forDateRange("LAST_MONTH")
.get();
var groupsToUpdate = [];
while (productGroups.hasNext()) {
groupsToUpdate.push(productGroups.next());
}
for (var group of groupsToUpdate) {
group.setMaxCpc(.35);
}
}