示例 Feed

商家“dining-A”收取 100 美元的押金,并提供 1 小时 取消 窗口,以确保其热门的露台座位始终满座。其室内座位不收取此费用,且无需提供信用卡即可预订。

商家“dining-B”的所有座位均收取每人 20 美元的违约金,商家可以选择是否收取此费用。此外,商家还要求所有 预订取消操作 都必须至少提前 30 分钟进行。

商家“dining-C”不支持付款。商家接受午餐时段的标准预订,但要求在晚餐高峰时段预订时必须获得餐厅经理的批准。为了支持此流程,商家要求所有 晚餐预订都必须至少提前 1 小时进行

商家“dining-D”有三个预付费空档。第一个空档的价格为 200 美元,第二个空档的价格为 100 美元起,最后一个空档的价格范围为 100 美元到 150 美元。所有预付费价格都在可用性 Feed 中指定。

商家

{
  "metadata": {
    "processing_instruction": "PROCESS_AS_COMPLETE",
    "shard_number": 0,
    "total_shards": 1,
    "nonce": "12923311",
    "generation_timestamp": 1530431933
  },
  "merchant": [
    {
      "merchant_id": "dining-A",
      "name": "The Noodle Shop",
      "telephone": "+1 123-456-7890",
      "url": "www.diningAspublicsite.com",
      "tax_rate": {
        "micro_percent": 6750000
      },
      "geo": {
        "latitude": 37.422113,
        "longitude": -122.084041,
        "address": {
          "country": "US",
          "region": "CA",
          "postal_code": "94043",
          "street_address": "1897 Landings Dr",
          "locality": "Mountain View"
        }
      },
      "category": "restaurant"
    },
    {
      "merchant_id": "dining-B",
      "name": "Burrito Express",
      "telephone": "+1 123-456-7890",
      "url": "www.diningBspublicsite.com",
      "tax_rate": {
        "micro_percent": 6750000
      },
      "geo": {
        "latitude": 37.422113,
        "longitude": -122.084041,
        "address": {
          "country": "US",
          "region": "CA",
          "postal_code": "94043",
          "street_address": "1550 Plymouth St",
          "locality": "Mountain View"
        }
      },
      "category": "restaurant"
    },
    {
      "merchant_id": "dining-C",
      "name": "Coffee Café",
      "telephone": "+1 123-456-7854",
      "url": "www.diningCspublicsite.com",
      "geo": {
        "latitude": 37.422113,
        "longitude": -122.084041,
        "address": {
          "country": "US",
          "region": "CA",
          "postal_code": "94043",
          "street_address": "1500 Plymouth St",
          "locality": "Mountain View"
        }
      },
      "category": "restaurant"
    },
    {
      "merchant_id": "dining-D",
      "name": "Restaurant Express",
      "telephone": "+1 123-456-7854",
      "url": "www.diningDspublicsite.com",
      "geo": {
        "latitude": 37.422113,
        "longitude": -122.084041,
        "address": {
          "country": "US",
          "region": "CA",
          "postal_code": "94043",
          "street_address": "1500 Plymouth St",
          "locality": "Mountain View"
        }
      },
      "category": "restaurant"
    }
  ]
}

服务

{
  "metadata": {
    "processing_instruction": "PROCESS_AS_COMPLETE",
    "shard_number": 0,
    "total_shards": 1,
    "nonce": "12484913",
    "generation_timestamp": 1530432018
  },
  "service": [
    {
      "merchant_id": "dining-A",
      "service_id": "reservation",
      "uri_template": {
        "uri_template": "https://reservation-provider.com/examplerestaurant/book?date={availability_slot_start_seconds}&num_guests={resources_party_size}"
      },
      "localized_service_name": {
        "value": "Reservation",
        "localized_value": [
          {
            "locale": "en",
            "value": "Reservation"
          }
        ]
      }
    },
    {
      "merchant_id": "dining-B",
      "service_id": "reservation",
      "uri_template": {
        "uri_template": "https://reservation-provider.com/examplerestaurant/book?date={availability_slot_start_seconds}&num_guests={resources_party_size}"
      },
      "localized_service_name": {
        "value": "Reservation",
        "localized_value": [
          {
            "locale": "en",
            "value": "Reservation"
          }
        ]
      },
      "no_show_fee": {
        "fee": {
          "price_micros": 20000000,
          "currency_code": "USD"
        },
        "fee_type": "PER_PERSON"
      },
      "rules": {
        "min_advance_booking": 1800,
        "min_advance_online_canceling": 1800
      }
    },
    {
      "merchant_id": "dining-C",
      "service_id": "reservation",
      "localized_service_name": {
        "value": "Reservation",
        "localized_value": [
          {
            "locale": "en",
            "value": "Reservation"
          }
        ]
      }
    }
  ]
}

