Relacyjny schemat asortymentu

Na tej stronie opisujemy format plików danych o zamówieniach (specyfikacja katalogu żywności), które przekazujesz Google. Wersję tych informacji czytelną dla komputera możesz pobrać w formie schematu JSON.

Wymagania ogólne

Elementy muszą być uporządkowane w taki sposób, aby w plikach danych każdy z nich zajmował osobny wiersz (elementy są oddzielone znakami końca linii). Ze względu na czytelność przykłady kodu JSON na tej stronie nie są zgodne z tą strukturą. Pamiętaj jednak, że podczas wysyłania plików danych musisz przestrzegać tej struktury. Na przykład element menu musi mieć strukturę podobną do tej:

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

Każdy element typu „Restaurant” może mieć 2 elementy typu „Service” (po jednym dla typów usług „DELIVERY” i „TAKEOUT”). Każdy element „Usługa” może mieć tylko 1 element „Menu”.

Każdy element podrzędny może być używany w różnych restauracjach.

Wskazówki dotyczące wartości w formacie JSON

Przymuszanie typu

Typ wartości JSON może być inny niż typ zdefiniowany w schemacie, o ile wartość może zostać skonwertowana na wymagany typ. Na przykład właściwości tekstowe mogą przyjmować jako dane wejściowe zarówno ciągi tekstowe, jak i wartości całkowite. Podobnie właściwości liczb całkowitych mogą przyjmować wartości ciągu znaków, o ile można je przetworzyć na prawidłową liczbę całkowitą.

Wymuszanie typu działa też w przypadku właściwości powtarzalnych. Właściwości powtarzające się mogą przyjmować wartości jako dane wejściowe bez nawiasów []. Na przykład właściwość OperationHours.serviceId akceptuje jako prawidłowe dane wejściowe wartości "service_id"["service_id"].

Wartości DateTime i Time

DateTime jest oparte na typie schema.org. O ile nie określono inaczej, musi być zgodne z formatem ISO 8601 i zawierać datę, godzinę oraz strefę czasową. Użyj tej składni dla atrybutu DateTime:

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

Na przykład:

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 to czas lokalny w danej restauracji lub strefie czasowej lokalizacji usługi. Jest on również oparty na typie schema.org i musi być zgodny z formatem ISO 8601. Czas ma taką składnię:

// Time format:
THH:MM:SS

Na przykład:

T08:08:00 // 8:08 AM

Pamiętaj o tych kwestiach, gdy podajesz wartość DateTime lub Time:

  • Prefiks „T” przed czasem jest częścią formatu i jest wymagany.
  • Musisz określić strefę czasową dla DATETIME. W przypadku klienta TIME nie jest to wymagane.
  • Czas musi być podany w lokalnej strefie czasowej restauracji lub usługi.

Dane o restauracji

Restauracja (wymagany)

Wymagane do wdrożenia. Opisuje restaurację.

W tabeli poniżej podano właściwości typu Restaurant:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: Restaurant

@id String

Wymagane.

Unikalny identyfikator restauracji lub dostawcy.

Przykład: restaurant_1

name String

Wymagane.

Nazwa restauracji.

Przykład: Foo

description String

Opis restauracji.

Przykład: Best seafood in town

url Url

Adres URL reprezentujący restaurację. Domena restauracji jest preferowana w stosunku do domeny agregatora.

Przykład: http://www.provider.com/somerestaurant

sameAs Url

oficjalna strona restauracji;

Przykład: http://www.provider2.com/somerestaurant

telephone String

Numer telefonu restauracji.

Przykład: +12345665898

streetAddress String

Wymagane.

Ulica i numer restauracji.

Przykład: 12345 Bar Avenu

addressLocality String

Wymagane.

Miejscowość lub miasto.

Przykład: San Francisco

addressRegion String

Wymagane.

Region lub stan.

Przykład: CA

postalCode String

Wymagane.

Kod pocztowy.

Przykład: 94124

addressCountry String

Wymagane.

Dwuliterowy kod kraju w formacie ISO 3166-1 alfa-2.

Przykład: US

latitude Number

Szerokość geograficzna w stopniach. Wartości są ograniczone do zakresu [[-90, 90]]. Dokładność powinna wynosić co najmniej 5 miejsc po przecinku.

Przykład: 35.7392607

longitude Number

Długość geograficzna w stopniach. Wartości są ograniczone do zakresu [[-180, 180]]. Dokładność powinna wynosić co najmniej 5 miejsc po przecinku.

Przykład: -120.3895522

dealId List<String>

Odpowiednie Deal z restauracji.

imprint String

Odcisk jest sekcją dodatkowych informacji o restauracji, takich jak nazwa prawna, adres prawny i numer rejestracji. Te informacje można sformatować za pomocą znaku „"”.

Przykład:

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

Commercial Register: 123456789

economicOperator String

Informacje o operatorze ekonomicznym powiązanym z restauracją (w stosownych przypadkach). Te informacje będą wyświetlane w sekcji Informacje o sprzedawcy. Tekst można sformatować za pomocą znaku „"”.

Przykład:

XYZ Corp
123 Main Street
555-555-5555

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych z informacjami o restauracjach w formacie sygnatury czasowej ISO, ale z typem String.

Przykład: 2017-01-02T00:00:00-07:00

Ten przykład przedstawia element Restaurant:

Przykład

{
  "@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
}

Umowa

Typy rabatów, które można zastosować do koszyka.

W tabeli poniżej podano właściwości typu Deal:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: Deal

@id String

Wymagane.

