UpdateBooking 请求和响应示例
UpdateBooking 请求
{
"booking" : {
"booking_id" : "890",
"slot" : {
"duration_sec" : "1800",
"start_sec" : "1606473000"
}
}
}
UpdateBooking 响应
{
"booking" : {
"booking_id" : "890",
"slot" : {
"duration_sec" : 1800,
"merchant_id" : "1234",
"resources" : {
"party_size" : 2
},
"service_id" : "1000",
"start_sec" : 1606473000
},
"status" : "CONFIRMED",
"user_information" : {
"email" : "john.smith@gmail.com",
"family_name" : "Smith",
"given_name" : "John",
"telephone" : "+12091111111",
"user_id" : "1111111111111111111"
}
}
}
定义
UpdateBooking 请求定义
请求消息会在预订字段中包含更新后的信息。该请求包含平台通过 CreateBooking
方法生成的 booking_id
,用于标识要更新的预订。它还包含以下消息之一:
- 要更新的空档详细信息(修改预订)
- 要更改的状态(取消预订)
不会在请求中提供无需更改的字段。
UpdateBooking 响应定义
// Request to update a Booking.
message UpdateBookingRequest {
// The booking to be updated
// The following fields can be set in a booking:
// - status, to cancel a booking.
// - one of the following is required:
// - start_time AND duration in the slot, to reschedule a booking.
// - party_size (for dining reservations).
Booking booking = 1;
}
// Response with the updated Booking.
message UpdateBookingResponse {
// The updated booking (required)
Booking booking = 1;
// The updated user payment option originally used to pay for this booking.
// This should be set if the UpdateBookingRequest results in a change to
// the UserPaymentOption.
// For example, if the booking is canceled, the UserPaymentOption should
// reflect an additional credit to the user. In the case of a multi-use
// payment option, the current_count should be increased by one to
// allow the user to create another booking with this payment option. In the
// case of a single-use payment option, a new single-use user payment option
// should be returned. (required if altered in update)
UserPaymentOption user_payment_option = 2;
// If updating a booking fails, this field should reflect the business logic
// error (e.g., booking is not cancelable) (required if failure occurs)
BookingFailure booking_failure = 3;
}