Update template webhook
Update the configuration of an existing template webhook
Overview
Partially updates a template webhook’s configuration. Only the fields sent in the body are updated — the rest remain unchanged.Updating events
When sending theevents field, the list replaces the existing events and must contain only template events (otherwise → 422):
{ "events": ["UPDATE_TEMPLATE_STATUS", "UPDATE_TEMPLATE_CATEGORY"] }
- The list cannot be empty:
"events": []returns400with{"error": "Events cannot be empty when provided"}. To keep the events, omit the field. - An item that is null, blank, or a name that does not exist returns
400with{"error": "events contains an unknown or empty event name"}, and nothing is changed.
events in the responses, and it is kept when you replace the events: the PATCH replaces only the events the API knows. A webhook that only has events like that appears with events: [].Changing the URL
The newurl follows the same rules as on creation (see Webhook URL). It is only checked when it changes: a PATCH without url, or with the URL already stored, is not refused because of it.
HMAC signing
signing: true generates a new secret (returned only in this response); signing: false removes signing.
secret is returned only in this response. Store it before closing the session.signing: true rotates the secret every time, including when signing was already enabled and you only meant to change another field in the same request. To avoid rotating, omit the signing field.Temporarily disabling
{ "status": "DISABLED" }
{ "status": "ENABLED" }.
A status other than ENABLED or DISABLED returns 400 with {"error": "status must be one of [ENABLED, DISABLED]"}.
payloadFormat is still ignored
For template webhooks the format is always DEFAULT, even if sent in the update.
Authorizations
Secret Key generated in the Omni Z-API Security panel
Path Parameters
Template webhook ID
"8F2C00000000000000000000000000A1"
Body
All fields are optional — only the fields sent are updated.
New destination URL, under the same rules as on creation. It is only checked when it changes.
"https://new-url.yourcompany.com/webhooks/templates"
New description
If sent, replaces the events the API knows — template events only (otherwise → 422). A stored event the API does not know yet is kept. Cannot be empty (400).
Accepted template events: UPDATE_TEMPLATE_STATUS (template status update — approved/rejected etc.) and UPDATE_TEMPLATE_CATEGORY (template category update).
UPDATE_TEMPLATE_STATUS, UPDATE_TEMPLATE_CATEGORY DISABLED pauses event delivery without deleting the webhook Any other value returns 400.
ENABLED, DISABLED true generates a new secret; false removes signing
NONE clears authentication; the others reconfigure it
NONE, BEARER, API_KEY, BASIC, CUSTOM_HEADER Credential for BEARER
Credential for API_KEY
Nested authentication form. For BASIC use username+password; for CUSTOM_HEADER use headerName+headerValue.
Show child attributes
Show child attributes
Ignored for template webhooks
DEFAULT Response
Template webhook updated. The secret field is returned only when signing = true in this update.
Unique template webhook ID
"8F2C00000000000000000000000000A1"
Always null for template webhooks
null
Deprecated and always null for template webhooks
null
Destination URL for the events
"https://app.yourcompany.com/webhooks/templates"
Webhook description
"Template webhook"
Configured template events A stored event the API does not know yet is not listed here.
Accepted template events: UPDATE_TEMPLATE_STATUS (template status update — approved/rejected etc.) and UPDATE_TEMPLATE_CATEGORY (template category update).
UPDATE_TEMPLATE_STATUS, UPDATE_TEMPLATE_CATEGORY [ "UPDATE_TEMPLATE_STATUS", "UPDATE_TEMPLATE_CATEGORY" ]
Current webhook status
ENABLED, DISABLED "ENABLED"
Indicates whether HMAC signing is enabled
false
Summary of the configured authentication — credentials are not returned for security reasons
Show child attributes
Show child attributes
Always DEFAULT for template webhooks
DEFAULT "DEFAULT"
{}
"2026-07-15T19:00:00.000+00:00"
"2026-07-15T19:00:00.000+00:00"
64-character hex HMAC secret — returned only when signing = true on create/update. null when signing is disabled. It cannot be retrieved afterwards.
null