Book meetings with customers from a ticket (Google Calendar)
Connect Google Calendar and send booking links from any ticket: real availability, Google Meet, reminders, an Appointments page and public booking pages — an illustrated guide.
Send a booking link from any conversation. The customer picks a slot that is really free, the meeting lands in the agent's Google Calendar with a Meet link, and Lunadesk handles the reminders, the notes and the follow-up.
What you get
- ·Booking links from a ticket — one click in the sidebar, paste the link in your reply. Single-use, with an expiry.
- ·Real availability — Lunadesk reads the busy times of the connected calendars and applies your bookable hours, buffers and notice. No double booking.
- ·A team pool — a slot is offered as soon as one agent in the pool is free, and that agent gets the meeting. Or target a specific agent.
- ·Guests — add teammates (their calendar is intersected too) or outside guests to the invite.
- ·Permanent booking pages — a public "Book a call" page for the team, or a personal link for an email signature. Booking creates the ticket.
- ·Reminders and follow-through — the customer gets a reminder in their language and timezone, the agents get notified, and a post-meeting note and task land on the ticket.
- ·An Appointments page — list, day, week and month views with your own Google events and your Fathom recordings.
- ·AI-proposed links — when a customer asks for a call, the AI draft can include a booking link on its own.
Before you begin
- ✓A Lunadesk admin adds the integration once (Settings → Integrations is admin-only). Then every agent connects their own Google account.
- ✓Each agent needs a Google account with a calendar — Google Workspace or a personal Gmail.
- ✓Know your team's bookable hours and timezone; you will set them as the default rules.
Set it up
An admin adds Google Calendar to the workspace. Nothing to configure on Google's side — Lunadesk already carries the app.
Each agent clicks Connect my Google Calendar and approves the Google prompt. You come back as Connected as you@company.com, in the pool by default.
- Google asks to see your calendar and create events — that is what a booking needs.
- Colleagues never see the content of your events, only that you are busy.
Workspace-wide defaults: timezone, bookable hours per weekday, meeting length, how often slots start, buffer around existing events, minimum notice, how far ahead people can book, how long a link stays valid, Meet on or off, and the two reminders. An agent can switch to Use my own hours and timezone.
Rules stack. A link's own availability beats the agent's hours, which beat the workspace defaults. Two agents in different countries offer genuinely different slots — each is evaluated in their own timezone and the results are merged.
Send a booking link from a ticket
Open the Appointment card in the ticket sidebar. Pick who the customer will meet, the length, add guests if you like, and create the link. Copy it or insert it straight into your reply.
What the customer sees
The link opens a booking page on your help center domain, in your branding. Times are shown in the visitor's timezone. Their name and email are prefilled from the ticket, and one click confirms.
Availability is re-checked at confirmation. The slot list may be minutes old; Google is the source of truth. If two people confirm the same instant, one gets it and the other is offered another time. If Google refuses the event, nothing is left half-booked.
Once booked, the meeting is in the agent's Google Calendar with a Meet link, the customer receives the invite, and an internal note appears on the ticket with the time and the pre-call context. The customer can cancel or reschedule from the same page.
Options on a link
- ·Shown to the customer — the title on the booking page and in the invite. It defaults to the ticket subject; rename it before sending if the subject is noise or carries private details.
- ·Team pool or a specific agent — pool links go to whoever is free first.
- ·Guests — a teammate with a connected calendar is intersected into the slots; a teammate whose calendar can't be read, or an outside email, is simply invited.
- ·Availability for this link — a date window (From / Until), a specific minimum notice, an expiry, or dedicated hours that override the defaults.
Booking pages: meetings without a ticket
A booking page is a permanent address visitors can book from — a team "Book a call" page, or an agent's personal link for an email signature. Booking creates the ticket, with the visitor as the customer.
Integration page → Booking pages tab → New page. Give it a title, an address (lowercase letters, digits and dashes), an intro, a calendar (team pool or one agent) and a meeting length.
Copy the link into your signature or website. Turn on Show "Book a call" in the help center header to feature it on your help center.
Each booking creates a ticket on your web-form channel, books the slot, sends the invite and arms the reminders — exactly like a link sent from a ticket.
Who can create what. A page on the team pool is admin-only. An agent can publish a page to their own calendar only.
The Appointments page
Appointments in the navigation lists every meeting booked through your links. Switch between List, Day, Week and Month, filter My meetings or Everyone, and click a meeting to open the ticket, join the Meet, cancel it or flag a No-show.
Privacy. Your own Google events appear in full on your Appointments page. Your colleagues' calendars are only ever read as busy or free — Lunadesk never shows their event contents, and structurally refuses to return another agent's events.
Reminders and follow-through
- ·Customer reminder — an email before the meeting, in the customer's language and timezone, sent from your workspace name. Set the delay in the rules (0 turns it off).
- ·Agent reminder — a notification to the agent who owns the meeting and the one who created the link, on the channels they chose in their notification settings.
- ·After the meeting — a note and a task land on the ticket for the host, so the follow-up is never forgotten.
- ·Changes made in Google — a meeting moved, deleted or declined by the customer directly in Google Calendar is picked up within 15 minutes and reflected on the ticket.
Let the AI offer the slot
When a customer asks for a call, the AI reply draft can create a booking link and include it in the draft — nothing is sent until you approve the draft, and an unused link simply expires. The same works in the live chat AI agent when you enable it in the channel's AI settings.
Good to know
- ·A link is single-use: once booked, it can't be booked again. Rescheduling reuses it.
- ·A calendar Lunadesk can't read is never offered as free — the pool shrinks rather than double-booking.
- ·The Booking links tab is the journal: every link, its status, who booked, filters and a rename. Links still showing the ticket subject as title are highlighted.
- ·The Stats tab shows links sent, meetings booked, booking rate and time to book — the same figures are available as dashboard widgets under Appointments.
- ·Disconnecting a calendar keeps existing meetings in Google; no new slot is offered on it.
Troubleshooting
"Google Calendar is not enabled on this Lunadesk deployment yet"
"Connection expired — reconnect"
The customer says no slot is available
"This booking link has expired"
The customer saw the wrong title
A meeting booked in Lunadesk isn't in my Google Calendar
Connect your calendar, set your hours once, and never trade three emails to find a time again.