Metoda UpdateBooking
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Klient używa funkcji UpdateBooking, aby zmodyfikować lub anulować istniejącą rezerwację.
Jeśli aktualizacja rezerwacji nie powiedzie się z powodu błędu logiki biznesowej, błąd powinien zostać wypełniony w polu UpdateBookingResponse.booking_failure
i zwrócony z kodem stanu HTTP 200.
Wyślij prośbę
UpdateBookingRequest
Komunikat z prośbą zawiera zaktualizowane informacje w polu rezerwacji.
Prośba będzie zawierać identyfikator booking_id
, który pozwoli zidentyfikować rezerwację do zaktualizowania.
Obejmuje ona również:
- Szczegóły slotu do zaktualizowania (modyfikacje rezerwacji)
- Stan do zmiany (anulowanie rezerwacji)
Pola, które nie wymagają zmiany, nie zostaną uwzględnione w żądaniu.
Zwracana wartość
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;
}
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-26 UTC.
[null,null,["Ostatnia aktualizacja: 2025-07-26 UTC."],[[["\u003cp\u003eUpdateBooking API allows clients to modify or cancel existing bookings by sending an UpdateBookingRequest containing the booking ID and the desired changes.\u003c/p\u003e\n"],["\u003cp\u003eUpdateBookingRequest must include either updated slot details (for modifications) or a new status (for cancellations), omitting unchanged fields.\u003c/p\u003e\n"],["\u003cp\u003eUpdateBookingResponse returns the updated booking details, including any changes to the UserPaymentOption if applicable.\u003c/p\u003e\n"],["\u003cp\u003eEven if updating a booking fails due to business logic errors, the API responds with HTTP status 200, providing details about the failure in the booking_failure field of the UpdateBookingResponse.\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```"]]