Zmień obiekty

Jak wspomnieliśmy w przewodniku po strukturze interfejsu API, każdy zasób najwyższego poziomu w interfejsie Google Ads API ma odpowiednią usługę specyficzną dla typu zasobu , która umożliwia modyfikowanie instancji zasobu.

W tym przewodniku użyjemy CampaignService, aby pokazać, jak modyfikować obiekty Campaign, ale te same zasady obowiązują w przypadku wszystkich innych usług specyficznych dla typu zasobu.

Zmień obiekty

Każda usługa specyficzna dla typu zasobu będzie miała metodę mutate, która akceptuje żądanie mutacji. To żądanie składa się z tych elementów:

  • customerId
  • kolekcja operacji
  • ustawienie typu treści odpowiedzi, które określa, czy po modyfikacji ma zostać zwrócony zasób podlegający zmianom, czy tylko nazwa zasobu.

Na przykład metoda MutateCampaigns usługi CampaignService akceptuje 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, umożliwia określenie działania, które chcesz wykonać na pojedynczym zasobie, przez ustawienie jego pola operation. To pole jest polem oneof składającym się z tych atrybutów, których typem jest typ zasobu:

create
Tworzy nową instancję zasobu.
update

Aktualizuje zasób, aby pasował do atrybutów update

zasobu. Gdy to pole jest ustawione, musisz też ustawić update_mask operacji, która informuje interfejs Google Ads API, które atrybuty mają zostać zmodyfikowane podczas operacji aktualizacji. Każda biblioteka klienta ma metodę narzędziową lub pomocniczą, która wygeneruje dla Ciebie update_mask, jak pokazano w naszych bibliotekach klienta.

remove

Usuwa zasób.

Ponieważ pole operation jest polem oneof, nie możesz użyć jednej operacji do zmodyfikowania wielu obiektów. Jeśli na przykład chcesz utworzyć jedną kampanię i usunąć inną, dodaj do żądania 2 instancje CampaignOperation: jedną z ustawionym polem create, a drugą z ustawionym polem remove.

Operacje wsadowe

Chociaż pojedyncza operacja może tylko utworzyć, zaktualizować lub usunąć pojedynczy zasób, pojedyncze żądanie mutacji może zawierać wiele operacji. Zamiast wysyłać wiele żądań mutacji, z których każde zawiera pojedynczą operację, połącz operacje w jedno żądanie mutacji.

Jeśli na przykład chcesz utworzyć 10 kampanii, wyślij jedno żądanie MutateCampaignsRequest, które zawiera 10 obiektów CampaignOperation.

Odpowiedzi na mutacje

To, co jest zwracane w odpowiedzi, zależy od tego, co zostało wysłane w polu response_content_type żądania mutacji. Jeśli na przykład określono MUTABLE_RESOURCE, to odpowiedź będzie zawierać tylko pola podlegające zmianom w kampanii. Następnie możesz wprowadzać kolejne mutacje w tym obiekcie zasobu bez konieczności jego ponownego tworzenia.

Błędy mutacji

Operacje w danym żądaniu mutacji zostaną zastosowane do Twojego konta Google Ads tylko wtedy, gdy każda operacja w żądaniu zakończy się powodzeniem. Listę typowych błędów i sposoby ich rozwiązywania znajdziesz w przewodniku po typowych błędach.

Śledzenie zmian

Aby śledzić zmiany wprowadzane w obiektach na koncie Google Ads lub pobierać bieżący stan obiektów, możesz używać zasobów change_status i change_event.

  • change_status zawiera podsumowanie, które zasoby uległy zmianie w danym okresie.
  • change_event zawiera szczegółową historię zmian, w tym stare i nowe wartości zmienionych pól.

Aby wysyłać zapytania do tych zasobów, użyj metody GoogleAdsService.SearchStream lub GoogleAdsService.Search. Więcej informacji o przesyłaniu strumieniowym raportów za pomocą GoogleAdsService