Ejemplos de scripts para administrar campañas

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

Nota:

No se admite la gestión de campañas de rendimiento máximo con scripts.

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 y obtenga un iterador que use para iterar a través de la lista de campañas. Dado que en el ejemplo no se 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 el nombre, primero llame al método del campaigns objeto AdsApp para obtener el selector. El selector contiene una serie de métodos de filtro que puedes usar para filtrar la lista de campañas. Usa 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 las campañas son únicos, por lo que solo podrá recuperar 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 id.

Si tiene 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 withCondition método de 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();
    }
}

Obtener 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. Cuando recibas la campaña, tienes que especificar el intervalo de fechas de los datos de métricas que deseas. Puede especificar el intervalo de fechas mediante un literal predefinido, como LAST_MONTH u HOY, o una fecha de inicio y finalización. Para especificar el intervalo de fechas, utilice uno de los forDateRange métodos cuando seleccione la campaña (consulte CampaignSelector).

Para obtener una lista de 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, llama al método de pause la campaña. Para habilitarlo de nuevo, llama al método de enable la campaña. Para determinar el estado de la campaña, llame a , y isRemoved métodos de isEnabledisPausedla 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();
    }
}