---
title: "Scheduling Integrations - Auto-Respond Docs"
description: "Connect Cal.com, FieldPulse, GoHighLevel, HousecallPro, Quickbase, or Open Schedule so the agent can book appointments."
source: https://auto-respond.com/docs/voice-agent/scheduling-integrations/
last_updated: 2026-10-06
---

![Scheduling Integrations documentation guide](https://auto-respond.com/assets/docs/voice-agent-scheduling-integrations.svg "Scheduling Integrations Documentation")

A visual guide to the Scheduling Integrations documentation, covering the setup, configuration, and workflow details explained on this page. Documentation illustration for Scheduling Integrations.

# Scheduling Integrations

Your voice agent can check real availability and book appointments during a live call. Connect a supported scheduling platform, use Built-in Booking with weekly hours, or use Open Schedule with written scheduling rules and a Jobs calendar.

## Getting here

In Auto-Respond, go to **Voice Agent** → **Voice Agents** → open an agent → **Scheduling** tab.

ℹ️

**Scheduling** and **Integrations** are two different tabs in the agent editor. This page covers the **Scheduling** tab (calendar booking). For CRM and messenger hookups (HubSpot, Slack, SMS, etc.), see [Voice Agent Integrations](https://auto-respond.com/docs/voice-agent/integrations/).

## Choosing a platform

Each option has its own required fields. **Built-in Booking** is selected by default; switch only if your bookings live in another calendar.

### Built-in Booking

Built-in Booking is Auto-Respond’s own scheduling system. Set up a CRM Calendar, then select Built-in Booking as a standalone booking option without connecting an external provider.

- Select a Calendar created under **CRM** → **Jobs** → **Create new calendar**. No external API key is required.
- The agent offers slots from that Calendar’s timezone, weekly hours, appointment length, and current active Jobs.
- Required customer information comes from the Calendar’s **Information to collect** settings.
- A confirmed appointment becomes a scheduled Job on the Calendar.

See [Calendar setup](https://auto-respond.com/docs/crm/calendars/) for booking rules and [Jobs](https://auto-respond.com/docs/crm/jobs/) for the records and schedule created from bookings.

### Cal.com

- **API key** - from your Cal.com account.
- **Event Type ID** - the specific event the agent books against (e.g., “30-min consultation”).
- **Timezone** - IANA timezone (e.g., `America/Los_Angeles`). Determines how the agent talks about slot times.

### FieldPulse

- **API key** - from your FieldPulse account.
- **Company ID** - your FieldPulse company identifier.
- **Timezone** - IANA timezone.

### GoHighLevel

- **API key** - from your GoHighLevel account.
- **Calendar ID** - the specific calendar to book against.
- **Location ID** - your GoHighLevel location.

### HousecallPro

- **API key** - from your HousecallPro account.
- **Timezone** - IANA timezone.

### Quickbase

- **Appointments table link** - open your appointments table in Quickbase and copy the browser URL.
- **User token** - a Quickbase user token assigned to the app that holds the table.
- Click **Connect**. Auto-Respond picks the start, end or length, status, and customer detail fields automatically; click **Edit** to change them.
- Set the **Appointment length** and **Working Hours**. The agent offers only times inside your working hours that don’t overlap appointments already in the table.
- Click **Test & preview open times** to see how many existing appointments were found and the next open times.

See [Book appointments in Quickbase](https://auto-respond.com/docs/integrations/quickbase/#book-appointments-in-quickbase) for the full setup and advanced options.

### Open Schedule

- No external API key or credentials.
- Write or edit scheduling rules directly in Job Scheduler settings. Saving updates the attached AI calendar in Jobs.
- Choose **Create AI calendar automatically** to save those rules on a new Jobs calendar. Attach an existing AI calendar to share bookings with a source.
- The agent reads booked job times and service addresses before offering an exact time, then reserves the full appointment window after the customer agrees.

## Validating the connection

The voice agent screen doesn’t contact the platform when you save, so double-check credentials before you go live. A booking that fails during a call is shown as an error on the **Scheduling** tab. For Quickbase, click **Test & preview open times** to check the connection and see the next open times.

💡

When credentials rotate (team members leaving, key rotation schedules), update them here before the next campaign. A dead API key is the single most common cause of missed bookings.

## Collection Fields

Before booking, the agent collects a configurable list of customer details. Each field is an item with an **enable** toggle; you can add up to 50, and each is up to 500 characters.

**Defaults (all enabled):**

- **Customer Name**
- **Service Address**
- **Phone Number**

**Common additions:** Email, Zip/Postal Code, Preferred Day, Preferred Time Window, Gate Code.

The agent collects fields one at a time and does not re-ask for information the customer already provided earlier in the call.

## Appointment Summary Template

How the agent verbally confirms the booking at the end of the call.

- **Max length:** 1000 characters.
- **Default:** `You're all set! {{day}} at {{time}}.`
- **Placeholders:** `{{day}}`, `{{time}}`.

**Examples:**

- `You're booked for {{day}} at {{time}}. We'll text you a confirmation shortly.`
- `Great - I've got you down for {{day}} at {{time}}. A technician will be at your address in that window.`

## What happens during a booked call

### Customer agrees to book

The customer says yes to scheduling. The agent proposes specific times based on real availability from your connected calendar (or asks preferences, for Open Schedule).

### Agent collects required fields

The agent asks only for the enabled **Collection Fields** it doesn’t already have. Name and phone are often already known (from the inbound caller ID or the lead record); the agent skips those.

### Appointment is created

- **Built-in Booking** - a scheduled Job is created on the selected CRM Calendar. Open **CRM** → **Jobs**, then use the Calendar or List tab to review it.
- **Cal.com / FieldPulse / GoHighLevel / HousecallPro** - the appointment is created directly in your calendar. You’ll see it in your normal scheduling tool.
- **Quickbase** - a new record with the customer’s details is created in your Quickbase appointments table.
- **Open Schedule** - a scheduled Job is created on its AI text calendar. Open **CRM** → **Jobs** to review it.

### Agent confirms verbally

The agent speaks the **Appointment Summary Template**, then closes the call.

### Call is logged

The Call Log for that call shows the booked appointment with date, time, service, and customer info. See [Call Logs & Analytics](https://auto-respond.com/docs/voice-agent/call-logs-analytics/).

## Troubleshooting

**No Calendar is available for Built-in Booking.**

- Open **CRM** → **Jobs** and create a Calendar for the same business as the Voice Agent.
- Return to the Voice Agent’s Scheduling tab and select it.

**A Built-in Booking time is no longer available.**

- Another scheduled, in-progress, or on-hold Job may already reserve that slot.
- Refresh availability and offer one of the remaining times.

**Bookings fail with an error on the Scheduling tab.**

- Re-check the API key - most platforms will not tell you which portion is wrong, only that it’s invalid.
- Confirm the IDs (Event Type / Company / Calendar / Location) come from the same account that owns the API key.
- Check that your API key has booking-write permissions, not just read-only.

**The agent offers slots but the booking never appears in the calendar.**

- Confirm the calendar has available slots in the window the agent offered.
- Confirm the timezone in the integration matches the timezone of the calendar. A mismatch often causes slots that “look” available to be outside actual working hours.

**The agent isn’t checking availability, only collecting info.**

- Check that the attached AI text calendar has scheduling instructions.
- For external scheduling services, check the Scheduling tab for a booking error and re-check the credentials.

**The customer asks for a time that isn’t available.** The agent offers the nearest available alternatives. If the customer insists on an unavailable slot, the agent uses your **Transfer Criteria** (if enabled) to send the call to a human, or takes a message.

***

Questions? Email <support@auto-respond.com>.

Last updated: October 6, 2026
