What are template webhooks?
Unlike channel webhooks, offers template webhooks — endpoints that receive exclusively WhatsApp template events and do not depend on an instance (instanceId = null).
They coexist with the per-channel webhook routes, which remain unchanged. Template event routing is handled by the internal service independently of any instance.
The concepts common to both webhook types (ENTERPRISE role, authentication, HMAC signing, and payload formats) are in the Introduction.
Authentication
All routes require the header:Accepted template events
A template webhook accepts only template events. Sending any non-template event results in422.
Business rules
- Event scope (required).
- Template webhook → only accepts template events. Any non-template event →
422. - Channel webhook → cannot subscribe to template events →
422.
- Template webhook → only accepts template events. Any non-template event →
payloadFormatis ignored. For template webhooks the format is alwaysDEFAULT. The field may be omitted; if sent (any value, includingCHATWOOT), it is silently discarded and persisted asDEFAULT.instanceIdstored asnullautomatically — there is no instance field on these routes.channelIdalso comes backnull.
Important notes
Per-tenant scope. Read/update/delete operations are scoped by the
tenant resolved from the Authorization header — there is no cross-tenant access by id.Router cache. After creating or updating a template webhook, routing may take up to ~5 min to reflect (cache TTL).
Management
Create template webhook
Register a new template endpoint.
List template webhooks
View all of the tenant’s template webhooks.
Get template webhook
Retrieve a specific template webhook.
Update template webhook
Update URL, events, authentication, or status.
Delete template webhook
Permanently remove a template webhook.
Payload structure
Real payload examples received for each template event.