Merchant API का इस्तेमाल करके प्रॉडक्ट की समीक्षा करना

प्रॉडक्ट की समीक्षाएं, खरीदारों के लिए Shopping पर खरीदारी करने के अनुभव का एक अहम हिस्सा हैं. ये रेटिंग और समीक्षाएं, प्रॉडक्ट के बारे में रिसर्च करने और खरीदारी से जुड़े फ़ैसले लेने में खरीदारों की मदद करती हैं. प्रॉडक्ट की अच्छी समीक्षाओं से, सेलर के प्रॉडक्ट पेजों पर ज़्यादा खरीदार आ सकते हैं. इन सोर्स में सेलर, समीक्षा एग्रीगेटर, समीक्षा करने वाली साइटें, और Google का इस्तेमाल करने वाले लोग शामिल हैं.

इस पेज पर, Merchant API का इस्तेमाल करके प्रॉडक्ट की समीक्षाओं को मैनेज करने का तरीका बताया गया है.

ज़रूरी शर्तें

Google को आपसे कुछ खास जानकारी चाहिए. आपके पास ये चीज़ें होनी चाहिए:

  • Google Merchant Center में, प्रॉडक्ट की समीक्षाओं वाला चालू फ़ीड.
  • आपका खाता, प्रॉडक्ट रेटिंग प्रोग्राम में रजिस्टर होना चाहिए. अगर आपको यह पक्का नहीं है कि आपने पहले से रजिस्टर किया है या नहीं, तो Merchant Center पर जाएं. अगर आपने प्रॉडक्ट रेटिंग प्रोग्राम में रजिस्टर नहीं किया है, तो इस बारे में ज़्यादा जानें.
  • Merchant API का इस्तेमाल करके प्रॉडक्ट की समीक्षा करने के लिए, इस फ़ॉर्म का इस्तेमाल करके अनुरोध सबमिट करें.

डेटा स्रोत बनाएं

प्रॉडक्ट की समीक्षा वाला फ़ीड बनाने के लिए, datasource.create API का इस्तेमाल करें. अगर प्रॉडक्ट की समीक्षा वाला कोई मौजूदा फ़ीड उपलब्ध है, तो accounts.dataSources.get का इस्तेमाल करके accounts.dataSources.name फ़ेच करें. अनुरोध का फ़ॉर्म इस तरह का होना चाहिए:

POST https://merchantapi.googleapis.com/datasources/v1beta/accounts/{account}/dataSources/{datasource}

उदाहरण

इस उदाहरण में, एक सामान्य अनुरोध और जवाब दिखाया गया है.

अनुरोध

POST https://merchantapi.googleapis.com/datasources/v1beta/accounts/123/dataSources {"displayName": "test api feed", "productReviewDataSource":{} }

रिस्पॉन्स

{
  "name": "accounts/123/dataSources/1000000573361824",
  "dataSourceId": "1000000573361824",
  "displayName": "test api feed",
  "productReviewDataSource": {},
  "input": "API"
}

ज़्यादा जानकारी के लिए, व्यापारी/कंपनी/कारोबारी के डेटा सोर्स एपीआई की खास जानकारी देखें.

प्रॉडक्ट की समीक्षा बनाना

प्रॉडक्ट की समीक्षा बनाने या अपडेट करने के लिए, accounts.productreviews.insert तरीके का इस्तेमाल किया जा सकता है. accounts.productreviews.insert तरीका, इनपुट के तौर पर productreview संसाधन और डेटा सोर्स का नाम लेता है. अगर यह कामयाब होता है, तो यह नया या अपडेट किया गया productreview दिखाता है. प्रॉडक्ट की समीक्षा बनाने के लिए, आपके पास datasource.name होना चाहिए.

अनुरोध का फ़ॉर्म:

POST https://merchantapi.googleapis.com/reviews/v1beta/{parent=accounts/{ACCOUNT_ID}/}productReviews:insert

यहां दिए गए अनुरोध के सैंपल से पता चलता है कि प्रॉडक्ट की समीक्षा कैसे बनाई जा सकती है.

