השיטה UpdateBooking

בקשה

UpdateBookingRequest

הודעת הבקשה מכילה מידע מעודכן בשדה ההזמנה, ומפרטת את הנתיבים של כל שדות ההזמנה שצריך לעדכן בשדה update_mask. לדוגמה, השדה update_mask של בקשה לשינוי מועד של הזמנה קיימת מכיל את שני הנתיבים הבאים:

  paths: "start_time"
  paths: "duration"

מידע נוסף זמין במאמר FieldMask.

ערך המוחזר

UpdateBookingResponse

קודי שגיאה קנונים של gRPC

  • INVALID_ARGUMENT אם מסכת השדות שצוינה מכילה ערכים לא חוקיים או אם אחד מהשדות המעודכנים של ההזמנה לא חוקי. זה כולל מקרים שבהם לוגיקה עסקית לא מאפשרת לעדכן את השדה, למשל כי כבר מאוחר מדי לבטל.
  • NOT_FOUND אם מזהה ההזמנה שצוין לא ידוע
  • RESOURCE_EXHAUSTED אם השעה המעודכנת של תחילת השיחה לא זמינה להזמנה.
// 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;
}