המדריך הזה מניח שעבדתם במדריך תחילת העבודה ומגדירים לשלוח בקשות מורשות.
אחרי שתגדירו את הכול, תוכלו לשלוח בקשות אל Google Content API for Shopping. את הקוד הבא הדוגמאות הבאות ממחישות איך לשלוח כמה בקשות פשוטות:
- צריך ליצור מוצר.
- מקבלים רשימה של מוצרים.
- מאחזרים מוצר ספציפי מהרשימה.
- מעדכנים מחיר של מוצר.
לרשימה מלאה של השיטות אפשר לעיין ב מאמרי עזרה.
מידע נוסף זמין בדף שיטות מומלצות, מסבירה מהי הדרך הטובה ביותר להשתמש ב-API. בדף הזה מוסבר גם למה מומלץ להשתמש בבקשות באצווה.
אם נתקלתם בבעיות ב-Content API, כדאי לעיין ב לוח הבקרה של סטטוס Merchant Center שמציג הפסקות זמניות בשירות. הדף Support.
יצירת מוצר
אפשר למצוא פרטים מלאים על כל המאפיינים שיכולים להיות למוצר מסוים מפרט פיד מוצרים. כדי ליצור מוצר , משתמשים בקוד הבא:
פרוטוקול
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);
עדכון הזמינות של מוצרים בחנויות מקומיות
אפשר להשתמש ב שירות מלאי בחנות מקומית כדי לעדכן את נתוני המוצרים בחנויות המקומיות באמצעות הקוד הבא:
פרוטוקול
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);