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