Skip to main content
POST

Conceituação

Registra um novo endpoint de webhook no canal. A partir da criação, o passa a enviar os eventos configurados para a URL informada. Um canal pode ter múltiplos webhooks — útil para enviar eventos diferentes para sistemas diferentes, ou para manter webhooks com formatos distintos.

Assinatura HMAC

Se signing: true, o campo secret é gerado automaticamente e retornado apenas nesta resposta. Armazene-o com segurança — ele não será exibido novamente em nenhuma outra chamada. Use o secret para verificar a autenticidade das requisições recebidas no seu servidor. Calcule o HMAC-SHA256 sobre o body recebido usando o secret e compare com o header de assinatura enviado pelo .
O channelId é obtido através do endpoint Criar canal.

Autorizações

Authorization
string
header
obrigatório

Secret Key gerada no painel de Segurança do Omni Z-API

Parâmetros de caminho

channelId
string
obrigatório

ID do canal

Exemplo:

"019E4C54B1B375A28970B605CA9B03C3"

Corpo

application/json
url
string
obrigatório

URL de destino dos eventos (máx. 2048 caracteres)

Exemplo:

"https://app.suaempresa.com/webhooks/omni-zapi"

events
enum<string>[]
obrigatório

Tipos de evento a receber. Pelo menos um obrigatório.

Opções disponíveis:
MESSAGE_RECEIVED,
MESSAGE_DELIVERY,
MESSAGE_STATUS,
RECEIVED_STATUS,
RECEIVED_AND_DELIVERY,
CONNECTED,
DISCONNECTED,
PRESENCE_CHAT,
INITIAL_DATA,
BLOCK
Exemplo:
description
string

Descrição opcional do webhook

Exemplo:

"Webhook principal de produção"

signing
boolean
padrão:false

Habilita assinatura HMAC-SHA256. Quando true, um secret de 64 caracteres hex é gerado e retornado apenas na criação/atualização. Use-o para verificar a autenticidade das requisições recebidas.

Exemplo:

true

auth
object

Configura como o Omni Z-API se autentica ao chamar sua URL

payloadFormat
enum<string>
padrão:DEFAULT

Formato do payload entregue ao webhook. DEFAULT é o formato do Omni Z-API; Z_API mantém a estrutura da Z-API para quem está migrando; CHATWOOT entrega no formato esperado pelo Chatwoot.

Opções disponíveis:
DEFAULT,
Z_API,
CHATWOOT
Exemplo:

"DEFAULT"

customAttributes
object

Atributos extras

Exemplo:

Resposta

Webhook criado com sucesso. O campo secret é retornado apenas nesta resposta quando signing é true — armazene-o com segurança.

id
string

ID único do webhook

Exemplo:

"A1B2C3D4E5F6789012345678901234AB"

channelId
string

ID do canal ao qual o webhook pertence

Exemplo:

"019E4C54B1B375A28970B605CA9B03C3"

instanceId
string
obsoleto

Descontinuado — use channelId

Exemplo:

"019E4C54B1B375A28970B605CA9B03C3"

url
string

URL de destino dos eventos

Exemplo:

"https://app.suaempresa.com/webhooks/omni-zapi"

description
string | null

Descrição do webhook

Exemplo:

"Webhook principal de produção"

events
string[]

Tipos de evento configurados

Exemplo:
status
enum<string>

Status atual do webhook

Opções disponíveis:
ENABLED,
DISABLED
Exemplo:

"ENABLED"

signing
boolean

Indica se a assinatura HMAC está habilitada

Exemplo:

true

auth
object

Resumo da autenticação configurada — credenciais não são retornadas por segurança

payloadFormat
enum<string>

Formato do payload entregue

Opções disponíveis:
DEFAULT,
Z_API,
CHATWOOT
Exemplo:

"DEFAULT"

customAttributes
object

Atributos extras configurados

Exemplo:
createdAt
string<date-time>

Data de criação

Exemplo:

"2025-01-15T10:30:00.000+0000"

updatedAt
string<date-time>

Data da última atualização

Exemplo:

"2025-01-15T10:30:00.000+0000"

secret
string

Segredo HMAC de 64 caracteres hex — retornado apenas quando signing é habilitado no create ou update. Armazene-o com segurança; não poderá ser recuperado depois.

Exemplo:

"a3f1c2d4e5b6789012345678901234abcdef0123456789abcdef0123456789ab"