สร้างคําขอ

คู่มือนี้จะถือว่าคุณได้ดำเนินการผ่าน คู่มือเริ่มต้นใช้งานของเราและตั้งค่า ส่งคำขอที่ได้รับอนุญาต

หลังจากตั้งค่าทุกอย่างแล้ว คุณจะส่งคำขอไปยัง Google Content API for Shopping ได้ รหัสต่อไปนี้ ตัวอย่าง แสดงวิธีส่งคำของ่ายๆ ต่อไปนี้

  • สร้างผลิตภัณฑ์
  • ดูรายการผลิตภัณฑ์
  • ดึงข้อมูลผลิตภัณฑ์ที่เฉพาะเจาะจงจากรายการ
  • อัปเดตราคาของผลิตภัณฑ์

สำหรับรายการวิธีการทั้งหมด โปรดดูที่ เอกสารอ้างอิง

สำหรับข้อมูลเพิ่มเติม โปรดดูหน้าแนวทางปฏิบัติที่ดีที่สุด อธิบายวิธีการใช้ API ให้เกิดประโยชน์สูงสุด หน้านี้ยังอธิบายเหตุผลที่แนะนำให้ส่งคำขอแบบกลุ่มด้วย

หากคุณมีปัญหาเกี่ยวกับ 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");

ArrayList shippingList = 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);