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
W Twojej bazie danych mogą być już przechowywane 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.