Appointments
The /appointments route accepts levels 0 and 2. Its My addons menu parent is level-0, non-read-only, and availability-gated; the item additionally requires the appointments feature and add-on. A level-2 direct route therefore has different reachability from the sidebar.
Choose a business and review its calendar
In fixed source, choosing a business from the header would load its scheduled calendar events. The calendar defines Month, Week, and Day views, and event labels include the assigned professional and start/end time in the configured time format. No selection or request was made here.
In fixed source, choosing an event would mount the associated service order; that action was not performed.
At the pinned client source, choosing a business automatically issues an authenticated calendar-event request. The API filters business events to scheduled status and scopes a Business manager through business ownership; no business, event, GET, or HEAD request ran here.
Selecting an event mounts the shared Order details surface for its order ID. That can expose customer, order, payment, delivery, message, and mutation controls beyond the calendar; do not treat event selection as a read-only calendar action.
The calendar component itself defines no create, drag, resize, cancel, or reschedule handler. That absence does not neutralize Order details or prove deployed behavior. Appointment updates/deletes elsewhere can dispatch calendar-provider synchronization and professional-availability events, so those operations remain outside this overview.
Availability and empty states
The sidebar item requires both the appointments feature and addon_appointments, but its parent already limits the rendered My addons menu to eligible level-0 sessions. A direct URL does not grant the feature, record scope, or API access.
If the appointments feature is disabled, the page shows an explicit feature-not-enabled warning. If the selected business has no scheduled events, the calendar is empty. If events cannot load, the reviewed UI does not provide a dedicated error message; verify access and the selected business before escalating.
Related setup
Appointments depends on service/order configuration and assigned professionals. Re-entry requires immutable serving receipts, an isolated synthetic business with non-identifying events, and intercepted Order details, calendar-provider, websocket, and every order or appointment mutation path.
Related guides: Professionals · Create or edit a product · Add-ons overview