Ejemplos de scripts para administrar campañas

En las secciones siguientes se muestran ejemplos de scripts que realizan diversas acciones en campañas.

Obtener todas las campañas

Para obtener todas las campañas de una cuenta, primero llame al método del campaigns objeto AdsApp para obtener el selector. A continuación, llame al método del get selector para obtener un iterador que use para recorrer en iteración la lista de campañas. Dado que el ejemplo no especifica ningún filtro, el selector devuelve todas las campañas de la cuenta. Para determinar el número de campañas en el iterador, llame al método del totalNumEntities iterador.

function main() {
    // Gets all campaigns in the account.
    var iterator = AdsApp.campaigns().get();

    // Iterates through the list of campaigns and logs 
    // each campaign's name.
    while (iterator.hasNext()) {
        var campaign = iterator.next();
    }
}

Obtener una campaña por nombre

Para obtener una campaña por nombre, llame primero al método del campaigns objeto AdsApp para obtener el selector. El selector contiene una serie de métodos de filtro que se usan para filtrar la lista de campañas. Use el withCondition método para filtrar las campañas por un nombre de campaña específico. Tenga en cuenta que los operandos y operadores distinguen mayúsculas de minúsculas.

A continuación, llame al método del get selector para obtener el iterador. Los nombres de campaña son únicos, por lo que solo recuperarás uno, si existe.

function main() {
    var campaignName = 'CAMPAIGN NAME GOES HERE';

    var iterator = AdsApp.campaigns()
        .withCondition(`Name = '${campaignName}'`)
        .get();

    while (iterator.hasNext()) {
        var campaign = iterator.next();
    }
}

Obtener campaña por identificador

Si tienes acceso al identificador de la campaña, úselo en su lugar. El uso de identificadores para obtener entidades proporciona un mejor rendimiento. En lugar de usar el método de withCondition filtro, use el withIds método . Por ejemplo, withIds(['12345']).

function main() {
    var campaignId = '12345';

    var iterator = AdsApp.campaigns()
        .withIds([campaignId])
        .get();

    while (iterator.hasNext()) {
        var campaign = iterator.next();
    }
}

Obtención de los datos de rendimiento de una campaña

Para obtener las métricas de rendimiento de una campaña, llame al método getStats de la campaña. Al obtener la campaña, debe especificar el intervalo de fechas de los datos de métricas que desea. Puede especificar el intervalo de fechas mediante un literal predefinido, como LAST_MONTH o TODAY, o una fecha de inicio y finalización. Para especificar el intervalo de fechas, use uno de los forDateRange métodos al seleccionar la campaña (consulte CampaignSelector).

Para obtener una lista de las métricas a las que puede acceder, consulte el objeto Stats .

function main() {
    var campaignId = '12345';

    // Get the campaign. You need to specify the date range of the
    // performance data you want to get.
    var iterator = AdsApp.campaigns()
        .withIds([campaignId])
        .forDateRange('LAST_WEEK')
        .get();

    // If the campaign is found, log some metrics.
    while (iterator.hasNext()) {
        var campaign = iterator.next();
        var metrics = campaign.getStats(); // Gets the performance metrics.
    }
}

Pausar una campaña

Para pausar una campaña, llame al método de la pause campaña. Para habilitarlo de nuevo, llame al método de la enable campaña. Para determinar el estado de la campaña, llame a los métodos , isPausedy isRemoved de isEnabledla campaña.

function main() {
    var campaignId = '12345';

    var iterator = AdsApp.campaigns()
        .withIds([campaignId])
        .get();

    // If the campaign is found, pause it.
    while (iterator.hasNext()) {
        var campaign = iterator.next();
        campaign.pause();
    }
}