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

คู่มือนี้จะอธิบายวิธีย้ายข้อมูลการผสานรวมจากบริการ datafeeds และ datafeedstatuses ของ Content API for Shopping ไปยัง API ย่อยของแหล่งข้อมูลใน Merchant API API ย่อยของแหล่งข้อมูลใหม่ช่วยให้คุณควบคุม Data Pipeline ได้โดยตรงมากขึ้นและลดความซับซ้อนในการจัดการแหล่งข้อมูล

ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ใหม่ได้ที่คู่มือจัดการแหล่งข้อมูล

ความแตกต่างที่สำคัญ

Merchant API มีข้อดีหลายประการเมื่อเทียบกับ Content API for Shopping ดังนี้

  • การสร้างแหล่งข้อมูลที่ชัดเจน API จะไม่สร้างแหล่งข้อมูล "Content API" โดยอัตโนมัติเมื่อคุณแทรกผลิตภัณฑ์เป็นครั้งแรกอีกต่อไป ใน Merchant API คุณต้องสร้างแหล่งข้อมูลอย่างชัดเจนก่อนจึงจะอัปโหลดผลิตภัณฑ์ไปยังแหล่งข้อมูลเหล่านั้นได้ ซึ่งจะช่วยให้คุณควบคุมการจัดระเบียบและการจัดการ Data Pipeline ข้อมูลสินค้าได้มากขึ้นตั้งแต่เริ่มต้น

  • การรองรับแหล่งข้อมูล 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 รองรับประเภทธุรกิจอื่นๆ เพิ่มเติม เช่น โปรโมชัน, สินค้าคงคลังในร้าน และสินค้าคงคลังระดับภูมิภาค ซึ่งช่วยให้คุณจัดการ Data Pipeline ทั้งหมดได้ในที่เดียว

  • แหล่งข้อมูลอัตโนมัติ ตอนนี้ Merchant API ช่วยให้คุณเปิดหรือปิดใช้ฟีเจอร์แหล่งข้อมูลอัตโนมัติสำหรับบัญชีได้โดยใช้เมธอด autofeedSettings.updateAutofeedSettings ใน 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 สำหรับ 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})

เมธอด

ตารางนี้เปรียบเทียบเมธอดจากบริการ datafeeds และ datafeedstatuses ของ Content API for Shopping กับเมธอดที่เทียบเท่าใน 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 รหัสภาษา ISO 639-1 แบบ 2 ตัวอักษรของสินค้าในแหล่งข้อมูล
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) ซึ่งช่วยให้กำหนดค่าได้ชัดเจนยิ่งขึ้น