Skip to main content
POST

Conceptos

Crea un webhook de plantilla. No depende de ninguna instancia —el instanceId se guarda como null automáticamente— y recibe únicamente los eventos de plantilla de WhatsApp. El campo events admite solo UPDATE_TEMPLATE_STATUS y UPDATE_TEMPLATE_CATEGORY. Cualquier evento que no sea de plantilla devuelve 422.

payloadFormat se ignora

En los webhooks de plantilla el formato es siempre DEFAULT. Puedes omitir el campo; si lo envías (con cualquier valor), se descarta de forma silenciosa y se persiste como DEFAULT.

Firma HMAC

Si signing: true, el campo secret se genera y se devuelve solo en esta respuesta. Guárdalo de forma segura: no volverá a mostrarse.
Tras la creación, el enrutamiento puede tardar hasta unos 5 min en reflejar el cambio (TTL de la caché).

Autorizaciones

Authorization
string
header
requerido

Secret Key generada en el panel de Seguridad de Omni Z-API

Cuerpo

application/json
url
string
requerido

URL de destino de los eventos

Ejemplo:

"https://destino/webhook"

events
enum<string>[]
requerido

Solo eventos de plantilla. Es obligatorio al menos uno. Cualquier evento que no sea de plantilla devuelve 422.

Minimum array length: 1

Eventos de plantilla admitidos: UPDATE_TEMPLATE_STATUS (actualización del estado de la plantilla: aprobada, rechazada, etc.) y UPDATE_TEMPLATE_CATEGORY (actualización de la categoría de la plantilla).

Opciones disponibles:
UPDATE_TEMPLATE_STATUS,
UPDATE_TEMPLATE_CATEGORY
Ejemplo:
description
string

Descripción opcional del webhook

Ejemplo:

"Webhook de plantilla"

signing
boolean
predeterminado:false

Habilita la firma HMAC-SHA256. Cuando es true, genera y devuelve un secret de 64 caracteres hexadecimales solo en la creación o la actualización.

Ejemplo:

false

authType
enum<string>
predeterminado:NONE

Tipo de autenticación (forma plana). Alternativa al objeto auth.

Opciones disponibles:
NONE,
BEARER,
API_KEY,
BASIC,
CUSTOM_HEADER
Ejemplo:

"NONE"

token
string

Credencial para BEARER (forma plana)

key
string

Credencial para API_KEY (forma plana)

auth
object

Forma anidada de la autenticación. Para BASIC usa username+password; para CUSTOM_HEADER usa headerName+headerValue.

payloadFormat
enum<string>
predeterminado:DEFAULT

Ignorado en los webhooks de plantilla: el formato es siempre DEFAULT. Se puede omitir; si se envía (con cualquier valor), se descarta y se persiste como DEFAULT.

Opciones disponibles:
DEFAULT
Ejemplo:

"DEFAULT"

customAttributes
object

Mapa libre de atributos extra

Ejemplo:

Respuesta

Webhook de plantilla creado correctamente. channelId e instanceId llegan como null. El campo secret se devuelve solo en esta respuesta cuando signing es true.

id
string

ID único del webhook de plantilla

Ejemplo:

"8F2C00000000000000000000000000A1"

channelId
string | null

Siempre null en los webhooks de plantilla

Ejemplo:

null

instanceId
string | null
obsoleto

Obsoleto y siempre null en los webhooks de plantilla

Ejemplo:

null

url
string

URL de destino de los eventos

Ejemplo:

"https://destino/webhook"

description
string | null

Descripción del webhook

Ejemplo:

"Webhook de plantilla"

events
enum<string>[]

Eventos de plantilla configurados

Eventos de plantilla admitidos: UPDATE_TEMPLATE_STATUS (actualización del estado de la plantilla: aprobada, rechazada, etc.) y UPDATE_TEMPLATE_CATEGORY (actualización de la categoría de la plantilla).

Opciones disponibles:
UPDATE_TEMPLATE_STATUS,
UPDATE_TEMPLATE_CATEGORY
Ejemplo:
status
enum<string>

Estado actual del webhook

Opciones disponibles:
ENABLED,
DISABLED
Ejemplo:

"ENABLED"

signing
boolean

Indica si la firma HMAC está habilitada

Ejemplo:

false

auth
object

Resumen de la autenticación configurada: las credenciales no se devuelven por seguridad

payloadFormat
enum<string>

Siempre DEFAULT en los webhooks de plantilla

Opciones disponibles:
DEFAULT
Ejemplo:

"DEFAULT"

customAttributes
object
Ejemplo:
createdAt
string<date-time>
Ejemplo:

"2026-07-15T19:00:00.000+00:00"

updatedAt
string<date-time>
Ejemplo:

"2026-07-15T19:00:00.000+00:00"

secret
string | null

Secret HMAC de 64 caracteres hexadecimales: se devuelve solo cuando signing = true en el create o el update. Es null cuando la firma está deshabilitada. Después no se podrá recuperar.

Ejemplo:

null