サービス エンティティ

Service エンティティは、テイクアウトやデリバリーなど、レストランで利用できる料理注文サービスを定義します。Service エンティティを定義する場合は、Service タイプを使用します。各レストランは、テイクアウトまたは宅配のいずれか 1 つのサービス エンティティと、1 つのテイクアウトと 1 つのデリバリー タイプの 2 つのサービス エンティティに接続する必要があります。

サービス エンティティの関係図
図 1: ServiceArea、ServiceHours、OperationHours、Fee の各エンティティとの関係を示す Service エンティティ。

サービス エンティティは、サービスタイプ、営業時間、提供地域などのプロパティを定義します。サービス エンティティは、データフィードがアップロードされるたびに変更または更新されます。

サービス エンティティの例

次の例では、注文を毎日受け付ける基本的な Service エンティティを定義しています。

{
  "@type":"Service",
  "@id":"takeout_1",
  "serviceType":"TAKEOUT",
  "menuId":"menu_1",
  "restaurantId":"restaraunt_1"
}
{
  "@type":"OperationHours",
  "@id":"takeout_1_op_hours",
  "serviceId":"takeout_1",
  "opens":"00:00",
  "closes":"23:59"
}
{
  "@type":"ServiceHours",
  "@id":"takeout_1_service_hours",
  "orderType":"ASAP",
  "serviceId":"takeout_1",
  "operationHoursId":"takeout_1_op_hours",
  "opens":"11:00",
  "closes":"21:00",
  "dayOfWeek":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY", "FRIDAY", "SATURDAY"],
  "leadTimeMin":"20",
  "leadTimeMax":"20",
  "isSpecialHour":false
}
{
  "@type":"ServiceHours",
  "@id":"takeout_1_service_hours_sun",
  "orderType":"ASAP",
  "serviceId":"takeout_1",
  "operationHoursId":"takeout_1_op_hours",
  "opens":"16:00",
  "closes":"21:00",
  "dayOfWeek":["SUNDAY"],
  "leadTimeMin":"20",
  "leadTimeMax":"20",
  "isSpecialHour":false
}
{
  "@type":"Service",
  "@id":"delivery_1",
  "serviceType":"DELIVERY",
  "menuId":"10824",
  "restaurantId":"10824"
}
{
  "@type":"OperationHours",
  "@id":"delivery_1_op_hours",
  "serviceId":"delivery_1",
  "opens":"00:00",
  "closes":"23:59"
}
{
  "@type":"ServiceHours",
  "@id":"delivery_1_service_hours",
  "orderType":"ASAP",
  "serviceId":"delivery_1",
  "operationHoursId":"delivery_1_op_hours",
  "opens":"11:00",
  "closes":"21:00",
  "dayOfWeek":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY", "FRIDAY", "SATURDAY",
  "SUNDAY"],
  "leadTimeMin":"50",
  "leadTimeMax":"50",
  "isSpecialHour":false
}
{
  "@type":"ServiceArea",
  "@id":"delivery_1_service_area",
  "serviceId":"delivery_1",
  "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"]
}
{
  "@type":"Fee",
  "@id":"delivery_1_fee",
  "serviceId":"delivery_1",
  "feeType":"DELIVERY",
  "priceCurrency":"USD",
  "eligibleRegion":"delivery_1_service_area",
  "eligibleTransactionVolumeMin":20,
  "percentageOfCart": 7
}

できるだけ早く

ユーザーは、レストランの ServiceHours の間にできるだけ早く SAP を注文できます。または、レストランの OperationHours 内に事前注文を行い、事前の ServiceHours に納品することもできます。事前運行時間を定義するには、orderType プロパティを ADVANCE に設定して ServiceHours エンティティを作成します。詳細と例については、配達時間と受け取り時間をご覧ください。

Service エンティティを一時的に無効にする

祝休日や特別営業時間を設定することで、事前に規定されている特定の期間の ServiceHours を一時的に停止または上書きできます。予期しない理由で Service エンティティを無効にするには、Service エンティティの isDisabled プロパティを true に設定してリアルタイム更新リクエストを送信します。

詳細と例については、エンティティの削除と無効化をご覧ください。