> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vapify.agency/llms.txt
> Use this file to discover all available pages before exploring further.

# Calendar

> Connect Google Calendar, define availability, publish event types, and manage bookings per client.

## Overview

Each sub account gets its own scheduling workspace: connect an external calendar, define working hours, publish bookable event types, manage bookings, and create API keys for automated or AI-driven scheduling.

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration1.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=f7e9948c1a9653e1b1fc5dc834eebdbe" alt="Calendar week view with status legend and block time action" width="1366" height="622" data-path="images/calendar_integration1.png" />

<Note>
  Calendar settings are per sub account. Use the subaccount selector in the top-right of the Calendar page before making changes.
</Note>

## The six tabs

| Tab              | What it's for                                                            |
| ---------------- | ------------------------------------------------------------------------ |
| **Calendar**     | Month/week/day view of bookings, plus quick time-blocking                |
| **Bookings**     | Filter and review scheduled appointments by time, status, and event type |
| **Event Types**  | The bookable services your client offers, with shareable booking links   |
| **Availability** | Working hours, availability profiles, and blocked time                   |
| **Connections**  | Connect a provider calendar to avoid double bookings                     |
| **Settings**     | Timezone, duration defaults, notice windows, location, and notifications |
| **API Keys**     | Scoped keys for AI agents, workflows, and third-party integrations       |

## Recommended setup order

1. Connect a calendar provider (**Connections** tab)
2. Configure availability and blocked time
3. Create event types
4. Review booking settings
5. Share booking links or create API keys

## Connecting a provider

Open **Calendar → Connections**, click **New Calendar Connection**, and choose a provider.

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration5.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=57911a500f611570fa6b9058c1e5a086" alt="Calendar connections page" width="1366" height="623" data-path="images/calendar_integration5.png" />

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration6.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=bf164e5de73daa64d2f3f238f3ba840e" alt="New calendar connection modal showing Google Calendar and Outlook options" width="1366" height="620" data-path="images/calendar_integration6.png" />

* **Google Calendar**: available now
* **Outlook Calendar**: shown as Coming Soon

<Tip>
  Connect the calendar before publishing booking links, so Vapify can account for existing events and help prevent double booking.
</Tip>

## Setting availability

The **Availability** tab sets working hours, additional availability profiles, and blocked time for breaks or time off.

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration4.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=43997809a09d0cf0a8619b4771ee889c" alt="Availability profiles with working hours and blocked time" width="1366" height="623" data-path="images/calendar_integration4.png" />

## Creating event types

Each event type defines a booking name, duration, buffer time, location (e.g., a Google Meet link or physical address), and which availability profile to use. Use **Copy URL** to share the booking link once live.

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration3.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=6aef0472036fd44f17efe41b97161b7b" alt="Event types list with active event card and copy URL action" width="1366" height="622" data-path="images/calendar_integration3.png" />

<Note>
  Create a separate event type per appointment purpose rather than reusing one link for everything. It keeps duration, buffers, and reporting clean.
</Note>

## Reviewing bookings and settings

Use the **Bookings** tab to filter by date, status, or event type, and the **Settings** tab to set timezone, duration defaults, and notice windows.

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration2.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=225b74cd51df274e65941da5b909e708" alt="Bookings view with filters and list/calendar toggle" width="1366" height="621" data-path="images/calendar_integration2.png" />

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration7.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=b809314174c3554195371a13731bb60d" alt="Calendar settings with timezone, duration, notices, and notifications" width="1366" height="623" data-path="images/calendar_integration7.png" />

## Creating a calendar API key

From the **API Keys** tab, click **Create API Key** and choose from these permissions: **Check availability**, **Book appointments**, **Get bookings**, **Cancel bookings**.

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration8.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=c220f6f84e3b176574b3edd76009bde7" alt="Calendar API keys page" width="1366" height="621" data-path="images/calendar_integration8.png" />

<img src="https://mintcdn.com/vapifybykanzucode/KLTgU2C4onvC6VDl/images/calendar_integration9.png?fit=max&auto=format&n=KLTgU2C4onvC6VDl&q=85&s=9500bc4e8af766fd4b4f48b1969c40e3" alt="Create Calendar API Key modal with scoped permissions" width="1366" height="621" data-path="images/calendar_integration9.png" />

<Warning>
  The plain-text key is shown only once at creation. Store it securely before closing the modal.
</Warning>

The plain-text key is used by AI agents, workflows, or external systems to check availability and manage bookings.

## Related Articles

* [Understanding Sub Accounts](/running-your-agency/understanding-sub-accounts): how calendar settings stay isolated per client
