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

@setup-automatizado/n8n-nodes-zedaapi

v0.3.1

Published

n8n community node for Zé da API — Complete WhatsApp integration powered by whatsmeow. 163 operations across 19 resources.

Readme

@setup-automatizado/n8n-nodes-zedaapi

A integração WhatsApp mais completa para n8n

163 operações · 19 recursos · Compatível com AI Agent

npm version license n8n node TypeScript

Portugues · Espanol · English


Visão Geral

Node comunitário para n8n que integra com o Zé da API — uma API WhatsApp de alta performance construída com whatsmeow. Envie mensagens, gerencie grupos, comunidades, newsletters, configure webhooks e muito mais — tudo direto nos seus workflows n8n.

Destaques:

  • 163 operações em 19 recursos — o node WhatsApp mais completo disponível
  • Compatível com AI AgentusableAsTool: true para integração com LLMs
  • Trigger por webhook — receba 13 tipos de eventos em tempo real
  • Roteamento declarativo — zero código customizado, implementação 100% nativa do n8n
  • Autenticação dupla — token da instância no path + header Client-Token

Instalação

Via Interface do n8n

  1. Acesse Configurações > Nodes da Comunidade
  2. Selecione Instalar um node da comunidade
  3. Digite: @setup-automatizado/n8n-nodes-zedaapi
  4. Aceite os riscos e instale

Via CLI

cd ~/.n8n
npm install @setup-automatizado/n8n-nodes-zedaapi

Reinicie o n8n após a instalação.

Configuração

Credenciais

Crie uma nova credencial Zé da API com os seguintes campos:

