Giản đồ khoảng không quảng cáo quan hệ

Trang này mô tả định dạng của nguồn cấp dữ liệu đặt món hai đầu (Quy cách danh mục thực phẩm) mà bạn cung cấp cho Google. Đối với phiên bản thông tin này mà máy có thể đọc được, bạn có thể tải giản đồ JSON xuống.

Yêu cầu chung

Các thực thể phải được cấu trúc trên một dòng cho mỗi thực thể trong nguồn cấp dữ liệu (các thực thể được phân tách bằng các ký tự dòng mới). Để dễ đọc, các ví dụ về JSON trên trang này không tuân theo cấu trúc đó. Tuy nhiên, bạn phải tuân theo cấu trúc đó khi gửi nguồn cấp dữ liệu. Ví dụ: một thực thể trình đơn phải có cấu trúc như đoạn mã sau:

{"@type": "Menu","name": "Coffee Shop A","@id": "1535"}

Mỗi thực thể "Nhà hàng" có thể có hai thực thể Dịch vụ (mỗi thực thể dành cho loại dịch vụ "GỬI" và "CỬA HÀNG"). Mỗi thực thể "Service" (Dịch vụ) chỉ có thể có một thực thể "Menu".

Mọi thực thể phụ đều có thể được sử dụng lại trong nhiều nhà hàng.

Nguyên tắc về giá trị JSON

Loại ép buộc

Một loại giá trị JSON có thể khác với loại được xác định trong giản đồ, miễn là giá trị có thể được chuyển đổi thành loại bắt buộc. Ví dụ: các thuộc tính chuỗi có thể chấp nhận cả chuỗi và giá trị số nguyên làm dữ liệu đầu vào. Tương tự, các thuộc tính số nguyên có thể chấp nhận giá trị chuỗi miễn là chuỗi có thể được phân tích cú pháp thành số nguyên hợp lệ.

Ép buộc loại cũng áp dụng cho các thuộc tính lặp lại. Các thuộc tính lặp lại có thể chấp nhận các giá trị làm dữ liệu đầu vào mà không cần đặt trong dấu ngoặc []. Ví dụ: thuộc tính OperationHours.serviceId chấp nhận cả "service_id"["service_id"] làm dữ liệu đầu vào hợp lệ.

Giá trị ngày giờ và thời gian

DateTime dựa trên loại schema.org. và trừ phi có quy định khác, dữ liệu phải tuân theo định dạng ISO 8601, bao gồm cả ngày, giờ và múi giờ. Sử dụng cú pháp sau cho DateTime:

// DateTime format:
YYYY-MM-DDTHH:MM:SS[∓HH:MM|Z]

Ví dụ:

2017-05-01T06:30:00-07:00 // UTC minus 7 hours
2017-05-01T06:30:00Z  // UTC time zone. The optional "Z" suffix represents the UTC time zone.

Time là giờ địa phương cho múi giờ của một địa điểm kinh doanh hoặc nhà hàng nhất định, cũng dựa trên loại schema.org và cũng phải tuân theo định dạng ISO 8601. Thời gian sử dụng cú pháp sau:

// Time format:
THH:MM:SS

Ví dụ:

T08:08:00 // 8:08 AM

Hãy lưu ý những điều sau mỗi khi bạn chỉ định DateTime hoặc Time:

  • Tiền tố "T" trước thời gian là một phần của định dạng và bắt buộc.
  • Bạn phải chỉ định múi giờ cho DATETIME. Tệp này không bắt buộc đối với TIME.
  • Bạn phải chỉ định thời gian theo giờ địa phương của nhà hàng hoặc dịch vụ.

Dữ liệu về nhà hàng

Nhà hàng (bắt buộc)

Một thực thể bắt buộc để triển khai. Mô tả một nhà hàng.

Bảng sau đây liệt kê các thuộc tính của loại Restaurant:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: Restaurant

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của nhà hàng hoặc nhà cung cấp dịch vụ giao đồ ăn.

Ví dụ: restaurant_1

name String

Bắt buộc.

Tên nhà hàng.

Ví dụ: Foo

description String

Nội dung mô tả về nhà hàng.

Ví dụ: Best seafood in town

url URL

URL đại diện cho nhà hàng. Miền nhà hàng được ưu tiên hơn miền của đơn vị tập hợp.

Ví dụ: http://www.provider.com/somerestaurant

sameAs URL

Trang web chính thức của nhà hàng.

Ví dụ: http://www.provider2.com/somerestaurant

telephone String

Số điện thoại của nhà hàng.

Ví dụ: +12345665898

streetAddress String

Bắt buộc.

Địa chỉ đường phố của nhà hàng.

Ví dụ: 12345 Bar Avenu

addressLocality String

Bắt buộc.

Địa phương hoặc thành phố.

Ví dụ: San Francisco

addressRegion String

Bắt buộc.

Khu vực hoặc tiểu bang.

Ví dụ: CA

postalCode String

Bắt buộc.

Mã bưu chính.

Ví dụ: 94124

addressCountry String

Bắt buộc.

Mã quốc gia gồm hai chữ cái theo ISO 3166-1 alpha-2.

Ví dụ: US

latitude Number

Vĩ độ tính theo độ. Giá trị được giới hạn trong phạm vi [[-90, 90]]. Giá trị này phải có ít nhất 5 chữ số thập phân.

Ví dụ: 35.7392607

longitude Number

Kinh độ tính theo độ. Giá trị được giới hạn trong phạm vi [[-180, 180]]. Giá trị này phải có ít nhất 5 chữ số thập phân.

Ví dụ: -120.3895522

dealId List<String>

Các khoản Deal áp dụng tại nhà hàng.

imprint String

Chi nhánh nhà hàng là một mục thông tin bổ sung về nhà hàng, chẳng hạn như tên pháp lý, địa chỉ hợp pháp và số đăng ký. Thông tin này có thể được định dạng bằng " ".

Ví dụ:

Three Brothers Tacos
123 FooSt
Mountain View
CA 94041, United States
email: contact@threebrotherstacos.com

Commercial Register: 123456789

economicOperator String

Thông tin về đơn vị vận hành kinh tế liên quan đến nhà hàng, nếu có. Thông tin này sẽ được hiển thị trong phần Thông tin về người bán. Bạn có thể định dạng văn bản bằng " ".

Ví dụ:

XYZ Corp
123 Main Street
555-555-5555

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể Nhà hàng ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

Ví dụ sau đây cho thấy một phần tử Restaurant:

Ví dụ:

{
  "@type": "Restaurant",
  "@id": "10824",
  "name": "Pronto Wood Fired Pizzeria",
  "url": "https://www.provider.com/pronto-wood-fired-pizzeria",
  "telephone": "+16503659978",
  "streetAddress": "2560 El Camino Real",
  "addressLocality": "Palo Alto",
  "addressRegion": "CA",
  "postalCode": "94061",
  "addressCountry": "US",
  "latitude": 37.472842,
  "longitude": -122.217144
}

Thỏa thuận

Các loại chiết khấu có thể áp dụng cho giỏ hàng.

Bảng sau đây liệt kê các thuộc tính của loại Deal:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: Deal

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của giao dịch.

Ví dụ: FREEDELIVERY

dealCode String

Bắt buộc.

Mã giao dịch duy nhất cho mỗi giao dịch của mỗi đối tác. Mã này phải xác định duy nhất ưu đãi trong hệ thống khuyến mãi của bạn. Google gửi cho bạn giá trị nhận dạng này trong trường promotions.coupon của CheckoutRequest để xác thực.

