Ten przewodnik ma na celu stworzenie analogicznej do dotychczasowych przewodników Performance Max konstrukcji, która zakłada, że będziesz tworzyć całą kampanię w jednym prostym żądaniu, a nie osobno poszczególne elementy w osobnych żądaniach. Oznacza to, że do łączenia zasobów ze sobą musisz używać tymczasowych identyfikatorów, ponieważ nie znasz pełnych nazw zasobów, dopóki nie otrzymasz odpowiedzi interfejsu API.
Aby to zrobić, musisz napisać kod, który uniemożliwi tworzenie zduplikowanych identyfikatorów tymczasowych:
let nextId = -1;
function getNextTempId() {
const ret = nextId;
nextId -= 1;
return ret;
}
Każde kolejne wywołanie funkcji getNextTempId
zwraca o 1 mniejsze liczby niż poprzednie. Wszystkie tymczasowe identyfikatory muszą być ujemne, więc zacznij od -1.
Teraz możesz utworzyć tablicę, która będzie przechowywać wszystkie operacje:
const operations = [];
Często będziesz potrzebować identyfikatora klienta, dla którego tworzysz kampanię, ponieważ jest on wymagany w nazwie każdej nazwy zasobu.
const customerId = AdsApp.currentAccount().getCustomerId();
Za każdym razem, gdy chcesz utworzyć nową operację, użyjesz kolejnego tymczasowego identyfikatora w nazwie zasobu, aby później można było się do tego obiektu odwoływać, oraz wstawisz utworzony obiekt do tablicy:
const newOperation = {
[OPERATION_TYPE_VARIES]: {
create: {
resourceName: `customers/${customerId}/[EXACT_PATH_VARIES]/${getNextTempId()}`
// Other fields, relevant to the resource being created.
}
}
}
operations.push(newOperation);
Więcej informacji i przykład operacji znajdziesz w dokumentacji interfejsu Google Ads API REST mutate.
Po utworzeniu wszystkich operacji wykonaj je w jednym zbiorczym procesie:
AdsApp.mutateAll(operations);