Relationales Inventarschema

Auf dieser Seite wird das Format für die End-to-End-Datenfeeds für die Bestellabwicklung (Food Catalog-Spezifikation) beschrieben, die Sie Google zur Verfügung stellen. Für eine maschinenlesbare Version dieser Informationen können Sie das JSON-Schema herunterladen.

Allgemeine Anforderungen

Entitäten müssen in den Feeds in einer Zeile pro Entität strukturiert sein (Entitäten sind durch Zeilenumbruchzeichen getrennt). Zur besseren Lesbarkeit folgen die JSON-Beispiele auf dieser Seite nicht dieser Struktur. Sie müssen sich jedoch beim Senden Ihrer Feeds an diese Struktur halten. Eine Menüentität muss beispielsweise wie der folgende Code strukturiert sein:

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

Jede Entität „Restaurant“ kann zwei Dienstleistungsentitäten haben: jeweils eine für die Dienstleistungstypen „LIEFERUNG“ und „MITHILFE“. Jede „Dienst“-Entität darf nur eine „Menü“-Entität haben.

Unterentitäten können für mehrere Restaurants wiederverwendet werden.

Richtlinien für JSON-Werte

Typ erzwingen

Ein Typ eines JSON-Werts kann sich von dem im Schema definierten Typ unterscheiden, solange für den Wert der erforderliche Typ erzwungen werden kann. Beispielsweise können Stringattribute sowohl String- als auch Ganzzahlwerte als Eingabe akzeptieren. Ebenso können Ganzzahlattribute Stringwerte akzeptieren, solange der String in eine gültige Ganzzahl geparst werden kann.

Die Typerzwingung funktioniert auch für wiederholte Eigenschaften. Wiederkehrende Attribute können Werte als Eingabe akzeptieren, ohne in Klammern [] gesetzt zu werden. Das Attribut OperationHours.serviceId akzeptiert beispielsweise sowohl "service_id" als auch ["service_id"] als gültige Eingaben.

Datum/Uhrzeit- und Uhrzeitwerte

DateTime basiert auf dem Schema.org-Typ und muss, sofern nicht anders angegeben, dem ISO 8601-Format entsprechen und das Datum, die Uhrzeit und die Zeitzone enthalten. Verwenden Sie für DateTime die folgende Syntax:

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

Beispiel:

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 ist die Ortszeit in der Zeitzone eines Restaurants oder Dienstleistungsstandorts, basiert ebenfalls auf dem Schema.org-Typ und muss außerdem dem Format ISO 8601 entsprechen. Die Zeit verwendet die folgende Syntax:

// Time format:
THH:MM:SS

Beispiel:

T08:08:00 // 8:08 AM

Beachten Sie Folgendes, wenn Sie DateTime oder Time angeben:

  • Das Präfix „T“ vor der Uhrzeit ist Teil des Formats und ist erforderlich.
  • Die Zeitzone muss für DATETIME angegeben werden. Für TIME ist sie nicht erforderlich.
  • Die Uhrzeit muss in der Ortszeit des Restaurants oder der Dienstleistung angegeben werden.

Restaurantdaten

Restaurant (erforderlich)

Eine zu implementierende Entität. Beschreibt ein Restaurant.

In der folgenden Tabelle sind die Attribute für den Typ Restaurant aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: Restaurant

@id String

Erforderlich.

Eine eindeutige Kennung des Restaurants oder Lieferanbieters.

Beispiel: restaurant_1

name String

Erforderlich.

Name des Restaurants.

Beispiel: Foo

description String

Eine Beschreibung des Restaurants.

Beispiel: Best seafood in town

url URL

Die URL, die das Restaurant repräsentiert. Die Restaurant-Domain wird gegenüber der Aggregator-Domain bevorzugt.

Beispiel: http://www.provider.com/somerestaurant

sameAs URL

Die offizielle Website des Restaurants.

Beispiel: http://www.provider2.com/somerestaurant

telephone String

Telefonnummer des Restaurants

Beispiel: +12345665898

streetAddress String

Erforderlich.

Die Adresse des Restaurants.

Beispiel: 12345 Bar Avenu

addressLocality String

Erforderlich.

Der Ort oder die Stadt.

Beispiel: San Francisco

addressRegion String

Erforderlich.

Die Region oder das Bundesland.

Beispiel: CA

postalCode String

Erforderlich.

Die Postleitzahl.

Beispiel: 94124

addressCountry String

Erforderlich.

Zweistelliger Ländercode gemäß ISO 3166-1 alpha-2.

Beispiel: US

latitude Number

Breitengrad in Grad Werte sind auf den Bereich [[-90, 90]] beschränkt. Er muss mit einer Genauigkeit von mindestens fünf Nachkommastellen angegeben werden.

Beispiel: 35.7392607

longitude Number

Längengrad in Grad Werte sind auf den Bereich [[-180, 180]] beschränkt. Er muss mit einer Genauigkeit von mindestens fünf Nachkommastellen angegeben werden.

Beispiel: -120.3895522

dealId List<String>

Anwendbare Deal-Werte des Restaurants.

imprint String

Ein Restaurant-Imprint ist ein Abschnitt mit zusätzlichen Informationen über das Restaurant, z. B. rechtsgültiger Name, Firmensitz und Registrierungsnummer. Diese Informationen können mit „ “ formatiert werden.

Beispiel:

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

Commercial Register: 123456789

economicOperator String

Gegebenenfalls Informationen zum Wirtschaftsunternehmen in Verbindung mit dem Restaurant. Diese Informationen werden im Abschnitt Trader Info angezeigt. Text kann mit „ “ formatiert werden.

Beispiel:

XYZ Corp
123 Main Street
555-555-5555

dateModified ISO-Zeitstempel

Die Datum und Uhrzeit der letzten Änderung des Restaurantentitätsfeeds im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

Das folgende Beispiel zeigt ein Restaurant-Element:

Beispiel

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

Deal

Arten von Rabatten, die auf einen Einkaufswagen angewendet werden können.

