व्यापार प्रोत्साहन एपीआई के बारे में खास जानकारी

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

अपने प्रॉडक्ट में प्रमोशन जोड़ने पर, खरीदारों को खास ऑफ़र का लिंक दिखता है. उदाहरण के लिए, "15% की छूट" या "मुफ़्त शिपिंग". ऑफ़र के लिंक से, आपके प्रॉडक्ट में खरीदारों की दिलचस्पी बढ़ सकती है. इससे आपके प्रॉडक्ट के बिकने की संभावना भी बढ़ जाती है. सभी प्रमोशन, चेकआउट के दौरान या बिक्री की जगह पर लागू होते हैं.

ज़्यादा जानकारी के लिए, प्रमोशन के बारे में बुनियादी जानकारी देखें.

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

Google पर प्रमोशन दिखाने के लिए, आपको कारोबार और प्रॉडक्ट की खास जानकारी Google को देनी होगी. आपके पास ये चीज़ें होनी चाहिए:

इसके अलावा, आपको अपने व्यापारी/कंपनी खाते को प्रमोशन प्रोग्राम में रजिस्टर करना होगा. अगर आपको नहीं पता कि आपने पहले से रजिस्टर किया है या नहीं, तो Merchant Center पर जाकर देखें.

अगर आपने रजिस्टर नहीं किया है, तो अनुरोध फ़ॉर्म भरें. जब आपका कारोबार इसे लागू करने के लिए तैयार हो जाएगा, तब प्रमोशन टीम आपको इसकी सूचना देगी.

ज़्यादा जानकारी के लिए, शामिल होने के लिए ज़रूरी शर्तें और नीतियां देखें.

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

प्रमोशन का डेटा सोर्स बनाने के लिए, accounts.dataSources.create का इस्तेमाल किया जा सकता है. अगर प्रमोशन का कोई मौजूदा डेटा सोर्स उपलब्ध है, तो सभी डेटा सोर्स को वापस पाने के लिए, accounts.dataSources.list वाले तरीके का इस्तेमाल करें. इसके बाद, प्रमोशन बनाने के लिए, प्रमोशन डेटा सोर्स के name फ़ील्ड का इस्तेमाल किया जा सकता है.

प्रमोशन जोड़ने के लिए डेटा सोर्स बनाने का तरीका, इस अनुरोध में बताया गया है:

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

{
  "displayName": "{DISPLAY_NAME}",
  "promotionDataSource": {
    "contentLanguage": "{CONTENT_LANGUAGE}",
    "targetCountry": "{TARGET_COUNTRY}"
  }
}

इनकी जगह ये डालें:

  • {ACCOUNT_ID}: आपके खाते का यूनीक आइडेंटिफ़ायर, जैसा कि Merchant Center के यूज़र इंटरफ़ेस (यूआई) में दिखता है.
  • {DISPLAY_NAME}: डेटा सोर्स का डिसप्ले नेम.
  • {CONTENT_LANGUAGE}: डेटा सोर्स में मौजूद प्रॉडक्ट का दो अक्षर वाला ISO 639-1 भाषा कोड.
  • {TARGET_COUNTRY}: टारगेट किए गए उस देश का CLDR इलाके का कोड जहां आपको प्रमोशन दिखाने हैं.

अनुरोध पूरा होने के बाद, आपको यह जवाब दिखेगा. इसमें, नए बनाए गए प्रमोशन के डेटा सोर्स की जानकारी शामिल होती है:

{
  "name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
  "dataSourceId": "{DATASOURCE_ID}",
  "displayName": "{DISPLAY_NAME}",
  "promotionDataSource": {
    "targetCountry": "{TARGET_COUNTRY}",
    "contentLanguage": "{CONTENT_LANGUAGE}"
  },
  "input": "API"
}

प्रमोशन बनाना

प्रमोशन बनाने या अपडेट करने के लिए, accounts.promotions.insert तरीका अपनाएं. accounts.promotions.insert का तरीका, इनपुट के तौर पर promotions संसाधन और डेटा सोर्स का नाम लेता है. अगर प्रोमोशन सेट अप हो जाता है, तो यह नया या अपडेट किया गया प्रोमोशन दिखाता है.

