npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@growsalesai/n8n-nodes-datacrazy

v3.8.22

Published

n8n community node para o Datacrazy CRM - Growsales IA

Readme

@growsalesai/n8n-nodes-datacrazy

npm version License: MIT

Nó da comunidade N8N para integração completa com a plataforma Datacrazy CRM, oferecendo acesso a todas as funcionalidades de CRM, automações de messaging, gestão de pipelines, leads, negócios e muito mais.

📋 Índice

🚀 Instalação

Via n8n Community Nodes

  1. Acesse as configurações do n8n
  2. Vá para Community Nodes
  3. Instale o pacote: @growsalesai/n8n-nodes-datacrazy

Via npm

npm install @growsalesai/n8n-nodes-datacrazy

⚙️ Configuração

  1. Crie uma nova credencial do tipo Datacrazy API
  2. Configure os seguintes campos:

| Campo | Padrão | Descrição | |---|---|---| | URL CRM | https://crm.g1.datacrazy.io | URL base para rotas /api/crm/ | | URL API v1 | https://api.g1.datacrazy.io | URL base para rotas /api/v1/ — deixe em branco para usar a URL CRM | | URL Messaging | https://messaging.g1.datacrazy.io | URL base para rotas /api/messaging/ (templates, mensagens agendadas) | | Fuso Horário | America/Sao_Paulo | Fuso horário usado nas operações de agendamento | | Token da API | — | Token JWT de acesso (sem o prefixo Bearer) |

🧩 Nós Disponíveis

Este pacote instala três nós no seu n8n:

| Nó | Descrição | |---|---| | Datacrazy CRM | Acesso completo a todos os recursos da API: leads, negócios, conversas, pipelines e mais | | Datacrazy Automações | Utilitários de automação: parser de webhook, switch, roteamento IA e muito mais | | Datacrazy Trigger | Recebe eventos (webhooks) em tempo real do Datacrazy |

📦 Módulos do CRM

🎯 Leads

resources/leads/

Gerenciamento completo de leads no Datacrazy CRM.

Operações e rotas:

| Operação | Método | Rota | |---|---|---| | Listar Leads | GET | /api/v1/leads | | Buscar por ID | GET | /api/v1/leads/:id | | Criar Lead | POST | /api/v1/leads | | Criar com Campos Personalizados | POST | /api/v1/leads/additional-fields | | Atualizar Lead | PATCH | /api/v1/leads/:id | | Excluir Lead | DELETE | /api/v1/leads/:id |

Recursos: paginação (skip/take), busca por texto, suporte a tags, cidade, estado, endereço, empresa e CPF/CNPJ.


📁 Sub-recursos do Lead

resources/leads/

Recursos associados diretamente a um lead:

Negócios do Lead

| Operação | Método | Rota | |---|---|---| | Listar Negócios | GET | /api/v1/leads/:leadId/businesses |

Anexos do Lead

| Operação | Método | Rota | |---|---|---| | Listar Anexos | GET | /api/v1/leads/:leadId/attachments | | Criar Anexo | POST | /api/v1/leads/:leadId/attachments | | Excluir Anexo | DELETE | /api/v1/leads/:leadId/attachments/:attachmentId |

Anotações do Lead

| Operação | Método | Rota | |---|---|---| | Listar Anotações | GET | /api/v1/leads/:leadId/notes | | Criar Anotação | POST | /api/v1/leads/:leadId/notes | | Atualizar Anotação | PUT | /api/v1/leads/:leadId/notes/:noteId | | Excluir Anotação | DELETE | /api/v1/leads/:leadId/notes/:noteId |

Histórico do Lead

| Operação | Método | Rota | |---|---|---| | Listar Histórico | GET | /api/v1/leads/:leadId/history |

Atividades do Lead

| Operação | Método | Rota | |---|---|---| | Listar Atividades | GET | /api/v1/leads/:leadId/activities |


💼 Negócios

resources/businesses/

Gestão completa do pipeline de vendas.

