Zmienianie i sprawdzanie obiektów

Jak wspomnieliśmy w przewodniku po strukturze interfejsu API, każdy zasób najwyższego poziomu w interfejsie Google Ads API ma odpowiadającą jej usługę o konkretnym typie zasobu, która obsługuje:

  • Modyfikowanie instancji zasobu
  • Pobieram pojedynczą instancję zasobu do inspekcji

W tym przewodniku wykorzystamy CampaignService do zademonstrowania modyfikowania i sprawdzania obiektów Campaign, ale te same pojęcia są stosowane do wszystkich innych usług o konkretnym typie zasobów.

Zmieniam obiekty

Każda usługa o konkretnym typie zasobu ma metodę mutate, która akceptuje żądanie zmiany. Prośba obejmuje:

  • customerId
  • Zbiór operacji
  • Ustawienie typu treści odpowiedzi, które określa, czy po mutacji ma być zwracany zmienny zasób, czy tylko jego nazwa.

Na przykład metoda MutateCampaigns obiektu CampaignService akceptuje obiekt MutateCampaignsRequest, który składa się z tych elementów:

  • customerId
  • Kolekcja obiektów (CampaignOperation)
  • Pole response_content_type wskazujące preferowany typ odpowiedzi.

Operacje

Obiekt operacji, taki jak CampaignOperation, pozwala określić czynność, którą chcesz wykonać na pojedynczym zasobie, ustawiając jego pole operation. To pole jest jednym z pól zawierających te atrybuty, których typ jest typem zasobu:

create
Tworzy nowe wystąpienie zasobu.
update
Aktualizuje zasób, aby pasował do atrybutów zasobu update. Gdy ustawisz to pole, musisz też ustawić update_mask operacji, która informuje interfejs Google Ads API, które atrybuty należy zmodyfikować podczas aktualizacji. Każda biblioteka klienta zawiera metodę narzędziową lub pomocniczą, która generuje dla Ciebie update_mask, zgodnie z opisem w naszych bibliotekach klienta.
remove
Usuwa zasób.

Pole operation jest polem oneof, więc nie możesz zmienić wielu obiektów za pomocą jednej operacji. Jeśli np. chcesz utworzyć jedną kampanię i usunąć kolejną, dodaj do żądania 2 wystąpienia typu CampaignOperation: jedno z zestawem create i drugie z zestawem remove.

Operacje grupowania

Mimo że w ramach pojedynczej operacji można utworzyć, zaktualizować lub usunąć tylko 1 zasób, jedno żądanie zmiany może zawierać wiele operacji. Zamiast wysyłać wiele żądań mutacji, z których każde zawiera 1 operację, połącz swoje operacje w pojedyncze żądanie zmiany.

Jeśli na przykład chcesz utworzyć 10 kampanii, musisz wysłać pojedynczy plik MutateCampaignsRequest zawierający 10 obiektów CampaignOperation.

Zmień odpowiedzi

Zwracana w odpowiedzi odpowiedź zależy od tego, co zostało wysłane w response_content_type żądania zmiany. Jeśli na przykład określono MUTABLE_RESOURCE, odpowiedź będzie zawierać tylko zmienne pola w kampanii. Dzięki temu możesz modyfikować obiekt zasobu bez konieczności jego rekonstruowania.

Błędy mutacji

Operacje w danym żądaniu zmiany zostaną zastosowane na Twoim koncie Google Ads tylko wtedy, gdy powiodą się wszystkie operacje w tym żądaniu. Zapoznaj się z przewodnikiem na temat typowych błędów, aby poznać listę najczęstszych błędów i sposobów ich rozwiązywania.

Badanie obiektów za pomocą polecenia get (wycofane)

Oprócz zmian obiektów każda usługa związana z konkretnym typem zasobów ma też metodę get służącą do pobierania wszystkich atrybutów pojedynczego zasobu. Ta metoda akceptuje żądanie get, którego jedynym atrybutem jest resource_name.

Metody get to wygoda oferowana przez interfejs Google Ads API, która ułatwia pobieranie wszystkich atrybutów danego obiektu. Jest to doskonałe narzędzie do nauki interfejsu API lub sprawdzania poszczególnych obiektów na potrzeby debugowania bądź edukacyjnego, ale nie należy stosować w niej metod pobierania obiektów do przetwarzania lub raportowania. Zamiast niego używaj metody GoogleAdsService, ponieważ umożliwia pobieranie tylko konkretnych atrybutów obiektów, umożliwia pobieranie danych o wydajności i umożliwia przesyłanie strumieniowe ich do dużych zbiorów wyników. Jeśli Twoja aplikacja przesyła dużo żądań, możesz natrafić na limity liczby żądań.