प्रमोशन बनाने के लिए, डेटा सोर्स का नाम डालना ज़रूरी है. आपको अपने अनुरोध में इन फ़ील्ड की वैल्यू भी देनी होंगी:

  • contentLanguage
  • redemptionChannel
  • promotionId
  • targetCountry
  • attributes.offerType
  • attributes.genericRedemptionCode
  • attributes.couponValueType
  • attributes.productApplicability
  • attributes.promotionEffectiveTimePeriod.endTime
  • attributes.promotionEffectiveTimePeriod.startTime
  • attributes.longTitle

Google आपके प्रमोशन को डिस्ट्रिब्यूट करने से पहले उनकी समीक्षा करके उन्हें मंज़ूरी देता है. ज़्यादा जानकारी के लिए, प्रमोशन को मंज़ूरी देने की प्रोसेस देखें.

हमारा सुझाव है कि आप प्रमोशन की नीतियों को पढ़ें. इससे यह पक्का करने में मदद मिलेगी कि आपके बनाए गए प्रमोशन, शॉपिंग विज्ञापनों की नीतियों का पालन करते हों और उनसे खरीदारों को फ़ायदा मिलता हो.

यहां दिए गए अनुरोध में, ऑनलाइन प्रमोशन बनाने का तरीका बताया गया है:

POST https://merchantapi.googleapis.com/promotions/v1beta/accounts/{ACCOUNT_ID}/promotions:insert

{
  "promotion": {
    "name": "{PROMOTION_NAME}",
    "promotionId": "{PROMOTION_ID}",
    "targetCountry": "{TARGET_COUNTRY}",
    "redemptionChannel": [
      "ONLINE"
    ],
    "contentLanguage": "{CONTENT_LANGUAGE}",
    "attributes": {
      "promotionDisplayTimePeriod": {
        "endTime": "{PROMOTION_END_TIME}",
        "startTime": "{PROMOTION_START_TIME}"
      },
      "offerType": "{OFFER_TYPE}",
      "longTitle": "{LONG_TITLE}"
    }
  },
  "dataSource": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}"
}

प्रमोशन आईडी सेट करने पर लागू होने वाले नियमों के बारे में जानने के लिए, प्रमोशन आईडी एट्रिब्यूट के लिए ज़रूरी शर्तें लेख पढ़ें.

ज़रूरी offerType फ़ील्ड के लिए मान्य वैल्यू, NO_CODE और GENERIC_CODE हैं. अगर इनमें से कोई एक वैल्यू नहीं दी जाती है, तो एपीआई रिक्वेस्ट एचटीटीपी 400 [offer_type] validation/missing_required: Invalid or missing required attribute: offer_type जवाब के साथ पूरा नहीं होता. अगर आपने ज़रूरी फ़ील्ड में से कोई भी फ़ील्ड नहीं भरा है, तो आपको गड़बड़ी का ऐसा ही मैसेज दिखेगा.

अगर attributes.genericRedemptionCode फ़ील्ड के लिए कोई वैल्यू नहीं दी जाती है, तो अनुरोध पूरा नहीं होता और एचटीटीपी 400 रिस्पॉन्स [genericRedemptionCode] No redemption code provided मिलता है.

promotion.attributes.promotionDisplayTimePeriod.startTime और promotion.attributes.promotionDisplayTimePeriod.endTime फ़ील्ड की वैल्यू, yyyy-mm-ddThh:mm:ssZ फ़ॉर्मैट में होनी चाहिए. पक्का करें कि इन फ़ील्ड की वैल्यू को, आने वाले समय की तारीखों से बदल दिया गया हो.

ज़्यादा जानकारी के लिए, प्रमोशन के डेटा स्पेसिफ़िकेशन देखें.

प्रमोशन बनाने के सबसे सही तरीकों के बारे में जानने के लिए, प्रमोशन बनाने के सबसे सही तरीके लेख पढ़ें.

प्रमोशन से जुड़े एट्रिब्यूट की सूची के लिए, स्ट्रक्चर्ड डेटा एट्रिब्यूट जोड़ना लेख पढ़ें.