| Operação | Método | Rota | |---|---|---| | Listar Negócios | GET | /api/v1/businesses | | Buscar por ID | GET | /api/v1/businesses/:id | | Criar Negócio | POST | /api/v1/businesses | | Atualizar Negócio | PATCH | /api/v1/businesses/:id | | Excluir Negócio | DELETE | /api/v1/businesses/:id | | Adicionar Produto | PATCH | /api/v1/businesses/:id |


🎬 Ações de Negócio

resources/businessActions/

Operações de transição de estado para negócios.

| Operação | Método | Rota | |---|---|---| | Mover | POST | /api/v1/businesses/actions/move | | Ganhar | POST | /api/v1/businesses/actions/win | | Perder | POST | /api/v1/businesses/actions/lose | | Restaurar | POST | /api/v1/businesses/actions/restore |


❌ Motivos de Perda

resources/businessLossReasons/

Gerenciamento dos motivos de perda de negócios.

| Operação | Método | Rota | |---|---|---| | Listar | GET | /api/v1/business-loss-reasons | | Buscar por ID | GET | /api/v1/business-loss-reasons/:id | | Criar | POST | /api/v1/business-loss-reasons | | Atualizar | PUT | /api/v1/business-loss-reasons/:id | | Excluir | DELETE | /api/v1/business-loss-reasons/:id |


🏷️ Tags

resources/tags/

Sistema de etiquetas para categorização de leads.

| Operação | Método | Rota | |---|---|---| | Listar Todas | GET | /api/v1/tags | | Buscar por ID | GET | /api/v1/tags/:id | | Criar | POST | /api/v1/tags | | Atualizar | PUT | /api/v1/tags/:id | | Excluir | DELETE | /api/v1/tags/:id | | Adicionar ao Lead | PATCH | /api/v1/leads/:leadId | | Remover do Lead | PATCH | /api/v1/leads/:leadId |


📋 Listas

resources/lists/

Gerenciamento de listas de segmentação.

| Operação | Método | Rota | |---|---|---| | Listar Todas | GET | /api/v1/lists | | Buscar por ID | GET | /api/v1/lists/:id | | Criar | POST | /api/v1/lists | | Atualizar | PUT | /api/v1/lists/:id | | Excluir | DELETE | /api/v1/lists/:id |


📦 Produtos

resources/products/

Catálogo de produtos do CRM.

| Operação | Método | Rota | |---|---|---| | Listar Todos | GET | /api/v1/products | | Buscar por ID | GET | /api/v1/products/:id | | Criar | POST | /api/v1/products | | Atualizar | PUT | /api/v1/products/:id | | Excluir | DELETE | /api/v1/products/:id |


📅 Atividades

resources/activities/

Gerenciamento de atividades e tarefas do CRM.

| Operação | Método | Rota | |---|---|---| | Listar Todas | GET | /api/v1/activities | | Buscar por ID | GET | /api/v1/activities/:id | | Criar | POST | /api/v1/activities | | Atualizar | PATCH | /api/v1/activities/:id | | Excluir | DELETE | /api/v1/activities/:id |


💬 Conversas

resources/conversations/

Sistema de messaging e atendimento ao cliente.

| Operação | Método | Rota | |---|---|---| | Listar Conversas | GET | /api/v1/conversations | | Buscar Mensagens | GET | /api/v1/conversations/:id/messages | | Enviar Mensagem | POST | /api/v1/conversations/:id/messages | | Cancelar Mensagem Agendada | DELETE | /api/messaging/conversations/:id/scheduled-message/:msgId | | Finalizar Conversa | POST | /api/v1/conversations/:id/finish |

Tipos de mensagem suportados: Texto · Imagem · Vídeo · Áudio · Arquivo / Documento

Opções avançadas: mensagem interna (nota para equipe) · responder mensagem (reply por ID) · agendamento de envio (data/hora futura)

Cancelar agendamento: selecione a conversa e informe o ID da mensagem agendada (retornado no output do Enviar Mensagem).


🖥️ Instâncias

resources/instances/

Gerenciamento de instâncias de mensageria.