Ví dụ: ADETRE23

applicableServiceType Danh sách<ServiceType>

Dịch vụ mà thỏa thuận này được áp dụng. Mặc định giả định một giao dịch áp dụng cho tất cả.

eligibleMaxOrders Số nguyên

Giao dịch này chỉ đủ điều kiện khi người dùng có ít hơn hoặc bằng số lượng đơn đặt hàng thành công trong quá khứ này.

availabilityId List<String>

Giá trị @id của các thực thể về Tình trạng còn hàng cung cấp thông tin chi tiết về thời điểm có sẵn mục trình đơn.

Ví dụ: [ "availability_1" ]

isDisabled Boolean

Thao tác này sẽ ghi đè các bước kiểm tra tính hợp lệ khác.

dealType DealType

Bắt buộc.

Danh mục giao dịch để áp dụng chiết khấu. Danh mục này có thể là tổng giá trị của toàn bộ giỏ hàng, phí dịch vụ hoặc phí giao hàng.

priceCurrency String

Bắt buộc khi discount is defined.

Bắt buộc khi eligibleTransactionVolumeMin is defined.

Đơn vị tiền tệ (theo định dạng 3 chữ cái theo ISO 4217) của khoản chiết khấu.

Ví dụ: USD

eligibleTransactionVolumeMin Number

Số lượng giao dịch (bằng đơn vị tiền tệ) mà chương trình khuyến mãi này có hiệu lực.

termsOfServiceUrl URL

Bắt buộc.

Tài liệu điều khoản dịch vụ mà con người có thể đọc được.

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể Ưu đãi ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

Bạn phải chọn đúng một trong các nhóm cơ sở lưu trú sau.
discount Nhóm 1 Number

Giá trị chiết khấu dưới dạng số.

discountPercentage Nhóm 2 Number

Giá trị của khoản chiết khấu tính theo phần trăm so với giá gốc.

Ví dụ sau đây cho thấy một phần tử Deal:

Ví dụ 1

{
  "@type": "Deal",
  "@id": "ONEDOLLARFEE",
  "dealCode": "THREEDOLLARFEE",
  "dealType": "CART_OFF",
  "availabilityId": [
    "availability_may2020"
  ],
  "termsOfServiceUrl": "http://www.provider.com/onedollardeal",
  "applicableServiceType": [
    "TAKEOUT"
  ],
  "discount": 3,
  "priceCurrency": "USD"
}

Ví dụ 2

{
  "@type": "Deal",
  "@id": "10PERCOFF",
  "dealCode": "10PERCOFF",
  "dealType": "CART_OFF",
  "availabilityId": [
    "availability_weekdays_evening"
  ],
  "termsOfServiceUrl": "http://www.provider.com/deal",
  "discountPercentage": 10,
  "priceCurrency": "USD"
}

Ví dụ 3

{
  "@type": "Deal",
  "@id": "FREEDELIVERY",
  "dealCode": "FREEDELIVERY",
  "dealType": "DELIVERY_OFF",
  "availabilityId": [
    "availability_may"
  ],
  "applicableServiceType": [
    "DELIVERY"
  ],
  "termsOfServiceUrl": "http://www.provider.com/free_delivery_deal",
  "discountPercentage": 100,
  "eligibleTransactionVolumeMin": 25,
  "priceCurrency": "USD"
}

Dữ liệu dịch vụ

Dịch vụ (bắt buộc)

Mô tả chi tiết về dịch vụ đặt món ăn của một nhà hàng. Service là một thực thể bắt buộc để triển khai.

Bảng sau đây liệt kê các thuộc tính của loại Service:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: Service

@id String

Bắt buộc.

Giá trị nhận dạng cho dịch vụ thực hiện đơn hàng.

Ví dụ: service_1

serviceType ServiceType

Bắt buộc.

Loại dịch vụ được cung cấp. Giá trị có thể là "delivery" hoặc "TakeOUT".

Ví dụ: DELIVERY

restaurantId String

Bắt buộc.

Giá trị @id của thực thể Nhà hàng tương ứng với thực thể Dịch vụ này.

Ví dụ: restaurant_1

menuId String

Bắt buộc.

Giá trị @id của thực thể Trình đơn tương ứng với thực thể Dịch vụ này.

Ví dụ: menu_1

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể Dịch vụ ở định dạng dấu thời gian ISO.

Ví dụ: 2017-01-02T00:00:00-07:00

isDisabled Boolean

Cho biết liệu thực thể có bị vô hiệu hoá hay không. Chỉ sử dụng loại này khi bạn phải vô hiệu hoá thực thể do một sự kiện không mong muốn và bạn không biết khi nào dịch vụ sẽ được thiết lập lại (ví dụ: không dùng cho ngày lễ).

Ví dụ: true

servingConfig ServingConfig

Cấu hình phân phát của dịch vụ được dùng để kiểm soát nhiều tính năng. Ví dụ: tắt tiện ích khuyến mãi, v.v.

actionLinkUrl String

Chứa URL của dịch vụ giao hàng/lấy đồ ăn mang về. Dịch vụ này sẽ được sử dụng trong khi chuyển từ trải nghiệm đặt đồ ăn hai đầu sang dịch vụ chuyển hướng.

Ví dụ sau đây cho thấy một phần tử Service:

Ví dụ 1

{
  "@type": "Service",
  "@id": "10824/takeout",
  "serviceType": "TAKEOUT",
  "menuId": "10824",
  "restaurantId": "10824",
  "actionLinkUrl": "https://www.rwgpartnerwebsite.com/foodorderpickup/merchant_foepa_3"
}

Ví dụ 2

{
  "@type": "Service",
  "@id": "10824/delivery",
  "serviceType": "DELIVERY",
  "menuId": "10824",
  "restaurantId": "10824",
  "actionLinkUrl": "https://www.rwgpartnerwebsite.com/foodorderdelivery/merchant_foepa_3"
}

ServiceArea

Mô tả khu vực địa lý nơi có thể giao thực phẩm. Thực thể này là bắt buộc phải triển khai nếu thực thể Service được liên kết đã đặt serviceType thành "PHÂN PHỐI".

Bảng sau đây liệt kê các thuộc tính của loại ServiceArea:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: ServiceArea

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của khu vực kinh doanh.

Ví dụ: service_area_1

serviceId List<String>

Bắt buộc.

Giá trị @id của thực thể Service tương ứng với thực thể ServiceArea này.

Ví dụ: [ "service_1" ]

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể ServiceArea ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

exclude Boolean

Loại trừ khu vực kinh doanh này khỏi tổng khu vực giao hàng. Ví dụ: mã zip có thể bị loại trừ khỏi một khu vực đa giác lớn hơn.

Bạn phải chọn đúng một trong các nhóm cơ sở lưu trú sau.
polygon Nhóm 1 List<String>

Một đa giác hoặc nhiều đa giác được biểu thị dưới dạng một chuỗi gồm ba điểm trở lên và được phân cách bằng khoảng trắng. Điểm đầu tiên và điểm cuối cùng nên giống nhau, nhưng không bắt buộc. Mỗi điểm trong một đa giác hoặc nhiều đa giác được xác định bởi một điểm vĩ độ theo sau là một điểm kinh độ. Bạn cũng phải chỉ định các điểm theo chiều ngược kim đồng hồ.

Ví dụ: [ "37.806000 -122.425592 37.775849 -122.419043 37.795547 -122.394046 37.808747" ]

