Webhooks e Eventos
Configurar Webhook da Instância
Gerencia webhooks da instancia. Suporta modo simples (sem action) e modo multi-webhook (com action: add/update/delete). Para deletar, envie id + action "delete". Os eventos vêm DESATIVADOS por padrão. Ligue só os que for consumir (evita tráfego desnecessário). Eventos de volume alto (presence, history) só ligue se realmente for tratar.
POST
https://api.zapzapapi.com/api/v1/{instanceId}/webhookAutenticação por cabeçalhos x-api-key e x-api-secret.
Parâmetros
| Nome | Tipo | Onde | Obrigatório | Descrição |
|---|---|---|---|---|
id | text | corpo | Não | ID único do webhook (necessário para update/delete) |
enabled | select | corpo | Não | Habilita/desabilita o webhook |
url | text | corpo | Sim | URL para receber os eventos |
events | json | corpo | Não | Lista de eventos que você quer receber no seu webhook. TUDO vem desativado por padrão: envie só os que for usar. Disponíveis: connection (conexão), messages (mensagens recebidas/enviadas), messages_update (status: entregue/lida), history (histórico ao conectar, VOLUME ALTO), newsletter_messages (mensagens de canais), call (chamadas), contacts, groups, chats, labels, chat_labels, presence (online/digitando, VOLUME ALTO), blocks (bloqueios), sender. Exemplo: ["messages","connection","messages_update"]. |
excludeMessages | json | corpo | Não | Filtros para excluir tipos de mensagens |
addUrlEvents | select | corpo | Não | Adiciona o tipo do evento como parâmetro na URL. - `false` (padrão): URL normal - `true`: Adiciona evento na URL (ex: `/webhook/message`) |
addUrlTypesMessages | select | corpo | Não | Adiciona o tipo da mensagem como parâmetro na URL. - `false` (padrão): URL normal - `true`: Adiciona tipo da mensagem (ex: `/webhook/conversation`) |
action | select | corpo | Não | Ação a ser executada: - add: criar novo webhook - update: atualizar webhook existente (requer id) - delete: remover webhook (requer apenas id) Se não informado, opera no modo simples (único webhook) |
Exemplo de requisição
curl
curl -X POST "https://api.zapzapapi.com/api/v1/{instanceId}/webhook" \
-H "x-api-key: SUA_API_KEY" \
-H "x-api-secret: SEU_API_SECRET" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/webhook"}'Node.js
const res = await fetch("https://api.zapzapapi.com/api/v1/{instanceId}/webhook", {
method: "POST",
headers: {
"x-api-key": "SUA_API_KEY",
"x-api-secret": "SEU_API_SECRET",
"Content-Type": "application/json",
},
body: JSON.stringify({
"url": "https://example.com/webhook"
}),
});
console.log(await res.json());Python
import requests
res = requests.post(
"https://api.zapzapapi.com/api/v1/{instanceId}/webhook",
headers={"x-api-key": "SUA_API_KEY", "x-api-secret": "SEU_API_SECRET"},
json={"url":"https://example.com/webhook"},
)
print(res.json())Exemplo de resposta
JSON
{
"status": "Webhook deleted successfully"
}Os valores são ilustrativos; os campos seguem o formato real da resposta.
Outros endpoints desta categoria
Pegue suas chaves de API
Crie sua conta, conecte um número em minutos e comece a usar a API. R$15 por número ativo/mês, com crédito de boas-vindas ao criar a conta, sujeito à campanha vigente.
