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

# Chatwoot

> Configurar integração Chatwoot e importar dados com o SDK PHP

Use `$vzaps->chatwoot()` para conectar uma instância VZaps ao Chatwoot.

Campos comuns em todas as chamadas:

| Campo           | Tipo     | Obrigatório | Descrição           |
| --------------- | -------- | ----------- | ------------------- |
| `instanceId`    | `string` | Sim         | ID da instância.    |
| `instanceToken` | `string` | Sim         | Token da instância. |

## `chatwoot()->get($instanceId, $instanceToken = null)`

Lê a configuração atual, incluindo `webhookUrl` e `tokenMasked` quando aplicável.

```php theme={null}
$chatwoot = $vzaps->chatwoot()->get('VZ...', 'instance-token');

print_r($chatwoot);
```

**Retorno:** configuracao Chatwoot (`enabled`, `url`, `account_id`, `webhook_url`, `token_masked`, etc.).

## `chatwoot()->set($request)`

Cria ou atualiza a integração Chatwoot da instância.

```php theme={null}
$saved = $vzaps->chatwoot()->set([
    'instanceId' => 'VZ...',
    'instanceToken' => 'instance-token',
    'enabled' => true,
    'url' => 'https://app.chatwoot.com',
    'accountId' => '1',
    'token' => 'chatwoot-api-token',
    'nameInbox' => 'WhatsApp VZaps',
    'signMsg' => true,
    'signDelimiter' => "\n",
    'number' => '5511999999999',
    'reopenConversation' => true,
    'conversationPending' => false,
    'importContacts' => true,
    'importMessages' => true,
    'daysLimitImportMessages' => 30,
    'autoCreate' => true,
    'organization' => 'Minha empresa',
    'logo' => '',
    'ignoreGroups' => false,
    'ignoreJids' => [],
]);

print_r($saved);
```

**Retorno:** configuracao salva (inclui `webhook_url` quando gerada).

Campos principais do payload:

| Campo                     | Tipo      | Obrigatório | Descrição                                                |
| ------------------------- | --------- | ----------- | -------------------------------------------------------- |
| `enabled`                 | `boolean` | Sim         | Ativa ou desativa a integração.                          |
| `url`                     | `string`  | Sim         | URL base do Chatwoot.                                    |
| `accountId`               | `string`  | Sim         | ID numérico da conta.                                    |
| `token`                   | `string`  | Sim         | Token de API do Chatwoot.                                |
| `nameInbox`               | `string`  | Não         | Nome da inbox API.                                       |
| `autoCreate`              | `boolean` | Não         | Cria inbox e webhook automaticamente.                    |
| `importContacts`          | `boolean` | Não         | Importa contatos no fluxo inicial.                       |
| `importMessages`          | `boolean` | Não         | Importa mensagens no fluxo inicial.                      |
| `daysLimitImportMessages` | `number`  | Não         | Janela em dias para importação de mensagens. Mínimo `1`. |
| `ignoreGroups`            | `boolean` | Não         | Ignora mensagens de grupos.                              |
| `ignoreJids`              | `array`   | Não         | JIDs a ignorar.                                          |

<Tip>
  Copie `webhookUrl` da resposta para o inbox API do Chatwoot quando `autoCreate` não aplicar sozinho.
</Tip>

## `chatwoot()->delete($instanceId, $instanceToken = null)`

Remove a integração Chatwoot da instância.

```php theme={null}
$vzaps->chatwoot()->delete('VZ...', 'instance-token');
```

**Retorno:** confirmacao de remocao da integracao.

## `chatwoot()->triggerImport($request)`

Dispara importação manual de contatos, mensagens ou ambos.

Importar contatos:

```php theme={null}
$vzaps->chatwoot()->triggerImport([
    'instanceId' => 'VZ...',
    'instanceToken' => 'instance-token',
    'what' => 'contacts',
]);
```

**Retorno:** confirmacao do job de importacao (`contacts`, `messages` ou `all`).

Importar mensagens:

```php theme={null}
$vzaps->chatwoot()->triggerImport([
    'instanceId' => 'VZ...',
    'instanceToken' => 'instance-token',
    'what' => 'messages',
]);
```

Importar tudo:

```php theme={null}
$vzaps->chatwoot()->triggerImport([
    'instanceId' => 'VZ...',
    'instanceToken' => 'instance-token',
    'what' => 'all',
]);
```

Valores aceitos em `what`: `contacts`, `messages`, `all`.
