Z tego przewodnika dowiesz się, jak przeprowadzić migrację integracji z RegionsService w Content API for Shopping do RegionsService w ramach podrzędnego interfejsu API kont.
Usługa Regions umożliwia definiowanie niestandardowych obszarów geograficznych na potrzeby takich przypadków użycia jak regionalne ceny i zastępowanie ustawień 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ą podrzędnego interfejsu API
Accountsw Merchant API (np.merchantapi.googleapis.com/accounts/v1/...). - Nazwy zasobów: 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 ulepszenia interfejsu API (np. używanie
parentw przypadku List/Create,namew przypadku Get/Delete oraz standardowe użycieupdate_mask). - Typy otoki: 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 zbiorcze:
BatchCreateRegions,BatchUpdateRegions,BatchDeleteRegions.
- Merchant API wprowadza typ
- Obsługa błędów: kody i komunikaty o błędach zawierają bardziej szczegółowe informacje.
Żądania
Oto jak zmieniają się wzorce żądań:
| Element | Content API for Shopping | Merchant API | Opis |
|---|---|---|---|
| Punkt końcowy | https://shoppingcontent.googleapis.com |
https://merchantapi.googleapis.com |
Zmienia się domena podstawowa. |
| Ścieżka Get | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
Merchant API używa podrzędnego interfejsu API accounts i zasobu name. |
| Ścieżka List | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
Merchant API używa parent do określania konta. |
| Ścieżka Create | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
Merchant API używa parent. region_id to pole w treści żądania. |
| Ścieżka Update | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
Nazwa zasobu w Merchant API jest częścią obiektu region w treści. |
| Ścieżka Delete | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
Używa nazwy zasobu name. |
Identyfikatory
Zmień sposób używania identyfikatorów w ten sposób:
| Element | Content API for Shopping | Merchant API | Opis |
|---|---|---|---|
| Konto | merchant_id (liczba całkowita) |
account (liczba całkowita, część ciągu name lub parent) |
Znajdź identyfikator konta osadzony w ciągu nazwy zasobu, np. accounts/{account}. |
| Region | region_id (ciąg znaków) |
{region} (ciąg znaków, część ciągu name) |
Znajdź identyfikator regionu osadzony w ciągu nazwy zasobu, np. accounts/{account}/regions/{region}. |
| Nazwa zasobu | Nie jest ściśle używana w przypadku żądań. | name: accounts/{account}/regions/{region} |
Standardowy identyfikator żądań Get/Update/Delete. |
| Nazwa elementu nadrzędnego | Nie jest ściśle używana w przypadku żądań. | parent: accounts/{account} |
Standardowy identyfikator żądań List/Create. |
Zasoby
Struktura zasobu Region ma drobne zmiany:
| Element | Content API for Shopping | Merchant API | Opis |
|---|---|---|---|
| Identyfikator zasobu | region_id (ciąg znaków), merchant_id (int64) |
name (ciąg znaków): accounts/{account}/regions/{region} |
Merchant API używa pojedynczego pola name jako identyfikatora zasobu. |
display_name |
google.protobuf.StringValue |
optional string |
Typ otoki został usunięty. |
radius_area |
Niedostępne | RadiusArea |
Ten nowy typ definiuje regiony według promienia. Zawiera
region_code, lat_lng, radius,
radius_units. Domyślnie widoczność jest ograniczona.
|
regional_inventory_eligible |
google.protobuf.BoolValue (tylko dane wyjściowe) |
optional bool (tylko dane wyjściowe) |
Typ otoki został usunięty. |
shipping_eligible |
google.protobuf.BoolValue (tylko dane wyjściowe) |
optional bool (tylko dane wyjściowe) |
Typ otoki został usunięty. |
Metody
Zmień sposób używania metod w ten sposób:
| Element | Content API for Shopping | Merchant API | Opis |
|---|---|---|---|
| Pobierz region | GetRegion |
GetRegion |
Żądanie używa 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 używa name.
|
| Wyświetl listę regionów | ListRegions |
ListRegions |
Żądanie używa parent. page_size i
page_token działanie jest spójne.
|
| Utwórz partię | Nie dotyczy | BatchCreateRegions |
To nowa metoda. |
| Zaktualizuj partię | Nie dotyczy | BatchUpdateRegions |
To nowa metoda. |
| Usuń partię | Nie dotyczy | BatchDeleteRegions |
To nowa metoda. |
Pola, których nazwy zostały zmienione
| Element | Content API for Shopping | Merchant API | Opis |
|---|---|---|---|
| Identyfikator konta | merchant_id |
account (część name lub parent) |
Zintegrowane z ciągami name zasobu. Ma to wpływ na
Region (odpowiedź) i komunikaty 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 |
Zintegrowane z name w większości przypadków, oddzielne region_id
pole w CreateRegionRequest. Ma to wpływ na Region
(odpowiedź) i komunikaty 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łna nazwa zasobu name. Ma to wpływ na Region.
|
| Wyświetlana nazwa | display_name |
display_name |
Typ zmienia się z StringValue na optional string.
Ma to wpływ na Region.
|
| Flagi kwalifikowalności | ...eligible |
...eligible |
Typ zmienia się z BoolValue na optional bool.
Ma to wpływ na Region.
|
| Maska aktualizacji | update_mask |
update_mask |
Ścieżki pól Region. Ma to wpływ na UpdateRegionRequest. |