Unikalny identyfikator umowy.

Przykład: FREEDELIVERY

dealCode String

Wymagane.

Unikalny identyfikator umowy dla każdej umowy dla każdego partnera. Identyfikator ten musi jednoznacznie identyfikować ofertę w Twoim systemie promocji. Google wysyła ten identyfikator w polu promotions.coupon w dokumentie CheckoutRequest na potrzeby weryfikacji.

Przykład: ADETRE23

applicableServiceType List<ServiceType>

Usługa, której dotyczy oferta. Domyślnie zakłada się, że oferta jest ważna dla wszystkich.

eligibleMaxOrders Liczba całkowita

Ta oferta jest dostępna tylko wtedy, gdy użytkownik ma mniej niż tę liczbę zamówień lub tyle samo.

availabilityId List<String>

Wartości @id elementów dostępności, które zawierają informacje o tym, kiedy sekcja menu jest dostępna.

Przykład: [ "availability_1" ]

isDisabled Wartość logiczna

Zastępuje to inne kontrole ważności.

dealType DealType

Wymagane.

Kategoria oferty, do której ma być zastosowany rabat. Kategoria może być łączną kwotą w koszyku, opłatami za obsługę lub opłatami za dostawę.

priceCurrency String

Wymagane, jeśli discount is defined.

Wymagane, jeśli eligibleTransactionVolumeMin is defined.

Waluta (w 3-literowym formacie ISO 4217) rabatu.

Przykład: USD

eligibleTransactionVolumeMin Number

Wielkość transakcji wyrażona w jednostce pieniężnej, w której ta promocja jest ważna.

termsOfServiceUrl Url

Wymagane.

Dokumentacja Warunków korzystania z usługi w formie zrozumiałej dla człowieka.

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych z elementami Deal w formacie sygnatury czasowej ISO, ale z typem String.

Przykład: 2017-01-02T00:00:00-07:00

Wymagana jest dokładnie jedna z tych grup właściwości.
discount Grupa 1 Number

Wartość rabatu podana w postaci liczby.

discountPercentage Grupa 2 Number

Wartość rabatu jako procent ceny pierwotnej.

Ten przykład przedstawia element Deal:

Przykład 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"
}

Przykład 2

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

Przykład 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"
}

Dane usługi

Usługa (wymagana)

Opisuje szczegóły usługi zamawiania jedzenia w restauracji. Service to element wymagany do wdrożenia.

W tabeli poniżej podano właściwości typu Service:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: Service

@id String

Wymagane.

Identyfikator usługi realizacji zamówienia.

Przykład: service_1

serviceType ServiceType

Wymagane.

Typ oferowanej usługi. Możliwe wartości to „DELIVERY” lub „TAKEOUT”.

Przykład: DELIVERY

restaurantId String

Wymagane.

Wartość @id elementu Restaurant powiązanego z tym elementem Service.

Przykład: restaurant_1

menuId String

Wymagane.

Wartość @id elementu Menu powiązanego z tą usługą.

Przykład: menu_1

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych o elementach usługi w formacie sygnatury czasowej ISO.

Przykład: 2017-01-02T00:00:00-07:00

isDisabled Wartość logiczna

Wskazuje, czy element jest wyłączony. Używaj tego typu tylko wtedy, gdy musisz wyłączyć element z powodu nieoczekiwanego zdarzenia i nie wiesz, kiedy usługa zostanie przywrócona (np. nie używaj w przypadku świąt).

Przykład: true

servingConfig ServingConfig

Konfiguracja usługi służąca do obsługi różnych funkcji, np. do wyłączania widżetu promocyjnego.

actionLinkUrl String

Zawiera adres URL usługi dostawy lub odbioru osobistego, która będzie używana podczas migracji z kompleksowego procesu zamawiania jedzenia na przekierowanie.

Ten przykład przedstawia element Service:

Przykład 1

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

Przykład 2

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

ServiceArea

Opisuje region geograficzny, w którym można dostarczać jedzenie. Ten element jest wymagany do wdrożenia, jeśli powiązany element Service ma wartość serviceType ustawioną na „DELIVERY”.

W tabeli poniżej podano właściwości typu ServiceArea:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: ServiceArea

@id String

Wymagane.

Unikalny identyfikator obszaru usługi.

Przykład: service_area_1

serviceId List<String>

Wymagane.

Wartość @id elementu Service powiązanego z tym elementem ServiceArea.

Przykład: [ "service_1" ]

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych o entytecie ServiceArea w formacie sygnatury czasowej ISO, ale o typie String.

Przykład: 2017-01-02T00:00:00-07:00

exclude Wartość logiczna

Wyklucz ten obsługiwany obszar z całego regionu dostawy. Na przykład kod pocztowy może być wykluczony z większego obszaru wielokąta.

Wymagana jest dokładnie jedna z tych grup właściwości.
polygon Grupa 1 List<String>

wielokąt lub wielokąt złożony wyrażony jako seria co najmniej 3 punktów rozdzielonych spacjami. Zalecamy, aby pierwszy i ostatni punkt były takie same, ale nie jest to wymagane. Każdy punkt w wieloboku lub wielokącie jest definiowany przez punkt szerokości geograficznej, a następnie przez punkt długości geograficznej. Musisz też określić punkty w kierunku przeciwnym do ruchu wskazówek zegara.

Przykład: [ "37.806000 -122.425592 37.775849 -122.419043 37.795547 -122.394046 37.808747" ]

geoMidpointLatitude Grupa 2 Number