In der folgenden Tabelle sind die Attribute für den Typ Deal aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: Deal

@id String

Erforderlich.

Eine eindeutige Kennung für den Deal.

Beispiel: FREEDELIVERY

dealCode String

Erforderlich.

Eindeutige Deal-ID pro Deal und Partner Mit dieser ID muss das Angebot in Ihrem Werbesystem eindeutig identifiziert werden. Google sendet Ihnen diese ID zur Validierung im Feld promotions.coupon einer CheckoutRequest.

Beispiel: ADETRE23

applicableServiceType Liste<ServiceType>

Der Dienst, für den dieser Deal gilt. Standardmäßig wird davon ausgegangen, dass ein Deal für alle Nutzer gilt.

eligibleMaxOrders Ganzzahl

Dieser Deal ist nur zulässig, wenn der Nutzer maximal diese Anzahl von erfolgreichen Bestellungen in der Vergangenheit hat.

availabilityId List<String>

Die @id-Werte der Verfügbarkeitseinheiten, die Details dazu liefern, wann der Menübereich verfügbar ist.

Beispiel: [ "availability_1" ]

isDisabled Boolesch

Dies überschreibt andere Gültigkeitsprüfungen.

dealType DealType

Erforderlich.

Kategorie des Deals, auf den der Rabatt angewendet wird. Bei der Kategorie kann es sich um die Gesamtsumme des Einkaufswagens, Service- oder Liefergebühren handeln.

priceCurrency String

Erforderlich, wenn discount is defined.

Erforderlich, wenn eligibleTransactionVolumeMin is defined.

Die Währung des Rabatts im dreistelligen ISO 4217-Format.

Beispiel: USD

eligibleTransactionVolumeMin Number

Transaktionsvolumen in einer Geldeinheit, für die dieses Angebot gilt.

termsOfServiceUrl URL

Erforderlich.

Menschenlesbare Dokumentation der Nutzungsbedingungen

dateModified ISO-Zeitstempel

Die Datum und Uhrzeit der letzten Änderung des Deal-Entitätsfeeds im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

Es ist genau eine der folgenden Property-Gruppen erforderlich.
discount Gruppe 1 Number

Wert des Rabatts als Zahl.

discountPercentage Gruppe 2 Number

Wert des Rabatts als Prozentsatz des Originalpreises.

Das folgende Beispiel zeigt ein Deal-Element:

Beispiel 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"
}

Beispiel 2

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

Beispiel 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"
}

Dienstdaten

Dienst (erforderlich)

Beschreibt die Details des Essensbestellservice für ein Restaurant. Service ist eine zu implementierende Entität erforderlich.

In der folgenden Tabelle sind die Attribute für den Typ Service aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: Service

@id String

Erforderlich.

Kennzeichnung für den Auftragsausführungsdienst.

Beispiel: service_1

serviceType ServiceType

Erforderlich.

Die Art der angebotenen Dienstleistung. Mögliche Werte sind "DELIVERY" und "TAKEOUT".

Beispiel: DELIVERY

restaurantId String

Erforderlich.

Der @id-Wert der Restaurantentität, der mit dieser Dienstleistungsentität korreliert.

Beispiel: restaurant_1

menuId String

Erforderlich.

Der @id-Wert der Menüentität, der mit dieser Dienstentität korreliert.

Beispiel: menu_1

dateModified ISO-Zeitstempel

Das Datum und die Uhrzeit der letzten Änderung des Dienstleistungsentitätsfeeds im ISO-Zeitstempelformat.

Beispiel: 2017-01-02T00:00:00-07:00

isDisabled Boolesch

Gibt an, ob die Entität deaktiviert ist. Verwenden Sie diesen Typ nur, wenn Sie die Entität aufgrund eines unerwarteten Ereignisses deaktivieren müssen und nicht wissen, wann der Dienst wiederhergestellt wird (z.B. nicht an Feiertagen).

Beispiel: true

servingConfig ServingConfig

Bereitstellungskonfiguration für den Dienst, der zur Steuerung verschiedener Funktionen verwendet wird, z. B. Deaktivierung des Werbe-Widgets usw.

actionLinkUrl String

Enthält eine URL für einen Liefer- oder Abholservice, die bei der Migration von der End-to-End-Lebensmittelbestellung zur Weiterleitung verwendet wird.

Das folgende Beispiel zeigt ein Service-Element:

Beispiel 1

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

Beispiel 2

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

ServiceArea

Beschreibt die geografische Region, in die Lebensmittel geliefert werden können. Diese Entität muss implementiert werden, wenn für die verknüpfte Entität Service serviceType auf „LIEFERUNG“ festgelegt wurde.

In der folgenden Tabelle sind die Attribute für den Typ ServiceArea aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: ServiceArea

@id String

Erforderlich.

Eine eindeutige Kennung des Einzugsgebiets.

Beispiel: service_area_1

serviceId List<String>

Erforderlich.

Der @id-Wert der Dienstentität, der mit dieser ServiceArea-Entität korreliert.

Beispiel: [ "service_1" ]

dateModified ISO-Zeitstempel

Datum und Uhrzeit der letzten Änderung des Entitätsfeeds für Einzugsgebiete im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

exclude Boolesch

Schließen Sie dieses Einzugsgebiet von der gesamten Lieferregion aus. Beispielsweise kann eine Postleitzahl von einer größeren Polygonfläche ausgeschlossen werden.

Es ist genau eine der folgenden Property-Gruppen erforderlich.
polygon Gruppe 1 List<String>

Ein Polygon oder Multipolygon, das als eine Folge von drei oder mehr durch Leerzeichen voneinander getrennten Punkten ausgedrückt wird. Es wird empfohlen, den ersten und den letzten Punkt identisch zu sein. Dies ist jedoch nicht erforderlich. Jeder Punkt in einem Polygon oder Multipolygon wird durch einen Breitengradpunkt gefolgt von einem Längengradpunkt definiert. Die Punkte müssen gegen den Uhrzeigersinn angegeben werden.

