Pular para o conteúdo

Atualizar webhook

PATCH/v1/webhooks/{wid}desde M3token da instância ou admin

Quando usar

Atualização parcial de url, events, enabled e secret. instance_id não muda (crie outro webhook). {"secret": ""} gera um segredo novo, devolvido nesta resposta. Desligar ("enabled": false) para de gerar entregas novas e pausa as pendentes até religar.

Autenticação

Aceita o token da instância (só a própria instância) ou o token admin. Um token de outra instância recebe 403 forbidden (ou 404 not_found em webhooks de outra instância).

Parâmetros

Caminho

NomeTipoDescrição
widobrigatóriostringId do webhook (wh_...).

Corpo (JSON)

NomeTipoDescrição
urlstringURL absoluta http(s), até 2048 caracteres. Obrigatório na criação.
eventsstring[]Filtros: tipos exatos, famílias (message.*) ou *. Obrigatório na criação. (até 32 itens)
secretstring16 a 256 caracteres. Omitido na criação: gerado. Vazio no PATCH: gera outro.
instance_idstringSó na criação. Admin: instância do webhook (omitido = global). Token de instância: só a própria.
enabledboolean (padrão true)
version1Versão do envelope. Só 1 por enquanto.
filtersWebhookFiltersRestringem os eventos do webhook (marco 7). Cada filtro só vale para eventos que têm o campo: instance.* sempre passam.
filters.chat"direct" | "group"
filters.chatsstring[]Só estes chats (número com DDI ou JID). (até 500 itens)
filters.exclude_chatsstring[]Todos menos estes chats.
filters.message_types"text" | "image" | "video" | "gif" | "ptv" | "audio" | "document" | "sticker" | "location" | "contact" | "poll" | "reaction" | "button_reply" | "unknown"[]Só eventos de mensagem destes tipos (received, sent, reaction, button_reply).
filters.from_mebooleantrue: só mensagens nossas; false: exclui as nossas. Omitido: ambas. Não se aplica a message.status.

Exemplo

Janela do terminal
curl -s -X PATCH "$LITEZAP_URL/v1/webhooks/$WEBHOOK_ID" \
-H "Authorization: Bearer $LITEZAP_TOKEN" \
-d '{"events":["*"],"enabled":true}'

Nos exemplos, LITEZAP_URL é a URL base (ex.: http://localhost:8787) e o token vem deLITEZAP_TOKEN (instância) ou LITEZAP_ADMIN_TOKEN.

Resposta

200 O webhook atualizado (com secret só se ele foi trocado).

Campos de Webhook
idstring
instance_idstringAusente em webhook global.
urlstring
eventsstring[]
versioninteger
enabledboolean
filtersWebhookFiltersRestringem os eventos do webhook (marco 7). Cada filtro só vale para eventos que têm o campo: instance.* sempre passam.
filters.chat"direct" | "group"
filters.chatsstring[]Só estes chats (número com DDI ou JID).
filters.exclude_chatsstring[]Todos menos estes chats.
filters.message_types"text" | "image" | "video" | "gif" | "ptv" | "audio" | "document" | "sticker" | "location" | "contact" | "poll" | "reaction" | "button_reply" | "unknown"[]Só eventos de mensagem destes tipos (received, sent, reaction, button_reply).
filters.from_mebooleantrue: só mensagens nossas; false: exclui as nossas. Omitido: ambas. Não se aplica a message.status.
created_atstring
updated_atstring
secretstringSó na criação e quando trocado por PATCH.

Erros

CódigoHTTPRetentávelO que fazer
validation_failed400nãoCorrija o corpo ou os parâmetros; a message diz o campo.
unauthorized401nãoEnvie Authorization: Bearer <token> válido.
not_found404nãoConfira o id do recurso (mensagem, chat, contato, mídia ou webhook).

Todo erro usa o envelope {"error":{"code","message","retryable"}}. Tabela completa em Erros.

Equivalente na Z-API: Atualizar todos os webhooks. Veja Migrar da Z-API.

Outras operações de Webhooks: Listar webhooks · Criar webhook · Consultar webhook · Apagar webhook · Listar entregas · Reenviar entrega