[null,null,["最后更新时间 (UTC):2025-07-26。"],[[["\u003cp\u003eMerchants can set a minimum advance booking time for services, ensuring bookings are made within a specified timeframe before the service start time.\u003c/p\u003e\n"],["\u003cp\u003eThis can be configured at the service level (affecting all slots) or at the individual slot level, offering flexibility in setting booking windows.\u003c/p\u003e\n"],["\u003cp\u003eService-level settings use \u003ccode\u003erules.min_advance_booking\u003c/code\u003e (in seconds), while slot-level settings use \u003ccode\u003escheduling_rule_overrides.last_bookable_sec\u003c/code\u003e (as an EPOCH timestamp).\u003c/p\u003e\n"],["\u003cp\u003eMerchants still need to validate booking requests against the booking window on their end and handle potential booking failures appropriately, as feed-based limits might not cover all edge cases.\u003c/p\u003e\n"]]],["Merchants can set minimum advanced booking times for services or slots. At the service level, the `rules.min_advance_booking` field specifies the minimum seconds needed before a reservation's start time. At the slot level, `scheduling_rule_overrides.last_bookable_sec` defines the last bookable time via an epoch timestamp. If both are set, the slot-level rule takes precedence. Regardless of feed settings, the booking system must validate booking windows upon receiving a `CreateBooking` request and respond with `SLOT_UNAVAILABLE` if the booking is outside the allowed window.\n"],null,["# Set a minimum advanced booking time\n\nSetting a minimum advanced booking time\n---------------------------------------\n\nThere are many cases in which a merchant would like specific services or\nslots to be booked a minimum time in advance. These can be set at either the\nservice level and/or at the availability level. If it is set at both, the\nsetting at the availability level will be used.\n\n### Service level definition\n\nAt the\n[service level the field is called `rules.min_advance_booking`](/actions-center/verticals/local-services/e2e/reference/feeds/services-feed#SchedulingRules-definition). This field\nshould be set to the number of seconds in advance of the reservation start\ntime that the booking needs to be made. For example if the booking always\nneeds to be made 1 hour before the start time this field would be set to\n3600 (so a booking for 3pm can be booked up until 2pm). This would apply to\nall slots for that service (unless overridden by [slot level definition](#slot-level)). \n\n### JSON\n\n```json\n\"service\": [\n {\n \"rules\": {\n \"min_advance_booking\": 3600\n }\n }\n]\n```\n\n### Slot level definition\n\nAt the\n[availability slot level the field is called\n`scheduling_rule_overrides.last_bookable_sec`](/actions-center/verticals/local-services/e2e/reference/feeds/availability-feed#Availability-definition). This\nfield is the last time (EPOCH timestamp) that the specific slot can be booked.\nThis would apply to each individual slot where this was specified. \n\n### JSON\n\n```json\n\"service_availability\": [\n {\n \"availability\": {\n \"scheduling_rule_overrides\": {\n \"last_bookable_sec\": 1468081800\n }\n }\n }\n]\n```\n| **Warning** : Implementing advance booking limit in feeds does not prevent you from having to check if the booking is within the allowed booking window and handle it [`BookingFailure`](/actions-center/verticals/local-services/e2e/reference/booking-server-api-rest/e2e-definitions/bookingfailure-definition) `SLOT_UNAVAILABLE`. There might be edge cases (such as a stall browser tab) where a [`CreateBooking`](/actions-center/verticals/local-services/e2e/reference/booking-server-api-rest/e2e-methods/createbooking-method) might be sent outside of the booking window. Upon receiving a [`CreateBooking`](/actions-center/verticals/local-services/e2e/reference/booking-server-api-rest/e2e-methods/createbooking-method), your system must confirm that the booking occurs within the allowed booking window and, if it's not, respond with `CreateBookingResponse.booking_failure = SLOT_UNAVAILABLE`."]]