| Operação | Método | Rota | |---|---|---| | Listar Todas | GET | /api/v1/instances | | Buscar por ID | GET | /api/v1/instances/:id |


👥 Atendentes

resources/attendants/

Gerenciamento de atendentes do CRM e do multiatendimento.

| Operação | Método | Rota | |---|---|---| | Listar Todos | GET | /api/v1/attendants/crm ou /api/v1/attendants/multi | | Buscar por ID | GET | /api/v1/attendants/crm/:id ou /api/v1/attendants/multi/:id |


🔧 Pipelines

resources/pipelines/

Gerenciamento de pipelines de vendas e seus estágios.

| Operação | Método | Rota | |---|---|---| | Listar Todas | GET | /api/v1/pipelines | | Buscar por ID | GET | /api/v1/pipelines/:id | | Listar Estágios | GET | /api/v1/pipelines/:id/stages |


➕ Campos Personalizados

resources/additionalFields/

Sistema flexível de campos customizados para leads.

| Operação | Método | Rota | |---|---|---| | Listar Todos | GET | /api/crm/additionalFields | | Criar | POST | /api/crm/additionalFields | | Atualizar | PUT | /api/crm/additionalFields/:id | | Excluir | DELETE | /api/crm/additionalFields/:id | | Definir Valor no Lead | POST | /api/crm/additional-fields/lead/:leadId/:fieldId |


📊 Métricas de Negócios

resources/businessMetrics/

Relatórios e métricas do CRM.

| Operação | Método | Rota | |---|---|---| | Funil | GET | /api/crm/businesses/metrics/funnel | | Resumo de Atendentes | GET | /api/crm/businesses/metrics/summary/attendants | | Resumo Geral | GET | /api/crm/businesses/metrics/summary | | Listar Negócios | GET | /api/v1/businesses | | Resumo Diário | GET | /api/crm/businesses/metrics/summary/daily | | Resumo de Produtos | GET | /api/crm/businesses/metrics/summary/products |


⚡ Flows

resources/flows/

Gerenciamento de automações e fluxos do Datacrazy.

| Operação | Método | Rota | |---|---|---| | Listar Todos | GET | /api/crm/flows | | Buscar por ID | GET | /api/crm/flows/:id | | Listar Grupos | GET | /api/crm/flows/groups | | Executar Automação para Lead | POST | /api/crm/flows/triggers/leads/execute-lead | | Atualizar | PATCH | /api/crm/flows/:id | | Excluir | DELETE | /api/crm/flows/:id | | Ativar | PATCH | /api/crm/flows/:id | | Desativar | PATCH | /api/crm/flows/:id | | Métricas de Versão | GET | /api/crm/flows/:id/versions/:versionId/metrics |

Executar Automação para Lead: selecione a automação (dropdown com filtro por tipo manual) e o lead. Dispara a automação manualmente para o lead escolhido sem precisar aguardar um trigger automático.


📲 Templates WhatsApp

resources/whatsappTemplates/

Gerenciamento e envio de templates aprovados do WhatsApp Cloud API.

| Operação | Método | Rota | |---|---|---| | Listar Templates | GET | /api/messaging/whatsapp-cloud/templates/:channelId | | Enviar Template | POST | /api/messaging/whatsapp-cloud/templates/send |

Listar Templates: retorna todos os templates aprovados do canal com id, name, language, status, category, templateId e variáveis/botões.

Enviar Template:

  • Selecione o Canal (instância WhatsApp) → o dropdown de templates é carregado automaticamente
  • O dropdown exibe cada template com a contagem de variáveis: ex. id002 (pt_BR) — 2 variáveis — APPROVED
  • Preencha as Variáveis do Template em ordem (1º item = {{1}}, 2º = {{2}}, etc.)
  • Botões e parameter_format são incluídos automaticamente a partir dos metadados do template

🤖 Nó de Automações

O nó Datacrazy Automações oferece 17 utilitários inteligentes para construir fluxos com webhooks e lógica de CRM sem precisar escrever código.

