Skip to main content
Version: 8.5.6

How do I create a webhook?

This guide shows step by step how to create a webhook in KentixONE. You will learn which fields exist, when which option makes sense and how to send test data. For an overview of available variables, you will find a reference to the webhook reference below.

Prerequisites​

  • Access to the KentixONE web interface with administrator rights
  • Target endpoint (URL) of the external service that should receive the request
  • Optional: Credentials for Basic Auth or a Bearer Token if your endpoint requires authentication

Overview​

  • A webhook is an HTTP request that KentixONE sends to a URL defined by you when an event occurs (e.g. alarm, user action).
  • You request method (GET/POST/PUT/PATCH/DELETE), content type and the exact data content (payload).
  • Variables like alarm or user values can be inserted into the payload. KentixONE automatically replaces these variables when the webhook is sent.

Step-by-step guide​

1. Open webhook overview ​

  • Navigate to: Configuration → Webhooks.
  • In the table you can see existing entries and create new webhooks.

2. Create new webhook ​

  • Click on "Create webhook".
  • Active: Enable the webhook if it should be usable immediately.
  • Name: Assign a meaningful name.
  • URL: Enter the complete target endpoint (https://...)

3. Choose HTTP method​

  • Select the desired method.
  • Available options are POST, GET, PUT, PATCH, DELETE.
note

A POST request is commonly used to provide data to another webservice.

4. Configure authentication (optional)​

  • No authentication: For freely accessible endpoints.
  • Basic Auth: KentixONE sends username/password in the Authorization header (Base64).
  • Bearer Token: KentixONE sends the token in the Authorization header.
info

The KentixONE SmartAPI uses Bearer Token authentication.

5. Set content type​

  • Supported are text/plain, application/json or application/xml.
  • Choose the content type matching your target system.
info

For the KentixONE SmartAPI, content type application/json should be selected.

6. Define payload​

Enter the body matching the content type. An example for JSON:

{
"eventId": "$ALARM_EVENT_ID$",
"sensor": "$ACTIVE_ALARM_SENSOR_NAME$",
"status": "$ACTIVE_ALARM_ALARM_VALUE$",
"value": "$ACTIVE_ALARM_MEASUREMENT_VALUE$",
"user": {
"id": "$USER_ID$",
"name": "$USER_FULLNAME$",
"mail": "$USER_MAIL$"
},
"timestamp": "$DATE_TIME$"
}
tip

A complete list of possible variables can be found in the user interface manual under Webhooks

7. Save and test​

  • Save the webhook.
  • Use "Test webhook" to immediately send a sample request to your endpoint.
  • Check the response code and logs of your target system.
info

Successful requests usually return an HTTP response code in the 200 range.

8. Assign webhook​

Now the webhook can be used as an event handler in the configuration masks of alarm groups and sensors (e.g. MultiSensors).

Tips & Tricks​

  • Use test endpoints (e.g. webhook.site, Request Bin) during setup to easily check payload and headers.
  • Ensure proper escaping of quotation marks and special characters in the payload.
  • Include version hints in the name if you plan to extend the schema later (e.g. "Alarm Webhook v2").

Troubleshooting​

ErrorPossible Cause
401 Unauthorized
403 Forbidden
Check authentication (Basic/Bearer) and permissions in the target system.
404 Not Found or TimeoutURL incorrect or target not reachable (Firewall/Proxy/DNS).
422 Unprocessable EntityDoes the Content-Type match the payload (e.g. JSON)?
Variables not being replacedUse exact syntax according to reference; replacement happens at runtime when triggered.

Glossary​

TermDefinition
WebhookHTTP callback that sends data to an endpoint when events occur.
EndpointTarget address (URL) that receives requests.
Content-TypeIdentifies the data format of the body (e.g. application/json).
HeaderMetadata of an HTTP request (e.g. Authorization).
Payload/BodyRequest payload data.