> ## 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.

# Messaging Setup (Vapi)

> Set up a Vapi messaging connection in Sympana Connector to let your AI assistant respond to inbound SMS, WhatsApp, Instagram, and other messages.

## Overview

A messaging connection lets your Vapi AI assistant handle **text-based conversations** — inbound SMS, WhatsApp, Instagram DMs, Facebook messages, webchat, and more. The AI reads each message, generates a response, and sends it back through GHL Conversations.

<Warning>Messaging connections are separate from voice connections. If your assistant handles both calls and messages, create one voice connection and one messaging connection.</Warning>

***

## Create a Vapi messaging connection

<Steps>
  <Step title="Open the Vapi page" icon="gauge">
    In the Sympana dashboard, click **Vapi**.
  </Step>

  <Step title="Switch to Messaging" icon="message">
    Click the **Messaging** tab at the top (next to Voice).
  </Step>

  <Step title="Click Add Messaging Connection" icon="plus">
    Click the button to create a new messaging connection.
  </Step>

  <Step title="Name your connection" icon="text">
    Give it a clear name like "SMS Support Agent" or "WhatsApp Bot."
  </Step>

  <Step title="Select your Vapi messaging assistant" icon="robot">
    Choose the Vapi assistant that will handle messages. This should be an assistant configured for text conversations.
  </Step>

  <Step title="Link a GHL calendar (optional)" icon="calendar">
    Only needed if the messaging assistant uses appointment functions.
  </Step>

  <Step title="Configure Contact Access" icon="shield">
    Control who the AI is allowed to message:

    | Setting              | What it does                                                  |
    | -------------------- | ------------------------------------------------------------- |
    | **Allowed Tags**     | Only contacts with these tags get AI replies                  |
    | **Blocked Tags**     | Contacts with these tags are skipped                          |
    | **Handoff Tags**     | Contacts with these tags are treated as handed-off to a human |
    | **Opt-out Keywords** | Words like "stop", "unsubscribe" — AI stops replying          |
  </Step>

  <Step title="Select functions" icon="wrench">
    Enable the functions your messaging assistant needs — same 11 functions as voice.
  </Step>

  <Step title="Configure dynamic variables" icon="code">
    Add variables the assistant needs — contact name, email, custom fields, etc.
  </Step>

  <Step title="Configure Human Handoff" icon="user">
    Set up handoff keywords. When a contact says "talk to a person" or "human", the AI stops and fires the **Handoff Requested** trigger in GHL.
  </Step>

  <Step title="Save" icon="floppy-disk">
    Click **Save**. The connection is now available for GHL workflows.
  </Step>
</Steps>

***

## Build a messaging workflow

```
Trigger: Message Received (Sympana)
  → Optional: Filter by channel (SMS, WhatsApp, Instagram, etc.)
  → Optional: If/Else — Contact has tag "ai_msg_enabled"
  → Action: Send AI Message (Sympana) — select your Vapi messaging connection
```

<Info>Channel filtering belongs in the GHL trigger, not in the messaging connection.</Info>

***

## Build a handoff workflow

```
Trigger: Handoff Requested (Sympana)
  → Action: Add Tag "ai_msg_handoff"
  → Action: Assign contact to team member
  → Action: Send internal notification to your team
  → Optional: Create Task "Follow up with {{contact_first_name}}"
```

***

## Recommended tag strategy

| Tag              | When to apply                                               |
| ---------------- | ----------------------------------------------------------- |
| `ai_msg_enabled` | When you outbound a contact or opt them in for AI messaging |
| `ai_msg_blocked` | When the contact opts out                                   |
| `ai_msg_handoff` | When handoff is triggered                                   |

***

## Test your messaging connection

1. Make sure the messaging connection is active
2. Publish the Message Received workflow
3. Send a test inbound message to your GHL number
4. Verify the AI responds in GHL Conversations
5. Test handoff with a keyword like "I want to talk to a person"

<Warning>Unlike Retell, Vapi messaging may incur charges on your Vapi account for each AI response generated.</Warning>

***

## Next steps

<CardGroup cols={2}>
  <Card title="Messaging Connection Setup" href="/guides/messaging-connection-setup">
    Full guide with Contact Access and Human Handoff details.
  </Card>

  <Card title="Workflow Recipes" href="/guides/workflow-recipes">
    Copy-paste messaging workflow configurations.
  </Card>
</CardGroup>
