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

# Scheduling Agent

The Scheduling Agent monitors your clients' financial positions and handles meeting bookings end-to-end — inside the client chat. You define the triggers (LVR thresholds, equity targets, goal milestones) and the lead time, and the bot watches continuously. When a client is approaching a key date or crosses a threshold, it initiates the scheduling conversation, checks your Google Calendar, negotiates a time, and creates a confirmed event with a Google Meet link. No booking forms, no back-and-forth emails — just a natural chat exchange that gets a meeting on the calendar.

## **How it Works**

1. **Monitors the readiness triggers you set** — LVR thresholds, equity targets, goal milestones — and starts the scheduling conversation when a client approaches a key date or crosses a threshold
2. **Recognises scheduling intent from the conversation** — whether the client asks to meet, suggests a specific time, confirms a slot, or decides not to meet
3. **Checks your Google Calendar for availability** — finds open slots, detects conflicts, and proposes times that work
4. **Handles the back-and-forth conversationally** — if the first option doesn't suit, it offers alternatives until a time is agreed or the client decides not to meet
5. **Books the meeting and sends invitations** — creates a Google Calendar event with a Google Meet link and delivers calendar invites to both you and the client
6. **Connects directly to AI Reviews** — when a review recommends a meeting, the Book Meeting button opens the Scheduling Agent pre-loaded with context from the review

The entire flow happens within the client chat. The client sees a natural conversation — not a scheduling widget or external link.