Webhook & Mensagens

⚡ Analisar Webhook Datacrazy

automations/webhookParser/

Normaliza o payload recebido de um webhook do Datacrazy e extrai os campos principais: provedor, tipo de mensagem, texto, mídia, lead, token, conversa e muito mais.

  • Detecção automática de provedor (WhatsApp Cloud API, Instagram API, UAZAP)
  • Extração de leadId, token_datacrazy, conversationId, contactPhone
  • Suporte a detecção de anúncios (referral/CTWA)

⚡ Switch Tipo de Mensagem

automations/messageTypeSwitch/

Roteia o item para a saída correta com base no tipo da mensagem recebida.

Saídas: Texto · Imagem · Vídeo · Áudio · Arquivo · Outro


⚡ É Mensagem Referenciada?

automations/replyChecker/

Verifica se a mensagem recebida é uma resposta (reply) a outra mensagem.

Saídas: Sim · Não


⚡ Detectar Provedor do Webhook

automations/providerDetector/

Identifica o provedor de origem do webhook.

Provedores suportados: WhatsApp Cloud API · Instagram API · UAZAP · Desconhecido


⚡ Extrair Info do Webhook

automations/webhookExtractor/

Estrutura todos os campos do payload em objetos aninhados e organizados: contact, message, attachment, referral, instance, conversation.


⚡ Contexto de Mensagem Referenciada

automations/messageContext/

Verifica se a mensagem é um reply e, se for, busca o conteúdo da mensagem original na conversa do Datacrazy.

| Rota usada | Método | Descrição | |---|---|---| | /api/v1/conversations/:id/messages | GET | Busca mensagens da conversa para encontrar o contexto |


⚡ Buscar Mensagens (Avançado)

automations/advancedMessageFetcher/

Busca o histórico de mensagens de uma conversa aplicando filtros avançados nativamente. Muito superior à busca padrão, ideal para fluxos de IA (ChatGPT, Agentes AI) e economia de processamento.

  • Filtros Globais: Direção (Enviadas/Recebidas), Tipo (Texto, Imagem, Link, etc), Palavras-chave, Limite (últimas N mensagens).
  • Módulo WhatsApp API: Filtre mensagens encaminhadas, status (Lida/Recebida/Falhou), e tags ou estágios do contato remetente.
  • Módulo Instagram API: Filtre por conta conectada, posts/stories compartilhados (EXTERNAL_LINK) e tags do contato.
  • Módulo UAZAPI: Filtre por mensagens internas (equipe), editadas, primeira do ticket e assinatura do atendente.
  • Modo IA: Formata nativamente todas as mensagens extraídas em texto corrido (incluindo tratamento dinâmico de vcard e arquivos de mídia), estruturando o contexto da conversa e devolvendo em aiContext.

⚡ Roteador por Palavra-chave

automations/keywordRouter/

Verifica o texto da mensagem contra até 4 grupos de palavras-chave configuráveis e roteia para a saída correspondente.

Saídas: Grupo 1 · Grupo 2 · Grupo 3 · Grupo 4 · Nenhuma

  • Palavras-chave separadas por vírgula em cada grupo
  • Opção de diferenciação de maiúsculas/minúsculas
  • Retorna matchedGroup e matchedGroupIndex no output
  • Operação puramente local — sem chamadas de API

Lead & Pipeline

⚡ Verificar se Lead Existe

automations/leadExistsChecker/

Busca um lead e roteia para Sim (encontrado) ou Não.

Métodos de busca: WhatsApp · E-mail · Nome · CPF/CNPJ · Instagram · Campo Personalizado

| Rota usada | Método | Descrição | |---|---|---| | /api/v1/leads | GET | Busca com text search e varredura paginada | | /api/v1/conversations | GET | Fallback para busca via conversas (WhatsApp) | | /api/crm/additional-fields/lead/:leadId/:fieldId | GET | Verifica valor de campo personalizado |


⚡ Upsert de Lead

automations/leadUpsert/

Busca o lead pelo identificador informado; se não encontrar, cria automaticamente.