Wskazuje współrzędną szerokości geograficznej w środku obszaru CIRCLE.

Przykład: 37.806000

geoMidpointLongitude Grupa 2 Number

Wskazuje długość geograficzną w środku obszaru KOŁO.

Przykład: -122.425592

geoRadius Grupa 2 Liczba całkowita

Wskazuje przybliżony promień (w metrach) obszaru KOŁA.

Przykład: 10000

postalCode Grupa 3 String

Wskazuje kod pocztowy.

Przykład: 91234

addressCountry Grupa 3 String

Wskazuje dwuliterowy kod kraju zgodny ze standardem ISO 3166-1 alfa-2.

Przykład: US

Ten przykład przedstawia element ServiceArea:

Przykład

{
  "@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"
  ]
}

OperationHours (wymagany)

Opisuje okno na składanie zamówień, w którym użytkownicy mogą uzyskać dostęp do procedury i złożyć zamówienie jak najszybciej lub w przyszłości. Wymagane jest wdrożenie OperationHours, które domyślnie reprezentuje działanie przez całą dobę.

Atrybuty OperationHours opens i closes określają godziny otwarcia i zamknięcia systemu online, który umożliwia użytkownikom składanie zamówień. W ramach tych godzin korzystania z systemu online użyj ServiceHours, aby określić godziny otwarcia i zamknięcia, w których użytkownicy mogą składać zamówienia.

Czasy muszą być podane w czasie lokalnym usługi. Nie uwzględniaj strefy czasowej w wartości opens. Jeśli podasz strefę czasową, Google zignoruje te informacje. Więcej informacji znajdziesz w artykule Formaty daty i czasu oraz formaty daty i czasu.

W tabeli poniżej podano właściwości typu OperationHours:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: OperationHours

@id String

Wymagane.

Unikalny identyfikator podmiotu opisujący okno zamówienia, w którym użytkownicy mogą uzyskać dostęp do procesu i złożyć zamówienie jak najszybciej lub w przyszłości.

Przykład: operation_hour_1

serviceId List<String>

Wymagane.

Wartość @id elementu Service powiązanego z tą lokalizacją.

Przykład: [ "service_1" ]

opens Czas ISO (lokalny)

Wskazuje konkretną godzinę w formacie ISO, od której można składać zamówienia.

Przykład: T00:00

closes Czas ISO (lokalny)

Określa konkretną godzinę w formacie ISO, po której nie można już składać zamówień.

Przykład: T16:00

dayOfWeek List<DayOfWeek>

Lista dni tygodnia, w których obowiązują te godziny działania. Akceptowane wartości to „MONDAY”, „TUESDAY”, „WEDNESDAY”, „THURSDAY”, „FRIDAY”, „SATURDAY” i „SUNDAY”.

Przykład: [ "MONDAY", "TUESDAY" ]

validFrom Sygnatura czasowa ISO

Wymagane, jeśli isSpecialHour = true.

Sygnatura czasowa ISO wskazująca czas rozpoczęcia okna zamówienia, w którym użytkownicy mogą uzyskać dostęp do procesu i złożyć zamówienie jak najszybciej lub w przyszłości.

Przykład: 2017-01-01T00:00:00-07:00

validThrough Sygnatura czasowa ISO

Wymagane, jeśli isSpecialHour = true.

Czas sygnatury ISO wskazujący czas zakończenia okna zamówienia, po którym użytkownicy nie mogą uzyskać dostępu do procesu i złożyć zamówienia ASAP lub przyszłych zamówień.

Przykład: 2017-01-02T00:00:00-07:00

isSpecialHour Wartość logiczna

Wartość logiczna wskazująca, czy godziny otwarcia dotyczą godzin specjalnych. Dopuszczalne wartości to „false” i „true”.

Przykład: False

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych o entytecie OperationHours w formacie sygnatury czasowej ISO, ale z typem String.

Przykład: 2017-01-02T00:00:00-07:00

Ten przykład przedstawia element OperationHours:

Przykład 1

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

Przykład 2

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

Godziny pracy (wymagane)

Określa okno realizacji, w którym użytkownicy mogą wybrać sloty realizacji (ASAP lub przyszłe sloty). Wymagane jest wdrożenie ServiceHours.

Atrybuty OperationHours opens i closes określają godziny otwarcia i zamknięcia systemu online, który umożliwia użytkownikom składanie zamówień. W ramach tych godzin korzystania z systemu online użyj ServiceHours, aby określić godziny otwarcia i zamknięcia, w których użytkownicy mogą składać zamówienia.

Czasy muszą być podane w czasie lokalnym usługi. Nie uwzględniaj strefy czasowej w wartości opens. Jeśli podasz strefę czasową, Google zignoruje te informacje. Więcej informacji znajdziesz w artykule Formaty daty i czasu oraz formaty daty i czasu.

W tabeli poniżej podano właściwości typu ServiceHours:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: ServiceHours

@id String

Wymagane.

Unikalny identyfikator podmiotu opisujący okno realizacji, w którym użytkownicy mogą wybierać sloty realizacji, np. jak najszybciej lub przyszłe sloty.

Przykład: service_hour_1

orderType OrderType

Wymagane.

Ciąg znaków wskazujący, czy godziny pracy dotyczą zamówień ASAP czy zaawansowanych. Akceptowane wartości to „ASAP” i „ADVANCE”.

Przykład: ASAP

serviceId List<String>

Wymagane.

Wartość @id encji Usługa powiązanej z tą ością GodzinyObsługi.

Przykład: [ "service_1" ]