POST https://merchantapi.googleapis.com/reviews/v1beta/accounts/{ACCOUNT_ID}/productReviews:insert?dataSource=accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}

  productReviewId = 'my_product_review'
  attributes {
    aggregatorName = 'aggregator_name'
    subclientName = 'subclient_name'
    publisherName = 'publisher_name'
    publisherFavicon = 'https://www.google.com/favicon.ico'
    reviewerId = 'reviewer_id'
    reviewerIsAnonymous = false
    reviewerUsername = 'reviewer_username'
    reviewLanguage = 'en'
    reviewCountry = 'US'
    reviewTime = '2024-04-01T00:00:00Z'
    title = 'Incredible product'
    content = 'This is an incredible product.'
    pros = ['pro1', 'pro2']
    cons = ['con1', 'con2']
    reviewLink = {
      type = 'SINGLETON'
      link = 'https://www.google.com'
    }
    reviewerImageLink = 'https://www.google.com/reviewer.png'
    minRating = 1
    maxRating = 10
    rating = 8.5
    productName = 'product_name'
    productLink = 'https://www.google.com/product'
    asins = ['asin1', 'asin2']
    gtins = ['gtin1', 'gtin2']
    mpns = ['mpn1', 'mpn2']
    skus = ['sku1', 'sku2']
    brands = ['brand1', 'brand2']
    isSpam = false
    collectionMethod = 'POST_FULFILLMENT'
    transactionId = 'transaction_id'
  }

प्रॉडक्ट की समीक्षा बनाने के बाद, उसे दिखने में कुछ समय लग सकता है.

यहां एक सैंपल दिया गया है. इसका इस्तेमाल, एक साथ कई प्रॉडक्ट की समीक्षाएं डालने के लिए किया जा सकता है:

Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.reviews.v1beta.ListProductReviewsRequest;
import com.google.shopping.merchant.reviews.v1beta.ProductReview;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceClient;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceClient.ListProductReviewsPagedResponse;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceSettings;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/** This class demonstrates how to list all the product reviews in a given account. */
public class ListProductReviewsSample {

  public static void listProductReviews(String accountId) throws Exception {
    GoogleCredentials credential = new Authenticator().authenticate();

    ProductReviewsServiceSettings productReviewsServiceSettings =
        ProductReviewsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    try (ProductReviewsServiceClient productReviewsServiceClient =
        ProductReviewsServiceClient.create(productReviewsServiceSettings)) {

      ListProductReviewsRequest request =
          ListProductReviewsRequest.newBuilder()
              .setParent(String.format("accounts/%s", accountId))
              .build();

      System.out.println("Sending list product reviews request:");
      ListProductReviewsPagedResponse response =
          productReviewsServiceClient.listProductReviews(request);

      int count = 0;

      // Iterates over all rows in all pages and prints all product reviews.
      for (ProductReview element : response.iterateAll()) {
        System.out.println(element);
        count++;
      }
      System.out.print("The following count of elements were returned: ");
      System.out.println(count);
    } catch (Exception e) {
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();
    listProductReviews(config.getAccountId().toString());
  }
}

प्रॉडक्ट की समीक्षा वापस पाना

प्रॉडक्ट की समीक्षा देखने के लिए, accounts.productreviews.get का इस्तेमाल करें. यह रीड-ओनली है. इसके लिए, नाम फ़ील्ड में आपके accountId और प्रॉडक्ट की समीक्षा का आईडी डालना ज़रूरी है. GET तरीका, प्रॉडक्ट की समीक्षा से जुड़ा रिसॉर्स दिखाता है.

GET https://merchantapi.googleapis.com/reviews/v1beta/{name=accounts/{ACCOUNT_ID}/productReviews/*}

प्रॉडक्ट की समीक्षा पाने के लिए, यहां दिया गया सैंपल इस्तेमाल करें:

Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.reviews.v1beta.GetProductReviewRequest;
import com.google.shopping.merchant.reviews.v1beta.ProductReview;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceClient;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceSettings;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/** This class demonstrates how to get a product review. */
public class GetProductReviewSample {

