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 accountse una risorsaname. | 
| Percorso elenco | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | L'API Merchant utilizza parentper 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 regionnel 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 stringanameoparent) | Trova l'ID account incorporato nella stringa del nome della risorsa, ad esempio accounts/{account}. | 
| Regione | region_id(stringa) | {region}(stringa, parte della stringaname) | 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 namecome 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 parentdall'URL, mentre il corpo della richiesta
   include l'oggettoregioneregion_id. | 
| Aggiorna regione | UpdateRegion | UpdateRegion | La richiesta utilizza region(che deve includereregion.name)
    eupdate_mask. | 
| Elimina regione | DeleteRegion | DeleteRegion | La richiesta utilizza name. | 
| List Regions | ListRegions | ListRegions | La richiesta utilizza parent. Il comportamento dipage_sizeepage_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 dinameoparent) | Integrato nelle stringhe di risorse name. Ciò influisce suRegion(risposta) e sui messaggi protobuf utilizzati per effettuare richieste API, comeCreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequesteListRegionsRequest. | 
| ID regione | region_id | region(parte diname),region_id | Integrato in nameper la maggior parte, camporegion_idseparato inCreateRegionRequest. Ciò influisce suRegion(risposta) e sui messaggi protobuf utilizzati per effettuare richieste API, ad esempioCreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequesteListRegionsRequest. | 
| Nome regione (output) | region_id | name | Il campo dell'identificatore principale nella risposta è ora la risorsa completa name. Questa operazione interessaRegion. | 
| Nome visualizzato | display_name | display_name | Il tipo cambia da StringValueaoptional string.
    Questa operazione interessaRegion. | 
| Flag di idoneità | ...eligible | ...eligible | Il tipo cambia da BoolValueaoptional bool.
    Questa operazione interessaRegion. | 
| Aggiorna maschera | update_mask | update_mask | Regionpercorsi dei campi. Questa operazione interessaUpdateRegionRequest. |