operationHoursId List<String>

Wymagane, jeśli isSpecialHour = false.

Wartość @id elementu OperationHours powiązanego z tym elementem ServiceHours.

Przykład: [ "operation_hour_1" ]

opens Czas ISO (lokalny)

Określa konkretną godzinę w formacie ISO, od której można realizować zamówienia użytkowników.

Przykład: T00:00

closes Czas ISO (lokalny)

Określa konkretną godzinę w formacie ISO, po której upływie zamówienia użytkowników nie mogą być realizowane.

Przykład: T16:00

dayOfWeek List<DayOfWeek>

Lista dni tygodnia, w których obowiązują te godziny działania.

Przykład: [ "MONDAY", "TUESDAY" ]

validFrom Sygnatura czasowa ISO

Wymagane, jeśli isSpecialHour = true.

Sygnatura czasowa ISO wskazująca czas rozpoczęcia okna zamówienia, w którym użytkownicy mogą uzyskać dostęp do procesu i złożyć zamówienie jak najszybciej lub w przyszłości.

Przykład: 2017-01-01T00:00:00-07:00

validThrough Sygnatura czasowa ISO

Wymagane, jeśli isSpecialHour = true.

Czas sygnatury ISO wskazujący czas zakończenia okna zamówienia, po którym użytkownicy nie mogą uzyskać dostępu do procesu i złożyć zamówienia ASAP lub przyszłych zamówień.

Przykład: 2017-01-02T00:00:00-07:00

isSpecialHour Wartość logiczna

Wartość logiczna wskazująca, czy godziny otwarcia dotyczą godzin specjalnych. Dopuszczalne wartości to „false” i „true”.

Przykład: False

leadTimeMin Liczba całkowita

Minimalny szacowany czas dostawy lub odbioru w minutach po złożeniu zamówienia „ASAP”. Zdecydowanie zalecamy skonfigurowanie tej właściwości.

Przykład: 60

leadTimeMax Liczba całkowita

Maksymalny szacowany czas dostawy lub odbioru (w minutach) po złożeniu zamówienia „ASAP”. Zdecydowanie zalecamy skonfigurowanie tej właściwości.

Przykład: 70

advanceBookingRequirementMin Liczba całkowita

Wymagane, jeśli orderType = "ADVANCE".

Minimalna liczba minut od momentu złożenia zamówienia, w której można zrealizować zamówienie z wyprzedzeniem. Jeśli na przykład realizacja zamówienia z wyprzedzeniem wymaga co najmniej 60 minut, wartość advanceBookingRequirementMin wynosi 60.

Przykład: 15

advanceBookingRequirementMax Liczba całkowita

Wymagane, jeśli orderType = "ADVANCE".

Maksymalna liczba minut od momentu złożenia zamówienia, w których można je zrealizować. Jeśli na przykład zamówienie z wstępną rezerwacją nie może zostać zrealizowane po upływie 2 dni, wartość advanceBookingRequirementMax wynosi 2880.

Przykład: 10080

advanceBookingSlotInterval String

Wymagane, jeśli orderType = "ADVANCE".

Przerwa między dwoma kolejnymi slotami rezerwacji z wyprzedzeniem. Jeśli na przykład godziny otwarcia i zamknięcia to 8:00 i 20:00, a interwał czasu rezerwacji z wyprzedzeniem to 15 minut, użytkownik może wybrać godziny realizacji 8:00, 8:15, 8:30, 8:45 itd. do 20:00. Czas trwania musi być określony jako czas trwania okresu według standardu ISO. Przykład: „PT15M” oznacza interwały 15-minutowe.

Przykład: PT15M

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych z informacjami o godzinach otwarcia w formacie sygnatury czasowej ISO, ale z typem String.

Przykład: 2017-01-02T00:00:00-07:00

Ten przykład przedstawia element ServiceHours:

Przykład 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"
}

Przykład 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
}

Opłata

Opisuje opłatę. Jeśli powiązany element Service ma wartość serviceType ustawioną na „DELIVERY”, wymagany jest element Fee z wartością feeType ustawioną na „DELIVERY”.

W tabeli poniżej podano właściwości typu Fee:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: Fee

@id String

Wymagane.

Unikalny identyfikator podmiotu opisującego opłatę.

Przykład: service_fee_1

serviceId List<String>

Wymagane.

Wartość @id elementu Service powiązanego z tym elementem Fee.

Przykład: [ "service_1" ]

feeType FeeType

Wymagane.

Ciąg znaków wskazujący, czy opłata dotyczy zamówień na dostawę czy na usługi. Akceptowane wartości to „DELIVERY” i „SERVICE”.

Przykład: DELIVERY

priceCurrency String

Wymagane.

Trzyliterowy kod waluty w formacie ISO 4217.

Przykład: USD

basePrice Number

Podstawowa cena opłaty, która obowiązuje, gdy używana jest opcja percentageOfCart lub pricePerMeter.

Przykład: 2.0

minPrice Number

Minimalna opłata, która ogranicza wartość opłaty, gdy używany jest element percentageOfCart lub pricePerMeter.

Przykład: 2.0

maxPrice Number

Maksymalna opłata, która ogranicza wartość opłaty, gdy jest używana opcja percentageOfCart lub pricePerMeter.

Przykład: 10.0

eligibleRegion List<String>

@id obszaru obsługi dla regionu geograficznego, w którym obowiązują opłaty. Używaj tej właściwości tylko wtedy, gdy opłaty za dostawę różnią się w zależności od regionu.

Przykład: [ "service_area_1" ]

