কেনাকাটার জন্য সামগ্রী API থেকে মার্চেন্ট API-এ স্থানান্তর করুন৷

এই নির্দেশিকাটি ব্যবসার ডেটা পরিচালনার জন্য কেনাকাটার জন্য সামগ্রী API থেকে মার্চেন্ট API-এ স্থানান্তর প্রক্রিয়া ব্যাখ্যা করে।

আপনি এই নির্দেশিকাটি ব্যবহার করতে পারেন আপনার বিদ্যমান সামগ্রী API শপিং বাস্তবায়নের জন্য মার্চেন্ট এপিআইতে স্থানান্তর করতে। মার্চেন্ট এপিআই এবং এর সাব-এপিআই-এর বিশদ বিবরণের জন্য, মার্চেন্ট এপিআই ডিজাইন দেখুন।

শুরু করুন

মার্চেন্ট এপিআই ব্যবহার শুরু করতে, আপনার অনুরোধের URLগুলিকে নিম্নলিখিত ফর্ম্যাটে পরিবর্তন করুন:

https://merchantapi.googleapis.com/{SUB_API}/{VERSION}/{RESOURCE_NAME}:{METHOD}

মার্চেন্ট এপিআই ব্যবহার করতে, আপনাকে অবশ্যই ডেভেলপার রেজিস্ট্রেশন পদ্ধতি ব্যবহার করে আপনার বণিক কেন্দ্র অ্যাকাউন্ট এবং আপনার Google ক্লাউড প্রকল্পকে লিঙ্ক করতে হবে:

POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/developerRegistration:registerGcp

{
  developer_email:"example-email@example.com"
}

আরও তথ্যের জন্য, কুইকস্টার্ট গাইড এবং মার্চেন্ট এপিআই রেফারেন্স দেখুন।

কেনাকাটার জন্য বিষয়বস্তু API-এর উপর উন্নতি

মার্চেন্ট এপিআই আপনাকে বণিক কেন্দ্রে কর্মপ্রবাহগুলিকে স্বয়ংক্রিয় এবং স্ট্রীমলাইন করতে দেয় এবং কেনাকাটার জন্য সামগ্রী API-এর উপর উন্নত ক্ষমতা প্রদান করে।

মূল ব্যবহারের ক্ষেত্রে:

  • স্বয়ংক্রিয় অ্যাকাউন্ট পরিচালনা
  • স্বয়ংক্রিয় পণ্য ব্যবস্থাপনা
  • স্বয়ংক্রিয় জায় ব্যবস্থাপনা
  • কাস্টম রিপোর্টিং

মূল উন্নতির ক্ষেত্র:

কি পরিবর্তন হয়েছে:

  • প্রতি API কলে সর্বাধিক pageSize 250 থেকে 1000 সারি পর্যন্ত বৃদ্ধি পেয়েছে৷
  • DataSources তৈরির পরে পণ্য সন্নিবেশ, প্রচার, পণ্য পর্যালোচনা এবং বণিক পর্যালোচনার জন্য একটি বিলম্ব বিদ্যমান ছিল।

কি আসছে:

  • রিপোর্টিং সাব-এপিআই- এর অধীনে productView টেবিলে clickPotentialRank জন্য একটি আপডেট করা সংজ্ঞা চালু করা হয়েছে: * clickPotential উপর ভিত্তি করে পণ্যের র‍্যাঙ্কিং 1 এবং 1000-এর মধ্যে মানগুলিতে স্বাভাবিক করা হয়।
    • কম clickPotentialRank সহ পণ্যগুলিতে এখনও বণিকের পণ্যগুলির মধ্যে সর্বাধিক ক্লিকের সম্ভাবনা রয়েছে যা অনুসন্ধান ক্যোয়ারী শর্তগুলি পূরণ করে৷ এটি একটি নন-ব্রেকিং পরিবর্তন যা 1 জুলাই, 2025-এ চালু হতে পারে।
  • AccountIdAlias AccountRelationship রিসোর্সে, জটিল অ্যাকাউন্ট স্ট্রাকচারকে আরও ভালোভাবে পরিচালনা করা সম্ভব করে তোলে। উদাহরণস্বরূপ, মার্কেটপ্লেসগুলি বণিকের অভ্যন্তরীণ আইডি যেমন অ্যাকাউন্ট আইডির পরিবর্তে ব্যবহারকারী-সংজ্ঞায়িত উপনাম ব্যবহার করে।

