> For the complete documentation index, see [llms.txt](https://docs.ebrain.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ebrain.ai/calendar/booking-pages.md).

# Booking pages

Booking pages let other people schedule time with you without the back-and-forth emails. You define what can be booked (an **event type**), tell eBrain which calendars to check so you never get double-booked, and share a public link. Guests pick a slot, fill in their details, and the meeting lands on your calendar automatically.

You manage all of this under **Meetings**: open the **Bookings** tab (the sub-nav shows **Notes** and **Bookings**). The page is titled **Bookings & appointments**, with the subtitle "Let others book time with you and/or your colleagues - without the back-and-forth emails."

{% hint style="info" %}
Booking pages reuse the calendars you have already connected. If you have not connected a Google or Microsoft calendar yet, set that up first on [Your unified calendar](/calendar/overview.md).
{% endhint %}

## How a booking page is built

The Bookings page has three building blocks, top to bottom:

1. A status summary line (for example "2 active event types" / "3 upcoming bookings").
2. **Your availability** - which calendars eBrain checks for conflicts.
3. **Event Types** - the bookable meeting templates.
4. **Bookings** - the list of who has booked.

## Set up a booking page

{% stepper %}
{% step %}

## Choose which calendars to check

Under **Your availability** ("Tim will check these calendars to avoid double bookings"), click **Add calendar**. A dropdown lists calendars from your connected Google and Microsoft accounts, grouped under **Google Calendar** and **Microsoft Calendar**. Select one to add it as a conflict-check source.

Need a calendar that is not connected yet? The same dropdown offers **Connect Google Calendar** / **Connect Microsoft Calendar** to authorize a new account just for availability checking.

Each added calendar has an on/off switch (**Enabled for availability** / **Disabled**) and a **Remove** action. These calendars are read-only sources used only to block out times you are already busy.

{% hint style="warning" %}
eBrain only checks calendars you have explicitly added **and** enabled here (plus any existing eBrain bookings). A busy calendar that is not in this list will not block slots, so add every calendar that matters.
{% endhint %}
{% endstep %}

{% step %}

## Create an event type

Click **Create Event Type**. An event type is a bookable meeting template (for example "Introduction Call"). The dialog has tabs: **Details**, **Availability**, and - for multi-host kinds - **Hosts**.

On the **Details** tab, set:

* **Event name** - what guests see (for example "Introduction Call").
* **URL slug** - the link suffix, shown after a fixed **/book/** prefix. It is auto-generated from the name but editable, and must be unique within your company.
* **Description** - optional text shown to guests.
* **Event kind** - one of:
  * **One-on-One** - one host meets one guest.
  * **Group** - one host meets multiple guests (adds a **Maximum attendees** field, 2-100).
  * **Round Robin** - rotating hosts meet one guest at a time.
  * **Collective** - multiple hosts meet one guest together.
* **Duration** - 15, 30, 45, 60, 90, or 120 minutes.
* **Location** - **Google Meet**, **Microsoft Teams**, **Zoom**, **Phone**, or **In person**.
* **Destination Calendar** (One-on-One only) - which connected calendar confirmed bookings are written to; defaults to **Default (primary calendar)**.
* **Minimum booking notice** - hours of lead time required before a slot can be booked (default 24, range 1-168).
* **Maximum days ahead** - how far out guests can book (default 60, range 1-365).
* **Color** - a swatch used in the calendar and list.
* **Active** toggle - only active event types are bookable.

{% hint style="info" %}
For Google Meet and Microsoft Teams a meeting link is created automatically on each booking. Phone and In person store a location instead.
{% endhint %}
{% endstep %}

{% step %}

## Set your weekly availability

Open the **Availability** tab. You get a row per day (Monday-Sunday) with an enable/disable switch. For each enabled day, set one or more time windows using **Start time** / **End time** dropdowns in 15-minute increments. Use the **+** button to add more windows to a day, so you can split a day (for example 9:00-12:00 and 14:00-17:00).

The **Copy to weekdays** action copies a day's windows to Monday-Friday. A new schedule defaults to Monday-Friday 09:00-17:00 with the weekend off. As the helper text says, "People can only book during these times."
{% endstep %}

{% step %}

## Add hosts (Round Robin and Collective only)

If you chose **Round Robin** or **Collective**, open the **Hosts** tab to add company members as additional hosts. You are always a host. Pick a member and click **Add host**; hosts show a priority order and can be removed.

For Round Robin, priority influences which host gets assigned. For Collective, all hosts attend.
{% endstep %}

{% step %}

## Save and share your link

Save the event type - you will see "Event type created" (or "Event type updated"). On the event type card, use **Copy link** to copy the full public URL (you will see a "Link copied!" toast), or open the public page in a new tab.

The link format is **/book//** on your eBrain domain. Anyone with the link can book without logging in.
{% endstep %}
{% endstepper %}

## Managing your event types

Each event type appears as a card showing its color stripe, name, an **Active**/**Inactive** badge, a kind badge (for non-one-on-one types), duration, and location. Per card you can:

* **Copy link** to the public booking URL.
* Open the public booking page in a new tab.
* Flip an on/off switch to activate or deactivate it.
* Use the menu to **Edit** or **Delete**.

{% hint style="warning" %}
Deactivating an event type immediately makes its public page unavailable. Deleting one that has upcoming bookings cancels those bookings and notifies the guests - eBrain asks you to confirm with "Cancel bookings and delete."
{% endhint %}

If you have not created anything yet, you will see "You don't have any event types yet" / "Define what people can book with you - like a demo, Q\&A, or meeting."

## What a guest experiences

The public booking page needs no login. It shows your company name (and logo if set), the event name, duration, and description. The flow is three steps:

{% stepper %}
{% step %}

## Pick a date and time

A date picker highlights days that have availability. Choosing a day lists the open time slots. The guest's timezone is auto-detected from their browser and shown. If a day has nothing free, they see "No times available on this day" / "Choose another date."
{% endstep %}

{% step %}

## Enter details

The guest fills in **Name** (required), **Email address** (required), **Phone number (optional)**, and **Notes (optional)** ("Add a message for the host"), then confirms with **Confirm booking** / **Book appointment**.
{% endstep %}

{% step %}

## Confirmation

The guest sees "Appointment confirmed!" / "Booking confirmed!" and a note that a confirmation email has been sent. They can **Add to calendar** using a **Google Calendar** button or a **Download .ics** button (the .ics works for Outlook and Apple).
{% endstep %}
{% endstepper %}

If an event type is inactive or unknown, guests see "Event type not found" / "This event type does not exist or is no longer available."

### After a guest books

* The slot is re-checked at submit time. If it was just taken, the guest sees "The selected time slot is no longer available."
* A calendar event is created on the host's calendar (with a Google Meet or Microsoft Teams link when the location is Meet or Teams).
* Emails go out automatically: a confirmation to the guest (with a link to manage their booking) and a new-booking notification to the host. For Round Robin only the assigned host is notified; for Collective all hosts are; for One-on-One and Group the owner is.

### The guest's manage-booking page

The confirmation email links the guest to a manage page (no login - it uses a private link). There they can see the host name, date, time, duration, location, and a status badge (**Confirmed** / **Pending** / **Completed** / **Cancelled**); use **Join Meeting** for an upcoming video call; **Cancel Booking** (which notifies both the host and guest); and a "Contact the host" link. A stale link shows "Booking not found. The link may have expired or the booking was deleted."

## Your bookings list

Back under **Meetings → Bookings**, the **Bookings** section lists everyone who has booked. You can:

* **Filter** by status: **All**, **Confirmed**, **Pending**, **Completed**, **Cancelled**.
* **Sort** by **Upcoming first** or **Oldest first**.
* See each row's event type (with color), status badge, guest name and email, date (with **Today**/**Tomorrow** shortcuts) and time, location, and any guest notes.
* For upcoming confirmed bookings, use the **Join** button (video link) or the cancel (X) action, which asks you to confirm.

