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

# Connect Zoom

> Connect a Zoom account so bookings on Zoom services get a meeting and join link created automatically.

Connect Zoom once and DMLY handles the meetings for you. Any service you set to the
**Zoom (auto link)** location gets a real Zoom meeting and join link every time someone books —
created when the booking is made, moved when it is rescheduled, and deleted when it is
cancelled. You never open Zoom to set one up.

## Connect your Zoom account

<Steps>
  <Step title="Open the Zoom tile">
    Go to **Integrations** and open the **Productivity** tab, then select **Zoom**.
  </Step>

  <Step title="Sign in with Zoom">
    Under **Zoom account**, select **Sign in with Zoom** and approve the connection in the Zoom
    window. You are signing in to your own Zoom account — the meetings DMLY creates are hosted
    there and appear in your Zoom account like any other.
  </Step>

  <Step title="Check the tile reads Connected">
    Back on **Integrations**, the Zoom tile shows **Connected**. That is all the setup Zoom
    itself needs.
  </Step>
</Steps>

<Note>
  Connecting Zoom changes nothing on its own. Nothing is auto-linked until a service uses the
  **Zoom (auto link)** location — that is the switch that does the work.
</Note>

## Turn on auto-linking for a service

Each service carries its own location. Open the service in **Offerings → Services** and set its
location to **Zoom (auto link)**. From then on, every booking against that service gets its own
Zoom meeting and join link.

Services set to any other location are untouched, so you can mix online and in-person services
in the same workspace. See [Offerings](/offerings/overview) for the rest of the service
settings.

## What happens to the meeting

Once a service is set to **Zoom (auto link)**, DMLY keeps the Zoom meeting in step with the
booking for you:

| When                       | What DMLY does                                                    |
| -------------------------- | ----------------------------------------------------------------- |
| A client books             | Creates a Zoom meeting and attaches its join link to the booking. |
| The booking is rescheduled | Moves the same Zoom meeting to the new time.                      |
| The booking is cancelled   | Deletes the Zoom meeting.                                         |

A booking only ever gets one meeting — if one already exists, DMLY leaves it alone rather than
creating a second. If a meeting is deleted in Zoom directly, the next reschedule creates a
replacement rather than failing.

<Note>
  A **class** session works differently, and deliberately so: DMLY creates **one** meeting for
  the session and every booked client gets that same join link. Individual seats never get their
  own meeting. See [Appointments](/appointments/overview).
</Note>

## Using the join link in messages

The join link goes into the booking messages a service sends — its **Confirmation message** and
**Reminder message**, which you edit on the service itself in **Offerings → Services**. Write
`{{meeting.link}}` wherever you want the join link to appear; the default confirmation already
includes it. It is also available in the flow builder after a **Book Meeting** node.

If a meeting could not be created, `{{meeting.link}}` falls back to the booking's location —
for a Zoom service, just `Zoom` — instead of sending a broken link, so the message still goes
out and still reads sensibly.

Since WhatsApp is where most clients read their confirmations, this is usually the fastest way
to get someone into the call. See [Appointments](/appointments/overview).

## When a booking has no join link

A Zoom problem never blocks a booking. If DMLY cannot create the meeting — Zoom is
disconnected, or Zoom itself returns an error — the booking is still made and confirmed, it just
has no join link. This is the right trade-off (a client with a confirmed slot and no link beats a
lost booking), but it does mean a missing link is quiet.

<Accordion title="Bookings are being made but no join link appears">
  Check both halves of the setup, in this order:

  1. **Integrations → Productivity → Zoom** reads **Connected**. If it reads **Not connected**,
     reconnect — bookings made while it was disconnected keep no link.
  2. The service in **Offerings → Services** is actually set to the **Zoom (auto link)**
     location. A service on any other location is working as configured.

  Bookings that were already made while Zoom was disconnected do not backfill. Rescheduling one
  creates its meeting.
</Accordion>

<Columns cols={2}>
  <Card title="Calendar sync" icon="calendar" href="/appointments/calendar-sync">
    Keep bookings in step with your own calendar.
  </Card>

  <Card title="All integrations" icon="puzzle-piece" href="/integrations/overview">
    Everything else you can connect to DMLY.
  </Card>
</Columns>