Beispiel: [ "37.806000 -122.425592 37.775849 -122.419043 37.795547 -122.394046 37.808747" ]

geoMidpointLatitude Gruppe 2 Number

Gibt die Koordinate für den Breitengrad in der Mitte des Bereichs CIRCLE an.

Beispiel: 37.806000

geoMidpointLongitude Gruppe 2 Number

Gibt die Koordinate des Längengrads in der Mitte des Bereichs WIDTH an.

Beispiel: -122.425592

geoRadius Gruppe 2 Ganzzahl

Gibt den ungefähren Radius (in Metern) des Bereichs WIDTH an.

Beispiel: 10000

postalCode Gruppe 3 String

Gibt die Postleitzahl an.

Beispiel: 91234

addressCountry Gruppe 3 String

Gibt den aus zwei Buchstaben bestehenden Alpha-2-Ländercode gemäß ISO 3166-1 an

Beispiel: US

Das folgende Beispiel zeigt ein ServiceArea-Element:

Beispiel

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

Hours (Öffnungszeiten) (erforderlich)

Beschreibt das Bestellfenster, in dem Nutzer auf den Ablauf zugreifen und so bald wie möglich oder zukünftige Bestellungen aufgeben können. Die Implementierung von OperationHours ist erforderlich und standardmäßig wird der Vorgang zu jeder Uhrzeit an allen Tagen dargestellt.

Die Attribute OperationHours opens und closes geben die Öffnungs- und Schließzeiten für das Onlinesystem an, über das Nutzer Bestellungen aufgeben können. Innerhalb dieser Online-Systemzeiten kannst du ServiceHours verwenden, um die Öffnungszeiten anzugeben, während derer Bestellungen von Nutzern ausgeführt werden können.

Die Zeiten müssen in der Ortszeit für die Dienstleistung angegeben werden. Fügen Sie in einen opens-Wert keine Zeitzone ein. Wenn eine Zeitzone angegeben ist, ignoriert Google diese Informationen. Weitere Informationen finden Sie unter Datum/Uhrzeit-Formate.

In der folgenden Tabelle sind die Attribute für den Typ OperationHours aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: OperationHours

@id String

Erforderlich.

Eine eindeutige Kennung für die Entität, die das Bestellfenster beschreibt. Nutzende können auf den Ablauf zugreifen und so bald wie möglich/zukünftige Bestellungen aufgeben.

Beispiel: operation_hour_1

serviceId List<String>

Erforderlich.

Der @id-Wert der Dienstentität, der mit dieser OperationHours-Entität korreliert.

Beispiel: [ "service_1" ]

opens ISO-Zeit (Ortszeit)

Gibt die bestimmte Tageszeit im ISO-Format an, ab der Bestellungen von Nutzern aufgegeben werden können.

Beispiel: T00:00

closes ISO-Zeit (Ortszeit)

Gibt die Uhrzeit im ISO-Format an, ab der keine Bestellungen von Nutzern aufgegeben werden können.

Beispiel: T16:00

dayOfWeek Liste<DayOfWeek>

Eine Liste der Tage der Woche, an denen diese Öffnungszeiten gelten. Zulässige Werte sind "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY" und "SUNDAY".

Beispiel: [ "MONDAY", "TUESDAY" ]

validFrom ISO-Zeitstempel

Erforderlich, wenn isSpecialHour = true.

Ein ISO-Zeitstempel, der den Beginn des Bestellfensters angibt, in dem Nutzer auf den Ablauf zugreifen und so bald wie möglich/zukünftige Bestellungen aufgeben können.

Beispiel: 2017-01-01T00:00:00-07:00

validThrough ISO-Zeitstempel

Erforderlich, wenn isSpecialHour = true.

Ein ISO-Zeitstempel, der die Endzeit des Bestellfensters angibt, nach der Nutzer nicht auf den Ablauf zugreifen und so bald wie möglich/zukünftige Bestellungen aufgeben können.

Beispiel: 2017-01-02T00:00:00-07:00

isSpecialHour Boolesch

Ein boolescher Wert, der angibt, ob die OperationHours für spezielle Öffnungszeiten gelten. Zulässige Werte sind „false“ und „true“.

Beispiel: False

dateModified ISO-Zeitstempel

Das Datum und die Uhrzeit der letzten Änderung des OperationHours-Entitätsfeeds im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

Das folgende Beispiel zeigt ein OperationHours-Element:

Beispiel 1

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

Beispiel 2

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

ServiceHours (erforderlich)

Beschreibt das Auftragsausführungsfenster, in dem Nutzer Ausführungsslots (ASAP oder zukünftige Slots) auswählen können. Implementierung von ServiceHours ist erforderlich.

Die Attribute OperationHours opens und closes geben die Öffnungs- und Schließzeiten für das Onlinesystem an, über das Nutzer Bestellungen aufgeben können. Innerhalb dieser Online-Systemzeiten kannst du ServiceHours verwenden, um die Öffnungszeiten anzugeben, während derer Bestellungen von Nutzern ausgeführt werden können.

Die Zeiten müssen in der Ortszeit für die Dienstleistung angegeben werden. Fügen Sie in einen opens-Wert keine Zeitzone ein. Wenn eine Zeitzone angegeben ist, ignoriert Google diese Informationen. Weitere Informationen finden Sie unter Datum/Uhrzeit-Formate.

In der folgenden Tabelle sind die Attribute für den Typ ServiceHours aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: ServiceHours

@id String

Erforderlich.

Eine eindeutige Kennung der Entität, die das Auftragsausführungsfenster beschreibt, für das Nutzer Auftragsausführungsslots auswählen können, z.B. „ASAP“ oder „zukünftige Slots“.

Beispiel: service_hour_1

orderType OrderType

Erforderlich.

Ein String, der angibt, ob die Servicezeiten für „ASAP“- oder erweiterte Bestellungen gelten. Zulässige Werte sind „ASAP“ und „ADVANCE“.

Beispiel: ASAP

serviceId List<String>

Erforderlich.

