คู่มือนี้อธิบายวิธีย้ายข้อมูลการผสานรวมจากบริการ datafeeds และ
datafeedstatuses ของ Content API for Shopping ไปยัง Data sources
sub-API ใน Merchant API Sub-API แหล่งข้อมูลใหม่ช่วยให้คุณควบคุมไปป์ไลน์ข้อมูลได้โดยตรงมากขึ้น
และทำให้การจัดการแหล่งข้อมูลง่ายขึ้น
ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ใหม่ได้ที่คู่มือจัดการแหล่งข้อมูล
ความแตกต่างที่สำคัญ
Merchant API มีข้อดีหลายประการเมื่อเทียบกับ Content API for Shopping
การสร้างแหล่งข้อมูลอย่างชัดเจน API จะไม่สร้างแหล่งข้อมูล "Content API" โดยอัตโนมัติเมื่อคุณแทรกผลิตภัณฑ์เป็นครั้งแรกอีกต่อไป ใน Merchant API คุณต้องสร้างแหล่งข้อมูลอย่างชัดเจนก่อนจึงจะอัปโหลดผลิตภัณฑ์ไปยังแหล่งข้อมูลเหล่านั้นได้ ซึ่งจะช่วยให้คุณควบคุมการจัดระเบียบและการจัดการไปป์ไลน์ข้อมูลผลิตภัณฑ์ได้มากขึ้นตั้งแต่เริ่มต้น
รองรับแหล่งข้อมูล API หลายรายการ ใน Content API for Shopping คุณจะใช้แหล่งข้อมูล "Content API" ที่สร้างขึ้นโดยอัตโนมัติได้เพียงแหล่งเดียว Merchant API ช่วยให้คุณสร้างและจัดการแหล่งข้อมูลหลายแหล่งของ
APIประเภทอินพุตได้แหล่งข้อมูลที่ไม่มีป้ายกำกับและภาษา Merchant API ช่วยให้คุณ สร้างแหล่งข้อมูลหลักได้โดยไม่ต้องระบุ
feedLabelและcontentLanguageแหล่งข้อมูลประเภทนี้ยอมรับผลิตภัณฑ์ในfeedLabelและcontentLanguageทุกชุดค่าผสม ซึ่งช่วยลดความซับซ้อนในการอัปโหลดผลิตภัณฑ์สำหรับการผสานรวมที่ไม่ต้องใช้แหล่งข้อมูลแยกต่างหากสำหรับภูมิภาคต่างๆเป้าหมายข้อมูลที่เรียบง่าย ตอนนี้แหล่งข้อมูลแต่ละแหล่งจะสอดคล้องกับเป้าหมายเดียว ซึ่งกำหนดโดยชุดค่าผสมที่ไม่ซ้ำกันของ
feedLabelและcontentLanguageเราเลิกใช้งานฟีดเป้าหมายข้อมูลหลายรายการใน Merchant API แล้วสถานะการอัปโหลดไฟล์โดยเฉพาะ Merchant API แสดงสถานะของแหล่งข้อมูลที่อิงตามไฟล์โดยใช้
fileUploadsทรัพยากรแบบอ่านอย่างเดียวแยกต่างหาก หากต้องการดึงข้อมูลสถานะการอัปโหลดไฟล์ ให้ใช้เมธอดfileUploads.getที่มีนามแฝงlatestประเภทแหล่งข้อมูลใหม่
DataSourceทรัพยากรนี้รองรับอุตสาหกรรมต่างๆ มากขึ้น รวมถึงโปรโมชัน สินค้าคงคลังในร้าน และสินค้าคงคลังระดับภูมิภาค ซึ่งเป็นวิธีแบบรวมในการจัดการไปป์ไลน์ข้อมูลทั้งหมดแหล่งข้อมูลอัตโนมัติ ตอนนี้คุณสามารถเปิดหรือปิดใช้ฟีเจอร์แหล่งข้อมูลอัตโนมัติสำหรับบัญชีได้แล้วโดยใช้เมธอด
autofeedSettings.updateAutofeedSettingsใน API ย่อยของบัญชี ดูข้อมูลเพิ่มเติมได้ที่กำหนดการตั้งค่า การป้อนอัตโนมัติ
คำขอ
ตารางต่อไปนี้เปรียบเทียบรูปแบบ URL ของคำขอระหว่าง Content API for Shopping กับ Merchant API
| รายละเอียดสำหรับคำขอ | Content API for Shopping | Merchant API | 
|---|---|---|
| สร้างแหล่งข้อมูล | POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds | 
    POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources | 
  
