Pular para o conteúdo principal
Use client.chatwoot() para conectar uma instancia VZaps ao Chatwoot. Campos comuns em todas as chamadas:
CampoTipoObrigatórioDescrição
instanceIdstringSimID da instância.
instanceTokenstringSimToken da instância.

client.chatwoot().get(...)

Lê a configuração atual, incluindo webhookUrl e tokenMasked quando aplicável.
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.chatwoot().get(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
Retorno: configuracao Chatwoot (enabled, url, account_id, webhook_url, token_masked, etc.).

client.chatwoot().set(...)

Cria ou atualiza a integração Chatwoot da instância.
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.chatwoot().set(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
Retorno: configuracao salva (inclui webhook_url quando gerada). Campos principais do payload:
CampoTipoObrigatórioDescrição
enabledbooleanSimAtiva ou desativa a integração.
urlstringSimURL base do Chatwoot.
accountIdstringSimID numérico da conta.
tokenstringSimToken de API do Chatwoot.
nameInboxstringNãoNome da inbox API.
autoCreatebooleanNãoCria inbox e webhook automáticamente.
importContactsbooleanNãoImporta contatos no fluxo inicial.
importMessagesbooleanNãoImporta mensagens no fluxo inicial.
daysLimitImportMessagesnumberNãoJanela em dias para importação de mensagens. Mínimo 1.
ignoreGroupsbooleanNãoIgnora mensagens de grupos.
ignoreJidsarrayNãoJIDs a ignorar.
Copie webhookUrl da resposta para o inbox API do Chatwoot quando autoCreate não aplicar sozinho.

client.chatwoot().delete(...)

Remove a integração Chatwoot da instância.
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.chatwoot().delete(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
Retorno: confirmacao de remocao da integracao.

client.chatwoot().triggerImport(...)

Dispara importação manual de contatos, mensagens ou ambos. Importar contatos:
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.chatwoot().triggerImport(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
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.