Der @id-Wert der Serviceentität, der mit dieser ServiceHours-Entität korreliert.

Beispiel: [ "service_1" ]

operationHoursId List<String>

Erforderlich, wenn isSpecialHour = false.

Der @id-Wert der OperationHours-Entität, der mit dieser ServiceHours-Entität korreliert.

Beispiel: [ "operation_hour_1" ]

opens ISO-Zeit (Ortszeit)

Gibt die Uhrzeit im ISO-Format an, ab der Bestellungen von Nutzern ausgeführt werden können.

Beispiel: T00:00

closes ISO-Zeit (Ortszeit)

Gibt die Uhrzeit im ISO-Format an, ab der Bestellungen von Nutzern nicht ausgeführt werden können.

Beispiel: T16:00

dayOfWeek Liste<DayOfWeek>

Eine Liste der Tage der Woche, an denen diese Öffnungszeiten gelten.

Beispiel: [ "MONDAY", "TUESDAY" ]

validFrom ISO-Zeitstempel

Erforderlich, wenn isSpecialHour = true.

Ein ISO-Zeitstempel, der den Beginn des Bestellfensters angibt, in dem Nutzer auf den Ablauf zugreifen und so bald wie möglich/zukünftige Bestellungen aufgeben können.

Beispiel: 2017-01-01T00:00:00-07:00

validThrough ISO-Zeitstempel

Erforderlich, wenn isSpecialHour = true.

Ein ISO-Zeitstempel, der die Endzeit des Bestellfensters angibt, nach der Nutzer nicht auf den Ablauf zugreifen und so bald wie möglich/zukünftige Bestellungen aufgeben können.

Beispiel: 2017-01-02T00:00:00-07:00

isSpecialHour Boolesch

Ein boolescher Wert, der angibt, ob die OperationHours für spezielle Öffnungszeiten gelten. Zulässige Werte sind „false“ und „true“.

Beispiel: False

leadTimeMin Ganzzahl

Voraussichtliche minimale Liefer-/Abholzeit in Minuten nach Aufgabe der Bestellung für „schnellstmöglich“. Wir empfehlen dringend, diese Eigenschaft festzulegen.

Beispiel: 60

leadTimeMax Ganzzahl

Maximale voraussichtliche Liefer-/Abholzeit in Minuten nach Aufgabe der Bestellung für den schnellstmöglichen Versand. Wir empfehlen dringend, diese Eigenschaft festzulegen.

Beispiel: 70

advanceBookingRequirementMin Ganzzahl

Erforderlich, wenn orderType = "ADVANCE".

Die Mindestanzahl von Minuten ab der Bestellzeit, in denen die Vorabbestellung ausgeführt werden kann. Wenn zum Beispiel eine Vorabbestellung mindestens 60 Minuten zur Ausführung benötigt, dann ist „preBookingAnforderungMin“ „60“.

Beispiel: 15

advanceBookingRequirementMax Ganzzahl

Erforderlich, wenn orderType = "ADVANCE".

Die maximale Anzahl von Minuten ab der Bestellzeit, in denen die Vorabbestellung ausgeführt werden kann. Wenn beispielsweise eine Vorabbestellung nicht mehr als 2 Tage später ausgeführt werden darf, lautet der Wert für Vorabbuchungen dabei „2880“.

Beispiel: 10080

advanceBookingSlotInterval String

Erforderlich, wenn orderType = "ADVANCE".

Intervall zwischen zwei aufeinanderfolgenden Slot-Zeiten für Vorausbuchungen. Beispiel: Wenn das Unternehmen zwischen 8:00 Uhr und 20:00 Uhr geöffnet und geschlossen wird und das „AdvanceBookingSlotInterval“-Intervall 15 Minuten beträgt, kann der Nutzer die Ausführungszeiten 8:00 Uhr, 8:15 Uhr, 8:30 Uhr, 8:45 Uhr und so weiter bis 20 Uhr auswählen. Die Dauer muss als Dauer des ISO-Zeitraums angegeben werden. Beispiel: „PT15M“ bedeutet Intervalle von 15 Minuten.

Beispiel: PT15M

dateModified ISO-Zeitstempel

Das Datum und die Uhrzeit der letzten Änderung des ServiceHours-Entitätsfeeds im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

Das folgende Beispiel zeigt ein ServiceHours-Element:

Beispiel 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"
}

Beispiel 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
}

Gebühr

Beschreibt eine Gebühr. Wenn für die verknüpfte Service-Entität serviceType auf „LIEFERUNG“ festgelegt ist, ist ein Fee erforderlich, bei dem feeType auf „LIEFERUNG“ festgelegt ist.

In der folgenden Tabelle sind die Attribute für den Typ Fee aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: Fee

@id String

Erforderlich.

Eine eindeutige Kennung der Entität, die die Gebühr beschreibt.

Beispiel: service_fee_1

serviceId List<String>

Erforderlich.

Der @id-Wert der Dienstentität, der mit dieser Gebührenentität korreliert.

Beispiel: [ "service_1" ]

feeType FeeType

Erforderlich.

Ein String, der angibt, ob die Gebühr für Liefer- oder Dienstleistungsbestellungen gilt. Zulässige Werte sind "DELIVERY" (LIEFERUNG) und "SERVICE".

Beispiel: DELIVERY

priceCurrency String

Erforderlich.

Der dreistellige ISO 4217-Währungscode.

Beispiel: USD

basePrice Number

Basispreis der Gebühr, der gilt, wenn percentageOfCart oder pricePerMeter verwendet werden.

Beispiel: 2.0

minPrice Number

Mindestgebühr, begrenzt den Gebührenwert bei Verwendung von percentageOfCart oder pricePerMeter.

Beispiel: 2.0

maxPrice Number

Maximale Gebühr, begrenzter Gebührenwert bei Verwendung von percentageOfCart oder pricePerMeter.

Beispiel: 10.0

eligibleRegion List<String>

Die @id des Einzugsgebiets der geopolitischen Region(en), für die die Gebühr gültig ist. Verwenden Sie diese Eigenschaft nur, wenn die Liefergebühren je nach Region variieren.

