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 accounts e um recurso name. |
| Caminho da lista | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
A API Merchant usa parent para 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 region no 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 string name ou parent) |
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 string name) |
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 name como 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 parent do URL, enquanto o corpo da solicitação
inclui o objeto region e o region_id.
|
| Atualizar região | UpdateRegion |
UpdateRegion |
A solicitação usa region (que precisa incluir region.name) e update_mask.
|
| Excluir região | DeleteRegion
|
DeleteRegion
|
A solicitação usa name.
|
| Listar regiões | ListRegions |
ListRegions |
A solicitação usa parent. O comportamento de page_size e page_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 de name ou parent) |
Integrado às strings do recurso name. Isso afeta Region (resposta) e mensagens protobuf usadas para fazer solicitações de API, como CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest e ListRegionsRequest.
|
| ID da região | region_id |
region (parte de name), region_id |
Integrado ao name para a maioria, campo region_id separado em CreateRegionRequest. Isso afeta Region
(resposta) e mensagens protobuf usadas para fazer solicitações de API, como
CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest
e ListRegionsRequest.
|
| Nome da região (saída) | region_id
|
name
|
O campo de identificador principal na resposta agora é o name completo do recurso. Isso afeta Region.
|
| Nome de exibição | display_name |
display_name |
O tipo muda de StringValue para optional string.
Isso afeta Region.
|
| Flags de qualificação | ...eligible |
...eligible |
O tipo muda de BoolValue para optional bool.
Isso afeta Region.
|
| Máscara de atualização | update_mask |
update_mask |
Caminhos de campo Region. Isso afeta UpdateRegionRequest. |