জিআরপিসি সমর্থন

মার্চেন্ট API gRPC এবং REST সমর্থন করে। আপনি একই সময়ে বণিক API-এর জন্য gRPC এবং কেনাকাটার জন্য সামগ্রী API-এর জন্য REST ব্যবহার করতে পারেন।

মার্চেন্ট এপিআই ক্লায়েন্ট লাইব্রেরির জন্য gRPC প্রয়োজন।

আরও তথ্যের জন্য, gRPC ওভারভিউ দেখুন।

সামঞ্জস্য

এই নির্দেশিকাটি সাধারণ পরিবর্তনগুলি বর্ণনা করে যা সমগ্র মার্চেন্ট API-এ প্রযোজ্য।

Merchant API শপিং বৈশিষ্ট্যের জন্য বিদ্যমান সামগ্রী API-এর পাশাপাশি কাজ করার জন্য ডিজাইন করা হয়েছে।

উদাহরণস্বরূপ, আপনি শপিং v2.1 products বাস্তবায়নের জন্য আপনার বিদ্যমান সামগ্রী API-এর পাশাপাশি মার্চেন্ট ইনভেন্টরি API ব্যবহার করতে পারেন। আপনি একটি নতুন স্থানীয় পণ্য আপলোড করতে শপিংয়ের জন্য সামগ্রী API ব্যবহার করতে পারেন (যেটি আপনি স্থানীয় দোকানে বিক্রি করেন), তারপর সেই পণ্যের জন্য ইন-স্টোর তথ্য পরিচালনা করতে মার্চেন্ট ইনভেন্টরিস এপিআই LocalInventory সংস্থান ব্যবহার করুন।

বিষয়বস্তু API এর উপর উন্নতি

মার্চেন্ট এপিআই নিম্নলিখিত ক্ষেত্রগুলিতে কন্টেন্ট এপিআই-এর চেয়ে উন্নতি করে:

এই পরিবর্তনগুলি আরও বিশদে বিবেচনা করুন।

সংস্করণ এবং উপ-এপিআই

মার্চেন্ট এপিআই সংস্করণ এবং সাব-এপিআই- এর ধারণাগুলি প্রবর্তন করে। এর মডুলার ডিজাইন আপনাকে আপনার প্রয়োজনীয় সাব-এপিআইগুলিতে ফোকাস করার অনুমতি দিয়ে এবং নতুন সংস্করণগুলিতে ভবিষ্যতের সহজ স্থানান্তর সক্ষম করে ব্যবহারের সহজলভ্যতা উন্নত করে। আপনার অনুরোধ URL-এর সাথে সংস্করণ প্রয়োগ করা হবে। কৌশলটি Google Ads API অভিজ্ঞতার অনুরূপ।

আরো জোরালো অনুরোধ

মার্চেন্ট এপিআই ইউআরএল অনুরোধে মার্চেন্ট এপিআই কল করার জন্য আরও প্যারামিটার প্রয়োজন। এর মধ্যে রয়েছে সম্পদ, সংস্করণ, নাম (শনাক্তকারী) এবং পদ্ধতি (নন স্ট্যান্ডার্ড পদ্ধতি)। এই সম্পর্কে আরও জানতে, অ্যাকাউন্ট এবং পণ্য শনাক্তকারী এবং উদাহরণ দেখুন।

শনাক্তকারীদের জন্য AIP নীতি

শপিংয়ের জন্য সামগ্রী API সংস্থানগুলি সনাক্ত করতে আইডি ব্যবহার করে (উদাহরণস্বরূপ, merchantId , productId ), মার্চেন্ট এপিআই AIP এর সাথে সারিবদ্ধ করতে একটি name সনাক্তকারী ব্যবহার করে ( এপিআই উন্নতি নীতিগুলি দেখুন)।

