Eseguire la migrazione della gestione delle regioni

Questa guida spiega come eseguire la migrazione dell'integrazione da RegionsService in API Content for Shopping a RegionsService all'interno della sotto-API Accounts.

Il servizio Regions consente di definire aree geografiche personalizzate per casi d'uso come i prezzi regionali e le sostituzioni delle spedizioni. Puoi utilizzare le regioni con servizi come RegionalInventory e ShippingSettings.

Differenze principali

  • Struttura dell'API: il servizio Regions fa ora parte della sotto-API Accounts in Merchant API (ad esempio, merchantapi.googleapis.com/accounts/v1/...).
  • Nomi delle risorse: Merchant API utilizza i nomi delle risorse (accounts/{account}/regions/{region}) anziché i parametri merchant_id e region_id separati nel percorso dell'URL per le operazioni Get, Update ed Delete.
  • Conformità AIP: i metodi Merchant API seguono i pattern standard di API Improvement Proposal (ad esempio, l'utilizzo di parent per List/Create, name per Get/Delete e l'utilizzo standard di update_mask).
  • Tipi di wrapper: i campi che in precedenza utilizzavano google.protobuf.StringValue o google.protobuf.BoolValue in API Content ora utilizzano i campi optional standard in Merchant API.
  • Nuove funzionalità:
    • Merchant API introduce un tipo RadiusArea all'interno della risorsa Region per definire le regioni in base a un raggio attorno a un punto (inizialmente con visibilità TRUST_TESTER).
    • Sono disponibili i metodi batch: BatchCreateRegions, BatchUpdateRegions, BatchDeleteRegions.
  • Gestione degli errori: i codici e i messaggi di errore forniscono feedback più specifici.

Richieste

Ecco come cambiano i pattern di richiesta:

Elemento Content API for Shopping Merchant API Descrizione
Endpoint https://shoppingcontent.googleapis.com https://merchantapi.googleapis.com Il dominio di base cambia.
Percorso Get /content/v2.1/{merchant_id}/regions/{region_id} /accounts/v1/{name=accounts/*/regions/*} Merchant API utilizza la sotto-API accounts e una name della risorsa.
Percorso List /content/v2.1/{merchant_id}/regions /accounts/v1/{parent=accounts/*}/regions Merchant API utilizza parent per specificare l'account.
Percorso Create /content/v2.1/{merchant_id}/regions /accounts/v1/{parent=accounts/*}/regions Merchant API utilizza parent. region_id è un campo nel corpo della richiesta.
Percorso Update /content/v2.1/{merchant_id}/regions/{region_id} /accounts/v1/{name=accounts/*/regions/*} Il nome della risorsa in Merchant API fa parte dell'oggetto region nel corpo.
Percorso Delete /content/v2.1/{merchant_id}/regions/{region_id} /accounts/v1/{name=accounts/*/regions/*} Utilizza la name della risorsa.

Identificatori

Modifica l'utilizzo degli identificatori come segue:

Elemento Content API for Shopping Merchant API 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 utilizzato rigorosamente per le richieste. name: accounts/{account}/regions/{region} Identificatore standard per le richieste Get/Update/Delete.
Nome genitore Non utilizzato rigorosamente per le richieste. parent: accounts/{account} Identificatore standard per le richieste List/Create.

Risorse

La struttura della risorsa Region presenta modifiche minori:

Elemento Content API for Shopping Merchant API Descrizione
Identificatore risorsa region_id (stringa), merchant_id (int64) name (stringa): accounts/{account}/regions/{region} Merchant API 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/D) RadiusArea Questo nuovo tipo definisce le regioni in base al raggio. Includes 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 come segue:

Elemento Content API for Shopping Merchant API Descrizione
Ottieni regione GetRegion GetRegion La richiesta utilizza name.
Crea regione CreateRegion CreateRegion La richiesta accetta il parent dall'URL, mentre il corpo della richiesta include l'oggetto region e il 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.
Elenca regioni ListRegions ListRegions La richiesta utilizza parent. page_size e page_token il comportamento è coerente.
Crea batch N/D BatchCreateRegions Questo è un nuovo metodo.
Aggiorna batch N/D BatchUpdateRegions Questo è un nuovo metodo.
Elimina batch N/D BatchDeleteRegions Questo è un nuovo metodo.

Campi rinominati

Elemento Content API for Shopping Merchant API Descrizione
ID account merchant_id account (parte di name o parent) Integrato nelle stringhe name delle risorse. 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, come CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest e ListRegionsRequest.
Nome regione (output) region_id name Il campo identificatore principale nella risposta è ora la name completa della risorsa. Ciò influisce su Region.
Nome visualizzato display_name display_name Il tipo cambia da StringValue a optional string. Ciò influisce su Region.
Flag di idoneità ...eligible ...eligible Il tipo cambia da BoolValue a optional bool. Ciò influisce su Region.
Maschera di aggiornamento update_mask update_mask Percorsi dei campi Region. Ciò influisce su UpdateRegionRequest.

Scopri di più