Managing alarm policies with REST APIs
The following section provides a list of supported endpoints and an overview about running these endpoints. Before you run an endpoint, you must authenticate yourself. For more information, see Access and authentication for the REST API
Run APIs to create, update, enable, disable, delete, and search for alarm policies.
Managing alarm policies
Use REST APIs to create, update, enable, disable, and delete alarm policies.
POST alarm_policies
Create an alarm policy
Authorization: Bearer <JWT_token>
For instructions on obtaining the JWT token, see Access and authentication for the REST API.
Parameter details
Request body
"entityThresholds":[
{
"metricDetails":{
"entityTypeId":"String",
"metricId":"String",
"label":"String",
"unit":"String",
"path":"String"
},
"order":Integer,
"alarmConfigurations":[
{
"condition":{
"comparison":"String",
"threshold":"String",
"duration":Integer
},
"action":{
"severity":"String",
"autoClose":Boolean
},
"configOrder":Integer
}
],
"type":"String",
"evaluationCriteria":"String"
}
],
"enabled":Boolean,
"policyName":"String",
"description":"String",
"executionOrder":Integer
}
Example request body
"entityThresholds":[
{
"metricDetails":{
"entityTypeId":"IAK_WPAR",
"metricId":"UsedMemory",
"label":"Memory Used",
"unit":"MB",
"path":"iak/1.1.20/IAK_WPAR/UsedMemory"
},
"order":0,
"alarmConfigurations":[
{
"condition":{
"comparison":"above",
"threshold":18,
"duration":10
},
"action":{
"severity":"CRITICAL",
"autoClose":false
},
"configOrder":0
}
],
"type":"MULTI",
"evaluationCriteria":"( agent_host_name starts-with 'clm-pun-' ) AND ( agent_os contains 'Windows' ) "
}
],
"enabled":true,
"policyName":"Test_Alarm_2",
"description":"Creating Alarm Policy",
"executionOrder":9999
}
Successful response
"statusCode": "200",
"resourceId": [
"fbddd7eb-9e56-495e-bb27-36c0b540553c"
]
}
Unsuccessful responses
Scenario 1
There must be exactly one space character on each side of the following elements:
• Operator
• Parenthesis
Scenario 2
"statusCode": "POLICY_ALREADY_EXIST",
"resourceId": null
}
PUT alarm_policies/<policy ID>
Update an alarm policy
Authorization: Bearer <JWT_token>
For instructions on obtaining the JWT token, see Access and authentication for the REST API.
Parameter details
Request body
"entityThresholds":[
{
"metricDetails":{
"entityTypeId":"String",
"metricId":"String",
"label":"String",
"unit":"String",
"path":"String"
},
"order":Integer,
"alarmConfigurations":[
{
"condition":{
"comparison":"String",
"threshold":"String",
"duration":Integer
},
"action":{
"severity":"String",
"autoClose":Boolean
},
"configOrder":Integer
}
],
"type":"String",
"evaluationCriteria":"String"
}
],
"enabled":Boolean,
"policyName":"String",
"description":"String",
"executionOrder":Integer
}
Example request body
"id":"f835a4f5-116f-4282-b489-fcae7d46a913",
"policyName":"Test_Alarm_2",
"description":"Creating Alarm Policy",
"enabled":false,
"entityThresholds":[
{
"metricDetails":{
"entityTypeId":"IAK_WPAR",
"metricId":"UsedMemory",
"label":"Memory Used",
"unit":"MB",
"path":"iak/1.1.20/IAK_WPAR/UsedMemory"
},
"type":"MULTI",
"evaluationCriteria":"( agent_host_name starts-with 'clm-pun-' ) AND ( agent_os contains 'Windows' ) ",
"alarmConfigurations":[
{
"configId":"daf17a3b-0daa-4418-a8eb-efdb673cc4db",
"condition":{
"comparison":"above",
"threshold":18,
"duration":10,
"occurrence":0
},
"action":{
"severity":"CRITICAL",
"autoClose":false
},
"configOrder":0
}
],
"order":0
}
],
"executionOrder":9999
}
Successful response
"statusCode": "200",
"resourceId": [
"27391336-80e8-457c-ab6c-2ab0e27a2954"
]
}
Unsuccessful responses
Scenario 1: Policy does not exist
"statusCode": "POLICY_NOT_EXIST",
"resourceId": null
}
Scenario 2: Incorrect or invalid policy precedence
Scenario 3: The EntityTypeID parameter is empty
"statusCode": "500",
The EntityTypeId parameter cannot be empty or null.
}
Scenario 4: The EntityTypeID parameter is invalid
"statusCode": "500",
Invalid EntityTypeId.
}
Scenario 1: Invalid instance type
"statusCode": "500",
Invalid type : nIK3HXRc
}
POST alarm_policies/<policy ID>/enable
Enable an alarm policy
Authorization: Bearer <JWT_token>
For instructions on obtaining the JWT token, see Access and authentication for the REST API.
Parameter details
Successful response
"statusCode":"200"
}
Unsuccessful responses
Scenario 1: Invalid policy ID
"statusCode":"500"
Invalid UUID string: 263927105892830
}
Scenario 2: Incorrect policy ID format
"statusCode":"500"
Error at index 9 in: "d38ccf559re7"
}
POST alarm_policies/<policy ID>/disable
Disable an alarm policy
Authorization: Bearer <JWT_token>
For instructions on obtaining the JWT token, see Access and authentication for the REST API.
Parameter details
Successful response
"statusCode":"200"
}
Unsuccessful responses
Scenario 1: Invalid policy ID
"statusCode":"500"
Invalid UUID string: 263927105892830
}
Scenario 2: Incorrect policy ID format
"statusCode":"500"
Error at index 9 in: "d38ccf559re7"
}
DELETE alarm_policies/<policy ID>
Delete an alarm policy
Authorization: Bearer <JWT_token>
For instructions on obtaining the JWT token, see Access and authentication for the REST API.
Parameter details
Successful response
"statusCode":"200",
"customMsg":"[Deleted policies.]"
}
Unsuccessful responses
Scenario 1: Incorrect policy ID
"statusCode": "500"
}
Scenario 1: Invalid policy ID
"statusCode": "404"
}
Searching for alarm policies
You can search for alarm policies based on one of the following criterion:
- Policy ID
- Other criteria that you specify
Run the APIs in this section to search for alarm policies.
GET alarm_policies/<policy ID>
Search for an alarm policy based on the policy ID
Authorization: Bearer <JWT_token>
For instructions on obtaining the JWT token, see Access and authentication for the REST API.
Parameter details
Successful response
"responseTimeStamp":1613549398716,
"statusCode":"200",
"statusMsg":"policy list success",
"totalRecords":1,
"policies":[
{
"tenantId":"1786266992",
"id":"a3328dc5-3c2a-420c-a3e4-8b895eca0b87",
"policyName":"Test_Alarm_1",
"description":"",
"enabled":false,
"owner":"admin",
"createdTime":1613542081767,
"modifiedTime":1613542081767,
"entityThresholds":[
{
"metricDetails":{
"entityTypeId":"IAK_WPAR",
"metricId":"CPUUtilization",
"unit":"%",
"label":"CPU Utilization",
"path":"iak/1.1.20/IAK_WPAR/CPUUtilization"
},
"type":"MULTI",
"evaluationCriteria":"agent_os contains 'AIX' ",
"alarmConfigurations":[
{
"configId":"06177e2f-0a9d-482b-8fe3-35eec9adeef2",
"condition":{
"comparison":"above",
"threshold":19.0,
"duration":10,
"occurrence":0
},
"action":{
"severity":"CRITICAL",
"autoClose":true,
"closeDuration":-1
},
"configOrder":0
}
],
"order":0
}
],
"executionOrder":9999
}
]
}
POST alarm_policies/search
Search for an alarm policy based on specified criteria
Authorization: Bearer <JWT_token>
For instructions on obtaining the JWT token, see Access and authentication for the REST API.
Parameter details
Request body
"searchString":"String",
"sortCriteria":{
"attribute":"String",
"order":"String"
}
}
Example request body
"sortCriteria":{
"attribute":"modifiedTime",
"order":"DESC"
}
}
Successful response
"responseTimeStamp":1613549398716,
"statusCode":"200",
"statusMsg":"policy list success",
"totalRecords":1,
"policies":[
{
"tenantId":"1786266992",
"id":"a3328dc5-3c2a-420c-a3e4-8b895eca0b87",
"policyName":"Test_Alarm_1",
"description":"",
"enabled":false,
"owner":"admin",
"createdTime":1613542081767,
"modifiedTime":1613542081767,
"entityThresholds":[
{
"metricDetails":{
"entityTypeId":"IAK_WPAR",
"metricId":"CPUUtilization",
"unit":"%",
"label":"CPU Utilization",
"path":"iak/1.1.20/IAK_WPAR/CPUUtilization"
},
"type":"MULTI",
"evaluationCriteria":"agent_os contains 'AIX' ",
"alarmConfigurations":[
{
"configId":"06177e2f-0a9d-482b-8fe3-35eec9adeef2",
"condition":{
"comparison":"above",
"threshold":19.0,
"duration":10,
"occurrence":0
},
"action":{
"severity":"CRITICAL",
"autoClose":true,
"closeDuration":-1
},
"configOrder":0
}
],
"order":0
}
],
"executionOrder":9999
}
]
}