Hướng dẫn này giải thích cách di chuyển quá trình tích hợp từ các dịch vụ datafeeds và
datafeedstatuses của Content API for Shopping sang API phụ Nguồn dữ liệu
trong Merchant API. API phụ Nguồn dữ liệu mới giúp bạn kiểm soát trực tiếp hơn các quy trình dữ liệu và đơn giản hoá việc quản lý nguồn dữ liệu.
Để biết thêm thông tin về các tính năng mới, hãy xem hướng dẫn Quản lý nguồn dữ liệu.
Những điểm khác biệt chính
So với Content API for Shopping, Merchant API có một số ưu điểm.
Tạo nguồn dữ liệu rõ ràng. API không còn tự động tạo nguồn dữ liệu "Content API" khi bạn chèn sản phẩm lần đầu tiên. Trong Merchant API, bạn phải tạo nguồn dữ liệu một cách rõ ràng trước khi có thể tải sản phẩm lên các nguồn dữ liệu đó. Điều này giúp bạn kiểm soát tốt hơn việc tổ chức và quản lý các quy trình dữ liệu sản phẩm ngay từ đầu.
Hỗ trợ nhiều nguồn dữ liệu API. Trong Content API for Shopping, bạn chỉ được dùng một nguồn dữ liệu "Content API" duy nhất được tạo tự động. Với Merchant API, bạn có thể tạo và quản lý nhiều nguồn dữ liệu thuộc loại đầu vào
API.Nguồn dữ liệu không có nhãn và ngôn ngữ. Merchant API cho phép bạn tạo một nguồn dữ liệu chính mà không cần chỉ định
feedLabelvàcontentLanguage. Loại nguồn dữ liệu này chấp nhận sản phẩm ở bất kỳ tổ hợpfeedLabelvàcontentLanguagenào, giúp đơn giản hoá việc tải sản phẩm lên cho các quá trình tích hợp không yêu cầu nguồn dữ liệu riêng biệt cho các khu vực khác nhau.Đơn giản hoá mục tiêu dữ liệu. Mỗi nguồn dữ liệu hiện tương ứng với một mục tiêu duy nhất, được xác định bằng một tổ hợp duy nhất gồm
feedLabelvàcontentLanguage. Nguồn cấp dữ liệu nhắm đến nhiều dữ liệu không được dùng nữa trong Merchant API.Chọn chiến lược nguồn dữ liệu. Bạn có 3 lựa chọn để quản lý nguồn dữ liệu:
Giữ nguyên các nguồn dữ liệu Content API hiện có. Bạn có thể tiếp tục sử dụng các nguồn dữ liệu được tạo bằng Content API for Shopping vì các nguồn dữ liệu này tương thích với Merchant API. Bạn có thể tìm thấy tên tài nguyên của các nguồn dữ liệu này bằng cách sử dụng
dataSources.listhoặc trong giao diện người dùng Merchant Center. Nguồn dữ liệu chính của Content API chỉ hỗ trợfeedLabelvàcontentLanguagecụ thể mà chúng được tạo. Nguồn dữ liệu Content API được hiển thị trong Merchant Center với nguồn "Content API" ngay cả khi sản phẩm được chèn bằng Merchant API. Bạn có thể kết hợp các nguồn dữ liệu này với các nguồn dữ liệu Merchant API mới cũng nhắm đến các cặpfeedLabelvàcontentLanguagecụ thể.Tạo nguồn dữ liệu Merchant API mới cho từng nhãn và ngôn ngữ. Hãy sử dụng lựa chọn này nếu bạn cần hỗ trợ các tổ hợp
feedLabelvàcontentLanguagemới (và muốn tách biệt rõ ràng giữa các tổ hợp này) hoặc nếu bạn sử dụng quy trình thiết lập quy tắc nguồn dữ liệu dựa trênfeedLabelvàcontentLanguagecụ thể. Bạn cần tạo một nguồn dữ liệu riêng cho mỗi cặpfeedLabelvàcontentLanguagemà bạn sử dụng.Tạo một nguồn dữ liệu Merchant API duy nhất cho mọi nhãn và ngôn ngữ. Hãy sử dụng lựa chọn này để đơn giản hoá việc quản lý bằng cách có một nguồn dữ liệu duy nhất chấp nhận sản phẩm có bất kỳ
feedLabelvàcontentLanguagenào. Nếu chọn lựa chọn này, bạn nên di chuyển tất cả sản phẩm sang nguồn dữ liệu mới này và xoá các nguồn dữ liệu Content API cũ sau khi di chuyển sản phẩm.
Trạng thái tải tệp lên riêng biệt. Merchant API biểu thị trạng thái của các nguồn dữ liệu dựa trên tệp bằng một tài nguyên
fileUploadsriêng biệt, chỉ đọc. Để truy xuất trạng thái của một tệp tải lên, hãy sử dụng phương thứcfileUploads.getvới bí danhlatest.Các loại nguồn dữ liệu mới. Tài nguyên
DataSourcehỗ trợ nhiều ngành dọc hơn, bao gồm cả chương trình khuyến mãi, kho hàng tại địa phương và kho hàng theo khu vực, cung cấp một cách thức thống nhất để quản lý tất cả các quy trình dữ liệu.Nguồn dữ liệu tự động. Với Merchant API, giờ đây, bạn có thể bật hoặc tắt tính năng Nguồn dữ liệu tự động cho tài khoản của mình bằng phương thức
autofeedSettings.updateAutofeedSettingstrong API phụ Tài khoản. Để biết thêm thông tin, hãy xem Định cấu hình chế độ cài đặt Nguồn cấp dữ liệu tự động.
Yêu cầu
Bảng sau đây so sánh các định dạng URL yêu cầu giữa Content API for Shopping và Merchant API.
| Nội dung mô tả yêu cầu | Content API for Shopping | Merchant API |
|---|---|---|
| Tạo nguồn dữ liệu | POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds |
POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources |
| Lấy nguồn dữ liệu | 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} |
| Liệt kê nguồn dữ liệu | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds |
GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources |
| Cập nhật nguồn dữ liệu | 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} |
| Xoá nguồn dữ liệu | 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} |
| Tìm nạp nguồn dữ liệu | 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 |
| Lấy trạng thái nguồn dữ liệu | 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 |
| Liệt kê trạng thái nguồn dữ liệu | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses |
Không có. Sử dụng dataSources.list và fileUploads.get cho từng nguồn dữ liệu dựa trên tệp. |
Giá trị nhận dạng
Merchant API sử dụng tên tài nguyên dựa trên chuỗi làm giá trị nhận dạng.
| Nội dung mô tả về giá trị nhận dạng | Content API for Shopping | Merchant API |
|---|---|---|
| Giá trị nhận dạng nguồn dữ liệu | datafeedId (dạng số) |
name (chuỗi, định dạng: accounts/{account}/dataSources/{datasource}) |
Phương thức
Bảng này so sánh các phương thức từ các dịch vụ datafeeds
và datafeedstatuses của Content API for Shopping với các phương thức tương đương trong Merchant API.
| Phương thức Content API for Shopping | Phương thức Merchant API | Phạm vi cung cấp và ghi chú |
|---|---|---|
datafeeds.custombatch |
Không có | Thay vào đó, hãy sử dụng các lệnh gọi API riêng lẻ. |
datafeeds.delete |
dataSources.delete |
sức mạnh. |
datafeeds.fetchnow |
dataSources.fetch |
sức mạnh. Phương thức này hiện chỉ hoạt động đối với các nguồn dữ liệu có đầu vào là tệp. |
datafeeds.get |
dataSources.get |
sức mạnh. |
datafeeds.insert |
dataSources.create |
sức mạnh. |
datafeeds.list |
dataSources.list |
sức mạnh. |
datafeeds.update |
dataSources.update |
sức mạnh. Sử dụng ngữ nghĩa PATCH thay vì PUT. |
datafeedstatuses.custombatch |
Không có | Thay vào đó, hãy sử dụng các lệnh gọi API riêng lẻ. Xem bài viết Gửi nhiều yêu cầu cùng lúc để biết thêm thông tin. |
datafeedstatuses.get |
fileUploads.get |
Có sẵn cho các nguồn dữ liệu dựa trên tệp. Sử dụng bí danh latest để lấy trạng thái của tệp tải lên gần đây nhất. Đối với các loại nguồn dữ liệu khác, thông tin trạng thái là một phần của tài nguyên DataSource. |
datafeedstatuses.list |
Không có | Để lấy trạng thái của nhiều nguồn dữ liệu, trước tiên, hãy liệt kê tất cả các nguồn dữ liệu bằng dataSources.list. Sau đó, gọi fileUploads.get bằng bí danh latest cho từng nguồn dữ liệu dựa trên tệp. |
Thay đổi chi tiết về trường
Bảng này cho thấy những thay đổi ở cấp trường giữa các tài nguyên Datafeed và
DatafeedStatus trong Content API for Shopping và các tài nguyên DataSource
và FileUpload trong Merchant API.
| Content API for Shopping | Merchant API | Mô tả |
|---|---|---|
Datafeed |
DataSource |
Tài nguyên chính để định cấu hình nguồn dữ liệu. |
id |
name |
Giá trị nhận dạng tài nguyên. Đã thay đổi từ mã nhận dạng dạng số thành tên tài nguyên chuỗi. |
name |
displayName |
Tên hiển thị với người dùng của nguồn dữ liệu. |
attributeLanguage |
primaryProductDataSource.contentLanguage |
Mã ngôn ngữ gồm 2 chữ cái theo tiêu chuẩn ISO 639-1 của các mặt hàng trong nguồn dữ liệu. |
fileName |
fileInput.fileName |
Tên của tệp đã tải lên. Trường này hiện được lồng trong fileInput. |
fetchSchedule |
fileInput.fetchSettings |
Lịch biểu tìm nạp nguồn dữ liệu dựa trên tệp. Trường này hiện được lồng trong fileInput. |
fetchSchedule.paused |
fileInput.fetchSettings.enabled |
Logic bị đảo ngược. paused: true tương đương với enabled: false. |
format |
Không có | Các trường fileEncoding, columnDelimiter và quotingMode bị xoá. Các trường này hiện được tự động phát hiện. |
targets |
primaryProductDataSource.feedLabel, primaryProductDataSource.contentLanguage, primaryProductDataSource.countries |
Trường targets lặp lại bị xoá. Mỗi nguồn dữ liệu hiện có một mục tiêu duy nhất được xác định bằng các trường này, phản ánh việc nguồn cấp dữ liệu nhắm đến nhiều dữ liệu không được dùng nữa. |
DatafeedStatus |
FileUpload |
Trạng thái của một tệp tải lên hiện là một tài nguyên riêng biệt, chỉ đọc. |
datafeedId |
name |
Giá trị nhận dạng cho tệp tải lên, tham chiếu đến nguồn dữ liệu mẹ của tệp. |
processingStatus |
processingState |
Trạng thái xử lý của tệp tải lên. Các giá trị chuỗi (success, failure, in progress) được thay thế bằng một enum (SUCCEEDED, FAILED, IN_PROGRESS). |
errors, warnings |
issues |
Lỗi và cảnh báo được hợp nhất thành một danh sách issues duy nhất. Mỗi vấn đề có một trường severity (ERROR hoặc WARNING). |
lastUploadDate |
uploadTime |
Dấu thời gian của lần tải lên gần đây nhất. Định dạng đã thay đổi từ chuỗi thành đối tượng Timestamp. |
country, language, feedLabel |
Không áp dụng | Các trường này không còn nằm trong tài nguyên trạng thái. Các trường này là một phần của tài nguyên DataSource. |
targets[].included_destinations, targets[].excluded_destinations |
primaryProductDataSource.destinations |
Hai danh sách riêng biệt cho các đích đến được bao gồm và vị trí không được phép xuất hiện được thay thế bằng một danh sách destinations duy nhất. Mỗi mục trong danh sách mới là một đối tượng chỉ định đích đến và trạng thái của đích đến đó (ENABLED hoặc DISABLED), cung cấp một cấu hình rõ ràng hơn. |