As Comunidades do WhatsApp permitem agrupar até 50 grupos sob um mesmo teto. Gerenciar tudo manualmente pelo celular é inviável em escala. Neste tutorial, você aprende a criar e gerenciar comunidades WhatsApp via API usando a ZAP API — incluindo criação, adição de grupos, participantes e newsletters.
Endpoints disponíveis (15 total)
POST /instances/{id}/communities/create— criar comunidadeGET /instances/{id}/communities— listarGET /instances/{id}/communities/{communityId}— metadadosPUT /instances/{id}/communities/{communityId}— atualizarDELETE /instances/{id}/communities/{communityId}— desativarPOST .../groups/add— adicionar grupoPOST .../groups/remove— remover grupoPOST .../participants/add— adicionar participantesPOST .../participants/remove— remover participantesPOST /instances/{id}/newsletters/create— criar newsletterGET /instances/{id}/newsletters— listar newslettersGET .../newsletters/{newsletterId}— detalhesPUT .../newsletters/{newsletterId}— atualizarPOST .../newsletters/{newsletterId}/mute— silenciarDELETE .../newsletters/{newsletterId}— excluir
Criar comunidade e adicionar grupos
const axios = require('axios');
const api = axios.create({
baseURL: 'https://zap-api.tech/v1/instances/inst_seu_id_aqui',
headers: { Authorization: 'Bearer tk_seu_token_aqui' }
});
// Criar comunidade
async function criarComunidade(nome, descricao) {
const { data } = await api.post('/communities/create', { name: nome, description: descricao });
console.log('Comunidade:', data.communityId);
return data;
}
// Adicionar grupo existente à comunidade
async function adicionarGrupo(communityId, groupId) {
return api.post(`/communities/${communityId}/groups/add`, { groupId });
}
// Adicionar participantes
async function adicionarParticipantes(communityId, phones) {
return api.post(`/communities/${communityId}/participants/add`, { participants: phones });
}
// Exemplo completo: escola
async function configurarEscola() {
const comunidade = await criarComunidade('Escola ABC 2026', 'Comunidade oficial');
// Criar grupo e adicionar à comunidade
const turma = await api.post('/groups/create', { name: 'Turma A - 1o Ano', participants: [] });
await adicionarGrupo(comunidade.communityId, turma.data.groupId);
// Criar newsletter
const newsletter = await api.post('/newsletters/create', {
name: 'Escola ABC - Comunicados',
description: 'Comunicados oficiais'
});
console.log('Newsletter:', newsletter.data.inviteLink);
}
configurarEscola();
Gerenciar newsletters
// Listar newsletters
async function listarNewsletters() {
const { data } = await api.get('/newsletters');
return data;
}
// Atualizar newsletter
async function atualizarNewsletter(id, nome, descricao) {
return api.put(`/newsletters/${id}`, { name: nome, description: descricao });
}
// Excluir newsletter
async function excluirNewsletter(id) {
return api.delete(`/newsletters/${id}`);
}
Cenários de uso
- Escolas: grupos por turma, newsletter de avisos
- Empresas: grupos por departamento
- Igrejas: grupos por ministério
- Franquias: grupos por unidade, comunicação centralizada
- Cursos online: grupos por módulo/nível
Webhooks de comunidade
Receba notificações automáticas: group.join, group.leave, group.update, newsletter.update. Configure seu endpoint de webhook.
FAQ
- Quantos grupos por comunidade?
Até 50, mais o grupo de avisos automático. - Preciso ser admin dos grupos?
Sim. A conta conectada precisa ser admin para adicionar grupos à comunidade. - Diferença entre comunidade e newsletter?
Comunidade agrupa grupos bidirecionais. Newsletter é canal unidirecional — qualquer pessoa segue sem entrar em grupo. - Qual o custo?
R$49/mês (1a e 2a instância), R$29/mês (3a+). Todos os endpoints inclusos. Trial 7 dias grátis.