Strategia di modifica

Questa guida verrà presentata per costruire un analogo esatto delle guide Performance Max esistenti, che presuppongono che creerai l'intera campagna in un'unica richiesta atomica, anziché creare ogni entità una alla volta in richieste separate. Ciò significa che dovrai utilizzare ID temporanei per collegare le risorse tra loro, poiché non conoscerai i nomi completi delle risorse finché non riceverai la risposta dell'API.

Per farlo, dovrai scrivere del codice per assicurarti di non creare ID temporanei duplicati:

let nextId = -1;

function getNextTempId() {
    const ret = nextId;
    nextId -= 1;
    return ret;
}

Ogni chiamata successiva a getNextTempId restituirà un numero inferiore di uno rispetto a quello precedente. Poiché tutti gli ID temporanei devono essere negativi, inizia da -1.

Con questa impostazione, ora puoi creare un array per contenere tutte le operazioni:

const operations = [];

Spesso avrai bisogno dell'ID cliente per il cliente in cui stai creando la campagna, poiché è richiesto in ogni nome risorsa.

const customerId = AdsApp.currentAccount().getCustomerId();

Ogni volta che vuoi creare una nuova operazione, utilizzerai l'ID temporaneo successivo nel nome della risorsa, in modo da poter fare riferimento a questo oggetto in un secondo momento e inserire l'oggetto creato nell'array:

const newOperation = {
    [OPERATION_TYPE_VARIES]: {
        create: {
            resourceName: `customers/${customerId}/[EXACT_PATH_VARIES]/${getNextTempId()}`
            // Other fields, relevant to the resource being created.
        }
    }
}
operations.push(newOperation);

Puoi leggere di più e vedere un'operazione di esempio nella documentazione relativa alla mutazione REST dell'API Google Ads.

Una volta create tutte le operazioni, eseguile in un unico batch:

AdsApp.mutateAll(operations);