curl --request PATCH \
--url https://api.hubmessage.io/v1/webhooks/{webhookId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "https://new-destination/webhook",
"status": "DISABLED"
}
'{
"id": "8F2C00000000000000000000000000A1",
"channelId": null,
"instanceId": null,
"url": "https://new-destination/webhook",
"description": "Template webhook",
"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"
}{
"error": "Validation error"
}{
"error": "Webhook not found"
}{
"error": "Global webhooks (without instance) accept only template events"
}Update template webhook
Update the configuration of an existing template webhook
curl --request PATCH \
--url https://api.hubmessage.io/v1/webhooks/{webhookId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "https://new-destination/webhook",
"status": "DISABLED"
}
'{
"id": "8F2C00000000000000000000000000A1",
"channelId": null,
"instanceId": null,
"url": "https://new-destination/webhook",
"description": "Template webhook",
"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"
}{
"error": "Validation error"
}{
"error": "Webhook not found"
}{
"error": "Global webhooks (without instance) accept only template events"
}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"] }
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.Temporarily disabling
{ "status": "DISABLED" }
{ "status": "ENABLED" }.
payloadFormat is still ignored
For template webhooks the format is always DEFAULT, even if sent in the update.
Authorizations
Secret Key generated in the Hub Message Security panel
Path Parameters
Template webhook ID
"8F2C00000000000000000000000000A1"
Body
All fields are optional — only the fields sent are updated.
New destination URL
"https://new-destination/webhook"
New description
If sent, replaces the event list — template events only (otherwise → 422).
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
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://destination/webhook"
Webhook description
"Template webhook"
Configured template events
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