प्रमोशन बनाने का अनुरोध पूरा होने के बाद, एपीआई का इस्तेमाल करके प्रमोशन को वापस पाने या Merchant Center में दिखने में कुछ मिनट लग सकते हैं.

यहां एक सैंपल दिया गया है. इसका इस्तेमाल, एक से ज़्यादा प्रमोशन को अलग-अलग समय पर डालने के लिए किया जा सकता है:

Java

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.protobuf.Timestamp;
import com.google.shopping.merchant.promotions.v1beta.Attributes;
import com.google.shopping.merchant.promotions.v1beta.CouponValueType;
import com.google.shopping.merchant.promotions.v1beta.InsertPromotionRequest;
import com.google.shopping.merchant.promotions.v1beta.OfferType;
import com.google.shopping.merchant.promotions.v1beta.ProductApplicability;
import com.google.shopping.merchant.promotions.v1beta.Promotion;
import com.google.shopping.merchant.promotions.v1beta.PromotionsServiceClient;
import com.google.shopping.merchant.promotions.v1beta.PromotionsServiceSettings;
import com.google.shopping.merchant.promotions.v1beta.RedemptionChannel;
import com.google.shopping.type.CustomAttribute;
import com.google.shopping.type.Destination.DestinationEnum;
import com.google.type.Interval;
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 multiple promotions asynchronously. */
public class InsertPromotionsAsyncSample {

  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 Promotion createPromotion(String accountId) {
    String merchantPromotionId = generateRandomString();

    Attributes attributes =
        Attributes.newBuilder()
            .setProductApplicability(ProductApplicability.ALL_PRODUCTS)
            .setOfferType(OfferType.GENERIC_CODE)
            .setGenericRedemptionCode("ABCD1234")
            .setLongTitle("My promotion")
            .setCouponValueType(CouponValueType.PERCENT_OFF)
            .addPromotionDestinations(DestinationEnum.SHOPPING_ADS)
            .setPercentOff(10)
            // Note that promotions have a 6-month limit.
            // For more information, read here: https://support.google.com/merchants/answer/2906014
            // Also note that only promotions valid within the past 365 days are shown in the UI.
            .setPromotionEffectiveTimePeriod(
                Interval.newBuilder()
                    .setStartTime(Timestamp.newBuilder().setSeconds(1726842472))
                    .setEndTime(Timestamp.newBuilder().setSeconds(1726842473))
                    .build())
            .build();

    return Promotion.newBuilder()
        .setName(String.format("accounts/%s/merchantPromotions/%s", accountId, merchantPromotionId))
        .setPromotionId(merchantPromotionId)
        .setContentLanguage("fr")
        .setTargetCountry("CH")
        .addRedemptionChannel(RedemptionChannel.ONLINE)
        .setAttributes(attributes)
        // Custom attributes allow you to add additional information which is not available in
        // Attributes. For example, you might want to pilot experimental functionality.
        .addCustomAttributes(
            CustomAttribute.newBuilder()
                .setName("another example name")
                .setValue("another example value")
                .build())
        .build();
  }

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

