Migrar o gerenciamento de regiões
Este guia explica como migrar sua integração do RegionsService na
API Content for Shopping para o RegionsService na sub-API Accounts.
Com o serviço Regions, é possível definir áreas geográficas personalizadas para casos de uso como preços regionais e modificações de frete. É possível usar regiões com serviços
como RegionalInventory e ShippingSettings.
principais diferenças
- Estrutura da API:o serviço Regions agora faz parte da sub-API Accountsna API Merchant (por exemplo,merchantapi.googleapis.com/accounts/v1/...).
- Nomes de recursos:a API Merchant usa nomes de recursos (accounts/{account}/regions/{region}) em vez de parâmetrosmerchant_ideregion_idseparados no caminho do URL para operações Get, Update e Delete.
- Conformidade com a AIP:os métodos da API Merchant seguem padrões de Proposta de melhoria da API (em inglês) (como o uso de parentpara List/Create,namepara Get/Delete e o uso padrão deupdate_mask).
- Tipos de wrapper:os campos que antes usavam google.protobuf.StringValueougoogle.protobuf.BoolValuena API Content agora usam camposoptionalpadrão na API Merchant.
- Novos recursos:- A API Merchant apresenta um tipo RadiusAreano recursoRegionpara definir regiões com base em um raio ao redor de um ponto (inicialmente com visibilidadeTRUST_TESTER).
- Os métodos em lote (BatchCreateRegions,BatchUpdateRegionseBatchDeleteRegions) estão disponíveis.
 
- A API Merchant apresenta um tipo 
- Tratamento de erros:os códigos e mensagens de erro fornecem feedback mais específico.
Solicitações
Veja como os padrões de solicitação mudam:
| Item | API Content for Shopping | API Merchant | Descrição | 
|---|---|---|---|
| Endpoint | https://shoppingcontent.googleapis.com | https://merchantapi.googleapis.com | O domínio base muda. | 
| Receber caminho | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | A API Merchant usa a sub-API accountse um recursoname. | 
| Caminho da lista | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | A API Merchant usa parentpara especificar a conta. | 
| Criar caminho | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | A API Merchant usa parent.region_idé um campo no corpo da solicitação. | 
| Atualizar caminho | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | O nome do recurso na API Merchant é parte do objeto regionno corpo. | 
| Excluir caminho | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | Usa o recurso name. | 
Identificadores
Mude o uso de identificadores da seguinte forma:
| Item | API Content for Shopping | API Merchant | Descrição | 
|---|---|---|---|
| Conta | merchant_id(inteiro) | account(inteiro, parte da stringnameouparent) | Encontre o ID da conta incorporado na string do nome do recurso, por exemplo, accounts/{account}. | 
| Região | region_id(string) | {region}(string, parte da stringname) | Encontre o ID da região incorporado na string do nome do recurso, por exemplo, accounts/{account}/regions/{region}. | 
| Nome do recurso | Não é usado estritamente para solicitações. | name:accounts/{account}/regions/{region} | Identificador padrão para solicitações Get/Update/Delete. | 
| Nome do familiar responsável | Não é usado estritamente para solicitações. | parent:accounts/{account} | Identificador padrão para solicitações de List/Create. | 
Recursos
A estrutura do recurso Region tem pequenas mudanças:
| Item | API Content for Shopping | API Merchant | Descrição | 
|---|---|---|---|
| Identificador do recurso | region_id(string),merchant_id(int64) | name(string):accounts/{account}/regions/{region} | A API Merchant usa um único campo namecomo identificador de recurso. | 
| display_name | google.protobuf.StringValue | optional string | Tipo de wrapper removido. | 
| radius_area | Não disponível (N/A) | RadiusArea | Esse novo tipo define regiões por raio. Inclui region_code,lat_lng,radius,radius_units. Por padrão, a visibilidade é restrita. | 
| regional_inventory_eligible | google.protobuf.BoolValue(somente saída) | optional bool(somente saída) | Tipo de wrapper removido. | 
| shipping_eligible | google.protobuf.BoolValue(somente saída) | optional bool(somente saída) | Tipo de wrapper removido. | 
Métodos
Mude o uso dos métodos da seguinte forma:
| Item | API Content for Shopping | API Merchant | Descrição | 
|---|---|---|---|
| Receber região | GetRegion | GetRegion | A solicitação usa name. | 
| Criar região | CreateRegion | CreateRegion | A solicitação usa o parentdo URL, enquanto o corpo da solicitação
   inclui o objetoregione oregion_id. | 
| Atualizar região | UpdateRegion | UpdateRegion | A solicitação usa region(que precisa incluirregion.name) eupdate_mask. | 
| Excluir região | DeleteRegion | DeleteRegion | A solicitação usa name. | 
| Listar regiões | ListRegions | ListRegions | A solicitação usa parent. O comportamento depage_sizeepage_tokené consistente. | 
| Criação em lote | N/A | BatchCreateRegions | Esse é um novo método. | 
| Atualização em lote | N/A | BatchUpdateRegions | Esse é um novo método. | 
| Exclusão em lote | N/A | BatchDeleteRegions | Esse é um novo método. | 
Campos renomeados
| Item | API Content for Shopping | API Merchant | Descrição | 
|---|---|---|---|
| ID da conta | merchant_id | account(parte denameouparent) | Integrado às strings do recurso name. Isso afetaRegion(resposta) e mensagens protobuf usadas para fazer solicitações de API, comoCreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequesteListRegionsRequest. | 
| ID da região | region_id | region(parte dename),region_id | Integrado ao namepara a maioria, camporegion_idseparado emCreateRegionRequest. Isso afetaRegion(resposta) e mensagens protobuf usadas para fazer solicitações de API, comoCreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequesteListRegionsRequest. | 
| Nome da região (saída) | region_id | name | O campo de identificador principal na resposta agora é o namecompleto do recurso. Isso afetaRegion. | 
| Nome de exibição | display_name | display_name | O tipo muda de StringValueparaoptional string.
    Isso afetaRegion. | 
| Flags de qualificação | ...eligible | ...eligible | O tipo muda de BoolValueparaoptional bool.
    Isso afetaRegion. | 
| Máscara de atualização | update_mask | update_mask | Caminhos de campo Region. Isso afetaUpdateRegionRequest. |