geoMidpointLatitude Nhóm 2 Number

Cho biết toạ độ theo vĩ độ ở trung tâm khu vực CIRCLE.

Ví dụ: 37.806000

geoMidpointLongitude Nhóm 2 Number

Cho biết toạ độ theo kinh độ ở trung tâm khu vực CIRCLE.

Ví dụ: -122.425592

geoRadius Nhóm 2 Số nguyên

Cho biết bán kính gần đúng (tính bằng mét) của khu vực CIRCLE.

Ví dụ: 10000

postalCode Nhóm 3 String

Cho biết mã bưu chính.

Ví dụ: 91234

addressCountry Nhóm 3 String

Cho biết mã quốc gia gồm hai chữ cái theo ISO 3166-1 alpha-2

Ví dụ: US

Ví dụ sau đây cho thấy một phần tử ServiceArea:

Ví dụ:

{
  "@type": "ServiceArea",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "polygon": [
    "37.4818562 -122.25801303 37.48247836 -122.25801303 37.48434484 -122.25621319 37.48621133 -122.25424681 37.49181077 -122.24704744 37.49305509 -122.24541414 37.49429942 -122.2436143 37.49803238 -122.23821477 37.49803238 -122.21285044 37.49367726 -122.15885517 37.49056645 -122.15722187 37.48621133 -122.15542202 37.48558917 -122.15525548 37.4818562 -122.15525548 37.43191387 -122.17865343 37.43191387 -122.23444854"
  ]
}

Giờ hoạt động (bắt buộc)

Mô tả cửa sổ đặt hàng mà người dùng có thể truy cập vào quy trình và đặt hàng sớm nhất có thể hoặc trong tương lai. Bạn bắt buộc phải triển khai OperationHours và chế độ mặc định sẽ biểu thị hoạt động vào mọi giờ của mọi ngày.

Thuộc tính OperationHours openscloses chỉ định thời gian mở và đóng cửa cho hệ thống trực tuyến cho phép người dùng đặt hàng. Trong những giờ hệ thống trực tuyến đó, hãy sử dụng ServiceHours để chỉ định giờ mở cửa và đóng cửa đối với thời điểm thực hiện đơn đặt hàng của người dùng.

Thời gian phải được chỉ định theo giờ địa phương cho dịch vụ. Không đưa múi giờ vào giá trị opens. Nếu bạn chỉ định múi giờ, Google sẽ bỏ qua thông tin này. Để biết thêm thông tin, hãy xem bài viết Định dạng ngày giờ và thời gian.

Bảng sau đây liệt kê các thuộc tính của loại OperationHours:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: OperationHours

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của thực thể mô tả khung thời gian đặt hàng mà người dùng có thể truy cập vào quy trình và đặt các đơn hàng càng sớm càng tốt/trong tương lai.

Ví dụ: operation_hour_1

serviceId List<String>

Bắt buộc.

Giá trị @id của thực thể Service tương quan với thực thể OperationHours này.

Ví dụ: [ "service_1" ]

opens Giờ ISO (Địa phương)

Cho biết thời gian cụ thể trong ngày ở định dạng ISO bắt đầu từ thời điểm người dùng có thể đặt hàng.

Ví dụ: T00:00

closes Giờ ISO (Địa phương)

Cho biết thời gian cụ thể trong ngày ở định dạng ISO mà vượt quá thời gian mà đơn đặt hàng của người dùng không thể đặt được.

Ví dụ: T16:00

dayOfWeek Danh sách<DayOfWeek>

Danh sách(các) ngày trong tuần có những giờ hoạt động này hợp lệ. Giá trị được chấp nhận là "THỨ HAI", "THỨ BA", "THỨ TƯ", "THỨ NĂM", "THỨ SÁU", "THỨ BẢY" và "CHỦ NHẬT".

Ví dụ: [ "MONDAY", "TUESDAY" ]

validFrom Dấu thời gian ISO

Bắt buộc khi isSpecialHour = true.

Dấu thời gian ISO cho biết thời điểm bắt đầu của khung thời gian đặt hàng mà người dùng có thể truy cập vào quy trình và đặt các đơn hàng càng sớm càng tốt/trong tương lai.

Ví dụ: 2017-01-01T00:00:00-07:00

validThrough Dấu thời gian ISO

Bắt buộc khi isSpecialHour = true.

Dấu thời gian ISO cho biết thời điểm kết thúc thời hạn đặt hàng mà người dùng không thể truy cập vào quy trình đặt hàng và đặt đơn hàng càng sớm càng tốt/trong tương lai.

Ví dụ: 2017-01-02T00:00:00-07:00

isSpecialHour Boolean

Một giá trị boolean cho biết liệu OperationHours là dành cho giờ đặc biệt. Các giá trị được chấp nhận là "false" và "true".

Ví dụ: False

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể OperationHours ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

Ví dụ sau đây cho thấy một phần tử OperationHours:

Ví dụ 1

{
  "@type": "OperationHours",
  "@id": "10824/deliveryOh",
  "serviceId": [
    "10824/delivery"
  ],
  "isSpecialHour": false
}

Ví dụ 2

{
  "@type": "OperationHours",
  "@id": "10824/takeoutOh",
  "serviceId": [
    "10824/takeout"
  ],
  "isSpecialHour": false
}

Giờ phục vụ (bắt buộc)

Mô tả cửa sổ thực hiện đơn hàng mà người dùng có thể chọn các khung giờ cho phương thức thực hiện (Càng sớm càng tốt hoặc các khung giờ trong tương lai). Bạn cần triển khai ServiceHours.

Thuộc tính OperationHours openscloses chỉ định thời gian mở và đóng cửa cho hệ thống trực tuyến cho phép người dùng đặt hàng. Trong những giờ hệ thống trực tuyến đó, hãy sử dụng ServiceHours để chỉ định giờ mở cửa và đóng cửa đối với thời điểm thực hiện đơn đặt hàng của người dùng.

Thời gian phải được chỉ định theo giờ địa phương cho dịch vụ. Không đưa múi giờ vào giá trị opens. Nếu bạn chỉ định múi giờ, Google sẽ bỏ qua thông tin này. Để biết thêm thông tin, hãy xem bài viết Định dạng ngày giờ và thời gian.

Bảng sau đây liệt kê các thuộc tính của loại ServiceHours:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: ServiceHours

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của thực thể mô tả cửa sổ thực hiện mà người dùng có thể chọn các khung giờ thực hiện, tức là sớm nhất có thể hoặc trong tương lai.

Ví dụ: service_hour_1

orderType OrderType

Bắt buộc.

Chuỗi cho biết giờ phục vụ áp dụng cho các đơn đặt hàng sớm nhất có thể hay nâng cao. Các giá trị được chấp nhận là " càng sớm càng tốt" và "ADVANCE".

Ví dụ: ASAP

serviceId List<String>

Bắt buộc.

Giá trị @id của thực thể Service tương quan với thực thể ServiceHours này.

Ví dụ: [ "service_1" ]

operationHoursId List<String>

Bắt buộc khi isSpecialHour = false.

Giá trị @id của thực thể OperationHours tương quan với thực thể ServiceHours này.

Ví dụ: [ "operation_hour_1" ]

opens Giờ ISO (Địa phương)

Cho biết thời gian cụ thể trong ngày ở định dạng ISO bắt đầu từ thời điểm đơn đặt hàng của người dùng có thể được thực hiện.

Ví dụ: T00:00