![Scheduling Agent conversation in the client chat showing the scheduling flow](https://1103942972-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIVoALSAigc466POg2rP1%2Fuploads%2Fgit-blob-404fcae4d8c3648198d119d7b9e3345a2ab09ef5%2FAI_Assistant_Meeting_Scheduler.png?alt=media)

***

## How It Works with Google Calendar

The Scheduling Agent requires a connected Google Calendar to function.

Connect it from **Settings → Integrations → Google Calendar**.

{% hint style="info" %}
If Google Calendar isn't connected, the Scheduling Agent can still recognise scheduling intent and notify you that a client wants to meet — but it can't check availability or create events. See [Connect Your Integrations](https://github.com/scaleapp-au/scaleconnect-docs/blob/main/scaleai/connect-your-integrations.md) for setup instructions.
{% endhint %}

![Settings > Integrations showing Google Calendar card with Connected badge](https://1103942972-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIVoALSAigc466POg2rP1%2Fuploads%2Fgit-blob-9bfb971cda1bf5bb244908cd1b439c837015f90c%2FSettings_Google_Calendar_Integrations.png?alt=media)

Once connected, the agent has the following capabilities:

<table><thead><tr><th width="205.66796875">Capability</th><th>How it works</th></tr></thead><tbody><tr><td><strong>Read availability</strong></td><td>Checks your calendar for free/busy status across the relevant time range</td></tr><tr><td><strong>Check conflicts</strong></td><td>Detects existing meetings, blocked time, and out-of-office periods</td></tr><tr><td><strong>Create events</strong></td><td>Books a new event on your Google Calendar with title, description, and attendees</td></tr><tr><td><strong>Add Meet links</strong></td><td>Automatically generates a Google Meet video conferencing link for each event</td></tr><tr><td><strong>Two-way sync</strong></td><td>Changes made in Google Calendar (cancellations, reschedules) are reflected in ScaleConnect</td></tr></tbody></table>

### Events panel

Your upcoming schedule is visible within ScaleConnect through the Events panel. This shows today's events and your upcoming calendar, so you can see at a glance what's booked without leaving the platform. Access it from the **Calendar icon** in the top navigation bar.

***

## Scheduling Flows

The Scheduling Agent handles several conversation patterns, with each flow adapting to how the client initiates the request in order to handle as many use cases as necessary.

<details>

<summary>Client requests a meeting</summary>

The client sends a message like "Can we book a time to chat?" or "I'd like to schedule a meeting." The agent:

1. Acknowledges the request
2. Asks for a preferred time or date range
3. Checks your calendar for availability
4. Proposes up to three available slots

</details>

<details>

<summary>Client suggests a specific time</summary>

The client says something like "Are you free Tuesday at 2pm?" The agent:

1. Checks your calendar for that specific slot
2. If available — confirms and asks the client to approve the booking
3. If unavailable — explains the conflict and suggests three alternative times nearby

</details>

<details>

<summary>Client confirms a proposed time</summary>

Once the client selects a time from the options presented:

1. The agent creates a Google Calendar event
2. Adds a Google Meet video link
3. Sends a calendar invite to both parties
4. Confirms the booking in the chat with a summary (date, time, duration, Meet link)

</details>

<details>

<summary>Client declines all options</summary>

If the client doesn't like any of the proposed times, the agent asks for a new preferred window and runs the availability check again. If the client decides not to meet, the agent responds politely and the conversation continues normally.

</details>

<details>

<summary>Timezone handling</summary>

All times default to **Australia/Sydney (AEST/AEDT)**.

The agent displays times in this timezone unless the client's profile specifies a different location.

When proposing times, the agent uses natural language — "Tuesday 14 March at 2:00 PM" — rather than UTC offsets.

</details>

***

## Configuration

Scheduling Agent settings can be configured globally and per client.

### Global settings

1. Open **Settings** from the sidebar.
2. Navigate to **Automations**.
3. Under **Scheduling Agent**, configure the default behaviour:

<table><thead><tr><th width="169.79296875">Setting</th><th width="244.80859375">Options</th><th>What it controls</th></tr></thead><tbody><tr><td><strong>Action</strong></td><td>Auto-book / Notify me first</td><td>Whether the agent books automatically or asks you first</td></tr><tr><td><strong>Lead time</strong></td><td>1–12 months</td><td>How far ahead of a key date to trigger scheduling</td></tr><tr><td><strong>Meeting trigger</strong></td><td>LVR / Equity / Goals</td><td>The metric that determines when to suggest a meeting</td></tr><tr><td><strong>Target value</strong></td><td>Any percentage</td><td>The threshold that fires the trigger (e.g. LVR below 80%)</td></tr><tr><td><strong>Invite message</strong></td><td>Free text</td><td>The message included with the calendar invite</td></tr></tbody></table>

**Auto-book** means the agent handles the full scheduling flow with the client autonomously. **Notify me first** means the agent tells you a client is ready for a meeting and waits for you to initiate the scheduling.

![Settings > Automations showing Scheduling Agent configuration](https://1103942972-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIVoALSAigc466POg2rP1%2Fuploads%2Fgit-blob-da60510de7f27fc8e4cf73a44d628fb07725c19d%2FSettings_AI_Automations.png?alt=media)

### Per-client settings

Open the client in the Client Manager, navigate to the AI Assistant tab, and click the **Scheduling Agent Settings** icon. Per-client settings override your global defaults for that individual client.

You can also configure scheduling preferences during the **Add Client** flow — the AI Automations step includes scheduling agent settings alongside review settings.

![Scheduling Agent Settings modal for a specific client showing per-client overrides](https://1103942972-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIVoALSAigc466POg2rP1%2Fuploads%2Fgit-blob-488cc12d60b7e2b3d0986c7bd9c5a1d8bb7d5cde%2FAI_Assistant_Scheduling_Bot_Settings.png?alt=media)

{% hint style="info" %}
The lead time setting is particularly useful for fixed rate expiry. Set it to 3 months so the agent starts the conversation before the client's rate rolls off — giving you time to prepare refinance options.
{% endhint %}

***

## Relationship to AI Reviews

The Scheduling Agent and [AI Reviews](/scaleconnect-docs/scaleai/ai-assistant/ai-reviews.md) work together as a natural chain. Here's how they connect:

1. **Review generates a recommendation** — An AI Review identifies that a client should discuss refinancing, review their equity position, or reassess their strategy.
2. **Book Meeting button** — The review card in your Tasks queue includes a **Book Meeting** button alongside Send and Skip.
3. **Scheduling flow begins** — Clicking Book Meeting opens the Scheduling Agent within the client's chat, pre-loaded with context from the review.
4. **Agent handles negotiation** — The Scheduling Agent proposes times, the client confirms, and the meeting is booked.
5. **Meeting happens** — The meeting is captured via [transcription](/scaleconnect-docs/scaleai/ai-assistant/ai-note-taker.md), and the notes feed back into the next review cycle.

This creates a closed loop: **Review → Recommendation → Meeting → Transcript → Next Review**.

The Scheduling Agent can also be triggered independently of reviews through [AI Workflows](/scaleconnect-docs/scaleai/broker-brain/ai-workflows.md). For example, when a client's LVR crosses below 80%, the Scheduling Agent can automatically initiate the meeting scheduling flow.

***

<details>

<summary>Does the client need a Google account to accept the meeting?</summary>

No. The calendar invite is sent as a standard .ics invitation. The client can accept it from any email client or calendar app. The Google Meet link works in any browser — no Google account required to join.

</details>

<details>

<summary>Can I reschedule or cancel a meeting booked by the Scheduling Agent?</summary>

Yes. Since the event is created on your Google Calendar, you can reschedule or cancel it directly from Google Calendar, and the two-way sync will update ScaleConnect. You can also ask the Scheduling Agent to reschedule within the client chat.

</details>

<details>

<summary>What if I don't use Google Calendar?</summary>

The Scheduling Agent currently requires Google Calendar. Support for other calendar providers (Outlook, Apple Calendar) is on the roadmap. In the meantime, you can still use the agent in Notify mode — it will alert you when a client is ready for a meeting, and you handle the booking manually.

</details>

<details>

<summary>Can the Scheduling Agent book meetings with multiple attendees?</summary>

Currently, the agent schedules one-on-one meetings between you and the client. For team meetings or multi-party sessions, book manually through Google Calendar after the agent identifies the need.

</details>


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.scaleconnect.com.au/scaleconnect-docs/scaleai/ai-assistant/calendar-agent.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
