migración, compatibilidad
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 de
Accounts
en 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_id
yregion_id
separados 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
parent
para List/Create,name
para Get/Delete y el uso estándar deupdate_mask
). - Tipos de wrapper: Los campos que antes usaban
google.protobuf.StringValue
ogoogle.protobuf.BoolValue
en Content API ahora usan camposoptional
estándar en Merchant API. - Nuevas funciones:
- La API de Merchant introduce un tipo
RadiusArea
dentro del recursoRegion
para definir regiones basadas en un radio alrededor de un punto (inicialmente con visibilidadTRUST_TESTER
). - Están disponibles los métodos por lotes:
BatchCreateRegions
,BatchUpdateRegions
yBatchDeleteRegions
.
- La API de Merchant introduce 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 | 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 accounts y un recurso name . |
Ruta de acceso a la lista | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
La API de Merchant usa parent para especificar la cuenta. |
Crear ruta | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
La API de Merchant usa parent . region_id es 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 region en 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 | Descripción |
---|---|---|---|
Cuenta | merchant_id (entero) |
account (número entero, parte de la cadena name o parent ) |
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 cadena name ) |
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 | 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 name como 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 , radius y radius_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 | Descripción |
---|---|---|---|
Get Region | GetRegion |
GetRegion |
La solicitud usa name . |
Create Region | CreateRegion |
CreateRegion |
La solicitud toma el parent de la URL, mientras que el cuerpo de la solicitud incluye el objeto region y el region_id .
|
Actualizar región | UpdateRegion |
UpdateRegion |
La solicitud usa region (que debe incluir region.name ) y update_mask .
|
Borrar región | DeleteRegion
|
DeleteRegion
|
La solicitud usa name .
|
List Regions | ListRegions |
ListRegions |
La solicitud usa parent . El comportamiento de page_size y page_token es 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. |
Borrado por lotes | N/A | BatchDeleteRegions |
Este es un método nuevo. |
Campos con el nombre cambiado
Elemento | Content API for Shopping | API de Merchant | Descripción |
---|---|---|---|
ID de la cuenta | merchant_id |
account (parte de name o parent ) |
Se integra en las cadenas de recursos name . Esto afecta los mensajes Region (respuesta) y protobuf que se usan para realizar solicitudes a la API, como CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest y ListRegionsRequest .
|
ID de región | region_id |
region (parte de name ), region_id |
Integrado en name para la mayoría, campo region_id separado en CreateRegionRequest . Esto afecta los mensajes Region (respuesta) y los mensajes de Protobuf que se usan para realizar solicitudes a la API, como CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest y ListRegionsRequest .
|
Nombre de la región (salida) | region_id
|
name
|
El campo de identificador principal en la respuesta ahora es el name de recurso completo. Esto afecta a Region .
|
Nombre visible | display_name |
display_name |
El tipo cambia de StringValue a optional string .
Esto afecta a Region .
|
Marcas de elegibilidad | ...eligible |
...eligible |
El tipo cambia de BoolValue a optional bool .
Esto afecta a Region .
|
Máscara de actualización | update_mask |
update_mask |
Rutas de campos Region . Esto afecta a UpdateRegionRequest . |