| Campo | Descrição | |---|---| | Base URL | URL do seu servidor Zé da API (padrão: http://localhost:8080) | | Instance ID | UUID da sua instância WhatsApp | | Instance Token | Token de autenticação da instância | | Client Token | CLIENT_AUTH_TOKEN global da configuração do servidor |

Uso com AI Agent

Para usar este node como ferramenta de AI Agent, defina a variável de ambiente:

N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true

Recursos & Operações

| Operação | Método | Endpoint | |---|---|---| | Enviar Texto | POST | /send-text | | Enviar Imagem | POST | /send-image | | Enviar Vídeo | POST | /send-video | | Enviar Áudio | POST | /send-audio | | Enviar Sticker | POST | /send-sticker | | Enviar GIF | POST | /send-gif | | Enviar Documento | POST | /send-document | | Enviar PTV | POST | /send-ptv | | Enviar Localização | POST | /send-location | | Enviar Contato | POST | /send-contact | | Enviar Contatos | POST | /send-contacts | | Enviar Link | POST | /send-link |

| Operação | Método | Endpoint | |---|---|---| | Enviar Lista de Botões | POST | /send-button-list | | Enviar Botões de Ação | POST | /send-button-actions | | Enviar Lista de Opções | POST | /send-option-list | | Enviar Carrossel | POST | /send-carousel | | Enviar Botão PIX | POST | /send-button-pix | | Enviar Botão OTP | POST | /send-button-otp |

| Operação | Método | Endpoint | |---|---|---| | Enviar Reação | POST | /send-reaction | | Remover Reação | POST | /send-remove-reaction | | Encaminhar Mensagem | POST | /forward-message | | Deletar Mensagem | DELETE | /messages | | Marcar como Lida | POST | /read-message | | Fixar Mensagem | POST | /pin-message | | Modificar Chat | POST | /modify-chat |

| Operação | Método | Endpoint | |---|---|---| | Enviar Enquete | POST | /send-poll | | Votar em Enquete | POST | /send-poll-vote |

| Operação | Método | Endpoint | |---|---|---| | Enviar Evento | POST | /send-event | | Editar Evento | POST | /send-edit-event | | Responder Evento | POST | /send-event-response |

| Operação | Método | Endpoint | |---|---|---| | Enviar Status Texto | POST | /send-text-status | | Enviar Status Imagem | POST | /send-image-status | | Enviar Status Áudio | POST | /send-audio-status | | Enviar Status Vídeo | POST | /send-video-status |

Perfil (8):

| Operação | Método | Endpoint | |---|---|---| | Obter Categorias Disponíveis | GET | /business/available-categories | | Obter Perfil do Negócio | GET | /business/profile | | Definir Horário de Funcionamento | POST | /business/hours | | Definir Categorias | POST | /business/categories | | Definir Endereço da Empresa | POST | /business/company-address | | Definir Descrição da Empresa | POST | /business/company-description | | Definir Email da Empresa | POST | /business/company-email | | Definir Websites da Empresa | POST | /business/company-websites |

Tags/Etiquetas (7):

| Operação | Método | Endpoint | |---|---|---| | Adicionar Tag ao Chat | PUT | /chats/{phone}/tags/{tag}/add | | Criar Tag | POST | /business/create-tag | | Deletar Tag | DELETE | /business/tag/{tagId} | | Editar Tag | POST | /business/edit-tag/{tagId} | | Obter Cores de Tags | GET | /business/tags/colors | | Listar Tags | GET | /tags | | Remover Tag do Chat | PUT | /chats/{phone}/tags/{tag}/remove |

Produtos/Catálogo (6):

| Operação | Método | Endpoint | |---|---|---| | Criar Produto | POST | /products | | Deletar Produto | DELETE | /products/{productId} | | Obter Produto | GET | /products/{productId} | | Obter Produtos por Telefone | GET | /catalogs/{phone} | | Listar Produtos | GET | /catalogs | | Salvar Config do Catálogo | POST | /catalogs/config |

Coleções (7):

| Operação | Método | Endpoint | |---|---|---| | Adicionar Produto à Coleção | POST | /catalogs/collection/add-product | | Criar Coleção | POST | /catalogs/collection | | Deletar Coleção | DELETE | /catalogs/collection/{collectionId} | | Editar Coleção | POST | /catalogs/collection-edit/{collectionId} | | Listar Produtos da Coleção | GET | /catalogs/collection-products/{phone} | | Listar Coleções | GET | /catalogs/collection | | Remover Produto da Coleção | POST | /catalogs/collection/remove-product |

| Operação | Método | Endpoint | |---|---|---| | Adicionar Contato | POST | /add-contact | | Bloquear/Desbloquear | POST | /modify-blocked | | Obter Metadados | GET | /contacts/{phone}/metadata | | Obter Foto de Perfil | GET | /contacts/{phone}/profile-picture | | Listar Contatos | GET | /contacts | | Verificar Telefone | GET | /phone-exists/{phone} | | Verificar Telefones em Lote | POST | /phone-exists-batch | | Remover Contato | POST | /remove-contact | | Resolver LIDs | POST | /resolve-lids |

| Operação | Método | Endpoint | |---|---|---| | Listar Chats | GET | /chats | | Salvar Notas do Chat | POST | /chats/{phone}/notes |

| Operação | Método | Endpoint | |---|---|---| | Listar Grupos | GET | /groups | | Criar Grupo | POST | /create-group | | Atualizar Nome | POST | /update-group-name | | Atualizar Foto | POST | /update-group-photo | | Atualizar Descrição | POST | /update-group-description | | Atualizar Configurações | POST | /update-group-settings | | Adicionar Participante | POST | /add-participant | | Remover Participante | POST | /remove-participant | | Aprovar Participante | POST | /approve-participant | | Rejeitar Participante | POST | /reject-participant | | Adicionar Admin | POST | /add-admin | | Remover Admin | POST | /remove-admin | | Sair do Grupo | POST | /leave-group | | Obter Metadados | GET | /group-metadata/{id} | | Obter Metadados Light | GET | /light-group-metadata/{id} | | Obter Link de Convite | POST | /group-invitation-link/{id} | | Redefinir Link de Convite | POST | /redefine-invitation-link/{id} | | Obter Metadados do Convite | GET | /group-invitation-metadata | | Aceitar Convite | GET | /accept-invite-group |

| Operação | Método | Endpoint | |---|---|---| | Listar | GET | /communities | | Criar | POST | /communities | | Deletar | DELETE | /communities/{id} | | Vincular Grupos | POST | /communities/link | | Desvincular Grupos | POST | /communities/unlink | | Obter Metadados | GET | /communities-metadata/{id} | | Atualizar Descrição | POST | /update-community-description | | Atualizar Configurações | POST | /communities/settings | | Redefinir Link de Convite | POST | /redefine-invitation-link/{id} |

| Operação | Método | Endpoint | |---|---|---| | Listar | GET | /newsletter | | Criar | POST | /create-newsletter | | Deletar | DELETE | /delete-newsletter | | Seguir | PUT | /follow-newsletter | | Deixar de Seguir | PUT | /unfollow-newsletter | | Silenciar | PUT | /mute-newsletter | | Reativar | PUT | /unmute-newsletter | | Obter Metadados | GET | /newsletter/metadata/{id} | | Atualizar Nome | POST | /update-newsletter-name | | Atualizar Descrição | POST | /update-newsletter-description | | Atualizar Imagem | POST | /update-newsletter-picture | | Atualizar Configurações | POST | /newsletter/settings/{id} | | Pesquisar | POST | /search-newsletter | | Enviar Convite Admin | POST | /send-newsletter-admin-invite | | Aceitar Convite Admin | POST | /newsletter/accept-admin-invite/{id} | | Remover Admin | POST | /newsletter/remove-admin/{id} | | Revogar Convite Admin | POST | /newsletter/revoke-admin-invite/{id} | | Transferir Propriedade | POST | /newsletter/transfer-ownership/{id} |

| Operação | Método | Endpoint | |---|---|---| | Obter Status | GET | /status | | Obter QR Code | GET | /qr-code | | Obter QR Code Imagem | GET | /qr-code/image | | Obter Info do Dispositivo | GET | /device | | Obter Código do Telefone | GET | /phone-code/{phone} | | Reiniciar | POST | /restart | | Desconectar | POST | /disconnect | | Atualizar Leitura Automática | PUT | /update-auto-read-message | | Atualizar Rejeição Automática de Chamadas | PUT | /update-call-reject-auto | | Atualizar Mensagem de Rejeição | PUT | /update-call-reject-message |

| Operação | Método | Endpoint | |---|---|---| | Atualizar Nome | PUT | /profile-name | | Atualizar Foto | PUT | /profile-picture | | Atualizar Descrição | PUT | /profile-description |

| Operação | Método | Endpoint | |---|---|---| | Obter Configurações | GET | /privacy-settings | | Atualizar Adicionar em Grupo | PUT | /privacy-settings/group-add | | Atualizar Visto por Último | PUT | /privacy-settings/last-seen | | Atualizar Status | PUT | /privacy-settings/status | | Atualizar Foto de Perfil | PUT | /privacy-settings/profile-photo | | Atualizar Confirmação de Leitura | PUT | /privacy-settings/read-receipts | | Atualizar Online | PUT | /privacy-settings/online | | Atualizar Chamadas | PUT | /privacy-settings/call-add |

| Operação | Método | Endpoint | |---|---|---| | Obter Config | GET | /proxy | | Obter Saúde | GET | /proxy/health | | Remover | DELETE | /proxy | | Trocar | POST | /proxy/swap | | Testar | POST | /proxy/test | | Atualizar | PUT | /update-proxy |

| Operação | Método | Endpoint | |---|---|---| | Listar Fila | GET | /queue | | Obter Contagem | GET | /queue/count | | Limpar Fila | DELETE | /queue | | Cancelar Mensagem | DELETE | /queue/{zaapId} |

| Operação | Método | Endpoint | |---|---|---| | Obter Status das Mensagens | GET | /messages-status | | Obter Estatísticas | GET | /messages-status/stats | | Flush Status | POST | /messages-status/flush | | Limpar Cache | DELETE | /messages-status/cache |

| Operação | Método | Endpoint | |---|---|---| | Atualizar Todos os Webhooks | PUT | /update-every-webhooks | | Atualizar Webhook de Presença | PUT | /update-webhook-chat-presence | | Atualizar Webhook de Conexão | PUT | /update-webhook-connected | | Atualizar Webhook de Entrega | PUT | /update-webhook-delivery | | Atualizar Webhook de Desconexão | PUT | /update-webhook-disconnected | | Atualizar Webhook de Status | PUT | /update-webhook-message-status | | Atualizar Notificar Enviados | PUT | /update-notify-sent-by-me | | Atualizar Webhook Recebido+Entrega | PUT | /update-webhook-received-delivery | | Atualizar Webhook de Recebimento | PUT | /update-webhook-received |

Eventos do Trigger

O node Zé da API Trigger recebe eventos em tempo real via webhook:

| Evento | Descrição | |---|---| | Mensagem Recebida | Mensagens de entrada | | Mensagem Enviada | Mensagens de saída | | Entrega de Mensagem | Confirmações de entrega | | Leitura de Mensagem | Confirmações de leitura | | Reação a Mensagem | Reações com emoji | | Mensagem Revogada | Mensagens deletadas | | Chamada | Chamadas recebidas | | Presença no Chat | Indicadores de digitação | | Status da Conexão | Online/offline | | Atualização de Grupo | Alterações em metadados | | Voto em Enquete | Eventos de votação | | Status/Stories | Atualizações de status |

Arquitetura

@setup-automatizado/n8n-nodes-zedaapi
├── credentials/
│   └── ZedaApi.credentials.ts        # Auth dupla (path + header)
├── nodes/ZedaApi/
│   ├── ZedaApi.node.ts                # Node declarativo principal (19 recursos)
│   ├── ZedaApiTrigger.node.ts         # Trigger webhook (13 eventos)
│   ├── types.ts                       # Interfaces TypeScript
│   ├── resources/                     # 19 módulos de recursos
│   └── shared/                        # Descrições reutilizáveis & transporte
└── icons/
    ├── zedaapi.svg                    # Tema claro
    └── zedaapi.dark.svg               # Tema escuro

Stack Técnica

| Tecnologia | Propósito | |---|---| | TypeScript | Modo strict, segurança total de tipos | | n8n Declarative API | Zero código customizado — roteamento puro | | n8n Node CLI | Ferramentas de build, lint e release | | whatsmeow | API WhatsApp Web em Go (backend) | | chi-router | Roteamento HTTP no lado da API |

Desenvolvimento

npm install          # Instalar dependências
npm run dev          # Iniciar n8n com hot reload
npm run build        # Build para produção
npm run lint         # Lint (regras strict do n8n)
npm run release      # Criar release

Contribuindo

  1. Faça um fork do repositório
  2. Crie sua branch (git checkout -b feat/feature-incrivel)
  3. Commit com Conventional Commits
  4. Push para a branch (git push origin feat/feature-incrivel)
  5. Abra um Pull Request

Links

Licença

MIT © Setup Automatizado