{name} আইডেন্টিফায়ারে রিসোর্স আইডেন্টিফায়ার এবং তার অভিভাবক (বা সম্ভাব্য একাধিক অভিভাবক) অন্তর্ভুক্ত থাকে, যেমন {name} সমান accounts/{account}/products/{product}

সমস্ত রিড এবং রাইট কল রিসোর্স আইডেন্টিফায়ার হিসাবে name ক্ষেত্রটি ফেরত দেয়।

এছাড়াও {name} সংগ্রহ শনাক্তকারী accounts/ এবং products/ অন্তর্ভুক্ত করে।

মার্চেন্ট এপিআই একটি বণিক কেন্দ্র আইডি উল্লেখ করতে {account} ব্যবহার করে এবং পণ্য শনাক্তকারী উল্লেখ করতে {product} ব্যবহার করে।

উদাহরণ স্বরূপ, একটি রিসোর্স থেকে name পুনরুদ্ধার করার জন্য একটি getName() পদ্ধতি প্রয়োগ করুন এবং বণিক ও রিসোর্স আইডি থেকে name তৈরি করার পরিবর্তে একটি পরিবর্তনশীল হিসাবে আউটপুট সংরক্ষণ করুন।

আপনার কলগুলিতে name ক্ষেত্রটি কীভাবে ব্যবহার করবেন তার একটি উদাহরণ এখানে রয়েছে:

   POST https://merchantapi.googleapis.com/inventories/v1/{PARENT}/regionalInventories:insert

সারণি দেখায় কিভাবে শপিং products.get জন্য কন্টেন্ট এপিআই পরিবর্তন হয়।

কেনাকাটার জন্য সামগ্রী API বণিক API
GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} GET https://merchantapi.googleapis.com/products/v1/{name}

আরও বিশদ বিবরণের জন্য, সনাক্তকারী পরিবর্তনগুলি পর্যালোচনা করুন৷

অন্য একটি উদাহরণ হিসেবে, Merchant Center ID 4321 থেকে Merchant API ব্যবহার করে শনাক্তকারী en~US~1234 সহ একটি পণ্য পুনরুদ্ধার করা নিচের মত দেখাবে:

    GET
    https://merchantapi.googleapis.com/products/v1/accounts/4321/products/online~en~US~1234

যেখানে {name} accounts/4321/products/en~US~1234 সমান। এই নতুন নামের ক্ষেত্রটি মার্চেন্ট এপিআই-এ সমস্ত রিড এবং রাইট কলের জন্য রিসোর্স শনাক্তকারী হিসাবে ফেরত দেওয়া হয়।

কেনাকাটার জন্য সামগ্রী API-তে, একটি কোলন (:) পণ্যের নামের একটি বিভেদক নির্দেশ করে যেখানে মার্চেন্ট API-এ, একটি টিল্ড (~) এই ফাংশনটি সম্পাদন করে। বণিক API শনাক্তকারীতে channel অংশ থাকে না।

উদাহরণস্বরূপ, কেনাকাটার জন্য সামগ্রী API-তে পণ্য আইডি:

channel:contentLanguage:feedLabel:offerId

মার্চেন্ট এপিআইতে নিম্নলিখিতগুলি হয়ে যায়:

contentLanguage~feedLabel~offerId .

শিশু সম্পদের জন্য পিতামাতার ক্ষেত্র

মার্চেন্ট API-এ, সমস্ত চাইল্ড রিসোর্সের parent ক্ষেত্র থাকে। আপনি সন্তানকে সন্নিবেশ করার জন্য সংস্থানটির {name} নির্দিষ্ট করতে parent ক্ষেত্রটি ব্যবহার করতে পারেন, পুরো অভিভাবক সংস্থানটি পাস করার পরিবর্তে। আপনি list সহ parent ক্ষেত্রটিও ব্যবহার করতে পারেন

উদাহরণস্বরূপ, একটি প্রদত্ত পণ্যের জন্য স্থানীয় জায় তালিকাভুক্ত করতে, list পদ্ধতির জন্য parent ক্ষেত্রে পণ্যের name উল্লেখ করুন। এই ক্ষেত্রে, প্রদত্ত product ফেরত দেওয়া LocalInventory সম্পদের parent

    GET
    https://merchantapi.googleapis.com/inventories/v1/{parent}/localInventories

