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

# API de Canais e Sessões: Crie, Conecte e Consulte Canais WhatsApp

> Crie, inicie, consulte e remova sessões (canais) do WhatsApp, e gerencie a conexão via QR Code, usando a API externa do PanÐá Zap.

Uma **sessão** é uma conexão de canal (por exemplo, um número de WhatsApp) dentro do PanÐá Zap. Use os endpoints abaixo para provisionar novos canais, controlá-los e consultá-los de forma programática — útil para plataformas que oferecem o PanÐá Zap como parte de um produto maior e precisam automatizar o onboarding de clientes.

Todas as requisições exigem o cabeçalho `Authorization: Bearer {BearerToken}`.

<Note>
  Estes endpoints operam sobre canais dentro do **tenant do seu `ApiID`**. Para provisionar tenants inteiros (contas de clientes) em uma operação white-label/multi-empresa, veja [Administração de Tenants](/api/tenant-management), que exige um `SuperAdminToken` separado.
</Note>

***

## Criar sessão

Cria um novo canal (sessão) do WhatsApp.

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/createtSession
```

```json theme={null}
{
  "name": "My WhatsApp Instance",
  "status": "DISCONNECTED",
  "type": "baileys"
}
```

| Campo    | Tipo   | Obrigatório | Descrição                                                                                                    |
| -------- | ------ | ----------- | ------------------------------------------------------------------------------------------------------------ |
| `name`   | string | Sim         | Nome de exibição da instância do WhatsApp.                                                                   |
| `status` | string | Não         | Status inicial — `DISCONNECTED` ou `CONNECTED`. Normalmente `DISCONNECTED` até que o QR Code seja escaneado. |
| `type`   | string | Sim         | Motor de conexão — por exemplo, `baileys`, `zapo`, `waba`, `meow`, `evo`, `uazapi`, `zapi`.                  |

Após criar a sessão, use [Mostrar QR Code](#mostrar-qr-code) para obter o código de pareamento e conectar o número.

***

## Iniciar sessão

Inicia (conecta) uma sessão existente.

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/startSession
```

```json theme={null}
{ "whatsappId": 1 }
```

| Campo        | Tipo    | Obrigatório | Descrição                            |
| ------------ | ------- | ----------- | ------------------------------------ |
| `whatsappId` | integer | Sim         | ID da sessão (canal) a ser iniciada. |

***

## Mostrar QR Code

Retorna o QR Code atual para pareamento do canal com o WhatsApp.

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/qrCodeSession
```

```json theme={null}
{ "whatsappId": 1 }
```

| Campo        | Tipo    | Obrigatório | Descrição                                 |
| ------------ | ------- | ----------- | ----------------------------------------- |
| `whatsappId` | integer | Sim         | ID da sessão para a qual obter o QR Code. |

***

## Solicitar novo QR Code

Gera um novo QR Code — use quando o código anterior expirou antes de ser escaneado.

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/requestNewQrCodeSession
```

```json theme={null}
{ "whatsappId": 1 }
```

| Campo        | Tipo    | Obrigatório | Descrição                                       |
| ------------ | ------- | ----------- | ----------------------------------------------- |
| `whatsappId` | integer | Sim         | ID da sessão para a qual gerar um novo QR Code. |

***

## Exibir informações do canal por número

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/showChannel
```

```json theme={null}
{ "number": "5515998566622" }
```

| Campo    | Tipo   | Obrigatório | Descrição                                |
| -------- | ------ | ----------- | ---------------------------------------- |
| `number` | string | Sim         | Número do WhatsApp do canal a consultar. |

***

## Exibir informações do canal por ID

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/showChannelById
```

```json theme={null}
{ "id": 43 }
```

| Campo | Tipo    | Obrigatório | Descrição                |
| ----- | ------- | ----------- | ------------------------ |
| `id`  | integer | Sim         | ID do canal a consultar. |

***

## Excluir sessão

Remove permanentemente um canal (sessão) e desconecta o número associado.

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/deleteSession
```

```json theme={null}
{ "whatsappId": 1 }
```

| Campo        | Tipo    | Obrigatório | Descrição                    |
| ------------ | ------- | ----------- | ---------------------------- |
| `whatsappId` | integer | Sim         | ID da sessão a ser excluída. |

<Warning>
  Excluir uma sessão é uma operação destrutiva e não pode ser desfeita pela API. O histórico de tickets associado ao canal permanece no banco de dados, mas o canal deixa de poder enviar ou receber mensagens.
</Warning>

***

## Resposta Padrão

```json theme={null}
{
  "success": true,
  "data": { ... }
}
```

Nos endpoints de consulta (`showChannel`, `showChannelById`, `qrCodeSession`), `data` traz os detalhes do canal ou o QR Code em Base64, conforme o endpoint chamado.