Beispiel: [ "service_area_1" ]

eligibleTransactionVolumeMin Number

Das minimale Transaktionsvolumen in einer Geldeinheit, für das diese Gebührenspezifikation gilt.

Beispiel: 50

eligibleTransactionVolumeMax Number

Das maximale Transaktionsvolumen in einer Geldeinheit, für die diese Gebührenspezifikation gilt. Die Gebühr fällt beispielsweise nicht an, wenn ein bestimmtes Bestellvolumen überschritten wird.

Beispiel: 10

validFrom ISO-Zeitstempel

Ein ISO-Zeitstempel, der den Beginn des Gültigkeitszeitraums der Gebühr angibt.

Beispiel: 2017-01-01T00:00:00-07:00

validThrough ISO-Zeitstempel

Ein ISO-Zeitstempel, der die Endzeit angibt, nach der die Gebühr ungültig ist.

Beispiel: 2017-01-02T00:00:00-07:00

dateModified ISO-Zeitstempel

Das Datum und die Uhrzeit der letzten Änderung des Gebührenentitätsfeeds im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

priority Number

Ein positiver Wert ungleich null. Wenn für den Einkaufswagen des Nutzers mehr als eine Gebühr gilt, hat die Gebühr mit der höchsten Priorität Vorrang vor den Gebühren mit der höchsten Priorität. Wenn dieses Feld angegeben wird, hat die Priorität immer Vorrang vor einer berechneten Priorität.

Beispiel: 3

Es ist genau eine der folgenden Property-Gruppen erforderlich.
price Gruppe 1 Number

Preis der Gebühr Wenn der Preis nicht festgelegt ist, können „minPrice“ und „maxPrice“ anstelle von „price“ angegeben werden.

Beispiel: 1.5

percentageOfCart Gruppe 2 Number

Gebühr als Prozentsatz des Warenkorbwerts. Zulässige Werte sind Gleitkommawerte zwischen 0 und 100 (jeweils einschließlich).

Beispiel: 9.00

pricePerMeter Gruppe 3 Number

Gebühr pro Meter für radiale Entfernung zum Nutzer. Wenn die Entfernung zum Nutzer beispielsweise 5 km beträgt und der Preis 0,001 $beträgt, beträgt die Nutzergebühr 5 $.

Beispiel: 0.001

Das folgende Beispiel zeigt ein Fee-Element:

Beispiel 1

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

Beispiel 2

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

Beispiel 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
}

Beispiel 4

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

Beispiel 5

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

Eine zu implementierende Entität. Beschreibt ein Menü.

In der folgenden Tabelle sind die Attribute für den Typ Menu aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: Menu

@id String

Erforderlich.

Eine eindeutige Kennung des Menüs.

Beispiel: menu_1

name String

Der Text, der das Menü identifizieren kann, wenn ein Nutzer das Menü surft.

Beispiel: Foo

disclaimer String

Haftungsausschluss für das Menü. Beispiel: Offenlegung in Nährwerten und Allergenen.

Beispiel: Items may contain peanuts.

disclaimerUrl URL

URL, die auf eine Seite mit weiteren Details zum Haftungsausschluss verweist.

dateModified ISO-Zeitstempel

Die Datum und Uhrzeit der letzten Änderung des Entitätsfeeds für die Speisekarte im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

Das folgende Beispiel zeigt ein Menu-Element:

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

Eine optionale Entität, die implementiert werden soll. Beschreibt einen bestimmten Bereich des Menüs.

In der folgenden Tabelle sind die Attribute für den Typ MenuSection aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: MenuSection

@id String

Erforderlich.

Eine eindeutige Kennung des Speisekartenbereichs.

Beispiel: menu_section_1

menuId Liste<ReverseReference>

Der @id-Wert der Entität „Menü“ korreliert mit dieser MenuSection-Entität.

Beispiel: [ { "@id": "menu_id", "displayOrder": 4 } ]

menuSectionId List<String>

Eine Liste der @id-Werte der untergeordneten MenuSection-Entitäten, die dieser MenuSection-Entität entsprechen.

Wichtig:Sie dürfen nur eine menuSectionId- oder parentMenuSectionId(in child)-Referenz verwenden.

Beispiel: [ "child_menu_section_1", "child_menu_section_2" ]

parentMenuSectionId Liste<ReverseReference>

Der @id-Wert der übergeordneten MenuSection-Entität, der mit dieser MenuSection-Entität korreliert.

Wichtig:Sie dürfen nur eine parentMenuSectionId- oder menuSectionId(in parent)-Referenz verwenden.

Beispiel: [ { "@id": "parent_menu_section_id", "displayOrder": 4 } ]

name String

Erforderlich.

Der Text, der die MenuSection identifizieren kann, wenn ein Nutzer das Menü aufruft.

Beispiel: Foo

description String

Eine Beschreibung der Speisekarte.

Beispiel: Example menu section description that helps users.

image URL

Die URL eines Bildes des Bereichs auf der Speisekarte.

Beispiel: https://provider.com/someimage

menuItemId List<String>

Eine Liste der @id-Werte der MenuItem-Entitäten, die dieser MenuSection-Entität entsprechen.

Wichtig:Sie dürfen nur eine menuItemId- oder MenuItem.parentMenuSectionId-Referenz verwenden.

Beispiel: [ "menu_item1", "menu_item2" ]

parentMenuItemId Liste<ReverseReference>

Eine Liste der @id-Werte der übergeordneten MenuItem-Entitäten, die dieser MenuSection-Entität entsprechen.

Wichtig:Sie dürfen nur eine parentMenuItemId- oder MenuItem.menuAddOnId-Referenz verwenden.

Beispiel: [ { "@id": "parent_menu_item_id", "displayOrder": 4 } ]

parentMenuItemOptionId Liste<ReverseReference>

Eine Liste der @id-Werte der übergeordneten MenuItemOption-Entitäten, die dieser MenuSection-Entität entsprechen.

