The structure of your Ordering End-to-End data feed is defined by the relational inventory schema. The Ordering End-to-End data feed consists of the following top-level entities:
Restaurant
entities: Which restaurants you service.Service
entities: Timing, location, and conditions of your service.Menu
entities: Details of each restaurant's menu.
The following diagram shows how Service
, Restaurant
, and Menu
entities
represent a single restaurant:
General guidelines
Restaurants per file: Each data file should represent one restaurant with its related
Service
andMenu
entities. Use filenames that can help you search a file for a restaurant.Data file format: Data files need to be formatted in newline-separated JSON files (ndjson format).
DateTime and Time values: For properties that require a
DateTime
orTime
value, use the formats specified in DateTime and Time formats. For example,2017-05-01T06:30:00+05:30
forDateTime
andT08:08:00+05:30
forTime
.IDs: Use an
@id
property to identify all unique entities within an entity type. The maximum length is 300 characters. An@id
is a unique identifier of the entity of that type, but across entities, IDs can overlap. For example, assume you define aService
entity with the@id
property set toa16
. You cannot create anotherService
entity with an@id
ofa16
. However, you can usea16
as the@id
value of aMenu
entity.ID Generation: Keep your ids stable - do not use UUIDs or otherwise change/randomize ids between feed uploads. This allows easier support for entity-related issues.
Null values: Do not use the value
null
in place of objects. If an object is optional, you must omit it from your feed.
Client Libraries
The client code generator in the Tools section is available to validate your Ordering End-to-End data feed.