Saídas: Criado · Já Existia

Métodos de busca/criação: WhatsApp · E-mail · CPF/CNPJ

  • O valor de busca é automaticamente usado como phone, email ou document na criação
  • Campo JSON opcional para incluir campos extras na criação
  • Retorna os dados completos do lead em ambas as saídas

⚡ Verificar Duplicatas de Lead

automations/leadDuplicateChecker/

Varre toda a base de leads e encontra todos que possuem o mesmo identificador.

Saídas: Com Duplicatas (≥2 leads) · Único (0 ou 1 lead)

Métodos de busca: WhatsApp · E-mail · CPF/CNPJ

  • Retorna duplicateCount e a lista completa de leads duplicados
  • Varredura paginada de até 2.000 leads

⚡ Mover Lead na Pipeline

automations/leadMover/

Busca os negócios do lead, filtra pela pipeline desejada e move para a etapa destino.

| Rota usada | Método | Descrição | |---|---|---| | /api/v1/leads/:leadId/businesses | GET | Lista negócios do lead | | /api/v1/businesses/:id | PATCH | Move o negócio para o novo estágio | | /api/v1/leads/:leadId/notes | POST | Cria anotação opcional ao mover |

Recursos: seleção do negócio mais recente ou todos, dropdowns dinâmicos de pipelines e etapas.


⚡ Criar Negócio Condicional

automations/businessCreator/

Verifica se o lead já possui um negócio aberto na pipeline; se não tiver, cria automaticamente.

Saídas: Criado · Já Existe

| Rota usada | Método | Descrição | |---|---|---| | /api/v1/leads/:leadId/businesses | GET | Verifica negócios existentes | | /api/v1/businesses | POST | Cria o negócio se não houver um aberto |

  • Dropdowns dinâmicos para pipeline e etapa inicial
  • Retorna dados completos do negócio em ambas as saídas

⚡ If Condicional do Lead

automations/leadIfCondition/

Verifica uma condição no lead e roteia para Sim ou Não.

| Rota usada | Método | Descrição | |---|---|---| | /api/v1/leads/:leadId | GET | Lê dados do lead | | /api/crm/additionalFields | GET | Busca definições de campos (cache por execução) | | /api/crm/additional-fields/lead/:leadId/:fieldId | GET | Lê valor do campo no lead | | /api/v1/leads/:leadId/businesses | GET | Verifica pipeline/estágio |

Condições suportadas: possui/não possui tag · campo personalizado igual/contém valor · está em pipeline · está em estágio · está em pipeline e estágio.


⚡ Tracker do Lead

automations/leadTracker/

Define múltiplos campos personalizados em um lead de uma só vez, com controle de erro por campo.

| Rota usada | Método | Descrição | |---|---|---| | /api/crm/additional-fields/lead/:leadId/:fieldId | POST | Define valor de cada campo |


⚡ Detector de Primeira Mensagem

automations/firstMessageDetector/

Verifica se é o primeiro contato do lead com base no tempo de criação.

Saídas: Sim (primeira vez) · Não (recorrente)

| Rota usada | Método | Descrição | |---|---|---| | /api/v1/leads/:leadId | GET | Lê createdAt do lead |

  • Configura um limiar em minutos (padrão: 5 min)
  • Retorna isFirstMessage e leadAgeMinutes no output

Integrações Externas & IA

⚡ Transcritor de Áudio (IA)

automations/audioTranscriber/

Transcreve áudios enviados por leads (como mensagens de voz do WhatsApp) usando as melhores inteligências artificiais do mercado.

Provedores Suportados:

  • OpenAI Whisper: via arquivo binário (rápido, usando credencial nativa do n8n).

  • AssemblyAI: via URL pública do áudio, com polling adaptativo progressivo (extremamente rápido para áudios curtos e seguro contra timeouts para áudios de até 15 minutos).

  • Opção de postar a transcrição automaticamente como uma Mensagem Interna no chat do Datacrazy.

  • Seleção de modelo inteligente e detecção de idioma.


