ย้ายข้อมูลแหล่งข้อมูล

คู่มือนี้อธิบายวิธีย้ายข้อมูลการผสานรวมจากบริการ datafeeds และ datafeedstatuses ของ Content API for Shopping ไปยัง API ย่อยของแหล่งข้อมูลใน Merchant API 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 รองรับอุตสาหกรรมต่างๆ มากขึ้น รวมถึงโปรโมชัน สินค้าคงคลังในร้าน และสินค้าคงคลังระดับภูมิภาค ซึ่งเป็นวิธีที่รวมเป็นหนึ่งเดียวในการจัดการไปป์ไลน์ข้อมูลทั้งหมด

  • แหล่งข้อมูลอัตโนมัติ ด้วย Merchant API ตอนนี้คุณสามารถเปิดหรือปิดใช้ฟีเจอร์แหล่งข้อมูลอัตโนมัติสำหรับบัญชีได้แล้วโดยใช้เมธอด autofeedSettings.updateAutofeedSettings ใน Accounts Sub-API ดูข้อมูลเพิ่มเติมได้ที่กำหนดการตั้งค่าฟีดอัตโนมัติ

เลือกกลยุทธ์แหล่งข้อมูล

คุณมี 3 ตัวเลือกในการจัดการแหล่งข้อมูล ดังนี้

  • สร้างแหล่งข้อมูล Merchant API แหล่งเดียวสำหรับป้ายกำกับฟีดและภาษาใดก็ได้ ใช้ตัวเลือกนี้เพื่อลดความซับซ้อนในการจัดการโดยมีแหล่งข้อมูลเดียวที่ยอมรับผลิตภัณฑ์ที่มี feedLabel และ contentLanguage ในการตั้งค่า Content API แบบเดิม คุณจะกำหนดกฎสำหรับ ป้ายกำกับและภาษาที่เฉพาะเจาะจงผ่านแหล่งข้อมูลแยกต่างหาก และแทรก ผลิตภัณฑ์ลงในแหล่งข้อมูลที่มีกฎที่กำหนดเป้าหมายที่สอดคล้องกัน หากเลือกตัวเลือกนี้ เราขอแนะนำให้ย้ายข้อมูลผลิตภัณฑ์ทั้งหมดไปยังแหล่งข้อมูลใหม่และนำแหล่งข้อมูล Content API ออกเมื่อย้ายข้อมูลผลิตภัณฑ์ทั้งหมดแล้ว

  • สร้างแหล่งข้อมูล Merchant API ใหม่สำหรับป้ายกำกับและภาษาแต่ละรายการ ใช้ตัวเลือกนี้หากคุณต้องการรองรับชุดค่าผสมใหม่ของ feedLabel และ contentLanguage (และต้องการแยกทั้ง 2 อย่างออกจากกันอย่างเคร่งครัด ) หรือหากคุณใช้การตั้งค่ากฎแหล่งข้อมูลที่อิงตาม feedLabel และ contentLanguage ที่เฉพาะเจาะจง คุณจะต้องสร้างแหล่งข้อมูลแยกต่างหากสำหรับทุกคู่ของ feedLabel และ contentLanguage ที่คุณใช้ คุณสามารถรวมแหล่งข้อมูล Merchant API กับแหล่งข้อมูลที่สร้างด้วย Content API for Shopping

  • เก็บแหล่งข้อมูล Content API ที่มีอยู่ คุณสามารถใช้แหล่งข้อมูลที่สร้างด้วย Content API for Shopping ต่อไปได้ เนื่องจากแหล่งข้อมูลเหล่านี้ใช้ได้กับ Merchant API คุณดูชื่อทรัพยากรได้โดยใช้ dataSources.list หรือภายใน UI ของ Merchant Center แหล่งข้อมูลหลักของ Content API รองรับเฉพาะ feedLabel และ contentLanguage ที่ใช้สร้างแหล่งข้อมูลเหล่านั้น แหล่งข้อมูล Content API จะแสดงใน Merchant Center โดยมีแหล่งที่มาเป็น "Content API" แม้ว่าจะมีการแทรกผลิตภัณฑ์โดยใช้ Merchant API ก็ตาม คุณสามารถรวมข้อมูลดังกล่าวกับแหล่งข้อมูล Merchant API ใหม่ ที่กำหนดเป้าหมายเป็นคู่ feedLabel และ contentLanguage ที่เฉพาะเจาะจงด้วย

เราขอแนะนำให้คุณเติมข้อมูลฐานข้อมูลสินค้าในร้านโดยจัดเก็บชื่อของ แหล่งข้อมูลหลักทั้งหมด 1 ครั้งสำหรับผลิตภัณฑ์แต่ละรายการเพื่อหลีกเลี่ยงการเรียก dataSources.list ซ้ำ

คำขอ

ตารางต่อไปนี้เปรียบเทียบรูปแบบ 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 สำหรับแหล่งข้อมูลที่อิงตามไฟล์แต่ละแหล่ง

รหัสระบุ

Merchant 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) ซึ่งให้การกำหนดค่าที่ชัดเจนยิ่งขึ้น