LitmusEdgeManager 2.31.x API Documentation/Edge Lifecycle Management/Alerts - LE, LEM, LUNS API Docs
List of Incidents
GET {{LEM_URL}}/api/v1/project/incident/{{project_id}}?limit=10&requestedPage=0&state=OPEN
List of Incidents
Returns the paginated list of incidents (alert firings) for the project. Filter by state (OPEN / RESOLVED).
Endpoint
GET {{LEM_URL}}/api/v1/project/incident/{{project_id}}?limit=10&requestedPage=0&state=OPEN
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Response
Status: 200 OK
[
{
"id": "string",
"triggerId": "string",
"startedAt": "2019-08-24T14:15:22Z",
"resolvedAt": "2019-08-24T14:15:22Z",
"deviceId": "string",
"severity": 0,
"showOnDashboard": true,
"scopeType": "USER",
"subject": "string",
"message": "string",
"hostname": "string"
}
]
Create Trigger - Metrics
POST {{LEM_URL}}/api/v1/project/trigger/definition/{{project_id}}
Create Trigger -- Metrics
Creates a new alert trigger based on metric rules (e.g. CPU > 90%). deviceId: null makes the trigger apply to every device in the project; pass a specific UUID to scope down. The subject and message templates can reference variables like $devicename, $value, $alertDelay, $company, etc.
Endpoint
POST {{LEM_URL}}/api/v1/project/trigger/definition/{{project_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Request body
{
"id": "ccraeulf5jvtoausc8f0cjh7l",
"active": false,
"name": "ad",
"severity": 0,
"showOnDashboard": true,
"deduplicate": false,
"subject": " $devicename $name $value $company $deviceid ...",
"message": " $devicename $name $value $company $deviceid ...",
"deviceId": null,
"actions": ["bp0pgdjum4l1ltore344h9j1p"]
}
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Request Body
{
"id": "ccraeulf5jvtoausc8f0cjh7l",
"active": false,
"advancedRules": "",
"deduplicate": false,
"subject": " $devicename $name $alertDelay $value $company $deviceid $project $targetValue ",
"message": " $devicename $name $alertDelay $value $company $deviceid $project $targetValue ",
"name": "ad",
"severity": 0,
"notifyGracePeriod": null,
"notifyContinuously": false,
"showOnDashboard": true,
"simpleRules": [],
"eventRules": [],
"dataRules": [],
"metricRules": [],
"tags": [],
"deviceId": null,
"scopeType": "USER",
"sourceType": "METRICS",
"alertDelay": 60,
"description": "dd",
"actions": [
"bp0pgdjum4l1ltore344h9j1p"
]
}
Response
Status: 201 Created
{
"id": "ccraeulf5jvtoausc8f0cjh7l",
"name": "ad",
"description": "dd",
"simpleRules": [],
"eventRules": [],
"rawDataRules": null,
"metricRules": [],
"advancedRules": "",
"deduplicate": false,
"severity": 0,
"subject": " $devicename $name $alertDelay $value $company $deviceid $project $targetValue ",
"message": " $devicename $name $alertDelay $value $company $deviceid $project $targetValue ",
"tags": [],
"deviceId": null,
"actions": [
"bp0pgdjum4l1ltore344h9j1p"
],
"active": false,
"showOnDashboard": true,
"scopeType": "USER",
"sourceType": "METRICS",
"updatedOn": 1698260499322,
"notifyContinuously": false,
"notifyGracePeriod": 0,
"alertDelay": 60
}
Create Trigger - Event
POST {{LEM_URL}}/api/v1/project/trigger/definition/{{project_id}}
Create Trigger -- Event
Creates a trigger based on event rules -- when an LE event matching the rule (component / severity / event ID / message / attrs) is received, the trigger fires.
Endpoint
POST {{LEM_URL}}/api/v1/project/trigger/definition/{{project_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Request body
{
"id": "ccraeulf5jvtoausc8f0cjh7l",
"name": "event-related-trigger",
"severity": 0,
"eventRules": [
{ "operator": "OR", "severity": "INFO" }
],
"deviceId": null
}
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Request Body
{
"id": "ccraeulf5jvtoausc8f0cjh7l",
"active": false,
"advancedRules": "",
"deduplicate": false,
"subject": "$eventid $type $triggername $severity $tags $deviceid $hostname $triggerid $message $componentid $devicename ",
"message": "$devicename $componentid $message $triggerid $hostname $deviceid $tags $severity $triggername $type $eventid ",
"name": "event-related-trigger",
"severity": 0,
"notifyGracePeriod": null,
"notifyContinuously": false,
"showOnDashboard": true,
"simpleRules": [],
"eventRules": [
{
"attrs": {},
"component": null,
"eventId": null,
"msg": null,
"operator": "OR",
"severity": "INFO"
}
],
"dataRules": [],
"metricRules": [],
"tags": [],
"deviceId": null,
"scopeType": "USER",
"sourceType": "EVENTS",
"alertDelay": 60,
"description": "dd",
"actions": [
"bp0pgdjum4l1ltore344h9j1p"
]
}
Response
Status: 201 Created
{
"id": "ccraeulf5jvtoausc8f0cjh7l",
"name": "event-related-trigger",
"description": "dd",
"simpleRules": [],
"eventRules": [
{
"operator": "OR",
"component": null,
"severity": "INFO",
"eventId": null,
"msg": null,
"attrs": {}
}
],
"rawDataRules": null,
"metricRules": [],
"advancedRules": "",
"deduplicate": false,
"severity": 0,
"subject": "$eventid $type $triggername $severity $tags $deviceid $hostname $triggerid $message $componentid $devicename ",
"message": "$devicename $componentid $message $triggerid $hostname $deviceid $tags $severity $triggername $type $eventid ",
"tags": [],
"deviceId": null,
"actions": [
"bp0pgdjum4l1ltore344h9j1p"
],
"active": false,
"showOnDashboard": true,
"scopeType": "USER",
"sourceType": "EVENTS",
"updatedOn": 1698260279239,
"notifyContinuously": false,
"notifyGracePeriod": 0,
"alertDelay": 60
}
Delete Trigger
DELETE {{LEM_URL}}/api/v1/project/trigger/definition/{{project_id}}/{{trigger_id}}
Delete Trigger
Removes a trigger from the project.
Endpoint
DELETE {{LEM_URL}}/api/v1/project/trigger/definition/{{project_id}}/{{trigger_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Response
Status: 204 No Content
Project Actions
GET {{LEM_URL}}/api/v1/project/action/templates?projectId={{project_id}}
Project Actions
Returns the action templates (notification recipes) defined for the project. Each is the destination of an alert firing -- email / Slack / PagerDuty / webhook.
Endpoint
GET {{LEM_URL}}/api/v1/project/action/templates?projectId={{project_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Response
Status: 200 OK
[
{
"id": "bp0pgdjum4l1ltore344h9j1p",
"name": "apiEMail",
"type": "EMAIL",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": 3600
},
"recipients": [
"recipeint@email.com"
],
"subject": null,
"message": null
}
]
Project Triggers
GET {{LEM_URL}}/api/v1/project/trigger/definition?projectId={{project_id}}
Project Triggers
Returns the trigger definitions for the project. Same shape as the records created via Triggers > Create Trigger - Metrics/Event.
Endpoint
GET {{LEM_URL}}/api/v1/project/trigger/definition?projectId={{project_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Response
Status: 200 OK
[
{
"id": "6u98gdlpwxuypstkb7826beb9",
"name": "Monitor alert failures",
"description": null,
"simpleRules": null,
"eventRules": null,
"rawDataRules": null,
"metricRules": null,
"advancedRules": null,
"deduplicate": true,
"severity": 2,
"subject": "Monitor alert failures",
"message": "Monitor alert failures",
"tags": null,
"deviceId": null,
"actions": null,
"active": true,
"showOnDashboard": true,
"scopeType": "SYSTEM",
"sourceType": "DATA",
"updatedOn": 1691100533111,
"notifyContinuously": false,
"notifyGracePeriod": 0,
"alertDelay": 0
}
]
Add Action - Email
POST {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}
Add Action -- Email
Creates an Email action template. Triggers can reference its ID to send email on firing.
Endpoint
POST {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Request body
{
"type": "EMAIL",
"name": "Action Name from API",
"recipients": ["fake@fake.com"],
"isValid": true,
"limit": { "maxActionsPerInterval": 1, "updateIntervalSeconds": 3600 }
}
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Request Body
{
"type": "EMAIL",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": 3600
},
"recipients": [
"fake@fake.com"
],
"isValid": true,
"name": "Action Name from API"
}
Response
Status: 201 Created
{
"id": "703rj3do9iq5b094uk346409n",
"name": "Action Name from API",
"type": "EMAIL",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": 3600
},
"recipients": [
"fake@fake.com"
],
"subject": null,
"message": null
}
Add Action - Slack
POST {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}
Add Action -- Slack
Creates a Slack action template. Carries webhook, channel, and username fields.
Endpoint
POST {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Request body
{
"type": "SLACK",
"name": "slackFromAPI",
"webhook": "https://hooks.slack.com/services/T0/B0/XX",
"channel": "#channel-to-post-to",
"username": "slackUser",
"isValid": true,
"limit": { "maxActionsPerInterval": 1, "updateIntervalSeconds": 604800 }
}
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Request Body
{
"type": "SLACK",
"isValid": true,
"name": "slackFromAPI",
"webhook": "https://hooks.slack.com/services/T0/B0/XX",
"channel": "#channel-to-post-to",
"username": "slackUser",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": "604800"
}
}
Response
Status: 201 Created
{
"id": "647oel6t3z1572y4jqwt5go4w",
"name": "slackFromAPI",
"type": "SLACK",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": 604800
},
"webhook": "https://hooks.slack.com/services/T0/B0/XX",
"channel": "#channel-to-post-to",
"username": "slackUser"
}
Add Action - Pagerduty
POST {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}
Add Action -- PagerDuty
Creates a PagerDuty action template. Carries the integration token.
Endpoint
POST {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Request body
{
"type": "PAGERDUTY",
"name": "pager",
"token": "your-token-here",
"isValid": true,
"limit": { "maxActionsPerInterval": 1, "updateIntervalSeconds": 3600 }
}
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Request Body
{
"type": "PAGERDUTY",
"isValid": true,
"name": "pager",
"token": "your-token-here",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": 3600
}
}
Response
Status: 201 Created
{
"id": "8ahv0npni0etbmgk6nllcxiwl",
"name": "pager",
"type": "PAGERDUTY",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": 3600
},
"token": "your-token-here"
}
Add Action - Webhook
POST {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}
Add Action -- Webhook
Creates a generic webhook action template. LEM POSTs the alert payload to webhook with an Authorization: <token> header.
Endpoint
POST {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Request body
{
"type": "WEBHOOK",
"name": "webhook-created-from-API",
"webhook": "webhook-here",
"token": "token-here",
"verifySsl": true,
"isValid": true,
"limit": { "maxActionsPerInterval": 1, "updateIntervalSeconds": 60 }
}
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Request Body
{
"type": "WEBHOOK",
"isValid": true,
"verifySsl": true,
"webhook": "webhook-here",
"token": "token-here",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": "60"
},
"name": "webhook-created-from-API"
}
Response
Status: 201 Created
{
"id": "233sz904bau25fotj6rw8m6z7",
"name": "webhook-created-from-API",
"type": "WEBHOOK",
"limit": {
"maxActionsPerInterval": 1,
"updateIntervalSeconds": 60
},
"webhook": "webhook-here",
"token": "token-here",
"verifySsl": true
}
Delete Action
DELETE {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}/{{alert_id}}
Delete Action
Removes an action template by ID.
Endpoint
DELETE {{LEM_URL}}/api/v1/project/action/templates/{{project_id}}/{{alert_id}}
Authentication
HTTP Basic Auth. Username is your API token, password is empty. Tokens are managed under System > Access Control > Tokens.
Errors
| HTTP status | When it happens |
|---|---|
400 Bad Request |
Missing or malformed query/body parameter. |
401 Unauthorized |
Missing or invalid credentials. |
403 Forbidden |
Token lacks permission for this operation. |
404 Not Found |
Target entity does not exist. |
5xx |
Service is unreachable, restarting, or internally errored. Inspect device logs under System > Support. |
TLS note: edge devices use a self-signed certificate by default. Either install the device CA in your client trust store or disable certificate verification when calling this endpoint directly.
Response
Status: 204 No Content