| รับแหล่งข้อมูล | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} | 
    GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} | 
  
| แสดงรายการแหล่งข้อมูล | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds | 
    GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources | 
  
| อัปเดตแหล่งข้อมูล | PUT https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} | 
    PATCH https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} | 
  
| ลบแหล่งข้อมูล | DELETE https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} | 
    DELETE https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} | 
  
| ดึงข้อมูลแหล่งข้อมูล | POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID}/fetchNow | 
    POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}:fetch | 
  
| รับสถานะแหล่งข้อมูล | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses/{DATAFEED_ID} | 
    GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}/fileUploads/latest | 
  
| แสดงรายการสถานะแหล่งข้อมูล | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses | 
    ไม่พร้อมใช้งาน ใช้ dataSources.list และ fileUploads.get สำหรับแหล่งข้อมูลที่อิงตามไฟล์แต่ละรายการ | 
  
รหัสระบุ
API ของผู้ขายใช้ชื่อทรัพยากรแบบสตริงเป็นตัวระบุ
| คำอธิบายตัวระบุ | Content API for Shopping | Merchant API | 
|---|---|---|
| ตัวระบุแหล่งข้อมูล | datafeedId (ตัวเลข) | 
    name (สตริง รูปแบบ: accounts/{account}/dataSources/{datasource}) | 
  
เมธอด
ตารางนี้เปรียบเทียบเมธอดจาก Content API for Shopping datafeeds
และบริการ datafeedstatuses กับเมธอดที่เทียบเท่าใน Merchant API
| เมธอด Content API for Shopping | เมธอดของ Merchant API | ความพร้อมใช้งานและหมายเหตุ | 
|---|---|---|
datafeeds.custombatch | 
    ไม่พร้อมใช้งาน | โปรดใช้การเรียก API แต่ละรายการแทน | 
datafeeds.delete | 
    dataSources.delete | 
    มีให้บริการ | 
datafeeds.fetchnow | 
    dataSources.fetch | 
    มีให้บริการ ปัจจุบันวิธีนี้ใช้ได้กับแหล่งข้อมูลที่มีอินพุตไฟล์เท่านั้น | 
datafeeds.get | 
    dataSources.get | 
    มีให้บริการ | 
datafeeds.insert | 
    dataSources.create | 
    มีให้บริการ | 
datafeeds.list | 
    dataSources.list | 
    มีให้บริการ | 
datafeeds.update | 
    dataSources.update | 
    มีให้บริการ ใช้ความหมายของ PATCH แทน PUT | 
  
datafeedstatuses.custombatch | 
    ไม่พร้อมใช้งาน | โปรดใช้การเรียก API แต่ละรายการแทน ดูรายละเอียดเพิ่มเติมได้ที่ส่งคำขอหลายรายการพร้อมกัน | 
datafeedstatuses.get | 
    fileUploads.get | 
    ใช้ได้กับแหล่งข้อมูลที่อิงตามไฟล์ ใช้latestนามแฝงเพื่อดูสถานะของการอัปโหลดล่าสุด สำหรับแหล่งข้อมูลประเภทอื่นๆ ข้อมูลสถานะจะเป็นส่วนหนึ่งของทรัพยากร DataSource | 
  
datafeedstatuses.list | 
    ไม่พร้อมใช้งาน | หากต้องการดูสถานะของแหล่งข้อมูลหลายแหล่ง ให้แสดงรายการแหล่งข้อมูลทั้งหมดที่มี dataSources.list ก่อน จากนั้นเรียกใช้ fileUploads.get โดยใช้นามแฝง latest สำหรับแหล่งข้อมูลที่อิงตามไฟล์แต่ละรายการ | 
  
