इस गाइड में यह माना गया है कि आपने शुरुआती निर्देश वाली हमारी गाइड पढ़ ली है और आपने अनुरोध करने के लिए ज़रूरी सेटअप कर लिया है.
सब कुछ सेट अप करने के बाद, Google Content API for Shopping को अनुरोध भेजे जा सकते हैं. नीचे दिए गए कोड के सैंपल में, कुछ सामान्य अनुरोध भेजने का तरीका बताया गया है:
- कोई प्रॉडक्ट बनाएं.
- प्रॉडक्ट की सूची पाएं.
- सूची से किसी प्रॉडक्ट को वापस पाना.
- किसी प्रॉडक्ट की कीमत अपडेट करें.
तरीकों की पूरी सूची देखने के लिए, रेफ़रंस दस्तावेज़ देखें.
ज़्यादा जानकारी के लिए, सबसे सही तरीके वाला पेज देखें. इसमें एपीआई का सबसे सही तरीके से इस्तेमाल करने का तरीका बताया गया है. इस पेज पर यह भी बताया गया है कि बैच अनुरोधों का इस्तेमाल क्यों करना चाहिए.
अगर आपको Content API से जुड़ी समस्याएं आ रही हैं, तो Merchant Center के स्टेटस डैशबोर्ड पर जाकर, यह देखें कि क्या कोई सेवा बंद है. इसके अलावा, सहायता पेज पर जाएं.
प्रॉडक्ट बनाना
किसी प्रॉडक्ट के लिए इस्तेमाल किए जा सकने वाले सभी एट्रिब्यूट के बारे में पूरी जानकारी, प्रॉडक्ट फ़ीड स्पेसिफ़िकेशन में देखी जा सकती है. प्रॉडक्ट बनाने के लिए , इस कोड का इस्तेमाल करें:
प्रोटोकॉल
POST /content/v2.1/YOUR_MERCHANT_ID/products { "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": "GB", "feedLabel": "GB", "channel": "online", "availability": "in stock", "condition": "new", "googleProductCategory": "Media > Books", "gtin": "9780007350896", "price": { "value": "2.50", "currency": "GBP" }, "shipping": [{ "country": "GB", "service": "Standard shipping", "price": { "value": "0.99", "currency": "GBP" } }], "shippingWeight": { "value": "200", "unit": "grams" } }
Java
Product product = new Product(); product.setOfferId("book123"); product.setTitle("A Tale of Two Cities"); product.setDescription("A classic novel about the French Revolution"); product.setLink("http://my-book-shop.com/tale-of-two-cities.html"); product.setImageLink("http://my-book-shop.com/tale-of-two-cities.jpg"); product.setContentLanguage("en"); product.setTargetCountry("GB"); product.setChannel("online"); product.setAvailability("in stock"); product.setCondition("new"); product.setGoogleProductCategory("Media > Books"); product.setGtin("9780007350896"); Price price = new Price(); price.setValue("2.50"); price.setCurrency("GBP"); product.setPrice(price); Price shippingPrice = new Price(); shippingPrice.setValue("0.99"); shippingPrice.setCurrency("GBP"); ProductShipping shipping = new ProductShipping(); shipping.setPrice(shippingPrice); shipping.setCountry("GB"); shipping.setService("Standard shipping"); ArrayListshippingList = new ArrayList (); shippingList.add(shipping); product.setShipping(shippingList); Product result = service.products().insert(merchantId, product).execute();
PHP
$product = new Google_Service_ShoppingContent_Product(); $product->setOfferId('book123'); $product->setTitle('A Tale of Two Cities'); $product->setDescription('A classic novel about the French Revolution'); $product->setLink('http://my-book-shop.com/tale-of-two-cities.html'); $product->setImageLink('http://my-book-shop.com/tale-of-two-cities.jpg'); $product->setContentLanguage('en'); $product->setTargetCountry('GB'); $product->setChannel('online'); $product->setAvailability('in stock'); $product->setCondition('new'); $product->setGoogleProductCategory('Media > Books'); $product->setGtin('9780007350896'); $price = new Google_Service_ShoppingContent_Price(); $price->setValue('2.50'); $price->setCurrency('GBP'); $shipping_price = new Google_Service_ShoppingContent_Price(); $shipping_price->setValue('0.99'); $shipping_price->setCurrency('GBP'); $shipping = new Google_Service_ShoppingContent_ProductShipping(); $shipping->setPrice($shipping_price); $shipping->setCountry('GB'); $shipping->setService('Standard shipping'); $shipping_weight = new Google_Service_ShoppingContent_ProductShippingWeight(); $shipping_weight->setValue(200); $shipping_weight->setUnit('grams'); $product->setPrice($price); $product->setShipping(array($shipping)); $product->setShippingWeight($shipping_weight); $result = $service->products->insert($merchant_id, $product);
प्रॉडक्ट की लिस्ट पाना
प्रॉडक्ट की सूची पाने के लिए, इस कोड का इस्तेमाल करें:
प्रोटोकॉल
GET /content/v2.1/YOUR_MERCHANT_ID/products
Java
List productsList = service.products().list(merchantId); ProductsListResponse page = productsList.execute(); while ((page.getResources() != null) && !page.getResources().isEmpty()) { for (Product product : page.getResources()) { System.out.printf("%s %s%n", product.getId(), product.getTitle()); } if (page.getNextPageToken() == null) { break; } productsList.setPageToken(page.getNextPageToken()); page = productsList.execute(); }
PHP
$products = $service->products->listProducts($merchantId); $parameters = array(); while (!empty($products->getResources()) { foreach ($products->getResources() as $product) { printf("%s %s\n", $product->getId(), $product->getTitle()); } if (!empty($products->getNextPageToken()) { break; } $parameters['pageToken'] = $products->nextPageToken; $products = $service->products->listProducts($merchantId, $parameters); }
किसी खास प्रॉडक्ट को वापस पाना
सूची से किसी प्रॉडक्ट को वापस पाने के लिए, इस कोड का इस्तेमाल करें:
प्रोटोकॉल
GET /content/v2.1/YOUR_MERCHANT_ID/products/online:en:GB:book123
Java
Product product = service.products() .get(merchantId, "online:en:GB:book123") .execute(); System.out.printf("%s %s\n", product.getId(), product.getTitle());
PHP
$product = $service->products->get($merchant_id, 'online:en:GB:book123'); printf("%s %s\n", $product->getId(), $product->getTitle());
ऑनलाइन प्रॉडक्ट की उपलब्धता की जानकारी अपडेट करना
पूरक फ़ीड का इस्तेमाल, प्रॉडक्ट रिसॉर्स में किया जा सकता है. इससे ऑनलाइन प्रॉडक्ट डेटा को इस कोड के साथ अपडेट किया जा सकता है:
प्रोटोकॉल
POST /content/v2.1/YOUR_MERCHANT_ID/products?YOUR_SUPPLEMENTAL_FEED_ID { "offerId": "book123", "contentLanguage": "en", "targetCountry": "GB", "feedLabel": "GB", "channel": "online", "availability": "out of stock" }
Java
Product product = new Product(); // Mandatory Fields product.setOfferId("book123"); product.setContentLanguage("en"); product.setTargetCountry("GB"); product.setChannel("online"); // Optional Fields to Update product.setAvailability("out of stock"); // Your unique supplemental feedId feedId=123456789 Product result = service.products().insert(merchantId, product, feedId).execute();
PHP
$product = new Google_Service_ShoppingContent_Product(); // Mandatory Fields $product->setOfferId('book123'); $product->setContentLanguage('en'); $product->setTargetCountry('GB'); $product->setChannel('online'); // Optional Fields to Update $product->setAvailability('out of stock'); // Your unique supplemental feedId $feedId=123456789 $result = $service->products->insert($merchant_id, $product, $feedId);
स्थानीय प्रॉडक्ट की उपलब्धता की जानकारी अपडेट करना
Local Inventory Service का इस्तेमाल करके, स्थानीय प्रॉडक्ट डेटा को इस कोड के साथ अपडेट किया जा सकता है:
प्रोटोकॉल
POST /content/v2.1/YOUR_MERCHANT_ID/localinventory/online/products/online:en:GB:book123 { "availability": "out of stock" }
Java
Product product = new Product(); // Mandatory Fields product.setOfferId("book123"); product.setContentLanguage("en"); product.setTargetCountry("GB"); product.setChannel("online"); // Optional Fields to Update product.setAvailability("out of stock"); Product result = service.localinventory().insert(merchantId, product).execute();
PHP
$product = new Google_Service_ShoppingContent_Product(); // Mandatory Fields $product->setOfferId('book123'); $product->setContentLanguage('en'); $product->setTargetCountry('GB'); $product->setChannel('online'); // Optional Fields to Update $product->setAvailability('out of stock'); $result = $service->localinventory->insert($merchant_id, $product);