closes Giờ ISO (Địa phương)

Cho biết thời gian cụ thể trong ngày ở định dạng ISO mà vượt quá thời gian mà đơn đặt hàng của người dùng không thể thực hiện được.

Ví dụ: T16:00

dayOfWeek Danh sách<DayOfWeek>

Danh sách(các) ngày trong tuần có những giờ hoạt động này hợp lệ.

Ví dụ: [ "MONDAY", "TUESDAY" ]

validFrom Dấu thời gian ISO

Bắt buộc khi isSpecialHour = true.

Dấu thời gian ISO cho biết thời điểm bắt đầu của khung thời gian đặt hàng mà người dùng có thể truy cập vào quy trình và đặt các đơn hàng càng sớm càng tốt/trong tương lai.

Ví dụ: 2017-01-01T00:00:00-07:00

validThrough Dấu thời gian ISO

Bắt buộc khi isSpecialHour = true.

Dấu thời gian ISO cho biết thời điểm kết thúc thời hạn đặt hàng mà người dùng không thể truy cập vào quy trình đặt hàng và đặt đơn hàng càng sớm càng tốt/trong tương lai.

Ví dụ: 2017-01-02T00:00:00-07:00

isSpecialHour Boolean

Một giá trị boolean cho biết liệu OperationHours là dành cho giờ đặc biệt. Các giá trị được chấp nhận là "false" và "true".

Ví dụ: False

leadTimeMin Số nguyên

Thời gian giao hàng/đến lấy hàng dự kiến tối thiểu tính bằng phút sau khi đặt hàng sớm nhất có thể. Bạn nên đặt thuộc tính này.

Ví dụ: 60

leadTimeMax Số nguyên

Thời gian giao hàng/đến lấy hàng dự kiến tối đa tính bằng phút sau khi đặt hàng sớm nhất có thể. Bạn nên đặt thuộc tính này.

Ví dụ: 70

advanceBookingRequirementMin Số nguyên

Bắt buộc khi orderType = "ADVANCE".

Số phút tối thiểu tính từ thời điểm đặt hàng khi đơn đặt hàng trước có thể được thực hiện. Ví dụ: nếu đơn đặt hàng đặt trước cần ít nhất 60 phút để được thực hiện, thì ProgressSubscriptionRequirementMin là 60.

Ví dụ: 15

advanceBookingRequirementMax Số nguyên

Bắt buộc khi orderType = "ADVANCE".

Số phút tối đa tính từ thời điểm đặt hàng khi đơn đặt hàng trước có thể được thực hiện. Ví dụ: nếu đơn đặt hàng trước bị hạn chế thực hiện sau đó hơn 2 ngày, thì giá trị beforeSubscriptionRequestedmentMax là 2880.

Ví dụ: 10080

advanceBookingSlotInterval String

Bắt buộc khi orderType = "ADVANCE".

Khoảng thời gian giữa hai khung thời gian liên tiếp của lượt đặt trước. Ví dụ: Nếu thời gian mở cửa và đóng cửa là 8 giờ sáng và 8 giờ tối, và thời gian thực hiện nhiệm vụ là 15 phút, thì người dùng có thể chọn thời gian thực hiện đơn hàng là 8 giờ sáng, 8 giờ 15 sáng, 8 giờ 30 sáng, 8 giờ 45 sáng và cứ như vậy cho đến 8 giờ tối. Bạn phải chỉ định thời lượng làm khoảng thời gian theo ISO. Ví dụ: "PT15M" có nghĩa là các khoảng thời gian 15 phút.

Ví dụ: PT15M

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể ServiceHours ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

Ví dụ sau đây cho thấy một phần tử ServiceHours:

Ví dụ 1

{
  "@type": "ServiceHours",
  "@id": "613741/delivery",
  "orderType": "ASAP",
  "serviceId": [
    "10824/delivery"
  ],
  "opens": "T00:00",
  "closes": "T00:00",
  "isSpecialHour": true,
  "validFrom": "2017-12-25T00:00:00-07:00",
  "validThrough": "2017-12-25T23:59:00-07:00"
}

Ví dụ 2

{
  "@type": "ServiceHours",
  "@id": "10824/takeoutSh_0",
  "orderType": "ASAP",
  "serviceId": [
    "10824/takeout"
  ],
  "operationHoursId": [
    "10824/takeoutOh"
  ],
  "opens": "11:00",
  "closes": "21:00",
  "dayOfWeek": [
    "MONDAY",
    "TUESDAY",
    "WEDNESDAY",
    "THURSDAY"
  ],
  "isSpecialHour": false
}

Phí

Mô tả khoản phí. Nếu thực thể Service liên kết đã serviceType được đặt thành "Phân phối", thì FeefeeType được đặt thành "PHÂN PHỐI" là bắt buộc.

Bảng sau đây liệt kê các thuộc tính của loại Fee:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: Fee

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của pháp nhân mô tả khoản phí.

Ví dụ: service_fee_1

serviceId List<String>

Bắt buộc.

Giá trị @id của thực thể Dịch vụ tương ứng với thực thể Phí này.

Ví dụ: [ "service_1" ]

feeType FeeType

Bắt buộc.

Chuỗi cho biết liệu phí có áp dụng cho các đơn đặt hàng giao hàng hoặc dịch vụ hay không. Các giá trị được chấp nhận là " PHÂN PHỐI" và "SERVICE".

Ví dụ: DELIVERY

priceCurrency String

Bắt buộc.

Mã tiền tệ ISO 4217 gồm 3 chữ cái.

Ví dụ: USD

basePrice Number

Giá cơ bản của khoản phí, áp dụng khi sử dụng percentageOfCart hoặc pricePerMeter.

Ví dụ: 2.0

minPrice Number

Phí tối thiểu, giá trị phí giới hạn khi sử dụng percentageOfCart hoặc pricePerMeter.

Ví dụ: 2.0

maxPrice Number

Phí tối đa, giới hạn giá trị phí khi sử dụng percentageOfCart hoặc pricePerMeter.

Ví dụ: 10.0

eligibleRegion List<String>

Mã @id của ServiceArea cho(các) khu vực địa chính trị mà khoản phí hợp lệ. Chỉ sử dụng thuộc tính này nếu phí giao hàng thay đổi theo khu vực.

Ví dụ: [ "service_area_1" ]

eligibleTransactionVolumeMin Number

Khối lượng giao dịch tối thiểu, tính bằng đơn vị tiền tệ, mà quy định phí này hợp lệ.

Ví dụ: 50

eligibleTransactionVolumeMax Number

Số lượng giao dịch tối đa, tính bằng đơn vị tiền tệ, mà quy cách phí này hợp lệ. Ví dụ: không áp dụng phí nếu số lượng đơn đặt hàng lớn hơn một số lượng đơn đặt hàng nhất định.

Ví dụ: 10

validFrom Dấu thời gian ISO

Dấu thời gian ISO cho biết thời điểm bắt đầu tính phí hợp lệ.

Ví dụ: 2017-01-01T00:00:00-07:00

validThrough Dấu thời gian ISO

Dấu thời gian ISO cho biết thời gian kết thúc vượt quá khoản phí không hợp lệ.

Ví dụ: 2017-01-02T00:00:00-07:00

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể Phí ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

priority Number

Một giá trị dương khác 0. Khi giỏ hàng của người dùng có nhiều hơn 1 phí, phí ưu tiên cao nhất sẽ được ưu tiên hơn các phí thấp hơn. Nếu bạn cung cấp trường này, mức độ ưu tiên sẽ luôn được ưu tiên hơn mức độ ưu tiên được tính toán.

