Before You Start
To configure and use Efento Cloud webhooks, you’ll need the following:
-
An application capable of receiving incoming webhooks, parsing their content, and responding with a
201status code to each received message. -
An Efento Cloud account with Administrator permissions for the selected organisation.
Efento Cloud Configuration
1. Create a New Webhook
-
In the left-hand menu, go to Settings (gear icon) → Organization settings.
-
Navigate to the Integrations tab.
-
In the Webhook section, click Add Webhook.
-
Enter the Webhook name and URL.
-
(Optional) To use custom headers for webhooks sent by Efento Cloud, check Use custom headers and add the desired header names and values (up to 5 headers).
-
-
Click Test connection.
-
If the setup is correct, a ✅ checkmark will appear next to the button.
-
If the test fails, verify that:
-
The webhook URL is correct.
-
All required headers are properly configured.
-
Your application responds with the correct HTTP status code (
201).
-
-
-
Once successful, click Add Webhook to save your configuration.

2. Enable Webhooks for Selected Rule(s)
-
Go to Settings (gear icon) → Rules and notifications.
-
Select or create a rule, configure its parameters, and click Next.
-
Choose the sensors or locations the rule will apply to, then click Next.
-
In the Notifications section, click Connect integration.
-
From the Integration dropdown, select Webhook, then choose the name of the webhook integration you created earlier.
-
Click Connect Integration and save your changes.
Once configured, any time the rule is triggered, Efento Cloud will automatically send a webhook notification to your specified URL.
Payload
The payload of webhook messages is send as JSON, structured as below:
{
"createdAt": "2023-04-25 09:07:00",
"neutralizedAt": null,
"organizationName": "Test_org",
"locationName": "Test",
"ruleName": "test_above",
"ruleCondition": "MORE_THAN",
"ruleParameters": ["TEMPERATURE"],
"ruleType": "MEASUREMENT_MEASUREMENT_POINTS",
"deviceSerialNumber": "FFFFFFFFFF",
"webhookReminderCounter": 0,
"alertId": 1,
"resourceInfo":{
"id": 1,
"name": "Test integration for https://example.com",
"type": "MEASUREMENT_POINT"
},
"details": [
{"key": "channelNumber", "value": "1" },
{"key": "triggeringMeasurement", "value": "10" },
{"key": "revokingMeasurement", "value": "10" },
{"key": "thresholdValue", "value": "10" }
]
}
| createdAt | Timestamp (UTC) when the alert was triggered (e.g. measurement received by the platform was over the threshold; sensor was lost) |
| neutralizedAt | Timestamp (UTC) when the alert was deactivated (e.g. measurement received by the platform got back below the threshold; sensor started sending the data to the platform again). If the webhook was triggered by meeting the rule’s condition, this field has ‘null’ value. |
| organizationName | Name of the Organisation in Efento Cloud in which the rule is configured |
| locationName | Name of the location in which the measurement point is located |
| ruleName | Name of the rule in Efento Cloud |
| ruleCondition | Rule condition. Available values:
|
| ruleParameters | Type of the measurement. Available values: TEMPERATURE, HUMIDITY, ATMOSPHERIC_PRESSURE, DIFFERENTIAL_PRESSURE, ALARM, WATER_METER, ELECTRICITY_METER, PULSE_COUNTER, LOST, LOW_BATTERY, IAQ, FLOODING, SOIL_MOISTURE, CO_GAS, NO2_GAS, H2S_GAS, AMBIENT_LIGHT, PM_1_0, PM_2_5, PM_10_0, NOISE_LEVEL, CH4_GAS, NH3_GAS, HIGH_PRESSURE, DISTANCE_MM, WATER_METER_ACCUMULATIVE, CO2_GAS, STATIC_IAQ, CO2_EQUIVALENT, BREATH_VOC, PERCENTAGE, VOLTAGE, CURRENT, PULSE_COUNTER_ACCUMULATIVE, ELECTRICITY_METER_ACCUMULATIVE |
| ruleType | Type of the rule. Available values: LOST_MEASUREMENT_POINTS, LOW_BATTERY_MEASUREMENT_POINTS, MEASUREMENT_MEASUREMENT_POINTS, LOST_GATEWAYS, POWER_SUPPLY_SOURCE_CHANGE_GATEWAYS, LOW_BATTERY_GATEWAYS |
| deviceSerialNumber | Serial number of the sensor assigned to the measurement point |
| webhookReminderCounter | This field shows the number of times a webhook has been repeated. If webhook repetition was enabled during rule configuration, this value increases with each repetition. |
| alertId | Unique ID of an alert |
| resourceInfo | Details about the measurement point / gateway that triggered the rule. id – unique identifier of the measurement point / gateway in Efento Cloud, name – name of the measurement point / gateway in Efento Cloud, type – type of the device – sensor (MEASUREMENT_POINT) or gateway (GATEWAY). |
| details | This section details alarm information, including the channel number of the measurement point that triggered the alarm(channelNumber), the measurement value that triggered it (triggeringMeasurement), the threshold value (thresholdValue), and the measurement value that revoked the alarm (if the webhook was triggered by meeting the rule’s condition, this field has ‘null’ value (revokingMeasurement). |
Additional Information
-
You can reuse a single webhook integration across multiple rules. Simply assign the same connection to different rules — when any of them is triggered, the same webhook endpoint will receive the notification.
-
Efento Cloud will automatically disable a webhook if the server fails to respond to five consecutive messages.
-
To re-enable it, go to Settings → Organization settings → Integrations → Webhooks, and toggle the webhook back on.
-

