UpdateBooking method
Stay organized with collections
Save and categorize content based on your preferences.
The client uses UpdateBooking to modify or cancel an existing booking.
If updating a booking fails due to any business logic error, the error should be
populated in the response. See Booking
Failure for
detailed information.
Request
UpdateBookingRequest
A request message contains updated information in the booking field, and lists
paths of all booking fields to be updated in the update_mask field. For example,
the update_mask field of a request that reschedules an existing booking contains
the following two paths:
paths: "slot.start_time"
paths: "slot.duration"
See
FieldMask
for additional information.
Return value
UpdateBookingResponse
Canonical gRPC error codes
INVALID_ARGUMENT
(if the provided field mask contains invalid values or any
of the updated Booking fields are invalid)
NOT_FOUND
(if the provided booking ID is unknown to the partner)
// Request to update a [ext.maps.booking.partner.v2.Booking]
message UpdateBookingRequest {
// Field mask of all booking fields to be updated (optional)
google.protobuf.FieldMask update_mask = 1;
// 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 = 2;
}
// Response with the updated [ext.maps.booking.partner.v2.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;
}
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-05-20 UTC.
[null,null,["Last updated 2025-05-20 UTC."],[[["\u003cp\u003e\u003ccode\u003eUpdateBooking\u003c/code\u003e enables clients to modify or cancel existing bookings by specifying updated fields and an \u003ccode\u003eupdate_mask\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe request must contain a \u003ccode\u003eBooking\u003c/code\u003e object with desired changes and a \u003ccode\u003eFieldMask\u003c/code\u003e indicating which fields are being updated.\u003c/p\u003e\n"],["\u003cp\u003ePotential errors include \u003ccode\u003eINVALID_ARGUMENT\u003c/code\u003e for incorrect requests and \u003ccode\u003eNOT_FOUND\u003c/code\u003e if the booking ID is invalid.\u003c/p\u003e\n"],["\u003cp\u003eThe response returns an updated \u003ccode\u003eBooking\u003c/code\u003e object, potentially a modified \u003ccode\u003eUserPaymentOption\u003c/code\u003e, or a \u003ccode\u003eBookingFailure\u003c/code\u003e if the update fails.\u003c/p\u003e\n"],["\u003cp\u003eRescheduling requires updating \u003ccode\u003estart_time\u003c/code\u003e and \u003ccode\u003eduration\u003c/code\u003e within the \u003ccode\u003eslot\u003c/code\u003e field, while cancellations involve updating the \u003ccode\u003estatus\u003c/code\u003e field.\u003c/p\u003e\n"]]],["The `UpdateBooking` function modifies existing bookings. A request includes the updated booking details and a field mask specifying which fields to change, such as `slot.start_time` and `slot.duration` for rescheduling. The response returns the updated booking and may include a modified `UserPaymentOption` or a `BookingFailure` for business logic errors. Possible errors include `INVALID_ARGUMENT` for invalid fields or `NOT_FOUND` for an unknown booking ID. The status can be updated to cancel a booking.\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 response. See [Booking\nFailure](/actions-center/reference/grpc-api-v2/booking-failure-specification) for\ndetailed information.\n\n**Request**\n\nUpdateBookingRequest\n\nA request message contains updated information in the booking field, and lists\npaths of all booking fields to be updated in the update_mask field. For example,\nthe update_mask field of a request that reschedules an existing booking contains\nthe following two paths: \n\n```scdoc\n paths: \"slot.start_time\"\n paths: \"slot.duration\"\n```\n\nSee\n[FieldMask](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.FieldMask)\nfor additional information.\n\n**Return value**\n\nUpdateBookingResponse\n\n**Canonical gRPC error codes**\n\n- `INVALID_ARGUMENT` (if the provided field mask contains invalid values or any of the updated Booking fields are invalid)\n- `NOT_FOUND` (if the provided booking ID is unknown to the partner)\n\n```scilab\n// Request to update a [ext.maps.booking.partner.v2.Booking]\nmessage UpdateBookingRequest {\n // Field mask of all booking fields to be updated (optional)\n google.protobuf.FieldMask update_mask = 1;\n\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 = 2;\n}\n\n// Response with the updated [ext.maps.booking.partner.v2.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```"]]