Wichtig:Sie dürfen nur eine parentMenuItemOptionId- oder MenuItemOption.menuAddOnId-Referenz verwenden.

Beispiel: [ { "@id": "parent_menu_item_option_id", "displayOrder": 4 } ]

eligibleQuantityMax Ganzzahl

Die maximale Anzahl von Add-ons, die im Bereich „Add-ons“ ausgewählt werden können.

Beispiel: 5

eligibleQuantityMin Ganzzahl

Die Mindestanzahl von Add-ons, die im Add-on-Bereich ausgewählt werden muss.

Beispiel: 1

defaultItemId List<String>

Eine Liste mit @id, die MenuItem-Entitäten referenziert, die standardmäßig für Nutzer im Add-on MenuSection ausgewählt sind. Nutzer können die endgültige Auswahl ändern. Wenn die defaultItemId nicht angegeben ist, ist keine MenuItem vorausgewählt.

Beispiel: [ "item1", "item2" ]

availabilityId List<String>

Die @id-Werte der Verfügbarkeitseinheiten, die Details dazu liefern, wann der Menübereich verfügbar ist.

Beispiel: [ "menu_availability_1" ]

numberOfFreeAddOns Ganzzahl

Gibt die Anzahl der Add-ons an, die ein Nutzer kostenlos auswählen kann. Nur gültig für Add-on-Menübereiche.

Beispiel: 3

dateModified ISO-Zeitstempel

Das Datum und die Uhrzeit der letzten Änderung des Entitätsfeeds MenuSection im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

applicableServiceType Liste<ServiceType>

Der Dienst, für den dieses MenuSection gilt. Standardmäßig wird davon ausgegangen, dass MenuSection für alle gilt.

offeredById List<String>

Die @id-Werte von Restaurant-Entitäten, unter denen diese MenuSection verfügbar ist. Bei der Standardeinstellung wird davon ausgegangen, dass an allen Standorten ein MenuSection verfügbar ist.

Beispiel: [ "restaurant_id_1", "restaurant_id_55" ]

Das folgende Beispiel zeigt ein MenuSection-Element:

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

Verfügbarkeit

Eine optionale Entität, die implementiert werden soll. Beschreibt den Zeitraum, in dem eine MenuSection-Entität bereitgestellt wird.

In der folgenden Tabelle sind die Attribute für den Typ Availability aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: Availability

@id String

Erforderlich.

Eine eindeutige ID der Entität, die die Verfügbarkeit des Speisekartenbereichs beschreibt.

Beispiel: menu_section_avail_1

availabilityStarts ISO-Zeit (Ortszeit)

Der ISO-Zeitstempel für den Beginn, ab dem die Verfügbarkeit des Menübereichs gültig ist.

Beispiel: T00:00

availabilityEnds ISO-Zeit (Ortszeit)

Der ISO-Zeitstempel für die Endzeit, nach der die Verfügbarkeit des Speisekartenbereichs ungültig wird.

Beispiel: T16:00

availableDay Liste<DayOfWeek>

Eine Liste der Tage der Woche, an denen die Verfügbarkeit des Speisekartenbereichs gültig ist.

Beispiel: [ "MONDAY", "TUESDAY" ]

validFrom ISO-Zeitstempel

Ein ISO-Zeitstempel, der den Beginn angibt, ab dem die Verfügbarkeit des Menübereichs gültig ist.

Beispiel: 2017-01-01T00:00:00-07:00

validThrough ISO-Zeitstempel

Ein ISO-Zeitstempel für die Endzeit, nach der die Verfügbarkeit des Speisekartenbereichs ungültig ist.

Beispiel: 2017-01-02T00:00:00-07:00

dateModified ISO-Zeitstempel

Die Datum und Uhrzeit der letzten Änderung des Entitätsfeeds für die Verfügbarkeit im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

Das folgende Beispiel zeigt ein Availability-Element:

Beispiel

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

Eine zu implementierende Entität. Beschreibt ein Element in einer Menu-Entität.

In der folgenden Tabelle sind die Attribute für den Typ MenuItem aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: MenuItem

@id String

Erforderlich.

Eine eindeutige Kennung des Menüpunkts.

Beispiel: menu_item_1

name String

Erforderlich.

Der Text, der die MenuItem identifizieren kann, wenn ein Nutzer das Menü aufruft.

Beispiel: Foo

description String

Eine Beschreibung des Menüpunkts.

Beispiel: Foo

image URL

Die URL eines Bilds des Menüpunkts.

Beispiel: http://someprovider.com/someimage

parentMenuSectionId Liste<ReverseReference>

Eine Liste der @id-Werte der übergeordneten MenuSection-Entitäten, die dieser MenuItem-Entität entsprechen.

Wichtig:Sie dürfen nur eine parentMenuSectionId- oder MenuSection.menuItemId-Referenz verwenden.

Beispiel: { "@id": "menu_section_parent_id", "displayOrder": 4 }

menuAddOnId List<String>

Eine Liste der @id-Werte der MenuSection-Entitäten aus dem Add-on-Abschnitt, die dieser MenuItem-Entität entsprechen.

Wichtig:Sie dürfen nur eine menuAddOnId- oder MenuSection.parentMenuItemId-Referenz verwenden.

Beispiel: menu_addon_1

nutrition NutritionInformation

Nährwertinformationen für das Gericht, insbesondere die Kalorien.

Beispiel: { "calories": "120-150 Cal" }

allergen Liste<Allergen>

Allergene dieser MenuItem.

Beispiel: [ { "allergenType": "PEANUTS", "levelOfContainment": "MAY_CONTAIN" } ]

additive Liste<Additive>

Zusatzstoffe für dieses MenuItem.

Beispiel: [ { "additiveName": "Sodium nitrite", "levelOfContainment": "CONTAINS" } ]

suitableDiet Liste<RestrictedDiet>

Das Gericht entspricht den beschriebenen Ernährungseinschränkungen.

Beispiel: [ "DIABETIC", "GLUTEN_FREE" ]

depositInfo DepositInfo