eligibleTransactionVolumeMin Number

Minimalna wielkość transakcji wyrażona w jednostce pieniężnej, dla której obowiązuje ta specyfikacja opłat.

Przykład: 50

eligibleTransactionVolumeMax Number

Maksymalna wielkość transakcji wyrażona w jednostkach pieniężnych, w przypadku których obowiązuje ta specyfikacja opłat. Na przykład opłata nie obowiązuje, jeśli zamówienie przekracza pewną liczbę.

Przykład: 10

validFrom Sygnatura czasowa ISO

Sygnatura czasowa ISO wskazująca czas rozpoczęcia obowiązywania opłaty.

Przykład: 2017-01-01T00:00:00-07:00

validThrough Sygnatura czasowa ISO

Sygnatura czasowa ISO wskazująca czas zakończenia, po którym opłata jest nieważna.

Przykład: 2017-01-02T00:00:00-07:00

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych z elementem Fee w formacie sygnatury czasowej ISO, ale z typem String.

Przykład: 2017-01-02T00:00:00-07:00

priority Number

Dodatnia, niezerowa wartość. Jeśli do koszyka użytkownika ma zastosowanie więcej niż 1 opłata, ta o najwyższym priorytecie będzie miała pierwszeństwo przed tymi o niższym priorytecie. Jeśli to pole zostanie podane, priorytet zawsze będzie miał wyższy priorytet niż obliczone priorytety.

Przykład: 3

Wymagana jest dokładnie jedna z tych grup właściwości.
price Grupa 1 Number

Cena opłaty. Jeśli cena nie jest stała, zamiast ceny można podać wartości minPrice i maxPrice.

Przykład: 1.5

percentageOfCart Grupa 2 Number

Opłata w procentach wartości koszyka. Akceptowane wartości to liczby zmiennoprzecinkowe z zakresu od 0 do 100 włącznie.

Przykład: 9.00

pricePerMeter Grupa 3 Number

Opłata za metr odległości od użytkownika. Przykład: jeśli odległość od użytkownika wynosi 5 km, a stawka to 0,001 USD, opłata użytkownika wyniesie 5 USD.

Przykład: 0.001

Ten przykład przedstawia element Fee:

Przykład 1

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

Przykład 2

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

Przykład 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
}

Przykład 4

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

Przykład 5

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

Wymagane do wdrożenia. Opisuje menu.

W tabeli poniżej podano właściwości typu Menu:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: Menu

@id String

Wymagane.

Unikalny identyfikator menu.

Przykład: menu_1

name String

Tekst, który może identyfikować menu, gdy użytkownik przegląda menu.

Przykład: Foo

disclaimer String

Wyłączenie odpowiedzialności dotyczące menu. Mogą to być na przykład informacje o wartościach odżywczych i alergenach.

Przykład: Items may contain peanuts.

disclaimerUrl Url

Adres URL wskazujący stronę z dodatkowymi informacjami o wyłączeniu odpowiedzialności.

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych z informacjami o elementach menu w formacie sygnatury czasowej ISO, ale z typem String.

Przykład: 2017-01-02T00:00:00-07:00

Ten przykład przedstawia element Menu:

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

Opcjonalny element do wdrożenia. Opisuje konkretną sekcję w menu.

W tabeli poniżej podano właściwości typu MenuSection:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: MenuSection

@id String

Wymagane.

Unikalny identyfikator sekcji menu.

Przykład: menu_section_1

menuId List<ReverseReference>

Wartość @id elementu Menu powiązanego z tym elementem MenuSection.

Przykład: [ { "@id": "menu_id", "displayOrder": 4 } ]

menuSectionId List<String>

Lista wartości atrybutu @id elementów podrzędnych MenuSection odpowiadających tej encji MenuSection.

Ważne: musisz użyć tylko jednej z odwołań menuSectionId lub parentMenuSectionId(in child).

Przykład: [ "child_menu_section_1", "child_menu_section_2" ]

parentMenuSectionId List<ReverseReference>

Wartość @id nadrzędnej encji MenuSection powiązanej z tą ością MenuSection.

Ważne: musisz użyć tylko jednej z odwołań parentMenuSectionId lub menuSectionId(in parent).

Przykład: [ { "@id": "parent_menu_section_id", "displayOrder": 4 } ]

name String

Wymagane.

Tekst, który może identyfikować MenuSection, gdy użytkownik przegląda menu.

Przykład: Foo

description String

Opis sekcji menu.

Przykład: Example menu section description that helps users.

image Url

Adres URL obrazu sekcji menu.

Przykład: https://provider.com/someimage

menuItemId List<String>

Lista wartości atrybutu @id encji MenuItem, które odpowiadają tej encji MenuSection.

Ważne: musisz użyć tylko jednej z odwołań menuItemId lub MenuItem.parentMenuSectionId.

Przykład: [ "menu_item1", "menu_item2" ]

parentMenuItemId List<ReverseReference>

Lista wartości atrybutu @id nadrzędnych encji MenuItem odpowiadających tej encji MenuSection.

Ważne: musisz użyć tylko jednej z odwołań parentMenuItemId lub MenuItem.menuAddOnId.

Przykład: [ { "@id": "parent_menu_item_id", "displayOrder": 4 } ]

parentMenuItemOptionId List<ReverseReference>

Lista wartości atrybutu @id nadrzędnych encji MenuItemOption odpowiadających tej encji MenuSection.

Ważne: musisz użyć tylko jednej z odwołań parentMenuItemOptionId lub MenuItemOption.menuAddOnId.

