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:
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]messageUpdateBookingRequest{// Field mask of all booking fields to be updated (optional)google.protobuf.FieldMaskupdate_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).Bookingbooking=2;}// Response with the updated [ext.maps.booking.partner.v2.Booking]messageUpdateBookingResponse{// The updated booking (required)Bookingbooking=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)UserPaymentOptionuser_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)BookingFailurebooking_failure=3;}
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["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```"]]