可用性

如果设置 linkout_required_reason PAYMENT_REQUIRED ,空档必须指定预付款、违约金、押金或信用卡要求,才能启用重定向链接。请注意,每人 20 美元的违约金是在商家 dining-B 的服务中定义的。
{
  "metadata": {
    "processing_instruction": "PROCESS_AS_COMPLETE",
    "shard_number": 0,
    "total_shards": 1,
    "nonce": "11203880",
    "generation_timestamp": 1543875200
  },
  "service_availability": [
    {
      "availability": [
        {
          "merchant_id": "dining-A",
          "service_id": "reservation",
          "start_sec": 1535853600,
          "duration_sec": 2700,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "room_id": "A-dining-room",
            "room_name": "Dining Room",
            "party_size": 2
          }
        },
        {
          "merchant_id": "dining-A",
          "service_id": "reservation",
          "linkout_required_reason": "PAYMENT_REQUIRED",
          "start_sec": 1535853600,
          "duration_sec": 1800,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "room_id": "A-patio",
            "room_name": "Patio",
            "party_size": 2
          },
          "deposit": {
            "deposit": {
              "price_micros": 100000000,
              "currency_code": "USD"
            }
          },
          "min_advance_cancellation_sec": 3600
        },
        {
          "merchant_id": "dining-B",
          "service_id": "reservation",
          "linkout_required_reason": "PAYMENT_REQUIRED",
          "start_sec": 1535853600,
          "duration_sec": 1800,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "party_size": 2
          }
        },
        {
          "merchant_id": "dining-B",
          "service_id": "reservation",
          "linkout_required_reason": "PAYMENT_REQUIRED",
          "start_sec": 1535855400,
          "duration_sec": 1800,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "party_size": 2
          }
        },
        {
          "merchant_id": "dining-C",
          "service_id": "reservation",
          "start_sec": 1535853600,
          "duration_sec": 1800,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "party_size": 2
          },
          "scheduling_rule_overrides": {
            "last_bookable_sec": 1535850400
          }
        },
        {
          "merchant_id": "dining-C",
          "service_id": "reservation",
          "start_sec": 1535855400,
          "duration_sec": 1800,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "party_size": 2
          },
          "scheduling_rule_overrides": {
            "last_bookable_sec": 1535851800
          }
        },
        {
          "merchant_id": "dining-D",
          "service_id": "reservation",
          "linkout_required_reason": "PAYMENT_REQUIRED",
          "start_sec": 1535855600,
          "duration_sec": 1800,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "room_id": "Main",
            "room_name": "Main",
            "party_size": 2
          },
          "prepayment": {
            "price_info": {
              "price_type": "PER_PERSON",
              "price": {
                "price_micros": 200000000,
                "currency_code": "USD"
              }
            }
          }
        },
        {
          "merchant_id": "dining-D",
          "service_id": "reservation",
          "linkout_required_reason": "PAYMENT_REQUIRED",
          "start_sec": 1535855800,
          "duration_sec": 1800,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "room_id": "vegan_five_course",
            "room_name": "Vegan Five Course Meal",
            "party_size": 2
          },
          "prepayment": {
            "price_info": {
              "price_type": "PER_PERSON",
              "price_range": {
                "min_price": {
                  "price_micros": 100000000,
                  "currency_code": "USD"
                }
              }
            }
          }
        },
        {
          "merchant_id": "dining-D",
          "service_id": "reservation",
          "linkout_required_reason": "PAYMENT_REQUIRED",
          "start_sec": 1535855800,
          "duration_sec": 1800,
          "spots_total": 2,
          "spots_open": 2,
          "resources": {
            "room_id": "Main",
            "room_name": "Main",
            "party_size": 2
          },
          "prepayment": {
            "price_info": {
              "price_type": "PER_PERSON",
              "price_range": {
                "min_price": {
                  "price_micros": 100000000,
                  "currency_code": "USD"
                },
                "max_price": {
                  "price_micros": 150000000,
                  "currency_code": "USD"
                }
              }
            }
          }
        }
      ]
    }
  ]
}