Przykład: [ { "@id": "parent_menu_item_option_id", "displayOrder": 4 } ]

eligibleQuantityMax Liczba całkowita

Maksymalna liczba dodatków, które można wybrać w sekcji dodatków.

Przykład: 5

eligibleQuantityMin Liczba całkowita

Minimalna liczba dodatków, które powinny zostać wybrane w sekcji dodatków.

Przykład: 1

defaultItemId List<String>

Lista identyfikatorów @id odwołujących się do elementów MenuItem, które mają być domyślnie wstępnie wybrane dla użytkowników w dodatku MenuSection. Użytkownicy mogą zmienić ostateczne wybory. Jeśli nie określisz parametru defaultItemId, żadna wartość MenuItem nie zostanie wstępnie wybrana.

Przykład: [ "item1", "item2" ]

availabilityId List<String>

Wartości @id elementów dostępności, które zawierają informacje o tym, kiedy sekcja menu jest dostępna.

Przykład: [ "menu_availability_1" ]

numberOfFreeAddOns Liczba całkowita

Wskazuje liczbę dodatków, które użytkownik może wybrać bezpłatnie. Dotyczy tylko sekcji menu dodatków.

Przykład: 3

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych o elementach MenuSection w formacie sygnatury czasowej ISO, ale o typie String.

Przykład: 2017-01-02T00:00:00-07:00

applicableServiceType List<ServiceType>

Usługa, do której odnosi się element MenuSection. Domyślnie zakłada się, że MenuSection dotyczy wszystkich.

offeredById List<String>

Wartości atrybutu @id encji Restaurant, w których dostępna jest ta encja MenuSection. Domyślnie zakłada się, że MenuSection jest dostępna we wszystkich lokalizacjach.

Przykład: [ "restaurant_id_1", "restaurant_id_55" ]

Ten przykład przedstawia element 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"
}

Dostępność

Opcjonalny element do wdrożenia. Określa okres, w którym wyświetlany jest element MenuSection.

W tabeli poniżej podano właściwości typu Availability:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: Availability

@id String

Wymagane.

Unikalny identyfikator elementu opisujący dostępność sekcji menu.

Przykład: menu_section_avail_1

availabilityStarts Czas ISO (lokalny)

Sygnatura czasowa ISO wskazująca czas rozpoczęcia, w którym sekcja menu jest dostępna.

Przykład: T00:00

availabilityEnds Czas ISO (lokalny)

Znak czasu zgodny ze standardem ISO wskazujący czas zakończenia, po którym dostępność sekcji menu jest nieważna.

Przykład: T16:00

availableDay List<DayOfWeek>

Lista dni tygodnia, w których sekcja menu jest dostępna.

Przykład: [ "MONDAY", "TUESDAY" ]

validFrom Sygnatura czasowa ISO

Znak czasowy ISO wskazujący czas rozpoczęcia, w którym ważna jest dostępność sekcji menu.

Przykład: 2017-01-01T00:00:00-07:00

validThrough Sygnatura czasowa ISO

sygnatura czasowa ISO wskazująca czas zakończenia, po którym dostępność sekcji menu jest nieważna;

Przykład: 2017-01-02T00:00:00-07:00

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych o dostępności w formacie sygnatury czasowej ISO, ale z typem String.

Przykład: 2017-01-02T00:00:00-07:00

Ten przykład przedstawia element Availability:

Przykład

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

Wymagane do wdrożenia. Opisuje element w entytecie Menu.

W tabeli poniżej znajdziesz właściwości typu MenuItem:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: MenuItem

@id String

Wymagane.

Unikalny identyfikator elementu menu.

Przykład: menu_item_1

name String

Wymagane.

Tekst, który może identyfikować MenuItem, gdy użytkownik przegląda menu.

Przykład: Foo

description String

Opis pozycji menu.

Przykład: Foo

image Url

Adres URL obrazu pozycji z menu.

Przykład: http://someprovider.com/someimage

parentMenuSectionId List<ReverseReference>

Lista wartości atrybutu @id nadrzędnych encji MenuSection odpowiadających tej encji MenuItem.

Ważne: musisz użyć tylko jednej z odwołań parentMenuSectionId lub MenuSection.menuItemId.

Przykład: { "@id": "menu_section_parent_id", "displayOrder": 4 }

menuAddOnId List<String>

Lista wartości atrybutu @id elementów MenuSection z sekcji dodatków, które odpowiadają elementom MenuItem.

Ważne: musisz użyć tylko jednej z odwołań menuAddOnId lub MenuSection.parentMenuItemId.

Przykład: menu_addon_1

nutrition NutritionInformation

informacje o wartościach odżywczych potrawy, w szczególności o kaloryczności;

Przykład: { "calories": "120-150 Cal" }

allergen List<Allergen>

Alergeny tego MenuItem.

Przykład: [ { "allergenType": "PEANUTS", "levelOfContainment": "MAY_CONTAIN" } ]

additive List<Additive>

Dodatki tego MenuItem.

Przykład: [ { "additiveName": "Sodium nitrite", "levelOfContainment": "CONTAINS" } ]

suitableDiet List<RestrictedDiet>

Danie jest zgodne z opisanym ograniczeniem dietetycznym.

Przykład: [ "DIABETIC", "GLUTEN_FREE" ]

depositInfo DepositInfo

informacje o opakowaniu i recyklingu tego MenuItem.

Przykład: { "depositCode": "RECYCLABLE", "depositValue": "0.05", "depositValueCurrency": "USD" }

