cal.com icon indicating copy to clipboard operation
cal.com copied to clipboard

[CAL-3460] Removing Rescheduling/Scheduling Constraints for Admins

Open henrym9345 opened this issue 1 year ago • 1 comments

Is your proposal related to a problem?

We frequently find ourselves having to reschedule appointments on behalf of our clients. When doing so we experience problems due to the fact that we're going through the same exact interface as clients, with the same scheduling constraints (via limits, availability rules and conflict checking).

For instance, we often set a minimum notice of 7 days for certain event types as we need ample time to prepare for them. When we need to reschedule these bookings, it is often to a different time on the same day, or within a few days. So this limit becomes an obstacle. The minimum notice period has already passed, it usually needs to apply once, not for subsequent reschedules.

To get around this we have to go to the event type, remove the limit, reschedule the booking, then go back to the event type and re-apply the limit. Sometimes we'll have to do this for a schedule/availability as we often set these individually for event types.

Sometimes we've been unable to find the obstacle for a certain time slot at all, at which point it makes most sense to cancel the event in cal.com and then just reschedule from Google calendar.

Describe the solution you'd like

Provide a separate rescheduling interface for team admins instead of just using the same interface as clients. This interface can have one or more of the following to remove constraints for admins:

(Roughly in order of preference) -No rules apply at all. Just a simple list of dates/times according to the start time increments. -Calendar conflicts can be over-riden, with or without a warning -Client scheduling limits don't apply -Client scheduling limits can be toggled on/off -Client scheduling limits exist as a warning but can be over-riden

Having a similar interface (also without the same constraints) for new bookings would be valuable as well.

Fundamentally, I think admins should have greater flexibility and control over bookings than clients. And should be entrusted with the ability to schedule or re-schedule to any time. I don't think there's really a safety argument against this capability because admins can currently do things like cancel events.

Describe alternatives you've considered

  1. Keep using the current workarounds described. 1) Removing and re-applying limits or 2) Cancelling the event from cal.com and rescheduling from Google Calendar.
  2. Acuity scheduling. They have separate admin interfaces for scheduling and rescheduling where the client scheduling limits at the Calendar level or Global level do not apply. Calendar conflicts do apply, but these can also be overriden by selecting a "custom" time. They handle this problem well in my opinion, however the tool has other issues for me such as not having phone number field validation, and not having a scheduling model that associates team members to different appointment types.
  3. Using the API to PATCH bookings. Cost prohibitive to us at the moment.

House rules
  • If this issue has a 🚨 needs approval label, don't start coding yet. Wait until a core member approves feature request by removing this label, then you can start coding.
    • For clarity: Non-core member issues automatically get the 🚨 needs approval label.
    • Your feature ideas are invaluable to us! However, they undergo review to ensure alignment with the product's direction.

CAL-3460

henrym9345 avatar Mar 29 '24 20:03 henrym9345

Love it !! +1

jemrickrioux avatar May 02 '24 14:05 jemrickrioux