In dieser Anleitung wird davon ausgegangen, dass Sie die gesamte Kampagne in einer einzigen atomaren Anfrage erstellen und nicht jede Einheit einzeln in separaten Anfragen. Das bedeutet, dass Sie temporäre IDs verwenden müssen, um Ressourcen miteinander zu verknüpfen, da Sie die vollständigen Ressourcennamen erst kennen, wenn Sie die API-Antwort erhalten.
Dazu müssen Sie Code schreiben, um zu verhindern, dass doppelte temporäre IDs erstellt werden:
let nextId = -1;
function getNextTempId() {
const ret = nextId;
nextId -= 1;
return ret;
}
Bei jedem nachfolgenden Aufruf von getNextTempId
wird eine Zahl zurückgegeben, die um eins niedriger ist als die vorherige. Da alle temporären IDs negativ sein müssen, beginnen Sie mit -1.
Jetzt können Sie ein Array erstellen, das alle Vorgänge enthält:
const operations = [];
Sie benötigen häufig die Kundennummer des Kunden, für den Sie die Kampagne erstellen, da sie in jedem Ressourcennamen erforderlich ist.
const customerId = AdsApp.currentAccount().getCustomerId();
Jedes Mal, wenn Sie einen neuen Vorgang erstellen möchten, verwenden Sie die nächste temporäre ID im Ressourcennamen, damit Sie später auf dieses Objekt verweisen und das erstellte Objekt in das Array einfügen können:
const newOperation = {
[OPERATION_TYPE_VARIES]: {
create: {
resourceName: `customers/${customerId}/[EXACT_PATH_VARIES]/${getNextTempId()}`
// Other fields, relevant to the resource being created.
}
}
}
operations.push(newOperation);
Weitere Informationen und ein Beispiel für einen Vorgang finden Sie in der Dokumentation zur REST-Mutate-Methode der Google Ads API.
Nachdem Sie alle Vorgänge erstellt haben, führen Sie sie in einem einzelnen Batch aus:
AdsApp.mutateAll(operations);