Các đối tác của Google có thể cung cấp dữ liệu có cấu trúc về thực đơn cho Google thông qua tính năng tích hợp Đặt chỗ từ đầu đến cuối để sử dụng trong mục Thực đơn của Trang doanh nghiệp trên Google của một nhà hàng và các điểm truy cập khác trên các nền tảng dành cho người tiêu dùng của Google.
Dữ liệu thực đơn được nhập bằng Nguồn cấp dữ liệu chung. Trước khi bắt đầu:
- Hãy đảm bảo rằng bạn đã hoàn tất quy trình thiết lập tài khoản
- Tìm hiểu quy trình tải Nguồn cấp dữ liệu chung lên
- Tìm hiểu cách định cấu hình tài khoản để tải Nguồn cấp dữ liệu chung lên
Tạo và tải nguồn cấp dữ liệu trình đơn lên
Khi tạo và tải Nguồn cấp dữ liệu thực đơn lên, hãy tuân thủ các nguyên tắc và quy ước sau:-
Để cung cấp thông tin chi tiết về nhà hàng, hãy làm theo quy cách dữ liệu được mô tả trong Nguồn cấp dữ liệu người bán.
Để biết ví dụ về tệp JSON, hãy tham khảo JSON mẫu.
Tên tệp dữ liệu không được trùng lặp giữa các lần tải lên. Bạn nên thêm dấu thời gian vào tên tệp, ví dụ:
menu1_1633621547.json -
Trong bộ mô tả nhóm tệp cho nguồn cấp dữ liệu trình đơn, hãy đặt trường
namethànhgoogle.food_menu. Để xem ví dụ về nội dung tệp mô tả, hãy tham khảo Mẫu JSON của tệp mô tả. Tên của các tệp mô tả không được trùng lặp giữa các lần tải lên. Bạn nên thêm dấu thời gian vào tên tệp, ví dụ:descriptor_1633621547.filesetdesc.json. Bạn phải tải tệp mô tả lên máy chủ SFTP chung trong nguồn cấp dữ liệu thực đơn. - Bạn phải tải nguồn cấp dữ liệu lên máy chủ SFTP chung hằng ngày dưới dạng bản làm mới đầy đủ.
- Giới hạn nguồn cấp dữ liệu ở 1.000 phân đoạn (tệp) như đã đề cập trong phần Sử dụng sftp nguồn cấp dữ liệu chung
Bạn có thể xem trạng thái nhập nguồn cấp dữ liệu trong phần Nhập > Nhật ký của cổng đối tác. Bạn có thể tìm thấy thông tin về máy chủ SFTP của nguồn cấp dữ liệu trong mục Cấu hình > Nguồn cấp dữ liệu của Partner Portal.
Bạn có thể xem trạng thái nhập nguồn cấp dữ liệu trong phần Nhập > Nhật ký của Partner Portal. Bạn có thể tìm thấy thông tin về máy chủ SFTP của nguồn cấp dữ liệu trong mục Cấu hình > Nguồn cấp dữ liệu của Partner Portal.
Làm việc với các lựa chọn cho mục trong trình đơn
Bạn có thể chỉ định các lựa chọn cho mục trong trình đơn bằng cách sử dụng giao thức MenuItemOption.
Những đối tác có nhiều nhóm lựa chọn bắt buộc cho một mục trong trình đơn (ví dụ: một ly cà phê latte có các lựa chọn về kích thước và sữa) phải quyết định cách tốt nhất để hiển thị những lựa chọn đó trên Google. Google khuyên bạn nên làm như sau:
- Nguồn cấp dữ liệu thực đơn phải khớp với trang web đặt hàng của đối tác (hoặc thực đơn dùng bữa tại nhà hàng nếu bạn không có trang web đặt hàng cho vị trí đó).
Nếu mặt hàng được hiển thị với giá riêng lẻ trên trang web đặt hàng, bạn nên sử dụng
MenuItem. Nếu mặt hàng được đăng kèm giá cơ sở và nhiều lựa chọn, bạn nên sử dụngMenuItemOption. - Tránh đưa vào danh sách dài các lựa chọn, ví dụ:
- Burrito gà
- Bánh burrito nhân gà và phô mai
- Burrito gà với sốt salsa
- Burrito gà với sốt salsa và phô mai
- Burrito gà với sốt guacamole
- Burrito gà kèm sốt guacamole và sốt salsa
- Bạn chỉ có thể dùng các lựa chọn cho món trong thực đơn nếu món ăn yêu cầu bạn chọn một trong các lựa chọn. Ví dụ: khi đặt bánh pizza, kích thước là một lựa chọn bắt buộc. Các lựa chọn về mặt hàng trong trình đơn dành cho tiện ích bổ sung (tức là "lựa chọn thêm quả bơ") không được hỗ trợ và không nên có trong nguồn cấp dữ liệu.
Giá của lựa chọn về mặt hàng trong thực đơn phải là giá đầy đủ của mặt hàng khi bạn chọn lựa chọn đó. Bạn nên đặt giá cho mặt hàng trong thực đơn hoặc cho các lựa chọn của mặt hàng đó, nhưng không được đặt giá cho cả hai.
Nhà hàng có nhiều thực đơn
Một nhà hàng (Thực thể) chỉ có thể có một thực đơn. Đối với một nhà hàng có nhiều thực đơn (tức là thực đơn riêng cho bữa trưa và bữa tối), bạn có thể kết hợp tất cả các thực đơn thành một thực đơn duy nhất bằng MenuSections (tức là một thực đơn có phần dành cho bữa trưa và phần dành cho bữa tối). Trình đơn kết quả sẽ có cấu trúc như sau:
- Trình đơn
- Phần bữa trưa
- Súp
- Súp 1
- Súp 2
- Bánh mì sandwich
- Sandwich 1
- Sandwich 2
- Phần Bữa tối
- Đội hình ra sân
- Điều kiện khởi động 1
- Starter 2
- Mạng điện
- Món chính 1
- Món chính 2
Chia sẻ thực đơn giữa các nhà hàng
Bạn có thể chia sẻ một thực đơn cho nhiều nhà hàng bằng cách thêm tất cả nhà hàng vào danh sách merchant_ids của thực đơn. Xin lưu ý rằng danh sách này chấp nhận mã nhận dạng thực thể cho các đối tác sử dụng nguồn cấp dữ liệu Thực thể.
Các phương pháp hay nhất
Sau đây là các phương pháp hay nhất bạn nên làm theo khi phát triển nguồn cấp dữ liệu thực đơn.
- Chỉ liên kết một thực đơn với một nhà hàng.
- Cung cấp ngôn ngữ ưu tiên làm ngôn ngữ đầu tiên trong TextField. Nếu bạn đang gửi nhiều đối tượng LocalizedText, thì đối tượng đầu tiên trong danh sách văn bản sẽ được hiển thị cho người dùng.
- Bạn phải thêm tất cả món ăn trong thực đơn vào danh mục món ăn trong thực đơn. Không thêm trực tiếp các mục trong trình đơn vào đối tượng trình đơn.
- Cung cấp nội dung bằng phương thức mã hoá utf-8. Bạn không cần phải thoát các ký tự không thuộc bộ mã ASCII.
- Nếu bạn đang ra mắt ở nhiều khu vực, hãy đảm bảo rằng bạn đang sử dụng đúng mã đơn vị tiền tệ và mệnh giá trong trường đơn vị và nanos – đặc biệt chú ý đến trường nanos vì đây là 10^-9 của một đơn vị. Sử dụng Trình trực quan hoá thực đơn trong Trình xem kho hàng để xác nhận rằng bạn đã đặt giá chính xác.
- Việc cung cấp cho người dùng các trình đơn trực quan, đầy đủ và mới mẻ là yếu tố then chốt để mang lại trải nghiệm hữu ích và hấp dẫn cho người dùng. Giá, nội dung mô tả, ảnh và thông tin về chế độ ăn uống đều là những yếu tố chính thúc đẩy quá trình đưa ra quyết định và các đối tác nên cung cấp càng nhiều dữ liệu này càng tốt để mang lại trải nghiệm tối ưu cho người dùng và người bán.
- Để không hiển thị giá, hãy thêm một Giá trống trong proto Sản phẩm.
Công cụ phát triển và kiểm thử
Sau khi nguồn cấp dữ liệu thực đơn được ra mắt, dữ liệu trong nguồn cấp dữ liệu thực đơn của bạn sẽ đủ điều kiện xuất hiện trong các trải nghiệm khám phá và có thể xuất hiện trên thẻ "Thực đơn" của trang thông tin về nhà hàng. Thẻ thực đơn được hỗ trợ trên Google Tìm kiếm (thiết bị di động và máy tính), đồng thời trải nghiệm này sẽ được mở rộng sang các nền tảng khác, bao gồm cả Google Maps. Trải nghiệm được kết xuất có thể khác nhau tuỳ thuộc vào nền tảng.
Để đảm bảo thực đơn của bạn được cấu trúc chính xác, hãy sử dụng Trình trực quan hoá thực đơn trong Trình xem kho hàng để xem trước thực đơn.
Thực đơn của nhà hàng có thể đến từ nhiều nguồn, bao gồm cả nhà hàng thông qua Trang doanh nghiệp trên Google, đối tác đặt món ăn và đặt chỗ, ảnh thực đơn do người dùng chụp và nhiều nguồn khác. Nếu có nhiều nguồn cung cấp thực đơn cho cùng một nhà hàng, thì người bán có thể chọn nhà cung cấp ưu tiên trong trình chỉnh sửa thực đơn của Trang doanh nghiệp trên Google.
Lược đồ
Bạn có thể xem toàn bộ giản đồ trình đơn tại đây.
FoodMenuFeed
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
data | mảng đối tượng(MenuComponent) |
MenuComponent
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
| oneOf(type) | Bạn chỉ có thể đặt một trong các trường trong oneOf này. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
menu_id | chuỗi | Bắt buộc | Một chuỗi mờ của đối tác, xác định duy nhất Thực đơn trong nguồn cấp dữ liệu của đối tác. Bắt buộc. |
merchant_ids | mảng chuỗi | Bắt buộc | Những người bán mà thực đơn áp dụng. Lưu ý: Trường này được lặp lại để các chuỗi nhà hàng có thể dùng chung một thực đơn trên nhiều địa điểm, mỗi địa điểm là một người bán riêng biệt. Bắt buộc. |
display_name | object(TextField) | Tên có thể xác định Trình đơn khi người dùng duyệt xem trình đơn. Không bắt buộc. | |
language | chuỗi | Mã ngôn ngữ mặc định được liên kết với nhãn văn bản có trong trình đơn. Mong đợi mã ngôn ngữ BCP-47, chẳng hạn như "en-US" hoặc "sr-Latn". Để biết thêm thông tin, hãy xem http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Không bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
text | mảng đối tượng(LocalizedText) | Bắt buộc | Giá trị văn bản theo ngôn ngữ. Nếu chỉ có một ngôn ngữ mong muốn được hỗ trợ, thì bạn không cần đặt language_code trong mỗi văn bản và ngôn ngữ sẽ được suy luận từ ngôn ngữ mặc định của trình đơn. Nếu có nhiều văn bản ở nhiều ngôn ngữ, thì bạn phải đặt language_code cho từng văn bản. Văn bản đầu tiên trong danh sách được coi là biểu diễn ưu tiên. Bắt buộc. |
LocalizedText
Biến thể được bản địa hoá của một văn bản bằng một ngôn ngữ cụ thể.
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
text | chuỗi | Chuỗi đã bản địa hoá bằng ngôn ngữ tương ứng với [language_code][google.type.LocalizedText.language_code] bên dưới. | |
language_code | chuỗi | Mã ngôn ngữ BCP-47 của văn bản, chẳng hạn như "en-US" hoặc "sr-Latn". Để biết thêm thông tin, hãy xem http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
menu_section_id | chuỗi | Bắt buộc | Một chuỗi mờ của đối tác giúp xác định duy nhất MenuSection trong nguồn cấp dữ liệu của đối tác. Bắt buộc. |
display_name | object(TextField) | Bắt buộc | Tên có thể xác định MenuSection khi người dùng đang duyệt xem trình đơn. Bắt buộc. |
description | object(TextField) | Nội dung mô tả về danh mục món ăn trong thực đơn. Không bắt buộc. | |
images | mảng đối tượng(Image) | (Các) hình ảnh của danh mục món ăn trong thực đơn. Không bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
uri | chuỗi | Bắt buộc | URL chứa các pixel thô của hình ảnh. Bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
menu_item_id | chuỗi | Bắt buộc | Một chuỗi mờ của đối tác, xác định duy nhất MenuItem trong nguồn cấp dữ liệu của đối tác. Bắt buộc. |
display_name | object(TextField) | Bắt buộc | Tên có thể xác định MenuItem khi người dùng duyệt xem trình đơn. Bắt buộc. |
description | object(TextField) | Nội dung mô tả về mục trong trình đơn. Không bắt buộc. | |
images | mảng đối tượng(Image) | (Các) hình ảnh của mục trong trình đơn. Không bắt buộc. | |
| oneOf(pricing) | Bắt buộc | Bạn chỉ có thể đặt một trong các trường trong oneOf này. |
item_attributes | object(MenuItemAttributes) | Các thuộc tính về mục trong trình đơn này. Không bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
offers | mảng đối tượng(Offer) | Bắt buộc | Danh sách các ưu đãi có thể có. Bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
price | object(Money) | Các trường hợp sau đây là không hợp lệ và sẽ dẫn đến việc mục trong trình đơn bị loại bỏ: Giá không có mã đơn vị tiền tệ nhưng có đơn vị hoặc nanos hoặc cả hai: price {units: 100, nanos: 1000000} price {units: 100} price {nanos: 1000000} Giá có mã đơn vị tiền tệ không hợp lệ nhưng có đơn vị hoặc nanos hoặc cả hai: price {currency_code: 'gXYZ', units: 100, nanos: 1000000} price {currency_code: 'gXYZ', units: 100} price {currency_code: 'gXYZ', nanos: 1000000} Giá có mã đơn vị tiền tệ nhưng đơn vị hoặc nanos không hợp lệ price {currency_code: 'USD', units: 100, nanos: -100} price {currency_code: 'USD', units: -100, nanos: 100} |
Tiền
Biểu thị một số tiền cùng với loại đơn vị tiền tệ.
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
currency_code | chuỗi | Mã đơn vị tiền tệ gồm 3 chữ cái được xác định trong ISO 4217. | |
units | chuỗi | Đơn vị số tiền là số nguyên.
Ví dụ: nếu currencyCode là "USD", thì 1 đơn vị là 1 đô la Mỹ. | |
nanos | số | Số lượng đơn vị nano (10^-9) của số tiền.
Giá trị phải nằm trong khoảng từ -999.999.999 đến +999.999.999 (bao gồm).
Nếu units là số dương, thì nanos phải là số dương hoặc 0.
Nếu units bằng 0, thì nanos có thể là số dương, số 0 hoặc số âm.
Nếu units là số âm, thì nanos phải là số âm hoặc 0.
Ví dụ: -1,75 USD được biểu thị là units=-1 và nanos=-750.000.000. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
menu_item_option_ids | mảng chuỗi | Bắt buộc | Mã nhận dạng của các lựa chọn trong mục trình đơn áp dụng cho mục trình đơn này. Bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
number_of_servings | số | Số lượng khẩu phần có trong một món ăn cụ thể. Không bắt buộc. | |
nutrition_information | object(NutritionInformation) | Mô tả tất cả thông tin dinh dưỡng của mặt hàng, ví dụ: lượng calo, hàm lượng chất béo. Không bắt buộc. | |
suitable_diets | mảng enum(DietaryRestriction) | Các quy định hạn chế trong chế độ ăn uống mà mục này trong thực đơn tuân thủ. Không bắt buộc. | |
additive | mảng đối tượng(Additive) | Chất phụ gia của món ăn này. Không bắt buộc. | |
allergen | mảng đối tượng(Allergen) | Chất gây dị ứng của món ăn này. Không bắt buộc. | |
packaging_deposit_info | object(DepositInfo) | Thông tin về bao bì và khả năng tái chế của mục này trong thực đơn. Không bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
energy | object(NutritionValue) | Lượng năng lượng dinh dưỡng của khẩu phần ăn. Có thể được xác định bằng Calo hoặc kilojoule. Không bắt buộc. | |
sodium_content | object(NutritionValue) | Lượng natri, tính bằng gam hoặc miligam. Không bắt buộc. | |
serving_size | số | Số khẩu phần mà giá trị dinh dưỡng áp dụng. Không bắt buộc. | |
description | object(TextField) | Thông tin dinh dưỡng ở dạng văn bản tự do. Ví dụ: "Chứa chất bảo quản". Không bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
| oneOf(value) | Bạn chỉ có thể đặt một trong các trường trong oneOf này. | |
unit | enum(NutritionValueUnit) | Bắt buộc | Đơn vị liên kết với số tiền do đối tác chỉ định. Chúng tôi sẽ xác thực nguồn cấp dữ liệu để đảm bảo đơn vị cho từng loại giá trị dinh dưỡng được dự kiến cho loại giá trị đó. Ví dụ: chỉ ENERGY_CALORIES và ENERGY_KILOJOULES được dự kiến có trên thuộc tính năng lượng của NutritionalInformation. Bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
min | số | Bắt buộc | Lượng giá trị dinh dưỡng tối thiểu. Bắt buộc. |
max | số | Bắt buộc | Lượng giá trị dinh dưỡng tối đa. Bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
name | object(TextField) | Bắt buộc | Văn bản mô tả về chất phụ gia, ví dụ: "chất bảo quản". Bắt buộc. |
containment_level_code | enum(ContainmentLevelCode) | MenuItem có chứa, có thể chứa hoặc không chứa chất phụ gia này. Mặc định là chứa. Không bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
allergen_type_code | enum(AllergenTypeCode) | Bắt buộc | Loại chất gây dị ứng. Bắt buộc. |
containment_level_code | enum(ContainmentLevelCode) | MenuItem có chứa, có thể chứa hoặc không chứa chất gây dị ứng này. Mặc định là chứa. Không bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
deposit_code | enum(DepositCode) | Chiến lược đặt cọc sẽ được sử dụng, ví dụ: "có thể sử dụng lại". Không bắt buộc. | |
deposit_value | object(Money) | Giá trị được hoàn lại khi bạn gửi mặt hàng đúng cách. Không bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
menu_item_option_id | chuỗi | Bắt buộc | Một chuỗi mờ của đối tác giúp xác định duy nhất MenuItemOption trong nguồn cấp dữ liệu của đối tác. Bắt buộc. |
value | object(MenuItemOptionProperty) | Bắt buộc | Thuộc tính và giá trị của lựa chọn, ví dụ: Kích thước: Nhỏ. Bắt buộc. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
property_type | enum(PropertyType) | Bắt buộc | Loại tài sản của lựa chọn này. Bắt buộc. |
| oneOf(value) | Bắt buộc | Bạn chỉ có thể đặt một trong các trường trong oneOf này. |
NutritionValueUnit
| Tên | Mô tả |
|---|---|
NUTRITION_VALUE_UNIT_UNSPECIFIED | Không được dùng. Bạn chưa đặt rõ ràng đơn vị giá trị dinh dưỡng. |
ENERGY_CALORIES | Đơn vị dùng để biểu thị lượng năng lượng trong một mục trên trình đơn. |
ENERGY_KILOJOULES | |
WEIGHT_MILLIGRAMS | Đơn vị dùng để biểu thị số lượng theo trọng lượng của một chất có trong mục trên trình đơn. |
WEIGHT_GRAMS |
DietaryRestriction
Cho biết quy định hạn chế hoặc hướng dẫn về chế độ ăn uống được tuân thủ trong quá trình chuẩn bị thực phẩm.
| Tên | Mô tả |
|---|---|
DIET_UNSPECIFIED | Không được dùng. Quy định hạn chế trong chế độ ăn uống không được chỉ định rõ ràng. |
DIET_DIABETIC | |
DIET_GLUTEN_FREE | |
DIET_HALAL | |
DIET_HINDU | |
DIET_KOSHER | |
DIET_LOW_CALORIE | |
DIET_LOW_FAT | |
DIET_LOW_LACTOSE | |
DIET_LOW_SALT | |
DIET_VEGAN | |
DIET_VEGETARIAN |
ContainmentLevelCode
Cho biết mức độ chứa một thuộc tính nhất định của một mặt hàng thực phẩm, chẳng hạn như chất gây dị ứng hoặc chất phụ gia.
| Tên | Mô tả |
|---|---|
CONTAINMENT_LEVEL_CODE_UNSPECIFIED | Không được dùng. Bạn chưa chỉ định rõ mã cấp độ chứa. |
CONTAINMENT_LEVEL_CODE_CONTAINS | |
CONTAINMENT_LEVEL_CODE_DOES_NOT_CONTAIN | |
CONTAINMENT_LEVEL_CODE_MAY_CONTAIN |
AllergenTypeCode
Loại chất gây dị ứng bắt nguồn từ GS1: http://gs1.org/voc/AllergenTypeCode
| Tên | Mô tả |
|---|---|
ALLERGEN_TYPE_CODE_UNSPECIFIED | Không được dùng. Mã loại chất gây dị ứng không được chỉ định rõ ràng. |
ALLERGEN_TYPE_CODE_ALMONDS | |
ALLERGEN_TYPE_CODE_ALPHA_ISOMETHYL_IONONE | |
ALLERGEN_TYPE_CODE_ALCOHOL | |
ALLERGEN_TYPE_CODE_AMYL_CINNAMAL | |
ALLERGEN_TYPE_CODE_ANISE_ALCOHOL | |
ALLERGEN_TYPE_CODE_BARLEY | |
ALLERGEN_TYPE_CODE_BENZYL_ALCOHOL | |
ALLERGEN_TYPE_CODE_BENZYL_BENZOATE | |
ALLERGEN_TYPE_CODE_BENZYL_CINNAMATE | |
ALLERGEN_TYPE_CODE_BENZYL_SALICYLATE | |
ALLERGEN_TYPE_CODE_BRAZIL_NUTS | |
ALLERGEN_TYPE_CODE_BUTYLPHENYL_METHYLPROPIONATE | |
ALLERGEN_TYPE_CODE_CARROTS | |
ALLERGEN_TYPE_CODE_CASHEW_NUTS | |
ALLERGEN_TYPE_CODE_CELERY | |
ALLERGEN_TYPE_CODE_CEREALS_CONTAINING_GLUTEN | |
ALLERGEN_TYPE_CODE_CINNAMAL | |
ALLERGEN_TYPE_CODE_CINNAMYL_ALCOHOL | |
ALLERGEN_TYPE_CODE_CITRAL | |
ALLERGEN_TYPE_CODE_CITRONELLOL | |
ALLERGEN_TYPE_CODE_COCOA | |
ALLERGEN_TYPE_CODE_CORIANDER | |
ALLERGEN_TYPE_CODE_CORN | |
ALLERGEN_TYPE_CODE_COUMARIN | |
ALLERGEN_TYPE_CODE_CRUSTACEANS | |
ALLERGEN_TYPE_CODE_EGGS | |
ALLERGEN_TYPE_CODE_EUGENOL | |
ALLERGEN_TYPE_CODE_EVERNIA_FURFURACEA | |
ALLERGEN_TYPE_CODE_EVERNIA_PRUNASTRI | |
ALLERGEN_TYPE_CODE_FARNESOL | |
ALLERGEN_TYPE_CODE_FISH | |
ALLERGEN_TYPE_CODE_GERANIOL | |
ALLERGEN_TYPE_CODE_GLUTEN | |
ALLERGEN_TYPE_CODE_HAZELNUTS | |
ALLERGEN_TYPE_CODE_HEXYL_CINNAMAL | |
ALLERGEN_TYPE_CODE_HYDROXYCITRONELLAL | |
ALLERGEN_TYPE_CODE_HYDROXYISOHEXYL_3_CYCLOHEXENE_CARBOXALDEHYDE_ISOEUGENOL_LIMONENE_LINAL | |
ALLERGEN_TYPE_CODE_KAMUT | |
ALLERGEN_TYPE_CODE_LACTOSE | |
ALLERGEN_TYPE_CODE_LUPINE | |
ALLERGEN_TYPE_CODE_MACADAMIA_NUTS | |
ALLERGEN_TYPE_CODE_METHYL_2_OCTYNOATE | |
ALLERGEN_TYPE_CODE_MILK | |
ALLERGEN_TYPE_CODE_MOLLUSCS | |
ALLERGEN_TYPE_CODE_MUSTARD | |
ALLERGEN_TYPE_CODE_NO_DECLARED_ALLERGENS | |
ALLERGEN_TYPE_CODE_OAT | |
ALLERGEN_TYPE_CODE_PEANUTS | |
ALLERGEN_TYPE_CODE_PEAS | |
ALLERGEN_TYPE_CODE_PECAN_NUTS | |
ALLERGEN_TYPE_CODE_PISTACHIOS | |
ALLERGEN_TYPE_CODE_POD_FRUITS | |
ALLERGEN_TYPE_CODE_QUEENSLAND_NUTS | |
ALLERGEN_TYPE_CODE_RYE | |
ALLERGEN_TYPE_CODE_SESAME_SEEDS | |
ALLERGEN_TYPE_CODE_SOYBEANS | |
ALLERGEN_TYPE_CODE_SPELT | |
ALLERGEN_TYPE_CODE_SULPHUR_DIOXIDE | |
ALLERGEN_TYPE_CODE_TREE_NUTS | |
ALLERGEN_TYPE_CODE_TREE_NUT_TRACES | |
ALLERGEN_TYPE_CODE_WALNUTS | |
ALLERGEN_TYPE_CODE_WHEAT |
DepositCode
Cho biết cách bỏ đúng cách một món ăn hoặc chai.
| Tên | Mô tả |
|---|---|
DEPOSIT_CODE_UNSPECIFIED | Không được dùng. Bạn không chỉ định rõ mã tiền gửi. |
DEPOSIT_CODE_REUSABLE | |
DEPOSIT_CODE_RECYCLABLE |
PropertyType
Các loại cơ sở lưu trú mà lựa chọn này dành cho.
| Tên | Mô tả |
|---|---|
UNKNOWN_PROPERTY_TYPE | Không được dùng. Bạn chưa chỉ định rõ ràng loại tài sản. |
OPTION | Một thuộc tính chung của lựa chọn trong mục trình đơn, không phải là một trong những loại cụ thể hơn bên dưới. Sử dụng thuộc tính này nếu thuộc tính không thuộc loại SIZE hoặc PIZZA_SIDE. |
SIZE | Biểu thị thuộc tính lựa chọn của mục trong trình đơn về kích thước (ví dụ: nhỏ, trung bình hoặc lớn). |
PIZZA_SIDE | Thuộc tính dành riêng cho pizza. Ví dụ: MenuItemOption này chỉ hợp lệ cho một phần/toàn bộ chiếc bánh pizza, chẳng hạn như các loại topping nấm ở bên trái, bên phải hoặc toàn bộ chiếc bánh pizza). |
PropertyValue
Giá trị được xác định rõ cho thuộc tính lựa chọn.
| Tên | Mô tả |
|---|---|
UNKNOWN_PROPERTY_VALUE | Không được dùng. Giá trị thuộc tính không được chỉ định rõ ràng. |
PIZZA_SIDE_LEFT | MenuItemOption chỉ áp dụng cho nửa bên trái của pizza. |
PIZZA_SIDE_RIGHT | MenuItemOption chỉ áp dụng cho nửa bên phải của pizza. |
PIZZA_SIDE_WHOLE | MenuItemOption áp dụng cho toàn bộ chiếc bánh pizza. |
loại
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
menu | object(Menu) | Loại trừ lẫn nhau với | |
section | object(MenuSection) | Loại trừ lẫn nhau với | |
item | object(MenuItem) | Loại trừ lẫn nhau với | |
option | object(MenuItemOption) | Loại trừ lẫn nhau với |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
offer_set | object(OfferSet) | Loại trừ lẫn nhau với | Các ưu đãi hiện có để mua mặt hàng thực phẩm này. |
menu_item_option_set | object(MenuItemOptionSet) | Loại trừ lẫn nhau với | Các lựa chọn có sẵn cho mục trình đơn này. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
amount | số | Loại trừ lẫn nhau với | Một con số duy nhất thể hiện giá trị dinh dưỡng. |
range | object(Range) | Loại trừ lẫn nhau với | Một phạm vi thể hiện lượng giá trị dinh dưỡng. |
| Tên trường | Loại | Yêu cầu | Mô tả |
|---|---|---|---|
property_val | enum(PropertyValue) | Loại trừ lẫn nhau với | Một giá trị được xác định rõ cho thuộc tính lựa chọn. Hiện chỉ được mong đợi nếu property_type là PIZZA_SIDE. |
text_val | object(TextField) | Loại trừ lẫn nhau với | Văn bản dạng tự do cho giá trị của thuộc tính. Dự kiến cho property_type OPTION và SIZE. |