অঞ্চলসমূহ

regions পরিষেবা আপনাকে ভৌগলিক অঞ্চলগুলি তৈরি এবং পরিচালনা করতে দেয় যা আপনি regionalinventory এবং shippingsettings পরিষেবা উভয়ের সাথে লক্ষ্য হিসাবে ব্যবহার করতে পারেন৷ আপনি অঞ্চলগুলিকে পোস্টাল কোডের সংগ্রহ হিসাবে বা, কিছু দেশে, পূর্বনির্ধারিত জিওটার্গেট ব্যবহার করে সংজ্ঞায়িত করতে পারেন। এই নির্দেশিকা প্রতিটি ধরনের অঞ্চলকে কীভাবে সংজ্ঞায়িত করতে হয়, সেইসাথে কীভাবে একটি আঞ্চলিক মূল্য ওভাররাইড তৈরি করতে হয় তার উদাহরণ প্রদান করে। সমস্ত উপলব্ধ পদ্ধতি এবং পরামিতি সহ regions পরিষেবা সম্পর্কে অতিরিক্ত তথ্যের জন্য, রেফারেন্স ডকুমেন্টেশন দেখুন।

অঞ্চলের যোগ্যতা

আপনি যখন একটি অঞ্চল তৈরি করেন, তখন অঞ্চল পরিষেবা নির্ধারণ করে যে আপনি অন্যান্য সামগ্রী API পরিষেবাগুলির সাথে অঞ্চলটি ব্যবহার করতে পারবেন কিনা৷ একটি সফল regions.create কলের জন্য যে প্রতিক্রিয়া অবজেক্টটি ফিরে এসেছে তাতে দুটি বুলিয়ান ক্ষেত্র রয়েছে, regionalInventoryEligible এবং shippingEligible , যা নির্দেশ করে যে আপনি যথাক্রমে regionalinventory এবং shippingsettings পরিষেবাগুলির সাথে অঞ্চলটি ব্যবহার করতে পারবেন কিনা৷

আঞ্চলিক ইনভেন্টরি যোগ্য

regionalinventory পরিষেবার সাথে ব্যবহারের জন্য যোগ্য হতে, একটি অঞ্চলকে অবশ্যই নিম্নলিখিত মানদণ্ড পূরণ করতে হবে:

  • regionId , যা আপনি একটি অঞ্চল তৈরি করার সময় নির্দিষ্ট করেন, তাতে অবশ্যই কেবলমাত্র সংখ্যা থাকতে হবে এবং কমপক্ষে 6টি সংখ্যা থাকতে হবে।
  • অঞ্চলটি ভৌগলিক এলাকা এবং অনলাইন জনসংখ্যার জন্য ন্যূনতম আকারের প্রয়োজনীয়তা পূরণ করতে হবে।

শিপিং যোগ্য

shippingsettings পরিষেবার সাথে ব্যবহারের জন্য যোগ্য হতে, একটি অঞ্চলকে অবশ্যই নিম্নলিখিত মানদণ্ড পূরণ করতে হবে:

  • অঞ্চলটি পোস্টাল কোড ব্যবহার করে সংজ্ঞায়িত করা আবশ্যক।
  • অঞ্চলটি shippingsettings পরিষেবা দ্বারা সমর্থিত একটি দেশের অংশ হতে হবে৷

নমুনা

এখানে একটি সম্পূর্ণ কোড নমুনা রয়েছে যা আপনি জাভাতে একটি নতুন অঞ্চল তৈরি করতে ব্যবহার করতে পারেন:

// 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();
  }
}

পোস্টাল কোড ব্যবহার করে একটি অঞ্চল তৈরি করুন

পোস্টাল কোডের সংগ্রহ হিসাবে সংজ্ঞায়িত একটি অঞ্চল তৈরি করতে আপনি regions.create পদ্ধতি ব্যবহার করতে পারেন। নীচের উদাহরণটি পোস্টাল কোডের একটি পরিসর নির্দিষ্ট করে মার্কিন যুক্তরাষ্ট্রের অ্যারিজোনা রাজ্যের জন্য একটি নতুন অঞ্চল তৈরি করে৷

অঞ্চল তৈরি করতে, নিম্নলিখিত URL এবং অনুরোধের বডি দিয়ে একটি POST অনুরোধ করুন:

https://shoppingcontent.googleapis.com/content/v2.1/merchantId/regions?regionId=456789
{
  postalCodeArea: {
    regionCode: "US",
    postalCodes: [
      {
        begin: "850*",
        end: "860*"
      }
    ]
   }
}

প্রতি বণিক কেন্দ্র অ্যাকাউন্টে regions এবং shippingsettings জন্য 2MB ডেটার একটি কঠিন সীমা রয়েছে৷ শিপিং এবং অঞ্চল সেটিংস অভ্যন্তরীণভাবে একটি MCA থেকে এর সমস্ত উপ-অ্যাকাউন্টে অনুলিপি করা হয়, তাই বড় MCA-গুলির জন্য, আপনি দ্রুত আপনার স্টোরেজ সীমাতে পৌঁছাতে পারেন। এই ক্ষেত্রে, একটি সমাধান হল মার্চেন্ট আইডি স্তরে regions এবং shippingsettings পরিচালনা করা। আপনার অঞ্চলের কোটা 2MB সীমা অতিক্রম করার কোন উপায় নেই।

জিওটার্গেট ব্যবহার করে একটি অঞ্চল তৈরি করুন

ব্রাজিল এবং রাশিয়ার অঞ্চলগুলির জন্য, আপনি জিওটার্গেটের সংগ্রহ হিসাবে সংজ্ঞায়িত একটি অঞ্চল তৈরি করতে regions.create পদ্ধতি ব্যবহার করতে পারেন, যা পূর্বনির্ধারিত ভৌগলিক এলাকা। জিওটার্গেট ধরনের উদাহরণের মধ্যে রয়েছে দেশ, রাজ্য, শহর, প্রতিবেশী এলাকা এবং বিমানবন্দর। যাইহোক, regions পরিষেবা বর্তমানে শুধুমাত্র ব্রাজিলের জন্য "রাষ্ট্র" টাইপ এবং রাশিয়ার জন্য "অঞ্চল" টাইপ সমর্থন করে। regions পরিষেবার সাথে ব্যবহার করা যেতে পারে এমন জিওটার্গেট সহ সমস্ত জিওটার্গেট আইডিগুলির একটি csv ফাইল ডাউনলোড করতে, জিওটার্গেটগুলি দেখুন। নীচের উদাহরণটি তিনটি ব্রাজিলীয় রাজ্যের জিওটার্গেট আইডি প্রদান করে একটি নতুন অঞ্চল তৈরি করে৷

অঞ্চল তৈরি করতে, নিম্নলিখিত URL এবং অনুরোধের বডি ব্যবহার করে একটি POST অনুরোধ করুন:

https://shoppingcontent.googleapis.com/content/v2.1/merchantId/regions?regionId=123456
{
  geoTargetAreas: {
    geotargetCriteriaId: [20106, 20102, 20101] //Sao Paulo, Rio de Janeiro, Parana
  }
}

আঞ্চলিক মূল্য ওভাররাইড তৈরি করতে অঞ্চলগুলি ব্যবহার করুন৷

আপনি যখন একটি অঞ্চল তৈরি করেন, regions পরিষেবা একটি প্রতিক্রিয়া বস্তু প্রদান করে যাতে একটি regionId এবং দুটি যোগ্যতার স্থিতি ক্ষেত্র অন্তর্ভুক্ত থাকে। যদি regionalInventoryEligible মান true হয়, তাহলে আপনি একটি ওভাররাইড তৈরি করতে regionaliventory পরিষেবা ব্যবহার করতে পারেন যা অঞ্চলের জন্য একটি ভিন্ন মূল্য সেট করে। নীচের উদাহরণটি উপরের উদাহরণে তৈরি পোস্টাল-কোড-ভিত্তিক অঞ্চল ব্যবহার করে একটি আঞ্চলিক মূল্য ওভাররাইড তৈরি করে, যার “456789” regionId রয়েছে।

ওভাররাইড তৈরি করতে, নিম্নলিখিত URL এবং অনুরোধের বডি ব্যবহার করে একটি POST অনুরোধ করুন:

https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/{productId}/regionalinventory
{
  “regionId”: "456789"
  “price”: {
    value: “10”
    currency: “USD”
  },
  “availability”: “in stock”
}