numberOfServings Liczba całkowita

Liczba porcji dostępnych w danym menu.

Przykład: 2

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych o elementach MenuItem w formacie sygnatury czasowej ISO, ale o typie String.

Przykład: 2017-01-02T00:00:00-07:00

Ten przykład przedstawia element 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"
  ]
}

Opcjonalny element do wdrożenia. Opisuje wybory, które użytkownik musi dokonać podczas wybierania dania lub zestawu. Użytkownik musi wybrać opcję, w przeciwnym razie zamówienie zostanie uznane za nieprawidłowe (np. w przypadku pizzy użytkownik musi wybrać rozmiar mała, średnia lub duża).

W tabeli poniżej podano właściwości typu MenuItemOption:

Właściwość Typ Opis
@type Const

Wartość: MenuItemOption

@id String

Wymagane.

Unikalny identyfikator opcji elementu menu.

Przykład: menu_item_1_option

menuItemId ReverseReference

Wymagane.

Wartość @id elementu MenuItem powiązanego z tym elementem MenuItemOption.

Przykład: { "@id": "menu_item_1", "displayOrder": 4 }

optionType OptionType

Ciąg znaków wskazujący, czy opcja pozycji menu jest posortowana według rozmiaru, opcji lub rodzaju pizzy. Akceptowane wartości to „SIZE”, „OPTION” i „PIZZA_SIDE”. „SIZE” (Rozmiar): rozmiar opcji menu. Na przykład mały, średni lub duży. „OPCJA”: każda wersja inna niż rozmiar (np. danie podawane jako sałatka lub kanapka). Jeśli nie możesz odróżnić opcji „SIZE” i „OPTION”, użyj opcji „OPTION”. „PIZZA_SIDE”: dotyczy pizzy: przykładowo MenuItemOption jest prawidłowy tylko w przypadku pizzy zwykłej lub całej (np. grzyby na lewej stronie, na prawej stronie lub na całej pizzy).

Przykład: SIZE

value Ciąg znaków lub PizzaSide

Wymagane, jeśli optionType is defined.

wartość tekstowa lub wartość typu wyliczonego. Wartości typów są specyficzne dla typu opcji PIZZA_SIDE.

applicableParentOptionValue String

Ciąg tekstowy zawierający wartość opcji elementu nadrzędnego, dla której ta opcja jest dostępna.

Przykład: Small

menuAddOnId List<String>

Lista wartości atrybutu @id elementów MenuSection z sekcji dodatków, które odpowiadają elementom MenuItemOption.

Ważne: musisz użyć tylko jednej z odwołań menuAddOnId lub MenuSection.parentMenuItemId.

Przykład: menuAddOnId

nutrition NutritionInformation

informacje o wartościach odżywczych potrawy, w szczególności o kaloryczności;

Przykład: { "calories": "120-150 Cal" }

allergen List<Allergen>

Alergeny tego MenuItem.

Przykład: { "allergenType": "PEANUTS", "levelOfContainment": "MAY_CONTAIN" }

additive List<Additive>

Dodatki tego MenuItem.

Przykład: { "additiveName": "Sodium nitrite", "levelOfContainment": "CONTAINS" }

depositInfo DepositInfo

informacje o opakowaniu i recyklingu tego MenuItem.

Przykład: { "depositCode": "RECYCLABLE", "depositValue": "0.05", "depositValueCurrency": "USD" }

numberOfServings Liczba całkowita

Liczba porcji dostępnych w danej opcji pozycji menu.

Przykład: 2

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych z elementem MenuItemOption w formacie sygnatury czasowej ISO, ale z typem String.

Przykład: 2017-01-02T00:00:00-07:00

Ten przykład przedstawia element 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"
}

Wymagane do wdrożenia. Opisuje ofertę dla elementu MenuItem lub MenuItemOption.

W tabeli poniżej podano właściwości typu MenuItemOffer:

Właściwość Typ Opis
@type Const

Wymagane.

Wartość: MenuItemOffer

@id String

Wymagane.

Unikalny identyfikator oferty elementu menu.

Przykład: menu_item_offer

sku String

Wymagane.

Identyfikator oferty pozycji menu. Wartości kodu SKU mogą być różne lub takie same w przypadku wielu elementów oferty menu. Wartość „sku” zostanie ustawiona w kolejności, gdy wyślemy do Ciebie wywołanie interfejsu API.

Przykład: Menu_item_offer_sku

price Number

Wymagane.

Cena oferty pozycji z menu.

Przykład: 2.5

priceCurrency String

Wymagane.

Trzyliterowy kod waluty w formacie ISO 4217.

Przykład: USD

availabilityId List<String>

Wartości @id obiektów z atrybutem Dostępność, które zawierają informacje o tym, kiedy dana oferta z menu jest dostępna.

Przykład: [ "menu_availability_1" ]

eligibleQuantityMin Number

Minimalna wielkość zamówienia, dla której MenuItemOffer jest ważna.

Przykład: 1

eligibleQuantityMax Number

Maksymalna ilość zamówienia, dla której MenuItemOffer jest ważna.

Przykład: 25

inventoryLevel Number

Bieżący przybliżony poziom zapasów produktów odpowiadających tej ofercie menu.

Przykład: 10

dateModified Sygnatura czasowa ISO

Data i godzina ostatniej modyfikacji pliku danych o elementach MenuItemOffer w formacie sygnatury czasowej ISO, ale o typie String.

Przykład: 2017-01-02T00:00:00-07:00

applicableServiceType List<ServiceType>