    PromotionsServiceSettings merchantPromotionsServiceSettings =
        PromotionsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    try (PromotionsServiceClient merchantPromotionsServiceClient =
        PromotionsServiceClient.create(merchantPromotionsServiceSettings)) {

      // Arbitrarily creates five merchant promotions with random IDs.
      List<InsertPromotionRequest> requests = new ArrayList<>();
      for (int i = 0; i < 5; i++) {
        InsertPromotionRequest request =
            InsertPromotionRequest.newBuilder()
                .setParent(String.format("accounts/%s", accountId))
                .setPromotion(createPromotion(accountId))
                .setDataSource(String.format("accounts/%s/dataSources/%s", accountId, dataSourceId))
                .build();
        requests.add(request);
      }

      // Inserts the merchant promotions.
      List<ApiFuture<Promotion>> futures =
          requests.stream()
              .map(
                  request ->
                      merchantPromotionsServiceClient.insertPromotionCallable().futureCall(request))
              .collect(Collectors.toList());

      // Creates callback to handle the responses when all are ready.
      ApiFuture<List<Promotion>> responses = ApiFutures.allAsList(futures);
      ApiFutures.addCallback(
          responses,
          new ApiFutureCallback<List<Promotion>>() {
            @Override
            public void onSuccess(List<Promotion> results) {
              System.out.println("Inserted merchant promotions 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();
    asyncInsertPromotions(config.getAccountId().toString(), "<YOUR_DATA_SOURCE_ID>");
  }
}

यहां प्रमोशन के कुछ सैंपल दिए गए हैं. इनका इस्तेमाल करके, प्रमोशन शुरू किया जा सकता है.

सभी प्रॉडक्ट और सभी स्टोर पर लागू होने वाला स्थानीय प्रमोशन

यहां दिए गए अनुरोध के सैंपल में, ऐसा स्थानीय प्रमोशन बनाने का तरीका बताया गया है जो आपके Merchant Center खाते के सभी प्रॉडक्ट और लिंक किए गए Business Profile खाते में जोड़े गए सभी स्टोर पर लागू होता है.

POST https://merchantapi.googleapis.com/promotions/v1beta/accounts/{ACCOUNT_ID}/promotions:insert

{
  "promotion": {
    "promotionId": "buy_2_get_10_off",
    "contentLanguage": "en",
    "targetCountry": "US",
    "redemptionChannel": [
      "IN_STORE"
    ],
    "attributes": {
      "longTitle": "Buy 2 and get 10$ OFF purchase",
      "productApplicability": "ALL_PRODUCTS",
      "offerType": "NO_CODE",
      "couponValueType": "BUY_M_GET_MONEY_OFF",
      "promotionDisplayTimePeriod": {
        "startTime": "2024-2-06T00:47:44Z",
        "endTime": "2024-5-06T00:47:44Z"
      },
      "promotionEffectiveTimePeriod": {
        "startTime": "2024-2-06T00:47:44Z",
        "endTime": "2024-5-06T00:47:44Z"
      },
      "moneyOffAmount": {
        "amountMicros": "1000000",
        "currencyCode": "USD"
      },
      "minimumPurchaseQuantity": 2,
      "storeApplicability": "ALL_STORES",
      "promotionUrl": "http://promotionnew4url.com/",
      "promotionDestinations": [
        "LOCAL_INVENTORY_ADS"
      ],
    }
  },
  "dataSource": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}"
}

productApplicability फ़ील्ड को भरना ज़रूरी है. इससे यह पता चलता है कि प्रमोशन सभी प्रॉडक्ट पर लागू होगा या सिर्फ़ कुछ खास प्रॉडक्ट पर. ALL_PRODUCTS और SPECIFIC_PRODUCTS को वैल्यू के तौर पर इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, अपने प्रमोशन के लिए प्रॉडक्ट चुनना लेख पढ़ें.

couponValueType फ़ील्ड को भरना ज़रूरी है. इससे पता चलता है कि आपने किस तरह का प्रमोशन किया है. इस्तेमाल की जा सकने वाली वैल्यू की सूची देखने के लिए, कूपन की वैल्यू किस तरह की है देखें. आपने कूपन की जिस वैल्यू को चुना है उसके आधार पर, कुछ एट्रिब्यूट की वैल्यू सबमिट करना ज़रूरी है.

minimumPurchaseQuantity फ़ील्ड की मदद से, प्रमोशन को रिडीम करने के लिए, खरीदारी की कम से कम संख्या की वैल्यू सेट की जा सकती है. ज़्यादा जानकारी के लिए, प्रमोशन को रिडीम करने के लिए, खरीदारी के लिए ज़रूरी कम से कम संख्या देखें.

इसी तरह, प्रमोशन को रिडीम करने के लिए ज़रूरी कम से कम खरीदारी की रकम सेट करने के लिए, minimumPurchaseAmount फ़ील्ड का इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, खरीदारी के लिए ज़रूरी कम से कम रकम देखें.

लोकल प्रमोशन बनाने के लिए, आपको जो वैल्यू देनी होंगी उनके बारे में ज़्यादा जानने के लिए, लोकल प्रमोशन के लिए डेटा सोर्स की खास बातें देखें.

रिडीम करने के लिए कोड की मदद से, चुनिंदा प्रॉडक्ट पर लागू होने वाला ऑनलाइन प्रमोशन

यहां दिए गए अनुरोध के सैंपल में, रिडेंप्शन कोड के साथ चुने गए प्रॉडक्ट पर लागू होने वाला ऑनलाइन प्रमोशन बनाने का तरीका बताया गया है.

POST https://merchantapi.googleapis.com/promotions/v1beta/accounts/{ACCOUNT_ID}/promotions:insert

{
 "promotion": {
   "promotionId": "25_pct_off",
   "contentLanguage": "en",
   "targetCountry": "US",
   "redemptionChannel": [
     "ONLINE"
   ],
   "attributes": {
     "longTitle": "10% off on selected items",
     "productApplicability": "SPECIFIC_PRODUCTS",
     "offerType": "GENERIC_CODE",
     "genericRedemptionCode": "SPRINGSALE",
     "couponValueType": "PERCENT_OFF",
     "promotionDisplayTimePeriod": {
       "startTime": "2024-2-06T00:47:44Z",
       "endTime": "2024-5-06T00:47:44Z"
     },
     "promotionEffectiveTimePeriod": {
       "startTime": "2024-2-06T00:47:44Z",
       "endTime": "2024-5-06T00:47:44Z"
     },
     "percentOff": 25,
     "promotionDestinations": [
       "FREE_LISTINGS"
     ],
     "itemIdInclusion": [
       "1499860100",
       "1499860101",
       "1499860102",
       "1499860103",
       "1499860104"
     ],
   }
 },
 "dataSource": "accounts/{ACCOUNT_ID}/dataSources/1000000573361824"
}

प्रचार वाला कार्ड देखें

कोई प्रमोशन देखने के लिए, accounts.promotions.get का इस्तेमाल करें. यह GET अनुरोध, सिर्फ़ पढ़ने के लिए है. इसके लिए, आपका merchantId और प्रमोशन का आईडी होना ज़रूरी है. GET वाला तरीका, उससे जुड़ा प्रमोशन संसाधन दिखाता है.

उदाहरण के लिए:

GET https://merchantapi.googleapis.com/promotions/v1beta/accounts/{ACCOUNT_ID}/promotions/{PROMOTION_ID}

इनकी जगह ये डालें:

  • {ACCOUNT_ID}: आपके Merchant Center खाते का यूनीक आइडेंटिफ़ायर.
  • {PROMOTION_ID}: उस प्रमोशन का यूनीक आइडेंटिफ़ायर जिसे आपको वापस पाना है. फ़ॉर्मैट {CHANNEL}~{CONTENT_LANGUAGE}~{TARGET_COUNTRY}~{PROMOTION_ID} है.

ध्यान दें कि नए बनाए गए प्रमोशन को एपीआई का इस्तेमाल करके वापस पाने में कुछ मिनट लगते हैं.

स्थानीय प्रमोशन देखना

यहां दिए गए सैंपल अनुरोध से, वह लोकल प्रमोशन मिलता है जिसका प्रमोशन आईडी in_store~en~US~buy_2_get_10_off है.

GET https://merchantapi.googleapis.com/promotions/v1beta/accounts/{ACCOUNT_ID}/promotions/in_store~en~US~buy_2_get_10_off

अनुरोध पूरा होने के बाद, आपको यह रिस्पॉन्स दिखेगा:

{
 "name": "accounts/{ACCOUNT_ID}/promotions/in_store~en~US~buy_2_get_10_off",
 "promotionId": "buy_2_get_10_off",
 "contentLanguage": "en",
 "targetCountry": "US",
 "redemptionChannel": [
   "IN_STORE"
 ],
 "attributes": {
   "longTitle": "Buy 2 and get 10$ OFF purchase",
   "productApplicability": "ALL_PRODUCTS",
   "offerType": "NO_CODE",
   "couponValueType": "BUY_M_GET_MONEY_OFF",
   "promotionDisplayTimePeriod": {
     "startTime": "2024-2-06T00:47:44Z",
     "endTime": "2024-5-06T00:47:44Z"
   },
   "promotionEffectiveTimePeriod": {
     "startTime": "2024-2-06T00:47:44Z",
     "endTime": "2024-5-06T00:47:44Z"
   },
   "moneyOffAmount": {
     "amountMicros": "1000000",
     "currencyCode": "USD"
   },
   "minimumPurchaseQuantity": 2,
   "storeApplicability": "ALL_STORES",
   "promotionUrl": "http://promotionnew4url.com/",
   "promotionDestinations": [
     "LOCAL_INVENTORY_ADS"
   ],
 }
 "dataSource": "accounts/{ACCOUNT_ID}/dataSources/1000000573361824"
}

इस सैंपल में moneyOffAmount फ़ील्ड, प्रमोशन में दी गई छूट की जानकारी देता है. ज़्यादा जानकारी के लिए, प्रमोशन के लिए तय की गई छूट की रकम देखें.

इस सैंपल में मौजूद promotionUrl फ़ील्ड, स्टोर की वेबसाइट का लिंक देता है. यहां खरीदारों को प्रमोशन के बारे में ज़्यादा जानकारी मिल सकती है. अगर promotionUrl फ़ील्ड शामिल नहीं किया जाता है, तो स्थानीय इन्वेंट्री विज्ञापनों के प्रमोशन में गड़बड़ी का मैसेज दिखता है.

ऑनलाइन प्रमोशन देखना

यहां दिए गए सैंपल अनुरोध में, एक ऐसा ऑनलाइन प्रमोशन दिखाया गया है जिसका प्रमोशन आईडी online~en~US~25_pct_off है.

GET https://merchantapi.googleapis.com/promotions/v1beta/accounts/{ACCOUNT_ID}/promotions/online~en~US~25_pct_off
{
 "name": "accounts/{ACCOUNT_ID}/promotions/online~en~US~25_pct_off",
 "promotionId": "25_pct_off",
 "contentLanguage": "en",
 "targetCountry": "US",
 "redemptionChannel": [
   "ONLINE"
 ],
 "attributes": {
   "longTitle": "10% off on selected items",
   "productApplicability": "SPECIFIC_PRODUCTS",
   "offerType": "GENERIC_CODE",
   "genericRedemptionCode": "WINTERGIFT",
   "couponValueType": "PERCENT_OFF",
   "promotionDisplayTimePeriod": {
     "startTime": "2024-2-06T00:47:44Z",
     "endTime": "2024-5-06T00:47:44Z"
   },
   "promotionEffectiveTimePeriod": {
     "startTime": "2024-2-06T00:47:44Z",
     "endTime": "2024-5-06T00:47:44Z"
   },
   "percentOff": 25,
   "promotionDestinations": [
     "FREE_LISTINGS"
   ],
   "itemIdInclusion": [
     "1499860100",
     "1499860101",
     "1499860102",
     "1499860103",
     "1499860104"
   ],
 }
 "dataSource": "accounts/{ACCOUNT_ID}/dataSources/{dataSource}"
}

इस सैंपल में इस्तेमाल किए गए itemIdInclusion फ़ील्ड में, उन प्रॉडक्ट के बारे में बताया गया है जो प्रमोशन के लिए ज़रूरी शर्तें पूरी करते हैं. ज़्यादा जानकारी के लिए, प्रमोशन के लिए प्रॉडक्ट आईडी लेख पढ़ें.

प्रमोशन की सूची

बनाए गए सभी प्रमोशन देखने के लिए, promotions.list तरीका अपनाएं.

GET https://merchantapi.googleapis.com/promotions/v1beta/{ACCOUNT_ID}/promotions

रिस्पॉन्स में, आपके खाते में मौजूद सभी प्रमोशन की सूची होती है. हर प्रमोशन के लिए, promotionId, redemptionChannel, dataSource, promotionStatus वगैरह जैसी जानकारी देखी जा सकती है.

प्रमोशन की स्थिति देखना

किसी प्रमोशन की स्थिति देखने के लिए, promotions.get या promotions.list तरीके से दिखाया गया promotionStatus एट्रिब्यूट देखें.

promotionStatus फ़ील्ड में ये वैल्यू हो सकती हैं:

  • IN_REVIEW: प्रमोशन की समीक्षा अभी पूरी नहीं हुई है.
  • REJECTED: प्रमोशन अस्वीकार कर दिया गया है.
  • LIVE: प्रमोशन को मंज़ूरी मिल गई है और वह चालू है.
  • STOPPED: खाते से प्रमोशन रोक दिया गया है.
  • EXPIRED: प्रमोशन अब चालू नहीं है.
  • PENDING: प्रमोशन बंद नहीं हुआ है और सभी समीक्षाओं को मंज़ूरी मिल गई है. हालांकि, प्रमोशन शुरू होने की तारीख आने वाले समय की है.
  • STATE_UNSPECIFIED: प्रमोशन की स्थिति के बारे में जानकारी नहीं है.

आपने जो प्रमोशन बनाया है उसे मंज़ूरी मिलने की प्रोसेस के बारे में जानने के लिए, प्रमोशन को मंज़ूरी मिलने की प्रोसेस देखें.

प्रमोशन की स्थिति का सैंपल

यहां दिए गए सैंपल में, पूरे हो चुके और पूरे न हो पाए अनुरोधों के बीच का अंतर दिखाया गया है.

प्रॉडक्ट मैपिंग मौजूद नहीं है

यहां दिए गए रिस्पॉन्स बॉडी में, एक ऐसा ऑनलाइन प्रमोशन दिखाया गया है जिसे प्रॉडक्ट मैपिंग मौजूद न होने की वजह से अस्वीकार कर दिया गया है.

  "promotionStatus": {
    "destinationStatuses": [
      {
        "reportingContext": "FREE_LISTINGS",
        "status": "REJECTED"
      }
    ],
    "itemLevelIssues": [
      {
        "code": "promotion_sku_unmapped",
        "severity": "DISAPPROVED",
        "resolution": "merchant_action",
        "reportingContext": "FREE_LISTINGS",
        "description": "Unmapped",
        "detail": "This promotion couldn't be tested during review because it doesn't apply to any products that are currently in your Products feed",
        "documentation": "https://support.google.com/merchants/answer/2906014",
        "applicableCountries": [
          "US"
        ]
      },
      {
        "code": "promotion_sku_additional_requirements",
        "severity": "DISAPPROVED",
        "resolution": "merchant_action",
        "reportingContext": "FREE_LISTINGS",
        "description": "Promotion conditions not allowed",
        "detail": "This promotion has additional requirements that are not allowed such as requiring customers to verify additional details like phone number or ID before showing the promotion details",
        "documentation": "https://support.google.com/merchants/answer/2906014",
        "applicableCountries": [
          "US"
        ]
      }
    ]
  }

अस्वीकार किए गए प्रमोशन से जुड़ी समस्या हल करने और आने वाले समय में प्रमोशन को अस्वीकार होने से बचाने का तरीका जानने के लिए, अस्वीकार किए गए प्रमोशन से जुड़ी समस्याएं ठीक करना लेख पढ़ें.

अगर आपके बनाए गए प्रमोशन को मंज़ूरी नहीं मिलती है, तो आपको एक ईमेल मिलेगा. इसमें अस्वीकार किए जाने की वजह और समस्याओं को ठीक करने के निर्देश बताए जाएंगे.

प्रमोशन की समीक्षा की जा रही है

इस जवाब के मुख्य हिस्से में, एक ऐसा प्रमोशन दिखाया गया है जिसका आकलन अब भी किया जा रहा है.

  "promotionStatus": {
    "destinationStatuses": [
      {
        "reportingContext": "FREE_LISTINGS",
        "status": "PENDING"
      },
      {
        "destination": "SHOPPING_ADS",
        "status": "PENDING"
      }
    ],
    "itemLevelIssues": []
  }

मंज़ूरी पा चुका और लाइव प्रमोशन

यहां जवाब का मुख्य हिस्सा दिखाया गया है. इसमें एक प्रमोशन दिखाया गया है, जो खरीदारों को दिखता है.

  "promotionStatus": {
    "destinationStatuses": [
      {
        "reportingContext": "FREE_LISTINGS",
        "status": "LIVE"
      },
      {
        "destination": "SHOPPING_ADS",
        "status": "LIVE"
 }  ],
    "itemLevelIssues": []
  }

ज़्यादा जानकारी के लिए, प्रमोशन की स्थिति के बारे में अक्सर पूछे जाने वाले सवाल देखें.

ज़्यादा जानें