O serviço regions
permite criar e gerenciar regiões geográficas que
é possível usar como destinos
regionalinventory
e shippingsettings
serviços. É possível definir regiões como coleções de códigos postais ou,
em alguns países, com o uso
segmentações geográficas. Neste guia, apresentamos
exemplos de como definir cada tipo de região e como criar uma
a substituição de preços. Para mais informações sobre o serviço regions
,
incluindo todos os métodos e parâmetros disponíveis, consulte a documentação de referência.
Qualificação por região
Quando você cria uma região, o serviço de regiões determina se é possível usar o
região a outros serviços da API Content. O objeto de resposta retornado para um
chamada regions.create
bem-sucedida inclui dois campos booleanos,
regionalInventoryEligible
e shippingEligible
, que indicam se você
pode usar a região com os serviços regionalinventory
e shippingsettings
respectivamente.
regionalInventoryEligible
Para se qualificar para uso com o serviço regionalinventory
, uma região precisa atender a estes requisitos
os seguintes critérios:
- O
regionId
, que você especifica ao criar uma região, precisa conter apenas dígitos e deve conter pelo menos seis dígitos. - A região precisa atender aos requisitos mínimos de tamanho para a área geográfica e on-line população.
shippingEligible
Para se qualificar para uso com o serviço shippingsettings
, uma região precisa atender a estes requisitos
os seguintes critérios:
- A região precisa ser definida usando CEPs/códigos postais.
- A região precisa fazer parte de um país compatível com a
shippingsettings
serviço.
Amostras
Veja um exemplo de código completo que pode ser usado para criar uma nova região em Java:
// Copyright 2023 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // https://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package shopping.content.v2_1.samples.regions; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.services.content.model.Region; import com.google.api.services.content.model.RegionPostalCodeArea; import com.google.api.services.content.model.RegionPostalCodeAreaPostalCodeRange; import java.io.IOException; import java.util.ArrayList; import java.util.List; import shopping.content.v2_1.samples.ContentSample; /** * Creates a region. The region created here can be used with the regional inventory service. * Regional availability and pricing lets you provide product availability and variable pricing * based on your business presence and the location of your customer base. Regional availability and * pricing is available for products advertised through Shopping ads on Google Search, and listed in * free listings on the Shopping tab. */ public class RegionCreateSample extends ContentSample { public RegionCreateSample(String[] args) throws IOException { super(args); } @Override public void execute() throws IOException { checkNonMCA(); // Creates a List of Postal Code Area Postal Code Ranges. // This allows you to flexibly define regions as combinations of postal code // ranges. Each postal code range in the list has its own start and end zip code. List<RegionPostalCodeAreaPostalCodeRange> postalCodeRanges = new ArrayList<RegionPostalCodeAreaPostalCodeRange>(); // Creates a new postal code range from two postal code values. // This range is equivalent to all postal codes in the USA state of New York (00501 - 14925) RegionPostalCodeAreaPostalCodeRange postalCodeRange = new RegionPostalCodeAreaPostalCodeRange().setBegin("00501").setEnd("14925"); // Adds the NY State postal code range into the list of postal code ranges that a postal // code area accepts. postalCodeRanges.add(postalCodeRange); // Creates Postal Code Area for the Region that will be inserted, using the NY State postal code // ranges, and the US CLDR territory/country code that the postal code ranges applies to. RegionPostalCodeArea postalCodeArea = new RegionPostalCodeArea().setPostalCodes(postalCodeRanges).setRegionCode("US"); // Creates a region with example values for displayName and postalCodeArea Region region = new Region().setDisplayName("NYState").setPostalCodeArea(postalCodeArea); // Tries to create the region, and catches any exceptions try { System.out.println("Creating region"); Region result = content .regions() .create(this.config.getMerchantId().longValue(), region) .setRegionId("12345678") // User-defined, numeric, minimum of 6 digits .execute(); System.out.println("Listing succesfully created region"); System.out.println(result); } catch (GoogleJsonResponseException e) { checkGoogleJsonResponseException(e); } } public static void main(String[] args) throws IOException { new RegionCreateSample(args).execute(); } }
Criar uma região usando códigos postais
Você pode usar o regions.create
para criar uma região definida como um conjunto de códigos postais. O exemplo
abaixo, cria uma nova região para o estado do Arizona, EUA, especificando um intervalo de
ou códigos postais.
Para criar a região, faça uma solicitação POST
com o seguinte URL e solicite
corpo:
https://shoppingcontent.googleapis.com/content/v2.1/merchantId/regions?regionId=456789
{
postalCodeArea: {
regionCode: "US",
postalCodes: [
{
begin: "850*",
end: "860*"
}
]
}
}
Há um limite rígido de 2 MB de dados para o app regions
e shippingsettings
por conta do Merchant Center. Configurações de frete e região
são copiados internamente de uma MCA para todas as subcontas.
MCAs, talvez você atinja rapidamente seu limite de armazenamento. Nesse caso, uma solução alternativa é
para gerenciar regions
e shippingsettings
no nível do ID do comerciante. Não há
para aumentar a cota das regiões além do limite de 2 MB.
Criar uma região usando segmentações geográficas
Para regiões do Brasil e da Rússia, você também pode usar o método regions.create
.
para criar uma região definida como um conjunto de segmentações geográficas, que são predefinidas
áreas geográficas. Exemplos de tipos de segmentação geográfica incluem países, estados, cidades,
bairros e aeroportos. No entanto, o serviço regions
atualmente só
oferece suporte ao tipo "Estado" para o Brasil e o tipo "Região" para a Rússia. Para
fazer download de um arquivo csv de todos os IDs de segmentação geográfica, incluindo as que podem ser
usada com o serviço regions
, consulte
Segmentações geográficas. O exemplo abaixo cria
uma nova região fornecendo os IDs de segmentação geográfica de três estados brasileiros.
Para criar a região, faça uma solicitação POST
usando o seguinte URL e solicite
corpo:
https://shoppingcontent.googleapis.com/content/v2.1/merchantId/regions?regionId=123456
{
geoTargetAreas: {
geotargetCriteriaId: [20106, 20102, 20101] //Sao Paulo, Rio de Janeiro, Parana
}
}
Usar regiões para criar substituições de preço regionais
Quando você cria uma região, o serviço regions
retorna um objeto de resposta que
inclui regionId
e dois campos de status de qualificação. Se o
O valor de regionalInventoryEligible
é true
, você pode usar o regionaliventory
serviço para criar uma substituição que define um preço diferente para a região. A
exemplo abaixo cria uma substituição de preço regional usando a função
criada no exemplo acima, que tem um regionId
de "456789".
Para criar a substituição, faça uma solicitação POST
usando o seguinte URL e
corpo da solicitação:
https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/{productId}/regionalinventory
{
“regionId”: "456789"
“price”: {
value: “10”
currency: “USD”
},
“availability”: “in stock”
}