Skip to main content
Famulor ships with a complete scheduling system of its own: event types with their own weekly availability, an embeddable public booking page, optional sync with a real calendar, and a signed webhook on every booking. Assistants book against it mid-call like any other provider. The external providers — Cal.com, Calendly, Acuity Scheduling, eTermin, HighLevel — are on Calendar & booking.

The native calendar

Native is Famulor’s own booking engine — built directly into the platform rather than a third-party product you sign up for, and listed alongside the other calendar providers in Providers at a glance. There’s no external account, no API key, and no OAuth consent screen: define an event type with its own weekly availability and it’s immediately ready to assign to an assistant.
Native runs on the same Calendar integrations plan feature as every other provider listed under Providers at a glance — it is not a separate paid add-on on top of Cal.com or Calendly. Your plan still has to include that feature before you can create any event type or integration, native ones included. See Plan gating.
An assigned native event type gets the same check_availability and book_appointment tools as any other integration, with no third-party API in between: slots come straight from the event type’s own availability windows, buffers, and notice rules. Native is also one of only two providers — Acuity is the other — whose assistants can find, cancel, and reschedule an existing appointment, and the only one of the two that needs no external account for it. See Assigning to an assistant for the full tool list.

Calendar connections

Native works standalone on just its own weekly-availability rules, or you can connect a real calendar so its busy times are respected and — for most connection types — confirmed bookings get written back to it. Connect Google Calendar and Outlook under Booking → Integrations; add CalDAV or an ICS feed under Booking → Event types → Calendars. Either way, pick the connection on the event type’s own Calendars field to actually use it.

The built-in booking engine

Create event types under Booking in the dashboard (or via API/MCP):
  • Name, slug, duration — the slug is unique within the workspace and becomes part of the public booking-page URL shown in the editor.
  • Weekly availability — time windows per weekday in the event type’s timezone, e.g. Mon–Fri 09:00–17:00.
  • Buffers & rules — buffer before and after each booking, minimum notice, how far ahead customers may book, and slot increment.
  • Calendar sync (optional) — link a connected calendar. Google, Outlook, and CalDAV connections have their busy times subtracted from the offered slots and get confirmed bookings pushed back as calendar events; on Google and Outlook the guest is added as an attendee, so the provider sends its own invite as well. An ICS feed only contributes busy times.
  • Host confirmation — the guest always gets a confirmation email with an ICS invite. A second copy goes to the host: the Add-to-calendar account, a custom organizer email, or the event-type owner if no calendar is selected.

Public booking page & embed

Each active event type has a tenant-branded public page at https://<your-domain>/book/{workspace}/{slug} — no login required. Its Public link & embed code button in the event type list copies a ready-made iframe snippet for your own site, together with the small script that resizes the frame to fit its content. Embed it anywhere:
Visitors pick a slot in their own timezone, enter name and email, and receive a confirmation email with an ICS calendar invitation plus a cancellation link. The configured host receives a matching New booking email. If two people choose the same slot at once, only the first booking succeeds and the other visitor is asked to choose another time.

Booking from calls

Connect the built-in booking engine to an assistant to place mid-call bookings in the same calendar and link them to the related call. You assign it exactly like an external provider — see Assigning to an assistant.

Webhooks

Give an event type a Webhook URL and Famulor notifies it whenever a booking on that event type is created, cancelled, or rescheduled. Saving the URL reveals a Webhook signing secret — shown once, so copy it before leaving the page. Each delivery is a POST of booking.created, booking.cancelled, or booking.rescheduled, signed with an HMAC-SHA256 of the raw body in X-Famulor-Signature: sha256=<hex digest>. The data object carries booking_id, the event type’s event_type_id/event_type_slug/event_type_name, invitee (name, email, phone, timezone), start_time and end_time (plus previous_start_time on a reschedule), status, source (web, call, or api), the originating call_id when the booking came from a call, and free-text notes. See Receive webhooks for a full server example, including signature verification.

Plan gating

Your plan must include Calendar integrations — the same plan feature that gates the external providers on Calendar & booking. Without it, you cannot create event types, and public booking pages do not accept new bookings.

API & MCP

Everything above is available in the public REST API and as MCP tools at https://<your-domain>/mcp. Provider integrations (Cal.com, Calendly, Acuity, eTermin, HighLevel) and assigning any calendar to an assistant are covered in Calendar & booking. GET /api/v1/bookings and list_bookings support event type, source and date filters. Use view=upcoming|unconfirmed|recurring|past|cancelled for the same booking views as the dashboard, or use an exact status filter; view and status are mutually exclusive. Cancelling a booking sends a METHOD:CANCEL ICS update, so the appointment disappears from the invitee’s calendar automatically.