whazing-api

Whazing community node for n8n

Package Information

Released: this month
Downloads: 37 weekly / 487 monthly
Latest Version: 1.0.14
Author: Carlos Eduardo

Documentation

Banner image

n8n-nodes-whazing-api

Este node permite a integração completa com a API Whazing, oferecendo automação de WhatsApp, tickets, gerenciamento multi-tenant (Admin), Kanban Pro, checklist e faturas/cobranças.

📌 Versão atual

  • 1.0.13 — 24/09/2026
  • 📝 Novo Módulo Integrado: Anotações (Ticket Notes) (/ticketnote/* — 5 operações).
  • 🎯 100% de Cobertura da API Whazing: todos os módulos e endpoints oficiais implementados.
  • 🏆 100% em Conformidade com o Linter Oficial do n8n (npm run lint com 0 erros).
  • 🛡️ Tipagem TypeScript Estrita e tratamento amigável de erros em português.
  • 🔒 100% Retrocompatível com fluxos em produção.

🚀 Novidades da Versão 1.0.13

🆕 Módulo de Anotações (Ticket Notes) (/ticketnote/* — 5 operações)

Gerencie anotações e mensagens internas da equipe diretamente pelos fluxos do n8n:

  • Criar Anotação: cria anotação interna no atendimento por ID do Ticket ou por Número do WhatsApp (anexando ao último ticket ativo no canal).
  • Menções e Notificações: suporte a menções de usuários (userIdNotification) e equipes (equipeIdNotification) gerando notificações push e chat interno.
  • Consultar Anotação: busca detalhes de uma anotação por ID.
  • Apagar Anotação: remove uma anotação do sistema por ID.
  • Listar Anotações do Ticket: obtém todo o histórico de notas de um ticket específico em ordem cronológica reversa.
  • Listar Anotações do Contato: consulta todas as notas de um cliente em todos os seus tickets históricos (busca por ID do Contato ou Número de WhatsApp).

🚀 Versão 1.0.12 (Anterior)

🆕 Novos Recursos da API Whazing

1. 📅 Agenda e Compromissos (/agenda/* — 8 operações)

  • Listar calendários configurados
  • Listar profissionais da equipe
  • Listar serviços oferecidos
  • Criar compromisso (por serviço cadastrado ou horário manual)
  • Consultar detalhes de um compromisso
  • Listar compromissos com filtros por período e número
  • Atualizar horário, status ou dados do compromisso
  • Cancelar compromisso

2. ⏰ Agendamento De Mensagem (/schedule e /schedules — 4 operações)

  • Criar agendamento futuro (suporte completo a Texto, Mídia por URL/Upload binário, Templates e Botões)
  • Consultar status de agendamento por ID
  • Listar agendamentos com filtros
  • Cancelar agendamento antes do envio

3. 💬 SMS (/sendsms — 1 operação)

  • Envio direto de mensagens via SMS

🏆 Conformidade e Estabilidade

  • ✅ Linter Oficial Aprovado: 100% aderente às diretrizes da comunidade n8n (n8n-node lint).
  • ✅ Subtítulo no Canvas: Exibição imediata da operação e recurso ativos no nó.
  • ✅ Tipagem Estrita e Tratamento de Erros: Remoção completa de any, adição de IHttpError e NodeApiError.
  • ✅ Organização Visual: Menus e coleções em ordem alfabética.

🚀 Versão 1.0.11 (Anterior)

Checklist do Kanban Pro (novo)

  • ✅ Listar todos os itens de checklist de um card.
  • ✅ Criar item de checklist com texto, responsável e data limite.
  • ✅ Atualizar item (texto, status concluído com opção "Não Alterar", responsável, data).
  • ✅ Deletar item de checklist por ID.
  • ✅ Reordenar itens de checklist enviando a nova lista de IDs em ordem.

Campos Avançados em Atualizar Card

  • Descrição, equipe, contato vinculado, ticket vinculado, valor do negócio.
  • Data de início, horas estimadas, horas registradas.
  • Cor e imagem de capa, etiquetas (labelIds), campos customizados (JSON).

Correções de Lógica

  • setChatBot corrigido: envia chatbotId (número) ou null ao desativar.
  • sendTemplate / sendTemplateParams: destinatário (number / ticketId) restaurado.
  • Kanban: tags mapeado corretamente para labelIds no payload.
  • Datas (dueDate, startDate, faturas, NFS-e) sempre enviadas como YYYY-MM-DD.
  • sendContact: formatação de telefone aplicada antes do envio.
  • translateApiError: não quebra mais quando body.error é boolean.
  • Valor 0 aceito em estimatedHours e loggedHours.

Qualidade

  • Logs de debug removidos de GenericFunctions.ts.
  • Erros explícitos para operações desconhecidas em msgBaileys, contact, ticket, channel e kanban.
  • Funções utilitárias centralizadas: formatDateParam() e parseOptionalId().

🗂️ Histórico de versões

Consulte o changelog completo em UPDATE_CHANGELOG.md para ver cada versão e detalhe de release.

🛠️ Comandos Úteis

Se você está desenvolvendo ou instalando este node localmente:

1. Instalar Dependências

npm install

2. Compilar o Código (Build)

Sempre que fizer uma alteração, você deve compilar:

npm run build

3. Iniciar n8n Localmente com o Node

Use o script que criamos para carregar o node automaticamente:

./iniciar_whazing.bat

(Ou execute npx n8n start após configurar a variável N8N_CUSTOM_EXTENSIONS para a pasta atual)

4. Publicar no NPM (Apenas para Administradores)

npm publish

📦 Funcionalidades Principais

  • Mensagens: Texto, Arquivo (URL/Base64/Upload), Botões, Listas, Stickers, Localização e Templates Oficiais.
  • Anotações (Ticket Notes): Criar, consultar, apagar e listar notas internas em tickets e contatos, com suporte a menções.
  • Agenda: Gerenciamento de calendários, profissionais, catálogo de serviços e compromissos.
  • Agendamento De Mensagem: Programação de envios automáticos para data/hora futura com suporte a todos os tipos de mensagem.
  • SMS: Disparo direto de mensagens via SMS.
  • Kanban Pro & Checklist: Criar/Mover cards automaticamente, gerenciar funil de vendas, checklists de tarefas e campos avançados.
  • Tickets: Criar atendimentos, mudar atendentes, gerenciar filas e chatbots.
  • Contatos: Gerenciar CRM, carteiras, tags e follow-ups.
  • Faturas e PIX: Gerar cobranças avulsas, listar faturas em aberto e gerar QR Code PIX.
  • NFS-e: Gestão de dados fiscais e emissão/consulta de notas fiscais de serviço.
  • Admin: Gerenciamento multi-tenant de empresas, planos, usuários e faturamento.

Quick Start (Original Starter)

[!TIP]
New to building n8n nodes? The fastest way to get started is with npm create @n8n/node. This command scaffolds a complete node package for you using the @n8n/node-cli.

To create a new node package from scratch:

npm create @n8n/node

Already using this starter? Start developing with:

npm run dev

This starts n8n with your nodes loaded and hot reload enabled.

What's Included

This starter repository includes two example nodes to learn from:

  • Example Node - A simple starter node that shows the basic structure with a custom execute method
  • GitHub Issues Node - A complete, production-ready example built using the declarative style:
    • Low-code approach - Define operations declaratively without writing request logic
    • Multiple resources (Issues, Comments)
    • Multiple operations (Get, Get All, Create)
    • Two authentication methods (OAuth2 and Personal Access Token)
    • List search functionality for dynamic dropdowns
    • Proper error handling and typing
    • Ideal for HTTP API-based integrations

[!TIP]
The declarative/low-code style (used in GitHub Issues) is the recommended approach for building nodes that interact with HTTP APIs. It significantly reduces boilerplate code and handles requests automatically.

Browse these examples to understand both approaches, then modify them or create your own.

Finding Inspiration

Looking for more examples? Check out these resources:

  • npm Community Nodes - Browse thousands of community-built nodes on npm using the n8n-community-node-package tag
  • n8n Built-in Nodes - Study the source code of n8n's official nodes for production-ready patterns and best practices
  • n8n Credentials - See how authentication is implemented for various services

These are excellent resources to understand how to structure your nodes, handle different API patterns, and implement advanced features.

Prerequisites

Before you begin, install the following on your development machine:

Required

Recommended

[!NOTE]
The @n8n/node-cli is included as a dev dependency and will be installed automatically when you run npm install. The CLI includes n8n for local development, so you don't need to install n8n globally.

Getting Started with this Starter

Follow these steps to create your own n8n community node package:

1. Create Your Repository

Generate a new repository from this template, then clone it:

git clone https://github.com/<your-organization>/<your-repo-name>.git
cd <your-repo-name>

2. Install Dependencies

npm install

This installs all required dependencies including the @n8n/node-cli.

3. Explore the Examples

Browse the example nodes in nodes/ and credentials/ to understand the structure:

4. Build Your Node

Edit the example nodes to fit your use case, or create new node files by copying the structure from nodes/Example/.

[!TIP]
If you want to scaffold a completely new node package, use npm create @n8n/node to start fresh with the CLI's interactive generator.

5. Configure Your Package

Update package.json with your details:

  • name - Your package name (must start with n8n-nodes-)
  • author - Your name and email
  • repository - Your repository URL
  • description - What your node does

Make sure your node is registered in the n8n.nodes array.

6. Develop and Test Locally

Start n8n with your node loaded:

npm run dev

This command runs n8n-node dev which:

  • Builds your node with watch mode
  • Starts n8n with your node available
  • Automatically rebuilds when you make changes
  • Opens n8n in your browser (usually http://localhost:5678)

You can now test your node in n8n workflows!

[!NOTE]
Learn more about CLI commands in the @n8n/node-cli documentation.

7. Lint Your Code

Check for errors:

npm run lint

Auto-fix issues when possible:

npm run lint:fix

8. Build for Production

When ready to publish:

npm run build

This compiles your TypeScript code to the dist/ folder.

9. Prepare for Publishing

Before publishing:

  1. Update documentation: Replace this README with your node's documentation. Use README_TEMPLATE.md as a starting point.
  2. Update the LICENSE: Add your details to the LICENSE file.
  3. Test thoroughly: Ensure your node works in different scenarios.

10. Publish to npm

Publish your package to make it available to the n8n community:

npm publish

Learn more about publishing to npm.

11. Submit for Verification (Optional)

Get your node verified for n8n Cloud:

  1. Ensure your node meets the requirements:

    • Uses MIT license ✅ (included in this starter)
    • No external package dependencies
    • Follows n8n's design guidelines
    • Passes quality and security review
  2. Submit through the n8n Creator Portal

Benefits of verification:

  • Available directly in n8n Cloud
  • Discoverable in the n8n nodes panel
  • Verified badge for quality assurance
  • Increased visibility in the n8n community

Available Scripts

This starter includes several npm scripts to streamline development:

Script Description
npm run dev Start n8n with your node and watch for changes (runs n8n-node dev)
npm run build Compile TypeScript to JavaScript for production (runs n8n-node build)
npm run build:watch Build in watch mode (auto-rebuild on changes)
npm run lint Check your code for errors and style issues (runs n8n-node lint)
npm run lint:fix Automatically fix linting issues when possible (runs n8n-node lint --fix)
npm run release Create a new release (runs n8n-node release)

[!TIP]
These scripts use the @n8n/node-cli under the hood. You can also run CLI commands directly, e.g., npx n8n-node dev.

Troubleshooting

My node doesn't appear in n8n

  1. Make sure you ran npm install to install dependencies
  2. Check that your node is listed in package.json under n8n.nodes
  3. Restart the dev server with npm run dev
  4. Check the console for any error messages

Linting errors

Run npm run lint:fix to automatically fix most common issues. For remaining errors, check the n8n node development guidelines.

TypeScript errors

Make sure you're using Node.js v22 or higher and have run npm install to get all type definitions.

Resources

Contributing

Have suggestions for improving this starter? Open an issue or submit a pull request!

License

MIT

Discussion