When the list is empty you will see "No bookings yet." / "Once you share your booking link, upcoming meetings will appear here." (or "No bookings match your filters." when a filter hides everything).

## How slots are calculated

Knowing how eBrain picks slots helps you set realistic availability:

* Slots are generated **back-to-back** within your weekly availability windows, sized to the event duration - there is no buffer between slots.
* A slot is only offered if it does not conflict with existing eBrain bookings or busy events on the calendars you enabled under **Your availability**.
* Slots respect **Minimum booking notice** (nothing too soon) and **Maximum days ahead** (nothing too far out).
* For **Group** events, each slot shows remaining capacity up to the maximum attendees. For **Round Robin**, a slot is offered if at least one host is free, and a host is assigned at booking time. For **Collective**, a slot is offered only when all hosts are free.

## Limits at a glance

| Setting                 | Range                           | Default  |
| ----------------------- | ------------------------------- | -------- |
| Minimum booking notice  | 1-168 hours                     | 24 hours |
| Maximum days ahead      | 1-365 days                      | 60 days  |
| Group maximum attendees | 2-100                           | -        |
| Event duration          | 15, 30, 45, 60, 90, 120 minutes | -        |

The URL slug must be unique within your company.

## Where to go next

<table data-view="cards"><thead><tr><th>Title</th><th data-card-target data-type="content-ref">Link</th></tr></thead><tbody><tr><td>Connect Google or Microsoft calendars</td><td><a href="/pages/UHre2uTyjhGKWX8xkKuE">/pages/UHre2uTyjhGKWX8xkKuE</a></td></tr><tr><td>Add or reconnect accounts</td><td><a href="/pages/FIBJv6fZUgUNT5RkB5cQ">/pages/FIBJv6fZUgUNT5RkB5cQ</a></td></tr><tr><td>Read meeting notes from Donna</td><td><a href="/pages/pqaPK0l4YvDzhUiw76GL">/pages/pqaPK0l4YvDzhUiw76GL</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ebrain.ai/calendar/booking-pages.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
