UpdateBooking method
Stay organized with collections
Save and categorize content based on your preferences.
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: "start_time"
paths: "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. This includes the case where updating
the field is not permitted by business logic, e.g. because it is too late to
cancel.
NOT_FOUND
if the provided booking ID is unknown
RESOURCE_EXHAUSTED
if the slot that corresponds to the updated start time is
not available for booking.
// Request to update a [ext.maps.booking.partner.v0.Booking]
message UpdateBookingRequest {
// Field mask of all booking fields to be updated
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.
// - start_time and duration to reschedule a booking.
Booking booking = 2;
}
// Response with the updated [ext.maps.booking.partner.v0.Booking]
message UpdateBookingResponse {
// The updated booking
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.
UserPaymentOption user_payment_option = 2;
}
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\u003eUpdateBookingRequest\u003c/code\u003e updates booking information using the \u003ccode\u003eupdate_mask\u003c/code\u003e field to specify the fields to change.\u003c/p\u003e\n"],["\u003cp\u003eIt allows rescheduling by updating \u003ccode\u003estart_time\u003c/code\u003e and \u003ccode\u003eduration\u003c/code\u003e, and canceling by updating the \u003ccode\u003estatus\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003ePotential errors include \u003ccode\u003eINVALID_ARGUMENT\u003c/code\u003e for invalid updates, \u003ccode\u003eNOT_FOUND\u003c/code\u003e for unknown booking IDs, and \u003ccode\u003eRESOURCE_EXHAUSTED\u003c/code\u003e for unavailable slots.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eUpdateBookingResponse\u003c/code\u003e returns the updated booking and might include an updated \u003ccode\u003eUserPaymentOption\u003c/code\u003e if the update affects payment.\u003c/p\u003e\n"]]],["The `UpdateBookingRequest` message updates a booking by specifying the `booking` field with new information and `update_mask` with paths of the fields to modify, such as \"start_time\" and \"duration\". The request can modify a booking's status, start time, or duration. The `UpdateBookingResponse` returns the modified booking and any updated `UserPaymentOption`. Errors like `INVALID_ARGUMENT`, `NOT_FOUND`, and `RESOURCE_EXHAUSTED` may occur due to invalid input, unknown ID, or slot unavailability.\n"],null,["# UpdateBooking method\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: \"start_time\"\n paths: \"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. This includes the case where updating the field is not permitted by business logic, e.g. because it is too late to cancel.\n- `NOT_FOUND` if the provided booking ID is unknown\n- `RESOURCE_EXHAUSTED` if the slot that corresponds to the updated start time is not available for booking.\n\n```scilab\n// Request to update a [ext.maps.booking.partner.v0.Booking]\nmessage UpdateBookingRequest {\n // Field mask of all booking fields to be updated\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 // - start_time and duration to reschedule a booking.\n Booking booking = 2;\n}\n\n// Response with the updated [ext.maps.booking.partner.v0.Booking]\nmessage UpdateBookingResponse {\n // The updated booking\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.\n UserPaymentOption user_payment_option = 2;\n}\n```"]]