Migracja zarządzania regionami
Z tego przewodnika dowiesz się, jak przenieść integrację z interfejsu RegionsService Content API for Shopping do interfejsu RegionsService w ramach podrzędnego interfejsu API Konta.
Usługa Regiony umożliwia definiowanie niestandardowych obszarów geograficznych na potrzeby takich przypadków użycia jak regionalne ceny i zastąpienia dostawy. Możesz używać regionów z usługami, takimi jak RegionalInventory i ShippingSettings.
Najważniejsze różnice
- Struktura interfejsu API: usługa Regions jest teraz częścią interfejsu API
Accountsw interfejsie API sprzedawcy (np.merchantapi.googleapis.com/accounts/v1/...). - Nazwy zasobów: interfejs Merchant API używa nazw zasobów
accounts/{account}/regions/{region}zamiast oddzielnych parametrówmerchant_idiregion_idw ścieżce adresu URL w przypadku operacji Get, Update i Delete. - Zgodność z AIP: metody Merchant API są zgodne ze standardowymi wzorcami propozycji ulepszeń interfejsu API (np. używają
parentw przypadku List/Create,namew przypadku Get/Delete i standardowego użyciaupdate_mask). - Typy opakowań: pola, które wcześniej używały
google.protobuf.StringValuelubgoogle.protobuf.BoolValuew Content API, teraz używają standardowych póloptionalw Merchant API. - Nowe funkcje:
- Merchant API wprowadza typ
RadiusAreaw zasobieRegion, aby definiować regiony na podstawie promienia wokół punktu (początkowo z widocznościąTRUST_TESTER). - Dostępne są metody wsadowe –
BatchCreateRegions,BatchUpdateRegions,BatchDeleteRegions.
- Merchant API wprowadza typ
- Obsługa błędów: kody błędów i komunikaty o błędach zawierają bardziej szczegółowe informacje.
Żądania
Oto jak zmieniają się wzorce żądań:
| Produkt | Content API for Shopping | Interfejs API sprzedawcy | Opis |
|---|---|---|---|
| Punkt końcowy | https://shoppingcontent.googleapis.com |
https://merchantapi.googleapis.com |
Zmienia się domena podstawowa. |
| Pobierz ścieżkę | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
Interfejs Merchant API korzysta z interfejsu accounts i zasobu name. |
| Ścieżka listy | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
Interfejs Merchant API używa znaku parent do określania konta. |
| Utwórz ścieżkę | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
Interfejs API sprzedawcy korzysta z parent. region_id to pole w treści żądania. |
| Ścieżka aktualizacji | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
Nazwa zasobu w interfejsie Merchant API jest częścią obiektu region w treści. |
| Usuń ścieżkę | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
Używa zasobu name. |
Identyfikatory
Zmień sposób używania identyfikatorów w ten sposób:
| Produkt | Content API for Shopping | Interfejs API sprzedawcy | Opis |
|---|---|---|---|
| Konto | merchant_id (liczba całkowita) |
account (liczba całkowita, część ciągu znaków name lub parent) |
Znajdź identyfikator konta w ciągu nazwy zasobu, np. accounts/{account}. |
| Region | region_id (ciąg znaków) |
{region} (ciąg znaków, część name ciągu znaków) |
Znajdź identyfikator regionu w ciągu nazwy zasobu, np. accounts/{account}/regions/{region}. |
| Nazwa zasobu | Nie jest używany w przypadku żądań. | name: accounts/{account}/regions/{region} |
Standardowy identyfikator żądań Get/Update/Delete. |
| Imię i nazwisko rodzica | Nie jest używany w przypadku żądań. | parent: accounts/{account} |
Standardowy identyfikator żądań List/Create. |
Zasoby
Struktura zasobu Region została nieznacznie zmieniona:
| Produkt | Content API for Shopping | Interfejs API sprzedawcy | Opis |
|---|---|---|---|
| Identyfikator zasobu | region_id (ciąg znaków), merchant_id (int64) |
name (ciąg): accounts/{account}/regions/{region} |
Interfejs Merchant API używa pojedynczego pola name jako identyfikatora zasobu. |
display_name |
google.protobuf.StringValue |
optional string |
Typ opakowania został usunięty. |
radius_area |
Niedostępne | RadiusArea |
Ten nowy typ definiuje regiony według promienia. Obejmuje:region_code, lat_lng, radius,radius_units. Domyślnie widoczność jest ograniczona.
|
regional_inventory_eligible |
google.protobuf.BoolValue (tylko wyjście) |
optional bool (tylko wyjście) |
Typ opakowania został usunięty. |
shipping_eligible |
google.protobuf.BoolValue (tylko wyjście) |
optional bool (tylko wyjście) |
Typ opakowania został usunięty. |
Metody
Zmień sposób używania metod w ten sposób:
| Produkt | Content API for Shopping | Interfejs API sprzedawcy | Opis |
|---|---|---|---|
| Uzyskaj region | GetRegion |
GetRegion |
Żądanie korzysta z metody name. |
| Utwórz region | CreateRegion |
CreateRegion |
Żądanie pobiera parent z adresu URL, a treść żądania zawiera obiekt region i region_id.
|
| Zaktualizuj region | UpdateRegion |
UpdateRegion |
Żądanie używa region (który musi zawierać region.name) i update_mask.
|
| Usuń region | DeleteRegion
|
DeleteRegion
|
Żądanie korzysta z metody name.
|
| Wyświetlanie listy regionów | ListRegions |
ListRegions |
Żądanie korzysta z metody parent. Działanie funkcji page_size i page_token jest spójne.
|
| Utwórz zbiorczo | Nie dotyczy | BatchCreateRegions |
To nowa metoda. |
| Aktualizacja zbiorcza | Nie dotyczy | BatchUpdateRegions |
To nowa metoda. |
| Usuwanie zbiorcze | Nie dotyczy | BatchDeleteRegions |
To nowa metoda. |
Pola, których nazwy zostały zmienione
| Produkt | Content API for Shopping | Interfejs API sprzedawcy | Opis |
|---|---|---|---|
| Identyfikator konta | merchant_id |
account (część name lub parent) |
Zintegrowane z ciągami znaków zasobu name. Ma to wpływ na Region (odpowiedź) i wiadomości protobuf używane do wysyłania żądań do interfejsu API, takie jak CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest i ListRegionsRequest.
|
| Identyfikator regionu | region_id |
region (część name), region_id |
Większość użytkowników ma ją zintegrowaną z name, a w CreateRegionRequest jest dostępne oddzielne pole region_id. Ma to wpływ na Region(odpowiedź) i wiadomości protobuf używane do wysyłania żądań do interfejsu API, takie jak CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest i ListRegionsRequest.
|
| Nazwa regionu (dane wyjściowe) | region_id
|
name
|
Głównym polem identyfikatora w odpowiedzi jest teraz pełny zasób name. Dotyczy to Region.
|
| Wyświetlana nazwa | display_name |
display_name |
Typ zmienia się z StringValue na optional string.
Dotyczy to Region.
|
| Flagi kwalifikacji | ...eligible |
...eligible |
Typ zmienia się z BoolValue na optional bool.
Dotyczy to Region.
|
| Aktualizuj maskę | update_mask |
update_mask |
Region polne ścieżki. Dotyczy to UpdateRegionRequest. |