Skip to main content
POST
Batch update rule fields

Restrictions

Usage

  • Include the field names you want to update in the fields array, e.g. ["enabled", "channel_ids"].
  • Only the specified fields are updated; others are left unchanged.
  • Every call is recorded in the account audit log. Don’t put secrets in request fields.

Authorizations

app_key
string
query
required

App key issued from the Flashduty console under Account → APP Keys. Required on every public API call. Keep it secret — it grants the same access as the owning account.

Body

application/json
ids
integer<uint64>[]
required

Rule IDs to update.

fields
enum<string>[]
required

Field names to update. Only listed fields are updated, taking new values from the same-named request fields; values for unlisted fields are silently ignored.

Available options:
labels,
ds_type,
ds_list,
ds_ids,
enabled,
debug_log_enabled,
cron_pattern,
timezone,
delay_seconds,
enabled_times,
annotations,
description,
channel_ids,
repeat_interval,
repeat_total
labels
object

Custom label key-value pairs; replaces existing labels as a whole. Effective only when fields includes labels.

ds_type
string

Datasource type identifier; allowed values are listed by POST /monit/rule/dstypes. Effective only when fields includes ds_type.

ds_list
string[]

Datasource name match patterns; wildcards supported. Effective only when fields includes ds_list.

ds_ids
integer<uint64>[]

Datasource IDs, merged with ds_list to decide which datasources the rule monitors; IDs survive datasource renames. Effective only when fields includes ds_ids.

enabled
boolean

Whether the rule is enabled. Setting it to false makes the server clean up the rule's active alerts. Effective only when fields includes enabled.

debug_log_enabled
boolean

Whether to enable debug logging; the edge emits detailed evaluation logs for troubleshooting. Effective only when fields includes debug_log_enabled.

cron_pattern
string

Schedule expression: a 6-field cron (with seconds) or an @every 30s interval descriptor; CRON_TZ=/TZ= prefixes are not allowed. Effective only when fields includes cron_pattern.

timezone
string
default:Asia/Shanghai

Timezone in which the rule executes. IANA timezone name; defaults to Asia/Shanghai.

delay_seconds
integer

Seconds to shift the evaluation query window backward, compensating for data ingestion latency. Effective only when fields includes delay_seconds.

enabled_times
object[]

Time windows during which the rule is in effect; element structure see EnabledTime. Effective only when fields includes enabled_times.

annotations
object

Annotation key-value pairs delivered with alert events; keys must not start with $ (reserved for query fields). Effective only when fields includes annotations.

description
string

Rule description (Markdown). Effective only when fields includes description.

channel_ids
integer<uint64>[]

IDs of the collaboration spaces alerts are sent to; may be empty. Effective only when fields includes channel_ids.

repeat_interval
integer<int64>

Interval in seconds between repeated alert notifications. Effective only when fields includes repeat_interval.

repeat_total
integer<int64>

Maximum number of repeated notifications. Effective only when fields includes repeat_total.

Response

Success

Success response envelope. On every 2xx response, request_id identifies the call (also mirrored in the Flashcat-Request-Id header) and data holds the endpoint-specific payload. Failure responses use a different shape — see ErrorResponse.

request_id
string
required

Unique ID for this request. Mirrored in the Flashcat-Request-Id response header. Include it when reporting issues.

Example:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

data
object[]
required

Per-rule batch-operation results.