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

# Workflow Recipes

> Copy-paste workflow configurations for the most common Sympana Connector use cases — voice calls, messaging, handoff, opt-out, and follow-up.

Ready-to-use workflow recipes. Each one shows the exact trigger, actions, and configuration.

***

## Voice Recipes

### 1. Outbound voice call

The simplest voice workflow — call new leads automatically.

```
Trigger: Contact Created (or Tag Added, Form Submitted, etc.)
  → Wait: 2 minutes
  → Action: Place Call (Sympana) — select your voice connection
  → Action: Add Tag "ai-called"
```

***

### 2. Business hours calling

Only call during safe hours in the contact's timezone.

```
Trigger: Tag Added "ready-to-call"
  → Action: Wait Until Calling Window (9 AM - 5 PM)
  → Action: Place Call Smart Selection (Sympana)
```

<Tip>Wait Until Calling Window automatically pauses until the window opens. If it's already within the window, the workflow continues immediately.</Tip>

***

### 3. Call completed → add note with summary

Log every call's summary and transcript as a GHL contact note.

```
Trigger: Call Completed (Sympana)
  → Action: Add Note
    Body: "AI Call Summary:\n{{call_summary}}\n\nSentiment: {{sentiment}}\n\nTranscript:\n{{call_transcript}}"
```

***

### 4. Call completed → update pipeline

Move contacts through your pipeline based on call sentiment.

```
Trigger: Call Completed (Sympana)
  → If/Else: sentiment = "Positive"
    → Yes: Move to pipeline stage "Qualified"
    → No:
      → If/Else: user_spoke = false
        → Yes: Add Tag "voicemail" → Schedule retry in 4 hours
        → No: Move to pipeline stage "Needs Nurture"
```

***

### 5. Call completed → create opportunity

Create a deal in your pipeline after a successful call.

```
Trigger: Call Completed (Sympana)
  → If/Else: call_successful = true
    → Yes: Create Opportunity
      Pipeline: "Sales Pipeline"
      Stage: "Discovery Call Completed"
      Name: "{{contact_first_name}} {{contact_last_name}}"
    → No: Add Tag "no-deal"
```

***

### 6. Missed call → AI follow-up message

When a call goes to voicemail, send a follow-up text automatically.

```
Trigger: Call Completed (Sympana)
  → If/Else: user_spoke = false
    → Yes (voicemail):
      → Wait: 5 minutes
      → Send SMS: "Hi {{contact_first_name}}, we tried reaching you.
        Reply to this message anytime and we'll get back to you!"
```

***

### 7. Retry unanswered calls

Retry contacts who didn't answer, up to 3 attempts.

```
Trigger: Call Completed (Sympana)
  → If/Else: user_spoke = false AND contact does NOT have tag "call-attempt-3"
    → Yes:
      → If contact has tag "call-attempt-2": Add Tag "call-attempt-3" → Stop
      → If contact has tag "call-attempt-1": Remove tag, Add Tag "call-attempt-2"
      → Else: Add Tag "call-attempt-1"
      → Wait: 4 hours
      → Action: Place Call (Sympana)
```

***

## Messaging Recipes

### 8. Inbound SMS → AI reply

The simplest messaging workflow — AI responds to every inbound SMS.

```
Trigger: Message Received (Sympana)
  → Filter: Channel = SMS
  → Action: Send AI Message (Sympana) — select your messaging connection
```

***

### 9. AI reply only for tagged leads

Only let AI respond to contacts you've explicitly approved.

```
Trigger: Message Received (Sympana)
  → If/Else: Contact has tag "ai_msg_enabled"
    → Yes: Action: Send AI Message (Sympana)
    → No: Do nothing (message goes to human inbox)
```

<Warning>This is the recommended pattern for outbound messaging campaigns. Only tag the contacts you intentionally outbounded with `ai_msg_enabled`.</Warning>

***

### 10. Opt-out handling

When a contact says "stop" or "unsubscribe", block AI and notify the team.

