> ## Documentation Index
> Fetch the complete documentation index at: https://docs.leavo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Multi-Agente e Multi-Canal

> Como funciona o suporte a múltiplos assistentes e canais por lead

## Visão Geral

O Leavo suporta **multi-canal** e **multi-agente**, permitindo que um mesmo lead se comunique por diferentes canais (WhatsApp, Telegram, Email) com assistentes de IA diferentes em cada um.

## Lead Channels

Cada lead pode ter múltiplas associações com canais. Cada associação (`LeadChannel`) rastreia:

```json theme={null}
{
  "id": "uuid",
  "lead_id": "uuid",
  "channel_id": "uuid",
  "assistant_id": "uuid",
  "channel_name": "WhatsApp Business",
  "channel_type": "whatsapp",
  "department_id": "uuid",
  "assigned_user_id": "uuid",
  "is_primary": true,
  "message_count": 42,
  "last_used_at": "2024-01-15T10:00:00Z"
}
```

## Como funciona

```
Lead "João Silva"
├── WhatsApp Business (Canal 1)
│   └── Assistente A (Vendas)
│
├── WhatsApp Suporte (Canal 2)
│   └── Assistente B (Suporte)
│
└── Telegram (Canal 3)
    └── Assistente C (Geral)
```

* Cada canal tem seu próprio assistente de IA
* Cada canal pode pertencer a um departamento diferente
* Contadores de mensagens e último uso são rastreados por canal
* Um canal pode ser marcado como **primário** (`is_primary`)

## Canais Suportados

| Tipo       | Providers                            |
| ---------- | ------------------------------------ |
| `whatsapp` | Z-API, Evolution API, Gupshup (Meta) |
| `telegram` | Bot API                              |
| `email`    | SMTP/IMAP                            |
| `sms`      | Diversos                             |

## Tipos de Provider WhatsApp

| Provider      | Tipo            | Descrição                            |
| ------------- | --------------- | ------------------------------------ |
| Z-API         | `z-api`         | API não-oficial (Baileys)            |
| Evolution API | `evolution-api` | API não-oficial                      |
| Gupshup       | `gupshup`       | API oficial Meta (WhatsApp Business) |

<Note>
  Canais Gupshup (Meta) suportam templates oficiais e são necessários para enviar mensagens após a janela de 24 horas.
</Note>

## Atendentes Humanos

Quando um operador envia uma mensagem manualmente, ele é registrado como **atendente** do lead naquele canal:

```bash theme={null}
GET /backend/leads/{id}/attendants
```

**Resposta:**

```json theme={null}
[
  {
    "user_id": "uuid",
    "user_name": "Maria Santos",
    "channel_name": "WhatsApp Business",
    "channel_type": "whatsapp",
    "assistant_name": "Assistente Vendas",
    "department_name": "Vendas",
    "last_message_at": "2024-01-15T10:00:00Z",
    "message_count": 15
  }
]
```

## Agências

O Leavo suporta uma hierarquia de organizações:

| Tipo                   | Descrição                                                |
| ---------------------- | -------------------------------------------------------- |
| **Agência** (`agency`) | Organização principal que gerencia múltiplos clientes    |
| **Cliente** (`client`) | Organização vinculada a uma agência (`parent_tenant_id`) |

Agências podem criar e gerenciar seus clientes, cada um com seus próprios leads, canais e assistentes.
