Ten przewodnik został opracowany tak, aby był dokładnym odpowiednikiem dotychczasowych przewodników dotyczących kampanii Performance Max, które zakładają, że całą kampanię utworzysz w ramach jednej niepodzielnej prośby, a nie w ramach oddzielnych próśb dotyczących poszczególnych komponentów. Oznacza to, że do łączenia ze sobą zasobów musisz używać tymczasowych identyfikatorów, ponieważ pełne nazwy zasobów będą Ci znane dopiero po otrzymaniu odpowiedzi z interfejsu API.
Aby to zrobić, musisz napisać kod, który zapobiegnie tworzeniu zduplikowanych tymczasowych identyfikatorów:
let nextId = -1;
function getNextTempId() {
const ret = nextId;
nextId -= 1;
return ret;
}
Każde kolejne wywołanie funkcji getNextTempId
zwróci liczbę o 1 mniejszą niż poprzednia. Ponieważ wszystkie tymczasowe identyfikatory muszą być ujemne, zacznij od –1.
Teraz możesz utworzyć tablicę, która będzie zawierać wszystkie operacje:
const operations = [];
Często będziesz potrzebować identyfikatora klienta, dla którego tworzysz kampanię, ponieważ jest on wymagany w każdej nazwie zasobu.
const customerId = AdsApp.currentAccount().getCustomerId();
Za każdym razem, gdy chcesz utworzyć nową operację, użyj następnego tymczasowego identyfikatora w nazwie zasobu, aby móc później odwoływać się do tego obiektu i wstawiać 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 jednej partii:
AdsApp.mutateAll(operations);