curl --request PATCH \
--url https://api.omni.z-api.io/v1/webhooks/{webhookId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "https://nova-url.suaempresa.com/webhooks/templates",
"status": "DISABLED"
}
'{
"id": "8F2C00000000000000000000000000A1",
"channelId": null,
"instanceId": null,
"url": "https://nova-url.suaempresa.com/webhooks/templates",
"description": "Webhook de template",
"events": [
"UPDATE_TEMPLATE_STATUS",
"UPDATE_TEMPLATE_CATEGORY"
],
"status": "DISABLED",
"signing": false,
"auth": {
"type": "NONE",
"configured": false
},
"payloadFormat": "DEFAULT",
"customAttributes": {},
"createdAt": "2026-07-15T19:00:00.000+00:00",
"updatedAt": "2026-07-15T19:30:00.000+00:00"
}Atualizar webhook de template
Atualize a configuração de um webhook de template existente
curl --request PATCH \
--url https://api.omni.z-api.io/v1/webhooks/{webhookId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "https://nova-url.suaempresa.com/webhooks/templates",
"status": "DISABLED"
}
'{
"id": "8F2C00000000000000000000000000A1",
"channelId": null,
"instanceId": null,
"url": "https://nova-url.suaempresa.com/webhooks/templates",
"description": "Webhook de template",
"events": [
"UPDATE_TEMPLATE_STATUS",
"UPDATE_TEMPLATE_CATEGORY"
],
"status": "DISABLED",
"signing": false,
"auth": {
"type": "NONE",
"configured": false
},
"payloadFormat": "DEFAULT",
"customAttributes": {},
"createdAt": "2026-07-15T19:00:00.000+00:00",
"updatedAt": "2026-07-15T19:30:00.000+00:00"
}Conceituação
Atualiza parcialmente a configuração de um webhook de template. Apenas os campos enviados no body são atualizados — os demais permanecem inalterados.Atualizar eventos
Se enviar o campoevents, a lista substitui os eventos existentes e deve conter somente eventos de template (senão → 422):
{ "events": ["UPDATE_TEMPLATE_STATUS", "UPDATE_TEMPLATE_CATEGORY"] }
- A lista não pode ser vazia:
"events": []retorna400com{"error": "Events cannot be empty when provided"}. Para manter os eventos, omita o campo. - Um item nulo, em branco ou com nome que não existe retorna
400com{"error": "events contains an unknown or empty event name"}, e nada é alterado.
events nas respostas e é mantido quando você troca os eventos: o PATCH substitui só os eventos que a API conhece. Um webhook que só tem eventos assim aparece com events: [].Alterar a URL
A novaurl segue as mesmas regras da criação (veja URL do webhook). Ela só é conferida quando muda: um PATCH sem url, ou com a URL já gravada, não é recusado por ela.
Assinatura HMAC
signing: true gera um novo secret (retornado apenas nesta resposta); signing: false remove a assinatura.
secret é retornado apenas nesta resposta. Armazene-o antes de fechar a sessão.signing: true rotaciona o secret toda vez, inclusive quando a assinatura já estava habilitada e você só queria mudar outro campo no mesmo request. Para não rotacionar, omita o campo signing.Desabilitar temporariamente
{ "status": "DISABLED" }
{ "status": "ENABLED" }.
Um status diferente de ENABLED e DISABLED retorna 400 com {"error": "status must be one of [ENABLED, DISABLED]"}.
payloadFormat continua ignorado
Para webhooks de template o formato é sempre DEFAULT, mesmo que enviado na atualização.
Autorizações
Secret Key gerada no painel de Segurança do Omni Z-API
Parâmetros de caminho
ID do webhook de template
"8F2C00000000000000000000000000A1"
Corpo
Todos os campos são opcionais — apenas os campos enviados são atualizados.
Nova URL de destino, com as mesmas regras da criação. Só é conferida quando muda.
"https://nova-url.suaempresa.com/webhooks/templates"
Nova descrição
Se enviado, substitui os eventos que a API conhece — somente eventos de template (senão → 422). Um evento gravado que a API ainda não conhece é mantido. Não pode ser vazio (400).
Eventos de template aceitos: UPDATE_TEMPLATE_STATUS (atualização de status do template — aprovado/rejeitado etc.) e UPDATE_TEMPLATE_CATEGORY (atualização de categoria do template).
UPDATE_TEMPLATE_STATUS, UPDATE_TEMPLATE_CATEGORY DISABLED pausa a entrega de eventos sem excluir o webhook Outro valor retorna 400.
ENABLED, DISABLED true gera um novo secret; false remove a assinatura
NONE limpa a autenticação; os demais reconfiguram
NONE, BEARER, API_KEY, BASIC, CUSTOM_HEADER Credencial para BEARER
Credencial para API_KEY
Forma aninhada da autenticação. Para BASIC use username+password; para CUSTOM_HEADER use headerName+headerValue.
Show child attributes
Show child attributes
Ignorado para webhooks de template
DEFAULT Resposta
Webhook de template atualizado. O campo secret é retornado apenas quando signing = true nesta atualização.
ID único do webhook de template
"8F2C00000000000000000000000000A1"
Sempre null para webhooks de template
null
Descontinuado e sempre null para webhooks de template
null
URL de destino dos eventos
"https://app.suaempresa.com/webhooks/templates"
Descrição do webhook
"Webhook de template"
Eventos de template configurados Evento gravado que a API ainda não conhece não aparece aqui.
Eventos de template aceitos: UPDATE_TEMPLATE_STATUS (atualização de status do template — aprovado/rejeitado etc.) e UPDATE_TEMPLATE_CATEGORY (atualização de categoria do template).
UPDATE_TEMPLATE_STATUS, UPDATE_TEMPLATE_CATEGORY [
"UPDATE_TEMPLATE_STATUS",
"UPDATE_TEMPLATE_CATEGORY"
]
Status atual do webhook
ENABLED, DISABLED "ENABLED"
Indica se a assinatura HMAC está habilitada
false
Resumo da autenticação configurada — credenciais não são retornadas por segurança
Show child attributes
Show child attributes
Sempre DEFAULT para webhooks de template
DEFAULT "DEFAULT"
{}
"2026-07-15T19:00:00.000+00:00"
"2026-07-15T19:00:00.000+00:00"
Segredo HMAC de 64 caracteres hex — retornado apenas quando signing = true no create/update. null quando a assinatura está desabilitada. Não poderá ser recuperado depois.
null