Esegui la migrazione della gestione delle regioni
Questa guida spiega come eseguire la migrazione dell'integrazione da RegionsService nell'API Content for Shopping a RegionsService nella sub-API Accounts.
Il servizio Regioni consente di definire aree geografiche personalizzate per casi d'uso come
prezzi e sostituzioni di spedizione a livello regionale. Puoi utilizzare le regioni con servizi
come RegionalInventory e ShippingSettings.
Differenze principali
- Struttura dell'API:il servizio Regioni ora fa parte dell'API secondaria
Accountsnell'API Merchant (ad esempio,merchantapi.googleapis.com/accounts/v1/...). - Nomi delle risorse:l'API Merchant utilizza i nomi delle risorse
(
accounts/{account}/regions/{region}) anziché i parametrimerchant_ideregion_idseparati nel percorso URL per le operazioni Get, Update e Delete. - Conformità AIP:i metodi dell'API Merchant seguono i pattern standard della proposta di miglioramento
dell'API (ad esempio, l'utilizzo di
parentper List/Create,nameper Get/Delete e l'utilizzo standard diupdate_mask). - Tipi di wrapper:i campi che in precedenza utilizzavano
google.protobuf.StringValueogoogle.protobuf.BoolValuenell'API Content ora utilizzano i campioptionalstandard nell'API Merchant. - Nuove funzionalità:
- L'API Merchant introduce un tipo
RadiusAreaall'interno della risorsaRegionper definire le regioni in base a un raggio intorno a un punto (inizialmente con visibilitàTRUST_TESTER). - Sono disponibili i metodi batch
BatchCreateRegions,BatchUpdateRegionseBatchDeleteRegions.
- L'API Merchant introduce un tipo
- Gestione degli errori:i codici e i messaggi di errore forniscono un feedback più specifico.
Richieste
Ecco come cambiano i pattern di richiesta:
| Elemento | Content API for Shopping | API Merchant | Descrizione |
|---|---|---|---|
| Endpoint | https://shoppingcontent.googleapis.com |
https://merchantapi.googleapis.com |
Il dominio di base cambia. |
| Ottieni percorso | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
L'API Merchant utilizza la sub-API accounts e una risorsa name. |
| Percorso elenco | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
L'API Merchant utilizza parent per specificare l'account. |
| Crea percorso | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
L'API Merchant utilizza parent. region_id è un campo nel corpo della richiesta. |
| Aggiorna percorso | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
Il nome della risorsa nell'API Merchant fa parte dell'oggetto region nel corpo. |
| Elimina percorso | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
Utilizza la risorsa name. |
Identificatori
Modifica l'utilizzo degli identificatori nel seguente modo:
| Elemento | Content API for Shopping | API Merchant | Descrizione |
|---|---|---|---|
| Account | merchant_id (numero intero) |
account (numero intero, parte della stringa name o parent) |
Trova l'ID account incorporato nella stringa del nome della risorsa, ad esempio accounts/{account}. |
| Regione | region_id (stringa) |
{region} (stringa, parte della stringa name) |
Trova l'ID regione incorporato nella stringa del nome della risorsa, ad esempio accounts/{account}/regions/{region}. |
| Nome risorsa | Non viene utilizzato rigorosamente per le richieste. | name: accounts/{account}/regions/{region} |
Identificatore standard per le richieste Get/Update/Delete. |
| Nome genitore | Non viene utilizzato rigorosamente per le richieste. | parent: accounts/{account} |
Identificatore standard per le richieste List/Create. |
Risorse
La struttura delle risorse Region presenta modifiche minori:
| Elemento | Content API for Shopping | API Merchant | Descrizione |
|---|---|---|---|
| Identificatore di risorse | region_id (string), merchant_id (int64) |
name (stringa): accounts/{account}/regions/{region} |
L'API Merchant utilizza un singolo campo name come identificatore della risorsa. |
display_name |
google.protobuf.StringValue |
optional string |
Tipo di wrapper rimosso. |
radius_area |
Non disponibile (N/A) | RadiusArea |
Questo nuovo tipo definisce le regioni in base al raggio. Include
region_code, lat_lng, radius,
radius_units. Per impostazione predefinita, la visibilità è limitata.
|
regional_inventory_eligible |
google.protobuf.BoolValue (solo output) |
optional bool (solo output) |
Tipo di wrapper rimosso. |
shipping_eligible |
google.protobuf.BoolValue (solo output) |
optional bool (solo output) |
Tipo di wrapper rimosso. |
Metodi
Modifica l'utilizzo dei metodi nel seguente modo:
| Elemento | Content API for Shopping | API Merchant | Descrizione |
|---|---|---|---|
| Get Region | GetRegion |
GetRegion |
La richiesta utilizza name. |
| Crea regione | CreateRegion |
CreateRegion |
La richiesta prende parent dall'URL, mentre il corpo della richiesta
include l'oggetto region e region_id.
|
| Aggiorna regione | UpdateRegion |
UpdateRegion |
La richiesta utilizza region (che deve includere region.name)
e update_mask.
|
| Elimina regione | DeleteRegion
|
DeleteRegion
|
La richiesta utilizza name.
|
| List Regions | ListRegions |
ListRegions |
La richiesta utilizza parent. Il comportamento di page_size e page_token è coerente.
|
| Creazione batch | N/D | BatchCreateRegions |
Questo è un nuovo metodo. |
| Aggiornamento batch | N/D | BatchUpdateRegions |
Questo è un nuovo metodo. |
| Eliminazione batch | N/D | BatchDeleteRegions |
Questo è un nuovo metodo. |
Campi rinominati
| Elemento | Content API for Shopping | API Merchant | Descrizione |
|---|---|---|---|
| ID account | merchant_id |
account (parte di name o parent) |
Integrato nelle stringhe di risorse name. Ciò influisce su
Region (risposta) e sui messaggi protobuf utilizzati per effettuare richieste API, come CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest e ListRegionsRequest.
|
| ID regione | region_id |
region (parte di name), region_id |
Integrato in name per la maggior parte, campo region_id separato in CreateRegionRequest. Ciò influisce su Region
(risposta) e sui messaggi protobuf utilizzati per effettuare richieste API, ad esempio
CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest
e ListRegionsRequest.
|
| Nome regione (output) | region_id
|
name
|
Il campo dell'identificatore principale nella risposta è ora la risorsa completa name. Questa operazione interessa Region.
|
| Nome visualizzato | display_name |
display_name |
Il tipo cambia da StringValue a optional string.
Questa operazione interessa Region.
|
| Flag di idoneità | ...eligible |
...eligible |
Il tipo cambia da BoolValue a optional bool.
Questa operazione interessa Region.
|
| Aggiorna maschera | update_mask |
update_mask |
Region percorsi dei campi. Questa operazione interessa UpdateRegionRequest. |