Selectores

Los selectores ayudan al programador a construir la consulta que recupera las entidades de Google Ads deseadas. Con los selectores, se puede limitar la lista de entidades recuperadas y ordenarla. La mayoría de los selectores tienen los siguientes métodos:

withCondition()
Agrega una condición a un selector. Si se usan varias condiciones, se combinan con el operador Y. En otras palabras, el selector solo mostrará entidades que satisfagan todas las condiciones especificadas.
withIds()
Agrega una colección de IDs como condición. Una condición basada en un ID se combinará con todas las demás.
forDateRange()
es necesario cuando una condición o cláusula de orden hace referencia a un campo Stats, como CTR o Impresiones. Si solicitas todas las campañas con más de 100 impresiones, las secuencias de comandos de Google Ads deberán conocer el período que se debe analizar.
orderBy()
Especifica el orden de las entidades que se muestran.
withLimit()
Limita la cantidad de entidades que se muestran al valor especificado. Es particularmente útil en combinación con orderBy() para recuperar elementos como "10 palabras clave con la mayor cantidad de impresiones ayer". De forma predeterminada, todos los selectores establecerán el límite en 50,000. Para aumentar el límite, especifica uno manualmente.

Se puede llamar a estos métodos en cualquier orden. Una excepción es orderBy(), en la que el orden de las llamadas sí importa: varias llamadas a este método especificarán varias cláusulas de orden y se aplicarán en orden. Considera el siguiente fragmento:

selector = selector.forDateRange("LAST_14_DAYS")
    .orderBy("metrics.clicks DESC")
    .orderBy("metrics.ctr ASC");

Los resultados se ordenarán por clics en orden descendente. Los resultados con valores de clics iguales se ordenarán por CTR en orden ascendente.

Las llamadas a los métodos de un selector se pueden encadenar. El siguiente código

var campaignSelector = AdsApp.campaigns();
campaignSelector.withCondition("metrics.clicks > 10");
campaignSelector.withCondition("metrics.impressions > 1000");
campaignSelector.orderBy("metrics.impressions DESC");
campaignSelector.forDateRange("YESTERDAY");

se puede volver a escribir de forma más compacta:

var campaignSelector = AdsApp.campaigns()
  .withCondition("metrics.clicks > 10")
  .withCondition("metrics.impressions > 1000")
  .orderBy("metrics.impressions DESC")
  .forDateRange("YESTERDAY");

Una vez que se construye el selector, se puede obtener un Iterator llamando a selector.get().

Lee las prácticas recomendadas para obtener sugerencias y trucos sobre el uso eficiente de los selectores.