スロットから直接予約を作成する際にはまず、リクエストしたスロットの空き状況を確認します。パートナーのバックエンドでは、リクエストされた予約スロットが有効で利用可能であることを確認します。その後、クライアントは空き状況に関する情報を受信した後に、スロットの予約を作成するようリクエストします。
リクエスト
CheckAvailabilityRequest
戻り値
CheckAvailabilityResponse
正規 gRPC エラーコード
INVALID_ARGUMENT
(無効な販売者 ID、サービス ID、またはスロットの時間の指定)
// Request to check availability for a [ext.maps.booking.partner.v2.Slot] message CheckAvailabilityRequest { // The appointment slot that is being checked (required) Slot slot = 1; } // Response for the [ext.maps.booking.partner.v2.CheckAvailability] RPC with the // availability of the appointment slot message CheckAvailabilityResponse { // The requested slot. (required) Slot slot = 1; // Number of available spots. // 0 indicates that the appointment slot is not available. (required) int32 count_available = 2; // If set, the last time (in seconds since the Unix epoch) that this specific // appointment slot can be cancelled through Reserve with Google. This field // will override any service-level cancellation rules. (optional) // // Deprecated: Use scheduling_rule_overrides.last_online_cancellable_sec // in the Availability feed instead. int64 last_online_cancellable_sec = 5 [deprecated = true]; // This enum indicates what requirements exist for the user to acknowledge or // view the requested slots duration/end time. enum DurationRequirement { // The handling of the end time is not specified. This is the default. DURATION_REQUIREMENT_UNSPECIFIED = 0; // The end time is not shown to the user. DO_NOT_SHOW_DURATION = 1; // The end time has to be shown to the user before an appointment can be // made. MUST_SHOW_DURATION = 2; } // The requirement to show the slots duration and/or endtime. This field will // be ignored if the slot is unavailable. (optional) // // Deprecated: Use duration_requirement in the Availability feed instead. DurationRequirement duration_requirement = 3 [deprecated = true]; // Optionally, the partner can return additional updated information about the // availability for this merchant if this information is present when // responding to the CheckAvailabilityRequest and if there is no negative // impact on the CheckAvailability request latency. // For instance an entire day of merchant availability for a superset of // resources can be returned here. AvailabilityUpdate availability_update = 4; }