```
Trigger: Message Received (Sympana)
  → If/Else: Message body contains "stop" OR "unsubscribe" OR "remove me"
    → Yes:
      → Add Tag "ai_msg_blocked"
      → Remove Tag "ai_msg_enabled"
      → Send SMS: "You've been removed from automated messages. A team member can still reach out if needed."
    → No: [continue to Send AI Message]
```

***

### 11. Human handoff notification

When the AI can't help and requests a handoff, alert your team.

```
Trigger: Handoff Requested (Sympana)
  → Action: Add Tag "ai_msg_handoff"
  → Action: Assign contact to team member
  → Action: Send Internal Notification
    To: Team lead phone/email
    Body: "{{contact_first_name}} needs human help. Last message: {{message_body}}"
  → Action: Create Task
    Title: "Follow up with {{contact_first_name}}"
    Due: Today
  → Action: Send SMS to contact
    Body: "I'm connecting you with a team member now. They'll be with you shortly."
```

***

### 12. Multi-channel AI (SMS + WhatsApp + Instagram)

Handle all inbound channels with one workflow, or separate workflows per channel.

**Option A: One workflow for all channels**

```
Trigger: Message Received (Sympana) — no channel filter
  → If/Else: Contact has tag "ai_msg_enabled"
    → Yes: Send AI Message
    → No: Do nothing
```

**Option B: Separate workflows per channel**

```
Workflow 1:
  Trigger: Message Received → Filter: SMS
  → Send AI Message (SMS messaging connection)

Workflow 2:
  Trigger: Message Received → Filter: WhatsApp
  → Send AI Message (WhatsApp messaging connection)

Workflow 3:
  Trigger: Message Received → Filter: Instagram
  → Send AI Message (Instagram messaging connection)
```

<Info>Channel filtering belongs in the GHL trigger, not in the Sympana messaging connection. The connection itself is provider-agnostic.</Info>

***

## Combined Recipes

### 13. Full outbound campaign with follow-up

Complete campaign: call during business hours, follow up based on results, retry no-answers.

```
Workflow 1 — Place the call:
  Trigger: Tag Added "campaign-q2"
  → Action: Wait Until Calling Window (9 AM - 5 PM)
  → Action: Place Call Smart Selection (Sympana)

Workflow 2 — Handle results:
  Trigger: Call Completed (Sympana)
  → If/Else: user_spoke = true
    → Yes:
      → If/Else: sentiment = "Positive"
        → Yes: Move to "Qualified" → Send SMS "Great talking with you!"
        → No: Add Tag "needs-nurture" → Create Task
    → No (voicemail):
      → Wait: 4 hours
      → Send SMS "We tried calling — reply anytime!"
      → Wait: 1 day
      → Action: Place Call (retry)

Workflow 3 — Handle inbound replies:
  Trigger: Message Received (Sympana)
  → If/Else: Contact has tag "campaign-q2"
    → Yes: Send AI Message (Sympana)
    → No: Do nothing
```

***

## Tag strategy reference

| Tag               | Purpose                                        | When to apply                                      |
| ----------------- | ---------------------------------------------- | -------------------------------------------------- |
| `ai_msg_enabled`  | Allow AI to respond to this contact's messages | When you outbound to a contact or opt them in      |
| `ai_msg_blocked`  | Block AI from responding                       | When contact opts out (stop, unsubscribe)          |
| `ai_msg_handoff`  | AI paused, human is handling                   | When handoff is triggered                          |
| `ai-called`       | Track that AI made a voice call                | After Place Call action                            |
| `voicemail`       | Call went to voicemail                         | When Call Completed fires with user\_spoke = false |
| `campaign-{name}` | Track campaign membership                      | When enrolling in a campaign                       |

***

## Next steps

<CardGroup cols={2}>
  <Card title="Setup Checklist" icon="list-check" href="/guides/setup-checklist">
    Step-by-step setup from install to go-live.
  </Card>

  <Card title="All Actions & Triggers" icon="bolt" href="/when-to-use-each-trigger-and-action">
    Reference for every Sympana action and trigger.
  </Card>
</CardGroup>