Ví dụ: 3

Bạn phải chọn đúng một trong các nhóm cơ sở lưu trú sau.
price Nhóm 1 Number

Giá của khoản phí. Nếu không cố định giá, bạn có thể cung cấp minPrice và maxPrice thay cho giá.

Ví dụ: 1.5

percentageOfCart Nhóm 2 Number

Phí tính theo tỷ lệ phần trăm của giá trị giỏ hàng. Giá trị được chấp nhận là các giá trị số thực từ 0 đến 100.

Ví dụ: 9.00

pricePerMeter Nhóm 3 Number

Phí mỗi mét đối với khoảng cách hướng tâm từ người dùng. Ví dụ: Nếu khoảng cách đến người dùng là 5 km và mức giá là 0,001 đô la Mỹ, thì phí người dùng sẽ là 5 đô la.

Ví dụ: 0.001

Ví dụ sau đây cho thấy một phần tử Fee:

Ví dụ 1

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "price": 5
}

Ví dụ 2

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "pricePerMeter": 0.0005,
  "basePrice": 4
}

Ví dụ 3

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "pricePerMeter": 0.0005,
  "basePrice": 4,
  "minPrice": 5,
  "maxPrice": 50
}

Ví dụ 4

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "percentageOfCart": 5,
  "basePrice": 4
}

Ví dụ 5:

{
  "@type": "Fee",
  "@id": "28427",
  "serviceId": [
    "10824/delivery"
  ],
  "feeType": "DELIVERY",
  "priceCurrency": "USD",
  "eligibleRegion": [
    "28427"
  ],
  "eligibleTransactionVolumeMin": 20,
  "percentageOfCart": 5,
  "basePrice": 4,
  "minPrice": 5,
  "maxPrice": 50
}

Một thực thể bắt buộc để triển khai. Mô tả một trình đơn.

Bảng sau đây liệt kê các thuộc tính của loại Menu:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: Menu

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của thực đơn.

Ví dụ: menu_1

name String

Văn bản có thể xác định Trình đơn khi người dùng đang duyệt qua thực đơn.

Ví dụ: Foo

disclaimer String

Tuyên bố từ chối trách nhiệm đối với thực đơn. Ví dụ: công bố thông tin về dinh dưỡng và công bố về chất gây dị ứng.

Ví dụ: Items may contain peanuts.

disclaimerUrl URL

URL trỏ đến một trang cung cấp thêm thông tin chi tiết về tuyên bố từ chối trách nhiệm.

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể Thực đơn ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

Ví dụ sau đây cho thấy một phần tử Menu:

{
  "@type": "Menu",
  "@id": "10824"
}

Thực thể không bắt buộc để triển khai. Mô tả một phần cụ thể trong trình đơn.

Bảng sau đây liệt kê các thuộc tính của loại MenuSection:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: MenuSection

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của mục trong thực đơn.

Ví dụ: menu_section_1

menuId Danh sách<ReverseReference>

Giá trị @id của thực thể Trình đơn tương ứng với thực thể MenuSection này.

Ví dụ: [ { "@id": "menu_id", "displayOrder": 4 } ]

menuSectionId List<String>

Danh sách giá trị @id của các thực thể MenuSection con tương ứng với thực thể MenuSection này.

Lưu ý quan trọng: Bạn chỉ được sử dụng một trong các loại tệp đối chiếu menuSectionId hoặc parentMenuSectionId(in child).

Ví dụ: [ "child_menu_section_1", "child_menu_section_2" ]

parentMenuSectionId Danh sách<ReverseReference>

Giá trị @id của thực thể mẹ MenuSection tương quan với thực thể MenuSection này.

Lưu ý quan trọng: Bạn chỉ được sử dụng một trong các loại tệp đối chiếu parentMenuSectionId hoặc menuSectionId(in parent).

Ví dụ: [ { "@id": "parent_menu_section_id", "displayOrder": 4 } ]

name String

Bắt buộc.

Văn bản có thể xác định MenuSection khi người dùng đang duyệt qua trình đơn.

Ví dụ: Foo

description String

Nội dung mô tả về danh mục món ăn trong thực đơn.

Ví dụ: Example menu section description that helps users.

image URL

URL của một hình ảnh trong danh mục thực đơn.

Ví dụ: https://provider.com/someimage

menuItemId List<String>

Danh sách giá trị @id của các thực thể MenuItem tương ứng với thực thể MenuSection này.

Lưu ý quan trọng: Bạn chỉ được sử dụng một trong các loại tệp đối chiếu menuItemId hoặc MenuItem.parentMenuSectionId.

Ví dụ: [ "menu_item1", "menu_item2" ]

parentMenuItemId Danh sách<ReverseReference>

Danh sách giá trị @id của các thực thể MenuItem mẹ tương ứng với thực thể MenuSection này.

Lưu ý quan trọng: Bạn chỉ được sử dụng một trong các loại tệp đối chiếu parentMenuItemId hoặc MenuItem.menuAddOnId.

Ví dụ: [ { "@id": "parent_menu_item_id", "displayOrder": 4 } ]

parentMenuItemOptionId Danh sách<ReverseReference>

Danh sách giá trị @id của các thực thể MenuItemOption mẹ tương ứng với thực thể MenuSection này.

Lưu ý quan trọng: Bạn chỉ được sử dụng một trong các loại tệp đối chiếu parentMenuItemOptionId hoặc MenuItemOption.menuAddOnId.

Ví dụ: [ { "@id": "parent_menu_item_option_id", "displayOrder": 4 } ]

eligibleQuantityMax Số nguyên

Số lượng tiện ích bổ sung tối đa có thể chọn trong mục tiện ích bổ sung.

Ví dụ: 5

eligibleQuantityMin Số nguyên

Số lượng tiện ích bổ sung tối thiểu bạn phải chọn trong mục tiện ích bổ sung.

Ví dụ: 1

defaultItemId List<String>

Danh sách @id tham chiếu đến các thực thể MenuItem sẽ được chọn sẵn theo mặc định cho người dùng trong tiện ích bổ sung MenuSection. Người dùng có thể thay đổi lựa chọn cuối cùng. Nếu bạn không chỉ định defaultItemId thì sẽ không có MenuItem nào được chọn sẵn.

Ví dụ: [ "item1", "item2" ]

availabilityId List<String>

Giá trị @id của các thực thể về Tình trạng còn hàng cung cấp thông tin chi tiết về thời điểm có sẵn mục trình đơn.

Ví dụ: [ "menu_availability_1" ]

numberOfFreeAddOns Số nguyên

Cho biết số lượng tiện ích bổ sung mà người dùng có thể chọn mà không tốn phí. Chỉ hợp lệ cho các mục trên trình đơn bổ sung.

Ví dụ: 3

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể MenuSection ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

applicableServiceType Danh sách<ServiceType>

Dịch vụ mà MenuSection này được áp dụng. Mặc định giả định MenuSection có thể áp dụng cho tất cả.

offeredById List<String>

Giá trị @id của các thực thể Restaurant có chứa MenuSection này. Mặc định giả định rằng có một MenuSection tại mọi vị trí.

Ví dụ: [ "restaurant_id_1", "restaurant_id_55" ]

Ví dụ sau đây cho thấy một phần tử MenuSection:

