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, options?)
Lê a configuração atual, incluindo webhookUrl e tokenMasked quando aplicável.
const chatwoot = await vzaps.chatwoot.get('VZ...', {
instanceToken: 'instance-token',
});
console.dir(chatwoot, { depth: null });
Retorno: configuracao Chatwoot (enabled, url, accountId, webhookUrl, tokenMasked, etc.).
chatwoot.set(request)
Cria ou atualiza a integração Chatwoot da instância.
const saved = await 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: [],
});
console.dir(saved, { depth: null });
Retorno: configuracao salva (inclui webhookUrl 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 automáticamente. |
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. |
Copie webhookUrl da resposta para o inbox API do Chatwoot quando autoCreate não aplicar sozinho.
chatwoot.delete(instanceId, options?)
Remove a integração Chatwoot da instância.
await vzaps.chatwoot.delete('VZ...', {
instanceToken: 'instance-token',
});
Retorno: confirmacao de remocao da integracao.
chatwoot.triggerImport(request)
Dispara importação manual de contatos, mensagens ou ambos.
Importar contatos:
await vzaps.chatwoot.triggerImport({
instanceId: 'VZ...',
instanceToken: 'instance-token',
what: 'contacts',
});
Retorno: confirmacao do job de importacao (contacts, messages ou all).
Importar mensagens:
await vzaps.chatwoot.triggerImport({
instanceId: 'VZ...',
instanceToken: 'instance-token',
what: 'messages',
});
Importar tudo:
await vzaps.chatwoot.triggerImport({
instanceId: 'VZ...',
instanceToken: 'instance-token',
what: 'all',
});
Valores aceitos em what: contacts, messages, all.