Migra la administración de regiones
En esta guía, se explica cómo migrar tu integración del objeto RegionsService en Content API for Shopping al objeto RegionsService dentro de la sub-API de Accounts.
El servicio de Regions te permite definir áreas geográficas personalizadas para casos de uso como anulaciones de precios y envíos regionales. Puedes usar regiones con servicios como RegionalInventory y ShippingSettings.
Diferencias clave
- Estructura de la API: El servicio de Regions ahora forma parte de la sub-API Accountsen la API de Merchant (por ejemplo,merchantapi.googleapis.com/accounts/v1/...).
- Nombres de recursos: La API de Merchant usa nombres de recursos (accounts/{account}/regions/{region}) en lugar de parámetrosmerchant_idyregion_idseparados en la ruta de URL para las operaciones Get, Update y Delete.
- Cumplimiento con la AIP: Los métodos de la API de Merchant siguen patrones estándar de Propuesta de mejora de la API (como el uso de parentpara List/Create,namepara Get/Delete y el uso estándar deupdate_mask).
- Tipos de wrapper: Los campos que antes usaban google.protobuf.StringValueogoogle.protobuf.BoolValueen Content API ahora usan camposoptionalestándar en Merchant API.
- Nuevas funciones:
- La API de Merchant presenta un tipo RadiusAreadentro del recursoRegionpara definir regiones según un radio alrededor de un punto (inicialmente con visibilidadTRUST_TESTER).
- Están disponibles los métodos por lotes: BatchCreateRegions,BatchUpdateRegionsyBatchDeleteRegions.
 
- La API de Merchant presenta un tipo 
- Manejo de errores: Los códigos y mensajes de error proporcionan comentarios más específicos.
Solicitudes
Así cambian los patrones de solicitudes:
| Elemento | Content API for Shopping | API de Merchant Center | Descripción | 
|---|---|---|---|
| Extremo | https://shoppingcontent.googleapis.com | https://merchantapi.googleapis.com | Cambia el dominio base. | 
| Get Path | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | La API de Merchant usa la sub-API accountsy un recursoname. | 
| Ruta de acceso a la lista | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | La API de Merchant usa parentpara especificar la cuenta. | 
| Crear ruta | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | La API de Merchant Center usa parent.region_ides un campo en el cuerpo de la solicitud. | 
| Update Path | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | El nombre del recurso en la API de Merchant forma parte del objeto regionen el cuerpo. | 
| Borrar ruta | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | Usa el recurso name. | 
Identificadores
Cambia el uso de los identificadores de la siguiente manera:
| Elemento | Content API for Shopping | API de Merchant Center | Descripción | 
|---|---|---|---|
| Cuenta | merchant_id(entero) | account(número entero, parte de la cadenanameoparent) | Busca el ID de la cuenta incorporado en la cadena del nombre del recurso, por ejemplo, accounts/{account}. | 
| Región | region_id(string) | {region}(cadena, parte de la cadenaname) | Busca el ID de la región incorporado en la cadena del nombre del recurso, por ejemplo, accounts/{account}/regions/{region}. | 
| Nombre del recurso | No se usa estrictamente para las solicitudes. | name:accounts/{account}/regions/{region} | Es el identificador estándar para las solicitudes de obtención, actualización y eliminación. | 
| Nombre de la madre o el padre | No se usa estrictamente para las solicitudes. | parent:accounts/{account} | Es el identificador estándar para las solicitudes de List/Create. | 
Recursos
La estructura del recurso Region tiene cambios menores:
| Elemento | Content API for Shopping | API de Merchant Center | Descripción | 
|---|---|---|---|
| Identificador de recursos | region_id(cadena),merchant_id(int64) | name(cadena):accounts/{account}/regions/{region} | La API de Merchant usa un solo campo namecomo identificador de recurso. | 
| display_name | google.protobuf.StringValue | optional string | Se quitó el tipo de wrapper. | 
| radius_area | No disponible (N/A) | RadiusArea | Este nuevo tipo define regiones por radio. Incluye region_code,lat_lng,radiusyradius_units. De forma predeterminada, la visibilidad está restringida. | 
| regional_inventory_eligible | google.protobuf.BoolValue(solo salida) | optional bool(solo salida) | Se quitó el tipo de wrapper. | 
| shipping_eligible | google.protobuf.BoolValue(solo salida) | optional bool(solo salida) | Se quitó el tipo de wrapper. | 
Métodos
Cambia el uso de los métodos de la siguiente manera:
| Elemento | Content API for Shopping | API de Merchant Center | Descripción | 
|---|---|---|---|
| Get Region | GetRegion | GetRegion | La solicitud usa name. | 
| Create Region | CreateRegion | CreateRegion | La solicitud toma el parentde la URL, mientras que el cuerpo de la solicitud incluye el objetoregiony elregion_id. | 
| Actualizar región | UpdateRegion | UpdateRegion | La solicitud usa region(que debe incluirregion.name) yupdate_mask. | 
| Borrar región | DeleteRegion | DeleteRegion | La solicitud usa name. | 
| List Regions | ListRegions | ListRegions | La solicitud usa parent. El comportamiento depage_sizeypage_tokenes coherente. | 
| Creación por lotes | N/A | BatchCreateRegions | Este es un método nuevo. | 
| Actualización por lotes | N/A | BatchUpdateRegions | Este es un método nuevo. | 
| Borrar por lotes | N/A | BatchDeleteRegions | Este es un método nuevo. | 
Campos con el nombre cambiado
| Elemento | Content API for Shopping | API de Merchant Center | Descripción | 
|---|---|---|---|
| ID de la cuenta | merchant_id | account(parte denameoparent) | Se integra en las cadenas de recursos name. Esto afecta los mensajesRegion(respuesta) y protobuf que se usan para realizar solicitudes a la API, comoCreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequestyListRegionsRequest. | 
| ID de región | region_id | region(parte dename),region_id | Integrado en namepara la mayoría, camporegion_idseparado enCreateRegionRequest. Esto afecta los mensajesRegion(respuesta) y los mensajes de Protobuf que se usan para realizar solicitudes a la API, comoCreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequestyListRegionsRequest. | 
| Nombre de la región (salida) | region_id | name | El campo de identificador principal en la respuesta ahora es el namede recurso completo. Esto afecta aRegion. | 
| Nombre visible | display_name | display_name | El tipo cambia de StringValueaoptional string.
    Esto afecta aRegion. | 
| Marcas de elegibilidad | ...eligible | ...eligible | El tipo cambia de BoolValueaoptional bool.
    Esto afecta aRegion. | 
| Máscara de actualización | update_mask | update_mask | Rutas de campo RegionEsto afecta aUpdateRegionRequest. |