Przenoszenie zarządzania promocjami

Za pomocą Merchant Promotions API możesz tworzyć promocje w Google i nimi zarządzać. Zasób accounts.promotions umożliwia prezentowanie ofert specjalnych na produkty, które sprzedajesz w Google. Więcej informacji znajdziesz w artykule Omówienie Merchant Promotions API.

Omówienie zmian w Merchant API w porównaniu z Content API for Shopping

Istotną różnicą jest to, że Content API for Shopping automatycznie tworzy źródło danych po pierwszym wstawieniu promocji, co nie ma miejsca w przypadku Merchant API. Aby wstawić promocję za pomocą Merchant API, musisz najpierw utworzyć źródło danych o promocjach.

Informacje o polach w obiekcie promotionDataSource w accounts.dataSources zasobie znajdziesz w artykule PromotionDataSource.

Istniejące źródła danych

Jeśli masz już źródła danych, ale nie znasz ich accounts.dataSources.name, użyj dataSources.list aby je pobrać.

Możesz też zidentyfikować źródło danych dla każdej promocji, używając metody accounts.promotions.get i sprawdzając pole dataSource w odpowiedzi na zapytanie o dowolną istniejącą promocję na koncie.

Aby móc się do nich bezpośrednio odwoływać w przyszłych wywołaniach interfejsu API, zdecydowanie zalecamy zapisanie accounts.dataSources.name w lokalnej bazie danych dla każdej promocji.

Żądania

Aby wysyłać żądania, użyj tego adresu URL.

POST https://merchantapi.googleapis.com/promotions/v1/{ACCOUNT_NAME}/promotions

Migracja z Content API for Shopping

Poniżej porównujemy Content API for Shopping z Merchant Promotions API w przypadku żądań związanych z promocjami.

URL

W Content API for Shopping:

https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/promotions

w Merchant API staje się:

https://merchantapi.googleapis.com/promotions/v1/{parent=accounts/*}/promotions

Identyfikatory

W Content API for Shopping:

{MERCHANT_ID}/promotions/{PROMOTION_ID}

w Merchant API staje się:

{NAME}

Metody

Merchant API obsługuje te metody dotyczące promocji:

  • Wstawianie promocji
  • Pobieranie promocji
  • Wyświetlanie listy promocji

Poniżej znajdziesz porównanie dostępności metod dotyczących promocji w Content API for Shopping i Merchant API:

Funkcja Content API for Shopping Merchant API
URL https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/promotions https://merchantapi.googleapis.com/promotions/v1/{parent=accounts/*}/promotions
Identyfikatory {MERCHANT_ID}/promotions/{PROMOTION_ID} {NAME}
Metody
  • insert
  • get
  • list
  • customBatch
  • delete
  • insert
  • get
  • list

Zmiany pól

W tabeli pokazujemy, jakie zmiany wprowadziliśmy w Merchant Promotions API w przypadku promocji.

Przykład znajdziesz w artykule accounts.promotions.

Content API for Shopping Merchant API Opis
(nieobsługiwane) custom_attributes Lista atrybutów niestandardowych (podanych przez użytkownika). Możesz też
użyć tego pola, aby przesłać dowolny atrybut
specyfikacji pliku danych w jego ogólnej postaci.
Na przykład:
{
  "name": "size type", "value": "regular"
}
Jest to przydatne w przypadku przesyłania atrybutów, które nie są
jawnie udostępniane przez interfejs API.
Nieobsługiwane data_source Utworzenie promocji wymaga istniejącego źródła danych.
Nieobsługiwane attributes Atrybuty specyficzne dla promocji, np.
long_tile, promotion_effective_timeperiod,
i inne, są częścią komunikatu atrybutu.
item_id item_id_inclusion Zmieniono nazwę listy identyfikatorów produktów, których dotyczy promocja
.
store_id store_id_inclusion Zmieniono nazwę listy identyfikatorów sklepów, których dotyczy promocja
.
product_type product_type_inclusion Zmieniono nazwę listy typów produktów, których dotyczy promocja
.
item_group_id item_group_id_inclusion Zmieniono nazwę listy identyfikatorów grup produktów, których dotyczy promocja
.
brand brand_inclusion Zmieniono nazwę listy marek, których dotyczy promocja
.
store_code store_codes_inclusion Zmieniono nazwę listy kodów sklepów, których dotyczy promocja
.
price:
  {
    object (Price)
  }
price:
  {
    object (Price)
  }
Zmieniła się definicja ceny.

W Content API for Shopping cena
była liczbą dziesiętną w postaci ciągu znaków.

Kwota ceny jest teraz zapisywana w mikrojednostkach,
gdzie 1 milion mikrojednostek odpowiada standardowej jednostce
waluty.

Nazwa pola amount zmieniła się z value na
amountMicros.

Nazwa pola currency zmieniła się na
currencyCode. Format pozostaje taki sam, czyli
ISO 4217. (Wikipedia)

order_limit (nieobsługiwane) Atrybut order_limit nie jest obsługiwany.
shippingServiceNames[] (nieobsługiwane) shippingServiceNames[] nie jest obsługiwany.
money_budget (nieobsługiwane) money_budget nie jest obsługiwany.
promotion_destination_ids promotion_destinations Zmieniono nazwę promotionDestinationIds.
Stan promocji
{
  "destinationStatuses": [
    {
      "destination": string,
      "status": enum (State)
    }
  ],
  "promotionIssue": [
    {
    "code": string,
    "detail": string
    }
  ],
  "creationDate": string,
  "lastUpdateDate": string
}
Zmienił się stan promocji.
Bardziej szczegółowe informacje znajdziesz w sekcji Problemy.
promotionStatus = {
  destinationStatuses = [
     {
     reportingContext = Enum
     status = Enum
     },
  ],
  itemLevelIssues = [
    {
    code = String
    severity = Enum
    resolution = String
    reportingContext = Enum
    description = String
    detail = String
    documentation = String applicableCountries = [
      String,
    ]
    }
  ]
}