n8n-nodes-painelpuma
v1.0.20
Published
n8n community node para integração completa com o PainelPuma (BX Digital)
Readme
n8n-nodes-painelpuma
Community node para o n8n com integração completa ao sistema PainelPuma (BX Digital).
Recursos cobertos (25 recursos / ~80 operações)
| Recurso | Operações |
|---------|-----------|
| Autenticação | Login, Obter Perfil, Atualizar Perfil, Validar Token, Logout |
| Médicos | Listar, Obter, Criar, Atualizar, Deletar, Importar em Lote |
| Pacientes | Listar, Obter, Criar, Atualizar, Deletar, Estatísticas |
| Agendamentos | Listar, Criar, Criar Combinado, Atualizar Status, Deletar, Slots, Ocupados, Indisponíveis, Config (multi-agenda + config_id), Salvar/Excluir Agenda, Buscar/Deletar/Atualizar por Paciente |
| Produtos | Listar, Criar, Atualizar, Deletar, Importar em Lote |
| Categorias | Listar, Obter, Criar, Atualizar, Deletar, Médicos da Categoria, Produtos da Categoria, Importar |
| Convênios | CRUD completo + Importar em Lote |
| Endereços | CRUD completo + Importar em Lote |
| FAQs | CRUD completo + Importar em Lote |
| Condutas | CRUD completo + Importar em Lote |
| Quebras de Objeção | CRUD completo + Importar em Lote |
| Informações Gerais | CRUD completo + Importar em Lote |
| Busca Avançada | Busca por texto, categoria, médico, endereço, faixa de valor |
| Dashboard | Estatísticas, Gráficos, Leads Stats, Leads Charts |
| Estatísticas e Exportação | Estatísticas globais, Exportar dados por tipo |
| Configurações | Config pública, Listar, Atualizar Tema, Salvar em lote |
| Usuários | CRUD completo (requer admin) |
| Tokens de API | Listar, Criar, Deletar |
| Logs | Listar, Estatísticas, Limpar |
| Backup | Listar Seções, Exportar, Restaurar |
| IA Config | Obter, Atualizar |
| Evolution (WhatsApp) | Configs CRUD, Instâncias, Conectar, Status, Logout |
| WuzAPI (WhatsApp) | Configs CRUD, Proxy Users, Conectar, QR Code |
| Google Calendar | Config, Auth URL, Callback OAuth, Calendários, Sincronizar, Desconectar |
| SIDS / Kommo | Listar, Buscar por Chat ID, Atualizar, Deletar |
Instalação
Opção 1 — Via n8n Community Nodes (recomendado)
- No n8n, acesse Settings → Community Nodes
- Clique em Install
- Digite o nome do pacote:
n8n-nodes-painelpuma - Confirme a instalação
Opção 2 — Instalação local (desenvolvimento)
# Na pasta de dados do n8n (geralmente ~/.n8n)
cd ~/.n8n/nodes
npm install /caminho/para/n8n-nodes-painelpumaOu com link simbólico para desenvolvimento:
cd D:\PainelPuma\n8n-nodes-painelpuma
npm run build
npm link
cd ~/.n8n/nodes # ou %APPDATA%\n8n\nodes no Windows
npm link n8n-nodes-painelpumaConfiguração de Credenciais
Após instalar, configure as credenciais PainelPuma API:
| Campo | Descrição | Exemplo |
|-------|-----------|---------|
| URL Base | URL do servidor PainelPuma | https://meu-painel.com ou http://localhost:3001 |
| Token de Acesso | JWT (obtido via operação Login) ou token puma_* | eyJhbGci... ou puma_abc123 |
Dica: Use o nó PainelPuma com operação Autenticação → Fazer Login para obter o JWT e configure-o nas credenciais.
Exemplos de Uso
Buscar slots disponíveis para um médico
- Adicione o nó PainelPuma
- Recurso:
Agendamentos→ Operação:Obter Slots Disponíveis - Selecione o Médico na lista (carregada da API)
- Opcional: em Agenda (config_id) escolha uma agenda específica ou deixe Todas as agendas (mesclar)
- Preencha Data Início e Data Fim
Múltiplas agendas por médico
- Obter Config da Agenda lista todas as agendas ativas; use Agenda (config_id) para ver o detalhe de uma só
- Salvar Config da Agenda: modo Criar Nova Agenda (
criar_nova) ou Atualizar com select da agenda existente - Excluir Agenda do Médico:
DELETE /api/agendamentos/config/:config_id(soft delete)
Criar agendamento com paciente novo
- Recurso:
Agendamentos→ Operação:Criar Combinado - Preencha o JSON com dados do paciente + agendamento:
{
"paciente": { "nome": "João Silva", "celular": "11999999999" },
"medico_id": "1",
"data_agendamento": "2026-05-10",
"hora_inicio": "09:00"
}Busca avançada de produtos
- Recurso:
Busca Avançada→ Operação:Busca Avançada - Preencha os parâmetros desejados (texto, categoria, médico, etc.)
Desenvolvimento
# Clonar / abrir a pasta
cd D:\PainelPuma\n8n-nodes-painelpuma
# Instalar dependências
npm install
# Compilar TypeScript
npm run build
# Compilar em modo watch
npm run dev
# Lint
npm run lint
npm run lintfixEstrutura do projeto
n8n-nodes-painelpuma/
├── credentials/
│ └── PainelPumaApi.credentials.ts # Definição das credenciais
├── nodes/
│ └── PainelPuma/
│ ├── PainelPuma.node.ts # Nó principal (execute + routing)
│ ├── GenericFunctions.ts # Helper de requisições HTTP
│ └── descriptions/ # Parâmetros por recurso
│ ├── auth.description.ts
│ ├── medicos.description.ts
│ ├── pacientes.description.ts
│ ├── agendamentos.description.ts
│ ├── produtos.description.ts
│ ├── crud-simples.description.ts # categorias, convênios, endereços
│ ├── conteudo.description.ts # FAQs, condutas, quebras, info
│ ├── admin.description.ts # usuários, tokens, logs, backup, IA, config, dashboard, stats, busca
│ └── whatsapp.description.ts # Evolution, WuzAPI, Google Calendar, SIDS
├── dist/ # Arquivos compilados (gerado pelo build)
├── package.json
├── tsconfig.json
└── README.mdLicença
MIT — BX Digital
