Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.sympana.com/llms.txt

Use this file to discover all available pages before exploring further.

Step 1: Connect Sympana to Vapi

Before setting up functions, make sure Sympana Connector is connected to your Vapi account. Follow the Connect Vapi guide if you haven’t done this yet.

Step 2: Enable functions on your connection

  1. Open the Sympana dashboard inside GoHighLevel
  2. Go to Connections and click on your Vapi connection (or create a new one)
  3. Scroll down to the Functions section
  4. Click each function you want to enable — a blue checkmark appears when it’s on
  5. Click Save or Update Connection
All 11 functions are available for Vapi. Only enable the ones your assistant actually needs.
If you enabled any appointment functions (Book Appointment, Get Slots, List Appointments, Reschedule, Delete), you must link a GHL calendar:
  1. In the same connection settings, find the Calendar section
  2. Select the GHL calendar you want appointments booked on
  3. Save the connection
If you skip this step, appointment functions will fail with a “No calendar configured” error.

All 11 functions — what they do and how to reference them

Every function below shows what it does, what data the assistant needs to collect, and the exact prompt instructions to copy into your Vapi assistant.
Vapi uses assistantOverrides to inject variables. Sympana handles this automatically — you just need to write clear prompt instructions.

Book Appointment

What it does: Creates a new appointment on your linked GHL calendar. What the assistant needs from the caller:
  • What the appointment is for (the title)
  • Preferred date and time
What’s auto-filled: Contact name, phone, email, calendar, timezone. Copy this into your Vapi assistant prompt:
APPOINTMENT BOOKING:
When the customer wants to schedule an appointment:
1. Ask what day and time works best for them
2. ALWAYS check availability FIRST — never guess if a time is open
3. If the slot is available, book the appointment
4. Tell the customer: "You're all set! I've booked your [title] for [date] at [time]."
5. If the slot is taken, read back 2-3 available times and ask which works

Get Slots (Check Availability)

What it does: Returns available appointment times from your GHL calendar. Checks up to 7 days ahead automatically. Copy this into your Vapi assistant prompt:
CHECKING AVAILABILITY:
ALWAYS check available time slots BEFORE offering or confirming any appointment.
Never assume a time is available. When the customer asks about a day, check
availability for that date. Read back the nearest 3 available times.

Get Appointment

What it does: Retrieves details of a specific appointment. Copy this into your Vapi assistant prompt:
If the customer asks about a specific appointment, retrieve the details.
If you don't have the appointment ID, list their appointments first.

List Appointments

What it does: Shows all upcoming appointments for the caller. Uses their contact info automatically. Copy this into your Vapi assistant prompt:
If the customer asks "when is my appointment" or "what appointments do I have",
list all their upcoming bookings. Read back the date, time, and title of each.

Reschedule Appointment

What it does: Moves an existing appointment to a new date and time. Copy this into your Vapi assistant prompt:
RESCHEDULING:
1. List the customer's appointments to find which one
2. Ask what new date and time they prefer
3. Check availability for the new time
4. Reschedule the appointment
5. Confirm: "I've moved your appointment to [new date] at [new time]."

Delete Appointment

What it does: Cancels an existing appointment. Copy this into your Vapi assistant prompt:
CANCELING:
1. List the customer's appointments to find which one
2. Confirm: "Are you sure you'd like to cancel your [title] on [date]?"
3. Only after they confirm, cancel the appointment
4. Say: "Your appointment has been canceled."

Get Contact

What it does: Retrieves the full contact profile from GHL. Copy this into your Vapi assistant prompt:
If you need to look up the customer's information, use the contact lookup.
The contact is identified automatically from the call.

Create Contact

What it does: Creates a new contact in GHL. Copy this into your Vapi assistant prompt:
If the caller is new and not in the system, collect their first name, last name,
phone number, and email, then create a new contact.

Update Contact Data

What it does: Updates fields on the GHL contact record. Standard fields: email, firstName, lastName, phone, companyName, address1, city, state, postalCode, country, website, timezone Copy this into your Vapi assistant prompt:
If the customer provides new or updated information (email, phone, address, name),
save it immediately. Confirm: "I've updated your [field] to [new value]."

Get Opportunity

What it does: Retrieves sales pipeline and deal data for the contact. Copy this into your Vapi assistant prompt:
If you need to reference the customer's account status or deal information,
retrieve their opportunity data.

Timezone Resolver

What it does: Determines the caller’s timezone from their phone number area code. Copy this into your Vapi assistant prompt:
If you need to know the customer's timezone for scheduling, resolve it from
their phone number. If that doesn't work, ask for their city and state.

Step 4: Write your prompt

Your Vapi assistant prompt must tell the assistant when and how to use each function.
The #1 mistake: Writing “help the customer book an appointment” without specifying to use the booking function. The assistant will TALK ABOUT booking instead of ACTUALLY booking. Always give explicit instructions to use each function.

Complete prompt example

You are Alex, a friendly appointment coordinator at {{company_name}}.

## Your personality
- Warm, professional, and efficient
- Keep responses short — this is a phone call, not an essay
- Always confirm important details back to the customer

## Scheduling
- ALWAYS check available time slots BEFORE offering any appointment time
- After confirming a time is open, book the appointment
- If a time is taken, read back 2-3 alternatives from the availability check
- For rescheduling: find the appointment, ask for new time, check, then move it
- For canceling: find the appointment, confirm with customer, then cancel

## Contact Management
- Look up customer details if needed
- Save any new information the customer provides (email, phone, address)
- Create a new contact if the caller is not in the system

## Conversation flow
1. Greet: "Hi {{contact_first_name}}, this is Alex from {{company_name}}."
2. Ask how you can help
3. Handle their request using the appropriate functions
4. End with: "Is there anything else I can help you with?"

## Rules
- NEVER say a time is available without checking first
- NEVER cancel without explicit confirmation
- If something goes wrong, apologize and try again
- Keep the call under 3 minutes

Step 5: Test your functions

  1. Create a test contact in GHL with your phone number
  2. Trigger a test call from a GHL workflow
  3. Test each function during the call
  4. Verify actions were taken in GHL after the call
Unlike Retell test calls, Vapi test calls are real calls and may incur charges on your Vapi account.
Still stuck? Join the Sympana Discord server for help.