  public static void getProductReview(String accountId, String productReviewId) throws Exception {
    GoogleCredentials credential = new Authenticator().authenticate();

    ProductReviewsServiceSettings productReviewsServiceSettings =
        ProductReviewsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    try (ProductReviewsServiceClient productReviewsServiceClient =
        ProductReviewsServiceClient.create(productReviewsServiceSettings)) {

      GetProductReviewRequest request =
          GetProductReviewRequest.newBuilder()
              .setName(String.format("accounts/%s/productReviews/%s", accountId, productReviewId))
              .build();

      System.out.println("Sending get product review request:");
      ProductReview response = productReviewsServiceClient.getProductReview(request);
      System.out.println("Product review retrieved successfully:");
      System.out.println(response.getName());
    } catch (Exception e) {
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();
    String productReviewId = "YOUR_PRODUCT_REVIEW_ID";
    getProductReview(config.getAccountId().toString(), productReviewId);
  }
}

प्रॉडक्ट की समीक्षाओं की सूची

प्रॉडक्ट की बनाई गई सभी समीक्षाएं देखने के लिए, productreviews.list तरीके का इस्तेमाल करें.

GET https://merchantapi.googleapis.com/reviews/v1beta/{parent=accounts/{ACCOUNT_ID}}/productReviews

यहां एक सैंपल दिया गया है. इसका इस्तेमाल करके, किसी प्रॉडक्ट की सभी समीक्षाओं की सूची बनाई जा सकती है:

Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.reviews.v1beta.ListProductReviewsRequest;
import com.google.shopping.merchant.reviews.v1beta.ProductReview;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceClient;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceClient.ListProductReviewsPagedResponse;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceSettings;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/** This class demonstrates how to list all the product reviews in a given account. */
public class ListProductReviewsSample {

  public static void listProductReviews(String accountId) throws Exception {
    GoogleCredentials credential = new Authenticator().authenticate();

    ProductReviewsServiceSettings productReviewsServiceSettings =
        ProductReviewsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    try (ProductReviewsServiceClient productReviewsServiceClient =
        ProductReviewsServiceClient.create(productReviewsServiceSettings)) {

      ListProductReviewsRequest request =
          ListProductReviewsRequest.newBuilder()
              .setParent(String.format("accounts/%s", accountId))
              .build();

      System.out.println("Sending list product reviews request:");
      ListProductReviewsPagedResponse response =
          productReviewsServiceClient.listProductReviews(request);

      int count = 0;

      // Iterates over all rows in all pages and prints all product reviews.
      for (ProductReview element : response.iterateAll()) {
        System.out.println(element);
        count++;
      }
      System.out.print("The following count of elements were returned: ");
      System.out.println(count);
    } catch (Exception e) {
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();
    listProductReviews(config.getAccountId().toString());
  }
}

प्रॉडक्ट की समीक्षाएं मिटाना

प्रॉडक्ट की समीक्षा मिटाने के लिए, accounts.productreviews.delete का इस्तेमाल करें. GET तरीके की तरह ही, इस तरीके के लिए भी प्रॉडक्ट की समीक्षा के नाम वाले फ़ील्ड की ज़रूरत होती है. यह फ़ील्ड, समीक्षा बनाने के दौरान दिखता है.

DELETE https://merchantapi.googleapis.com/reviews/v1beta/{name=accounts/{ACCOUNT_ID}/productReviews/*}

प्रॉडक्ट की समीक्षा मिटाने के लिए, यहां दिया गया सैंपल इस्तेमाल करें:

Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.reviews.v1beta.DeleteProductReviewRequest;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceClient;
import com.google.shopping.merchant.reviews.v1beta.ProductReviewsServiceSettings;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/** This class demonstrates how to delete a product review. */
public class DeleteProductReviewSample {

  public static void deleteProductReview(String accountId, String productReviewId)
      throws Exception {
    GoogleCredentials credential = new Authenticator().authenticate();

    ProductReviewsServiceSettings productReviewsServiceSettings =
        ProductReviewsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    try (ProductReviewsServiceClient productReviewsServiceClient =
        ProductReviewsServiceClient.create(productReviewsServiceSettings)) {

      DeleteProductReviewRequest request =
          DeleteProductReviewRequest.newBuilder()
              .setName(String.format("accounts/%s/productReviews/%s", accountId, productReviewId))
              .build();

      System.out.println("Sending delete product review request:");
      productReviewsServiceClient.deleteProductReview(request);
      System.out.println("Product review deleted successfully");
    } catch (Exception e) {
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();
    String productReviewId = "YOUR_PRODUCT_REVIEW_ID";
    deleteProductReview(config.getAccountId().toString(), productReviewId);
  }
}

प्रॉडक्ट की समीक्षा की स्थिति

प्रॉडक्ट की समीक्षा वाले संसाधन में, अन्य एपीआई की तरह ही स्थिति होती है. यह संसाधन का एक अहम हिस्सा है और समस्या और डेस्टिनेशन के एक ही स्ट्रक्चर का पालन करता है.