BatchAvailabilityLookup method
Stay organized with collections
Save and categorize content based on your preferences.
When a BatchAvailabilityLookup is issued, the partner booking server
verifies that the requested appointment slots are currently valid and
available. This can be used by the Actions Center to ensure that only
current slots are presented to users during the reservation flow.
Request
BatchAvailabilityLookupRequest
Return value
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 in request
// 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 in response
If no slots are found simply return an empty response. Do not return a 400 error.
message SlotTimeAvailability {
// The SlotTime for which availability was checked.
SlotTime slot_time = 1;
// Whether the requested SlotTime is available
bool available = 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\u003eBatchAvailabilityLookup verifies the availability of multiple appointment slots for a specific merchant and service.\u003c/p\u003e\n"],["\u003cp\u003eThe request specifies the merchant ID, service ID, and a list of desired appointment slot times.\u003c/p\u003e\n"],["\u003cp\u003eThe response indicates the availability of each requested slot time with a simple true/false value.\u003c/p\u003e\n"],["\u003cp\u003eAn empty response is returned if no matching slots are found, and no error is thrown in this scenario.\u003c/p\u003e\n"]]],["The `BatchAvailabilityLookup` process checks the validity and availability of appointment slots. A `BatchAvailabilityLookupRequest`, containing a merchant ID and multiple `SlotTime` entries, is sent. Each `SlotTime` includes a service ID, start time, optional duration, availability tag, resources, and confirmation mode. The `BatchAvailabilityLookupResponse` returns a `SlotTimeAvailability` for each requested slot, indicating if it's available. An empty response signifies no slots were found. No 400 error is returned if no slots are found.\n"],null,["# BatchAvailabilityLookup method\n\nWhen a BatchAvailabilityLookup is issued, the partner booking server\nverifies that the requested appointment slots are currently valid and\navailable. This can be used by the Actions Center to ensure that only\ncurrent slots are presented to users during the reservation flow.\n\n**Request**\n\nBatchAvailabilityLookupRequest\n\n**Return value**\n\nBatchAvailabilityLookupResponse\n\nBatchAvailabilityLookupRequest/BatchAvailabilityLookupResponse\n--------------------------------------------------------------\n\n```scdoc\nmessage BatchAvailabilityLookupRequest {\n // ID of the merchant.\n string merchant_id = 1;\n\n // Multiple slot times to be checked for availability. All queried times apply\n // to the same merchant_id and service_id.\n repeated SlotTime slot_time = 3;\n\n reserved 2;\n}\n\n// Response for the [ext.maps.booking.partner.v3.BatchAvailabilityLookupRequest]\n// RPC with the availabilities of the appointment slots.\nmessage BatchAvailabilityLookupResponse {\n // The availabilities for the requested SlotTime entries. There must be\n // exactly one slot_time_availability for each SlotTime entry in the\n // [ext.maps.booking.partner.v3.BatchAvailabilityLookupRequest].\n repeated SlotTimeAvailability slot_time_availability = 1;\n}\n```\n\nSlotTime in request\n-------------------\n\n```scilab\n// Identifies a Slot service_id and start time and optionally, the Slot duration\n// and resources, for a specific merchant. Note that this differs from the\n// definition of Slot, as it does not include merchant_id identifier.\nmessage SlotTime {\n // ID of the service. (required)\n string service_id = 5;\n\n // Start time of the appointment slot in seconds of UTC time since Unix epoch\n // (required)\n int64 start_sec = 1;\n\n // Duration of the appointment slot in seconds (optional)\n int64 duration_sec = 2;\n\n // Opaque tag that identifies the availability slot and matches the value\n // provided in the availability feed (optional)\n string availability_tag = 3;\n\n // The set of resources that specifies the appointment slot, e.g. by\n // indicating the staff member and room selected by the user, or party size\n // for dining slots (optional)\n ResourceIds resource_ids = 4;\n\n // Indicates whether bookings of this slot will be confirmed\n // synchronously or asynchronously. (optional)\n // An UNSPECIFIED value will be interpreted as synchronous.\n ConfirmationMode confirmation_mode = 6;\n}\n```\n\nSlotTimeAvailability in response\n--------------------------------\n\n\nIf no slots are found simply return an empty response. Do not return a 400 error. \n\n```scdoc\nmessage SlotTimeAvailability {\n // The SlotTime for which availability was checked.\n SlotTime slot_time = 1;\n\n // Whether the requested SlotTime is available\n bool available = 2;\n}\n```"]]