{
  "@type": "MenuSection",
  "@id": "853705",
  "menuId": [
    {
      "@id": "10824",
      "displayOrder": 853705
    }
  ],
  "menuSectionId": [
    12345,
    43645
  ],
  "name": "Pasta",
  "applicableServiceType": [
    "TAKEOUT"
  ],
  "offeredById": [
    "italian_restaurant_location_1"
  ]
}
{
  "@type": "MenuSection",
  "@id": "427484",
  "menuId": [
    {
      "@id": "4287",
      "displayOrder": 964376
    }
  ],
  "menuItemId": [
    46784,
    42728
  ],
  "name": "Burger",
  "applicableServiceType": [
    "TAKEOUT",
    "DELIVERY"
  ]
}
{
  "@type": "MenuSection",
  "@id": "3138486",
  "name": "Choose a side:",
  "parentMenuItemId": [
    {
      "@id": "6680295",
      "displayOrder": 3138486
    }
  ],
  "eligibleQuantityMax": "5",
  "numberOfFreeAddOns": "2"
}
{
  "@type": "MenuSection",
  "@id": "3138482",
  "name": "Additional Pizza Toppings",
  "parentMenuItemId": [
    {
      "@id": "6680246",
      "displayOrder": 3138482
    }
  ],
  "eligibleQuantityMax": "3"
}

Phạm vi cung cấp

Thực thể không bắt buộc để triển khai. Mô tả khoảng thời gian phân phát thực thể MenuSection.

Bảng sau đây liệt kê các thuộc tính của loại Availability:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: Availability

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của thực thể mô tả khả năng sử dụng của danh mục món ăn trong thực đơn.

Ví dụ: menu_section_avail_1

availabilityStarts Giờ ISO (Địa phương)

Dấu thời gian ISO cho biết thời gian bắt đầu mà phần trình đơn có hiệu lực.

Ví dụ: T00:00

availabilityEnds Giờ ISO (Địa phương)

Dấu thời gian ISO cho biết thời gian kết thúc vượt quá thời gian cung cấp phần trình đơn không hợp lệ.

Ví dụ: T16:00

availableDay Danh sách<DayOfWeek>

Danh sách ngày trong tuần mà phần thực đơn có hiệu lực.

Ví dụ: [ "MONDAY", "TUESDAY" ]

validFrom Dấu thời gian ISO

Dấu thời gian ISO cho biết thời điểm bắt đầu mà phần trình đơn có hiệu lực.

Ví dụ: 2017-01-01T00:00:00-07:00

validThrough Dấu thời gian ISO

Dấu thời gian ISO cho biết thời gian kết thúc mà sau đó phần trình đơn có sẵn không hợp lệ.

Ví dụ: 2017-01-02T00:00:00-07:00

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể Tình trạng còn hàng ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

Ví dụ sau đây cho thấy một phần tử Availability:

Ví dụ:

{
  "@type": "Availability",
  "@id": "85343705",
  "availabilityStarts": "06:00",
  "availabilityEnds": "22:30",
  "availableDay": [
    "SATURDAY",
    "SUNDAY"
  ]
}

Một thực thể bắt buộc để triển khai. Mô tả một mục trong thực thể Menu.

Bảng sau đây liệt kê các thuộc tính của loại MenuItem:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: MenuItem

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của mục trong thực đơn.

Ví dụ: menu_item_1

name String

Bắt buộc.

Văn bản có thể xác định MenuItem khi người dùng đang duyệt qua trình đơn.

Ví dụ: Foo

description String

Nội dung mô tả về món trong thực đơn.

Ví dụ: Foo

image URL

URL cho hình ảnh của món trong thực đơn.

Ví dụ: http://someprovider.com/someimage

parentMenuSectionId Danh sách<ReverseReference>

Danh sách giá trị @id của các thực thể MenuSection mẹ tương ứng với thực thể MenuItem này.

Lưu ý quan trọng: Bạn chỉ được sử dụng một trong các loại tệp đối chiếu parentMenuSectionId hoặc MenuSection.menuItemId.

Ví dụ: { "@id": "menu_section_parent_id", "displayOrder": 4 }

menuAddOnId List<String>

Danh sách giá trị @id của các thực thể MenuSection từ phần tiện ích bổ sung tương ứng với thực thể MenuItem này.

Lưu ý quan trọng: Bạn chỉ được sử dụng một trong các loại tệp đối chiếu menuAddOnId hoặc MenuSection.parentMenuItemId.

Ví dụ: menu_addon_1

nutrition NutritionInformation

Thông tin dinh dưỡng của món ăn, đáng chú ý nhất là lượng calo.

Ví dụ: { "calories": "120-150 Cal" }

allergen Danh sách<Allergen>

Chất gây dị ứng của Mục trình đơn này.

Ví dụ: [ { "allergenType": "PEANUTS", "levelOfContainment": "MAY_CONTAIN" } ]

additive Danh sách<Additive>

Các thành phần bổ sung cho Mục trình đơn này.

Ví dụ: [ { "additiveName": "Sodium nitrite", "levelOfContainment": "CONTAINS" } ]

suitableDiet Danh sách<RestrictedDiet>

Món ăn tuân thủ quy định hạn chế về chế độ ăn đã mô tả.

Ví dụ: [ "DIABETIC", "GLUTEN_FREE" ]

depositInfo DepositInfo

Thông tin đóng gói và tái chế của Mục trình đơn này.

Ví dụ: { "depositCode": "RECYCLABLE", "depositValue": "0.05", "depositValueCurrency": "USD" }

numberOfServings Số nguyên

Số phần ăn có sẵn trong một mục nhất định trong thực đơn.

Ví dụ: 2

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể MenuItem ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

Ví dụ sau đây cho thấy một phần tử MenuItem:

{
  "@type": "MenuItem",
  "@id": "18931508",
  "name": "Sauteed Baby Spinach",
  "parentMenuSectionId": [
    {
      "@id": "3138479",
      "displayOrder": 18931508
    }
  ]
}
{
  "@type": "MenuItem",
  "@id": "18931508",
  "name": "Hamburger",
  "parentMenuSectionId": [
    {
      "@id": "4645747",
      "displayOrder": 12345
    }
  ],
  "nutrition": {
    "calories": "400 cal"
  },
  "allergen": [
    {
      "allergenType": "GLUTEN",
      "levelOfContainment": "CONTAINS"
    }
  ],
  "additive": [
    {
      "additiveName": "Sodium nitrite",
      "levelOfContainment": "CONTAINS"
    }
  ],
  "suitableDiet": [
    "DIABETIC",
    "LOW_FAT"
  ]
}

Thực thể không bắt buộc để triển khai. Mô tả các lựa chọn mà người dùng sẽ phải đưa ra khi chọn một món ăn/combo. Người dùng phải chọn một mục, nếu không đơn đặt hàng sẽ bị coi là không hợp lệ (ví dụ: người dùng phải chọn một bánh pizza nhỏ, trung bình hoặc lớn).

Bảng sau đây liệt kê các thuộc tính của loại MenuItemOption:

Tài sản Loại Nội dung mô tả
@type Liên tục

Giá trị: MenuItemOption

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của tuỳ chọn mục trong trình đơn.

Ví dụ: menu_item_1_option

menuItemId ReverseReference

Bắt buộc.

Giá trị @id của thực thể MenuItem tương quan với thực thể MenuItemOption này.

Ví dụ: { "@id": "menu_item_1", "displayOrder": 4 }

optionType OptionType

Một Chuỗi cho biết lựa chọn của mục trong thực đơn được phân loại theo kích thước, lựa chọn hay mặt pizza. Các giá trị có thể chấp nhận là "SIZE", "OPTION" và "PIZZA_SIDE". "SIZE": Kích thước của MenuItemOption. Ví dụ: nhỏ, trung bình hoặc lớn. "OPTION": Bất kỳ biến thể nào khác ngoài kích thước (ví dụ: một món ăn có thể là rau trộn hoặc bánh mì kẹp). Nếu bạn không phân biệt được "SIZE" và "OPTION", hãy sử dụng "OPTION". "PIZZA_SIDE": Dành riêng cho pizza: ví dụ như MenuItemOption này chỉ hợp lệ cho một phần/toàn bộ pizza (ví dụ: lớp phủ nấm ở bên trái, bên phải hoặc toàn bộ pizza).

Ví dụ: SIZE

value Chuỗi hoặc PizzaSide

Bắt buộc khi optionType is defined.

Giá trị chuỗi hoặc giá trị enum. Giá trị enum dành riêng cho loại lựa chọn PIZZA_SIDE.

applicableParentOptionValue String

Một Chuỗi chứa giá trị giá trị tuỳ chọn của mục mẹ có thể sử dụng lựa chọn này.

Ví dụ: Small

menuAddOnId List<String>

Danh sách giá trị @id của các thực thể MenuSection từ phần tiện ích bổ sung tương ứng với thực thể MenuItemOption này.

Lưu ý quan trọng: Bạn chỉ được sử dụng một trong các loại tệp đối chiếu menuAddOnId hoặc MenuSection.parentMenuItemId.

Ví dụ: menuAddOnId

nutrition NutritionInformation

Thông tin dinh dưỡng của món ăn, đáng chú ý nhất là lượng calo.

Ví dụ: { "calories": "120-150 Cal" }

allergen Danh sách<Allergen>

Chất gây dị ứng của Mục trình đơn này.

Ví dụ: { "allergenType": "PEANUTS", "levelOfContainment": "MAY_CONTAIN" }

additive Danh sách<Additive>

Các thành phần bổ sung cho Mục trình đơn này.

Ví dụ: { "additiveName": "Sodium nitrite", "levelOfContainment": "CONTAINS" }

depositInfo DepositInfo

Thông tin về việc đóng gói và tái chế của Mục trình đơn này.

Ví dụ: { "depositCode": "RECYCLABLE", "depositValue": "0.05", "depositValueCurrency": "USD" }

numberOfServings Số nguyên

Số phần ăn có sẵn trong một lựa chọn mục nhất định trong thực đơn.

Ví dụ: 2

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể MenuItemOption ở định dạng dấu thời gian ISO nhưng có loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

Ví dụ sau đây cho thấy một phần tử MenuItemOption:

{
  "@type": "MenuItemOption",
  "@id": "56177944",
  "menuItemId": {
    "@id": "18930213",
    "displayOrder": 1234
  },
  "optionType": "PIZZA_SIDE",
  "value": "PIZZA_SIDE_LEFT"
}
{
  "@type": "MenuItemOption",
  "@id": "56177944",
  "menuItemId": {
    "@id": "18930213",
    "displayOrder": 1234
  },
  "applicableParentOptionValue": "Small Pizza"
}

Một thực thể bắt buộc để triển khai. Mô tả ưu đãi của một thực thể MenuItem hoặc MenuItemOption.

Bảng sau đây liệt kê các thuộc tính của loại MenuItemOffer:

Tài sản Loại Nội dung mô tả
@type Liên tục

Bắt buộc.

Giá trị: MenuItemOffer

@id String

Bắt buộc.

Giá trị nhận dạng duy nhất của mặt hàng trong thực đơn.

Ví dụ: menu_item_offer

sku String

Bắt buộc.

Giá trị nhận dạng của món trong thực đơn. Giá trị SKU có thể khác nhau hoặc giống nhau trên nhiều thực thể mặt hàng của mục trong trình đơn. Giá trị SKU sẽ được đặt theo thứ tự khi chúng tôi thực hiện lệnh gọi API cho bạn.

Ví dụ: Menu_item_offer_sku

price Number

Bắt buộc.

Giá của món trong thực đơn.

Ví dụ: 2.5

priceCurrency String

Bắt buộc.

Mã tiền tệ ISO 4217 gồm 3 chữ cái.

Ví dụ: USD

availabilityId List<String>

Giá trị @id của các thực thể Tình trạng còn hàng cung cấp thông tin chi tiết về thời điểm có món trong thực đơn.

Ví dụ: [ "menu_availability_1" ]

eligibleQuantityMin Number

Số lượng đặt hàng tối thiểu mà MenuItemOffer hợp lệ.

Ví dụ: 1

eligibleQuantityMax Number

Số lượng đặt hàng tối đa mà MenuItemOffer hợp lệ.

Ví dụ: 25

inventoryLevel Number

Cấp khoảng không quảng cáo gần đúng hiện tại của một hoặc nhiều mặt hàng tương ứng với Ưu đãi mặt hàng trong trình đơn này.

Ví dụ: 10

dateModified Dấu thời gian ISO

Ngày và giờ sửa đổi gần đây nhất của nguồn cấp dữ liệu thực thể MenuItemOffer ở định dạng dấu thời gian ISO nhưng thuộc loại Chuỗi.

Ví dụ: 2017-01-02T00:00:00-07:00

applicableServiceType Danh sách<ServiceType>

Dịch vụ mà MenuItemOffer này được áp dụng. Mặc định giả định MenuItemOffer có thể áp dụng cho tất cả.

offeredById List<String>

Giá trị @id của các thực thể Restaurant có chứa MenuItemOffer này. Mặc định giả định rằng có một MenuItemOffer tại mọi vị trí.

Ví dụ: [ "restaurant_id_5", "restaurant_id_26" ]

Bạn phải chọn đúng một trong các nhóm cơ sở lưu trú sau.
menuItemId Nhóm 1 String

Giá trị @id của thực thể MenuItem tương quan với thực thể MenuItemOffer này.

Ví dụ: menu_item_1

menuItemOptionId Nhóm 2 String

Giá trị @id của thực thể MenuItemOption tương quan với thực thể MenuItemOffer này.

Ví dụ: menu_item_option_1

Ví dụ sau đây cho thấy một phần tử MenuItemOffer:

{
  "@type": "MenuItemOffer",
  "@id": "6680262",
  "sku": "offer-mediterranean-bagel",
  "menuItemId": "896532",
  "price": 15.5,
  "priceCurrency": "USD",
  "applicableServiceType": [
    "DELIVERY"
  ],
  "offeredById": [
    "bagel_shop_location_5"
  ]
}

Phổ biến

ReverseReference

Bảng sau đây liệt kê các thuộc tính của loại ReverseReference:

Tài sản Loại Mô tả
@id String

Bắt buộc.

@id của thực thể mẹ.

displayOrder Số nguyên

Bắt buộc.

Hiển thị thứ tự của mục trong thành phần mẹ.

NutritionInformation

Bảng sau đây liệt kê các thuộc tính của loại NutritionInformation:

Tài sản Loại Mô tả
description String

Thông tin dinh dưỡng dưới dạng văn bản tự do. Ví dụ: "Chứa chất bảo quản".

calories String

Lượng calo tính theo Cal, kcal hoặc kJ, sử dụng định dạng sau: giá trị Cal hoặc Min-max Cal

Ví dụ: 120.34 Cal

sodiumContent String

