Updated on 2025-07-14 GMT+08:00

Adding a Notification Rule

Function

Adds notification rules of the corresponding metric. A notification is sent when the rules are met.

The rules of the same metric must be unique.

Metric name. Currently, the value can only be desktop_idle_duration, which is fixed.

  • desktop_idle_duration - Desktop idle duration. Only '>=' threshold is allowed.

Note: You need to add an agency for the cloud service. Otherwise, notifications cannot be sent to SMN.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

URI

POST /v2/{project_id}/statistics/notify-rules

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

No

String

User token.

It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

metric_name

Yes

String

Metric name. Currently, the value can only be desktop_idle_duration, which is fixed.

The rules of the same metric must be unique.

  • desktop_idle_duration - Desktop idle duration. Only '>=' threshold is allowed.

threshold

No

Integer

Rule configuration – Threshold (day)

comparison_operator

Yes

String

Condition for comparing a metric statistical value with the threshold.

  • >= - Triggered when the metric statistical value is greater than or equal to the threshold.

  • > - Triggered when the metric statistical value is greater than the threshold.

  • = - Triggered when the metric statistical value is equal to the threshold.

  • <= - Triggered when the metric statistical value is less than or equal to the threshold.

  • < - Triggered when the metric statistical value is less than the threshold.

interval

No

Integer

Interval for sending the next notification after the notification is triggered. The default value is once a day.

enable

Yes

Boolean

Whether to enable or disable a rule. true: enable; false: disable.

notify_object

Yes

String

Notification object; uniform resource name (URN) of an SMN topic.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

rule_id

String

Rule ID.

metric_name

String

Metric name. Currently, the value can only be desktop_idle_duration, which is fixed.

  • desktop_idle_duration - Desktop idle duration

threshold

Integer

Statistical period (days).

comparison_operator

String

Condition for comparing a metric statistical value with the threshold.

  • >= - Triggered when the metric statistical value is greater than or equal to the threshold.

  • > - Triggered when the metric statistical value is greater than the threshold.

  • = - Triggered when the metric statistical value is equal to the threshold.

  • <= - Triggered when the metric statistical value is less than or equal to the threshold.

  • < - Triggered when the metric statistical value is less than the threshold.

interval

Integer

Interval for sending the next notification after the notification is triggered. The default value is once a day.

enable

Boolean

Whether to enable or disable a rule. true: enable; false: disable.

notify_object

String

Notification object; uniform resource name (URN) of an SMN topic.

Status code: 400

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 401

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 500

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Example Requests

{
  "metric_name" : "desktop_idle_duration",
  "threshold" : 30,
  "comparison_operator" : ">=",
  "interval" : 1,
  "enable" : true,
  "notify_object" : "urn:smn:REGION_ID:XXX-XXX-XXX:topicName"
}

Example Responses

Status code: 200

Succeeded.

{
  "rule_id" : "xxxx-xxxx-xxxx",
  "metric_name" : "desktop_idle_duration",
  "threshold" : 30,
  "comparison_operator" : "",
  "interval" : 1,
  "enable" : true,
  "notify_object" : "urn:smn:REGION_ID:XXX-XXX-XXX:topicName"
}

Status Codes

Status Code

Description

200

Succeeded.

400

Invalid request from the client.

401

Authentication failed.

500

Internal error.

Error Codes

See Error Codes.