เมธอด BatchAvailabilityLookup

เมื่อมีการเรียกใช้ BatchAvailabilityLookup เซิร์ฟเวอร์การจองของพาร์ทเนอร์จะตรวจสอบว่าช่วงเวลาที่ขอนั้นถูกต้องและพร้อมให้บริการ ศูนย์การดำเนินการสามารถใช้ข้อมูลนี้เพื่อให้มั่นใจว่าจะมีการแสดงเฉพาะช่วงเวลาปัจจุบันต่อผู้ใช้ในระหว่างขั้นตอนการจอง

คำขอ

BatchAvailabilityLookupRequest

ผลลัพธ์

BatchAvailabilityLookupResponse

BatchAvailabilityLookupRequest/BatchAvailabilityLookupResponse

message BatchAvailabilityLookupRequest {
  // ID of the merchant.
  string merchant_id = 1;

  // Multiple slot times to be checked for availability. All queried times apply
  // to the same merchant_id and service_id.
  repeated SlotTime slot_time = 3;

  reserved 2;
}

// Response for the [ext.maps.booking.partner.v3.BatchAvailabilityLookupRequest]
// RPC with the availabilities of the appointment slots.
message BatchAvailabilityLookupResponse {
  // The availabilities for the requested SlotTime entries. There must be
  // exactly one slot_time_availability for each SlotTime entry in the
  // [ext.maps.booking.partner.v3.BatchAvailabilityLookupRequest].
  repeated SlotTimeAvailability slot_time_availability = 1;
}

SlotTime ในคำขอ

// Identifies a Slot service_id and start time and optionally, the Slot duration
// and resources, for a specific merchant. Note that this differs from the
// definition of Slot, as it does not include merchant_id identifier.
message SlotTime {
  // ID of the service. (required)
  string service_id = 5;

  // Start time of the appointment slot in seconds of UTC time since Unix epoch
  // (required)
  int64 start_sec = 1;

  // Duration of the appointment slot in seconds (optional)
  int64 duration_sec = 2;

  // Opaque tag that identifies the availability slot and matches the value
  // provided in the availability feed (optional)
  string availability_tag = 3;

  // The set of resources that specifies the appointment slot, e.g. by
  // indicating the staff member and room selected by the user, or party size
  // for dining slots (optional)
  ResourceIds resource_ids = 4;

  // Indicates whether bookings of this slot will be confirmed
  // synchronously or asynchronously. (optional)
  // An UNSPECIFIED value will be interpreted as synchronous.
  ConfirmationMode confirmation_mode = 6;
}

SlotTimeAvailability ในการตอบกลับ

หากไม่พบช่อง ให้แสดงผลลัพธ์ที่ว่างเปล่า อย่าแสดงข้อผิดพลาด 400

message SlotTimeAvailability {
  // The SlotTime for which availability was checked.
  SlotTime slot_time = 1;

  // Whether the requested SlotTime is available
  bool available = 2;
}