Verpackungs- und Recyclinginformationen für diese MenuItem.

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

numberOfServings Ganzzahl

Anzahl der Portionen, die für einen bestimmten Menüpunkt verfügbar sind.

Beispiel: 2

dateModified ISO-Zeitstempel

Das Datum und die Uhrzeit der letzten Änderung des Entitätsfeeds MenuItem im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

Das folgende Beispiel zeigt ein MenuItem-Element:

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

Eine optionale Entität, die implementiert werden soll. Beschreibt die Entscheidungen, die ein Nutzer bei der Auswahl eines Gerichts oder einer Kombination treffen muss. Der Nutzer muss eine Option auswählen. Andernfalls wird die Bestellung als ungültig betrachtet. So muss der Nutzer z. B. für eine Pizza klein, mittel oder groß auswählen.

In der folgenden Tabelle sind die Attribute für den Typ MenuItemOption aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Wert: MenuItemOption

@id String

Erforderlich.

Eine eindeutige Kennung der Menüoption.

Beispiel: menu_item_1_option

menuItemId ReverseReference

Erforderlich.

Der @id-Wert der MenuItem-Entität korreliert mit dieser MenuItemOption-Entität.

Beispiel: { "@id": "menu_item_1", "displayOrder": 4 }

optionType OptionType

Ein String, der angibt, ob die Menüoption nach Größe, Option oder Pizzaseite kategorisiert ist. Zulässige Werte sind "SIZE", "OPTION" und "PIZZA_SIDE". "SIZE": Größe von MenuItemOption. Beispiel: klein, mittel oder groß. „OPTION“: Jede Variante, bei der es sich nicht um die Größe handelt, z.B. ein Gericht, das als Salat oder Sandwich erhältlich ist. Wenn Sie nicht zwischen „SIZE“ und „OPTION“ unterscheiden können, verwenden Sie „OPTION“. "PIZZA_SIDE": Spezifisch für Pizzen. Das MenuItemOption-Beispiel ist nur für eine Portion oder ganze Pizza gültig (z. B. Pizza mit Pilzen auf der linken Seite, auf der rechten Seite oder ganze Pizza).

Beispiel: SIZE

value String oder PizzaSide

Erforderlich, wenn optionType is defined.

Ein String- oder ENUM-Wert. Enum-Werte sind für den Optionstyp PIZZA_SIDE spezifisch.

applicableParentOptionValue String

Ein String mit dem Wert des Optionswerts des übergeordneten Elements, für den diese Option verfügbar ist.

Beispiel: Small

menuAddOnId List<String>

Eine Liste der @id-Werte der MenuSection-Entitäten aus dem Add-on-Abschnitt, die dieser MenuItemOption-Entität entsprechen.

Wichtig:Sie dürfen nur eine menuAddOnId- oder MenuSection.parentMenuItemId-Referenz verwenden.

Beispiel: menuAddOnId

nutrition NutritionInformation

Nährwertinformationen für das Gericht, insbesondere die Kalorien.

Beispiel: { "calories": "120-150 Cal" }

allergen Liste<Allergen>

Allergene dieser MenuItem.

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

additive Liste<Additive>

Zusatzstoffe für dieses MenuItem.

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

depositInfo DepositInfo

Die Verpackungs- und Recyclinginformationen für diese MenuItem.

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

numberOfServings Ganzzahl

Anzahl der Portionen, die für eine bestimmte Menüoption verfügbar sind.

Beispiel: 2

dateModified ISO-Zeitstempel

Datum und Uhrzeit der letzten Änderung des MenuItemOption-Entitätsfeeds im ISO-Zeitstempelformat, aber mit dem Typ „String“

Beispiel: 2017-01-02T00:00:00-07:00

Das folgende Beispiel zeigt ein MenuItemOption-Element:

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

Eine zu implementierende Entität. Beschreibt ein Angebot für eine MenuItem- oder MenuItemOption-Entität.

In der folgenden Tabelle sind die Attribute für den Typ MenuItemOffer aufgeführt:

Property Typ Beschreibung
@type Fortsetzung

Erforderlich.

Wert: MenuItemOffer

@id String

Erforderlich.

Eine eindeutige Kennung des Artikelangebots auf der Speisekarte.

Beispiel: menu_item_offer

sku String

Erforderlich.

Eine ID des Artikelangebots auf der Speisekarte. Die SKU-Werte können bei mehreren Menüelement-Angebotseinheiten unterschiedlich oder gleich sein. Der Artikelnummerwert wird in der richtigen Reihenfolge festgelegt, wenn wir einen API-Aufruf an Sie senden.

Beispiel: Menu_item_offer_sku

price Number

Erforderlich.

Preis des Speiseangebots.

Beispiel: 2.5

priceCurrency String

Erforderlich.

Der dreistellige ISO 4217-Währungscode.

Beispiel: USD

availabilityId List<String>

Die @id-Werte der Verfügbarkeitseinheiten, die Details dazu liefern, wann das Menüangebot verfügbar ist.

Beispiel: [ "menu_availability_1" ]

eligibleQuantityMin Number

Die Mindestbestellmenge, für die MenuItemOffer gültig ist.

Beispiel: 1

eligibleQuantityMax Number

Die maximale Bestellmenge, für die MenuItemOffer gültig ist.

Beispiel: 25

inventoryLevel Number

Der aktuelle ungefähre Inventarstand für den oder die Artikel, die diesem MenuItemOffer entsprechen.

Beispiel: 10

dateModified ISO-Zeitstempel

Das Datum und die Uhrzeit der letzten Änderung des Entitätsfeeds MenuItemOffer im ISO-Zeitstempelformat, aber mit dem Typ „String“.

Beispiel: 2017-01-02T00:00:00-07:00

applicableServiceType Liste<ServiceType>

Der Dienst, für den dieses MenuItemOffer gilt. Standardmäßig wird davon ausgegangen, dass MenuItemOffer für alle gilt.

offeredById List<String>