⚡ Meta Conversions API (Facebook Pixel)

automations/metaConversionsApi/

Dispara eventos de conversão offline (ex: Purchase, Lead) diretamente para o Pixel do Facebook/Meta de forma 100% server-side, driblando bloqueadores de anúncios (AdBlock) e restrições do iOS 14.

  • Identificação rica do lead enviando e-mail, telefone (hashed automaticamente no nó), nome, cidade, estado, IP e User Agent.
  • Suporte a dados de conversão como valor (value) e moeda (currency).
  • Ideal para alimentar as campanhas de tráfego pago baseadas em leads ganhos no CRM.

⚡ Sincronização Google Calendar

automations/activityGoogleSync/

Sincroniza automaticamente as atividades/tarefas (ex: reuniões, visitas, calls) criadas no CRM diretamente com o Google Agenda (Google Calendar).

  • Usa a credencial OAuth2 nativa do Google Calendar no n8n.
  • Permite mapeamento detalhado: Título, Descrição, Data/Hora de Início e Fim.
  • Adiciona e-mails de convidados automaticamente ao evento.

⚡ Roteador de Etapa por IA (AI Stage Router)

automations/leadAiStageRouter/

Facilita o roteamento de leads no funil usando Inteligência Artificial. Após um assistente LLM analisar a intenção do cliente (ex: "Quente", "Frio", "Agendou Reunião"), este nó direciona o fluxo para caminhos diferentes com base na análise.


Utilitários Locais

Estas automações operam sem chamadas de API — sem necessidade de credencial.

⚡ Verificar Horário de Atendimento

automations/businessHoursChecker/

Verifica se o momento atual está dentro do horário de atendimento configurado.

Saídas: Dentro do Horário · Fora do Horário

  • Configuração independente para dias úteis, sábado e domingo
  • Suporte a qualquer fuso horário (ex: America/Sao_Paulo, America/New_York)
  • Retorna withinBusinessHours, dayOfWeek e currentTimeMinutes

⚡ Formatar Número de WhatsApp

automations/phoneFormatter/

Normaliza números de telefone para o formato padrão (somente dígitos, com DDI).

  • Adiciona DDI automaticamente se ausente (padrão: 55 para Brasil)
  • Opção para remover o 9º dígito de celulares brasileiros
  • Retorna phoneFormatted, phoneOriginal e phoneDDI

🛠️ Desenvolvimento

Pré-requisitos

  • Node.js >= 18.10
  • npm >= 9

Configuração do Ambiente

# Clone o repositório
git clone https://github.com/growsalesai/n8n-nodes-datacrazy.git

# Instale as dependências
npm install

# Build para produção
npm run build

# Execute em modo de desenvolvimento (watch)
npm run dev

# Lint
npm run lint

Estrutura do Projeto

