> For the complete documentation index, see [llms.txt](https://help.ringtonic.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.ringtonic.app/guides/appointments.md).

# Appointments

Appointments is Ring Tonic's built-in booking calendar. Book and manage appointments for your callers and contacts in one place — with two-way Google Calendar sync, automatic SMS and email confirmations and reminders, and full campaign attribution back to the call that created the booking.

Every appointment your **AI Agent** books during a call **and** every one your team books by hand shows up here together, so nothing lives in a separate tool.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2Fm6XWuf6GxKSshSMVbC3W%2FXnapper-2026-08-19-10.04.41.png?alt=media&amp;token=317e6ce4-e954-4f79-aac1-43f43cfc3e8a" alt=""><figcaption><p>The Appointments hub — calendar view with booked appointments across the week</p></figcaption></figure>

{% hint style="info" %}
**Where to find it.** Open **Appointments** in the left sidebar (near Contacts). If you don't see it, ask your workspace owner or an admin to grant your role appointment access — see [Who can do what](#who-can-do-what).
{% endhint %}

{% hint style="success" %}
**Works with or without Google Calendar.** Connect Google Calendar and every appointment syncs both ways. Don't connect it, and appointments still work perfectly — they just stay inside Ring Tonic.
{% endhint %}

***

### Before You Start

Nothing is required to start booking — but two optional setups unlock more:

{% stepper %}
{% step %}

#### Google Calendar (optional, for two-way sync)

Connect it under **Settings > Integrations > Google Calendar** so appointments appear on your real calendar and stay in step when you reschedule or cancel. See [Google Calendar sync](#google-calendar-sync) below and the [AI Call Answering](/guides/ai-call-answering.md#appointment-booking) guide.
{% endstep %}

{% step %}

#### An SMS-capable tracking number (optional, for text confirmations)

To text customers a confirmation or reminder, your workspace needs a tracking number that can send SMS. If none of your numbers can, the **Send SMS** switch on the booking form is turned off automatically. See [Phone Numbers](/guides/phone-numbers.md).
{% endstep %}
{% endstepper %}

***

### The Appointments Hub

The hub has two views you can switch between with the **Calendar** / **List** tabs.

#### Calendar view

A month, week, or day calendar of your appointments, color-coded by status.

* **Click any empty slot** to start a booking already filled in with that date and time.
* **Click an appointment** to open its details.
* **Drag an appointment** to a new time to reschedule it (if you have edit access). Completed, no-show, and cancelled appointments can't be dragged.

Times are always shown in your **workspace timezone**, so make sure that's set correctly under **Settings > Workspaces**.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FERKDpTfokctqBh8Boa0p%2FCleanShot%202026-08-19%20at%2009.43.10%402x.png?alt=media&amp;token=ba3ec2be-1793-4283-9425-b26bde2fc128" alt=""><figcaption><p>Calendar view — click a slot to book, click an appointment to manage it, drag to reschedule</p></figcaption></figure>

#### List view

A searchable, filterable table of every appointment. Filter by **status**, by **upcoming only**, or by **campaign**, and see the contact, title, source, and sync status at a glance.

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FCD39Q2TlYj4faUwSCbug%2FXnapper-2026-08-19-09.44.10.png?alt=media&amp;token=ea4c2b1b-5f91-4c72-acaf-e5ef4c71fb69" alt=""><figcaption><p>List view — filter appointments by status, upcoming, and campaign</p></figcaption></figure>

***

### Booking an Appointment

{% stepper %}
{% step %}

#### Open the booking form

Click **Book appointment** at the top of the hub, or click an empty slot on the calendar to prefill the date and time.
{% endstep %}

{% step %}

#### Choose the contact

Search your contacts and pick one, or choose **Create new** and enter a **name**, **phone number**, and optional **email**. A new contact is added to your CRM automatically.
{% endstep %}

{% step %}

#### Set the time and length

Pick the **date and time** and a **duration**. If Google Calendar is connected and the slot clashes with something already on your calendar, you'll get a warning and can book anyway.
{% endstep %}

{% step %}

#### Add the details

Enter a **title**, and optionally **notes** and a **location**. When Google Calendar is connected, you can also choose **which calendar** the appointment lands on.
{% endstep %}

{% step %}

#### Choose confirmations and reminders

* **Send SMS** — text the customer a confirmation (only available when you have an SMS-capable number and the contact has a phone number).
* **Send email** — email the customer a confirmation (only available when the contact has an email).
* **Reminders** — send automatic reminders before the appointment (24 hours and 1 hour before by default).
  {% endstep %}

{% step %}

#### Book it

Click **Book appointment**. It appears on the calendar immediately, syncs to Google Calendar if connected, and any confirmations you enabled go out.
{% endstep %}
{% endstepper %}

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FQ1cRCluhtNBKfCjaZVcT%2FXnapper-2026-08-19-09.44.37.png?alt=media&amp;token=07fcd2f1-c5fd-46f6-98d3-2ce1364d6ba8" alt="" width="375"><figcaption><p>The booking form — contact, time, details, and confirmation options</p></figcaption></figure>

{% hint style="info" %}
**Book straight from a call or contact.** On a call's detail panel and on a contact's page you'll find a **Book appointment** button that opens this same form with the caller and call already filled in — so the booking is attributed to the right call. See [Contacts](/guides/contacts.md).
{% endhint %}

***

### Managing an Appointment

Click any appointment to open its detail panel. It shows when it is, who it's with, its status, notes and location, how it was booked (your AI agent on a call, or a team member), the linked call and campaign, and its Google Calendar sync state.

#### Available actions

| Action             | What it does                                                                                                                                 |
| ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
| **Reschedule**     | Change the time or details. Syncs the change to Google Calendar and can re-send a confirmation.                                              |
| **Mark completed** | Record that the appointment happened.                                                                                                        |
| **Mark no-show**   | Record that the customer didn't show.                                                                                                        |
| **Cancel**         | Cancel the appointment (with an optional reason). Removes the event from Google Calendar, and you can choose whether to notify the customer. |

{% hint style="info" %}
**Changed your mind?** A cancelled appointment can be reverted to **Scheduled** — this puts the event back on your Google Calendar automatically.
{% endhint %}

<figure><img src="https://2905537093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXSbXRgC7knjpaMCHwuKc%2Fuploads%2FL8r8c2uK795rfFYGloWF%2FXnapper-2026-08-19-09.45.53.png?alt=media&amp;token=55ec34bd-64af-4e58-8607-f41e5e815ab1" alt="" width="375"><figcaption><p>Appointment details with reschedule, complete, no-show, and cancel actions</p></figcaption></figure>

#### Statuses

| Status        | Meaning                         |
| ------------- | ------------------------------- |
| **Scheduled** | Booked and upcoming.            |
| **Completed** | The appointment took place.     |
| **No-show**   | The customer didn't attend.     |
| **Cancelled** | The appointment was called off. |

***

### Google Calendar Sync

When Google Calendar is connected, Ring Tonic keeps your calendar in step automatically:

* **Booking** creates the event on your calendar.
* **Rescheduling** moves it and updates its details.
* **Cancelling** removes it, and **un-cancelling** puts it back.

Each appointment shows its sync state:

* ✅ **Synced** — the event is on your Google Calendar and up to date.
* ⚪ **Not linked** — a standalone appointment (Google Calendar isn't connected, or wasn't when it was booked).
* ⚠️ **Sync failed** — Ring Tonic couldn't reach Google Calendar. Open the appointment and click **Retry sync** once the problem is resolved (for example, after reconnecting Google Calendar in Settings).

{% hint style="warning" %}
**Connecting Google Calendar later doesn't back-fill.** Appointments booked while Google Calendar was disconnected stay standalone. Only appointments booked (or changed) after connecting sync to your calendar.
{% endhint %}

***

### Customer Confirmations & Reminders

When you enable them on the booking form, Ring Tonic sends the customer:

* **A confirmation** right after booking (and an updated one when you reschedule).
* **Reminders** before the appointment — 24 hours and 1 hour ahead by default.
* **A cancellation notice** if you cancel and choose to notify them.

Messages go out by **SMS**, **email**, or both, depending on what you enabled and what contact details you have.

{% hint style="info" %}
**SMS needs a text-capable number.** Text confirmations and reminders send from one of your tracking numbers. If none of your numbers can send SMS, the **Send SMS** option is unavailable and only email is offered. See [Phone Numbers](/guides/phone-numbers.md).
{% endhint %}

***

### Attribution

Every appointment is tied back to the call and campaign that produced it, so your reporting stays complete:

* **Source** — whether the appointment was booked by your **AI agent** or by a **team member**.
* **Campaign** — the campaign of the call the appointment came from (blank for a walk-in booking with no linked call).
* **Conversion** — a booking is recorded as a conversion, and moves the contact to the **Appointment Booked** stage in your [pipeline](/guides/contacts.md).

***

### Who Can Do What

Appointment access is controlled per role under **Settings > Team**:

| Capability                   | Who has it by default                   |
| ---------------------------- | --------------------------------------- |
| **View appointments**        | Owner, admins, members, agents, clients |
| **Book & edit appointments** | Owner, admins, agents, clients          |
| **Delete appointments**      | Owner, admins                           |

If a teammate can't see or book appointments, an owner or admin can adjust their role's permissions. See [Team Management](/guides/team-management.md).

***

### Tips

* **Set your workspace timezone first.** Appointment times are read and shown in your workspace timezone — see **Settings > Workspaces**.
* **Connect Google Calendar** if your team already lives in it, so bookings show up alongside everything else you schedule.
* **Turn on reminders** to cut no-shows — the default 24-hour and 1-hour texts and emails need no extra work.
* **Book from the call or contact** whenever you can, so the appointment is attributed to the right campaign automatically.

{% hint style="info" %}
**Booking from your own tools.** Appointments can also be booked, rescheduled, cancelled, and marked completed or no-show over the API — the same booking engine, from a scheduler, CRM, or script. See the **Booking Appointments** section of the [API](/guides/api.md) guide.
{% endhint %}

{% content-ref url="/pages/zPRsePZujXkPkJKoj7jR" %}
[AI Call Answering](/guides/ai-call-answering.md)
{% endcontent-ref %}

{% content-ref url="/pages/H0MdkvGYtJMgVjODUrtN" %}
[Contacts](/guides/contacts.md)
{% endcontent-ref %}

{% content-ref url="/pages/r9QQhlPk6R3F0zchaoS1" %}
[API](/guides/api.md)
{% endcontent-ref %}