การเปลี่ยนแปลงช่องโดยละเอียด
ตารางนี้แสดงการเปลี่ยนแปลงระดับฟิลด์ระหว่างแหล่งข้อมูล Datafeed และ DatafeedStatus ใน Content API for Shopping รวมถึงแหล่งข้อมูล DataSource และ FileUpload ใน Merchant API
| Content API for Shopping | Merchant API | คำอธิบาย | 
|---|---|---|
Datafeed | 
    DataSource | 
    แหล่งข้อมูลหลักสำหรับการกำหนดค่าแหล่งข้อมูล | 
id | 
    name | 
    ตัวระบุทรัพยากร เปลี่ยนจากรหัสตัวเลขเป็นชื่อทรัพยากรสตริง | 
name | 
    displayName | 
    ชื่อแหล่งข้อมูลที่แสดงต่อผู้ใช้ | 
attributeLanguage | 
    primaryProductDataSource.contentLanguage | 
    รหัสภาษาแบบ 2 ตัวอักษรตามมาตรฐาน ISO 639-1 ของสินค้าในแหล่งข้อมูล | 
fileName | 
    fileInput.fileName | 
    ชื่อของไฟล์ที่อัปโหลด ตอนนี้ช่องนี้ซ้อนอยู่ใต้ fileInput | 
  
fetchSchedule | 
    fileInput.fetchSettings | 
    กำหนดเวลาสำหรับการดึงข้อมูลแหล่งข้อมูลที่อิงตามไฟล์ ตอนนี้ฟีเจอร์นี้จะอยู่ภายใต้ fileInput | 
  
fetchSchedule.paused | 
    fileInput.fetchSettings.enabled | 
    ตรรกะจะกลับกัน paused: true มีค่าเท่ากับ enabled: false | 
  
format | 
    ไม่พร้อมใช้งาน | ระบบจะนำช่อง fileEncoding, columnDelimiter และ quotingMode ออก ตอนนี้ระบบจะตรวจหาโดยอัตโนมัติ | 
  
targets | 
    primaryProductDataSource.feedLabel, primaryProductDataSource.contentLanguage, primaryProductDataSource.countries | 
    ระบบนำช่อง targets ที่ซ้ำกันออกแล้ว ตอนนี้แหล่งข้อมูลแต่ละแหล่งมีเป้าหมายเดียวที่กำหนดโดยฟิลด์เหล่านี้ ซึ่งแสดงให้เห็นว่าเราเลิกใช้งานฟีดแบบหลายเป้าหมายข้อมูลแล้ว | 
  
DatafeedStatus | 
    FileUpload | 
    ตอนนี้สถานะการอัปโหลดไฟล์เป็นทรัพยากรแบบอ่านอย่างเดียวที่แยกต่างหากแล้ว | 
datafeedId | 
    name | 
    ตัวระบุสำหรับการอัปโหลดไฟล์ ซึ่งอ้างอิงแหล่งข้อมูลหลัก | 
processingStatus | 
    processingState | 
    สถานะการประมวลผลของการอัปโหลด ค่าสตริง (success, failure, in progress) จะถูกแทนที่ด้วย Enum (SUCCEEDED, FAILED, IN_PROGRESS) | 
  
errors, warnings | 
    issues | 
    ระบบจะรวมข้อผิดพลาดและคำเตือนไว้ในissuesรายการเดียว ปัญหาแต่ละรายการจะมีช่อง severity (ERROR หรือ WARNING) | 
  
lastUploadDate | 
    uploadTime | 
    การประทับเวลาของการอัปโหลดครั้งล่าสุด รูปแบบเปลี่ยนจากสตริงเป็นออบเจ็กต์ Timestamp | 
  
country, language, feedLabel | 
    ไม่เกี่ยวข้อง | ฟิลด์เหล่านี้จะไม่อยู่ในทรัพยากรสถานะอีกต่อไป ซึ่งเป็นส่วนหนึ่งของDataSource | 
  
targets[].included_destinations, targets[].excluded_destinations | 
    primaryProductDataSource.destinations | 
    ระบบจะแทนที่รายการแยก 2 รายการสำหรับปลายทางที่รวมและยกเว้นด้วยdestinationsรายการเดียว แต่ละรายการในลิสต์ใหม่คือออบเจ็กต์ที่ระบุปลายทางและสถานะ (ENABLED หรือ DISABLED) ซึ่งให้การกำหนดค่าที่ชัดเจนยิ่งขึ้น |