Selectores

Los selectores ayudan al programador a crear la consulta que recupera las entidades de Google Ads solicitadas. Con los selectores, se puede reducir 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 AND. En otras palabras, el selector solo devolverá las entidades que satisfagan todas las condiciones especificadas.
withIds()
Agrega una colección de IDs como condición. Una condición basada en el ID se combinará con todas las demás a través de un operador AND.
forDateRange()
Se necesita cuando una condición o una cláusula de ordenamiento hacen referencia a un campo de Estadísticas, como el CTR o las impresiones. Si solicitas todas las campañas con más de 100 impresiones,
los scripts de Google Ads deberán conocer el período que se debe analizar.
orderBy()
Especifica el orden de las entidades devueltas.
withLimit()
Limita la cantidad de entidades devueltas al valor especificado. Es especialmente útil en combinación con orderBy() para recuperar elementos como "10 palabras clave con más impresiones ayer". De forma predeterminada, todos los selectores establecerán el límite en 50,000. Puedes aumentar el límite especificándolo de forma manual.

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 ordenamiento, 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 reescribir de una 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 a partir de él llamando a selector.get().

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