Số mg hoặc g natri, theo định dạng sau: giá trị g hoặc min-max g

Ví dụ: 1200 mg

Ví dụ sau đây cho thấy một phần tử NutritionInformation:

Ví dụ:

{
  "calories": "120-150 Cal",
  "sodiumContent": "100 mg"
}

Chất gây dị ứng

Bảng sau đây liệt kê các thuộc tính của loại Allergen:

Tài sản Loại Nội dung mô tả
allergenType AllergenType

Bắt buộc.

Loại chất gây dị ứng.

levelOfContainment ContainmentLevel

Mức độ của một chất gây dị ứng nhất định trong mục trong trình đơn.

Ví dụ sau đây cho thấy một phần tử Allergen:

Ví dụ:

{
  "allergenType": "PEANUTS",
  "levelOfContainment": "MAY_CONTAIN"
}

Phụ gia

Bảng sau đây liệt kê các thuộc tính của loại Additive:

Tài sản Loại Mô tả
additiveName String

Bắt buộc.

Tên của chất phụ gia.

levelOfContainment ContainmentLevel

Cấp của một phần bổ sung nhất định trong mục trong trình đơn.

Ví dụ sau đây cho thấy một phần tử Additive:

Ví dụ:

{
  "additiveName": "Sodium nitrite",
  "levelOfContainment": "CONTAINS"
}

DepositInfo

Bảng sau đây liệt kê các thuộc tính của loại DepositInfo:

Tài sản Loại Nội dung mô tả
depositCode DepositCode

Mã ký quỹ.

depositValue Number

Giá trị bằng số của khoản tiền đặt cọc của mặt hàng, ví dụ: khi được tái chế.

depositValueCurrency String

Đơn vị tiền tệ của giá trị khoản tiền gửi

Ví dụ sau đây cho thấy một phần tử DepositInfo:

Ví dụ:

{
  "depositCode": "RECYCLABLE",
  "depositValue": 0.05,
  "depositValueCurrency": "USD"
}

ServingConfig

Cấu hình phân phát của dịch vụ được dùng để kiểm soát nhiều tính năng. Ví dụ: tắt tiện ích khuyến mãi, v.v.

Bảng sau đây liệt kê các thuộc tính của loại ServingConfig:

Tài sản Loại Nội dung mô tả
disableOrderInstructions Boolean

Ẩn khả năng chỉ định hướng dẫn đặt hàng.

disableMenuItemSpecialInstructions Boolean

Ẩn khả năng chỉ định các hướng dẫn đặc biệt trên một mục trong trình đơn.

disableTipWidget Boolean

Ẩn tiện ích tính tiền boa trên trang "Đặt hàng" của quy trình đặt hàng.

disablePromoWidget Boolean

Ẩn tiện ích khuyến mãi trên trang "Đặt hàng" của quy trình đặt hàng.

menuItemSpecialInstructionsMaxLength Number

Chỉ định số ký tự tối đa mà một mục trong trình đơn có thể chứa.

orderInstructionsMaxLength Number

Chỉ định số lượng ký tự tối đa mà một hướng dẫn đặt hàng có thể chứa.

Ví dụ sau đây cho thấy một phần tử ServingConfig:

Ví dụ 1

{
  "disableMenuItemSpecialInstructions": true
}

Ví dụ 2

{
  "disableTipWidget": true,
  "disablePromoWidget": true
}

Ví dụ 3

{
  "menuItemSpecialInstructionsMaxLength": 250,
  "orderInstructionsMaxLength": 1000
}

Enum

DayOfWeek

Loại DayOfWeek có thể có các giá trị sau:

  • MONDAY
  • TUESDAY
  • WEDNESDAY
  • THURSDAY
  • FRIDAY
  • SATURDAY
  • SUNDAY

ServiceType

Loại ServiceType có thể có các giá trị sau:

  • DELIVERY
  • TAKEOUT

OrderType

Loại OrderType có thể có các giá trị sau:

  • ASAP
  • ADVANCE

FeeType

Loại FeeType có thể có các giá trị sau:

  • DELIVERY
  • SERVICE

OptionType

Loại OptionType có thể có các giá trị sau:

  • SIZE
  • OPTION
  • PIZZA_SIDE

PizzaSide

Loại PizzaSide có thể có các giá trị sau:

  • PIZZA_SIDE_LEFT
  • PIZZA_SIDE_RIGHT
  • PIZZA_SIDE_WHOLE

AllergenType

Loại chất gây dị ứng theo gs1:AllergenTypeCode.

Loại AllergenType có thể có các giá trị sau:

  • ALMONDS
  • ALPHA_ISOMETHYL_IONONE
  • ALCOHOL
  • AMYL_CINNAMAL
  • ANISE_ALCOHOL
  • BARLEY
  • BENZYL_ALCOHOL
  • BENZYL_BENZOATE
  • BENZYL_CINNAMATE
  • BENZYL_SALICYLATE
  • BRAZIL_NUTS
  • BUTYLPHENYL_METHYLPROPIONATE
  • CARROTS
  • CASHEW_NUTS
  • CELERY
  • CEREALS_CONTAINING_GLUTEN
  • CINNAMAL
  • CINNAMYL_ALCOHOL
  • CITRAL
  • CITRONELLOL
  • COCOA
  • CORIANDER
  • CORN
  • COUMARIN
  • CRUSTACEANS
  • EGGS
  • EUGENOL
  • EVERNIA_FURFURACEA
  • EVERNIA_PRUNASTRI
  • FARNESOL
  • FISH
  • GERANIOL
  • GLUTEN
  • HAZELNUTS
  • HEXYL_CINNAMAL
  • HYDROXYCITRONELLAL
  • HYDROXYISOHEXYL_3_CYCLOHEXENE_CARBOXALDEHYDE_ISOEUGENOL_LIMONENE_LINAL
  • KAMUT
  • LACTOSE
  • LUPINE
  • MACADAMIA_NUTS
  • METHYL_2_OCTYNOATE
  • MILK
  • MOLLUSCS
  • MUSTARD
  • NO_DECLARED_ALLERGENS
  • OAT
  • PEANUTS
  • PEAS
  • PECAN_NUTS
  • PISTACHIOS
  • POD_FRUITS
  • QUEENSLAND_NUTS
  • RYE
  • SESAME_SEEDS
  • SOYBEANS
  • SPELT
  • SULPHUR_DIOXIDE
  • TREE_NUTS
  • TREE_NUT_TRACES
  • WALNUTS
  • WHEAT

ContainmentLevel

Loại ContainmentLevel có thể có các giá trị sau:

  • CONTAINS
  • FREE_FROM
  • MAY_CONTAIN

DepositCode

Loại DepositCode có thể có các giá trị sau:

  • REUSABLE
  • RECYCLABLE

DealType

Danh mục giao dịch để áp dụng chiết khấu. Danh mục này có thể là tổng giá trị của toàn bộ giỏ hàng hoặc phí giao hàng.

Loại DealType có thể có các giá trị sau:

  • CART_OFF
  • DELIVERY_OFF

RestrictedDiet

Các loại chế độ ăn uống hạn chế trên schema.org:RestrictedDiet.

Loại RestrictedDiet có thể có các giá trị sau:

  • DIABETIC
  • GLUTEN_FREE
  • HALAL
  • HINDU
  • KOSHER
  • LOW_CALORIE
  • LOW_FAT
  • LOW_LACTOSE
  • LOW_SALT
  • VEGAN
  • VEGETARIAN