Die @id-Werte von Restaurant-Entitäten, unter denen diese MenuItemOffer verfügbar ist. Bei der Standardeinstellung wird davon ausgegangen, dass an allen Standorten ein MenuItemOffer verfügbar ist.

Beispiel: [ "restaurant_id_5", "restaurant_id_26" ]

Es ist genau eine der folgenden Property-Gruppen erforderlich.
menuItemId Gruppe 1 String

Der @id-Wert der MenuItem-Entität korreliert mit dieser MenuItemOffer-Entität.

Beispiel: menu_item_1

menuItemOptionId Gruppe 2 String

Der @id-Wert der MenuItemOption-Entität korreliert mit dieser MenuItemOffer-Entität.

Beispiel: menu_item_option_1

Das folgende Beispiel zeigt ein MenuItemOffer-Element:

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

Allgemein

ReverseReference

In der folgenden Tabelle sind die Attribute für den Typ ReverseReference aufgeführt:

Property Typ Beschreibung
@id String

Erforderlich.

@id der übergeordneten Entität.

displayOrder Ganzzahl

Erforderlich.

Reihenfolge des Elements innerhalb des übergeordneten Elements anzeigen.

NutritionInformation

In der folgenden Tabelle sind die Attribute für den Typ NutritionInformation aufgeführt:

Property Typ Beschreibung
description String

Ernährungsinformationen im Freitext. Beispiel: „Enthält Konservierungsstoffe“.

calories String

Die Anzahl der Kalorien in kcal, kcal oder kJ im folgenden Format: Wert kcal oder min-max. Cal

Beispiel: 120.34 Cal

sodiumContent String

Anzahl mg oder g Natrium im folgenden Format: Wert g oder min-max g

Beispiel: 1200 mg

Das folgende Beispiel zeigt ein NutritionInformation-Element:

Beispiel

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

Allergene

In der folgenden Tabelle sind die Attribute für den Typ Allergen aufgeführt:

Property Typ Beschreibung
allergenType AllergenType

Erforderlich.

Die Art des Allergens.

levelOfContainment ContainmentLevel

Der Wert eines bestimmten Allergens im Menüpunkt.

Das folgende Beispiel zeigt ein Allergen-Element:

Beispiel

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

Additiv

In der folgenden Tabelle sind die Attribute für den Typ Additive aufgeführt:

Property Typ Beschreibung
additiveName String

Erforderlich.

Name des Additivs.

levelOfContainment ContainmentLevel

Ebene eines bestimmten Zusatzstoffs im Menüpunkt.

Das folgende Beispiel zeigt ein Additive-Element:

Beispiel

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

DepositInfo

In der folgenden Tabelle sind die Attribute für den Typ DepositInfo aufgeführt:

Property Typ Beschreibung
depositCode DepositCode

Depotcode.

depositValue Number

Numerischer Wert der Kaution des Artikels, z. B. beim Recycling.

depositValueCurrency String

Währung des Einzahlungswerts

Das folgende Beispiel zeigt ein DepositInfo-Element:

Beispiel

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

ServingConfig

Bereitstellungskonfiguration für den Dienst, der zur Steuerung verschiedener Funktionen verwendet wird, z. B. Deaktivierung des Werbe-Widgets usw.

In der folgenden Tabelle sind die Attribute für den Typ ServingConfig aufgeführt:

Property Typ Beschreibung
disableOrderInstructions Boolesch

Blendet die Möglichkeit aus, Anweisungen für Bestellungen anzugeben.

disableMenuItemSpecialInstructions Boolesch

Blendet die Möglichkeit aus, spezielle Anweisungen für einen Menüpunkt anzugeben.

disableTipWidget Boolesch

Blendet das Tipps-Widget auf der Seite „Bestellen“ des Bestellablaufs aus.

disablePromoWidget Boolesch

Blendet das Werbe-Widget auf der Seite „Bestellen“ des Bestellablaufs aus.

menuItemSpecialInstructionsMaxLength Number

Gibt die maximale Anzahl von Zeichen an, die eine Sonderanweisung für Menüpunkte enthalten darf.

orderInstructionsMaxLength Number

Gibt die maximale Anzahl von Zeichen an, die eine Auftragsanweisung enthalten darf.

Das folgende Beispiel zeigt ein ServingConfig-Element:

Beispiel 1

{
  "disableMenuItemSpecialInstructions": true
}

Beispiel 2

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

Beispiel 3

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

Enums

DayOfWeek

Der Typ DayOfWeek hat folgende mögliche Werte:

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

ServiceType

Der Typ ServiceType hat folgende mögliche Werte:

  • DELIVERY
  • TAKEOUT

OrderType

Der Typ OrderType hat folgende mögliche Werte:

  • ASAP
  • ADVANCE

FeeType

Der Typ FeeType hat folgende mögliche Werte:

  • DELIVERY
  • SERVICE

OptionType

Der Typ OptionType hat folgende mögliche Werte:

  • SIZE
  • OPTION
  • PIZZA_SIDE

PizzaSide

Der Typ PizzaSide hat folgende mögliche Werte:

  • PIZZA_SIDE_LEFT
  • PIZZA_SIDE_RIGHT
  • PIZZA_SIDE_WHOLE

AllergenType

Art der Allergene per gs1:AllergenTypeCode.

Der Typ AllergenType hat folgende mögliche Werte:

  • 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

Der Typ ContainmentLevel hat folgende mögliche Werte:

  • CONTAINS
  • FREE_FROM
  • MAY_CONTAIN

DepositCode

Der Typ DepositCode hat folgende mögliche Werte:

  • REUSABLE
  • RECYCLABLE

DealType

Kategorie des Deals, auf den der Rabatt angewendet wird. Die Kategorie kann die Gesamtsumme des Einkaufswagens oder die Versandkosten umfassen.

Der Typ DealType hat folgende mögliche Werte:

  • CART_OFF
  • DELIVERY_OFF

RestrictedDiet

Art eingeschränkter Ernährung gemäß schema.org:RestrictedDiet.

Der Typ RestrictedDiet hat folgende mögliche Werte:

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