পণ্য en~US~1234' এবং অ্যাকাউন্ট 4321 এর জন্য সমস্ত স্থানীয় ইনভেন্টরি পুনরুদ্ধার করতে অনুরোধটি দেখতে কেমন হবে

    GET
    https://merchantapi.googleapis.com/inventories/v1/accounts/4321/products/online~en~US~1234/localInventories</code>

অভিভাবক হল accounts/{account}/products/{product} । নোট করুন যে এই ক্ষেত্রে স্থানীয় ইনভেন্টরিস রিসোর্সের নাম আইডেন্টিফায়ারে ( accounts/ এবং products/ ) দুটি পিতামাতা অন্তর্ভুক্ত রয়েছে, কারণ অ্যাকাউন্টটি পণ্য সম্পদের মূল।

সাধারণ enums

সাধারণ enums ব্যবহার আরো সামঞ্জস্য প্রদান করে.

Destination.DestinationEnum ক্ষেত্রটি সেই সারফেসগুলিকে নির্দিষ্ট করে যার উপর আপনার সংস্থানগুলি প্রদর্শন করতে হবে৷ DestinationEnum গন্তব্য টার্গেটিং এর জন্য উপলব্ধ সমস্ত মান তালিকাভুক্ত করে এবং সাব-এপিআই জুড়ে একীভূত করা হয়, উদাহরণস্বরূপ প্রচার বৈশিষ্ট্যগুলির জন্য।

ReportingContext.ReportingContextEnum ক্ষেত্রটি সেই প্রসঙ্গটি উপস্থাপন করে যেখানে আপনার অ্যাকাউন্ট এবং পণ্যের সমস্যাগুলি প্রযোজ্য। এই ক্ষেত্রটি রিপোর্টিং পদ্ধতি জুড়ে ব্যবহার করা হয় (উদাহরণস্বরূপ, IssueSeverityPerReportingContext এর জন্য)।

পিছনের সামঞ্জস্য

আপনি মার্চেন্ট এপিআই ব্যবহার শুরু করার সাথে সাথে শপিং ইন্টিগ্রেশনের জন্য আপনার বিদ্যমান সামগ্রী API কোনো বাধা ছাড়াই কাজ করতে থাকে। আরও তথ্যের জন্য, সামঞ্জস্যতা দেখুন।

একবার আপনি আপনার সাব-এপিআইগুলিকে মার্চেন্ট এপিআইতে স্থানান্তরিত করার পরে, আমরা আপনাকে আপনার স্থানান্তরিত সাব-এপিআইগুলির জন্য শুধুমাত্র মার্চেন্ট API ব্যবহার করার পরামর্শ দিই৷

দূরবর্তী পদ্ধতি কল (gRPC) উপলব্ধতা

gRPC হল মার্চেন্ট API-এর সাথে একীভূত করার নতুন প্রস্তাবিত উপায়।

এর সুবিধার মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে:

কাস্টম ব্যাচিং বিল্ট-ইন ব্যাচিং হয়ে যায়

আপনি যখন অ্যাসিঙ্ক্রোনাস কল ব্যবহার করেন তখন ব্যাচিং আরও দক্ষতার সাথে সঞ্চালিত হয়। মার্চেন্ট এপিআই-এ ব্যাচিং অর্জন করতে সমান্তরাল কল ব্যবহার করা এবং সমকালীন অনুরোধের জন্য কীভাবে রিফ্যাক্টর কোড করবেন সে সম্পর্কে আরও জানুন।

আপনার স্থানান্তর ত্বরান্বিত করতে সাহায্য করার জন্য, আমরা ক্লায়েন্ট লাইব্রেরিগুলির সুপারিশ করি৷

মার্চেন্ট API কেনাকাটার জন্য সামগ্রী API-তে বৈশিষ্ট্যযুক্ত customBatch পদ্ধতি সমর্থন করে না। পরিবর্তে, একবারে একাধিক অনুরোধ পাঠান বা অ্যাসিঙ্ক্রোনাসভাবে আপনার কলগুলি চালান দেখুন।

নিম্নলিখিত জাভা নমুনা প্রদর্শন করে কিভাবে একটি পণ্য ইনপুট সন্নিবেশ করতে হয়।

   import com.google.api.core.ApiFuture;
import com.google.api.core.ApiFutureCallback;
import com.google.api.core.ApiFutures;
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.common.util.concurrent.MoreExecutors;
import com.google.shopping.merchant.products.v1.Availability;
import com.google.shopping.merchant.products.v1.Condition;
import com.google.shopping.merchant.products.v1.InsertProductInputRequest;
import com.google.shopping.merchant.products.v1.ProductAttributes;
import com.google.shopping.merchant.products.v1.ProductInput;
import com.google.shopping.merchant.products.v1.ProductInputsServiceClient;
import com.google.shopping.merchant.products.v1.ProductInputsServiceSettings;
import com.google.shopping.merchant.products.v1.Shipping;
import com.google.shopping.type.Price;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.stream.Collectors;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/** This class demonstrates how to insert a product input */
public class InsertProductInputAsyncSample {

  private static String getParent(String accountId) {
    return String.format("accounts/%s", accountId);
  }

  private static String generateRandomString() {
    String characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
    Random random = new Random();
    StringBuilder sb = new StringBuilder(8);
    for (int i = 0; i < 8; i++) {
      sb.append(characters.charAt(random.nextInt(characters.length())));
    }
    return sb.toString();
  }

  private static ProductInput createRandomProduct() {
    Price price = Price.newBuilder().setAmountMicros(33_450_000).setCurrencyCode("USD").build();

    Shipping shipping =
        Shipping.newBuilder().setPrice(price).setCountry("GB").setService("1st class post").build();

    Shipping shipping2 =
        Shipping.newBuilder().setPrice(price).setCountry("FR").setService("1st class post").build();

    ProductAttributes attributes =
        ProductAttributes.newBuilder()
            .setTitle("A Tale of Two Cities")
            .setDescription("A classic novel about the French Revolution")
            .setLink("https://exampleWebsite.com/tale-of-two-cities.html")
            .setImageLink("https://exampleWebsite.com/tale-of-two-cities.jpg")
            .setAvailability(Availability.IN_STOCK)
            .setCondition(Condition.NEW)
            .setGoogleProductCategory("Media > Books")
            .addGtins("9780007350896")
            .addShipping(shipping)
            .addShipping(shipping2)
            .build();

    return ProductInput.newBuilder()
        .setContentLanguage("en")
        .setFeedLabel("CH")
        .setOfferId(generateRandomString())
        .setProductAttributes(attributes)
        .build();
  }

