Identyfikatory

Większość obiektów Google Ads udostępnia metodę getId(), która zwraca ich identyfikator. W większości przypadków identyfikatory nie są niezbędne, ale mogą się przydać, gdy:

Praca z raportami
Identyfikatory to dobry sposób na powiązanie wiersza raportu z rzeczywistym obiektem Google Ads.
Utrzymywanie mapowania z zewnętrznym magazynem danych
Możesz już mieć w swojej bazie danych informacje oparte na identyfikatorach.
Chcesz zwiększyć wydajność

Pobieranie według identyfikatorów jest często szybsze niż inne metody. Kod pobierania pojedynczego elementu jest też nieco prostszy:

let campaigns = AdsApp.campaigns()
   .withIds([678678])
   .get();
// versus
let campaigns = AdsApp.campaigns()
   .withCondition("Name='My Campaign'")
   .get();

Unikalność

Identyfikatory kampanii i identyfikatory grup reklam są unikalne: żadne 2 kampanie ani grupy reklam nie będą miały tego samego identyfikatora. Reklamy i słowa kluczowe mają jednak identyfikatory złożone: niepowtarzalny identyfikator słowa kluczowego to połączenie identyfikatora grupy reklam i identyfikatora słowa kluczowego. Podobnie unikalny identyfikator reklamy to połączenie identyfikatora grupy reklam i identyfikatora reklamy. Ma to wpływ na sposób wywoływania funkcji selector.withIds().

W przypadku kampanii i grup reklam selector.withIds() oczekuje tablicy liczb:

let ids = [123123, 234234, 345345];
let campaignSelector = AdsApp.campaigns().withIds(ids);

W przypadku reklam i słów kluczowych parametr selector.withIds() wymaga jednak tablicy tablic dwuelementowych, z których pierwszy element to identyfikator grupy reklam. Poniższy fragment kodu pobiera 3 słowa kluczowe z grupy reklam:

let adGroupId = 123123;
let keywordSelector = AdsApp.keywords().withIds([
    [adGroupId, 234234],
    [adGroupId, 345345],
    [adGroupId, 456456]
]);

Podczas pobierania reklam stosowana jest ta sama konstrukcja.

Identyfikatory tymczasowe

Podczas pracy z żądaniem zmiany zawierającym wiele operacji czasami musisz używać tymczasowych identyfikatorów, aby połączyć ze sobą zasoby, ponieważ pełne nazwy zasobów będą dostępne dopiero po otrzymaniu odpowiedzi z interfejsu API. Tymczasowe identyfikatory muszą być liczbami ujemnymi zaczynającymi się od -1 i nie mogą się powtarzać w ramach tej samej prośby o zmianę. Aby efektywnie korzystać z tymczasowych identyfikatorów, 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.

Tymczasowe identyfikatory nie są zapamiętywane w przypadku różnych zadań ani żądań mutacji. Aby odwołać się do zasobu utworzonego w poprzednim żądaniu zmiany, użyj jego rzeczywistej nazwy.