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

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

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

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

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

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

  • สร้างแหล่งข้อมูล Merchant API ใหม่สำหรับป้ายกำกับและภาษาแต่ละรายการ ใช้ตัวเลือกนี้หากคุณต้องรองรับชุดค่าผสมใหม่ของ feedLabel และ contentLanguage (และต้องการแยกชุดค่าผสมเหล่านี้ออกจากกันอย่างชัดเจน) หรือหากคุณใช้การตั้งค่ากฎแหล่งข้อมูลที่อาศัย 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) ซึ่งให้การกำหนดค่าที่ชัดเจนมากขึ้น