nodes/Datacrazy/
├── Datacrazy.node.ts              # Nó principal CRM
├── DatacrazyUtils.node.ts         # Nó de automações utilitárias
├── DatacrazyMsgSwitch.node.ts     # Switch de tipo de mensagem (standalone)
├── DatacrazyReplyCheck.node.ts    # Verificador de reply (standalone)
│
├── resources/                     # Recursos da API CRM (cada um com description + handler)
│   ├── leads/
│   │   ├── lead.description.ts
│   │   ├── lead.handler.ts
│   │   ├── leadSubResource.description.ts
│   │   └── leadSubResources.handler.ts
│   ├── businesses/
│   │   ├── business.description.ts
│   │   └── business.handler.ts
│   ├── businessActions/
│   │   ├── businessAction.description.ts
│   │   └── businessAction.handler.ts
│   ├── businessLossReasons/
│   │   ├── businessLossReason.description.ts
│   │   └── businessLossReason.handler.ts
│   ├── businessMetrics/
│   │   ├── businessMetrics.description.ts
│   │   └── businessMetrics.handler.ts
│   ├── tags/
│   │   ├── tag.description.ts
│   │   └── tag.handler.ts
│   ├── lists/
│   │   ├── list.description.ts
│   │   └── list.handler.ts
│   ├── products/
│   │   ├── product.description.ts
│   │   └── product.handler.ts
│   ├── activities/
│   │   ├── activity.description.ts
│   │   └── activity.handler.ts
│   ├── conversations/
│   │   ├── conversation.description.ts
│   │   └── conversation.handler.ts
│   ├── instances/
│   │   ├── instance.description.ts
│   │   └── instance.handler.ts
│   ├── attendants/
│   │   ├── attendant.description.ts
│   │   └── attendant.handler.ts
│   ├── pipelines/
│   │   ├── pipeline.description.ts
│   │   └── pipeline.handler.ts
│   ├── additionalFields/
│   │   ├── additionalField.description.ts
│   │   └── additionalField.handler.ts
│   ├── flows/
│   │   ├── flow.description.ts
│   │   └── flow.handler.ts
│   └── whatsappTemplates/
│       ├── whatsappTemplate.description.ts
│       └── whatsappTemplate.handler.ts
│
├── automations/                   # Nós utilitários de automação (cada um com description + handler)
│   ├── webhookParser/
│   ├── webhookExtractor/
│   ├── providerDetector/
│   ├── messageContext/
│   ├── messageTypeSwitch/
│   ├── replyChecker/
│   ├── keywordRouter/
│   ├── leadMover/
│   ├── leadIfCondition/
│   ├── leadTracker/
│   ├── leadExistsChecker/
│   ├── leadUpsert/
│   ├── leadDuplicateChecker/
│   ├── businessCreator/
│   ├── firstMessageDetector/
│   ├── businessHoursChecker/
│   └── phoneFormatter/
│
├── methods/
│   └── loadOptions.ts             # Carregamento dinâmico de dropdowns
└── utils/
    └── request.ts                 # Camada de requisições HTTP autenticadas
credentials/
└── DatacrazyApi.credentials.ts    # Definição da credencial

🐛 Reportar Issues

Encontrou um bug ou tem uma sugestão? Abra uma issue no repositório!

Como Reportar

  1. Verifique Issues Existentes: Antes de criar uma nova, veja se o problema já foi reportado em Issues.
  2. Crie uma Nova Issue: Se não encontrar, crie uma nova.

Informações Necessárias

Para Bugs:

  • Descrição: Descreva o problema claramente
  • Passos para Reproduzir: Liste os passos exatos
  • Comportamento Esperado: O que deveria acontecer
  • Comportamento Atual: O que está acontecendo
  • Ambiente:
    • Versão do n8n
    • Versão do @growsalesai/n8n-nodes-datacrazy
    • Sistema operacional
  • Logs de Erro: Inclua mensagens de erro completas

Para Solicitações de Recursos:

  • Descrição: Descreva o recurso desejado
  • Justificativa: Por que seria útil
  • Casos de Uso: Exemplos práticos de uso

Template de Issue

## Tipo
- [ ] Bug
- [ ] Solicitação de Recurso
- [ ] Melhoria
- [ ] Documentação

## Descrição
[Descreva o problema ou recurso]

## Ambiente (para bugs)
- Versão do n8n:
- Versão do @growsalesai/n8n-nodes-datacrazy:
- Sistema Operacional:
- Node.js:

## Passos para Reproduzir (para bugs)
1.
2.
3.

## Comportamento Esperado
[O que deveria acontecer]

## Comportamento Atual
[O que está acontecendo]

## Logs de Erro
[Cole os logs aqui]

## Informações Adicionais

🤝 Contribuição

Contribuições são bem-vindas!

  1. Faça um fork do repositório
  2. Crie uma branch para sua feature: git checkout -b feature/minha-feature
  3. Faça commit das suas alterações: git commit -m 'Adiciona minha feature'
  4. Envie para a branch: git push origin feature/minha-feature
  5. Abra um Pull Request

👨‍💻 Desenvolvedor

Desenvolvido por Vitor Maciel

📄 Licença

Este projeto está licenciado sob a MIT License.