Voice AI receptionist setup

HighLevel's Voice AI agents can answer calls, collect details, book appointments and hand off to a person. This guide combines HighLevel's builder steps with what we learned building after-hours receptionist agents for trades businesses (plumbing, roofing, garage doors), some of them through the API.

1. Before you build

2. Create the agent in the builder

In the sub-account: AI Agents > Voice AI > Agent List > + Create Agent, then choose a marketplace agent, a custom agent, or the flow-based builder. For a custom agent set the name, voice, model, language and timezone, then write the prompt and the welcome message.

3. A prompt structure that works on the phone

Phone conversations punish long answers. The structure we use:

  1. Role in one paragraph: who the agent is, for which business, when it answers (for example "calls the team can't pick up: evenings, weekends, busy times") and the tone.
  2. Disclosure line said once near the start: that the caller is talking to a virtual assistant and the call may be recorded.
  3. The job, as numbered steps: understand the problem in the caller's words, judge urgency against a written list of urgent situations, collect details one question at a time, confirm the phone number back digit by digit, recap before ending.
  4. Safety lines for the trade (for a garage door company: don't touch springs or cables under tension; for an emergency: call 911).
  5. A fixed answer to "how much?" such as "the technician confirms the price on site before doing any work". Never let the agent improvise prices.
  6. Rules: 1–2 sentence answers; never invent services, prices, warranties or staff names; politely end sales and spam calls; if asked for a human, promise a callback.

From our builds: we put the "never invent" rule and a fixed price sentence in every receptionist prompt, because a voice agent that guesses a price or a warranty creates a promise the business has to deal with. We also ask for the callback number to be read back digit by digit: a lead with a wrong number is useless.

4. Knowledge base and actions

5. Test before a real caller does

6. Deploy and routing

7. Creating agents through the API

If you set up the same agent for many clients, the API is faster than clicking. We created and updated agents with a sub-account (location) Private Integration token; see the token guide for why the level matters. Base URL https://services.leadconnectorhq.com, headers Authorization: Bearer <token> and Version: 2021-07-28.

# list agents in a sub-account
GET /voice-ai/agents?locationId=LOCATION_ID&pageSize=50

# create one
POST /voice-ai/agents
{
  "locationId": "LOCATION_ID",
  "agentName": "After-hours receptionist",
  "businessName": "Summit Plumbing",
  "welcomeMessage": "Thanks for calling Summit Plumbing, how can I help you?",
  "agentPrompt": "...your prompt...",
  "maxCallDuration": 300,
  "sendUserIdleReminders": true,
  "reminderAfterIdleTimeSeconds": 6,
  "saveCallSummaryAsNote": true,
  "timezone": "US/Central"
}

# update one: locationId goes in the query string, not the body
PATCH /voice-ai/agents/AGENT_ID?locationId=LOCATION_ID

What we ran into:

These field names are the ones that worked for us; check HighLevel's API reference for the current schema before relying on them.

Start the 14-day HighLevel trial

Affiliate link: if you sign up through it we may earn a commission, at no extra cost to you. How we make money.

Facts last checked against official sources: