शॉपिंग कॉन्टेंट सर्विस

शॉपिंग कॉन्टेंट सर्विस की मदद से, Apps Script में, शॉपिंग के लिए Google Content API का इस्तेमाल किया जा सकता है. इस एपीआई की मदद से Google Merchant Center के उपयोगकर्ता, अपनी प्रॉडक्ट लिस्टिंग को अपलोड और मैनेज कर सकते हैं. साथ ही, Merchant Center खातों को भी मैनेज कर सकते हैं.

इस सेवा के बारे में ज़्यादा जानकारी के लिए, Google Content API for Shopping के लिए रेफ़रंस दस्तावेज़ देखें. Apps Script की सभी बेहतर सेवाओं की तरह, Shopping Content Service भी उन ऑब्जेक्ट, तरीकों, और पैरामीटर का इस्तेमाल सार्वजनिक एपीआई के तौर पर करती है.

रेफ़रंस

इस सेवा के बारे में ज़्यादा जानकारी के लिए, Google Content API for Shopping API से जुड़े रेफ़रंस दस्तावेज़ देखें. Apps Script की सभी बेहतर सेवाओं की तरह, Sheets की बेहतर सेवा में भी उन ही ऑब्जेक्ट, तरीकों, और पैरामीटर का इस्तेमाल किया जाता है जो सार्वजनिक एपीआई के लिए हैं. ज़्यादा जानकारी के लिए, हस्ताक्षर तय करने का तरीका लेख पढ़ें.

समस्याओं की शिकायत करने और दूसरी मदद पाने के लिए, Google Content API for Shopping की सहायता गाइड देखें.

नमूना कोड

अब हम आपको, Shopping के लिए कॉन्टेंट की सेवा की कुछ सुविधाओं को इस्तेमाल करने का तरीका बताएंगे.

प्रॉडक्ट डालें

इस उदाहरण में, दिए गए Merchant Center खाते में एक प्रॉडक्ट जोड़ने का तरीका बताया गया है.

advanced/shoppingContent.gs
/**
 * Inserts a product into the products list. Logs the API response.
 */
function productInsert() {
  const merchantId = 123456; // Replace this with your Merchant Center ID.
  // Create a product resource and insert it
  const productResource = {
    'offerId': 'book123',
    'title': 'A Tale of Two Cities',
    'description': 'A classic novel about the French Revolution',
    'link': 'http://my-book-shop.com/tale-of-two-cities.html',
    'imageLink': 'http://my-book-shop.com/tale-of-two-cities.jpg',
    'contentLanguage': 'en',
    'targetCountry': 'US',
    'channel': 'online',
    'availability': 'in stock',
    'condition': 'new',
    'googleProductCategory': 'Media > Books',
    'productType': 'Media > Books',
    'gtin': '9780007350896',
    'price': {
      'value': '2.50',
      'currency': 'USD'
    },
    'shipping': [{
      'country': 'US',
      'service': 'Standard shipping',
      'price': {
        'value': '0.99',
        'currency': 'USD'
      }
    }],
    'shippingWeight': {
      'value': '2',
      'unit': 'pounds'
    }
  };

  try {
    response = ShoppingContent.Products.insert(productResource, merchantId);
    // RESTful insert returns the JSON object as a response.
    console.log(response);
  } catch (e) {
    // TODO (Developer) - Handle exceptions
    console.log('Failed with error: $s', e.error);
  }
}

प्रॉडक्ट की सूची बनाएं

इस उदाहरण में, दिए गए Merchant Center खाते के लिए, अपने प्रॉडक्ट को लिस्ट करने का तरीका बताया गया है.

advanced/shoppingContent.gs
/**
 * Lists the products for a given merchant.
 */
function productList() {
  const merchantId = 123456; // Replace this with your Merchant Center ID.
  let pageToken;
  let pageNum = 1;
  const maxResults = 10;
  try {
    do {
      const products = ShoppingContent.Products.list(merchantId, {
        pageToken: pageToken,
        maxResults: maxResults
      });
      console.log('Page ' + pageNum);
      if (products.resources) {
        for (let i = 0; i < products.resources.length; i++) {
          console.log('Item [' + i + '] ==> ' + products.resources[i]);
        }
      } else {
        console.log('No more products in account ' + merchantId);
      }
      pageToken = products.nextPageToken;
      pageNum++;
    } while (pageToken);
  } catch (e) {
    // TODO (Developer) - Handle exceptions
    console.log('Failed with error: $s', e.error);
  }
}

एक साथ कई आइटम डालने के लिए प्रॉडक्ट

इस उदाहरण में, एक साथ तीन प्रॉडक्ट डालने के लिए Products.custombatch का इस्तेमाल होता है.

advanced/shoppingContent.gs
/**
 * Batch updates products. Logs the response.
 * @param  {object} productResource1 The first product resource.
 * @param  {object} productResource2 The second product resource.
 * @param  {object} productResource3 The third product resource.
 */
function custombatch(productResource1, productResource2, productResource3) {
  const merchantId = 123456; // Replace this with your Merchant Center ID.
  custombatchResource = {
    'entries': [
      {
        'batchId': 1,
        'merchantId': merchantId,
        'method': 'insert',
        'productId': 'book124',
        'product': productResource1
      },
      {
        'batchId': 2,
        'merchantId': merchantId,
        'method': 'insert',
        'productId': 'book125',
        'product': productResource2
      },
      {
        'batchId': 3,
        'merchantId': merchantId,
        'method': 'insert',
        'productId': 'book126',
        'product': productResource3
      }
    ]
  };
  try {
    const response = ShoppingContent.Products.custombatch(custombatchResource);
    console.log(response);
  } catch (e) {
    // TODO (Developer) - Handle exceptions
    console.log('Failed with error: $s', e.error);
  }
}

खाता-लेवल के टैक्स अपडेट करें

यह सैंपल कोड, Accounttax का इस्तेमाल करके Merchant Center खाते के लिए खाता-लेवल टैक्स की जानकारी अपडेट करता है. खाता-लेवल टैक्स और शिपिंग के बारे में ज़्यादा जानकारी के लिए, कृपया हमारी एपीआई गाइड देखें.

advanced/shoppingContent.gs
/**
 * Updates content account tax information.
 * Logs the API response.
 */
function updateAccountTax() {
  // Replace this with your Merchant Center ID.
  const merchantId = 123456;

  // Replace this with the account that you are updating taxes for.
  const accountId = 123456;

  try {
    const accounttax = ShoppingContent.Accounttax.get(merchantId, accountId);
    console.log(accounttax);

    const taxInfo = {
      accountId: accountId,
      rules: [
        {
          'useGlobalRate': true,
          'locationId': 21135,
          'shippingTaxed': true,
          'country': 'US'
        },
        {
          'ratePercent': 3,
          'locationId': 21136,
          'country': 'US'
        },
        {
          'ratePercent': 2,
          'locationId': 21160,
          'shippingTaxed': true,
          'country': 'US'
        }
      ]
    };

    console.log(ShoppingContent.Accounttax
        .update(taxInfo, merchantId, accountId));
  } catch (e) {
    // TODO (Developer) - Handle exceptions
    console.log('Failed with error: $s', e.error);
  }
}