  public static void asyncInsertProductInput(Config config, String dataSource) throws Exception {

    // Obtains OAuth token based on the user's configuration.
    GoogleCredentials credential = new Authenticator().authenticate();

    // Creates service settings using the credentials retrieved above.
    ProductInputsServiceSettings productInputsServiceSettings =
        ProductInputsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    // Creates parent to identify where to insert the product.
    String parent = getParent(config.getAccountId().toString());

    // Calls the API and catches and prints any network failures/errors.
    try (ProductInputsServiceClient productInputsServiceClient =
        ProductInputsServiceClient.create(productInputsServiceSettings)) {

      // Creates five insert product input requests with random product IDs.
      List<InsertProductInputRequest> requests = new ArrayList<>(5);
      for (int i = 0; i < 5; i++) {
        InsertProductInputRequest request =
            InsertProductInputRequest.newBuilder()
                .setParent(parent)
                // You can only insert products into datasource types of Input "API", and of Type
                // "Primary" or "Supplemental."
                // This field takes the `name` field of the datasource.
                .setDataSource(dataSource)
                // If this product is already owned by another datasource, when re-inserting, the
                // new datasource will take ownership of the product.
                .setProductInput(createRandomProduct())
                .build();

        requests.add(request);
      }

      System.out.println("Sending insert product input requests");
      List<ApiFuture<ProductInput>> futures =
          requests.stream()
              .map(
                  request ->
                      productInputsServiceClient.insertProductInputCallable().futureCall(request))
              .collect(Collectors.toList());

      // Creates callback to handle the responses when all are ready.
      ApiFuture<List<ProductInput>> responses = ApiFutures.allAsList(futures);
      ApiFutures.addCallback(
          responses,
          new ApiFutureCallback<List<ProductInput>>() {
            @Override
            public void onSuccess(List<ProductInput> results) {
              System.out.println("Inserted products below");
              System.out.println(results);
            }

            @Override
            public void onFailure(Throwable throwable) {
              System.out.println(throwable);
            }
          },
          MoreExecutors.directExecutor());

    } catch (Exception e) {
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();
    // Identifies the data source that will own the product input.
    String dataSource = "accounts/" + config.getAccountId() + "/dataSources/{datasourceId}";

    asyncInsertProductInput(config, dataSource);
  }
}

আপনি যদি Content API-এ customBatch ব্যবহার করেন এবং মার্চেন্ট API-এর জন্য এই বৈশিষ্ট্যটির প্রয়োজন হয়, তাহলে আপনার প্রতিক্রিয়াতে কেন তা আমাদের জানান।

একচেটিয়া বৈশিষ্ট্য

ভবিষ্যতের বৈশিষ্ট্যগুলি শুধুমাত্র মার্চেন্ট এপিআই-এ প্রদর্শিত হবে। (কিছু ব্যতিক্রম থাকবে, যেমন 2025 বার্ষিক ফিড স্পেক ।)

মার্চেন্ট এপিআই-এর একচেটিয়া বৈশিষ্ট্য অন্তর্ভুক্ত

  • পর্যালোচনা API. আপনার পণ্য এবং দোকান রেটিং বাস্তবায়ন এবং পরিচালনা করতে পর্যালোচনা ব্যবহার করুন. আরও তথ্যের জন্য বিক্রেতা পর্যালোচনা এবং পণ্য পর্যালোচনা দেখুন।
  • বিজ্ঞপ্তি : একটি অ্যাকাউন্টের পণ্য ডেটাতে পরিবর্তনের জন্য পুশ বিজ্ঞপ্তি পেতে সাইন আপ করুন৷

দাম

মার্চেন্ট কমন প্যাকেজে Price জন্য কী পরিবর্তন করা হয়েছে তা এখানে:

কেনাকাটার জন্য সামগ্রী API বণিক API
পরিমাণ ক্ষেত্র value:string amountMicros:int64
মুদ্রা ক্ষেত্র currency:string currencyCode:string

Price পরিমাণ এখন মাইক্রোতে রেকর্ড করা হয়েছে, যেখানে 1 মিলিয়ন মাইক্রো আপনার মুদ্রার স্ট্যান্ডার্ড ইউনিটের সমতুল্য।

কেনাকাটার জন্য সামগ্রী API-তে, Price একটি স্ট্রিং আকারে একটি দশমিক সংখ্যা ছিল।

পরিমাণ ক্ষেত্রের নাম value থেকে পরিবর্তিত হয়েছে amountMicros

মুদ্রা ক্ষেত্রের নাম currency থেকে currencyCode কোডে পরিবর্তিত হয়েছে। ফরম্যাটটি ISO 4217 হতে চলেছে।

সর্বশেষ আপডেট এবং ঘোষণা

আরও দানাদার আপডেটের জন্য, প্রতিটি সাব-এপিআই-এর জন্য নির্দিষ্ট রিলিজ নোটগুলি দেখুন। আরও নিয়মিত সমষ্টিগত মার্চেন্ট API আপডেটের জন্য, আমাদের সাম্প্রতিক আপডেটগুলি পর্যালোচনা করুন।

আরও নির্দিষ্ট বিবরণের জন্য এবং Merchant API সম্পর্কে আরও জানতে, আরও বিশদ বিবরণের জন্য আমাদের ডেভেলপার সাইট ওভারভিউ এবং সামগ্রিক মাইগ্রেশন গাইড দেখুন।

মার্চেন্ট এপিআই এবং এর সাব-এপিআই সম্পর্কে বিস্তারিত জানার জন্য মার্চেন্ট এপিআই ডিজাইন দেখুন।