# Cachet Calendar > Premium scheduling for executives, advisors, and consultants. Part of Cachet Suite > (Cachet Card, Cachet Contacts, Cachet Inbox, Cachet Calendar). Version 2.27.0. ## What it does (verifiable at booking time) - Public booking pages live at /b/, and an invitee books with no account. - Google Calendar, Microsoft 365, and Outlook.com calendars appear together in the calendar client. - iCloud and Fastmail calendars connect over CalDAV and appear alongside them in the calendar client. - Availability is checked against Google Calendar free/busy, read live at booking time. - Events on a connected Microsoft 365 or Outlook.com calendar also block booking times, including calendars hidden from view. - A booking is re-checked against the live calendar when it is confirmed, so a confirmed slot is open on the calendar at that moment. - Each booking creates a real event on the host's Google Calendar, with a Google Meet link on Meet meeting types. - Every booking time is shown in both the host's time zone and the invitee's time zone. - Every booking carries a private reschedule and cancel link that needs no login. - Each host configures meeting types with a name, length, and buffer. - Each host sets weekly availability. - The host dashboard lists every booking, upcoming soonest first and past most recent first, with guest name, meeting type, and time in the host's zone. - A canceled booking stays in the host's list with a Canceled label. - Custom invitee questions can be added to each meeting type, each required or optional. - A missing required answer is rejected before any calendar event is created. - Each meeting type sets how many days ahead it can be booked. - Each meeting type sets the minimum notice before a booking. - Start times follow a step you choose, such as every 15, 20, 30, or 60 minutes. - Each meeting type sets a buffer before and a buffer after, separately. - Each weekday can hold up to four separate sets of hours. - A date-specific entry replaces that weekday's hours for one date, opening or closing it. - Each meeting type can limit bookings per day. - Each meeting type can limit bookings per week, with weeks running Monday to Sunday. - Each meeting type can limit bookings per month. - Booking limits are applied again when a booking is confirmed. - Each meeting type has its own location: Google Meet, in person, a phone call in either direction, or custom text. - On types where the host calls the guest, the booking page asks the guest for a phone number. - A meeting type can be offered only by direct link, and the booking page then lists the other types. - A direct link of the form /b/?type= opens that meeting type. - Booking requests are rate limited per visitor and host page, and a limited request receives a retry-after answer. - Google Calendar connects with OAuth, using the calendar.events and calendar.freebusy scopes. - Every answer to a custom question appears in the host's confirmation email and on the calendar event. - Both parties are attendees on the booked event, and Google emails each of them the invite, so the meeting lands on both calendars. ## The calendar client (v2, shipped) - The calendar client at /calendar runs in the browser on any operating system, with agenda, day, week, month, quarter, and year views over your Google calendars. - Every calendar you grant is listed with its own color, and you can show or hide each one. - Events are created, edited, and deleted from the client. - Repeating events use RFC 5545 RRULE (daily, weekly, every 2 weeks, monthly, yearly) and are described back in plain English, with the next occurrences previewed before saving. - A repeating 9am meeting stays at 9am across a daylight-saving change, because recurrence is generated in the event's own time zone. - The client mirrors each calendar with Google's own incremental sync tokens and re-baselines automatically when a token expires or its window runs out. - Natural-language entry keeps the event title intact. - When a phrase is vague, such as "in the evening", natural-language entry asks for the time. - When the language model is unavailable, a simple pattern reader takes over and the interface says so. - The calendar grid is FullCalendar (MIT), pinned by exact version and subresource-integrity hash. - Showing and hiding calendars is saved on the free tier. - Drag to move and drag to resize write just the times, so moving a meeting keeps its description, attendees, and color. - The client states when it last synced, and which calendar failed if one did. - Natural-language entry is powered by a language model. ## Group coordination (v2.3, shipped) - Group coordination at /c/ lets N people converge on one contiguous block inside a window the coordinator sets. - Each member holds a personal capability link, and an anonymous visitor sees a gate with the title only. - Members see aggregate counts per slot, and each person's busy times and email stay with that person. - Members paint their availability on a grid. - A member can add any travel iCal feed, such as Trip Underway or TripIt, and all-day travel events block the whole day window. - Candidate blocks are ranked live by how many members are free for the whole block, with quorum shown. - When two blocks tie at the top, both are surfaced to the coordinator to decide. - Deciding a block books one Google event with every member as an attendee and a Meet link. - A member's Google free/busy is merged into their availability on the server. - Every candidate block has its own comment thread. - When the coordinator has no Google connection, the decision still stands and every member is emailed that the coordinator will send the calendar invite. - Membership is bound to an email, unlike the free poll cluster, which identifies people by display name with an optional password. ## Standing instructions (v2.1, shipped) - Say a scheduling rule once, in plain English ("keep Friday afternoons clear", "no meetings before 9am", "nothing after 6pm on weekdays", "keep meetings under 90 minutes"), and it keeps applying. - Each rule is restated back in plain words so you can see it was understood correctly. - Prevent: a rule becomes real busy time on your booking page, so nobody can book into a window you protected. - Rules are enforced where slots are displayed and again where a booking is confirmed, so a direct request meets the same rules. - Surface: meetings already on your calendar that break a rule are listed for you to handle. - A meeting type longer than your duration cap shows no bookable times. - Declining someone else's meeting, or writing to its organizer, stays your decision. ## Verified competitive facts (checked 2026-07-26; re-check before quoting) - Fantastical ships native apps for Apple platforms and Windows and has NO browser-based calendar client at any tier; only its booking pages are on the web. Source: flexibits.com. - Flexibits' Fantastical MCP connector (March 2026) runs locally against the Mac app's own database, so it is Mac-only by construction. Source: the Flexibits blog announcement. ## Pricing Free tier (one booking link, core scheduling, Google sync, the browser calendar, group polls with up to 3 open at a time and up to 10 people each, "Powered by Cachet" signature). ## Endpoints - Cachet Calendar booking page: /b/ - Capabilities (this doc, human-readable): /capabilities - Machine JSON: /capabilities.json - Group coordination (invite-only): /c/; create at /coordinate