Mit dem Dienst regions
können Sie geografische Regionen erstellen und verwalten,
können Sie als Ziele sowohl mit der
regionalinventory
und shippingsettings
. Sie können Regionen als Sammlungen von Postleitzahlen definieren oder in
in einigen Ländern mit vordefinierten
geotargets verwendet werden. Dieser Leitfaden enthält
Beispiele dafür, wie die einzelnen Regionstypen definiert werden und wie eine regionale
Preisüberschreibung. Weitere Informationen zum regions
-Dienst
einschließlich aller verfügbaren Methoden und Parameter, finden Sie in der Referenzdokumentation.
Verfügbarkeit nach Region
Wenn Sie eine Region erstellen, bestimmt der Regionsdienst, ob Sie den
mit anderen Content API-Diensten verknüpfen. Das für eine Abfrage zurückgegebene Antwortobjekt
Der erfolgreiche regions.create
-Aufruf enthält zwei boolesche Felder:
regionalInventoryEligible
und shippingEligible
, die angeben, ob Sie
die Region mit den Diensten regionalinventory
und shippingsettings
verwenden,
.
regionalInventoryEligible
Damit eine Region mit dem Dienst regionalinventory
verwendet werden kann, muss sie folgende Anforderungen erfüllen:
folgende Kriterien erfüllen:
- Die
regionId
, die Sie beim Erstellen einer Region angeben, darf nur Ziffern und muss mindestens 6 Ziffern enthalten. - Die Region muss die Mindestanforderungen an die geografische Region und den Onlineumfang erfüllen Population.
shippingEligible
Damit eine Region mit dem Dienst shippingsettings
verwendet werden kann, muss sie folgende Anforderungen erfüllen:
folgende Kriterien erfüllen:
- Die Region muss mithilfe von Postleitzahlen definiert werden.
- Die Region muss Teil eines Landes sein, das vom
shippingsettings
unterstützt wird .
Beispiele
Hier ist ein vollständiges Codebeispiel, das Sie zum Erstellen einer neuen Region in Java verwenden können:
// 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(); } }
Region mithilfe von Postleitzahlen erstellen
Sie können die regions.create
verwenden
zum Erstellen einer Region, die als Sammlung von Postleitzahlen definiert ist. Das Beispiel
unten eine neue Region für den US-Bundesstaat Arizona erstellt, indem Sie einen Bereich
Postleitzahlen.
Um die Region zu erstellen, stellen Sie eine POST
-Anfrage mit der folgenden URL und fordern Sie
Text:
https://shoppingcontent.googleapis.com/content/v2.1/merchantId/regions?regionId=456789
{
postalCodeArea: {
regionCode: "US",
postalCodes: [
{
begin: "850*",
end: "860*"
}
]
}
}
Für regions
gilt ein festes Limit von 2 MB an Daten.
und shippingsettings
pro Merchant Center-Konto. Versand- und Regionseinstellungen
werden intern von einem Mehrfachkundenkonto in alle zugehörigen Unterkonten kopiert, sodass bei größeren
MCAs haben Sie möglicherweise schnell Ihr Speicherlimit erreicht. In diesem Fall können Sie das Problem umgehen,
um regions
und shippingsettings
auf Händler-ID-Ebene zu verwalten. Es gibt keine
Möglichkeit, das Kontingent für Regionen über das Limit von 2 MB hinaus zu erhöhen.
Region mithilfe von geografischen Zielen erstellen
Für Regionen in Brasilien und Russland können Sie auch die Methode regions.create
verwenden
zum Erstellen einer Region, die als Sammlung von Zielen definiert ist, die vordefiniert sind
geografischen Regionen. Beispiele für die geografische Ausrichtung sind Länder, Bundesländer, Städte,
Stadtviertel und Flughäfen. Der regions
-Dienst kann derzeit jedoch nur
unterstützt den Typ „Staat“ für Brasilien und den Typ „Region“ für Russland. Bis
eine CSV-Datei mit allen Ziel-IDs für die geografische Ausrichtung herunterladen, einschließlich der Ziele, die für
die mit dem Dienst regions
verwendet werden, siehe
Geografische Ziele: Im folgenden Beispiel wird erstellt,
Region durch Angabe der geografischen Ziel-IDs von drei brasilianischen Bundesstaaten aus.
Um die Region zu erstellen, stellen Sie eine POST
-Anfrage mit der folgenden URL und fordern Sie
Text:
https://shoppingcontent.googleapis.com/content/v2.1/merchantId/regions?regionId=123456
{
geoTargetAreas: {
geotargetCriteriaId: [20106, 20102, 20101] //Sao Paulo, Rio de Janeiro, Parana
}
}
Regionen zum Erstellen regionaler Preisüberschreibungen verwenden
Wenn Sie eine Region erstellen, gibt der regions
-Dienst ein Antwortobjekt zurück, das
enthält das Feld regionId
und zwei Felder für den Berechtigungsstatus. Wenn die
Der Wert von regionalInventoryEligible
beträgt true
, Sie können die regionaliventory
verwenden.
um eine Überschreibung zu erstellen, die einen anderen Preis für die Region festlegt. Die
Im Beispiel unten wird eine regionale Preisüberschreibung mit der
die im obigen Beispiel erstellt wurde, deren regionId
den Wert „456789“ hat.
Um die Überschreibung zu erstellen, senden Sie eine POST
-Anfrage mit der folgenden URL und
Anfragetext:
https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/{productId}/regionalinventory
{
“regionId”: "456789"
“price”: {
value: “10”
currency: “USD”
},
“availability”: “in stock”
}