Usługa, do której odnosi się element MenuItemOffer. Domyślnie zakłada się, że MenuItemOffer dotyczy wszystkich.

offeredById List<String>

Wartości atrybutu @id encji Restaurant, w których dostępna jest ta encja MenuItemOffer. Domyślnie zakłada się, że MenuItemOffer jest dostępna we wszystkich lokalizacjach.

Przykład: [ "restaurant_id_5", "restaurant_id_26" ]

Wymagana jest dokładnie jedna z tych grup właściwości.
menuItemId Grupa 1 String

Wartość @id elementu MenuItem powiązanego z tym elementem MenuItemOffer.

Przykład: menu_item_1

menuItemOptionId Grupa 2 String

Wartość @id elementu MenuItemOption powiązanego z tym elementem MenuItemOffer.

Przykład: menu_item_option_1

Ten przykład przedstawia element MenuItemOffer:

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

Typowe

ReverseReference

W tabeli poniżej podano właściwości typu ReverseReference:

Właściwość Typ Opis
@id String

Wymagane.

@id jednostki nadrzędnej.

displayOrder Liczba całkowita

Wymagane.

kolejność wyświetlania elementów w menu nadrzędnym,

NutritionInformation

W tabeli poniżej podano właściwości typu NutritionInformation:

Właściwość Typ Opis
description String

informacje o wartościach odżywczych w formacie dowolnego tekstu; Na przykład „zawiera konserwanty”.

calories String

Liczba kalorii w cal, kcal lub kJ, w formacie: wartość Cal lub min-max Cal

Przykład: 120.34 Cal

sodiumContent String

Liczba mg lub g sodu w formacie: wartość g lub min-max g

Przykład: 1200 mg

Ten przykład przedstawia element NutritionInformation:

Przykład

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

Alergeny

W tabeli poniżej podano właściwości typu Allergen:

Właściwość Typ Opis
allergenType AllergenType

Wymagane.

Typ alergenu.

levelOfContainment ContainmentLevel

Poziom danego alergenu w danym produkcie z menu.

Ten przykład przedstawia element Allergen:

Przykład

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

Dodatek

W tabeli poniżej podano właściwości typu Additive:

Właściwość Typ Opis
additiveName String

Wymagane.

Nazwa dodatku.

levelOfContainment ContainmentLevel

Poziom danego dodatku w pozycji menu.

Ten przykład przedstawia element Additive:

Przykład

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

DepositInfo

W tabeli poniżej podano właściwości typu DepositInfo:

Właściwość Typ Opis
depositCode DepositCode

Kod depozytu.

depositValue Number

Wartość liczbowa kaucji za produkt, np. w przypadku recyklingu.

depositValueCurrency String

Waluta wartości depozytu

Ten przykład przedstawia element DepositInfo:

Przykład

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

ServingConfig

Konfiguracja usługi służąca do obsługi różnych funkcji, np. do wyłączania widżetu promocyjnego.

W tabeli poniżej podano właściwości typu ServingConfig:

Właściwość Typ Opis
disableOrderInstructions Wartość logiczna

Ukrywa możliwość określenia instrukcji zamówienia.

disableMenuItemSpecialInstructions Wartość logiczna

Ukrywa możliwość określenia specjalnych instrukcji dotyczących elementu menu.

disableTipWidget Wartość logiczna

Ukrywa widżet napiwku na stronie „Złóż zamówienie” w procesie zamawiania.

disablePromoWidget Wartość logiczna

Ukrywa widżet promocyjny na stronie „Złóż zamówienie” w procesie składania zamówienia.

menuItemSpecialInstructionsMaxLength Number

Określa maksymalną liczbę znaków, które może zawierać instrukcja dotycząca specjalnego elementu menu.

orderInstructionsMaxLength Number

Określa maksymalną liczbę znaków, które może zawierać instrukcja zamówienia.

Ten przykład przedstawia element ServingConfig:

Przykład 1

{
  "disableMenuItemSpecialInstructions": true
}

Przykład 2

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

Przykład 3

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

Wartości w polu enum

DzieńTygodnia

Typ DayOfWeek może mieć te wartości:

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

ServiceType

Typ ServiceType może mieć te wartości:

  • DELIVERY
  • TAKEOUT

OrderType

Typ OrderType może mieć te wartości:

  • ASAP
  • ADVANCE

FeeType

Typ FeeType może mieć te wartości:

  • DELIVERY
  • SERVICE

OptionType

Typ OptionType może mieć te wartości:

  • SIZE
  • OPTION
  • PIZZA_SIDE

PizzaSide

Typ PizzaSide może mieć te wartości:

  • PIZZA_SIDE_LEFT
  • PIZZA_SIDE_RIGHT
  • PIZZA_SIDE_WHOLE

AllergenType

Typ alergenów według kodu gs1:AllergenTypeCode.

Typ AllergenType może mieć te wartości:

  • 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

Typ ContainmentLevel może mieć te wartości:

  • CONTAINS
  • FREE_FROM
  • MAY_CONTAIN

DepositCode

Typ DepositCode może mieć te wartości:

  • REUSABLE
  • RECYCLABLE

DealType

Kategoria oferty, do której ma być zastosowany rabat. Kategoria może być podana jako łączna kwota w koszyku lub opłaty za dostawę.

Typ DealType może mieć te wartości:

  • CART_OFF
  • DELIVERY_OFF

RestrictedDiet

Typ diety objętej ograniczeniami według schema.org:RestrictedDiet.

Typ RestrictedDiet może mieć te wartości:

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