UpdateBooking yöntemi
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Müşteri, mevcut bir rezervasyonu değiştirmek veya iptal etmek için UpdateBooking'i kullanır.
Bir rezervasyonun güncellenmesi, işletme mantığı hatası nedeniyle başarısız olursa hata UpdateBookingResponse.booking_failure
alanına doldurulup HTTP 200 durumuyla döndürülmelidir.
İstek
UpdateBookingRequest
İstek mesajı, rezervasyon alanında güncellenmiş bilgileri içerir.
İstek, güncellenecek rezervasyonu tanımlamak için bir booking_id
içerir. Ayrıca aşağıdakilerden birini de içerir:
- Güncellenecek aralık ayrıntıları (rezervasyon değişiklikleri)
- Değiştirilecek durum (rezervasyonun iptali)
Değişiklik gerektirmeyen alanlar isteğinde sağlanmaz.
Döndürülen değer
UpdateBookingResponse
// 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 instance, 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 cancellable) (required if failure occurs)
BookingFailure booking_failure = 3;
}
Aksi belirtilmediği sürece bu sayfanın içeriği Creative Commons Atıf 4.0 Lisansı altında ve kod örnekleri Apache 2.0 Lisansı altında lisanslanmıştır. Ayrıntılı bilgi için Google Developers Site Politikaları'na göz atın. Java, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-26 UTC.
[null,null,["Son güncelleme tarihi: 2025-07-26 UTC."],[[["\u003cp\u003eUpdateBooking API allows clients to modify or cancel existing bookings by providing the \u003ccode\u003ebooking_id\u003c/code\u003e and updated information like slot details or status.\u003c/p\u003e\n"],["\u003cp\u003eThe API uses \u003ccode\u003eUpdateBookingRequest\u003c/code\u003e for sending update requests and \u003ccode\u003eUpdateBookingResponse\u003c/code\u003e for responses, including the updated booking and potentially an updated user payment option.\u003c/p\u003e\n"],["\u003cp\u003eIn case of update failure due to business logic errors, the error details will be provided in the \u003ccode\u003ebooking_failure\u003c/code\u003e field of the \u003ccode\u003eUpdateBookingResponse\u003c/code\u003e, even with an HTTP 200 status.\u003c/p\u003e\n"],["\u003cp\u003eWhen updating a booking results in payment option changes (e.g., cancellation leading to credit), the updated \u003ccode\u003eUserPaymentOption\u003c/code\u003e is included in the response.\u003c/p\u003e\n"]]],["The `UpdateBooking` process modifies or cancels a booking via an `UpdateBookingRequest`, identified by `booking_id`. The request includes either new slot details for modification or a status change for cancellation. The `UpdateBookingResponse` returns the updated `Booking` and may include an altered `UserPaymentOption` if changes occurred. If updating fails due to a business logic error, the `booking_failure` field is populated, and a 200 HTTP status is returned. Unchanged fields are omitted from the request.\n"],null,["# UpdateBooking method\n\nThe client uses UpdateBooking to modify or cancel an existing booking.\n\nIf updating a booking fails due to any business logic error, the error should be\npopulated in the `UpdateBookingResponse.booking_failure` field and returned\nwith HTTP status 200.\n\n**Request**\n\nUpdateBookingRequest\n\nA request message contains updated information in the booking field.\nThe request will contain a `booking_id` to identify the booking to update. It\nwill also include one of:\n\n1. Slot details to update (booking modifications)\n2. Status to change (booking cancellation)\n\nFields which do not require change will not be provided in the request.\n\n**Return value**\n\nUpdateBookingResponse \n\n```scilab\n// Request to update a Booking.\nmessage UpdateBookingRequest {\n // The booking to be updated\n // The following fields can be set in a booking:\n // - status, to cancel a booking.\n // - one of the following is required:\n // - start_time AND duration in the slot, to reschedule a booking.\n // - party_size (for dining reservations).\n Booking booking = 1;\n}\n\n// Response with the updated Booking.\nmessage UpdateBookingResponse {\n // The updated booking (required)\n Booking booking = 1;\n\n // The updated user payment option originally used to pay for this booking.\n // This should be set if the UpdateBookingRequest results in a change to\n // the UserPaymentOption.\n // For instance, if the booking is canceled, the UserPaymentOption should\n // reflect an additional credit to the user. In the case of a multi-use\n // payment option, the current_count should be increased by one to\n // allow the user to create another booking with this payment option. In the\n // case of a single-use payment option, a new single-use user payment option\n // should be returned. (required if altered in update)\n UserPaymentOption user_payment_option = 2;\n\n // If updating a booking fails, this field should reflect the business logic\n // error (e.g., booking is not cancellable) (required if failure occurs)\n BookingFailure booking_failure = 3;\n}\n```"]]